/* ══════════════════════════════════════════════════════════
   ATRIUM MEDICINA — DESIGN SYSTEM (institucional v2)
   Compartilhado pela home e por todas as páginas de serviço.
   ══════════════════════════════════════════════════════════ */
:root{
  --serif:'Cormorant Garamond',Georgia,serif;
  --sans:'Inter',system-ui,sans-serif;
  --ivory:#F8F5F0;--white:#FFFFFF;--ink:#1C1C1A;
  --muted:#8C867C;--line:#DDD8CF;--gold:#E3B23C;
  --dark:#111110;--dark2:#181816;--dark3:#1E1E1C;
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:var(--sans);background:var(--dark);color:var(--ivory);overflow-x:hidden;line-height:1.5;}
a{text-decoration:none;color:inherit;}
img{display:block;max-width:100%;}
h1,h2,h3,h4{font-weight:300;}

/* ─── LOADER ─────────────────────────────────────────── */
#loader{position:fixed;inset:0;z-index:9999;background:var(--dark);display:flex;align-items:center;justify-content:center;transition:opacity .6s ease .2s,visibility .6s ease .2s;}
#loader.out{opacity:0;visibility:hidden;}
.loader-word{font-family:var(--serif);font-weight:300;font-size:clamp(1.6rem,4vw,2.6rem);letter-spacing:.55em;text-transform:uppercase;color:var(--ivory);display:flex;}
.loader-word span{opacity:0;transform:translateY(10px);animation:letterIn .5s ease forwards;}
.loader-word span:nth-child(1){animation-delay:.10s;}
.loader-word span:nth-child(2){animation-delay:.20s;}
.loader-word span:nth-child(3){animation-delay:.30s;}
.loader-word span:nth-child(4){animation-delay:.40s;}
.loader-word span:nth-child(5){animation-delay:.50s;}
.loader-word span:nth-child(6){animation-delay:.60s;}
@keyframes letterIn{to{opacity:1;transform:translateY(0);}}

/* ─── HEADER + MENU INSTITUCIONAL AVANÇADO ───────────── */
#hdr{position:fixed;top:0;left:0;right:0;z-index:900;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 clamp(20px,5vw,72px);height:66px;background:rgba(17,17,16,.88);border-bottom:1px solid rgba(255,255,255,.06);backdrop-filter:blur(12px);}
.hdr-logo{font-family:var(--serif);font-weight:300;font-size:1.15rem;letter-spacing:.42em;text-transform:uppercase;color:var(--ivory);white-space:nowrap;}
.hdr-logo em{font-style:normal;font-size:.5rem;letter-spacing:.3em;color:var(--muted);display:block;margin-top:2px;}

/* NAV desktop */
.nav{display:flex;align-items:center;gap:4px;}
.nav-item{position:relative;}
.nav-link{display:inline-flex;align-items:center;gap:6px;padding:22px 16px;font-size:.64rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(248,245,240,.72);font-weight:400;transition:color .2s;cursor:pointer;background:none;border:none;font-family:var(--sans);}
.nav-link:hover,.nav-item:hover>.nav-link{color:var(--gold);}
.nav-link .chev{width:9px;height:9px;fill:none;stroke:currentColor;stroke-width:1.6;transition:transform .25s;}
.nav-item:hover .chev{transform:rotate(180deg);}

/* Dropdown / mega-menu */
.nav-drop{position:absolute;top:100%;left:0;min-width:260px;background:rgba(20,20,18,.98);border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(14px);padding:10px;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .22s ease,transform .22s ease,visibility .22s;box-shadow:0 24px 60px rgba(0,0,0,.5);}
.nav-item:hover .nav-drop{opacity:1;visibility:visible;transform:translateY(0);}
.nav-drop.mega{min-width:560px;display:grid;grid-template-columns:1fr 1fr;gap:4px;left:auto;right:0;}
.drop-link{display:block;padding:11px 14px;border-radius:2px;transition:background .18s;}
.drop-link:hover{background:rgba(227,178,60,.1);}
.drop-link strong{display:block;font-family:var(--serif);font-size:1rem;font-weight:400;color:var(--ivory);line-height:1.2;}
.drop-link span{display:block;margin-top:3px;font-size:.6rem;letter-spacing:.04em;color:rgba(248,245,240,.4);line-height:1.5;}
.drop-link:hover strong{color:var(--gold);}
.mega-head{grid-column:1/-1;padding:8px 14px 4px;font-size:.52rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);}

.hdr-cta{display:inline-flex;align-items:center;gap:8px;padding:10px 22px;border:1px solid var(--gold);font-size:.62rem;letter-spacing:.25em;text-transform:uppercase;color:var(--gold);font-family:var(--sans);font-weight:400;transition:background .25s,color .25s;white-space:nowrap;}
.hdr-cta:hover{background:var(--gold);color:var(--dark);}
.hdr-cta svg{width:14px;height:14px;fill:currentColor;}

/* Burger + mobile */
.burger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;}
.burger span{width:24px;height:1.5px;background:var(--ivory);transition:.3s;}
.mobile-nav{position:fixed;inset:66px 0 0;z-index:899;background:rgba(17,17,16,.98);backdrop-filter:blur(10px);padding:24px clamp(20px,6vw,40px);overflow-y:auto;transform:translateX(100%);transition:transform .35s ease;display:flex;flex-direction:column;gap:2px;}
.mobile-nav.open{transform:translateX(0);}
.mobile-nav a,.mobile-nav .m-head{display:block;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:.8rem;letter-spacing:.1em;color:rgba(248,245,240,.8);}
.mobile-nav .m-head{font-size:.56rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);border:none;padding:22px 0 6px;}
.mobile-nav .m-sub{padding-left:16px;font-size:.72rem;color:rgba(248,245,240,.55);}

@media(max-width:1040px){
  .nav{display:none;}
  .burger{display:flex;}
  .hdr-logo em{display:none;}
}
@media(max-width:520px){.hdr-cta span.lbl{display:none;}.hdr-cta{padding:10px 14px;}}

/* ─── HERO ───────────────────────────────────────────── */
.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:clamp(96px,14vh,140px) clamp(24px,6vw,80px);overflow:hidden;}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:1;filter:brightness(1.1);pointer-events:none;}
.hero-overlay{position:absolute;inset:0;background:radial-gradient(ellipse 72% 58% at center,rgba(17,17,16,.18) 0%,rgba(17,17,16,.55) 100%),linear-gradient(to top,rgba(17,17,16,.9) 0%,rgba(17,17,16,.2) 55%,rgba(17,17,16,.45) 100%);}
.hero-content{position:relative;z-index:2;max-width:860px;margin:0 auto;}
.hero-tag{display:inline-block;margin-bottom:26px;font-size:.58rem;letter-spacing:.35em;text-transform:uppercase;color:var(--gold);border-bottom:1px solid rgba(227,178,60,.3);padding-bottom:4px;}
.hero-title{font-family:var(--serif);font-weight:300;font-size:clamp(2.5rem,6.4vw,5.2rem);line-height:1.08;color:var(--white);margin-bottom:20px;}
.hero-title em{font-style:italic;color:var(--gold);}
.hero-body{font-size:.82rem;letter-spacing:.05em;line-height:1.8;color:rgba(248,245,240,.6);max-width:540px;margin:0 auto 36px;}
.hero-specs{display:flex;gap:32px;margin-bottom:44px;flex-wrap:wrap;justify-content:center;}
.hero-spec{display:flex;flex-direction:column;gap:4px;}
.hero-spec strong{font-family:var(--serif);font-size:1.5rem;font-weight:400;color:var(--ivory);}
.hero-spec span{font-size:.55rem;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);}
.hero-cta-row{display:flex;align-items:center;gap:24px;flex-wrap:wrap;justify-content:center;}
.btn-primary{display:inline-flex;align-items:center;gap:10px;padding:15px 36px;background:var(--gold);font-size:.65rem;letter-spacing:.22em;text-transform:uppercase;color:var(--dark);font-weight:500;transition:opacity .25s;}
.btn-primary:hover{opacity:.85;}
.btn-primary svg{width:15px;height:15px;fill:var(--dark);}
.btn-ghost{font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid rgba(140,134,124,.3);padding-bottom:2px;transition:color .25s,border-color .25s;}
.btn-ghost:hover{color:var(--ivory);border-color:var(--ivory);}
.hero-scroll{position:absolute;bottom:36px;right:clamp(24px,5vw,72px);display:flex;flex-direction:column;align-items:center;gap:8px;z-index:2;}
.hero-scroll-line{width:1px;height:52px;background:rgba(248,245,240,.15);}
.hero-scroll span{font-size:.48rem;letter-spacing:.28em;text-transform:uppercase;color:rgba(248,245,240,.25);writing-mode:vertical-rl;}

/* ─── SEÇÃO BASE ─────────────────────────────────────── */
.sec{padding:clamp(72px,10vh,120px) clamp(24px,6vw,80px);}
.sec-label{display:block;margin-bottom:20px;font-size:.56rem;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);}
.sec-title{font-family:var(--serif);font-weight:300;font-size:clamp(2rem,4vw,3.4rem);line-height:1.12;color:var(--ivory);margin-bottom:16px;}
.sec-sub{font-size:.82rem;line-height:1.9;color:var(--muted);letter-spacing:.03em;max-width:600px;}
.sec-divider{width:48px;height:1px;background:rgba(227,178,60,.4);margin:28px 0;}

/* ─── BREADCRUMB ─────────────────────────────────────── */
.crumb{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(248,245,240,.4);margin-bottom:28px;}
.crumb a{color:rgba(248,245,240,.55);transition:color .2s;}
.crumb a:hover{color:var(--gold);}
.crumb span.sep{opacity:.4;}
.crumb span.cur{color:var(--gold);}

/* ─── NÚMEROS ────────────────────────────────────────── */
.nums{border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);background:var(--dark2);}
.nums-grid{display:grid;grid-template-columns:repeat(4,1fr);}
.nums-item{padding:clamp(40px,6vw,72px) clamp(24px,4vw,56px);border-right:1px solid rgba(255,255,255,.06);}
.nums-item:last-child{border-right:none;}
.nums-val{font-family:var(--serif);font-weight:300;font-size:clamp(2.4rem,5vw,4rem);color:var(--ivory);line-height:1;margin-bottom:12px;}
.nums-val em{font-style:italic;color:var(--gold);}
.nums-desc{font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);}
@media(max-width:700px){.nums-grid{grid-template-columns:1fr 1fr;}.nums-item:nth-child(2){border-right:none;}.nums-item:nth-child(3){border-right:1px solid rgba(255,255,255,.06);}}

/* ─── GALERIA PRODUTOS E SERVIÇOS ────────────────────── */
.gal-tabs{display:flex;flex-wrap:wrap;gap:0;border:1px solid rgba(255,255,255,.08);margin:36px 0 40px;width:fit-content;max-width:100%;overflow-x:auto;scrollbar-width:none;}
.gal-tabs::-webkit-scrollbar{display:none;}
.gal-tab{padding:12px 26px;cursor:pointer;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);border-right:1px solid rgba(255,255,255,.08);transition:background .2s,color .2s;background:transparent;border-top:none;border-bottom:none;border-left:none;font-family:var(--sans);white-space:nowrap;}
.gal-tab:last-child{border-right:none;}
.gal-tab.active{background:rgba(227,178,60,.12);color:var(--gold);}
.gal-tab:hover:not(.active){color:var(--ivory);}
.gal-panel{display:none;}
.gal-panel.active{display:block;animation:fadeUp .5s ease;}
@keyframes fadeUp{from{opacity:0;transform:translateY(12px);}to{opacity:1;transform:none;}}
.gal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr));gap:1px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.05);}
.gal-card{background:var(--dark2);padding:32px 28px;display:flex;flex-direction:column;min-height:200px;position:relative;overflow:hidden;transition:background .25s;}
.gal-card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .4s ease;}
.gal-card:hover{background:var(--dark3);}
.gal-card:hover::before{transform:scaleX(1);}
.gal-card:hover .gal-arrow{color:var(--gold);gap:12px;}
.gal-num{font-size:.54rem;letter-spacing:.3em;color:rgba(227,178,60,.5);margin-bottom:16px;}
.gal-name{font-family:var(--serif);font-weight:300;font-size:1.25rem;line-height:1.25;color:var(--ivory);margin-bottom:10px;}
.gal-desc{font-size:.66rem;letter-spacing:.03em;line-height:1.7;color:rgba(248,245,240,.42);margin-bottom:22px;flex:1;}
.gal-badge{display:inline-block;align-self:flex-start;margin-bottom:14px;padding:4px 10px;border:1px solid rgba(227,178,60,.25);font-size:.48rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(248,245,240,.55);}
.gal-arrow{display:inline-flex;align-items:center;gap:8px;font-size:.54rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(248,245,240,.3);transition:color .25s,gap .25s;margin-top:auto;}
.gal-note{margin-top:28px;font-size:.62rem;letter-spacing:.06em;color:rgba(248,245,240,.35);line-height:1.8;max-width:640px;}

/* ─── CARDS GENÉRICOS (proto/solmed/mvv) ─────────────── */
.proto-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.05);margin-top:48px;}
.proto-card{background:var(--dark);padding:clamp(36px,5vw,56px);position:relative;overflow:hidden;}
.proto-card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .4s ease;}
.proto-card:hover::before{transform:scaleX(1);}
.proto-num{font-family:var(--serif);font-weight:300;font-size:3.5rem;color:rgba(227,178,60,.12);position:absolute;top:20px;right:24px;line-height:1;}
.proto-icon{margin-bottom:28px;opacity:.6;}
.proto-icon svg{width:28px;height:28px;stroke:var(--gold);fill:none;stroke-width:1;}
.proto-title{font-family:var(--serif);font-weight:300;font-size:1.45rem;line-height:1.2;color:var(--ivory);margin-bottom:14px;}
.proto-body{font-size:.72rem;line-height:1.9;letter-spacing:.03em;color:rgba(248,245,240,.45);margin-bottom:28px;}
.proto-tags{display:flex;flex-wrap:wrap;gap:6px;}
.proto-tag{padding:5px 12px;border:1px solid rgba(255,255,255,.07);font-size:.5rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(248,245,240,.35);}
@media(max-width:768px){.proto-grid{grid-template-columns:1fr;}}

/* ─── EQUIPE ─────────────────────────────────────────── */
.team-sec{background:var(--dark2);}
.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.05);margin-top:48px;}
.team-card{background:var(--dark2);padding:clamp(36px,5vw,64px);}
.team-card.featured{display:grid;grid-template-columns:200px 1fr;gap:48px;align-items:start;}
.team-photo{width:200px;height:240px;object-fit:cover;filter:grayscale(30%);}
.team-info{display:flex;flex-direction:column;}
.team-crm{font-size:.54rem;letter-spacing:.25em;text-transform:uppercase;color:var(--gold);margin-bottom:16px;}
.team-name{font-family:var(--serif);font-weight:300;font-size:clamp(1.5rem,3vw,2.2rem);color:var(--ivory);line-height:1.1;margin-bottom:8px;}
.team-specialty{font-size:.62rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin-bottom:24px;line-height:1.9;}
.team-divider{width:32px;height:1px;background:rgba(227,178,60,.35);margin-bottom:20px;}
.team-bio{font-size:.78rem;line-height:1.9;color:rgba(248,245,240,.5);margin-bottom:28px;max-width:440px;}
.team-cta{display:inline-flex;align-items:center;gap:8px;font-size:.58rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);border-bottom:1px solid rgba(227,178,60,.3);padding-bottom:3px;width:fit-content;transition:opacity .25s;}
.team-cta:hover{opacity:.7;}
.team-cta svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.5;}
.team-quote{background:var(--dark);padding:clamp(36px,5vw,64px);border-left:1px solid rgba(227,178,60,.3);display:flex;align-items:center;justify-content:center;}
.team-quote blockquote{font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(1.4rem,2.8vw,1.9rem);line-height:1.4;color:rgba(248,245,240,.7);}
.team-quote cite{display:block;margin-top:20px;font-family:var(--sans);font-style:normal;font-size:.56rem;letter-spacing:.25em;text-transform:uppercase;color:var(--gold);}
@media(max-width:768px){.team-grid{grid-template-columns:1fr;}.team-card.featured{grid-template-columns:1fr;gap:28px;}.team-photo{width:100%;height:260px;}}

/* ─── A CLÍNICA / MVV ────────────────────────────────── */
.clinic-intro{max-width:820px;}
.clinic-intro p{font-size:.88rem;line-height:2;letter-spacing:.02em;color:rgba(248,245,240,.62);margin-top:20px;}
.mvv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.05);margin-top:56px;}
.mvv-card{background:var(--dark2);padding:clamp(32px,4vw,48px);}
.mvv-label{font-size:.56rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:18px;display:block;}
.mvv-card p{font-size:.78rem;line-height:1.9;letter-spacing:.02em;color:rgba(248,245,240,.55);}
.mvv-values{display:flex;flex-wrap:wrap;gap:8px;}
.mvv-values span{padding:5px 12px;border:1px solid rgba(227,178,60,.25);font-size:.54rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(248,245,240,.5);}
.clinic-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:1px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.05);border-top:none;}
.clinic-gallery img{width:100%;height:clamp(160px,16vw,220px);object-fit:cover;filter:brightness(.82) grayscale(12%);transition:filter .35s,transform .6s ease;}
.clinic-gallery img:hover{filter:brightness(1) grayscale(0);transform:scale(1.03);}
@media(max-width:900px){.mvv-grid{grid-template-columns:1fr;}.clinic-gallery{grid-template-columns:1fr 1fr;}}

/* ─── ÁREA DE ATENDIMENTO (GEO) ──────────────────────── */
.geo-sec{background:var(--dark2);border-top:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.05);}
.geo-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:36px;max-width:900px;}
.geo-list a,.geo-list span{padding:8px 16px;border:1px solid rgba(255,255,255,.08);font-size:.62rem;letter-spacing:.08em;color:rgba(248,245,240,.55);transition:border-color .25s,color .25s;}
.geo-list a:hover{border-color:var(--gold);color:var(--gold);}

/* ─── CONTEÚDO DE PÁGINA DE SERVIÇO ──────────────────── */
.svc-hero{position:relative;padding:calc(66px + clamp(56px,9vh,110px)) clamp(24px,6vw,80px) clamp(56px,8vh,90px);border-bottom:1px solid rgba(255,255,255,.06);background:linear-gradient(180deg,var(--dark2),var(--dark));}
.svc-hero h1{font-family:var(--serif);font-weight:300;font-size:clamp(2.2rem,5vw,3.8rem);line-height:1.1;color:var(--white);margin:8px 0 18px;max-width:820px;}
.svc-hero h1 em{font-style:italic;color:var(--gold);}
.svc-hero .lead{font-size:.9rem;line-height:1.9;color:rgba(248,245,240,.62);max-width:640px;margin-bottom:32px;}
.svc-body{max-width:820px;margin:0 auto;}
.svc-body h2{font-family:var(--serif);font-size:clamp(1.6rem,3.2vw,2.4rem);color:var(--ivory);margin:8px 0 18px;line-height:1.2;}
.svc-body h3{font-family:var(--serif);font-size:1.3rem;color:var(--ivory);margin:32px 0 12px;}
.svc-body p{font-size:.86rem;line-height:1.95;color:rgba(248,245,240,.6);margin-bottom:18px;letter-spacing:.01em;}
.svc-body ul{list-style:none;margin:8px 0 24px;display:flex;flex-direction:column;gap:12px;}
.svc-body ul li{position:relative;padding-left:26px;font-size:.82rem;line-height:1.75;color:rgba(248,245,240,.58);}
.svc-body ul li::before{content:'';position:absolute;left:0;top:9px;width:8px;height:8px;border:1px solid var(--gold);transform:rotate(45deg);}
.svc-feature{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.05);margin:40px 0;}
.svc-feature div{background:var(--dark2);padding:28px 24px;}
.svc-feature strong{display:block;font-family:var(--serif);font-size:1.6rem;color:var(--gold);margin-bottom:8px;}
.svc-feature span{font-size:.64rem;letter-spacing:.06em;line-height:1.6;color:rgba(248,245,240,.5);}
.related{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:1px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.05);margin-top:40px;}
.related a{background:var(--dark2);padding:24px 22px;transition:background .2s;}
.related a:hover{background:var(--dark3);}
.related a:hover strong{color:var(--gold);}
.related strong{display:block;font-family:var(--serif);font-size:1.05rem;font-weight:400;color:var(--ivory);margin-bottom:6px;transition:color .2s;}
.related span{font-size:.6rem;letter-spacing:.03em;color:rgba(248,245,240,.4);line-height:1.5;}

/* ─── CTA FINAL ──────────────────────────────────────── */
.cta-final{text-align:center;padding:clamp(80px,12vh,140px) clamp(24px,6vw,80px);border-top:1px solid rgba(255,255,255,.05);}
.cta-final .sec-label{display:block;text-align:center;margin-bottom:24px;}
.cta-final-title{font-family:var(--serif);font-weight:300;font-style:italic;font-size:clamp(2.2rem,5.5vw,4.2rem);line-height:1.1;color:var(--ivory);max-width:720px;margin:0 auto 24px;}
.cta-final-sub{font-size:.82rem;line-height:1.9;letter-spacing:.03em;color:var(--muted);max-width:500px;margin:0 auto 48px;}
.cta-final-row{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;margin-bottom:32px;}
.cta-guarantees{display:flex;justify-content:center;gap:clamp(24px,4vw,56px);flex-wrap:wrap;}
.cta-guarantee{display:flex;align-items:center;gap:8px;font-size:.58rem;letter-spacing:.14em;color:rgba(248,245,240,.3);}
.cta-guarantee::before{content:'';width:4px;height:4px;border-radius:50%;background:rgba(227,178,60,.5);flex-shrink:0;}

/* ─── FAQ ────────────────────────────────────────────── */
.faq-sec{max-width:860px;margin:0 auto;}
.faq-list{margin-top:48px;display:flex;flex-direction:column;}
.faq-item{border-top:1px solid rgba(255,255,255,.08);}
.faq-item:last-child{border-bottom:1px solid rgba(255,255,255,.08);}
.faq-q{font-family:var(--serif);font-weight:300;font-size:1.15rem;color:var(--ivory);letter-spacing:.02em;line-height:1.4;padding:28px 48px 28px 0;cursor:pointer;list-style:none;position:relative;transition:color .2s;}
.faq-q::-webkit-details-marker{display:none;}
.faq-q::after{content:'';position:absolute;right:4px;top:50%;transform:translateY(-50%);width:16px;height:16px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E3B23C' stroke-width='1.5'%3E%3Cpath d='M5 12h14M12 5l7 7-7 7'/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;transition:transform .3s;}
.faq-item[open] .faq-q::after{transform:translateY(-50%) rotate(90deg);}
.faq-item[open] .faq-q{color:var(--gold);}
.faq-a{padding:0 48px 28px 0;}
.faq-a p{font-size:.84rem;line-height:1.8;color:rgba(248,245,240,.55);letter-spacing:.02em;}

/* ─── FOOTER ─────────────────────────────────────────── */
footer{background:var(--dark2);border-top:1px solid rgba(255,255,255,.05);padding:clamp(40px,6vw,72px) clamp(24px,6vw,80px);}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;margin-bottom:48px;}
.footer-logo{font-family:var(--serif);font-weight:300;font-size:1.3rem;letter-spacing:.42em;text-transform:uppercase;color:var(--ivory);margin-bottom:6px;}
.footer-tagline{font-size:.54rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(248,245,240,.2);margin-bottom:20px;}
.footer-address{font-size:.66rem;line-height:1.9;letter-spacing:.04em;color:rgba(248,245,240,.35);}
.footer-col-title{font-size:.54rem;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);margin-bottom:20px;}
.footer-links{list-style:none;display:flex;flex-direction:column;gap:10px;}
.footer-links a{font-size:.66rem;letter-spacing:.06em;color:rgba(248,245,240,.4);transition:color .2s;}
.footer-links a:hover{color:var(--ivory);}
.footer-contact{display:flex;flex-direction:column;gap:12px;}
.footer-contact a{display:flex;align-items:center;gap:10px;font-size:.66rem;letter-spacing:.06em;color:rgba(248,245,240,.4);transition:color .2s;}
.footer-contact a:hover{color:var(--ivory);}
.footer-contact svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5;flex-shrink:0;}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;padding-top:32px;border-top:1px solid rgba(255,255,255,.05);}
.footer-copy{font-size:.56rem;letter-spacing:.15em;color:rgba(248,245,240,.2);}
.footer-cfm{font-size:.54rem;letter-spacing:.15em;text-transform:uppercase;color:rgba(248,245,240,.15);}
@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr;gap:32px;}}
@media(max-width:520px){.footer-grid{grid-template-columns:1fr;}}

/* ─── WHATSAPP FLOAT ─────────────────────────────────── */
.wfloat{position:fixed;bottom:28px;right:28px;z-index:800;width:52px;height:52px;background:rgba(17,17,16,.9);border:1px solid rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;transition:background .3s,border-color .3s;}
.wfloat:hover{background:#25D366;border-color:#25D366;}
.wfloat svg{width:22px;height:22px;fill:var(--ivory);}

/* ─── REVEAL ─────────────────────────────────────────── */
.r{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease;}
.rl{opacity:0;transform:translateX(-28px);transition:opacity .7s ease,transform .7s ease;}
.rr{opacity:0;transform:translateX(28px);transition:opacity .7s ease,transform .7s ease;}
.d1{transition-delay:.12s;}.d2{transition-delay:.24s;}.d3{transition-delay:.36s;}.d4{transition-delay:.48s;}
.on{opacity:1;transform:none;}
@media(prefers-reduced-motion:reduce){.r,.rl,.rr{opacity:1;transform:none;transition:none;}}
