﻿
/* this file will/can be minified by CloudFlare */

*, *::after, *::before { box-sizing:border-box }

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, main, menu, nav, section, summary,
time, mark, audio, video { margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent }

html { height:100%; background:#fff url(/assets/images/onda-de-agua.jpg) no-repeat bottom center fixed; background-size:cover; font-size:100% }
body { line-height:1; background-color:rgba(255, 255, 255, .4); font-family:'Open Sans',sans-serif; font-size:1.0em; color:#111; text-shadow:0 3px 1px rgba(0, 0, 0, .1) }
/*body { font-family:'Cairo',sans-serif; font-size:1.2em }*/

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section { display:block }
blockquote::before, blockquote::after, q::before, q::after { content:''; content:none }
table { border-collapse:collapse; border-spacing:0 }
hr { display:block; height:1px; border:0; border-top:1px solid #bbc; margin:1em 0; padding:0 }
input, select { vertical-align:middle }
img { vertical-align:bottom }
strong { font-weight:bold }
em { font-style:italic }

blockquote { margin-bottom:20px; padding:20px; color:#667; font-style:italic; font-size:1.2em; line-height:1.2em; background-color:rgba(255, 205, 155, 0.3) }
blockquote::before { content:open-quote; color:#223; font-size:1.2em }
blockquote::after { content:close-quote; color:#223; font-size:1.2em }

p { margin-bottom:20px; line-height:150%; font-size:1.1em }
small { font-size:0.8em }
ul, ol { margin-left:40px; margin-bottom:20px; line-height:150%; font-size:1.1em }
ul { list-style-type:square }
ul li { margin-bottom:7px }

a { color:#cc0000; text-decoration:none; font-weight:bold }
a:hover { color:#ee0000 }
a:focus { outline:none }
a img { border:0 }

h1 { font-size:1.6em; font-weight:bold; margin-bottom:20px }
h2 { font-size:1.4em; font-weight:bold; margin-bottom:20px }
h3 { font-size:1.3em; font-weight:bold; margin-bottom:20px }
h4 { font-size:1.2em; font-weight:normal }
h5 { font-size:1.1em; font-weight:normal }
h6 { font-size:1.0em; font-weight:normal }

h1, h2, h3, h4, h5, h6 { text-transform:uppercase }

.fl { float:left }
.fr { float:right }
.cb { clear:both; width:0; height:0; line-height:0; font-size:0; margin:0; padding:0 }
.dn { display:none }

.imgLeft { float:left; margin:20px 20px 20px 0 } /* legacy */
.imgRight { float:right; margin:20px 0 20px 20px } /* legacy */

.elTopLeft { float:left; margin:5px 20px 10px 0 }
.elTopRight { float:right; margin:5px 0 10px 20px }
.elMidLeft { float:left; margin:20px 20px 10px 0 }
.elMidRight { float:right; margin:20px 0 10px 20px }
.elBotLeft { float:left; margin:20px 20px 0 0 }
.elBotRight { float:right; margin:20px 0 0 20px }

pre { white-space:pre-wrap; margin-bottom:20px }
pre:last-child { margin-bottom:0 }
code { padding:0 3px; background-color:rgba(255, 225, 10, 0.5) } /* for inline code */
pre code { display:block; overflow-x:auto; padding:1em; line-height:1.3em; background-color:#282a36; color:#eef; border-radius:5px }

.flexSB { display:flex;justify-content:space-between }

/* ---------------------------------------------------- */

div.iWidth { margin:0 auto; padding:20px; max-width:940px } /* border-left:1px dashed #889; border-right:1px dashed #889 */

header { background-color:rgba(155, 195, 225, 0.5) } /* affects primarily navigation bar */
header section { background-color:#fff; border-bottom:1px solid #def } /* logo bar */
header section div.iWidth { padding:0 20px 10px 20px } /* logo bar */
header section > div { display:flex; justify-content:space-between }
header section .social { margin-top:20px }
header section .social div { display:inline-block; margin-left:6px }
header section .social div.telefone { box-shadow:0 1px 4px #d5d5d5 }
header section .social div.telefone a { display:inline-block; font-size:1.4em; line-height:1.7em; font-weight:bold; vertical-align:bottom; padding-right:6px; color:#444; text-shadow:0 1px 1px #fff; background-color:#f4f4f4; border-radius:2px }
header section .social div.telefone a:hover { color:#fff; text-shadow:0 1px 1px #000; background-color:#567 }
header section div.logo:hover, header section .social div:hover { opacity:0.8 }
header section .navExpand { display:none; margin-top:20px; font-size:2.0em; color:#111 }

main { margin-bottom:20px; background-color:rgba(255, 255, 255, 0.7); box-shadow:0 0 2px #9ab }
main div.iWidth { display:flex; justify-content:space-between } /* inner white center: background-color:rgba(255, 255, 255, 0.4) */
main div.iWidth .content { width:100% } /* padding-right:20px; border-right:1px solid #bcd */
main div.iWidth .content.centered { text-align:center; margin:0 auto }
main div.iWidth .content img { border-radius:5px }
main div.iWidth .content img.conImgSml { max-width:300px}
main div.iWidth .content img.conImgShort { max-height:300px}
main div.iWidth .content img.conImg { width:50%; max-width:300px }
main div.iWidth .content img.conImg100 { width:100%}
main div.iWidth .content .featHeaders { text-align:center; padding:20px 0; text-shadow:0 1px 1px #132; line-height:175% }
main div.iWidth .content .featHeaders h2 { color:#00cc88; font-size:1.9em }
main div.iWidth .content .featHeaders h3 { color:#00aa77; font-weight:normal }
main div.iWidth aside { min-width:230px; width:230px; margin-left:20px; background:url(/assets/images/diagonal-lines-pattern.png) top center }
main div.iWidth .content.page404 { margin:15px auto; text-shadow:0 5px 2px #bcd }
main div.iWidth .content.page404 h1 { font-size:5.5em }
main div.iWidth .content.page404 p { font-size:1.5em; margin:0 }

footer { background-color:rgba(10, 15, 40, 0.6); font-size:0.9em; border-bottom:1px solid #456; box-shadow:0 3px 1px rgba(125, 125, 125, 0.3) }
footer a { color:#cef }
footer a:hover { color:#ffc }
footer section h5, footer section p { color:#eff; text-shadow:1px 1px 2px #234 }
footer .boxes { display:flex; justify-content:space-between; font-size:0.9em }
footer .boxes section { background-color:rgba(245, 250, 255, 0.15); width:32%; padding:15px; border-radius:5px; box-shadow:0 2px 2px #345 }
footer .boxes section:hover { background-color:rgba(245, 250, 255, 0.2) }
footer .boxes section h5 { margin:0 0 15px 0; font-weight:bold }
footer .boxes section p { margin:0 }
footer section.dev p { margin:15px 0 0 0; font-size:0.9em; text-align:right }

/* ---------------------------------------------------- */

/* LEVEL ONE */
ul.nav { position:relative; margin:0; padding:0; list-style-type:none; display:flex; justify-content:space-between; font-size:1.0em }
ul.nav > li { background-color:rgba(255, 255, 255, 0.7); margin:0; border-bottom:2px solid #9ab; font-size:0.85em; font-weight:bold; border-radius:2px }
ul.nav > li:hover { background-color:rgba(255, 255, 255, 1.0); border-bottom:2px solid #456 }
ul.nav > li a { display:block; padding:7px 10px 5px 10px; color:#053b5d; text-shadow:0 2px 1px #fff; text-transform:uppercase } /* text-shadow:1px 1px 1px #ddd */
ul.nav > li a span { display:inline-block; margin-left:5px; font-size:0.75em; vertical-align:top } /* arrow */
ul.nav > li a .icon { margin:0; vertical-align:baseline } /* home */
/* LEVEL TWO */
ul.nav li > ul { background-color:rgba(205, 215, 225, 1.0); border-radius:2px; margin:0; padding:6px 0; list-style-type:none; width:305px; visibility:hidden; z-index:1000; opacity:0; transition:opacity .5s ease; position:absolute; top:38px; left:0; box-shadow:0 3px 6px rgba(0,0,0,.5) } /* border-top:2px solid #456; */
ul.nav li > ul li { font-weight:normal; margin:0; border-top:1px solid #bcd; font-size:0.9em }
ul.nav li > ul li:last-child { border-bottom:1px solid #bcd }
ul.nav li > ul li a { background-color:rgba(255, 255, 255, 0.6); padding:10px 0 10px 10px; display:block; color:#123; text-shadow:0 1px 1px #fff; text-transform:none; transition:transform .1s ease-in-out }
ul.nav li > ul li a:hover { background-color:rgba(255, 255, 255, 1.0); color:#000; box-shadow:0 2px 4px rgba(0,0,0,.2); border-radius:2px; transform:scale(1.10) }
/* LEVEL THREE */
ul.nav li > ul li > ul { left:100%; top:0; background-color:rgba(235, 245, 255, 1.0) }
ul.nav li > ul li > ul li { margin:0; font-size:1.0em }
/* ALL */
ul.nav li:hover { position:relative } /* transition:all .2s ease */
ul.nav li:hover > ul { visibility:visible; opacity:1 }

/* ---------------------------------------------------- */

.banneroo { position:relative; margin:0 0 20px 0; width:100%; min-height:300px; border-top:1px solid rgba(0,0,0,.4); border-bottom:1px solid rgba(0,0,0,.4); box-shadow:0 0 4px #678 }
.banneroo > div { display:none } /* initial off */
.banneroo > div img { position:absolute; top:0; left:0; z-index:0; width:100%; height:100%; object-fit:cover; object-position:center }
.banneroo > div section { position:absolute; left:0; right:0; bottom:0; overflow:hidden; width:100%; height:0; transition:.5s ease }
.banneroo > div section.textOn { height:100% }
.banneroo > div section h1, .banneroo div section h2, .banneroo div section h3 { position:absolute; background-color:rgba(255,255,255,.7); padding:7px 20px; transform:translate(-50%, -50%); text-align:center; border-radius:5px; text-shadow:1px 1px 2px #111, 1px -1px 1px #999, -1px  1px 2px #111, -1px -1px 1px #999; line-height:130% }
.banneroo > div section h1 { font-size:1.9em; font-weight:bold; color:#fff; top:35%; left:50% }
.banneroo > div section h2 { font-size:1.6em; color:#fff; top:35%; left:50% }
.banneroo > div section h3 { font-size:1.3em; color:#fff; top:65%; left:50% }

.banneroo.short { min-height:250px }
.banneroo.short div section { position:relative; margin:0 auto; max-width:900px; min-height:250px }
.banneroo.short > div section h1 { position:relative; display:inline-block; width:100%; padding:8px 20px; transform:translateY(180px); text-align:left; top:initial; left:initial; right:initial; bottom:initial; background-image:linear-gradient(to right, rgba(5,10,15,0.1), rgba(0,0,0,0)) }

/* ---------------------------------------------------- */

section.popup-gallery { display:flex; flex-wrap:wrap }
section.popup-gallery a { width:30%; color:#123; margin:0 20px 20px 0; padding:8px; border:2px solid rgba(10, 25, 45, 0.0); background-color:rgba(15, 35, 55, 0.1); box-shadow:0 1px 3px #aaa; border-radius:5px }
section.popup-gallery a:hover { box-shadow:0 2px 12px #888; border:2px solid #59c }
section.popup-gallery a:last-child { margin-right:0 }
section.popup-gallery a img { width:100% }
section.popup-gallery a h6 { text-align:center; text-transform:none; margin:8px }

/* ---------------------------------------------------- */

aside section { margin-bottom:20px }
aside section:last-child { margin-bottom:0 }
aside section.sticky { position:sticky; top:20px }

section.sideModule { background:url(/assets/images/polyimg.jpg) no-repeat top left; background-size:cover; background-blend-mode:multiply; padding:20px; color:#fff; text-shadow:0 1px 2px #000; border-radius:5px; box-shadow:0 3px 1px #bcd; border-top:5px solid rgba(10, 20, 30, 0.4) }
section.sideModule:last-child { margin-bottom:0 }

section.sideBox1 { background-color:rgba(0, 150, 240, 0.6) }
section.sideBox1 h4 { font-size:1.2em; line-height:120%; font-weight:bold }
section.sideBox1 hr { border-top:1px solid rgba(255, 255, 255, 0.6); }

section.sideBox2 { background-color:rgba(0, 100, 170, 0.7); text-align:center }
section.sideBox2 h4 { font-size:1.3em; line-height:120%; font-weight:bold }

section.sideBox3 { background-color:rgba(100, 150, 200, 0.5)}
section.sideBox3 h4 { font-size:1.6em; line-height:120%; font-weight:bold; margin-bottom:15px }
section.sideBox3 a:hover { opacity:.8 }
section.sideBox3 img { border-radius:5px; box-shadow:0 3px 3px rgba(10,20,30,0.5) }

section.contactBox { background-color:rgba(0, 100, 170, 0.7) }
section.contactBox h4 { font-size:1.2em; line-height:120%; font-weight:bold }
section.contactBox.homepage { float:right; max-width:36%; margin-left:20px; margin-bottom:10px }
section.contactBox .contactResponse p { color:#fff }

section.sideImg img { width:230px; border-radius:5px; box-shadow:0 3px 1px #bcd }

/* ---------------------------------------------------- */

section.porqueSB { min-width:50%; margin-bottom:20px; margin-right:25px }
section.porqueSB h4 { font-size:1.1em }
section.porqueSB hr { height:2px; border-top:1px solid rgba(50,60,70,0.5); border-bottom:1px solid rgba(255,255,255,0.4); margin-bottom:20px }
section.porqueSB ul { margin-left:30px; list-style:none }
section.porqueSB ul li { margin-bottom:10px; padding:0 10px 2px 10px; font-weight:bold; line-height:140%; background-color:rgba(0, 100, 170, 0.1); box-shadow:0 1px 2px rgba(0, 100, 170, 0.5); border-radius:2px }
section.porqueSB ul li::before { content:'\ea10'; font-family:'IcoMoon-Free'; display:inline-block; color:#33ff99; margin-left:-40px; padding-right:23px }
section.porqueSB ul li.noStar { margin-left:17px }
section.porqueSB ul li.noStar::before { content:'' }

/* ---------------------------------------------------- */

.sButton { display:block; width:100%; background:linear-gradient(to bottom, #caeaff 0%, #c5e5fe 50%, #95b5ce 100%); color:#236; text-shadow:0 2px 0 #def; font-weight:bold; font-size:0.9em; text-align:center; border:0; outline:none; padding:10px; border-radius:2px; box-shadow:0 1px 5px #456; border:1px solid #667; text-transform:uppercase; cursor:pointer }
.sButton:hover { background:linear-gradient(to bottom, #667 0%, #445 50%, #667 100%); color:#f3f5f9; text-shadow:0 2px 0 #000; border:1px solid #223 }

/* ---------------------------------------------------- */

img.skypeImg { margin-top:15px; padding:15px; background-color:rgba(0, 100, 170, 0.5); box-shadow:0 1px 1px rgba(20, 20, 20, 0.4); border-radius:50% }
img.skypeImg:hover { background-color:rgba(0, 100, 170, 0.2); box-shadow:0 1px 1px rgba(255, 255, 255, 0.3) }

/* ---------------------------------------------------- */

ul.iconList { margin:0 0 20px 0; list-style:none }
ul.iconList li { margin-bottom:8px; padding:8px 8px 6px 0; background-color:rgba(102, 221, 255, 0.3); font-size:1.1em; text-shadow:0 1px 1px #fff; text-transform:uppercase; box-shadow:0 1px 2px rgba(25, 25, 25, 0.3); border-radius:2px }
ul.iconList li:hover { background-color:rgba(102, 221, 255, 0.4); box-shadow:0 1px 2px rgba(25, 25, 25, 0.5) }
ul.iconList li i.icon { margin-right:12px; padding:6px; background-color:rgba(102, 221, 255, 0.9); font-size:1.6em; border-radius:2px }

ul.clients { width:295px; text-transform:uppercase; list-style-type:square }
ul.clients li { font-size:0.9em }

/* ---------------------------------------------------- */

div.jumps a { display:block; padding:8px 12px; margin:3px; background-color:rgba(175, 185, 195, 0.2); color:#345; font-size:0.9em; border-radius:2px }
div.jumps a:hover { background-color:rgba(175, 185, 195, 0.4) }
div.jumps a i { margin-right:12px; font-weight:normal }

ol.etapas { counter-reset:sondagens-batalha-counter; list-style:none; margin-left:60px }
ol.etapas > li { counter-increment:sondagens-batalha-counter; position:relative }
ol.etapas > li::before { content:counter(sondagens-batalha-counter); position:absolute; color:#fff; font-size:1.3em; font-weight:bold; left:-60px; top:15px; line-height:48px; width:48px; height:48px; background:black; border-radius:50%; text-align:center; box-shadow:1px 3px 1px #abc; transform:rotate(-15deg) }
ol.etapas > li ul { list-style-type:circle; font-size:1.0em }
ol.etapas h2 { font-size:1.3em; padding-top:25px }
ol.etapas h3 { font-size:1.0em }
ol.etapas p { font-size:1.0em }

/* ---------------------------------------------------- */

section.ecWrap > section { margin-bottom:12px; padding:6px; background:rgba(136,166,176,.1); border-radius:2px }
section.ecWrap > section div.ecSummary { display:flex; justify-content:space-between; padding:12px; background:rgba(106,156,196,.3); line-height:130%; text-shadow:0 1px 0 #def; font-weight:bold; cursor:pointer; border-radius:2px }
section.ecWrap > section div.ecSummary:hover { background:rgba(66,136,176,.7); text-shadow:0 1px 0 #123; color:#fff }
section.ecWrap > section div.ecDetails { display:none; padding:12px; background:rgba(255,255,255,.6); line-height:140% }

/* ---------------------------------------------------- */

div.featured { background:rgba(145, 245, 225, 0.7) url(/assets/images/bgr1.jpg) no-repeat center center fixed; background-size:cover; border-top:1px solid rgba(255,255,255,.8); border-bottom:1px solid rgba(255,255,255,.8); box-shadow:0 0 4px #678 }
div.featured div { display:flex; justify-content:space-between; padding:50px 30px; background-color:rgba(255, 255, 255, 0.5) }
div.featured div a { position:relative; z-index:99; margin:0 30px; border-radius:5px; box-shadow:0 2px 3px #345; opacity:0.8; transition:transform .2s ease-in-out,opacity .2s ease-in-out }
div.featured div a:hover { z-index:100; box-shadow:0 4px 10px #345; transform:scale(1.5); opacity:1.0 }
div.featured div a img { width:100%; height:100%; object-fit:cover; border-radius:5px }
div.featured div a h4 { position:absolute; bottom:0; width:100%; background-color:rgba(30, 30, 30, 0.4); border-bottom-left-radius:5px; border-bottom-right-radius:5px; padding:10px 5px; text-align:center; font-size:.9em; text-transform:none; font-weight:bold; color:#fff; text-shadow:0 1px 1px #111; line-height:130% }

/* ---------------------------------------------------- */

.contactFormShort .textReq { margin:5px 0 15px 0; font-size:0.7em }
.contactFormShort input, .contactFormShort textarea { font-family:'Open Sans',sans-serif; font-size:0.8em; font-weight:bold; background-color:rgba(255, 255, 255, 0.8); width:100%; border:0; outline:none; color:#789; padding:8px; margin-bottom:8px; border-radius:2px; box-shadow:0 2px 1px #345 }
.contactFormShort input:hover, .contactFormShort textarea:hover, .contactFormShort input:focus, .contactFormShort textarea:focus { background-color:rgba(255, 255, 255, 1.0) }
.contactFormShort textarea { height:80px; min-height:35px; resize:vertical }
.contactFormShort .contactValidation { display:none; font-size:0.8em; font-weight:bold; line-height:120%; background-color:rgba(190, 20, 0, 0.8); border-radius:2px; color:#fff; text-shadow:0 1px 0 #000; margin-top:15px; padding:12px; box-shadow:0 2px 1px #456 }

.contactArea { display:flex; justify-content:flex-start; font-size:0.9em; margin-bottom:20px }
.contactArea.nonFlex { display:block }
.contactArea > div { width:50% }
.contactArea > div:last-child { margin-left:10px }
.contactArea p.textReq { margin:5px 0 15px 0; font-size:0.9em }
.contactArea sup.req { font-weight:bold; color:#f00; margin:0 1px }

.contactFormLong .contactArea > div { text-align:right }
.contactFormLong .contactArea > div span { display:inline-block; font-size:1.05em; vertical-align:top; margin-top:10px }
.contactFormLong input, .contactFormLong select, .contactFormLong textarea { font-family:'Open Sans',sans-serif; font-size:0.9em; background-color:rgba(255, 255, 255, 0.9); width:65%; border:0; outline:none; padding:8px; margin-bottom:8px; border-radius:2px; box-shadow:0 1px 3px #345 }
.contactFormLong input:hover, .contactFormLong select:hover, .contactFormLong textarea:hover { background-color:rgba(235, 245, 255, 0.9) }
.contactFormLong textarea { height:110px; min-height:35px; resize:vertical }
.contactFormLong .contactSubmit { margin:0 auto; width:50% }
.contactFormLong .contactValidation { display:none; font-size:0.8em; font-weight:bold; line-height:120%; background-color:rgba(190, 20, 0, 0.8); border-radius:2px; color:#fff; text-shadow:0 1px 0 #000; margin-top:25px; padding:12px; box-shadow:0 1px 1px #456 }

/* ---------------------------------------------------- */

table.tblEstimar { margin:5px 0 20px 0; font-size:0.8em; box-shadow:0 0 4px 1px #abc }
table.tblEstimar tr:nth-child(odd) { background-color:#f2fcff }
table.tblEstimar tr:nth-child(even) { background-color:#e2f2ff }
table.tblEstimar tr:hover { background-color:#bae6ff }
table.tblEstimar td { padding:12px 10px; border:1px solid #abc }

/* ---------------------------------------------------- */

iframe.videoIframe { margin-bottom:15px; border-radius:5px; box-shadow:0 3px 1px #bcd }

/* ---------------------------------------------------- */

.workingSpinner { width:40px; height:40px; margin:0 auto }
.workingSpinner:after { content:' '; display:block; width:40px; height:40px; border-radius:50%; border-width:6px; border-style:solid; animation:workingSpinner 1.2s linear infinite }
.workingSpinner.wsWhite:after { border-color:#fff transparent #fff transparent }
.workingSpinner.wsBlue:after { border-color:#237 transparent #237 transparent }
@keyframes workingSpinner {
    0% { transform:rotate(0deg) }
    100% { transform:rotate(360deg) }
}

/* ---------------------------------------------------- */

.goTop { display:none; position:fixed; z-index:1000; bottom:30px; right:30px; width:35px; height:35px; font-size:1.2em; text-align:center; background-color:#fff; border:2px solid #000; color:#272727; border-radius:2px; user-select:none }
.goTop.icon { margin-right:0; line-height:30px }
.goTop:hover { background-color:#000; border:2px solid #fff; color:#fff; cursor:pointer }



/* ---------------------------------------------------- */
/* MEDIA QUERIES                                        */
/* ---------------------------------------------------- */
/* the default styles above (mobile first) are used for devices below 576px, typically in portrait */

/* landscape phones, 576px and up */
@media (min-width:576px) {


}

/* tablets, 768px and up */
@media (min-width:768px) {


}

/* laptops & desktops, 992px and up */
@media (min-width:992px) {


}

/* large laptops & desktops, 1200px and up */
@media (min-width:1200px) {


}

/* ---------------------------------------------------- */
/* Magnific Popup                                       */
/* ---------------------------------------------------- */

.mfp-bg {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1042;
	overflow: hidden;
	position: fixed;
	background: #0b0b0b;
	opacity: 0.8;
}

.mfp-wrap {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1043;
	position: fixed;
	outline: none !important;
	backface-visibility: hidden;
}

.mfp-container {
	text-align: center;
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	padding: 0 8px;
	box-sizing: border-box;
}

.mfp-container:before {
	content: '';
	display: inline-block;
	height: 100%;
	vertical-align: middle;
}

.mfp-align-top .mfp-container:before {
	display: none;
}

.mfp-content {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	margin: 0 auto;
	text-align: left;
	z-index: 1045;
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
	width: 100%;
	cursor: auto;
}

.mfp-ajax-cur {
	cursor: progress;
}

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
	cursor: -moz-zoom-out;
	cursor: -webkit-zoom-out;
	cursor: default;
}

.mfp-zoom {
	cursor: pointer;
	cursor: -webkit-zoom-in;
	cursor: -moz-zoom-in;
	cursor: zoom-in;
}

.mfp-auto-cursor .mfp-content {
	cursor: auto;
}

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
	user-select: none;
}

.mfp-loading.mfp-figure {
	display: none;
}

.mfp-hide {
	display: none !important;
}

.mfp-preloader {
	color: #CCC;
	position: absolute;
	top: 50%;
	width: auto;
	text-align: center;
	margin-top: -0.8em;
	left: 8px;
	right: 8px;
	z-index: 1044;
}

.mfp-preloader a {
	color: #CCC;
}

.mfp-preloader a:hover {
	color: #FFF;
}

.mfp-s-ready .mfp-preloader {
	display: none;
}

.mfp-s-error .mfp-content {
	display: none;
}

button.mfp-close,
button.mfp-arrow {
	overflow: visible;
	cursor: pointer;
	background: transparent;
	border: 0;
	-webkit-appearance: none;
	display: block;
	outline: none;
	padding: 0;
	z-index: 1046;
	box-shadow: none;
	touch-action: manipulation;
}

button::-moz-focus-inner {
	padding: 0;
	border: 0;
}

.mfp-close {
	width: 44px;
	height: 44px;
	line-height: 44px;
	position: absolute;
	right: 0;
	top: 0;
	text-decoration: none;
	text-align: center;
	opacity: 0.65;
	padding: 0 0 18px 10px;
	color: #FFF;
	font-style: normal;
	font-size: 28px;
	font-family: Arial, Baskerville, monospace;
}

.mfp-close:hover,
.mfp-close:focus {
	opacity: 1;
}

.mfp-close:active {
	top: 1px;
}

.mfp-close-btn-in .mfp-close {
	color: #333;
}

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
	color: #FFF;
	right: -6px;
	text-align: right;
	padding-right: 6px;
	width: 100%;
}

.mfp-counter {
	position: absolute;
	top: 0;
	right: 0;
	color: #CCC;
	font-size: 12px;
	line-height: 18px;
	white-space: nowrap;
	display: none;
}

.mfp-arrow {
	position: absolute;
	opacity: 0.65;
	margin: 0;
	top: 50%;
	margin-top: -55px;
	padding: 0;
	width: 90px;
	height: 110px;
	-webkit-tap-highlight-color: transparent;
}

.mfp-arrow:active {
	margin-top: -54px;
}

.mfp-arrow:hover,
.mfp-arrow:focus {
	opacity: 1;
}

.mfp-arrow:before,
.mfp-arrow:after {
	content: '';
	display: block;
	width: 0;
	height: 0;
	position: absolute;
	left: 0;
	top: 0;
	margin-top: 35px;
	margin-left: 35px;
	border: medium inset transparent;
}

.mfp-arrow:after {
	border-top-width: 13px;
	border-bottom-width: 13px;
	top: 8px;
}

.mfp-arrow:before {
	border-top-width: 21px;
	border-bottom-width: 21px;
	opacity: 0.7;
}

.mfp-arrow-left {
	left: 0;
}

.mfp-arrow-left:after {
	border-right: 17px solid #FFF;
	margin-left: 31px;
}

.mfp-arrow-left:before {
	margin-left: 25px;
	border-right: 27px solid #3F3F3F;
}

.mfp-arrow-right {
	right: 0;
}

.mfp-arrow-right:after {
	border-left: 17px solid #FFF;
	margin-left: 39px;
}

.mfp-arrow-right:before {
	border-left: 27px solid #3F3F3F;
}

.mfp-iframe-holder {
	padding-top: 40px;
	padding-bottom: 40px;
}

.mfp-iframe-holder .mfp-content {
	line-height: 0;
	width: 100%;
	max-width: 900px;
}

.mfp-iframe-holder .mfp-close {
	top: -40px;
}

.mfp-iframe-scaler {
	width: 100%;
	height: 0;
	overflow: hidden;
	padding-top: 56.25%;
}

.mfp-iframe-scaler iframe {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
	background: #000;
}

/* Main image in popup */
img.mfp-img {
	width: auto;
	max-width: 100%;
	height: auto;
	display: block;
	line-height: 0;
	box-sizing: border-box;
	padding: 40px 0 40px;
	margin: 0 auto;
}

/* The shadow behind the image */
.mfp-figure {
	line-height: 0;
}

.mfp-figure:after {
	content: '';
	position: absolute;
	left: 0;
	top: 40px;
	bottom: 40px;
	display: block;
	right: 0;
	width: auto;
	height: auto;
	z-index: -1;
	box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
	background: transparent;
}

.mfp-figure small {
	color: #BDBDBD;
	display: block;
	font-size: 12px;
	line-height: 14px;
}

.mfp-figure figure {
	margin: 0;
}

.mfp-bottom-bar {
	margin-top: -36px;
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	cursor: auto;
}

.mfp-title {
	line-height: 18px;
	font-size: 1.3em;
	color: #F3F3F3;
	word-wrap: break-word;
    margin-top: 5px;
	/*padding-right: 36px;*/
}

.mfp-image-holder .mfp-content {
	max-width: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
	cursor: pointer;
}

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
	/**
       * Remove all paddings around the image on small screen
       */
	.mfp-img-mobile .mfp-image-holder {
		padding-left: 0;
		padding-right: 0;
	}

	.mfp-img-mobile img.mfp-img {
		padding: 0;
	}

	.mfp-img-mobile .mfp-figure:after {
		top: 0;
		bottom: 0;
	}

	.mfp-img-mobile .mfp-figure small {
		display: inline;
		margin-left: 5px;
	}

	.mfp-img-mobile .mfp-bottom-bar {
		background: rgba(0, 0, 0, 0.6);
		bottom: 0;
		margin: 0;
		top: auto;
		padding: 3px 5px;
		position: fixed;
		box-sizing: border-box;
	}

	.mfp-img-mobile .mfp-bottom-bar:empty {
		padding: 0;
	}

	.mfp-img-mobile .mfp-counter {
		right: 5px;
		top: 3px;
	}

	.mfp-img-mobile .mfp-close {
		top: 0;
		right: 0;
		width: 35px;
		height: 35px;
		line-height: 35px;
		background: rgba(0, 0, 0, 0.6);
		position: fixed;
		text-align: center;
		padding: 0;
	}
}

@media all and (max-width: 900px) {
	.mfp-arrow {
		transform: scale(0.75);
	}

	.mfp-arrow-left {
		transform-origin: 0;
	}

	.mfp-arrow-right {
		transform-origin: 100%;
	}

	.mfp-container {
		padding-left: 6px;
		padding-right: 6px;
	}
}
