* {
    font-family: 'Averta', sans-serif;
    padding: 0;
    margin: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

body {background-color: #E6E6E6; font-size: 1rem;}
html {scroll-behavior: smooth;}
a {text-decoration: none;}
h1 {font-size: 2rem;}
h1, h2 {
    opacity: 0.7;
    padding: 0;
    margin: 0;
}

@font-face {
    font-family: "Cookie";
    src: url("../fontes/Cookie/Cookie.eot");
    src: url("../fontes/Cookie/Cookie.eot?#iefix") format("embedded-opentype"),
        url("../fontes/Cookie/Cookie.woff2") format("woff2"),
        url("../fontes/Cookie/Cookie.woff") format("woff"),
        url("../fontes/Cookie/Cookie.ttf") format("truetype"),
        url("../fontes/Cookie/Cookie.svg#Cookie") format("svg");
}


nav li {
    width: auto;
    padding: 10px 5px;
    list-style: none;
    text-decoration: none;
    cursor: pointer;
    display: inline-block;
    color: white;
    -moz-border-radius: 7px;
    -webkit-border-radius: 7px;
    border-radius: 7px;
}
nav li:hover {background-color: var(--corSecundaria);}

p {
    line-height: 1.8;
    margin-bottom: 10px;
    text-align: justify;
    opacity: 0.9;
    font-size: 1rem;
}

p img {
    max-width: 100%;
    opacity: 1;
}

input, textarea, select {
    width: 100%;
    font-size: 1.2rem;
    padding: 8px 10px;
    border: 1px solid var(--corPrimaria);
    outline: none;
    -moz-border-radius: 20px;
    -webkit-border-radius: 20px;
    border-radius: 20px;
}

textarea {height: 100px;}

button {
    background-color: var(--corPrimaria);
    font-size: 16px;
    color: white;
    padding: 8px 15px;
    border: 0px;
    cursor: pointer;
    -moz-border-radius: 20px;
    -webkit-border-radius: 20px;
    border-radius: 20px;
}

button:hover {opacity: 0.8;}

.btnBranco {background-color: white; color: var(--corPrimaria);}
.btnSemCor {background-color: transparent; color: var(--corPrimaria);}
.btnSemCor:hover {background-color: var(--corPrimaria); color: white;}
.btnVermelho {background-color: red;}
.btnVerde {background-color: green;}

.btnFecharModal {
    position: absolute;
    top: -10px;
    right: -10px;
    background-color: red;
}

.btnFecharModal:hover {background-color: #c60000;}

.voltarTopo {
    position: fixed;
    bottom: 10px;
    right: 10px;
    cursor: pointer;
    display: none;
    background-color: black;
}


.barraSuperior {
    width: 100%;
    text-align: center;
    color: white;
    background-color: var(--corPrimaria);
    z-index: 99999999;
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 40%);
    /*position: sticky; top: 0;*/
}

.barraBanner {height: 550px; background-color: var(--corPrimaria);}
.bannerNomeSite {
    height: 550px;
    width: 100%;
    padding: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.bannerNomeSite p {
    font-family: 'Cookie';
    color: white;
    line-height: 1;
    text-align: center;
    text-shadow: 0 0 0.2em black;
}
.bannerNomeSite p:nth-child(1) {font-size: 5rem;}
.bannerNomeSite p:nth-child(2) {font-size: 3rem;}

.divSucesso, .divErro {
    position: fixed; width: 200px; top: 60px; right: 10px; color: white; cursor: pointer; padding: 10px 20px; font-weight: bold; font-size: 1.1rem; display: none; z-index: 999999999999;
}
.divSucesso {background-color: green;}
.divErro {background-color: red;}


.col1 {width: 100%; margin: auto;}
.col2 {width: 48%;}
.col4 {min-width: 24%; max-width: 24%;}

.destaques {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    grid-column-gap: 10px;
    grid-row-gap: 10px;
}

.destaques>.div1 {
    grid-area: 1 / 1 / 3 / 2;
    width: 480px;
    height: 480px;
}
.destaques>.div2 {grid-area: 1 / 2 / 2 / 3;}
.destaques>.div3 {grid-area: 2 / 2 / 3 / 3;}

.tituloDestaques {
    position: absolute;
    width: 100%;
    bottom: 0px;
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 80%), linear-gradient(to bottom, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 80%);
}

.dpFlex {display: flex;}
.dpFlex50 {flex: 50%;}
.dpFlexInicio {align-items: flex-start;}
.dpFlexCentro {align-items: center;}
.dpFlexFim {align-items: flex-end;}
.flexGrow1 {flex-grow: 1;}
.dpFlexStretch {align-items: stretch;}
.dpAlignCenter {align-items: center;}
.dpBlock {display: block;}
.dpSpaceBetween {justify-content: space-between;}
.dpJustifyCenter {justify-content: center;}
.dpJustifyCenterSpace {justify-content: space-around;}

.grid2Colunas {
    display: grid;
    grid-template-columns: 1fr 1fr;
}
.gap5 {gap: 5px;}
.gap10 {gap: 10px;}
.gap20 {gap: 20px;}

.linhaCinza {border: 0px; border-bottom: 1px solid gray;}
.linhaBranca {border: 0px; border-bottom: 1px solid white;}
.linhaBrancaComOpacidade {border: 0px; border-bottom: 1px solid white; opacity: 0.5;}

.linhaBranca3px {border: 0px; border-bottom: 3px solid white;}
.linhaCorPrincipal3px {border: 0px; border-bottom: 3px solid var(--corPrimaria);}

.paragrafo2Col {column-count: 2; column-gap: 50px;}

.sombraPreta {
    -webkit-box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.7);
    -moz-box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.7);
    box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.7);
}

.cursorMao {cursor: pointer;}
.centro {text-align: center;}
.esquerdo {text-align: left;}
.direito {text-align: right;}

.fundoCorPrincipal {background-color: var(--corPrimaria);}
.fundoCinzaClaro {background-color: #e6e6e6;}
.fundoCinzaEscuro {background-color: #a2a2a2;}
.fundoCinza {background-color: #bfbebe;}
.fundoVermelhoClaro {background-color: #ed6d6da2;}
.fundoVerdeClaro {background-color: #6abe6a;}

.fundoBranco {background-color: white;}
.corBranco {color: white;}
.corCinzaEscuro {color: #a2a2a2;}
.corPreto {color: black;}
.corVerde {color: green;}
.corPrincipal {color: var(--corPrimaria);}

.margem3-0 {margin: 3px 0px;}
.margem10-0 {margin: 10px 0px;}
.margem3 {margin: 3px;}
.margem5 {margin: 5px;}
.margem10 {margin: 10px;}
.margem20 {margin: 20px;}

.margem0-5-5-0 {margin: 0px 5px 5px 0px;}
.margemAuto {margin: auto;}

.padding1 {padding: 1px;}
.padding2 {padding: 2px;}
.padding3 {padding: 3px;}
.padding5 {padding: 5px;}
.padding10 {padding: 10px;}
.padding20 {padding: 20px;}
.padding3-5 {padding: 3px 5px;}
.padding5-10 {padding: 5px 10px;}
.padding0-10 {padding: 0px 10px;}

.negrito {font-weight: bold;}

.ladoALado {display: inline-table;}

.bordaRedonda {
    -moz-border-radius: 7px;
    -webkit-border-radius: 7px;
    border-radius: 7px;
}
.bordaRedondaSup {
    -moz-border-radius: 7px 7px 0px 0px;
    -webkit-border-radius: 7px 7px 0px 0px;
    border-radius: 7px 7px 0px 0px;
}
.bordaRedondaInf {
    -moz-border-radius: 0px 0px 7px 7px;
    -webkit-border-radius: 0px 0px 7px 7px;
    border-radius: 0px 0px 7px 7px;
}
.circulo {
    -moz-border-radius: 48%;
    -webkit-border-radius: 48%;
    border-radius: 48%;
}

.semBorda {border: 0px;}
.bordaCinza {border: 1px solid #9f9f9f;}
.bordaCorPrincipal {border: 1px solid var(--corPrimaria);}
.bordaEsq8pxCorPrincipal {border: 0px; border-left: 8px solid var(--corPrimaria);}
.bordaEsq8pxVerde {border: 0px; border-left: 8px solid green;}
.bordaEsq8pxVermelho {border: 0px; border-left: 8px solid red;}

.fonteGrande {font-size: 2rem;}
.fonteMaior {font-size: 1.2rem;}
.fonteMenor {font-size: 0.8rem;}

.imgSimbolo {
    width: 100px;
    height: 100px;
    position: absolute;
    -moz-border-radius: 7px;
    -webkit-border-radius: 7px;
    border-radius: 7px;
}

.imgSimbolo img {
    width: auto;
    height: 100px;
    border: 1px solid white;
    -moz-border-radius: 7px;
    -webkit-border-radius: 7px;
    border-radius: 7px;
}

.divNomeSiteMovel {display: none;}
.divNomeSite {margin-left: 115px; position: absolute;}
.divHoverCinza:hover {background-color: #c8c7c7;}
.divHoverOpacidade:hover {opacity: 0.7;}

#divMsgCepNaoEncontrado, #divMsgCepEncontrado {display: none;}


/*Div com efeitos Carregando..*/
.carregando {
    padding: 10px;
    text-align: center;
    margin: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
}
.carregando div:nth-child(1) {
    width: 25px;
    height: 25px;
    border-radius: 50%;
    border-top: 4px solid black;
    border-left: 4px solid black;
    border-right: 4px solid transparent;
    animation: spin .7s infinite linear;
}
.carregando div:nth-child(2)::before {
    content: "Carregando...";
}
@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}
/*Div com efeitos Carregando..*/


.mascaraSemClick, .mascaraComClick {
    background-color: black;
    opacity: 0.6;
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 9999999999;
    display: none;
}

.divModal {
    background-color: #E6E6E6;
    min-width: 420px;
    height: auto;
    z-index: 9999999999;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: none;
}

.divVideos, .divBarraAcoesPag {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}


.divMenuIconeMenuMovel {display: none;}

.divMenuDinamico {display: flex; justify-content: space-between;}

.divMenuVersaoMovel {display: none;}




@media print {
    /* Oculta tudo */
    body * {
        visibility: hidden;
        height: 0;
        margin: 0;
        padding: 0;
        overflow: hidden;
    }

    /* Mostra apenas o conteúdo */
    #imprimir, #imprimir * {visibility: visible; height: auto; overflow: visible;}
    #imprimir {position: absolute; top: 0; left: 0; width: 100%; margin: 0; padding: 0.5cm;}
}




/*Responsividade*/
/* Estilos para telas pequenas de celular */
@media (max-width: 767px) {
    .col1, .col2, .col4 {
        width: 95%;
        margin: auto;
    }

    .dpFlex {display: block;}
    .dpFlex50 {width: 100%;}

    .divModal {min-width: 300px;}
    .barraBanner, .bannerNomeSite {height: 280px;}
    .bannerNomeSite p:nth-child(1) {font-size: 2.2rem;}
    .bannerNomeSite p:nth-child(2) {font-size: 1.4rem;}
    .divVideos {flex-direction: column;}
    .divVideos div {width: 100%;}
    .divVideos iframe {height: 300px;}
    .paragrafo2Col {column-count: 1;}
    
    .grid2Colunas {display: block;}
    /*.grid2Colunas>div {display: flex;}*/

    .mapaGoogleMaps iframe {width: 95%;}

    .destaques {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: repeat(3, 1fr);
        grid-column-gap: 10px;
        grid-row-gap: 10px;
    }
    .destaques>.div1 {grid-area: 1 / 1 / 3 / 3; width: 100%; height: 300px;}
    .destaques>.div2 {grid-area: 3 / 1 / 4 / 2;}
    .destaques>.div3 {grid-area: 3 / 2 / 4 / 3;}

    .fonteGrande {font-size: 1.7rem;}
    .fonteMaior {font-size: 1.1rem;}
    .divSumirVersaoMovel {display: none;}
    .divLateralDireito {min-width: 100%; margin-top: 100px;}
    .divBarraAcoesPag {display: block; text-align: center;}

    .divFlexSemAlterar {
        margin-top: 10px;
        margin-bottom: 10px;
    }

    .divSumirVersaoMovel {display: none;}
    .divMenuVersaoPC, #divBarraMenu2 {display: none;}
    .divMenuIconeMenuMovel {display: block;}
    .divMenuVersaoMovel {
        display: none;
        width: 250px;
        height: 800px;
        position: fixed;
        right: 0px;
        top: 0px;
        background-color: var(--corPrimaria);
        z-index: 9999999999;
    }

    .divMenuVersaoMovel nav ul li {
        display: block;
        text-align: left;
        padding-left: 15px;
        padding-right: 15px;
        -moz-border-radius: 0px;
        -webkit-border-radius: 0px;
        border-radius: 0px;
    }

    .barraSuperior {position: sticky; top: 0;}

    .imgSimbolo {width: 50px; height: 50px;}
    .imgSimbolo img {width: auto; height: 50px;}

    .divNomeSiteMovel {
        margin-top: 5px;
        margin-left: 70px;
        position: absolute;
        display: block;
    }

    .divNomeSite {display: none;}
}

/* Estilos para telas de tablet (médio) */
@media (min-width: 768px) and (max-width: 991px) {
    .col1 {width: 95%;}

    .barraBanner, .bannerNomeSite {height: 400px;}
    .bannerNomeSite p:nth-child(1) {font-size: 3.5rem;}
    .bannerNomeSite p:nth-child(2) {font-size: 1.8rem;}


    .destaques>.div1 {grid-area: 1 / 1 / 3 / 2; width: 100%; height: 380px;}

    .divSumirVersaoMovel {display: none;}
    .divMenuVersaoPC, #divBarraMenu2 {display: none;}
    .divMenuIconeMenuMovel {display: block;}

    .divMenuVersaoMovel {
        display: none;
        width: 250px;
        height: 100%;
        position: fixed;
        right: 0px;
        top: 0px;
        background-color: var(--corPrimaria);
        z-index: 9999999999;
    }

    .divMenuVersaoMovel nav ul li {
        display: block;
        text-align: left;
        padding-left: 15px;
        padding-right: 15px;
        -moz-border-radius: 0px;
        -webkit-border-radius: 0px;
        border-radius: 0px;
    }


    .barraSuperior {position: sticky; top: 0;}

    .imgSimbolo {width: 50px; height: 50px;}
    .imgSimbolo img {width: auto; height: 50px;}

    .divNomeSiteMovel {
        margin-top: 5px;
        margin-left: 85px;
        position: absolute;
        display: block;
    }

    .divNomeSite {display: none;}
}

/* Estilos para telas de desktop e telas maiores */
@media (min-width: 992px) {
    .col1 {width: 80%;}
}

@media (max-width: 1200px) {
    .col1 {width: 95%;}
}