.hero-title{

    text-align:center;

    display:flex;
    flex-direction:column;
    align-items:center;

}

.hero-title h1{

    font-family:'Cormorant Garamond', serif;

    font-size:8rem;

    font-weight:700;

    line-height:0.85;

    margin:0;

}
.hero-title h2{

    font-family:'Montserrat', sans-serif;

    text-transform:uppercase;

    letter-spacing:8px;

    font-size:1rem;

    font-weight:500;

    color:#d8b16a;

    margin-top:0px;
    margin-bottom:20px;

}
.hero-title p{

    font-size:1.5rem;

    color:white;

    max-width:800px;

    line-height:1.6;

}

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

html.public-page,
html.public-page body{
scrollbar-width:none;
-ms-overflow-style:none;
}

html.public-page{
overflow-y:auto;
overflow-x:hidden;
}

html.public-page::-webkit-scrollbar,
html.public-page body::-webkit-scrollbar{
width:0;
height:0;
display:none;
}

body{
font-family:'Montserrat',sans-serif;
background:#111;
color:white;
overflow-x:hidden;
}

body.public-site{
overflow-y:auto;
}

.no-text-select,
.no-text-select *{
-webkit-user-select:none;
-moz-user-select:none;
-ms-user-select:none;
user-select:none;
cursor:default;
-webkit-tap-highlight-color:transparent;
}

.no-text-select input,
.no-text-select textarea,
.no-text-select select,
.no-text-select .allow-select,
.no-text-select .allow-select *,
.no-text-select address,
.no-text-select a[href^="tel:"],
.no-text-select a[href^="mailto:"],
.no-text-select a[href^="https://wa.me"],
.no-text-select a[href*="whatsapp"],
.no-text-select a[href*="maps"],
.no-text-select a[href*="google.com/maps"]{
-webkit-user-select:text;
-moz-user-select:text;
-ms-user-select:text;
user-select:text;
}

.no-text-select a,
.no-text-select button,
.no-text-select [role="button"],
.no-text-select .btn,
.no-text-select .specialty-card-link,
.no-text-select .sobre-arrow,
.no-text-select .sobre-indicators button,
.no-text-select .social-links a{
cursor:pointer;
}

.no-text-select input,
.no-text-select textarea,
.no-text-select select{
cursor:text;
}

.no-text-select img{
-webkit-user-drag:none;
user-drag:none;
}

.container{
width:90%;
max-width:1200px;
margin:auto;
}

.navbar{
position:fixed;
width:100%;
top:0;
left:0;
z-index:1000;

display:flex;
justify-content:space-between;
align-items:center;

padding:20px 5%;

background:rgba(0,0,0,.5);
backdrop-filter:blur(10px);
}

.logo img{
height:70px;
}

.navbar ul{
display:flex;
gap:25px;
list-style:none;
}

.navbar a{
color:white;
text-decoration:none;
font-weight:500;
}

.hero{
height:100vh;
position:relative;
overflow:hidden;
}

.hero video{
position:absolute;
width:100%;
height:100%;
object-fit:cover;
}

.overlay{
position:absolute;
width:100%;
height:100%;
background:rgba(0,0,0,.55);
}

.hero-content{
position:relative;
z-index:2;

height:100%;

display:flex;
flex-direction:column;
justify-content:center;
align-items:center;

text-align:center;
padding:20px;
}

.hero-content h1{
font-size:6rem;
font-family:'Cormorant Garamond',serif;
margin-bottom:20px;
}

.hero-content p{
font-size:1.3rem;
max-width:700px;
}

.hero-buttons{
margin-top:35px;
display:flex;
gap:20px;
}

.btn-primary{
background:#d8b16a;
color:#111;
padding:15px 35px;
border-radius:40px;
text-decoration:none;
font-weight:600;
}

.btn-secondary{
border:1px solid white;
padding:15px 35px;
border-radius:40px;
text-decoration:none;
color:white;
}

.sobre-storytelling{
padding:112px 0 108px;
background:
linear-gradient(180deg, rgba(15,10,8,.78), rgba(27,20,15,.95)),
radial-gradient(circle at top left, rgba(216,177,106,.14), transparent 36%);
}

.sobre-storytelling .container.sobre-layout{
display:grid;
grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
gap:56px;
align-items:center;
width:min(90%, 1160px);
max-width:1160px;
margin:0 auto;
}

.sobre-slider{
position:relative;
min-height:510px;
border-radius:34px;
overflow:hidden;
border:1px solid rgba(216,177,106,.12);
box-shadow:0 24px 52px rgba(0,0,0,.3);
background:linear-gradient(180deg, rgba(37,24,17,.98), rgba(20,13,10,.98));
align-self:center;
}

.sobre-slider-stage{
position:relative;
min-height:510px;
}

.sobre-slide{
position:absolute;
inset:0;
opacity:0;
pointer-events:none;
transition:opacity .9s ease;
}

.sobre-slide.active{
opacity:1;
pointer-events:auto;
}

.sobre-slide img{
width:100%;
height:100%;
min-height:510px;
display:block;
object-fit:cover;
filter:brightness(1.08) contrast(1.05) saturate(1.1);
}

.sobre-slide::after{
content:"";
position:absolute;
inset:0;
background:
linear-gradient(180deg, rgba(10,7,5,.01) 0%, rgba(10,7,5,.06) 42%, rgba(10,7,5,.28) 100%);
}

.sobre-slide-overlay{
position:absolute;
left:32px;
right:32px;
bottom:32px;
z-index:2;
display:flex;
justify-content:flex-start;
}

.sobre-slide-overlay.is-hidden{
display:none;
}

.sobre-slide-overlay span{
display:inline-flex;
align-items:center;
gap:10px;
padding:12px 18px;
max-width:min(88%, 520px);
border-radius:20px;
background:rgba(16,10,8,.68);
border:1px solid rgba(216,177,106,.22);
backdrop-filter:blur(10px);
color:#f5ead8;
font-size:.92rem;
line-height:1.6;
letter-spacing:.02em;
box-shadow:0 14px 32px rgba(0,0,0,.24);
}

.sobre-slide-placeholder{
opacity:1;
pointer-events:auto;
position:absolute;
inset:0;
background:
radial-gradient(circle at top left, rgba(216,177,106,.18), transparent 34%),
linear-gradient(160deg, rgba(44,29,21,.98), rgba(19,13,10,.98));
}

.sobre-slide-empty{
position:absolute;
inset:0;
display:flex;
align-items:flex-end;
padding:36px;
}

.sobre-slide-empty span{
display:block;
width:100%;
padding:20px 22px;
border-radius:24px;
background:rgba(12,8,6,.48);
border:1px solid rgba(216,177,106,.14);
color:#f5ead8;
font-family:'Cormorant Garamond',serif;
font-size:2rem;
line-height:1.12;
box-shadow:0 18px 45px rgba(0,0,0,.24);
}

.sobre-arrow{
position:absolute;
top:50%;
transform:translateY(-50%);
z-index:3;
width:48px;
height:48px;
border:none;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
background:rgba(16,10,8,.72);
border:1px solid rgba(216,177,106,.18);
color:#f5ead8;
cursor:pointer;
backdrop-filter:blur(8px);
transition:.25s ease;
}

.sobre-arrow.prev{
left:22px;
}

.sobre-arrow.next{
right:22px;
}

.sobre-arrow:hover{
background:rgba(216,177,106,.9);
color:#1a120d;
transform:translateY(-50%) scale(1.04);
}

.sobre-indicators{
position:absolute;
left:50%;
bottom:24px;
transform:translateX(-50%);
z-index:3;
display:flex;
align-items:center;
gap:10px;
}

.sobre-indicators button{
width:10px;
height:10px;
border:none;
border-radius:50%;
padding:0;
background:rgba(255,255,255,.35);
cursor:pointer;
transition:transform .25s ease, background .25s ease, box-shadow .25s ease;
}

.sobre-indicators button.active{
background:#d8b16a;
box-shadow:0 0 0 4px rgba(216,177,106,.2);
transform:scale(1.05);
}

.sobre-content{
padding:10px 0;
max-width:520px;
display:flex;
flex-direction:column;
justify-content:center;
align-self:center;
}

.sobre-kicker{
display:inline-flex;
align-items:center;
gap:8px;
padding:9px 15px;
margin-bottom:18px;
border-radius:999px;
background:rgba(216,177,106,.08);
border:1px solid rgba(216,177,106,.14);
color:#d8b16a;
font-size:.78rem;
font-weight:600;
letter-spacing:.22em;
text-transform:uppercase;
width:fit-content;
}

.sobre-content h2{
font-size:3.2rem;
line-height:.98;
font-family:'Cormorant Garamond',serif;
margin-bottom:20px;
color:#d8b16a;
text-shadow:0 12px 30px rgba(0,0,0,.25);
max-width:none;
white-space:normal;
display:flex;
flex-direction:column;
gap:2px;
text-wrap:balance;
}

.sobre-content h2 span{
display:block;
}

.sobre-content p{
color:#f5ead8;
line-height:1.72;
font-size:.98rem;
max-width:50ch;
margin-bottom:14px;
opacity:.96;
}

.sobre-highlights{
margin-top:18px;
display:grid;
grid-template-columns:repeat(3, minmax(0, 1fr));
gap:12px;
max-width:520px;
}

.sobre-highlight-card{
min-width:0;
padding:16px 14px 14px;
border-radius:20px;
background:linear-gradient(180deg, rgba(41,28,21,.72), rgba(22,15,11,.82));
border:1px solid rgba(216,177,106,.14);
box-shadow:0 14px 28px rgba(0,0,0,.18);
backdrop-filter:blur(10px);
}

.sobre-highlight-card strong{
display:block;
font-family:'Cormorant Garamond',serif;
font-size:1.7rem;
line-height:.92;
color:#d8b16a;
margin-bottom:4px;
font-weight:700;
}

.sobre-highlight-card span{
display:block;
color:#f5ead8;
font-size:.84rem;
line-height:1.35;
}

.sobre-slider.single-slide .sobre-arrow,
.sobre-slider.single-slide .sobre-indicators{
display:none;
}

.destaques{
padding:120px 0;
}

.destaques h2{
text-align:center;
font-size:3rem;
margin-bottom:50px;
font-family:'Cormorant Garamond',serif;
}

.cards{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
gap:30px;
}

.specialty-card-link{
display:block;
text-decoration:none;
color:inherit;
border-radius:20px;
}

.card{
background:#241811;
overflow:hidden;
border-radius:20px;
cursor:pointer;
transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease;
border:1px solid rgba(216,177,106,.08);
height:100%;
}

.specialty-card-link:hover .card,
.specialty-card-link:focus-visible .card{
transform:translateY(-6px);
box-shadow:0 20px 42px rgba(0,0,0,.32);
border-color:rgba(216,177,106,.22);
}

.specialty-card-link:focus-visible{
outline:none;
}

.card img{
width:100%;
height:300px;
object-fit:cover;
}

.card h3{
padding:20px;
font-family:'Cormorant Garamond',serif;
font-size:2rem;
}

.cta{
position:relative;
overflow:hidden;
isolation:isolate;
min-height:420px;
padding:90px 24px;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
background:#080504;
border-radius:28px;
border:1px solid rgba(216, 177, 106, 0.10);
box-shadow:
0 24px 70px rgba(0, 0, 0, 0.42),
inset 0 1px 0 rgba(255, 215, 150, 0.06);
}

.cta-bg-video{
position:absolute !important;
inset:0 !important;
z-index:0 !important;
width:100% !important;
height:100% !important;
object-fit:cover !important;
object-position:center !important;
display:block !important;
visibility:visible !important;
opacity:1 !important;
filter:none !important;
pointer-events:none !important;
}

.cta-video-overlay{
position:absolute;
inset:0;
z-index:1;
pointer-events:none;
background:rgba(0, 0, 0, 0.08);
}

.cta > .container{
position:relative;
z-index:2;
width:90%;
max-width:1200px;
margin:0 auto;
display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
text-align:center;
}

.cta h2{
text-align:center;
font-size:3rem;
font-family:'Cormorant Garamond', serif;
font-weight:700;
line-height:1.1;
color:#ffffff;
margin:0 0 28px 0;
padding:0;
}

.cta .btn-primary{
display:inline-flex;
align-items:center;
justify-content:center;
position:relative;
z-index:3;
margin:0;
}

.cta::before,
.cta::after{
display:none !important;
content:none !important;
}

footer{
padding:40px;
text-align:center;
background:black;
border-top:1px solid rgba(216,177,106,.1);
}

.footer-bottom{
display:flex;
align-items:center;
justify-content:center;
flex-wrap:wrap;
gap:8px;
text-align:center;
font-size:.9rem;
line-height:1.5;
}

.footer-copy{
color:#f5ead8;
}

.footer-credit{
color:rgba(245,234,216,.7);
letter-spacing:.04em;
}

.footer-separator{
color:rgba(216,177,106,.65);
}

.footer-admin-link{
color:rgba(216,177,106,.78);
text-decoration:none;
letter-spacing:.05em;
transition:color .25s ease, opacity .25s ease;
opacity:.88;
}

.footer-admin-link:hover{
color:#d8b16a;
opacity:1;
}

.whatsapp{
position:fixed;
bottom:20px;
right:20px;

width:70px;
height:70px;

background:#25D366;

border-radius:50%;

display:flex;
justify-content:center;
align-items:center;

font-size:30px;

text-decoration:none;

z-index:999;
}





/* ====================================
   CONTATO PREMIUM
==================================== */

.contato-premium{
    padding:120px 8%;
}

.container-contato{
    max-width:1400px;
    margin:auto;
    display:grid;
    grid-template-columns:1fr 1.2fr;
    gap:50px;
    align-items:stretch;
}

.contato-info{
    background:
    rgba(25,18,12,.85);

    backdrop-filter:blur(10px);

    border:
    1px solid rgba(216,177,106,.15);

    border-radius:30px;

    padding:45px;

    box-shadow:
    0 20px 50px rgba(0,0,0,.35);
}

.contato-info h2{
    font-family:
    'Cormorant Garamond',serif;

    font-size:3rem;

    color:#d8b16a;

    margin-bottom:20px;
}

.descricao{
    color:#f5ead8;
    line-height:1.9;
    margin-bottom:35px;
}

.info-item{
    margin-bottom:25px;
}

.info-item h3{
    color:#d8b16a;
    margin-bottom:8px;
}

.info-item p{
    color:white;
    line-height:1.8;
}

.social-links{
    display:flex;
    flex-wrap:wrap;
    gap:15px;
    margin-top:30px;
}

.social-links a{
    display:flex;
    align-items:center;
    gap:10px;

    text-decoration:none;

    padding:12px 20px;

    border-radius:50px;

    background:
    rgba(216,177,106,.12);

    border:
    1px solid rgba(216,177,106,.2);

    color:#ffffff;

    font-weight:600;

    transition:.3s;
}

.social-links a i{
    font-size:18px;
    color:#ffffff;
}

.social-links a:hover{
    background:#d8b16a;
    color:#000;
}

.social-links a:hover i{
    color:#000;
}

.contato-mapa{
    overflow:hidden;
    border-radius:30px;
    box-shadow:
    0 20px 50px rgba(0,0,0,.35);
}

.contato-mapa iframe{
    width:100%;
    height:100%;
    min-height:550px;
    border:none;
}

/* MOBILE */

@media(max-width:768px){

    .sobre-storytelling{
        padding:92px 0 118px;
    }

    .sobre-storytelling .container.sobre-layout{
        grid-template-columns:1fr;
        gap:34px;
        width:min(calc(100% - 32px), 560px);
        align-items:start;
    }

    .sobre-slider,
    .sobre-slider-stage,
    .sobre-slide img{
        min-height:clamp(260px, 70vw, 380px);
    }

    .sobre-slider{
        order:1;
        border-radius:26px;
        width:100%;
        min-height:clamp(260px, 70vw, 380px);
        margin-bottom:4px;
    }

    .sobre-content{
        order:2;
        padding:0;
        max-width:none;
        width:100%;
    }

    .sobre-content h2{
        font-size:clamp(2.15rem, 8.7vw, 3rem);
        line-height:.94;
        letter-spacing:.01em;
        max-width:100%;
        gap:4px;
        text-wrap:balance;
    }

    .sobre-content p{
        max-width:none;
        font-size:.98rem;
        line-height:1.72;
        margin-bottom:16px;
    }

    .sobre-highlights{
        margin-top:24px;
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap:12px;
        max-width:none;
        padding-bottom:18px;
    }

    .sobre-highlight-card{
        min-width:0;
        min-height:108px;
        padding:18px 15px 16px;
        border-radius:20px;
        display:flex;
        flex-direction:column;
        justify-content:center;
    }

    .sobre-highlight-card strong{
        font-size:1.75rem;
        line-height:.9;
    }

    .sobre-highlight-card:last-child{
        grid-column:1 / -1;
    }

    .sobre-highlight-card span{
        font-size:.86rem;
        line-height:1.4;
    }

    .sobre-slide-overlay{
        left:18px;
        right:18px;
        bottom:18px;
    }

    .sobre-slide-overlay span{
        max-width:100%;
        width:100%;
        justify-content:flex-start;
        text-align:left;
        font-size:.84rem;
        line-height:1.55;
        padding:11px 14px;
        border-radius:16px;
    }

    .sobre-slide-empty{
        padding:20px;
    }

    .sobre-slide-empty span{
        font-size:1.55rem;
        padding:18px 18px;
        border-radius:20px;
    }

    .sobre-arrow{
        width:42px;
        height:42px;
    }

    .whatsapp{
        right:16px;
        bottom:16px;
        width:62px;
        height:62px;
    }

    .cta{
        min-height:320px;
        padding:64px 18px;
        border-radius:22px;
    }

    .cta-bg-video{
        object-fit:cover !important;
        object-position:center !important;
    }

    .cta > .container{
        width:100%;
        max-width:100%;
    }

    .cta h2{
        font-size:2.4rem;
        line-height:1.1;
        margin-bottom:22px;
    }

    .cta-video-overlay{
        position:absolute;
        inset:0;
        z-index:1;
        pointer-events:none;
        background:
        radial-gradient(circle at center, rgba(0, 0, 0, 0.08), rgba(5, 3, 2, 0.22)),
        linear-gradient(180deg, rgba(5, 3, 2, 0.05), rgba(5, 3, 2, 0.20));
    }

    .container-contato{
        grid-template-columns:1fr;
    }

    .contato-info{
        padding:30px;
    }

    .contato-info h2{
        font-size:2.2rem;
    }

    .contato-mapa iframe{
        min-height:350px;
    }

    footer{
        padding:34px 20px;
    }

    .footer-bottom{
        font-size:.82rem;
        gap:6px;
        line-height:1.5;
    }

    .footer-separator{
        opacity:.85;
    }

}

@media(max-width:480px){

    .cta h2{
        font-size:2rem;
        line-height:1.1;
    }

    .sobre-storytelling{
        padding:84px 0 124px;
    }

    .sobre-storytelling .container.sobre-layout{
        width:min(calc(100% - 24px), 440px);
        gap:28px;
    }

    .sobre-content h2{
        font-size:clamp(2rem, 10vw, 2.55rem);
        line-height:.96;
    }

    .sobre-content p{
        font-size:.95rem;
        line-height:1.68;
    }

    .sobre-highlights{
        gap:10px;
        margin-top:20px;
        padding-bottom:22px;
    }

    .sobre-highlight-card{
        min-height:100px;
        padding:16px 14px 14px;
        border-radius:18px;
    }

    .sobre-highlight-card strong{
        font-size:1.58rem;
    }

    .sobre-highlight-card span{
        font-size:.82rem;
    }

    .sobre-arrow{
        width:38px;
        height:38px;
    }

    .sobre-arrow.prev{
        left:14px;
    }

    .sobre-arrow.next{
        right:14px;
    }

    .sobre-indicators{
        bottom:18px;
        gap:8px;
    }
}

@media(prefers-reduced-motion: reduce){

    .cta-bg-video{
        display:none;
    }

    .cta{
        background:
        radial-gradient(circle at center, rgba(224,176,96,.12), transparent 40%),
        linear-gradient(135deg, #070403 0%, #120b08 45%, #080504 100%);
    }

}
