/*------------------------------------------------------
/  Cortinas Raio de Sol — camada de marca sobre o template
/------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Marcellus&family=Montserrat:wght@400;500;600;700&display=swap');

:root{
    --theme-color: #d99a1e;
    --theme-color-two: #d99a1e;
    --theme-color-three: #d99a1e;
    --theme-color-six: #d99a1e;
    --rs-gold: #d99a1e;
    --rs-gold-light: #f2b437;
    --rs-gold-dark: #a8670f;
    --rs-brown: #3a2215;
    --rs-brown-dark: #24140b;
    --rs-cream: #fbf5ea;
    --rs-sand: #f6e8cc;
    --rs-text: #5a4637;
    --rs-gradient: linear-gradient(180deg, #f2b437 0%, #d99a1e 55%, #a8670f 100%);
}
body{
    color: var(--rs-text);
    background: #fff;
}
.bodybox{
    padding: 0 40px;
}
h1, h2, h3, h4, .secTitle, .headFont{
    font-family: 'Marcellus', serif !important;
    font-weight: 400 !important;
}
.hcolor, .secTitle{
    color: var(--rs-brown) !important;
}
.subTitle{
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 3px;
    text-transform: uppercase;
    font-size: 13px;
    font-weight: 600;
    color: var(--rs-gold) !important;
}
.subTitle .sunMini,
.sunMini{
    width: 30px;
    height: auto;
    margin: -6px 10px 0 0;
    vertical-align: middle;
}
.goldText{
    background: var(--rs-gradient);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
a:hover{
    color: var(--rs-gold);
}

/*--- Botões ---*/
.berpo_btn .bp-shape{
    background: var(--rs-brown);
}
.berpo_btn.with_icon02,
.berpo_btn.with_icon02 i{
    background: var(--rs-gold);
}
.berpo_btn{
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 1px;
}

/*--- Preloader: sol nascendo ---*/
.preloader{
    background: var(--rs-cream);
}
.queraLoader{
    width: 240px;
    height: 200px;
}
.queraLoader:after{
    display: none;
}
.loaderSun{
    position: absolute;
    left: 0;
    right: 0;
    top: 10px;
    margin: auto;
    width: 200px;
    animation: rsRise 1.6s ease-in-out infinite alternate;
}
@keyframes rsRise{
    0%{ transform: translateY(14px) scale(.94); opacity: .65; }
    100%{ transform: translateY(0) scale(1); opacity: 1; }
}
.loaderO{
    top: auto;
    bottom: 0;
    transform: none;
    text-align: center;
}
.loaderO span{
    font-family: 'Marcellus', serif;
    font-size: 20px;
    letter-spacing: 2px;
    color: var(--rs-brown);
    animation-name: rsLetters;
}
.loaderO span:nth-child(8){ animation-delay: .8s; }
.loaderO span:nth-child(9){ animation-delay: .9s; }
.loaderO span:nth-child(10){ animation-delay: 1s; }
.loaderO span:nth-child(11){ animation-delay: 1.1s; }
@keyframes rsLetters{
    0%, 60%, 100%{ color: var(--rs-brown); transform: translateY(0); }
    25%{ color: var(--rs-gold); transform: translateY(-12px); }
}

/*--- Topbar e Header ---*/
.topbar02 p,
.topbar02 .topsocial a,
.header03 .mainMenu ul li > a{
    color: var(--rs-brown);
}
.header03 .mainMenu ul li > a{
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    letter-spacing: 1px;
    text-transform: uppercase;
}
.header03 .logo{
    padding: 26px 0;
    line-height: 1;
}
.rsBrand{
    display: flex;
    align-items: center;
    gap: 12px;
    text-decoration: none;
}
.header03 .logo .rsBrand img{
    height: 52px;
    width: auto;
}
.rsBrand .rsWord{
    white-space: nowrap;
    display: flex;
    flex-direction: column;
    line-height: 1;
    color: var(--rs-brown);
}
.rsBrand .rsWord small{
    font-family: 'Montserrat', sans-serif;
    font-size: 10px;
    letter-spacing: 6px;
    font-weight: 600;
    color: var(--rs-brown);
    margin-bottom: 4px;
}
.rsBrand .rsWord strong{
    font-family: 'Marcellus', serif;
    font-weight: 400;
    font-size: 27px;
    letter-spacing: .5px;
}
.rsBrand .rsWord em{
    font-style: normal;
    font-family: 'Montserrat', sans-serif;
    font-size: 8.5px;
    letter-spacing: 3px;
    color: var(--rs-gold);
    margin-top: 5px;
    font-weight: 600;
}
.header03.fixedHeader{
    background: rgba(255, 255, 255, .97);
    box-shadow: 0 10px 40px rgba(58, 34, 21, .08);
}
.header03.fixedHeader .logo{
    padding: 14px 0;
}

/*--- Hero ---*/
.homeTop{
    background: radial-gradient(ellipse at 78% 40%, #fdf1d6 0%, var(--rs-cream) 45%, #f7ecda 100%);
    overflow: hidden;
}
.homeTop:before{
    content: '';
    position: absolute;
    width: 1500px;
    height: 1500px;
    right: -520px;
    top: -380px;
    border-radius: 50%;
    background: repeating-conic-gradient(from 0deg, rgba(217, 154, 30, .09) 0deg 4deg, transparent 4deg 15deg);
    -webkit-mask: radial-gradient(circle, #000 18%, transparent 68%);
    mask: radial-gradient(circle, #000 18%, transparent 68%);
    animation: rsSpin 140s linear infinite;
    pointer-events: none;
}
@keyframes rsSpin{
    100%{ transform: rotate(360deg); }
}
.slider_03 .prcolor3{
    color: var(--rs-gold);
}
.slider_03 .heroKicker img{
    width: 34px !important;
    height: auto !important;
    margin: -6px 10px 0 0 !important;
    vertical-align: middle;
}
.heroVisual{
    position: relative;
    width: 560px;
    height: 590px;
}
.heroVisual .hvSun{
    position: absolute;
    width: 560px !important;
    height: auto !important;
    left: 0;
    top: 0;
    animation: rsFloat 6s ease-in-out infinite;
}
.heroVisual .hvPhoto{
    position: absolute;
    left: 80px;
    top: 105px;
    width: 400px !important;
    height: 480px !important;
    object-fit: cover;
    border-radius: 200px 200px 30px 30px;
    border: 10px solid #fff;
    box-shadow: 0 30px 70px rgba(58, 34, 21, .22);
}
.heroVisual .hvBadge{
    position: absolute;
    left: -20px;
    bottom: 60px;
    background: #fff;
    border-radius: 60px;
    padding: 16px 28px 16px 18px;
    display: flex;
    align-items: center;
    gap: 14px;
    box-shadow: 0 20px 50px rgba(58, 34, 21, .14);
    animation: rsFloat 5s ease-in-out infinite reverse;
    white-space: nowrap;
}
.heroVisual .hvBadge img{
    width: 46px !important;
    height: 46px !important;
    background: var(--rs-sand);
    border-radius: 50%;
    padding: 8px;
}
.heroVisual .hvBadge b{
    display: block;
    font-family: 'Marcellus', serif;
    font-weight: 400;
    font-size: 19px;
    color: var(--rs-brown);
    line-height: 1.2;
}
.heroVisual .hvBadge span{
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    letter-spacing: 1px;
    color: var(--rs-text);
    line-height: 1.4;
}
.heroVisual .hvBadge.right{
    left: auto;
    right: -30px;
    bottom: auto;
    top: 260px;
    animation-delay: 1s;
}
@keyframes rsFloat{
    0%, 100%{ transform: translateY(0); }
    50%{ transform: translateY(-14px); }
}
@media (max-width: 777px){
    /* No celular, mantém a composição visual do desktop no topo do banner. */
    .heroVisual{
        width: 220px;
        height: 235px;
    }
    .heroVisual .hvSun{
        width: 220px !important;
    }
    .heroVisual .hvPhoto{
        left: 31px;
        top: 41px;
        width: 157px !important;
        height: 188px !important;
        border-width: 5px;
        border-radius: 80px 80px 14px 14px;
        box-shadow: 0 12px 30px rgba(58, 34, 21, .20);
    }
    .workProcess h5{
        margin-bottom: 10px;
    }
}

/*--- Produtos (carrossel) ---*/
.serviceSlider02.owl-carousel{
    background: #fff;
    box-shadow: 0 30px 80px rgba(58, 34, 21, .08);
}
.service_item_04{
    padding: 80px 45px 64px;
    border-right-color: #f4ece0;
}
.service_item_04 h3{
    font-size: 25px;
    color: var(--rs-brown);
}
.service_item_04 p{
    color: var(--rs-text);
}
.siIcon svg,
.it0402 .siIcon svg,
.it0403 .siIcon svg,
.it0404 .siIcon svg{
    fill: #fbf0da;
    transition: transform .6s ease;
}
.service_item_04:hover .siIcon svg{
    transform: rotate(25deg) scale(1.08);
}
.service_item_04 .siIcon img{
    width: 60px;
    height: 60px;
}
.service_item_04 .tag{
    display: inline-block;
    margin-top: 14px;
    font-family: 'Montserrat', sans-serif;
    font-size: 11px;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--rs-gold-dark);
    font-weight: 600;
}

/*--- Sobre ---*/
.aboutSection03 .abdesc{
    color: var(--rs-text);
    margin: 0 0 34px;
    font-size: 17px;
    line-height: 30px;
}
.abfact.rsArch{
    margin: -70px 0 0 -10px;
    text-align: center;
    position: relative;
}
.rsArch .archSun{
    position: absolute;
    width: 92%;
    left: 4%;
    top: -60px;
    z-index: 0;
    animation: rsFloat 7s ease-in-out infinite;
}
.rsArch .archPhoto{
    position: relative;
    z-index: 1;
    width: 420px;
    max-width: 82%;
    height: 520px;
    object-fit: cover;
    border-radius: 210px 210px 30px 30px;
    border: 10px solid #fff;
    box-shadow: 0 30px 70px rgba(58, 34, 21, .18);
    margin-top: 70px;
}
.funfact02 i,
.funfact02.iconTop i{
    color: var(--rs-gold);
}
.funfact02 img.ffIco{
    position: absolute;
    left: 24px;
    top: 34px;
    width: 38px;
}
.funfact02.iconTop img.ffIco{
    position: relative;
    left: 0;
    top: 0;
    display: block;
    margin: 0 0 6px;
}
.funfact02 h2{
    color: var(--rs-brown);
}
.funfact02 h5{
    color: var(--rs-text);
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
}
.skItem02{
    padding: 20px 30px 20px 110px;
}
.skThumb,
.skI02.skItem02 .skThumb{
    background: var(--rs-sand);
}
.skThumb img{
    width: 42px;
    height: 42px;
}
.skItem02 h5{
    color: var(--rs-brown);
    font-family: 'Marcellus', serif;
    font-size: 20px;
    margin: 0 0 4px;
}
.skItem02 p{
    margin: 0;
    font-size: 15px;
    line-height: 24px;
    color: var(--rs-text);
}

/*--- Como funciona ---*/
.workProcess01{
    background: var(--rs-cream);
    overflow: hidden;
}
.workProcess01 .secTitle{
    margin-bottom: 70px;
}
.wpCircle{
    position: relative;
    width: 230px;
    height: 230px;
    margin: 0 auto 10px;
}
.wpCircle:before{
    content: '';
    position: absolute;
    inset: -26px;
    border-radius: 50%;
    background: repeating-conic-gradient(from 0deg, var(--rs-gold) 0deg 2.2deg, transparent 2.2deg 15deg);
    -webkit-mask: radial-gradient(circle, transparent 58%, #000 59%, #000 68%, transparent 69%);
    mask: radial-gradient(circle, transparent 58%, #000 59%, #000 68%, transparent 69%);
    animation: rsSpin 40s linear infinite;
    opacity: .75;
}
.wp02 .wpCircle:before{ animation-direction: reverse; }
.wpCircle img.wpPhoto{
    width: 100% !important;
    height: 100% !important;
    border-radius: 50%;
    object-fit: cover;
    border: 8px solid #fff;
    box-shadow: 0 20px 50px rgba(58, 34, 21, .15);
}
.wpCircle .wpNum{
    position: absolute;
    right: -6px;
    top: 4px;
    width: 58px;
    height: 58px;
    border-radius: 50%;
    background: var(--rs-gradient);
    color: #fff;
    font-family: 'Marcellus', serif;
    font-size: 24px;
    line-height: 58px;
    text-align: center;
    box-shadow: 0 10px 25px rgba(168, 103, 15, .35);
}
.workProcess h5{
    color: var(--rs-gold);
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 600;
}
.workProcess h3{
    color: var(--rs-brown);
}
.workProcess h3:after,
.wp02 h3:after,
.wp03 h3:after{
    background: #f8e2b3;
}
.workProcess p{
    color: var(--rs-text);
}
.workProcess a,
.wp02 a,
.wp03 a{
    background: #fff;
    color: var(--rs-brown);
}

/*--- Portfólio ---*/
.workSection02{
    padding-bottom: 140px;
}
.filter_menu{
    flex-wrap: wrap;
}
.filter_menu li{
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.filter_menu li:hover,
.filter_menu li.active,
.filter_menu li:hover span,
.filter_menu li.active span{
    color: var(--rs-gold);
}
.folioItem02,
.folioItem02.mrleft{
    margin: 0 0 40px;
    overflow: visible;
}
.folioItem02 .fThumb{
    display: block;
    overflow: hidden;
    border-radius: 30px;
}
.folioItem02 img{
    height: 440px;
    object-fit: cover;
    transition: transform .8s ease;
}
.folioItem02:hover img{
    transform: scale(1.06);
}
.folioHover02{
    margin: -70px 0 0 25px;
    padding: 18px 34px 18px 28px;
}
.folioHover02 h4{
    font-size: 20px;
    color: var(--rs-brown);
}
.folioHover02 p{
    font-family: 'Montserrat', sans-serif;
    font-size: 11px;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--rs-gold-dark);
}

/*--- Missão / Visão / Valores ---*/
.pricingSection03{
    background: linear-gradient(180deg, #fff 0%, var(--rs-cream) 100%);
    padding-top: 40px;
}
.pricingTab03 li a{
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 1px;
    color: var(--rs-brown);
}
.pricingTab03 li a.active,
.pricingTab03 li a:hover{
    background: var(--rs-gold);
}
.tabContent03 > img{
    height: 640px;
    object-fit: cover;
}
.pricing-item-02 .p-title{
    color: var(--rs-brown);
    font-size: 28px;
}
.pricing-item-02 .p-title:after{
    background: #f8e2b3;
}
.pricing-item-02 .mvIcon{
    width: 110px;
    margin: 10px auto 18px;
    display: block;
}
.pricing-item-02 .mvText{
    color: var(--rs-text);
    font-size: 17px;
    line-height: 29px;
    margin: 0 0 24px;
}
.pricing-item-02 ul li{
    color: var(--rs-brown);
    text-align: left;
}
.pricing-item-02 ul li i{
    color: var(--rs-gold);
}
.priceCon p{
    color: var(--rs-text);
}
.priceCon .icon_box_01 i{
    color: var(--rs-gold);
}
.priceCon .icon_box_01 h5,
.priceCon .icon_box_01 span{
    color: var(--rs-brown);
}

/*--- Números ---*/
.funfact03{
    background: var(--rs-cream);
    transition: transform .4s ease, box-shadow .4s ease;
}
.funfact03:hover{
    transform: translateY(-8px);
    box-shadow: 0 25px 50px rgba(58, 34, 21, .1);
}
.factThumb,
.ffc02 .factThumb,
.ffc03 .factThumb,
.ffc04 .factThumb{
    background: #fff;
    box-shadow: 0 10px 25px rgba(217, 154, 30, .25);
}
.funfact03 .factThumb img{
    width: 44px;
    height: 44px;
}
.funfact03 h2{
    color: var(--rs-brown);
}
.funfact03 h5{
    color: var(--rs-text);
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    line-height: 22px;
}

/*--- Vídeos ---*/
.ideaSection01 p{
    color: var(--rs-text);
}
.videoTrio{
    display: flex;
    gap: 20px;
    justify-content: flex-end;
    align-items: center;
}
.videoTrio .vItem{
    position: relative;
    flex: 1;
    max-width: 230px;
    border-radius: 140px 140px 24px 24px;
    overflow: hidden;
    border: 8px solid #fff;
    box-shadow: 0 25px 60px rgba(58, 34, 21, .18);
    background: var(--rs-brown);
}
.videoTrio .vItem:nth-child(2){
    max-width: 260px;
    transform: translateY(-30px);
}
.videoTrio video{
    display: block;
    width: 100%;
    aspect-ratio: 9 / 16;
    object-fit: cover;
}
.videoTrio .vItem .vSound{
    position: absolute;
    bottom: 14px;
    right: 14px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: none;
    background: rgba(255, 255, 255, .9);
    color: var(--rs-brown);
    font-size: 15px;
    cursor: pointer;
}

/*--- Destaques (carrossel circular) ---*/
.folioSection02{
    background: var(--rs-brown);
    border-radius: 50px;
    overflow: hidden;
}
.folioSection02:before{
    content: '';
    position: absolute;
    width: 1200px;
    height: 1200px;
    left: 50%;
    top: 55%;
    margin: -600px 0 0 -600px;
    border-radius: 50%;
    background: repeating-conic-gradient(from 0deg, rgba(242, 180, 55, .08) 0deg 3deg, transparent 3deg 12deg);
    -webkit-mask: radial-gradient(circle, #000 20%, transparent 70%);
    mask: radial-gradient(circle, #000 20%, transparent 70%);
    animation: rsSpin 120s linear infinite;
}
.folioSection02 .secTitle{
    color: #fff !important;
}
.fi03Thumb{
    aspect-ratio: 1 / 1;
}
.featuredSlider .fsfolioItem img{
    object-fit: cover;
    aspect-ratio: 1 / 1;
}
.featuredSlider .fsfolioItem .acshape{
    border-radius: 50%;
    width: 100%;
    height: 100%;
    border: 3px dashed rgba(242, 180, 55, .9);
    transform: scale(1.08);
    animation: rsSpin 30s linear infinite;
}
.fi03Con h4{
    color: #fff;
}
.fi03Con p{
    color: var(--rs-gold-light);
    letter-spacing: 2px;
}

/*--- Diferenciais ---*/
.testimonialSection03{
    background: var(--rs-cream);
    padding-top: 40px;
    margin-top: 120px;
}
.testLeft p{
    color: var(--rs-text);
    margin-top: 0;
}
.testiItem03{
    background: #fff;
}
.testiItem03.RightItem{
    background: #f8e9c9;
}
.testiItem03 .au_quote i{
    -webkit-text-stroke-color: #fff;
    color: var(--rs-gold);
}
.testiItem03.RightItem .au_quote i{
    -webkit-text-stroke-color: #f8e9c9;
}
.testiItem03 .au_quote img{
    object-fit: cover;
}
.testiItem03 h5{
    color: var(--rs-brown);
    font-family: 'Marcellus', serif;
    font-size: 22px;
}
.testiItem03 .quotation{
    color: var(--rs-text);
}

/*--- Contato ---*/
.contactRS{
    position: relative;
    padding: 140px 0 130px;
}
.contactCard{
    position: relative;
    background: #fff;
    border-radius: 40px;
    padding: 50px 50px 40px;
    box-shadow: 0 30px 80px rgba(58, 34, 21, .1);
    overflow: hidden;
}
.contactCard:before{
    content: '';
    position: absolute;
    right: -60px;
    top: -40px;
    width: 260px;
    height: 140px;
    background: url(../images/sun.png) no-repeat center / contain;
    opacity: .14;
}
.contactCard input,
.contactCard select,
.contactCard textarea{
    width: 100%;
    height: 56px;
    border: 1px solid #efe3cf;
    background: var(--rs-cream);
    border-radius: 30px;
    padding: 0 24px;
    font-size: 15px;
    color: var(--rs-brown);
    margin-bottom: 18px;
    outline: none;
    transition: border-color .3s ease;
}
.contactCard textarea{
    height: 130px;
    padding-top: 16px;
    border-radius: 24px;
    resize: none;
}
.contactCard input:focus,
.contactCard select:focus,
.contactCard textarea:focus{
    border-color: var(--rs-gold);
}
.contactInfo{
    padding-left: 40px;
}
.contactInfo .ciItem{
    display: flex;
    align-items: center;
    gap: 18px;
    margin: 0 0 26px;
}
.contactInfo .ciItem i{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    flex: 0 0 60px;
    line-height: 60px;
    text-align: center;
    border-radius: 50%;
    background: var(--rs-sand);
    color: var(--rs-gold-dark);
    font-size: 22px;
}
.contactInfo .ciItem span{
    display: block;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--rs-gold-dark);
}
.contactInfo .ciItem a,
.contactInfo .ciItem b{
    font-family: 'Marcellus', serif;
    font-weight: 400;
    font-size: 21px;
    color: var(--rs-brown);
}
.contactInfo p{
    color: var(--rs-text);
    margin: 0 0 36px;
}

/*--- Rodapé ---*/
.footer_03{
    background: var(--rs-brown-dark);
    overflow: hidden;
}
.footer_03:before{
    content: '';
    position: absolute;
    width: 1300px;
    height: 1300px;
    left: 50%;
    bottom: -950px;
    margin-left: -650px;
    border-radius: 50%;
    background: repeating-conic-gradient(from 0deg, rgba(242, 180, 55, .07) 0deg 3deg, transparent 3deg 12deg);
    animation: rsSpin 160s linear infinite;
}
.aboutWidget03 img{
    width: 300px;
}
.aboutWidget03 p{
    color: #cdb89b;
}
.aboutWidget03 .email{
    color: #fff;
    border-color: var(--rs-gold);
}
.absocaila a{
    background: #3d2618;
}
.copyrightSec{
    background: #1a0e07;
}
.copyrightSec .Copyright{
    color: #cdb89b;
}
.copyrightSec .Copyright a{
    color: var(--rs-gold);
}
#backtotop{
    background: var(--rs-gold);
}

/*--- WhatsApp flutuante ---*/
.waFloat{
    position: fixed;
    left: 26px;
    bottom: 26px;
    z-index: 999;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: #25d366;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 10px 30px rgba(37, 211, 102, .45);
    animation: waPulse 2.4s ease-out infinite;
}
.waFloat svg{
    width: 32px;
    height: 32px;
    fill: #fff;
}
@keyframes waPulse{
    0%{ box-shadow: 0 0 0 0 rgba(37, 211, 102, .55); }
    70%{ box-shadow: 0 0 0 18px rgba(37, 211, 102, 0); }
    100%{ box-shadow: 0 0 0 0 rgba(37, 211, 102, 0); }
}

/*--- Responsivo ---*/
@media (max-width: 1199px){
    .abfact.rsArch{
        margin: 30px 0 40px;
    }
    .contactInfo{
        padding-left: 0;
        margin-top: 50px;
    }
    .videoTrio{
        justify-content: center;
        margin-top: 50px;
    }
}
@media (max-width: 991px){
    .bodybox{
        padding: 0 15px;
    }
    .rsBrand .rsWord strong{
        font-size: 22px;
    }
    .header03 .logo .rsBrand img{
        height: 40px;
    }
}
@media (max-width: 767px){
    .bodybox{
        padding: 0;
    }
    .rsBrand .rsWord em{
        display: none;
    }
    .folioItem02 img{
        height: 360px;
    }
    .rsArch .archPhoto{
        height: 420px;
    }
    .videoTrio{
        gap: 10px;
    }
    .videoTrio .vItem:nth-child(2){
        transform: translateY(-15px);
    }
    .contactCard{
        padding: 36px 22px 26px;
    }
    .tabContent03 > img{
        height: 420px;
    }
    .waFloat{
        left: 16px;
        bottom: 16px;
    }
}

/*--- Ajustes de header ---*/
.berpo_btn{
    white-space: nowrap;
}
@media (min-width: 1200px){
    .header03 .mainMenu ul li{
        margin: 0 0 0 4px;
    }
    .header03 .mainMenu ul li > a{
        font-size: 13px;
        padding: 41px 12px 38px;
    }
    .header03.fixedHeader .mainMenu ul li > a{
        padding: 28px 12px 26px;
    }
}

/*--- Ajustes: diferenciais e contato ---*/
.testimonialSection03{
    padding-bottom: 110px;
}
.testiItem03{
    height: 170px;
    padding-top: 36px;
    padding-bottom: 30px;
}
.contactInfo{
    background: transparent;
    border-radius: 0;
    padding-bottom: 0;
}
@media (max-width: 767px){
    .testiItem03{
        height: auto;
    }
}
@media (max-width: 767px){
    .aboutSection03 .funfact02,
    .aboutSection03 .funfact02.iconTop{
        float: none;
        margin: 20px 0 0;
    }
}

/*--- Botões do formulário ---*/
.formBtns{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 22px;
}
.rsGhost{
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
    height: 60px;
    padding: 0 28px;
    border-radius: 50px;
    border: 2px solid #25d366;
    background: transparent;
    color: var(--rs-brown);
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    cursor: pointer;
    transition: all .3s ease;
}
.rsGhost i{
    color: #25d366;
    margin-right: 6px;
    transition: color .3s ease;
}
.rsGhost:hover{
    background: #25d366;
    color: #fff;
}
.rsGhost:hover i{
    color: #fff;
}
.formStatus{
    margin: 16px 0 0;
    font-size: 15px;
    min-height: 1px;
}
.formStatus.ok{ color: #2f8a4a; }
.formStatus.err{ color: #b0412a; }

/*--- Diferenciais: cards inteiros e setas discretas ao lado ---*/
.testimonialslider03 .slick-list{
    padding-bottom: 58px !important;
    box-sizing: content-box;
}
.testimonialslider03 .slick-arrow,
.testimonialslider03 .slick-arrow:hover{
    left: 30px;
    right: auto;
    bottom: auto;
    width: 42px;
    height: 42px;
    line-height: 40px;
    font-size: 14px;
    border-radius: 50%;
    background: transparent;
    border: 1px solid rgba(58, 34, 21, .25);
    color: var(--rs-brown);
    opacity: .7;
    transition: all .3s ease;
}
.testimonialslider03 .slick-arrow:hover{
    background: var(--rs-gold);
    border-color: var(--rs-gold);
    color: #fff;
    opacity: 1;
}
.testimonialslider03 .slick-arrow i{
    display: inline-block;
    transform: rotate(90deg);
}
.testimonialslider03 .slick-arrow.navLeft{
    top: calc(50% - 50px);
    left: -30px;
}
.testimonialslider03 .slick-arrow.navRight{
    top: calc(50% + 8px);
    left: -30px;
}
@media (max-width: 1199px){
    .testimonialslider03{
        margin-top: 30px;
        padding-bottom: 50px;
    }
    .testimonialslider03 .slick-arrow.navLeft,
    .testimonialslider03 .slick-arrow.navRight{
        top: auto;
        bottom: 0;
    }
    .testimonialslider03 .slick-arrow.navLeft{ left: 0; }
    .testimonialslider03 .slick-arrow.navRight{ left: 54px; }
    .testimonialslider03 .slick-arrow i{ transform: none; }
}

/*--- Foto ampliada (lightcase) com cantos arredondados ---*/
#lightcase-case #lightcase-content,
#lightcase-case #lightcase-content .lightcase-contentInner,
#lightcase-case #lightcase-content .lightcase-contentInner > *,
#lightcase-case #lightcase-content img{
    border-radius: 28px;
    overflow: hidden;
}
#lightcase-case #lightcase-content{
    box-shadow: 0 30px 80px rgba(0, 0, 0, .35);
}

/*--- Hover dos botões: sol do logo nascendo ---*/
.berpo_btn .bp-shape:nth-child(n+2){
    display: none;
}
.berpo_btn .bp-shape:nth-child(1),
.berpo_btn:hover .bp-shape:nth-child(1){
    left: 50%;
    top: auto;
    bottom: 0;
    width: 600px;
    height: 600px;
    background: transparent;
    border-radius: 50%;
    transition: transform .75s cubic-bezier(.22, .8, .3, 1);
    transition-delay: 0s;
    z-index: 1;
}
.berpo_btn .bp-shape:nth-child(1){
    transform: translate(-50%, 50%) scale(0);
}
.berpo_btn:hover .bp-shape:nth-child(1){
    transform: translate(-50%, 50%) scale(1);
}
/* raios */
.berpo_btn .bp-shape:nth-child(1):before{
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: repeating-conic-gradient(from -4deg, var(--rs-brown) 0deg 4deg, transparent 4deg 12deg, var(--rs-brown) 12deg 14deg, transparent 14deg 22.5deg);
    -webkit-mask: radial-gradient(circle closest-side, transparent 0 56%, #000 59% 100%);
    mask: radial-gradient(circle closest-side, transparent 0 56%, #000 59% 100%);
    transition: transform 1.2s ease;
}
.berpo_btn:hover .bp-shape:nth-child(1):before{
    transform: rotate(22.5deg);
}
/* disco do sol */
.berpo_btn .bp-shape:nth-child(1):after{
    content: '';
    position: absolute;
    inset: 25%;
    border-radius: 50%;
    background: radial-gradient(circle at 50% 30%, #4a2c1a 0%, var(--rs-brown) 60%, var(--rs-brown-dark) 100%);
}

/*--- Foto ampliada: setas nas laterais ---*/
#lightcase-nav a[class*='lightcase-icon-'].lightcase-icon-prev,
#lightcase-nav a[class*='lightcase-icon-'].lightcase-icon-next{
    position: fixed;
    top: 50%;
    bottom: auto;
    margin: 0;
    transform: translateY(-50%);
    width: 48px;
    height: 48px;
    line-height: 48px;
    font-size: 22px;
    text-align: center;
    border-radius: 50%;
    background: rgba(255, 255, 255, .12);
    color: #fff;
    opacity: .85;
    transition: background .3s ease, opacity .3s ease;
}
#lightcase-nav a[class*='lightcase-icon-'].lightcase-icon-prev{ left: 18px; }
#lightcase-nav a[class*='lightcase-icon-'].lightcase-icon-next{ right: 18px; }
#lightcase-nav a[class*='lightcase-icon-'].lightcase-icon-prev:hover,
#lightcase-nav a[class*='lightcase-icon-'].lightcase-icon-next:hover{
    background: var(--rs-gold);
    opacity: 1;
}
#lightcase-nav a[class*='lightcase-icon-'].lightcase-icon-play,
#lightcase-nav a[class*='lightcase-icon-'].lightcase-icon-pause{
    display: none !important;
}
@media (max-width: 640px){
    #lightcase-nav a[class*='lightcase-icon-'].lightcase-icon-prev{ left: 8px; }
    #lightcase-nav a[class*='lightcase-icon-'].lightcase-icon-next{ right: 8px; }
}

/*--- Botões flutuantes um pouco mais altos ---*/
.waFloat{
    bottom: 50px;
}
#backtotop{
    bottom: 60px !important;
}
@media (max-width: 767px){
    .waFloat{
        bottom: 40px;
    }
    #backtotop{
        bottom: 50px !important;
    }
}

/*--- Missão / Visão / Valores no celular ---*/
@media (max-width: 767px){
    .pricingSection03{
        padding-top: 30px;
        padding-bottom: 70px;
    }
    .pricingTab03{
        display: flex !important;
        justify-content: center;
        gap: 8px;
        margin: 20px 0 26px;
        text-align: center;
    }
    .pricingTab03 li{
        margin: 0;
        flex: 1 1 0;
    }
    .pricingTab03 li a,
    .pricingTab03 li a.active,
    .pricingTab03 li a:hover{
        display: block;
        height: 46px;
        line-height: 46px;
        padding: 0 6px;
        margin: 0;
        font-size: 13px;
        box-shadow: 0 8px 20px rgba(58, 34, 21, .08);
    }
    .pricingTab03 li a.active:before{
        font-size: 12px;
        margin-right: 4px;
    }
    .tabContent03 > img{
        position: relative;
        top: 0;
        display: block;
        width: 100%;
        height: 300px;
        border-radius: 30px;
    }
    .tabContent03 .pricing-item-02{
        float: none;
        max-width: none;
        margin: -70px 14px 0;
        padding: 36px 24px 30px;
        border-radius: 30px;
    }
    .pricing-item-02 .mvIcon{
        width: 90px;
        margin: 6px auto 14px;
    }
    .pricing-item-02 .mvText{
        font-size: 16px;
        line-height: 27px;
    }
    .pricing-item-02 .berpo_btn{
        width: 100%;
    }
    .priceCon{
        padding-top: 50px;
    }
}

/*--- Botão do formulário (WhatsApp) ---*/
.berpo_btn .bp-text .waIco{
    position: static;
    width: auto;
    height: auto;
    border: none;
    background: none;
    font-size: 18px;
    margin-right: 8px;
    vertical-align: -2px;
    line-height: 1;
}
@media (max-width: 767px){
    .formBtns .berpo_btn{
        width: calc(100% - 17px);
        margin-right: 0;
    }
    .formBtns .berpo_btn .btnwrap{
        padding: 0 16px;
    }
}
