/* Global styles */

body{
    font-family: 'Montserrat', sans-serif;
    font-size: 15px;
    font-weight: 400;
    color: #111;
    padding-top: 70px;
    line-height: 1.7;
}
@media (min-width: 1200px) {
    body{
        padding-top: 101px;
    }
}
body.tpl-blank{
    padding-top: 30px;
    padding-bottom: 30px;
}
*::selection{
    background: #ea6428;
    color: #000;
}
*::-moz-selection{
    background: #ea6428;
    color: #000;
}
a{
    color: inherit;
}
a:hover{
    color: inherit;
    text-decoration: underline;
}
a.link{
    color: blue;
    text-decoration: underline;
}
h1, h2, h3, h4, h5, h6{
    color: #ea6428;
    font-weight: 700;
}
h1{
    font-size: 35px;
}
h2{
    font-size: 30px;
}
h3{
    font-size: 25px;
}
h4{
    font-size: 20px;
}
h5{
    font-size: 16px;
}
h6{
    font-size: 15px;
}
.hover:hover{
    opacity: 0.85;
}
img.lazy{
    display: block;
    background-image: url("/_src/img/lazy/loading.gif");
    background-image: url("/_src/img/lazy/loading.svg");
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
}
img.w-100.lazy{
    background-size: auto;
}
iframe.lazy{
    background-color: #f1f1f1;
    background-image: url("/_src/img/lazy/loading.gif");
    background-image: url("/_src/img/lazy/loading.svg");
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: auto;
}

@media (min-width: 1300px){
    .container {
        max-width: 1280px;
    }
}

/*################*/
/*---- header ----*/
header{
    /*background-color: #1f1d1d;*/
    background-color: rgba(0,0,0,0.8);
    border-bottom: solid 1px #fff;
}
header .header-bar{
    position: absolute;
    color: #f4b07d;
    text-align: right;
    right: 0px;
    top: 0px;
}
header .header-bar a{
    color: inherit;
    font-weight: 600;
}
header .header-bar i{
    color: #ea6428;
}
header .header-menu{
    
}
header .header-menu{
    padding: 10px 0px;
}
@media (min-width: 1200px) {
    header .header-menu{
        padding-top: 15px;
        padding-bottom: 15px;
    }
}
header .header-menu .navbar-brand img{
    max-height: 40px;
    max-width: none;
}
@media (min-width: 1200px) {
    header .header-menu .navbar-brand img{
        max-height: 70px;
        max-width: none;
    }
}
@media (min-width: 1200px) {
    header .header-menu .navbar-nav{
        padding: 0px 0px 0px 0px;
    }
}
header .header-menu .nav-item,
header .header-menu .nav-item:hover,
header .header-menu .nav-link,
header .header-menu .nav-link:hover{
    font-size: 18px;
    font-weight: 500;
    color: #fff;
    text-align: center;
    text-transform: uppercase;
}

@media (min-width: 1200px) {
    header .header-menu .nav-item{
        padding: 0rem 2rem;
    }
    header .header-menu .nav-link{
        padding: 0rem 0rem;
    }
}
@media (min-width: 992px) {
    header .header-menu .nav-item{
        padding: 0rem 1.2rem;
    }
}
header .header-menu .navbar-nav .nav-link{
    padding-right: 0rem;
    padding-left: 0rem;
}
header .header-menu .nav-item:last-child{
    padding-right: 0rem;
}
header .header-menu .nav-item:hover .nav-link,
header .header-menu .nav-link:hover{
    color: #f6891f;
}
header .header-menu .nav-item.active .nav-link{
    color: #f6891f;
}
header .header-menu .navbar-toggler{
    font-size: 1.6rem;
    border-color: #bbb;
    box-shadow: none;
    outline: none;
}
header .header-menu .navbar-toggler:hover{
    outline: none;
}
header .header-menu .navbar-toggler span{
    color: #fff;
}
@media (max-width: 991.98px){
    header .header-menu .navbar-collapse{
        padding-top: 20px;
    }
}

header .social a:hover{
    text-decoration: none;
}
/*---- # header ----*/
/*##################*/


/*###############*/
/*---- corpo ----*/
main{
    padding-top: 40px;
}
.container-header-no-margin{
    margin-top: -40px;
}
@media (min-width: 1200px) {
    .container-header-no-margin{
        margin-top: -40px;
    }
}
.container-header-padding{
    padding-top: 0px;
}
.container-footer-no-margin{
    margin-bottom: -50px;
}
.container-footer-padding{
    padding-bottom: 0px;
}

.grecaptcha-badge{
    display: none;
}

.titulo-1{
    font-size: 30px;
    font-weight: 700;
    color: #ea6428;
    text-transform: uppercase;
}
@media (min-width: 992px) {
    .titulo-1{
        font-size: 40px;
    }
}
.titulo-2{
    font-size: 30px;
    font-weight: 700;
    color: #fff;
    text-transform: uppercase;
}
@media (min-width: 992px) {
    .titulo-1{
        font-size: 40px;
    }
}

section#banner-main{
    color: #fff;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#dddddd+0,f1f1f1+100 */
    background: #dddddd; /* Old browsers */
    background: -moz-linear-gradient(top,  #dddddd 0%, #f1f1f1 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  #dddddd 0%,#f1f1f1 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  #dddddd 0%,#f1f1f1 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dddddd', endColorstr='#f1f1f1',GradientType=0 ); /* IE6-9 */
    /*background-image: url(/_src/img/banner-main-m.jpg);*/
    background-position: top center;
    background-repeat: no-repeat;
    /*background-attachment: fixed;*/
    /*background-size: cover;*/
    margin-top: -110px; /*altura do header + padding body*/
    min-height: 500px;
    max-height: 830px;
    height: 100vh;
    
}
@media (min-width: 992px) {
    section#banner-main{
        /*background-image: url(/_src/img/banner-main.jpg);*/
        margin-top: -140px; /*altura do header + padding body*/
        min-height: 500px;
        max-height: 830px;
        height: 100vh;
    }
}
section#banner-main > h1{
    font-size: 30px;
    font-weight: 700;
    color: #fff;
    text-align: center;
    text-transform: uppercase;
    background-color: rgba(0,0,0,0.5);
    margin-top: 70px; /*altura header*/
    margin-left: auto;
    margin-right: auto;
    padding: 25px 20px;
}
@media (min-width: 992px) {
    section#banner-main > h1{
        font-size: 50px;
        margin-top: 101px; /*altura header*/
        padding: 10px 100px;
    }
}

/*.produtos-lista ul{
    list-style: none;
}
.produtos-lista li:before{
    position: relative;
    content: "\2022";
    font-weight: 600;
    font-size: 44px;
    line-height: 20px;
    top: 7px;
    color: #ea6428;
    display: inline-block;
    width: 0.6em;
    margin-left: -1em;
}*/

@media (min-width: 992px) {
    .slider-vitrine .item img:first-child{
        border: solid 1px #eee;
        border-radius: 0.3rem;
    }
}

.produto-slider .item:hover .btn,
.produto-slider .item:active .btn,
.produto-slider .item:focus .btn{
    color: #fff;
    background-color: #ffc107;
}
.produto-slider .item .btn:hover,
.produto-slider .item .btn:active,
.produto-slider .item .btn:focus{
    color: #fff;
}
.produto-slider-text{
    position: relative;
    display: block;
    max-height: 6rem;
    overflow: hidden;
}
.produto-slider-text:before{
    position: absolute;
    display: table;
    content: "";
    background: linear-gradient(to top,
        rgba(255,255,255, 0.85) 20%,
        rgba(255,255,255, 0) 80%
    );
    /*background-color: #eee;*/
    height: 6rem;
    width: 100%;
    left: 0px;
    /*bottom: 0;*/
    pointer-events: none; /* so the text is still selectable */
}

section#produtos a:hover{
    text-decoration: none;
}
section#produtos h3{
    font-size: 22px;
}

section#servicos{
    color: #fff;
    background-color: #222;
    background-position: bottom left;
    background-repeat: no-repeat;
    /*background-attachment: fixed;*/
    /*background-size: cover;*/
}
@media (min-width: 992px) {
    section#servicos{
        background-position: bottom center;
        background-attachment: fixed;
    }
}

section#empresa > .bg{
    border-top: solid 3px #fff;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#444+0,f1f1f1+100 */
    background-color: #444;  /*Old browsers */
    background: -moz-linear-gradient(top,  #444 0%, #eee 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  #444 0%,#eee 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  #444 0%,#eee 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#444', endColorstr='#eee',GradientType=0 ); /* IE6-9 */
    background-position: center center;
    background-repeat: no-repeat;
    /*background-attachment: fixed;*/
    background-size: cover;
    min-height: 500px;
    max-height: 860px;
    height: 100vh;
}
@media (min-width: 992px) {
    section#empresa > .bg{
        background-position: center center;
        background-attachment: fixed;
        min-height: 500px;
        max-height: 900px;
        height: 100vh;
    }
}
section#empresa > div > h1{
    color: inherit;
    background-color: #fff;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
    padding-left: 15%;
    padding-right: 15%;
}
section#empresa > .container > .bg{
    background-position: center center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: contain;
}
@media (min-width: 992px) {
    section#empresa > .container > .bg{
        background-size: auto;
    }
}

section#local{
    color: #fff;
    background-color: #2d2a2b;
}
section#local .embed-responsive{
    height: 100vh;
}
/*---- # corpo ----*/
/*#################*/


/*################*/
/*---- footer ----*/
footer{
    margin-top: 50px;
    border-top: solid 1px #000;
}
footer .footer-nav ul,
footer .footer-nav ul a{
    color: inherit;
}
footer .footer-nav ul .nav-link{
    padding-left: 0px;
}
footer .footer-nav h6{
    font-size: 18px;
    color: inherit;
    font-weight: 500;
}

footer .footer-bar{
    border-top: solid 1px #000;
}

@-webkit-keyframes pulse-whats{
    0% {
        -webkit-box-shadow: 0 0 0 0 rgba(162, 245, 145, 0.3);
    }
    70% {
        -webkit-box-shadow: 0 0 0 60px rgba(162, 245, 145, 0);
    }
    100% {
        -webkit-box-shadow: 0 0 0 0 rgba(162, 245, 145, 0);
    }
}
@keyframes pulse-whats{
    0% {
        -moz-box-shadow: 0 0 0 0 rgba(162, 245, 145, 0.3);
        box-shadow: 0 0 0 0 rgba(162, 245, 145, 0.3);
    }
    70% {
        -moz-box-shadow: 0 0 0 60px rgba(162, 245, 145, 0);
        box-shadow: 0 0 0 60px rgba(162, 245, 145, 0);
    }
    100% {
        -moz-box-shadow: 0 0 0 0 rgba(162, 245, 145, 0);
        box-shadow: 0 0 0 0 rgba(162, 245, 145, 0);
    }
}

footer .whatsapp-fixed{
    font-size: 2rem;
    background-color: #25d366;
    border-radius: 50%;
    left: auto; 
    right: 0px;
    height: 50px;
    width: 50px;
    animation: pulse-whats 2.5s infinite;
}
footer .whatsapp-fixed:hover{
    text-decoration: none;
    animation: none;
}

.footer-top{
    background-color: #fff;
    border: solid 1px #eee;
}
.footer-top:hover{
    text-decoration: none;
}
.footer-top i{
    color: #ea6428;
}
/*---- # footer ----*/
/*##################*/

.read-more{
    position: relative; /*importante!*/
}
.read-more-hide{
    /*border-bottom: solid 1px #e1e1e1;*/
}
.read-more-show{
    /*border-bottom: solid 1px #e1e1e1;*/
}
.read-more-bg{
    position: absolute;
    display: none;
    background: rgba(255,255,255,0);
    background: -moz-linear-gradient(top, rgba(255,255,255,0), rgba(255,255,255,1) 85%);
    background: -webkit-gradient(left top, left bottom, color-stop(rgba(255,255,255,0)), color-stop(85%, rgba(255,255,255,1)));
    background: -webkit-linear-gradient(top, rgba(255,255,255,0), rgba(255,255,255,1) 85%);
    background: -o-linear-gradient(top, rgba(255,255,255,0), rgba(255,255,255,1) 85%);
    background: -ms-linear-gradient(top, rgba(255,255,255,0), rgba(255,255,255,1) 85%);
    background: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,1) 85%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ffffff', GradientType=0 );
    
    height: 150px;
    width: 100%;
    left: 0px;
    bottom: 0px;
}
.read-more-toggle{
    position: relative;
    display: table;
    margin: -15px auto 0px auto;
    cursor: pointer;
}
.read-more-toggle .btn{
    /*color: #fff;*/
    /*background-color: #ea6428;*/
}

label.required:before{
    content: "*";
    font-weight: normal;
    color: red;
    padding-right: 2px;
    font-size: 14px;
    line-height: 10px;
    height: 10px;
    margin-top: 4px;
    display: block;
    float: left;
}