/* =========================================================================
   Dr. Rafael Gusmão — design system
   Tokens → base → layout → componentes → seções → utilitários → movimento
   ========================================================================= */

/* ---------- Fontes (auto-hospedadas: sem requisição a terceiros, sem envio de IP ao Google) ---------- */
@font-face{font-family:'Newsreader';font-style:normal;font-weight:200 800;font-display:swap;src:url(fonts/newsreader.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:200 800;font-display:swap;src:url(fonts/plus-jakarta-sans.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* ---------- Tokens ---------- */
:root{
  /* cor */
  --ink-950:#0A1C18;
  --ink-900:#0C211C;
  --ink-850:#10281F;
  --ink-800:#143028;
  --ink-750:#1B3D34;
  --ink-700:#1B3A32;
  --text:#324740;
  --muted:#5E6C65;
  --faint:#B9C7BD;
  --line:#DCE2DC;
  --line-strong:#C3CCC5;
  --mist:#F1F4F1;
  --paper:#FFFFFF;
  --gold:#D9A65C;
  --gold-soft:#E3B571;
  --gold-ink:#8F6224;          /* dourado para texto sobre fundo claro (AA) */
  --gold-ink-deep:#6E4A18;
  --on-dark:#FFFFFF;
  --on-dark-2:#DCE4DF;
  --on-dark-3:#C7D3CC;
  --on-dark-muted:#A9BAB1;
  --gold-line:rgba(217,166,92,.28);
  --gold-line-soft:rgba(217,166,92,.18);
  --danger:#A6462F;

  /* tipografia */
  --serif:'Newsreader',Georgia,'Times New Roman',serif;
  --sans:'Plus Jakarta Sans',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  --fs-eyebrow:clamp(.72rem,.69rem + .12vw,.78rem);
  --fs-small:.9rem;
  --fs-body:clamp(1rem,.97rem + .12vw,1.0625rem);
  --fs-lead:clamp(1.18rem,1.02rem + .7vw,1.45rem);
  --fs-h3:clamp(1.2rem,1.08rem + .55vw,1.42rem);
  --fs-h2:clamp(1.8rem,1.35rem + 1.9vw,2.55rem);
  --fs-h1:clamp(2.35rem,1.4rem + 3.9vw,4.2rem);
  --fs-display:clamp(2.35rem,1.4rem + 4.4vw,4.3rem);

  /* espaço */
  --gutter:clamp(20px,4vw,32px);
  --sec-y:clamp(64px,9vw,112px);
  --maxw:1160px;
  --inner:1010px;

  /* forma e movimento */
  --radius:2px;
  --shadow-sm:0 1px 2px rgba(12,33,28,.06);
  --shadow-md:0 18px 40px -24px rgba(12,33,28,.35);
  --shadow-lg:0 30px 60px -28px rgba(0,0,0,.55);
  --ease:cubic-bezier(.22,.61,.36,1);
  --ease-out:cubic-bezier(.16,1,.3,1);
  --header-h:68px;
}

/* ---------- Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px);-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--text);font-family:var(--sans);font-size:var(--fs-body);line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:clip}
img,svg{display:block;max-width:100%}
img{height:auto}
h1,h2,h3,p,ul,ol,figure,dl,dd{margin:0}
ul[role=list],ol[role=list]{list-style:none;padding:0}
a{color:var(--ink-700);text-decoration:none;-webkit-tap-highlight-color:rgba(217,166,92,.18)}
a:hover{color:var(--gold-ink)}
button,input,select{font:inherit;color:inherit}
a,button,summary,select,label[for],input[type=checkbox]{cursor:pointer}
strong{font-weight:600;color:var(--ink-700)}
em{font-style:italic}
::selection{background:rgba(217,166,92,.32);color:var(--ink-900)}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.hero :focus-visible,.site-header :focus-visible,.site-footer :focus-visible{outline-color:var(--gold-soft)}
[hidden]{display:none!important}

.sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:absolute;left:12px;top:-60px;z-index:100;padding:12px 18px;background:var(--gold);color:var(--ink-900);font-weight:700;transition:top .2s var(--ease)}
.skip:focus{top:12px;color:var(--ink-900)}

/* ---------- Layout ---------- */
.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}
.inner{max-width:var(--inner);margin-inline:auto}
.sec{padding-block:var(--sec-y);position:relative}
.sec--mist{background:var(--mist)}

.sec--green{background:var(--ink-800);color:var(--on-dark)}
.split{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:clamp(32px,5vw,72px);align-items:start}

.center{text-align:center;margin-inline:auto}
.sec-head{max-width:660px}
.sec-head.center{max-width:760px}
.sec-body{margin-top:clamp(36px,5vw,56px)}

/* ---------- Tipografia ---------- */
.eyebrow{display:flex;align-items:center;gap:12px;font-size:var(--fs-eyebrow);font-weight:700;letter-spacing:.17em;line-height:1.5;text-transform:uppercase;color:var(--muted)}
.eyebrow::before{content:'';flex:none;width:22px;height:1px;background:currentColor;opacity:.55}
.center .eyebrow,.eyebrow.center{justify-content:center}

.sec--green .eyebrow{color:var(--on-dark-muted)}
.eyebrow--on-gold{color:var(--gold)!important}
.eyebrow--plain::before{display:none}

.h1,.h2,.lead,.serif{font-family:var(--serif);font-optical-sizing:auto}
.h1{font-weight:300;font-size:var(--fs-h1);line-height:1.06;letter-spacing:-.025em;text-wrap:balance}
.h2{margin-top:18px;font-weight:400;font-size:var(--fs-h2);line-height:1.14;letter-spacing:-.02em;color:var(--ink-700);text-wrap:balance}

.lead{font-size:var(--fs-lead);line-height:1.42;color:var(--ink-800);text-wrap:pretty}
.sec--green .h2{color:var(--on-dark)}
.sec--green .lead{color:var(--on-dark)}
.body{color:var(--text);text-wrap:pretty;max-width:58ch}
.body+.body{margin-top:14px}
.sec--green .body{color:var(--on-dark-3)}
.note{font-size:var(--fs-small);line-height:1.65;color:var(--muted);text-wrap:pretty}
.sec--green .note{color:var(--on-dark-muted)}
.kicker{font-size:var(--fs-eyebrow);font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--gold-ink)}
.gold{color:var(--gold)}
.gold-ink{color:var(--gold-ink)}

/* ---------- Botões ---------- */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:14px 28px;border:1px solid transparent;border-radius:var(--radius);font-size:.78rem;font-weight:700;letter-spacing:.1em;line-height:1.2;text-transform:uppercase;text-align:center;white-space:nowrap;transition:background-color .25s var(--ease),border-color .25s var(--ease),color .25s var(--ease),box-shadow .3s var(--ease),transform .15s var(--ease)}
.btn svg{flex:none;width:17px;height:17px}
.btn:active{transform:translateY(1px)}
.btn--gold{background:var(--gold);color:var(--ink-900)}
.btn--gold:hover{background:var(--gold-soft);color:var(--ink-900);box-shadow:0 12px 28px -14px rgba(217,166,92,.85)}
.btn--green{background:var(--ink-800);color:#fff}
.btn--green:hover{background:var(--ink-700);color:#fff;box-shadow:0 12px 28px -16px rgba(20,48,40,.9)}
.btn--ghost{border-color:var(--line-strong);color:var(--ink-700);background:transparent}
.btn--ghost:hover{border-color:var(--ink-700);color:var(--ink-700);background:rgba(27,58,50,.04)}
.btn--ghost-gold{border-color:rgba(217,166,92,.55);color:var(--gold)}
.btn--ghost-gold:hover{border-color:var(--gold);background:rgba(217,166,92,.1);color:var(--gold-soft)}
.btn[disabled],.btn[aria-busy=true]{opacity:.7;pointer-events:none}
@media (max-width:420px){.btn{white-space:normal;padding-inline:20px;letter-spacing:.07em}}

.link-u{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:600}
.link-u>span{background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat;padding-bottom:2px;transition:background-size .3s var(--ease)}
.link-u:hover>span{background-size:0 1px;background-position:100% 100%}
.link-arrow{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:var(--fs-eyebrow);font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--gold-ink)}
.link-arrow svg{width:14px;height:14px;transition:transform .3s var(--ease)}
.link-arrow:hover svg{transform:translateX(4px)}

/* ---------- Header ---------- */
.site-header{position:sticky;top:0;z-index:50;background:rgba(12,33,28,.97);border-bottom:1px solid rgba(217,166,92,.2);transition:box-shadow .3s var(--ease),background-color .3s var(--ease)}
@supports (backdrop-filter:blur(10px)){.site-header{background:rgba(12,33,28,.9);backdrop-filter:saturate(140%) blur(12px);-webkit-backdrop-filter:saturate(140%) blur(12px)}}
.site-header.is-compact{box-shadow:0 10px 30px -22px rgba(0,0,0,.9)}
.hdr{display:flex;align-items:center;gap:8px 20px;min-height:var(--header-h);max-width:1240px;transition:min-height .3s var(--ease)}
.is-compact .hdr{min-height:58px}
.brand{flex:none;display:block;padding-block:10px;color:#fff;line-height:1.2}
.brand:hover{color:#fff}
.brand-name{display:block;font-family:var(--serif);font-size:1.22rem;font-weight:400;letter-spacing:.005em}
.brand-sub{display:block;margin-top:3px;max-height:16px;font-size:.58rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);transition:opacity .25s var(--ease),max-height .3s var(--ease),margin .3s var(--ease)}
.is-compact .brand-sub{opacity:0;max-height:0;margin-top:0}
.nav{flex:1 1 auto;min-width:0;display:flex;justify-content:flex-end;gap:2px}
.nav a{position:relative;flex:none;display:flex;align-items:center;min-height:44px;padding-inline:clamp(8px,.9vw,12px);font-size:.84rem;color:#D6DED8;white-space:nowrap;transition:color .2s var(--ease)}
.nav a::after{content:'';position:absolute;left:clamp(8px,.9vw,12px);right:clamp(8px,.9vw,12px);bottom:9px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease-out)}
.nav a:hover,.nav a[aria-current=true]{color:#fff}
.nav a:hover::after,.nav a[aria-current=true]::after{transform:scaleX(1)}
.hdr-cta{flex:none;min-height:44px;padding:10px 18px;font-size:.74rem}
@media (max-width:860px){
  :root{--header-h:106px}
  .hdr{flex-wrap:wrap;gap:0 12px;min-height:0}
  .is-compact .hdr{min-height:0}
  .brand{flex:1 1 auto;min-width:0}
  .nav{order:3;flex:1 0 100%;justify-content:flex-start;margin-inline:calc(var(--gutter) * -1);padding-inline:calc(var(--gutter) - 8px);overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;border-top:1px solid rgba(217,166,92,.14);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 18px,#000 calc(100% - 28px),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 18px,#000 calc(100% - 28px),transparent 100%)}
  .nav::-webkit-scrollbar{display:none}
  .nav a{min-height:44px}
}
@media (max-width:860px){
  .site-header{transition:transform .4s var(--ease-out),box-shadow .3s var(--ease)}
  .site-header.is-hidden{transform:translateY(-100%);box-shadow:none}
  .site-header:focus-within{transform:none}
}
@media (max-width:380px){.brand-name{font-size:1.08rem}.brand-sub{font-size:.52rem;letter-spacing:.1em}.hdr-cta{padding-inline:14px}}

/* ---------- Hero ---------- */
.hero{position:relative;overflow:hidden;background:var(--ink-800);color:#fff;isolation:isolate}
.hero-bg{position:absolute;inset:0;z-index:-2}
.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center 42%}
.hero::before{content:'';position:absolute;inset:0;z-index:-1;background:
  radial-gradient(60% 70% at 85% 30%,rgba(217,166,92,.10),transparent 60%),
  linear-gradient(180deg,rgba(11,29,24,.94) 0%,rgba(18,43,37,.92) 45%,rgba(12,33,28,.97) 100%)}
.hero-in{padding-top:clamp(40px,8vw,96px);padding-bottom:clamp(88px,11vw,140px)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(32px,5vw,72px);align-items:center}
.hero .eyebrow{color:var(--gold)}
.hero .h1{margin-top:20px;color:#fff}
.hero-sub{margin-top:22px;max-width:42ch;font-size:clamp(1.02rem,.98rem + .25vw,1.12rem);line-height:1.68;color:var(--on-dark-2);text-wrap:pretty}
.pontos{margin-top:24px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;font-size:.9rem;font-weight:600;letter-spacing:.01em;color:#fff}
.pontos i{position:relative;width:22px;height:1px;background:rgba(217,166,92,.55)}
.pontos i::before,.pontos i::after{content:'';position:absolute;top:-2px;width:5px;height:5px;border-radius:50%;background:var(--gold)}
.pontos i::before{left:-2px}.pontos i::after{right:-2px}
.hero-ctas{margin-top:32px;display:flex;flex-wrap:wrap;align-items:center;gap:12px 26px}
.hero-ctas .link-u{color:var(--on-dark-2);font-weight:500}
.hero-ctas .link-u>span{background-image:linear-gradient(rgba(217,166,92,.6),rgba(217,166,92,.6))}
.hero-ctas .link-u:hover{color:#fff}

.retrato{position:relative;justify-self:center;width:100%;max-width:340px}
.retrato::before{content:'';position:absolute;inset:-14px 14px 14px -14px;border:1px solid rgba(217,166,92,.4);pointer-events:none}
.retrato-frame{position:relative;background:#fff;padding:6px;box-shadow:var(--shadow-lg)}
.retrato img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 12%}
.retrato figcaption{position:absolute;left:-18px;bottom:22px;padding:12px 16px;background:var(--ink-900);border-left:2px solid var(--gold);box-shadow:var(--shadow-md);line-height:1.35}
.retrato figcaption b{display:block;font-family:var(--serif);font-weight:400;font-size:1.02rem;color:#fff}
.retrato figcaption span{display:block;margin-top:2px;font-size:.66rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}

@media (min-width:561px) and (max-width:860px){.retrato img{aspect-ratio:16/9;object-position:center 12%}}
/* prova de autoridade */
.provas{margin-top:clamp(44px,6vw,72px);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(217,166,92,.24)}
.prova{padding:22px 20px 0 0;display:grid;gap:4px;align-content:start}
.prova+.prova{padding-left:20px;border-left:1px solid rgba(217,166,92,.14)}
.prova b{font-family:var(--serif);font-weight:300;font-size:clamp(1.6rem,1.2rem + 1.2vw,2.2rem);line-height:1;letter-spacing:-.02em;color:#fff}
.prova>span{font-size:.84rem;line-height:1.45;color:var(--on-dark-muted)}

.hero-notch{position:absolute;left:0;right:0;bottom:-1px;height:clamp(40px,6vw,80px);z-index:1;pointer-events:none;background:var(--paper);clip-path:polygon(0 0,50% 100%,100% 0,100% 100%,0 100%)}

@media (max-width:860px){
  .hero-grid{grid-template-columns:1fr;gap:28px}
  .retrato{order:-1;max-width:none}
  .retrato::before{display:none}
  .retrato-frame{padding:0;box-shadow:none;background:transparent}
  .retrato img{aspect-ratio:3/2;object-position:center 10%}
  .retrato figcaption{left:12px;bottom:12px}
  .provas{grid-template-columns:repeat(2,minmax(0,1fr))}
  .prova{padding:18px 14px 18px 0}
  .prova+.prova{padding-left:0;border-left:0}
  .prova:nth-child(even){padding-left:16px;border-left:1px solid rgba(217,166,92,.14)}
  .prova:nth-child(n+3){border-top:1px solid rgba(217,166,92,.14)}
}

/* ---------- Atalhos (formato) ---------- */
.atalhos{border-bottom:1px solid var(--line)}
.atalhos li{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:16px;padding:18px 0;border-top:1px solid var(--line)}
.atalhos .q{font-family:var(--serif);font-size:clamp(1.15rem,1.05rem + .5vw,1.35rem);line-height:1.3;color:var(--ink-700)}
.atalhos .a{font-size:.95rem;font-weight:600;color:var(--gold-ink);text-align:right}
.atalhos li{transition:padding .35s var(--ease-out)}
.atalhos li:hover{padding-left:6px}

/* ---------- Territórios ---------- */

/* ---------- Áreas de cuidado ---------- */
.areas{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr));gap:0 clamp(28px,4vw,56px)}
.area{position:relative;display:flex;flex-direction:column;gap:12px;padding:clamp(28px,3vw,34px) 0;border-top:1px solid var(--line)}
.area::before{content:'';position:absolute;left:0;top:-1px;width:48px;height:1px;background:var(--gold);transform-origin:left;transition:width .5s var(--ease-out)}
.area:hover::before{width:100%}

.area .body{font-size:.97rem;max-width:none}

.area .link-arrow{margin-top:auto}

/* ---------- Consulta (passos) ---------- */
.passos{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.6vw,18px);padding-top:22px}
.passos::before{content:'';position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,var(--gold),rgba(217,166,92,.35));transform-origin:left;transition:transform 1.6s var(--ease-out) .2s}
.js-anim .passos:not(.vis)::before{transform:scaleX(0)}
.passo::before{content:'';position:absolute;left:clamp(20px,2vw,26px);top:-27px;width:11px;height:11px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px var(--mist)}
.passo::after{content:'';position:absolute;left:calc(clamp(20px,2vw,26px) + 5px);top:-16px;width:1px;height:16px;background:rgba(217,166,92,.6)}
.passo{position:relative;display:grid;align-content:start;gap:10px;padding:clamp(22px,2.4vw,28px) clamp(20px,2vw,26px) clamp(24px,2.6vw,30px);background:var(--paper);border-top:2px solid var(--gold);box-shadow:var(--shadow-sm);transition:transform .4s var(--ease-out),box-shadow .4s var(--ease-out)}
.passo:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}
.passo-no{font-family:var(--serif);font-weight:300;font-size:1.6rem;line-height:1;color:var(--faint)}
.passo h3{font-size:.84rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-700)}
.passo p{font-size:.95rem;line-height:1.62;color:var(--text);text-wrap:pretty}
@media (max-width:1019px){.passos{grid-template-columns:repeat(2,minmax(0,1fr));padding-top:0}.passos::before,.passo::before,.passo::after{display:none}}
@media (max-width:520px){.passos{grid-template-columns:1fr}}
.consulta-fecho{margin-top:clamp(32px,4vw,44px);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px 40px;max-width:var(--inner)}
.consulta-fecho .lead{max-width:40ch}

/* ---------- Listas com filete ---------- */
.rules{border-bottom:1px solid var(--line)}
.rules li{padding:14px 0;border-top:1px solid var(--line);font-size:.97rem;line-height:1.5;color:var(--ink-700)}

/* ---------- Trajetória ---------- */

/* ---------- Sobre ---------- */
.sobre .body{max-width:60ch}
.credenciais{margin-top:18px;padding-top:16px;border-top:1px solid var(--line);font-size:.86rem;line-height:1.6;color:var(--muted)}
.btn-row{margin-top:28px;display:flex;flex-wrap:wrap;gap:12px}
.foto{margin:0 0 clamp(28px,3.6vw,40px)}
.foto-frame{background:#fff;padding:6px;box-shadow:var(--shadow-md)}
.foto img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 20%}
.foto figcaption{margin-top:12px;font-size:.84rem;line-height:1.5;color:var(--muted)}
.formacao-t{margin-bottom:6px}

/* ---------- Blog ---------- */
.posts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:clamp(12px,1.6vw,18px)}
.post{position:relative;display:flex;flex-direction:column;gap:12px;padding:clamp(26px,3vw,32px);background:var(--paper);border:1px solid var(--line);transition:border-color .3s var(--ease),transform .4s var(--ease-out),box-shadow .4s var(--ease-out)}
.post:hover{border-color:var(--line-strong);transform:translateY(-3px);box-shadow:var(--shadow-md);color:inherit}
.post .t{font-family:var(--serif);font-size:clamp(1.18rem,1.08rem + .45vw,1.34rem);line-height:1.3;color:var(--ink-700)}

.post .link-arrow{margin-top:auto;min-height:0;padding-top:8px}
.post:hover .link-arrow svg{transform:translateX(4px)}

/* ---------- Locais ---------- */
.online{position:relative;background:var(--ink-750);border:1px solid rgba(217,166,92,.5);border-top:3px solid var(--gold)}
.online-in{padding:clamp(28px,4.4vw,52px);display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:clamp(24px,4vw,56px);align-items:start}
.online .h-card{font-family:var(--serif);font-weight:300;font-size:clamp(2rem,1.5rem + 2vw,2.8rem);line-height:1.06;letter-spacing:-.022em;color:#fff}
.online .body{color:#E4EBE6;margin-top:16px}
.online .note{color:var(--on-dark-3);margin-top:16px}
.online .btn{margin-top:22px}
.divisor{margin:clamp(36px,5vw,52px) auto clamp(20px,2.6vw,28px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;font-size:var(--fs-eyebrow);font-weight:700;letter-spacing:.17em;text-transform:uppercase;color:var(--on-dark-muted);text-align:center}
.divisor::before,.divisor::after{content:'';height:1px;background:rgba(217,166,92,.3)}
.unidades{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:clamp(14px,1.8vw,20px)}
.unidade{display:flex;flex-direction:column;background:var(--ink-800);border:1px solid rgba(217,166,92,.3);transition:border-color .35s var(--ease)}
.unidade:hover{border-color:rgba(217,166,92,.7)}
.unidade-img{aspect-ratio:3/2;overflow:hidden;background:#F4F1EA}
.unidade-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease-out)}
.unidade:hover .unidade-img img{transform:scale(1.03)}
.unidade-in{flex:1;display:flex;flex-direction:column;gap:12px;padding:clamp(22px,2.6vw,30px)}
.unidade h3{font-family:var(--serif);font-weight:400;font-size:1.32rem;line-height:1.3;color:var(--gold)}
.unidade p{font-size:.97rem;line-height:1.7;color:var(--on-dark-3)}
.unidade .end{font-size:.9rem;color:var(--on-dark-muted)}
.unidade .link-u{font-size:.88rem;color:var(--gold)}
.unidade .link-u svg{width:15px;height:15px}
.unidade .link-u:hover{color:var(--gold-soft)}
.unidade .btn{align-self:flex-start;margin-top:auto}

/* ---------- Resumo (GEO) ---------- */

/* ---------- FAQ ---------- */

.faq-grupo h3{margin-bottom:4px;padding-bottom:12px;border-bottom:1px solid var(--ink-700);font-size:var(--fs-eyebrow);font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-700)}
.faq-grupo details{border-bottom:1px solid var(--line)}
.faq-grupo summary{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 0;list-style:none;font-weight:600;font-size:1rem;line-height:1.5;color:var(--ink-700);transition:color .2s var(--ease)}
.faq-grupo summary::-webkit-details-marker{display:none}
.faq-grupo summary:hover{color:var(--gold-ink)}
.sinal{position:relative;flex:none;width:14px;height:14px;margin-top:5px;transition:transform .35s var(--ease-out)}
.sinal::before,.sinal::after{content:'';position:absolute;left:0;right:0;top:50%;height:1.5px;margin-top:-.75px;background:var(--gold-ink)}
.sinal::after{transform:rotate(90deg);transition:transform .35s var(--ease-out)}
details[open] .sinal::after{transform:rotate(0)}
details[open] .sinal{transform:rotate(180deg)}
.faq-resp{padding:0 32px 20px 0;font-size:.97rem;line-height:1.7;color:var(--text);max-width:62ch;text-wrap:pretty}
.js-anim details[open] .faq-resp{animation:abre .4s var(--ease-out) both}
@keyframes abre{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.faq-mais{margin-top:clamp(32px,4.5vw,44px);display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;color:var(--text)}
.faq-mais .link-u{color:var(--gold-ink)}
.faq-mais .link-u:hover{color:var(--gold-ink-deep)}

/* ---------- Contato / formulário ---------- */
.contato .h2{max-width:22ch}
.contato .body{margin-top:18px}
.contato .btn{margin-top:28px}
.contato .note{margin-top:18px}
.form{background:var(--paper);padding:clamp(26px,3.2vw,38px);display:grid;gap:18px;box-shadow:var(--shadow-md);border-top:2px solid var(--gold)}
.form-t{font-family:var(--serif);font-size:1.3rem;line-height:1.35;color:var(--ink-700)}
.campo{display:grid;gap:7px}
.campo label{font-size:.88rem;font-weight:600;color:var(--ink-700)}
.campo input,.campo select{width:100%;min-height:50px;padding:12px 14px;border:1px solid var(--line-strong);border-radius:var(--radius);background:#fff;font-size:1rem;color:var(--ink-700);transition:border-color .2s var(--ease),box-shadow .2s var(--ease)}
.campo select{appearance:none;-webkit-appearance:none;padding-right:42px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%238F6224' stroke-width='1.6'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}
.campo input:hover,.campo select:hover{border-color:#A9B7AD}
.campo input:focus,.campo select:focus{outline:none;border-color:var(--gold-ink);box-shadow:0 0 0 3px rgba(217,166,92,.22)}
.campo input[aria-invalid=true]{border-color:var(--danger)}
.campo input[aria-invalid=true]:focus{box-shadow:0 0 0 3px rgba(166,70,47,.16)}
.erro{min-height:0;font-size:.82rem;line-height:1.4;color:var(--danger)}
.erro:empty{display:none}
.consent{display:flex;align-items:flex-start;gap:12px}
.consent input{flex:none;width:20px;height:20px;margin:2px 0 0;accent-color:var(--ink-800)}
.consent label{font-size:.88rem;line-height:1.55;color:var(--ink-700)}
.form .btn{width:100%}
.form-aviso{font-size:.82rem;line-height:1.6;color:var(--muted)}
.form-status{font-size:.9rem;line-height:1.6;color:var(--ink-800)}
.form-status:empty{display:none}
.form-status.ok{padding:12px 14px;background:var(--mist);border-left:2px solid var(--gold)}
.form-status.falha{color:var(--danger)}

/* ---------- CTA flutuante: só no mobile (no desktop o "Agendar" do cabeçalho fixo já cumpre o papel) ---------- */
.cta-fixo{display:none}
@media (max-width:760px){
  .cta-fixo{display:block;position:fixed;left:0;right:0;bottom:0;z-index:40;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgba(12,33,28,.94);border-top:1px solid rgba(217,166,92,.3);transform:translateY(110%);transition:transform .45s var(--ease-out)}
  .cta-fixo.on{transform:none}
  @supports (backdrop-filter:blur(8px)){.cta-fixo{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}}
  .cta-fixo .btn{width:100%;min-height:50px;padding-inline:14px;font-size:.74rem;letter-spacing:.07em;white-space:nowrap}
  body{padding-bottom:calc(74px + env(safe-area-inset-bottom))}
  /* um CTA por vez: quando a barra aparece, o "Agendar" do cabeçalho sai de cena */
  .hdr-cta{transition:opacity .3s var(--ease),visibility .3s}
  .cta-on .hdr-cta{opacity:0;visibility:hidden}
}
@media (prefers-reduced-motion:reduce){.cta-fixo,.hdr-cta{transition:none}}

/* ---------- Rodapé ---------- */
.site-footer{background:var(--ink-900);color:var(--on-dark-3);padding-block:clamp(48px,6vw,72px) 28px}
.foot-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:36px 28px}
.foot-name{font-family:var(--serif);font-size:1.3rem;color:#fff}
.foot-sub{margin-top:10px;font-size:.88rem;line-height:1.75;color:#B8C6BE}
.foot-t{font-size:var(--fs-eyebrow);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.foot-list{margin-top:10px;font-size:.9rem;line-height:1.6}
.foot-list li{color:#B8C6BE}
.foot-list li:not(:has(a)){padding-block:8px}
.foot-list a{display:inline-flex;align-items:center;min-height:40px;color:#D3DED7}
.foot-list a:hover{color:var(--gold-soft)}
.foot-legal{margin-top:40px;padding-top:24px;border-top:1px solid rgba(255,255,255,.12);display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 32px;font-size:.8rem;line-height:1.75;color:#93A49B}
.foot-legal p{max-width:72ch}
@media (max-width:900px){.foot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.foot-grid>:first-child{grid-column:1/-1}}
@media (max-width:480px){.foot-grid{grid-template-columns:1fr}}

/* ---------- Páginas legais ---------- */
.legal{padding-block:clamp(48px,7vw,88px)}
.legal .wrap{max-width:820px}
.legal .h1{margin-top:12px;font-weight:400;font-size:clamp(1.9rem,1.5rem + 1.8vw,2.6rem);color:var(--ink-700)}
.legal-meta{margin-top:14px;font-size:.88rem;color:var(--muted)}
.legal-body{margin-top:36px;display:grid;gap:30px}
.legal-body h2{font-family:var(--serif);font-weight:400;font-size:clamp(1.25rem,1.1rem + .6vw,1.45rem);line-height:1.3;color:var(--ink-700)}
.legal-body p,.legal-body li{margin-top:12px;color:var(--text);text-wrap:pretty}
.legal-body ul{padding-left:1.2em}
.legal-voltar{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:var(--fs-eyebrow);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-ink)}

/* ---------- Refino: brilho que acompanha o mouse, cor no hover, parallax ---------- */
@property --glow{syntax:'<percentage>';inherits:false;initial-value:0%}

/* brilho: camada de gradiente sob o conteúdo; só aparece com mouse (ver bloco hover:hover) */
.spot{--spot-rgb:217 166 92;background-image:radial-gradient(420px circle at var(--mx,50%) var(--my,50%),rgb(var(--spot-rgb) / var(--glow)),transparent 70%);transition:--glow .6s var(--ease),background-color .5s var(--ease),border-color .5s var(--ease),transform .5s var(--ease-out),box-shadow .5s var(--ease-out)}

/* hero: brilho dourado seguindo o cursor */
.hero-glow{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(620px circle at var(--mx,70%) var(--my,30%),rgba(217,166,92,.13),transparent 62%);opacity:0;transition:opacity .9s var(--ease)}

/* trama de pontos (o "ponto" da marca) com fade nas bordas */

/* constelação na seção escura */

/* moldura da foto com recorte para o parallax interno */

.unidade-img img{display:block}

/* botão dourado: reflexo que atravessa no hover */
.btn--gold{overflow:hidden;isolation:isolate}
.btn--gold::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.5) 50%,transparent 65%);transform:translateX(-110%);transition:transform .9s var(--ease-out)}
.btn--gold:hover::after{transform:translateX(110%)}

/* barra de progresso de leitura */
.site-header::after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,var(--gold-ink),var(--gold));transform:scaleX(0);transform-origin:left;pointer-events:none}

/* FAQ: faixa de cor sutil na pergunta sob o cursor */
.faq-grupo details{transition:background-color .35s var(--ease)}

/* retrato: a moldura dourada se aproxima no hover */
.retrato::before{transition:transform .8s var(--ease-out),border-color .8s var(--ease)}

@media (hover:hover) and (pointer:fine){
  .hero:hover .hero-glow{opacity:1}
  .spot:hover{--glow:10%}
  .spot--dark:hover{--glow:12%}
  
  .passo:hover{background-color:#FFFDF8;border-top-color:var(--gold-ink)}
  .post:hover{background-color:#FCFAF5;border-color:rgba(217,166,92,.55)}
  
  .area:hover .kicker{color:var(--gold-ink-deep)}
  .unidade:hover{background-color:#17382F}
  .online:hover{border-color:rgba(217,166,92,.75)}
  .faq-grupo details:hover{background-color:rgba(217,166,92,.05)}
  .atalhos li:hover .q{color:var(--gold-ink)}
  .atalhos .q{transition:color .35s var(--ease)}
  
  
  .retrato:hover::before{transform:translate(8px,-8px);border-color:rgba(217,166,92,.7)}
  .foto-frame{transition:box-shadow .6s var(--ease-out)}
  .foto:hover .foto-frame{box-shadow:0 30px 60px -30px rgba(12,33,28,.5)}
}

/* parallax e progresso: animações nativas de rolagem (compositor, sem JS); ausentes = layout estático */
@supports (animation-timeline:scroll()){
  @media (prefers-reduced-motion:no-preference){
    .hero-bg img{scale:1.12;animation:plx-hero linear both;animation-timeline:scroll(root);animation-range:0 100vh}
    @keyframes plx-hero{from{translate:0 0}to{translate:0 14%}}
    .retrato-frame{animation:plx-lento linear both;animation-timeline:scroll(root);animation-range:0 100vh}
    @keyframes plx-lento{from{translate:0 0}to{translate:0 -36px}}
    .unidade-img img{scale:1.14;animation:plx-img linear both;animation-timeline:view()}
    @keyframes plx-img{from{translate:0 -6%}to{translate:0 6%}}
    
    @keyframes plx-fundo{from{translate:0 70px}to{translate:0 -70px}}
    .site-header::after{animation:progresso linear both;animation-timeline:scroll(root)}
    @keyframes progresso{to{transform:scaleX(1)}}
  }
}
@media (max-width:860px){.retrato-frame{animation:none!important}}

/* ---------- Movimento ---------- */
.js-anim .rv{opacity:0;transform:translate3d(0,18px,0)}
.rv{transition:opacity .8s var(--ease-out),transform .8s var(--ease-out);transition-delay:calc(var(--d,0) * 80ms)}
.rv.vis{opacity:1;transform:none}
.js-anim .hero .rv{transition-duration:.9s}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-delay:0s!important}
  .rv{opacity:1!important;transform:none!important}
}
@media print{.site-header,.cta-fixo,.hero-bg,.hero-notch,form{display:none!important}.hero{background:#fff;color:#000}.hero .h1,.hero-sub{color:#000}}

/* Fotos do ambiente */
.consulta-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,380px);gap:clamp(32px,5vw,72px);align-items:center;max-width:var(--inner)}
.ambiente{margin:0}
.ambiente figcaption{margin-top:12px;font-size:.84rem;line-height:1.5;color:var(--muted)}
.ambiente--sala img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 60%}
.ambiente--recepcao{margin-bottom:clamp(14px,1.8vw,20px);border:1px solid rgba(217,166,92,.3);overflow:hidden}
.ambiente--recepcao img{width:100%;aspect-ratio:21/9;object-fit:cover;object-position:center 55%}
.ambiente--recepcao figcaption{margin:0;padding:12px clamp(18px,2.4vw,26px);background:var(--ink-800);color:var(--on-dark-muted)}
@media (max-width:760px){
  .consulta-top{grid-template-columns:1fr}
  .ambiente--sala img{aspect-ratio:4/3}
  .ambiente--recepcao img{aspect-ratio:3/2}
}

/* Dúvidas: lista principal + "ver todas" */
.faq-lista{max-width:780px}
.faq-todas{margin-top:clamp(24px,3vw,32px)}
.faq-todas>summary{list-style:none;display:flex;width:max-content;margin-inline:auto}
.faq-todas>summary::-webkit-details-marker{display:none}
.faq-todas[open]>summary{display:none}
.faq-todas>.faq-grupo{margin-top:0}

#consulta .passo::before{box-shadow:0 0 0 4px var(--paper)}
#consulta .passo{box-shadow:var(--shadow-md)}
.hero-sub strong{color:#fff;font-weight:600}
.form-sub{margin-top:6px;font-size:.92rem;line-height:1.5;color:var(--muted)}

/* Áreas: hoje → para onde vamos */
.area .kicker{margin:0}
.ab{position:relative;display:grid;gap:4px;padding-left:18px}
.ab::before{content:'';position:absolute;left:0;top:.45em;width:7px;height:7px;border-radius:50%}
.ab--a::before{border:1px solid var(--gold)}
.ab--b::before{background:var(--gold)}
.ab--a::after{content:'';position:absolute;left:3px;top:calc(.45em + 10px);bottom:-10px;width:1px;background:var(--gold-line)}
.ab-l{font-size:var(--fs-eyebrow);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-ink);line-height:1.2}
.ab--a .ab-t{font-family:var(--serif);font-size:var(--fs-h3);line-height:1.3;color:var(--ink-700);text-wrap:balance}
.ab--b .ab-t{font-size:.97rem;line-height:1.6;color:var(--text)}

.ab-l{font-size:.64rem;letter-spacing:.16em;color:var(--muted)}
.area .kicker{margin-bottom:6px}
.passo .passo-vez{margin-top:auto;padding-top:10px;border-top:1px solid var(--line);font-size:.84rem;line-height:1.5;color:var(--muted);text-decoration:line-through;text-decoration-color:rgba(143,98,36,.45);text-decoration-thickness:1px}
.passo{grid-template-rows:auto auto 1fr auto}

/* Croquis menores nos cartões das unidades */
.unidade-img{aspect-ratio:3/2;height:auto;width:min(200px,55%);margin:clamp(22px,2.6vw,30px) 0 0 clamp(22px,2.6vw,30px);border:1px solid rgba(217,166,92,.3)}
.unidade-img img{width:100%;height:100%;object-fit:cover}
/* Cartões das unidades centralizados */
.unidade{align-items:center;text-align:center}
.unidade-img{margin:clamp(24px,3vw,32px) auto 0}
.unidade-in{align-items:center;width:100%;gap:10px;padding-top:clamp(16px,2vw,22px)}
.unidade .end{margin-top:-4px}
.unidade .btn{margin-top:8px}
.unidade .btn,.unidade .link-u{align-self:center}
.unidades{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:559px){.unidades{grid-template-columns:1fr}}
.unidade .estac{font-size:.86rem;color:var(--on-dark-muted)}
.nw{white-space:nowrap}
.unidade .btn{margin-top:auto}
.unidade-in .link-u+.link-u{margin-top:-4px}
.unidade-in .link-u:last-of-type{margin-bottom:10px}
.foto--2012{max-width:380px}
.foto--2012 img{aspect-ratio:3/4;object-position:center 30%}
.pergunta{font-family:var(--serif);font-size:1.12em;color:var(--ink-700);font-weight:500}
.ab-l{font-size:.7rem}
.foto--consulta{max-width:440px}
.foto--consulta img{aspect-ratio:4/5;object-position:center 35%}

/* ---------- Artigos ---------- */
.artigo{padding-block:clamp(40px,6vw,72px) clamp(56px,8vw,96px)}
.artigo-in{max-width:780px}
.artigo-kicker{margin-top:22px}
.artigo-t{margin-top:10px;font-weight:400;font-size:clamp(1.9rem,1.4rem + 2.2vw,2.8rem);line-height:1.14;color:var(--ink-700)}
.artigo-autor{margin-top:14px;font-size:.9rem;color:var(--muted)}
.artigo-autor a{color:var(--gold-ink);font-weight:600}
.artigo-capa{margin:clamp(24px,3vw,32px) 0 0}
.artigo-capa img{width:100%;aspect-ratio:16/9;object-fit:cover}
.artigo-corpo{margin-top:clamp(28px,3.6vw,40px);font-size:1.06rem;line-height:1.78;color:var(--text)}
.artigo-corpo>*+*{margin-top:1em}
.artigo-corpo h2{margin-top:1.8em;font-family:var(--serif);font-weight:400;font-size:clamp(1.35rem,1.2rem + .7vw,1.7rem);line-height:1.25;color:var(--ink-700)}
.artigo-corpo h3{margin-top:1.5em;font-family:var(--serif);font-weight:500;font-size:1.22rem;line-height:1.3;color:var(--ink-700)}
.artigo-corpo ul,.artigo-corpo ol{padding-left:1.3em}
.artigo-corpo li+li{margin-top:.5em}
.artigo-corpo li::marker{color:var(--gold-ink)}
.artigo-cta{margin-top:clamp(40px,5vw,56px);padding:clamp(24px,3vw,34px);background:var(--mist);border-top:2px solid var(--gold)}
.artigo-cta-t{font-family:var(--serif);font-size:1.4rem;line-height:1.3;color:var(--ink-700)}
.artigo-cta p+p{margin-top:8px;color:var(--text)}
.artigo-cta .btn{margin-top:20px}
.artigo-aviso{margin-top:24px;font-size:.84rem;line-height:1.6;color:var(--muted)}

/* ---------- Aviso de cookies ---------- */
.cookies{position:fixed;left:clamp(12px,2vw,24px);right:clamp(12px,2vw,24px);bottom:clamp(12px,2vw,24px);z-index:60;max-width:560px;display:grid;gap:14px;padding:18px 20px calc(18px + env(safe-area-inset-bottom));background:var(--ink-900);color:var(--on-dark-2);border:1px solid rgba(217,166,92,.35);border-top:2px solid var(--gold);box-shadow:var(--shadow-lg);font-size:.9rem;line-height:1.55}
.cookies[hidden]{display:none}
.cookies a{color:var(--gold);text-decoration:underline;text-underline-offset:2px}
.cookies-bt{display:flex;flex-wrap:wrap;gap:10px}
.cookies .btn{flex:1 1 130px;min-height:46px;padding:10px 18px;font-size:.72rem}
.cookies .btn--ghost{border-color:rgba(255,255,255,.35);color:#fff}
.cookies .btn--ghost:hover{border-color:#fff;background:rgba(255,255,255,.06);color:#fff}
.cookies-aberto .cta-fixo{visibility:hidden}
.foot-pref{display:inline-flex;align-items:center;min-height:40px;padding:0;border:0;background:none;color:#D3DED7;font-size:inherit;text-align:left;cursor:pointer}
.foot-pref:hover{color:var(--gold-soft)}
/* Cartões de artigo (home e /artigos/) */
.post-img{width:calc(100% + 2 * clamp(26px,3vw,32px));max-width:none;margin:calc(clamp(26px,3vw,32px) * -1) calc(clamp(26px,3vw,32px) * -1) 4px;aspect-ratio:16/9;object-fit:cover}
.post-d{font-size:.95rem;line-height:1.6;color:var(--text)}
.artigo-corpo figure img{width:100%;height:auto}
.artigo-corpo blockquote{margin:0;padding:6px 0 6px 18px;border-left:2px solid var(--gold);font-family:var(--serif);font-size:1.18rem;color:var(--ink-700)}
.artigo-corpo a{color:var(--gold-ink);text-decoration:underline;text-underline-offset:2px}
.insta-link{margin-top:18px;color:var(--gold-ink);font-size:.95rem}
.insta-link:hover{color:var(--gold-ink-deep)}
.unidade .btn{max-width:100%;white-space:normal;padding-inline:18px;letter-spacing:.08em}
.ic-insta{flex:none;width:18px;height:18px;margin-right:8px}
.foot-list a .ic-insta{width:16px;height:16px;color:var(--gold)}
.insta-link{gap:0}

/* Seção Conteúdo: cartão do Instagram */
.insta-wrap{max-width:var(--inner);margin:clamp(24px,3vw,32px) auto 0}
.insta-wrap--so{max-width:620px;margin-top:clamp(28px,4vw,40px)}
.insta-card{display:flex;align-items:center;gap:16px;padding:clamp(18px,2.4vw,24px) clamp(18px,2.6vw,28px);background:var(--mist);border:1px solid var(--line);border-left:2px solid var(--gold);color:var(--ink-700);transition:border-color .3s var(--ease),background-color .3s var(--ease)}
.insta-card:hover{border-color:rgba(217,166,92,.6);background:#EDF1EC;color:var(--ink-700)}
.insta-card-ic{flex:none;width:34px;height:34px;color:var(--gold-ink)}
.insta-card-txt{flex:1;display:grid;gap:2px}
.insta-card-t{font-family:var(--serif);font-size:1.25rem;line-height:1.25;color:var(--ink-700)}
.insta-card-d{font-size:.9rem;line-height:1.5;color:var(--muted)}
.insta-card-cta{flex:none;display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border:1px solid var(--gold-ink);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-ink);transition:background-color .25s var(--ease),color .25s var(--ease)}
.insta-card:hover .insta-card-cta{background:var(--gold-ink);color:#fff}
@media (max-width:480px){.insta-card{flex-wrap:wrap}.insta-card-cta{width:100%;justify-content:center}}
.passo .passo-vez{text-decoration:none;font-style:normal;color:var(--gold-ink)}
.online-mais{margin-top:14px;color:var(--gold);font-size:.9rem}
.online .btn+.online-mais{display:flex;width:max-content}

/* ---------- Páginas de campanha ---------- */
.depos{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:clamp(12px,1.6vw,18px)}
.depo{margin:0;display:flex;flex-direction:column;gap:12px;padding:clamp(22px,2.6vw,28px);background:var(--paper);border:1px solid var(--line);border-top:2px solid var(--gold)}
.depo-est{color:var(--gold-ink);letter-spacing:2px;font-size:.9rem}
.depo blockquote{margin:0;flex:1;font-family:var(--serif);font-size:1.08rem;line-height:1.5;color:var(--ink-700)}
.depo figcaption{font-size:.84rem;font-weight:600;color:var(--muted)}
.tm-play{position:absolute;inset:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;border:0;background:linear-gradient(to top,rgba(12,33,28,.6),rgba(12,33,28,.12));color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.tm-play-ic{width:66px;height:66px;border-radius:50%;background:var(--gold);position:relative;box-shadow:0 12px 30px -8px rgba(0,0,0,.5)}
.tm-play-ic::after{content:'';position:absolute;left:26px;top:20px;border-left:20px solid var(--ink-900);border-top:13px solid transparent;border-bottom:13px solid transparent}
.tm-video video{aspect-ratio:4/5}

/* ---------- Topo em formato VSL (páginas com vídeo) ---------- */
.hero--vsl .hero-in{padding-top:clamp(28px,5vw,64px);text-align:center}
.vsl-topo{max-width:820px;margin:0 auto}
.vsl-topo .eyebrow{justify-content:center}
.vsl-topo .hero-sub{margin-inline:auto;max-width:56ch}
.vsl{margin:clamp(24px,3.4vw,36px) auto 0;max-width:900px}
.vsl-tela{position:relative;aspect-ratio:16/9;background:#081612;border:1px solid rgba(217,166,92,.45);box-shadow:0 40px 80px -40px rgba(0,0,0,.8),0 0 0 6px rgba(255,255,255,.04);overflow:hidden}
.vsl-video{width:100%;height:100%;display:block;object-fit:contain;background:#081612}
.vsl-play{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:0;padding:0;cursor:pointer;color:#fff;background:linear-gradient(to top,rgba(8,22,18,.72),rgba(8,22,18,.18) 60%,rgba(8,22,18,.05))}
.vsl-play-ic{width:clamp(64px,9vw,92px);height:clamp(64px,9vw,92px);border-radius:50%;background:var(--gold);position:relative;box-shadow:0 0 0 10px rgba(217,166,92,.22),0 18px 40px -10px rgba(0,0,0,.6);transition:transform .3s var(--ease-out)}
.vsl-play-ic::after{content:'';position:absolute;left:54%;top:50%;transform:translate(-50%,-50%);border-left:clamp(20px,2.8vw,28px) solid var(--ink-900);border-top:clamp(13px,1.8vw,18px) solid transparent;border-bottom:clamp(13px,1.8vw,18px) solid transparent}
.vsl-play:hover .vsl-play-ic{transform:scale(1.06)}
.vsl-play-t{margin-top:10px;font-family:var(--serif);font-size:clamp(1.15rem,1rem + .6vw,1.5rem)}
.vsl-play-d{font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.vsl figcaption{margin-top:12px;font-size:.88rem;color:var(--on-dark-muted)}
.vsl-acao{margin-top:clamp(22px,3vw,30px);display:flex;flex-direction:column;align-items:center;gap:12px}
.vsl-micro{font-size:.84rem;color:var(--on-dark-muted)}
.vsl-acao .pontos{justify-content:center;margin-top:6px}
.hero--vsl .provas{text-align:left}
@media (prefers-reduced-motion:no-preference){.vsl-play-ic{animation:vsl-pulso 2.4s ease-out infinite}}
@keyframes vsl-pulso{0%{box-shadow:0 0 0 0 rgba(217,166,92,.45),0 18px 40px -10px rgba(0,0,0,.6)}70%{box-shadow:0 0 0 18px rgba(217,166,92,0),0 18px 40px -10px rgba(0,0,0,.6)}100%{box-shadow:0 0 0 0 rgba(217,166,92,0),0 18px 40px -10px rgba(0,0,0,.6)}}
@media (max-width:560px){.vsl{margin-inline:calc(var(--gutter) * -1)}.vsl-tela{border-left:0;border-right:0}.vsl figcaption{padding-inline:var(--gutter)}}
@media (min-width:861px){.vsl{max-width:max(560px,min(900px,calc((100svh - 470px) * 1.7778)))}.hero--vsl .h1{font-size:clamp(2.2rem,1.4rem + 2.6vw,3.4rem)}.hero--vsl .hero-sub{margin-top:16px}}
.site-footer--lp .foot-legal{margin-top:24px}
.site-footer--lp .foot-legal a{color:#D3DED7;text-decoration:underline;text-underline-offset:2px}
.site-footer--lp .foot-pref{display:inline;min-height:0;font-size:inherit;color:#D3DED7;text-decoration:underline}
