* { margin: 0; paddin: 0; }
ul, li, ol { margin: 0; padding: 0; list-style: none }
a{ text-decoration: none }

body{ font-family: 'Cabin', sans-serif }
.clear {clear:both}
img{ max-width: 100% }
.transition {transition-property: all; transition-duration: .2s}
.voltar {border: 2px solid #658883; border-radius: 4px; color: #658883; text-align: center; display: block; max-width: 65px}
.voltar:hover {background: #658883; color:#fff}
/* CSS Geral */
.centralizar{ width: 90%; max-width: 960px; margin: 0 auto; overflow: hidden; }
.green{ color: #658883 !important; }
.yellow{ color: #d2a809 !important }
.grey-bg{ background-color: #ededee }
.margin-top{ margin-top: 130px }
.center-cta{ text-align: center; margin: 20px 0; display: block; width: 100% }
.cta{ color: #404041; background-color: #d2a809; padding: 10px 6px; text-transform: uppercase; border-radius: 5px; }
.layer-cta{ position: relative; padding: 5px 8px; top: 0px; right: 0; bottom: 0; left: 0; border: 1px solid white; border-radius: 5px }
.title{ color: #808285; text-transform: uppercase; font-size: 1.7em; display: block; width: 100%; text-align: center; clear: both; font-weight: 300; }
.descriptions{ font-size: 1.1em; color: #808285; letter-spacing: .5px; line-height: 1.6; padding: 20px 0 }
.box-shadow{ box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.18); }

/* Header */
#header{ float: left; width: 100%; height: 100px; padding: 15px 0; position: fixed; z-index: 99; background: white; box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.18); }
#header .centralizar{ max-width: 1400px !important; position: relative; }
#header #logo-box{ float: left; width: 300px; }
#header #logo-box img{ max-width: 100% }

#header .menu{ float: right; margin-top: 30px; }
#header .menu a{ color: #658883 }

#header #mail-to{ padding: 5px 0; text-align: right; }

#header #nav{ border-top: 1px solid #658883; text-align: right; padding: 5px 0 5px 30px }
#header #nav li{ display: inline-block; font-size: 1em; text-transform: uppercase; padding-right: 5px;}
#header #nav li:last-child{ padding: 0 }
#header #nav li a:hover{ color: #d2a809 }
#header #nav li span{ color: #658883 !important }

#dobra-clientes #logo-clientes {padding: 40px 0 60px 0}
#dobra-clientes header {text-align: center}
#dobra-clientes header h2 {text-transform: uppercase; padding-top: 50px}
#dobra-clientes #logo-clientes img {width: 228px; height: auto; border: 1px solid #ddd; display: block; margin: 0 auto; box-sizing: border-box}

/* OWL carousel */
.owl-dots{ margin-top: 20px; height: 15px; display: flex; justify-content: center; flex-direction: row }
.owl-dots .owl-dot{ height: 100%; width: 15px; background-color: #658883; margin-right: 8px; border-radius: 50% }
.owl-dots .owl-dot.active{ background-color: #d2a809 }

.owl-nav{ margin-top: 20px; display: flex; flex-direction: row; justify-content: center }
.owl-nav .owl-prev{width: 30px; text-align: right; margin-right: 15px; font-size: 1.9em; color: #658883 }
.owl-nav .owl-next{width: 30px; text-align: left; font-size: 1.9em; color: #658883 }


#nav-icon{
    display: none;
    position: absolute;
    right: 0;
    top: -13px;
    width: 40px;
    height: 33px;
    margin: 50px auto;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    -o-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
    cursor: pointer;
}

#nav-icon span{
    display: block;
    position: absolute;
    height: 6px;
    width: 100%;
    background: #658883;
    border-radius: 9px;
    opacity: 1;
    left: 0;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
}

#nav-icon span:nth-child(1) {
    top: 0px;
}

#nav-icon span:nth-child(2) {
    top: 11px;
}

#nav-icon span:nth-child(3) {
    top: 22px;
}

#nav-icon.open span:nth-child(1) {
    top: 12px;
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -o-transform: rotate(135deg);
    transform: rotate(135deg);
}

#nav-icon.open span:nth-child(2) {
    opacity: 0;
    left: -60px;
}

#nav-icon.open span:nth-child(3) {
    top: 12px;
    -webkit-transform: rotate(-135deg);
    -moz-transform: rotate(-135deg);
    -o-transform: rotate(-135deg);
    transform: rotate(-135deg);
}

/* Breadcrumb */
.breadcrumb{ position: absolute; top: 10px; transform: translateX(-80px); opacity: 0; transition: all ease-in-out .9s }
.breadcrumb li{ display: inline-block; color: #808285; font-style: italic }
.breadcrumb li a{ color: #808285; display: inline-block; font-style: italic }
.breadcrumb li a:hover{ text-decoration: underline }


/* Home Page */

/*banner*/
#banner-home{
    width: 100%;
    float: left;
    height: 600px;
    position: relative;
    background-image: url(images/banners/banner.jpg);
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat;
    background-attachment: fixed;
}

#banner-home .infos-banner{
    position: absolute;
    width: 100%;
    padding: 25px 0;
    text-align: center;
    text-transform: uppercase;
    top: 25%;
    background-color: rgba(27,36,35,.6)}

#banner-home .infos-banner h1{ color: #c7fff4; font-size: 2.4em; padding-bottom: 10px; }

#banner-home .infos-banner p{ color: #d2a809; padding: 10px 0; font-size: 1.3em; }

#banner-home .center-cta{ position: relative; bottom: 5% }
#banner-home .center-cta a{ font-size: 1.6em }


/* Dobra Serviços */
#dobra-servicos{ float: left; width: 100%; padding: 40px 0 }

#dobra-servicos ul{ padding: 30px 0; overflow: hidden }
#dobra-servicos .grid-servicos{ width: calc(25% - 31px); border-right: 1px solid #808285; padding: 0 15px; overflow: hidden; display: inline-block; float: left; position: relative; }
#dobra-servicos .grid-servicos .center-cta{ left: 0 }
#dobra-servicos .grid-servicos:last-child{ border: none }
#dobra-servicos .grid-servicos .photo-grid-servicos{ height: 180px }
#dobra-servicos .grid-servicos .photo-grid-servicos img{ float: left; width: 100%; height: 100% }
#dobra-servicos .grid-servicos h3{ padding: 10px 0; font-size: .9em; font-weight: 300; text-transform: uppercase; }
#dobra-servicos .grid-servicos p{ padding-bottom: 10px; font-size: 1em; letter-spacing: .6px ; font-weight: 300; color: #808285; line-height: 1.4 }

/* Dobra Qualidade */
#dobra-qualidade{ float: left; width: 100%; padding: 0 0 20px }
#dobra-qualidade h2{ display: block; width: 100%; text-align: center; padding: 15px 0; text-transform: uppercase; font-weight: 300; background-color: #658883; }
#dobra-qualidade .descriptions{ display: block; margin: 0 auto; padding: 40px 0 }
#dobra-qualidade .centralizar img{ width: 80%; max-width: 650px; display: block; margin: 0 auto }
#dobra-qualidade span{ color: #658883; font-size: 1.15em }
#dobra-qualidade a{ width: 120px !important; display: block; margin: 0 auto }


#dobra-qualidade .wrap-certificados-home {margin: 0 auto}
#dobra-qualidade #cert{ width: 250px!important; height: 300px; position: relative!important; overflow: hidden; float: left }
#dobra-qualidade #cert figure{ width: 100%; height: 100%; float: left}
#dobra-qualidade #cert figure#certificado1 { background-image: url(images/certificado-ts-111-18.jpg); background-size: cover }
#dobra-qualidade #cert figure#certificado2 { background-image: url(images/certificado-iso9001-2015.jpg); background-size: cover }
#dobra-qualidade #cert figure #lupa{ position: absolute; top: 5px; right: 5px; height: 20px; width: 20px; background-image: url(images/lupa.png); background-size: cover; transition: all ease-in-out .3s }
#dobra-qualidade #cert figure figcaption{ position: absolute; top: 0; bottom: 0; right: 0; left: 0; display: flex; align-items: center; background-color: transparent; text-align: center; transition: all ease-in-out .3s  }
#dobra-qualidade #cert figure figcaption span{ text-transform: uppercase; display: block; margin: 0 auto; color: #d2a809; opacity: 0; transform: translateX(-20px); transition: all ease-in-out .3s }

#dobra-qualidade #cert:hover figure figcaption{ background-color: rgba(27,36,35,.6); }
#dobra-qualidade #cert:hover figure #lupa{ opacity: 0; transform:  translateX(20px) }
#dobra-qualidade #cert:hover figure figcaption span{ opacity: 1; transform: translateX(0) }

/* Página interna - A Empresa */
#empresa{ float: left; width: 100%; position: relative }
#empresa #empresa-sobre{ float: left; width: 100%; padding: 40px 0; background-color: #658883; }
#empresa #empresa-sobre h1{ color: #d2a809 }
#empresa #empresa-sobre .descriptions{ color: white; }
#empresa #banner-empresa img{ width: 100%; max-width: 1920px; display: block; margin: 0 auto }

#empresa #mvv{ float: left; width: 100%; padding-top: 40px }
#empresa #mvv ul li{ margin-top: 25px }
#empresa #mvv ul li:first-child{ margin: 0 }
#empresa #mvv ul li h3{ font-size: 1.2em; text-transform: uppercase}
#empresa #mvv ul li .descriptions{ padding: 0 !important }
#empresa #mvv #valores li{ margin: 0!important }

#empresa #empresa-cta{ float: left; width: 100%; padding: 40px 0 }
#empresa #empresa-cta .text-cta{ border: 2px solid #d2a809; border-radius: 8px; padding: 20px }
#empresa #empresa-cta .text-cta .descriptions{ max-width: 95%; displa: block; margin: 0 auto; }
#empresa #empresa-cta .cta{ font-size: 1.5em }

/* Página interna - Serviços */
#servicos { float: left; width: 100%; }
#servicos header{ float: left; width: 100%; position: relative; padding: 0; background-image: url(images/banners/banner-servicos.jpg); background-size: cover; height: 170px; display: flex; align-items: center }
#servicos header .title{ font-size: 2.8em; margin-top: .8em }
#servicos header p{ display: block; width: 100%; text-align: center; color: white; text-transform: uppercase; font-size: 1.7em; margin-top: 20px }
#servicos header .layer{ position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-color: rgba(40, 40, 40, .5) }

#servicos #text{ float: left; width: 100%; padding: 40px 0 }

#servicos #cortes{ float: left; width: 100%; padding: 40px 0 }
#servicos #cortes .centralizar{ overflow: visible }
#servicos #cortes .title{ float: left; text-align: left; }
#servicos #cortes .border-out{ height: 2px; background-color: #658883; width: 340px; display: block; float: left; position: relative; left: -80px; transform: translateX(-300px); opacity: 0; transition: all ease-in-out .8s }

/* CSS para grid de servicos - reutilizável */
.grid{ float: left; width: 100%; padding: 40px 0; display: inline-block }
.grid .servicos{ float: left; padding: 0 20px; margin: 0; min-height: 560px; height: auto; position: relative }
.grid .margin-top{ margin-top: 45px!important }

.grid .center-cta{ position: absolute; bottom: 0; left: 0 }
.grid .cta-grid img{ max-width: 120px }

.grid figure img{ display: block; margin: 0 auto; min-height: 100%; width: 100%; transition: all ease-in-out .2s }
.grid figure{ overflow: hidden; height: 280px }
.grid figure:hover img{ transform: scale(.98) }
.grid figcaption{ color: #808285; font-size: 1.1em }

.w50{ max-width: calc(50% - 42px)  }
.border-right{ border-right: 1px solid #658883 }
.servico-titulo{ font-size: 1.3em; padding: 20px 0; }

/* Páginas de detalhes de serviços */
.detalhes-servico{ float: left; width: 100%; padding: 40px 0; position: relative }
.detalhes-servico .title{ font-size: 1.5em !important; padding: 20px 0 }
.detalhes-servico .descriptions{ padding-top: 0 }
.banner-services{ background-color: #658883; float: left; width: 100% }
.banner-services img{ float: left }

.especi-servico{ float: left; width: 100%; padding-top: 20px }
.especi-servico ul h2{ text-transform: uppercase; color: #658883; font-size: 1.5em; padding-bottom: 20px; font-weight: 300; text-align: center }
.especi-servico ul li{ padding: 5px 0 5px 10px; font-size: 1.2em; color: #808285 }
.especi-servico .cta{ font-size: 1.3em }

.flexed{ display: flex; justify-content: center;  }

/* Página interna - Qualidade */
#qualidade{ float: left; width: 100% }
#qualidade #text{ float: left; width: 100%; padding: 40px 0; position: relative }
#qualidade #text .descriptions{ float: left; width: 100%; text-align: justify }
#qualidade #text #certificado { padding: 20px 0 0 15px; width: 80%; max-width: 600px; display: block; margin: 0 auto }

/* Página interna - Contato */
#contato{ float: left; width: 100%; padding: 40px 0 }
#contato #formulario{ margin: 0 auto; padding: 0 20px; width: 615px; height: 670px; margin-top: 40px; position: relative }
#contato #formulario .form-input, textarea, select { width: calc(100% - 4px); padding: 10px 0; font-size: 1em; margin-bottom: 25px; border: none; border: 2px solid #658883; border-radius: 3px; text-transform: uppercase; font-family: 'Cabin', sans-serif !important }
#contato #formulario label{ font-size: 1.1em; text-transform: uppercase; color: #808285 }
#contato #formulario textarea{ height: auto }
#contato #formulario span{ cursor: pointer; padding: 12px 5px }
#contato #formulario .btn-form{ font-size: 1.1em; color: #343435; text-transform: uppercase; background-color: transparent; border: none; border: 1px solid white; border-radius: 5px; font-family: 'Cabin', sans-serif !important; cursor: pointer; padding: 5px 10px }

#contato #contato-sobre{ float: right; width: calc(50% - 42px); padding: 0 20px; text-align: justify;  margin-top: 40px; border-left: 1px solid #658883;}
#contato #contato-sobre #map{ width: 100%; height: 300px }
#nav-contato {float: left; width: 100%; margin-bottom: 50px}
#nav-contato ul li{text-transform: uppercase; display: block; width: 200px; margin-right: 2px; text-align: center; float: left; border: 1px solid #d2a809; color: #d2a809; line-height: 40px; cursor: pointer }
#nav-contato ul li:nth-of-type(2){border-left: none }
#nav-contato ul li:hover {background: #d2a809; color: #fff; border: 1px solid #d2a809 }



/** Footer **/
#footer{ float: left; width: 100%; height: 250px; background-color: #658883; color: white; position: relative }
#footer .centralizar{ max-width: 960px }

#footer #map-footer{ float: left; width: 50%; height: 250px; display: inline-block; background-image: url(images/map.png); background-size: 150%; background-position: center }
#footer #map-footer img{ float: left }

#footer #sobre { width: 50%; height: 100%; display: inline-block; float: right; padding: 40px 0; }
#footer #sobre p{ padding-top: 8px; width: 336px; display: block; margin: 0 auto }
#footer #sobre #footer-logo img{ max-width: 80%; display: block; margin: 0 auto }

#footer #qg7-logo{ position: absolute; bottom: 15px; right: 15px }

/* SLIDER CSS */
.jssora22l, .jssora22r {
    display: block;
    position: absolute;
    /* size of arrow element */
    width: 40px;
    height: 58px;
    cursor: pointer;
    background: url('images/a22_grey.png') center center no-repeat;
    overflow: hidden;
}
#qualidade .jssora22l, #qualidade .jssora22r {
    text-shadow: 1px 1px #000
}

.jssora22l { background-position: -10px -31px; }
.jssora22r { background-position: -70px -31px; }
.jssora22l:hover { background-position: -130px -31px; }
.jssora22r:hover { background-position: -190px -31px; }
.jssora22l.jssora22ldn { background-position: -250px -31px; }
.jssora22r.jssora22rdn { background-position: -310px -31px; }
.jssora22l.jssora22lds { background-position: -10px -31px; opacity: .3; pointer-events: none; }
.jssora22r.jssora22rds { background-position: -70px -31px; opacity: .3; pointer-events: none; }


/* Animated */
.animated { animation-duration: 1s; animation-fill-mode: both; }

@keyframes rubberBand {
    from { transform: scale3d(1, 1, 1); }
    30% { transform: scale3d(1.25, 0.75, 1); }
    40% { transform: scale3d(0.75, 1.25, 1); }
    50% { transform: scale3d(1.15, 0.85, 1); }
    65% { transform: scale3d(.95, 1.05, 1); }
    75% { transform: scale3d(1.05, .95, 1); }

    to { transform: scale3d(1, 1, 1); }
}

.rubberBand { animation-name: rubberBand; }
