:root{
    font-size: 62.5%;
    --header-height:7.2rem;

    --primary-color:#351808;
    --primary-color-scroll:#351808a9;
    --bg-color:hsla(76, 86%, 26%, 0.62);
    --bg-color2:#F7F9F9;
    --bege:#FFFAF1;
    --headline-:#212529;
    --paragraph:#495057;
    --secondary-white:#EDEDED;
    --primary-hover:#271206;

}

html{
    scroll-behavior: smooth;
}

body,
html{
    width: 100%;
    height: 100%;
}

body{
    font-size: 1.6rem;
    font-family: 'DM Sans', sans-serif;
    text-align: center;

    background-color: var(--bg-color2);

    overflow: overlay;
}

.wrapper{
    width: min(58rem,100%);
    margin-inline:auto;
}

section{
    padding-block: 10rem;
}

section header h2{
    font-weight: 700;
    font-size: 1.8rem;
    line-height: 150%;
    
    letter-spacing: .08em;
    text-transform: uppercase;

    color: var(--primary-color);
}

section header span{
    display: block;
    font-weight: 700;
    font-size: 3rem;

    color: var(--headline-);
    margin: 1.6rem 2.4rem 2.4rem;
}

.button{
    padding: 1.6rem 3.2rem; 
    width: fit-content;

    cursor: pointer;
    border: none;
    border-radius: 4rem;
    background-color: var(--primary-color);
    color: var(--bg-color2);

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.6rem;
    text-transform: uppercase;
}

.button:hover{
    background-color: var(--primary-hover);
}

/* ================================ CABEÇALHO ================================ */
#header{
    position: fixed;
    top:0;
    height: var(--header-height);
    width: 100vw;
    z-index: 100;
}

#header .wrapper{
    height: var(--header-height);
}

#header .icons__svg{
    display: flex;
    align-items: center;
    justify-content: space-between;

    padding: 0.1rem 2.4rem;
}

body.scroll #header{
    background-color: var(--primary-color-scroll);
    border: none;

    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
    -moz-backdrop-filter: blur(3px);
    z-index: 100;
}

body.scroll #header .logo__svg svg path{
    fill:var(--bg-color2);
}

body.scroll #header button svg path{
    stroke:var(--bg-color2);
}

.cabecalho button{
    border: none;
    background: 0 0;
    cursor: pointer;
    padding: .2rem 0 0;
}

.cabecalho button img{
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ========== MENU EXPANDIDO ================ */
body.menu__expanded{
    overflow: hidden;
    background-color: var(--primary-color);
    z-index: 101;
}

body.menu__expanded > :not(#header){
    visibility: hidden;
    opacity: 0;
}

.menu__header{
    visibility: hidden;
    opacity: 0;
}

.close__menu,
body.menu__expanded .open__menu{
    display: none;
}

body.menu__expanded .menu__header{
visibility: visible;
opacity: 1;
}

body.menu__expanded .close__menu{
    display: block;
}

.menu__header{
    transform: translateY(100%);
}

body.menu__expanded .menu__header{
    position: fixed;
    top: 0;
    left: 0;

    padding-top: var(--header-height);

    width: 100vw;
    height: 100vh;

    transition: transform 300ms;
    transform: translateY(0);
}

.menu__header ul:nth-child(1){
    display: flex;
    flex-direction: column;
    gap: 2.5rem;
    margin-top: 4rem;
    margin-bottom: 4.8rem;
}

.menu__header ul:nth-child(1) li a{
    color: var(--bg-color2);
    font-weight: 700;
    font-size: 2.4rem;
    line-height: 3.1rem;
}

.menu__header a.button,
.banner a.banner__btn{
    font-weight: 700;
    font-size: 1.8rem;
    text-transform: uppercase;

    color: var(--primary-color);
}

.menu__header .button{
    box-sizing: border-box;
    align-items: center;
    padding: 1.6rem 3.2rem;
    line-height: 2.3rem;
    display: inline-block;
    background: var(--bg-color2);
    border-radius: 4rem; 
    margin-bottom: 6rem;
}

.menu__header .button:hover,
.banner a.banner__btn:hover{
    background-color: var(--primary-color);
    border: 1px solid var(--bg-color2);
}

.menu__header a.button:hover,
.banner a.banner__btn:hover{
    color: var(--bg-color2);
}

.social__links{
    justify-content: center;
    display: flex;
    gap: 3.2rem;
}

body.menu__expanded .logo__svg,
body.menu__expanded button{
    position: relative;
    z-index: 2;
}

body.menu__expanded .logo__svg svg path{
    fill:var(--bg-color2);
}

body.menu__expanded button svg path{
    stroke:var(--bg-color2);
}

/* ================================ SEÇÃO HERO ================================ */
.principal::before{
    content: "";
    width: 100%;
    height: 81.4rem;
    background-color: var(--bg-color);
    display: block;

    z-index: -1;
    top: 0;
    left: 0;
    position: absolute;
}

.principal__hero {
    padding-bottom: 0;
    padding-top: calc(3.9rem + var(--header-height));
}

.principal__hero .hero__welcome{
    display: inline-block;
    font-size: 1.4rem;
    line-height: 150%;
    font-weight: 700;
    color: var(--primary-color);
    margin: 0 2.4rem;
}

.principal__hero h1{
    padding-top: 1.8rem;
    font-size:3.4rem;
    line-height: 130%;
    color: var(--headline-);
    margin: 0 2.4rem;
}

.principal__hero p {
    padding-top: 2.4rem;
    font-size: 1.8rem;
    color: var(--bg-color2);
    margin: 0 2.4rem;
    line-height: 150%;
}

.principal__hero .button{
    margin-inline: auto;
    margin-top: 3.2rem; 
}

.principal__hero .button span{
    font-weight: 700;
    font-size: 1.4rem;
}

.hero__familia{
    width: 30rem;
    height: 31.6rem;
    margin-inline:auto;
}

.montanhas{
    width: 100%;
    background-image: url(../images/montanhas.png);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.naoOficial,
.naoOficial2{
    background-color: red;
    color: white;
    padding: 2rem;
    font-weight: 700;
}

/* ================================ SEÇÃO SERVIÇOS ================================ */
#servicos{
    background-color: var(--bg-color2);
}

#servicos h2{
    margin-bottom: 1.6rem;

}

#servicos p:nth-child(2){
    font-weight: 700;
    font-size: 3rem;
    color: var(--headline-);

    margin-bottom: 6rem;
    padding-inline: 3rem;
}

.servicos__infos{
    display: flex;   
    padding-inline: 2.4rem;
    overflow-x: hidden;
}

.slides{
    display: flex;
}

.slides input{
    display: none;
}

body.menu__expanded .slide{
    transition: 0s;
}

.slide{
    transition: 0.5s;
}

.manual__navigation{
    position: absolute;
    width: 32.7rem;
    margin-top: -2rem;
    display: flex;
    justify-content: center;
}

.manual__btn{
    border: 1px solid var(--bg-color);
    padding: 0.5rem;
    border-radius: 1rem;
    cursor: pointer;
}

.manual__btn:not(:last-child){
    margin-right: 1rem;
}

#radio1:checked ~ .first{
    margin-left: -0.4%;
}

#radio2:checked ~ .first{
    margin-left: -17.1%;
}

#radio3:checked ~ .first{
    margin-left: -33.8%;
}

#radio4:checked ~ .first{
    margin-left: -50.5%;
}

#radio5:checked ~ .first{
    margin-left: -67.1%;
}

#radio6:checked ~ .first{
    margin-left: -82.8%;
}

.navigation__auto div{
    border: 1px solid var(--bg-color);
    padding: 0.5rem;
    border-radius: 1rem;
    cursor: pointer;
}

.navigation__auto{
    position: absolute;
    width: 32.7rem;
    margin-top: 35rem;
    display: flex;
    justify-content: center;
}

.navigation__auto div:not(:last-child){
    margin-right: 1rem;
}

#radio1:checked ~ .navigation__auto .auto__btn1,
#radio2:checked ~ .navigation__auto .auto__btn2,
#radio3:checked ~ .navigation__auto .auto__btn3,
#radio4:checked ~ .navigation__auto .auto__btn4,
#radio5:checked ~ .navigation__auto .auto__btn5,
#radio6:checked ~ .navigation__auto .auto__btn6{
    background-color: var(--bg-color);
}

.servicos__infos .infos{ 
    box-sizing: border-box;
    display: flex;
    flex-direction: column; 
    gap: 1.6rem; 

    text-align: left;
    padding: 2.4rem;
    width: 32.7rem;
    margin-right: 2.4rem;

    border: 1px solid var(--bg-color);
    border-radius: 0.6rem;
    background: white;
}

.servicos__infos .infos img{  
    height: 2.4rem;
    width: 2.4rem; 

    flex: none;
    order: 0;
    flex-grow: 0;
}

.servicos__infos .infos h3{   
    font-weight: 700;
    font-size: 2.4rem;

    flex: none;
    order: 1;
    flex-grow: 0;
    color: var(--headline-);
}

.servicos__infos .infos p{   
    flex: none;
    order: 2;
    flex-grow: 0;
    color: var(--primary-color);
    line-height: 2.4rem;
    font-size: 1.6rem;
}

/* ================================ SEÇÃO SOBRE ================================ */
#sobre{
    background-color: var(--bg-color);
    padding-bottom: 12.4rem;
}

#sobre header h2{
    margin-left: 2.4rem;
}

#sobre header{
    text-align: left;
}

#sobre .sobre__infos{
    text-align: left;
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 150%;

    color: var(--primary-color);

    margin-bottom: 1rem;

    padding-inline: 2.4rem;
}

.sobre__infos p{
    margin-bottom: 1rem;
}

.swiper-pagination-bullet-active{
    background: var(--bg-color2) !important;
}

.swiper-button-next:after, .swiper-button-prev:after{
    font-size: 4rem !important;
}

.swiper-button-next, .swiper-button-prev{
    color: var(--bg-color2) !important;
}

.carousel__items img{
    box-sizing: border-box;
    width: 30rem;
    height: 30rem;
    cursor: pointer;

    border-radius: 0.7rem;

    margin-inline:1.2rem;

    transition-property: box-shadow, transform;
    transition-duration: 350ms;
    transition-timing-function: ease;

    box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.24);
}

.sobre__videos div h3{
    color: var(--headline-);
    font-size: 1.6rem;
    text-transform: uppercase;

    display: inline-block;
}

.videos__embed{
    position: relative;
    width: min(77rem,100%);
    padding-bottom: 48%;
}

.videos__embed iframe{
    position: absolute;
    width: 100%;
    height: calc(100% + 2.4rem);
    border: none;
    padding: 2.4rem;
    border-radius: 3rem;
    display: block;
}

.video__reinauguracao .iframe{
    margin-block: 1rem;
}

.video__tour{
    margin-block: 3.4rem;
}

/* ================================ BANNER ================================ */
.banner{
    width: min(58rem,100%);
    margin-inline:auto;
    margin-top: -8rem;
}

.banner__content{
    padding-block:2.4rem;
    margin-inline: 2.4rem;
    background-color: var(--primary-color);
    border-radius: 0.6rem;
    box-sizing: border-box;

    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 2rem;
}

.banner__content h3{
    font-size: 1.6rem;
    color: var(--bg-color2);
    line-height: 130%;
    margin-bottom: 0.4rem;
    padding-inline: 2.4rem;
}

.banner__content .banner__btn{
    box-sizing: border-box;
    align-items: center;
    padding: 1.6rem 3.2rem;
    line-height: 2.3rem;

    margin-inline: auto;

    cursor: pointer;
    border: none;
    display: inline-block;
    background: var(--bg-color2);
    border-radius: 4rem; 
}

/* ================================ SEÇÃO DEPOIMENTOS ================================ */
section#depoimentos{
    padding-top: 9rem;
}

#depoimentos header p{
    font-size: 16px;
    line-height: 150%;
    color: var(--primary-color);

    margin-bottom: 2.8rem;
    /* padding-inline: 2.4rem; */
}

#depoimentos header span{
    margin-left: 0;
}

.depoimentos__cards{
    display: flex;
    flex-direction: column;
    gap: 3.2rem;

    align-items: center;

    padding-inline: 2.4rem;
}

.depoimentos__cards .card{
    display: flex;
    flex-direction: column;
    text-align: left;
    gap: 2rem;

    width: min(54rem,100%);
    height: min(27rem,100%);

    padding: 3.2rem;
    margin-inline: auto;

    background-color: white;
    border: 1px solid var(--paragraph);
    border-radius: 0.4rem;
}

.depoimentos__cards .card img{
    width: 4.5rem;
}

.card cite{
    font-size: 1.6rem;
    line-height: 150%;

    color: var(--paragraph);
}

.usuario{
    display: flex;
    align-items: center;
}

.card .usuario img{
    width: 4.2rem;
    border-radius: 50%;
}

.card .usuario p{
    color: var(--primary-color);
    font-weight: 700;
    font-size: 1.6rem;
    line-height: 175%;

    margin-left: 1.6rem;
}

/* ================================ SEÇÃO CLIMA ================================ */

#clima{
    background-color: var(--bg-color);
}

#clima .wrapper{
    padding-inline: 2.4rem;
}

#clima header span{
    margin-inline: 0;
    padding-bottom: 2.4rem;

}

#clima .clima__content{
    text-align: left;
}

.clima__seasons header{
    padding-bottom: 2.4rem;
}

.clima__seasons header h3,
.clima__weatherNow header h3{
    color: var(--headline-);
    font-size: 2rem;
    padding-bottom: 1rem;
}

.clima__seasons header p,
.seasons__content section span,
.clima__weatherNow header p{
    color: var(--primary-color);
    line-height: 125%;
}

.seasons__content h4{
    font-size: 1.7rem;
    color: var(--headline-);
    margin-bottom: .5rem;
}

.seasons__content details{
    padding-block: .5rem;
}

details[open] summary ~ * {
    animation: sweep .5s ease-in-out;
}

@keyframes sweep{
    0%    {opacity: 0; margin-left: -10px}
    100%  {opacity: 1; margin-left: 0px}
}

.seasons__content details summary{
    color: var(--primary-color);
    text-transform: uppercase;
    font-weight: 700;
    
    padding-bottom: .5rem;
    cursor: pointer;
}

.seasons__content section{
    padding-block: 0;
}

.seasons__content .countdown{
    display: flex;
    justify-content: space-evenly;
    margin: 1rem;
    border-radius: .5rem;
    background: var(--primary-color);
    box-shadow: 2.5px 2.5px 2.5px rgba(0, 0, 0, 0.4);  
}

.seasons__content .countdown li{
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-style: italic;
    padding: 1rem;
    color: var(--bg-color2);
    border-radius: .5rem;
    text-align: center;
}

.seasons__content .countdown span{
    font-family: Arial, Helvetica, sans-serif;
    font-style: italic !important;
    color: var(--bg-color2);
    font-style: normal;
    font-size: 1.4rem;
}

.clima__weatherNow header p{
    padding-bottom: 2.4rem;
}

.clima__weatherNow h4{
    font-size: 1.7rem;
    color: var(--headline-);
    margin-bottom: .5rem;
}

.clima__forecast{
    background: var(--primary-color);
    border-radius: .7rem;
    box-shadow: 2.5px 2.5px 2.5px rgba(0, 0, 0, 0.4);
    margin: 1rem;
}

.clima__forecast header{
    display: flex;
    font-size: 2.1rem;
    font-weight: 500;
    color: var(--bg-color2);
    padding: 1.6rem 1.5rem;
    align-items: center;
    border-bottom: 1px solid #ccc;
}

.clima__forecast header i{
    font-size: 0rem;
    cursor: pointer;
    margin-right: .8rem;
}

.clima__forecast.active header i{
    margin-left: .5rem;
    font-size: 3rem;
}

.clima__forecast .input-part{
    padding: 2rem 2.5rem 3rem;
}

.clima__forecast.active .input-part{
    display: none;
}

.input-part .info-txt{
    display: none;
    font-size: 1.7rem;
    text-align: center;
    padding: 1.2rem 1rem;
    border-radius: .7rem;
    margin-bottom: 1.5rem;
}

.input-part .info-txt.error{
    color: #721c24;
    display: block;
    background: #f8d7da;
    border: 1px solid #f5c6cb;
}

.input-part .info-txt.pending{
    color: var(--bg-color2);
    display: block;
    background: var(--primary-hover);
    border: 1px solid var(--bg-color2);
}

.input-part :where(input){
    width: 100%;
    height: 5.5rem;
    border: none;
    outline: none;
    font-size: 1.8rem;
    border-radius: .7rem;
}

.input-part input{
    text-align: center;
    padding: 0 1.5rem;
    cursor:pointer;
    background-color: var(--bg-color2);
    color: var(--primary-color);
    font-weight: 700;
}

.clima__forecast .weather-part{
    display: none;
    padding: 3rem 0 0;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.clima__forecast.active .weather-part{
    display: flex;
    background-color: var(--bg-color2);
    border-radius: 0 0 .5rem .5rem;
    color: var(--headline-);
}

.weather-part img{
    max-width: 12.5rem;
}

.weather-part .temp{
    display: flex;
    font-weight: 500;
    font-size: 7.2rem;

    color: var(--primary-color);
}

.weather-part .temp .numb{
    font-weight: 600;
}

.weather-part .temp .deg{
    font-size: 4rem;
    display: block;
    margin: 1rem .5rem 0 0;
}

.weather-part .weather{
    font-size: 2.1rem;
    text-align: center;
    margin: -.5rem 2rem 1.5rem;
}

.weather-part .location{
    display: flex;
    font-size: 1.9rem;
    padding: 0 2rem;
    text-align: center;
    margin-bottom: 3rem;
    align-items: center;
}

.location i{
    font-size: 2.2rem;
    margin: .4rem .5rem 0 0;
}

.weather-part .bottom-details{
    display: flex;
    width: 100%;
    justify-content: space-between;
    border-top: 1px solid #ccc;
}

.bottom-details .column{
    display: flex;
    width: 100%;
    padding: 1.5rem 0;
    align-items: center;
    justify-content: center;
}

.column i{
    color: var(--primary-color);
    font-size: 3.5rem;
}

.column.humidity{
    border-left: 1px solid #ccc;
}

.column .details{
    margin-left: .3rem;
}

.details .temp,
.humidity span{
    font-size: 1.8rem;
    font-weight: 500;
    margin-top: -.3rem;

    color: var(--primary-color);
}

.details .temp .deg{
    margin: 0;
    font-size: 1.7rem;
    padding: 0 .2rem 0 .1rem;
}

.column .details p{
    font-size: 1.4rem;
}

/* ================================ SEÇÃO CONTATO ================================ */
#contato{
    text-align: left;
}

#contato .wrapper{
    padding-inline: 2.4rem;
}

#contato header h2{
    font-size: 3rem;

    text-transform: none;
    color: var(--headline-);

    margin-bottom: 3rem;
}

#contato header p{
    font-size: 16px;
    line-height: 150%;
    color: var(--primary-color);
    margin-bottom: 2rem;
}

#contato ul{
    display: flex;
    flex-direction: column;
    gap: 1.6rem;

    margin-bottom: 3rem;
}

#contato ul li,
#contato ul li a{
    display: flex;
    align-items: center;
    gap: .8rem;

    font-weight: 400;
    font-size: 1.6rem;
    line-height: 150%;

    color: var(--headline-);
}

.contato__content ul li a:hover{
 text-decoration: underline;
}

#contato .button{
    margin-bottom: 3rem;
    font-weight: 700;
    font-size: 1.4rem;
}

#contato .contato__embed{
    width: 100%;
    height: 30rem;
}

#contato .contato__embed iframe{
    width: 100%;
    height: 100%;
    border-radius: .6rem;

    box-shadow:
                1px 1px var(--primary-color-scroll),
                2px 2px var(--primary-color-scroll),
                3px 3px var(--primary-color-scroll);
        -webkit-transform: translateX(-3px);
        transform: translateX(-3px);
}

/* ================================ FOOTER ================================ */
footer{
    padding-block:6rem;
    background-color: var(--primary-color);

    text-align: left;
}

footer .wrapper{
    padding-inline: 2.4rem
}

footer .logo__svg{
    margin-bottom: 2.4rem;
}

footer .logo__svg img{
    width:11rem;
}

footer span,
footer span a{
    color: var(--bg-color2);
    line-height: 2;
}

footer span a{
    background: var(--primary-hover);
    border-radius: .5rem;
    padding-inline: .5rem;
}

footer span a:hover{
    text-decoration: underline;
}

.rating{
    text-align: center;
    display: table;
}

.rating input{
    display: none;
}

.rating label{
    float: right;
    font-size: 2rem;
    color: lightgrey;
    margin: 0 .5rem;
    text-shadow: 1px 1px #bbb;
}

.rating label:before{
    content: '★';
    cursor: pointer;
}

.rating input:checked ~ label{
    color: gold;
    text-shadow: 1px 1px #c60;
}

.rating:not(:checked) > label:hover,
.rating:not(:checked) > label:hover ~ label{
    color: gold;
}

.rating input:checked > label:hover,
.rating input:checked > label:hover ~ label{
    color: gold;
    text-shadow: 1px 1px goldenrod;
}

.rating .result:before{
    content: "";
    font-weight: 500;
    color: gold;
    font-family: 'Poppins', sans-serif;
    display: none;
}

.rating input:checked ~ .result:before{
    display: block;
}

.rating #five:checked ~ .result:before{
    content: "Eu amei 😍";
}

.rating #four:checked ~ .result:before{
    content: "Eu gostei 😎";
}

.rating #three:checked ~ .result:before{
    content: "Até que é bom 😄";
}

.rating #two:checked ~ .result:before{
    content: "Eu não gostei 😒";
}

.rating #one:checked ~ .result:before{
    content: "Eu odiei 😠";
}

footer .social__links{
    margin-block: 3.2rem;
    display: flex;
    justify-content: flex-start;
}

footer .social__links img:hover{
    -webkit-transform: rotateZ(-30deg);
    -ms-transform: rotateZ(-30deg);
    transform: rotateZ(-30deg);

    transition: transform 0.5s;
}

/* ================================ BACK TO TOP ================================ */
#backToTopButton{
    position: fixed;
    bottom: 1rem;
    right: 2.5rem;

    opacity: 0;
    visibility: hidden;

    transform: translateY(100%);
    transition: 0.2s;
}

#backToTopButton.show{
    z-index: 100;
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

/* ================================ RESPONSIVO 1024px ================================ */
@media (min-width:1024px) {
    /* GERAL RESPONSIVO 1024px*/

    .naoOficial{
        position: absolute;
        top: 10rem;
        left: 50%;
    }

    body{
        overflow: auto;
    }

    .wrapper{
        width: min(112rem,100%);
    }

    .videos__embed{
        width: min(112rem,100%);
        padding-bottom: 55%;
        margin-inline: auto;
    }

    #sobre,
    section{
        padding-block: 16rem;
    }

    footer{
        padding-block: 8rem;  
    }

    #servicos header p:nth-child(2),
    section header span{
        font-size: 4rem;
    }
    
    /* RESET RESPONSIVO 1024px*/
    header#header .wrapper * {
        margin: 0;
        padding:0;
        opacity: initial;
        display: initial;
        display: initial;
        flex-direction: initial;
        visibility: initial;
        position: initial;
        font-size: initial;
        color: initial;
        background-color: initial;
        font-weight: initial;
    }

    .menu__header{
        transform: none;
    }
  
    /* HEADER RESPONSIVO 1024px*/  
    header#header .close__menu,
    header#header .open__menu,
    header#header .social__links{
        display: none;
    }

    header#header .wrapper{
        padding-inline: 2.4rem;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    header#header .wrapper .menu__header{
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 66%;
    }
    
    header#header .menu__header ul:nth-child(1){
        display: flex;
        gap: 3.2rem;
    }
    
    header#header .menu__header ul li a{
        color: var(--primary-color);
        opacity: 0.7;
        transition: opacity .4s;
    }

    header#header .menu__header a.button{
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 1rem 2.4rem;

        border: 1px solid var(--primary-color);
        border-radius: 4rem;
        
        color: var(--primary-color);
        font-weight: 700;
        font-size: 1.4rem;
        line-height: 1.8rem;
        text-transform: uppercase;
    }

    header#header .menu__header a.button:hover{
    border: none;
        font-weight: bold;
        color: var(--bg-color2);
        background-color: var(--primary-color);
    }
    
    body.scroll header#header .menu__header ul li a{
        color: var(--bg-color2);
    }
    
    body.scroll header#header .menu__header a.button{
        border-color: var(--bg-color2);
        color: var(--bg-color2);
    }
    
    body.scroll header#header .menu__header a.button:hover,
    body.scroll header#header .menu__header a.button.active{
        border: none;
        font-weight: bold;
        color: var(--primary-color);
        background-color: var(--bg-color2);
        transition: 0.6s;
    }
    
    header#header .menu__header ul li a:hover,
    header#header .menu__header ul li a.active{
        opacity: 1;
        font-weight: 700;
    }
    
    header#header .menu__header ul li a::after{
        content: "";
        width: 0%;
        height: .2rem;
        background-color: var(--primary-color);
        
        position: relative;
        bottom: -2rem;
        left: -0.8rem;
        
        display: block;
        
        transition: width 0.2s;
    }
    
    body.scroll header#header .menu__header ul li a::after{
        background-color: var(--bg-color2);
    }
    
    header#header .menu__header ul li a:hover::after,
    header#header .menu__header ul li a.active::after{
        padding-inline: 0.8rem;
        width: 100%;
    }

    body.scroll header#header .menu__header ul li a:hover::after{
        background-color: var(--bg-color2);
    }
    

    /* PRICIPAL__HERO RESPONSIVO 1024px*/
    .principal__hero .wrapper{
        display: grid;
        grid-template-columns: 50.5rem 1fr;
        
        background-image: url(../images/montanhas.png);
        background-position: center;
        background-size: cover;
        background-repeat: no-repeat;
    }

    .principal__hero .wrapper .montanhas{
        background-image: none;
    }
    
    .principal__hero .col-a{
        text-align: left;
        margin-bottom: 16.1rem;
    }

    .principal__hero h1{
        font-size: 5.2rem;
    }
    
    .principal__hero .hero__familia{
        margin-top: 2rem;
        width: 47.4rem;
        height: 48.4rem;
    }
    
    .principal__hero .button{
        margin-inline: 2.4rem;
    }
    
    /* SERVIÇOS RESPONSIVO 1024px*/
    #servicos .wrapper .slider .slides input,
    #servicos .wrapper .slider .slides .navigation__auto,
    #servicos .wrapper .slider div.manual__navigation{
        display: none;
    }
    
    #servicos .wrapper .slider .slides{
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        transition: none;
        gap: 4rem;
    }
    
    #servicos .wrapper .slider .slide{
        margin: 0;
        width: 30%;
        flex-grow: 1;
        transition: none;
    }
    
    #radio1:checked ~ .first,
    #radio2:checked ~ .first,
    #radio3:checked ~ .first,
    #radio4:checked ~ .first,
    #radio5:checked ~ .first,
    #radio6:checked ~ .first{
        margin-left: 0;
    }

    /* SOBRE RESPONSIVO 1024px*/

    #sobre .wrapper{
        overflow: hidden;
    }

    .swiper{
        overflow: visible !important;
    }

    .carousel__items img:is(:hover,:focus){
        box-shadow: 8px 8px 10px 1px rgba(0, 0, 0, 0.2);
        transform: translate3d(-8px, -8px, 13px);
    }
    

    .sobre__videos{
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .video__reinauguracao{
        margin-block: 3.4rem;
    }

    .swiper-button-next, .swiper-button-prev{
        opacity: .7;
        transition: all 0.3s ease;
    }

    .swiper-button-next:hover, .swiper-button-prev:hover{
        opacity: 1;
    }

    .swiper-pagination-bullet{
        width: 1rem !important;
        height: 1rem !important;
    }

    /* BANNER RESPONSIVO 1024px*/

    .banner{
        margin-top: -10rem;
        width: min(112rem,100%);
        margin-inline: auto;
    }

    .banner__content{
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        padding: 6rem;
    }

    .banner__content h3{
        margin: 0;
        padding: 0;
        font-size: 3rem;
    }

    .banner__content .banner__btn{
        padding: 1.5rem 10rem;
        margin: 0;
    }

    /* DEPOIMENTOS RESPONSIVO 1024px*/
    #depoimentos header{
        text-align: left;
    }

    #depoimentos  .depoimentos__cards{
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-template-areas: 
        'X A'
        'B C';
    }

    #depoimentos  .depoimentos__cards .card{
        height: 27.5rem;
        justify-content: space-between;
    }

    #depoimentos .col-x{
        grid-area: X;
    }
    .depoimentos__cards .col-a{
        grid-area: A;
    }
    .depoimentos__cards .col-b{
        grid-area: B;
    }
    .depoimentos__cards .col-c{
        grid-area: C;
    }

    /* CLIMA RESPONSIVO */

    .clima__content{
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 5rem;
    }

    .col-a{
        text-align: left;
    }

    .col-b{
        text-align: left;
    }

    .input-part input:hover{
        border: 1px solid var(--bg-color2);
    }

    /* CONTATO RESPONSIVO 1024px*/
    #contato a.button{
        margin: 0;
        width: 100%;
    }

    #contato .wrapper{
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-template-areas: 'A B';
    }
    #contato .col-a{
        grid-area: A;
        width: min(40.4rem,100%);
    }

    #contato .col-b{
        grid-area: B;
        width: min(68rem,100%);
    }
    
    #contato .contato__embed{
        height: 100%;
    }

    /* FOOTER RESPONSIVO 1024px*/
    footer .wrapper{
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }

    /* BACK TO TOP BUTTON 1024PX */
    #backToTopButton.show:hover{
        -webkit-transform: scale(1.3);
        -ms-transform: scale(1.3);
        transform: scale(1.3);
    }
}