/* =========================================================
   Ian Ravih | Psicologia Clínica
   Persona D (Narrativo com Fluxo) · conceito "entre parênteses"
   Cores da identidade do cliente: ardósia, dourado e creme
   ========================================================= */

:root{
  --ardosia:#404C58;
  --ardosia-2:#333D47;
  --ardosia-3:#262E36;
  --tinta:#1E252C;
  --texto:#3A434C;
  --texto-suave:#5C646D;
  --ouro:#BC9C64;
  --ouro-claro:#D8C39A;
  --ouro-forte:#9C7D47;
  --ouro-texto:#7A5F33;
  --creme:#E4DCCC;
  --papel:#F5F1EA;
  --papel-2:#FBF9F5;
  --areia:#EDE6D9;
  --branco:#FFFFFF;
  --linha:rgba(64,76,88,.16);
  --linha-clara:rgba(228,220,204,.16);
  --erro:#9B3B2E;

  --serif:'Instrument Serif', Georgia, 'Times New Roman', serif;
  --sans:'Jost', system-ui, -apple-system, 'Segoe UI', sans-serif;

  --raio:22px;
  --sombra:0 30px 60px -34px rgba(38,46,54,.38);
  --topo-h:84px;
  --fio-h:clamp(72px, 10vw, 128px);
  --ease:cubic-bezier(.2,.7,.2,1);
}

/* ---------- reset ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;font-family:var(--sans);font-size:1.0625rem;line-height:1.7;color:var(--texto);background:var(--papel);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
ul,ol{margin:0;padding:0;list-style:none}
h1,h2,h3,h4{margin:0;color:var(--tinta);font-weight:400}
p{margin:0 0 1.1em}
p:last-child{margin-bottom:0}
figure{margin:0}
button{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--ouro);outline-offset:3px;border-radius:4px}
.svg-defs{position:absolute;width:0;height:0;overflow:hidden}

/* textura de grão sobre tudo, muito sutil */
body::after{content:"";position:fixed;inset:0;z-index:2000;pointer-events:none;opacity:.05;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.25 0 0 0 0 0.3 0 0 0 0 0.34 0 0 0 1 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E")}

.pular{position:absolute;left:1rem;top:-100px;z-index:3000;background:var(--ardosia);color:var(--papel-2);padding:.7rem 1rem;border-radius:8px;text-decoration:none}
.pular:focus{top:1rem}

.wrap{width:100%;max-width:1200px;margin-inline:auto;padding-inline:clamp(20px,5vw,48px)}

/* ---------- tipografia de seção ---------- */
.eyebrow{display:inline-flex;flex-direction:column;align-items:flex-start;gap:.6rem;margin:0 0 1.4rem;font-family:var(--sans);font-size:.78rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--ouro-texto)}
.eyebrow::after{content:"";width:28px;height:2px;border-radius:2px;background:var(--ouro)}
.cabecalho.centro{text-align:center;max-width:780px;margin-inline:auto}
.cabecalho.centro .eyebrow{align-items:center}
.cabecalho.centro .titulo,.cabecalho.centro .cabecalho__intro{margin-inline:auto}
.titulo{font-family:var(--serif);font-size:clamp(2.35rem,4.5vw,3.9rem);line-height:1.04;letter-spacing:-.01em;color:var(--tinta);margin-bottom:1.4rem;max-width:18ch}
.titulo em,.hero__titulo em{font-style:italic;color:var(--ouro-forte)}
.cabecalho__intro{font-size:1.125rem;color:var(--texto);max-width:62ch}

/* ---------- botões ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:52px;padding:0 1.7rem;border-radius:999px;font-family:var(--sans);font-size:1rem;font-weight:500;letter-spacing:.01em;text-decoration:none;white-space:nowrap;flex-shrink:0;border:1px solid transparent;cursor:pointer;transition:background-color .25s ease,color .25s ease,transform .25s var(--ease),box-shadow .25s ease,border-color .25s ease}
.btn svg{flex:0 0 auto}
.btn--primario{background:var(--ardosia);color:var(--papel-2)}
.btn--primario:hover{background:var(--ardosia-3);transform:translateY(-2px);box-shadow:0 14px 28px -14px rgba(38,46,54,.55)}
.btn--linha{border-color:var(--ardosia);color:var(--ardosia);background:transparent}
.btn--linha:hover{background:var(--ardosia);color:var(--papel-2);transform:translateY(-2px)}
.btn--ouro{background:var(--ouro);color:var(--ardosia-3)}
.btn--ouro:hover{background:var(--ouro-claro);transform:translateY(-2px);box-shadow:0 14px 30px -14px rgba(0,0,0,.5)}

/* ---------- progresso de leitura ---------- */
.progresso{position:fixed;top:0;left:0;right:0;height:2px;z-index:1300;pointer-events:none}
.progresso span{display:block;height:100%;background:linear-gradient(90deg,var(--ouro-claro),var(--ouro));transform-origin:0 50%;transform:scaleX(var(--p,0))}

/* ---------- header ---------- */
.topo{position:fixed;top:0;left:0;right:0;z-index:1000;height:var(--topo-h);display:flex;align-items:center;transition:height .35s var(--ease),background-color .35s ease,box-shadow .35s ease}
.topo__inner{width:100%;max-width:1280px;margin-inline:auto;padding-inline:clamp(20px,4vw,40px);display:flex;align-items:center;gap:2rem}
.topo__logo{display:flex;align-items:center;flex-shrink:0;margin-right:auto;min-height:44px}
.topo__logo img{height:32px;width:auto}
.topo__nav ul{display:flex;gap:1.7rem}
.topo__nav a{position:relative;font-size:.95rem;font-weight:500;color:var(--tinta);text-decoration:none;padding:.4rem 0}
.topo__nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1.5px;background:var(--ouro);transform:scaleX(0);transform-origin:0 50%;transition:transform .3s var(--ease)}
.topo__nav a:hover::after,.topo__nav a.ativo::after{transform:scaleX(1)}
.topo__cta{min-height:46px;padding:0 1.35rem;font-size:.95rem}
.topo.rolou{height:68px;background:rgba(245,241,234,.92);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 10px 30px -22px rgba(38,46,54,.45)}

.nav-toggle{display:none;align-items:center;justify-content:center;width:46px;height:46px;margin-left:auto;background:var(--papel-2);border:1px solid var(--linha);border-radius:50%;color:var(--ardosia-3);cursor:pointer}
.nav-toggle svg{width:24px;height:24px}

/* drawer mobile: visual SEMPRE fora de @media */
.mobile-menu{position:fixed;top:0;right:0;bottom:0;z-index:1200;width:min(86vw,360px);display:flex;flex-direction:column;padding:1.1rem 1.5rem 2rem;background:var(--papel-2);box-shadow:-18px 0 50px -22px rgba(0,0,0,.28);transform:translateX(100%);visibility:hidden;transition:transform .34s cubic-bezier(.4,0,.2,1),visibility .34s;overscroll-behavior:contain;overflow-y:auto}
.mobile-menu.open{transform:none;visibility:visible}
.mobile-menu__head{display:flex;align-items:center;justify-content:space-between;padding-bottom:1rem;margin-bottom:.4rem;border-bottom:1px solid var(--linha)}
.mobile-menu__logo{height:30px;width:auto}
.mobile-menu__links li{border-bottom:1px solid var(--linha)}
.mobile-menu__links a{display:flex;align-items:center;min-height:54px;font-size:1.06rem;font-weight:500;color:var(--tinta);text-decoration:none;transition:color .2s}
.mobile-menu__links a:hover,.mobile-menu__links a.ativo{color:var(--ouro-texto)}
.mobile-menu__cta{margin-top:auto;width:100%}
.mobile-close{background:none;border:none;color:var(--ardosia);cursor:pointer;padding:.5rem;margin:-.5rem;line-height:0;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}
.mobile-close svg{width:28px;height:28px}
.menu-backdrop{position:fixed;inset:0;z-index:1100;background:rgba(38,46,54,.5);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s}
.menu-backdrop.open{opacity:1;visibility:visible}

@media (max-width:1080px){
  .topo__nav,.topo__cta{display:none}
  .topo__inner{justify-content:space-between;gap:1rem}
  .nav-toggle{display:flex}
}

/* ---------- fio condutor entre seções ---------- */
.secao,.pausa,.rodape{position:relative}
.fio{position:absolute;left:calc(50% - 8px);top:calc(var(--fio-h) / -2);width:16px;height:var(--fio-h);z-index:4;pointer-events:none;transform-origin:50% 0;transition:transform 1.1s var(--ease),opacity .6s ease}
.fio::before{content:"";position:absolute;left:calc(50% - .75px);top:0;bottom:0;width:1.5px;background:linear-gradient(180deg,rgba(188,156,100,0),var(--ouro) 30%,var(--ouro) 70%,rgba(188,156,100,0))}
.fio i{position:absolute;left:50%;top:50%;width:11px;height:11px;margin:-5.5px 0 0 -5.5px;background:var(--ouro);transform:rotate(45deg);box-shadow:0 0 0 5px var(--papel),0 0 0 6px rgba(188,156,100,.35)}
.fio--claro i{box-shadow:0 0 0 5px var(--ardosia-2),0 0 0 6px rgba(188,156,100,.4)}
.para-quem .fio i,.sobre .fio i,.duvidas .fio i{box-shadow:0 0 0 5px var(--papel-2),0 0 0 6px rgba(188,156,100,.35)}
.abordagem .fio i,.atendimento .fio i,.contato .fio i{box-shadow:0 0 0 5px var(--areia),0 0 0 6px rgba(188,156,100,.35)}
.rodape .fio i{box-shadow:0 0 0 5px var(--ardosia-3),0 0 0 6px rgba(188,156,100,.4)}
.js .fio.fio--espera{transform:scaleY(0);opacity:0}
.js .fio.fio--on{transform:none;opacity:1}

.secao{padding-block:clamp(5.5rem,9vw,8.5rem)}

/* deriva contínua (blobs, halos, marcas d'água) */
@keyframes drift{0%{transform:translate3d(0,0,0) rotate(var(--rot,0deg))}50%{transform:translate3d(0,-16px,0) rotate(calc(var(--rot,0deg) + 2deg))}100%{transform:translate3d(0,0,0) rotate(var(--rot,0deg))}}
.decor-drift{animation:drift 20s ease-in-out infinite;will-change:transform}
[data-parallax]{transform:translate3d(0,var(--py,0px),0);will-change:transform}

/* ---------- reveal ---------- */
.js .animate-on-scroll{opacity:0;transform:translateY(26px);filter:blur(5px);transition:opacity .9s ease-out,transform .9s var(--ease),filter .9s ease-out;transition-delay:calc(var(--i,0) * .1s)}
.js .animate-on-scroll.visible{opacity:1;transform:none;filter:none}

/* =========================================================
   1. HERO
   ========================================================= */
.hero{position:relative;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:calc(var(--topo-h) + 2.5rem) 0 5.5rem;overflow:hidden;
  background:
    radial-gradient(52% 60% at 76% 46%,rgba(251,249,245,.95),rgba(251,249,245,0) 70%),
    radial-gradient(70% 55% at 10% 100%,rgba(228,220,204,.7),rgba(228,220,204,0) 70%),
    linear-gradient(180deg,var(--papel),var(--papel) 60%,var(--papel-2));
}
.hero__fundo{position:absolute;inset:0;pointer-events:none}
.hero__halo{position:absolute;right:6%;top:50%;width:min(46vw,620px);aspect-ratio:1;margin-top:calc(min(46vw,620px) / -2);border-radius:50%;background:radial-gradient(circle,rgba(188,156,100,.22),rgba(188,156,100,.06) 45%,rgba(188,156,100,0) 70%)}
.hero__marca{position:absolute;width:clamp(120px,16vw,230px);aspect-ratio:60/200;height:auto;color:var(--ardosia);opacity:.035}
.hero__marca--esq{left:-5%;top:10%}
.hero__marca--dir{right:-7%;bottom:-18%;opacity:.025}
.hero__inner{position:relative;display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(2rem,5vw,5rem);align-items:center}
.hero__titulo{font-family:var(--serif);font-size:clamp(3.1rem,6.3vw,6rem);line-height:.98;letter-spacing:-.015em;margin-bottom:1.6rem;max-width:12ch}
.hero__sub{font-size:clamp(1.06rem,1.35vw,1.2rem);max-width:36em;color:var(--texto);margin-bottom:2.2rem}
.hero__acoes{display:flex;flex-wrap:wrap;gap:.9rem;margin-bottom:2.4rem}
.hero__selos{display:flex;flex-wrap:wrap;gap:.5rem 1.2rem;font-size:.88rem;color:var(--texto-suave)}
.hero__selos li{display:inline-flex;align-items:center;gap:.6rem}
.hero__selos li::before{content:"";width:6px;height:6px;background:var(--ouro);transform:rotate(45deg);flex:0 0 auto}

@keyframes entra{from{opacity:0;transform:translateY(20px);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}
.hero__entra{animation:entra 1s var(--ease) both;animation-delay:calc(var(--d,0) * .12s + .25s)}

.hero__simbolo{position:relative;display:flex;align-items:center;justify-content:center;gap:clamp(.4rem,1.4vw,1.2rem);padding-block:2.5rem}
.hero__retrato{position:relative;width:clamp(210px,24vw,330px);aspect-ratio:3/4;border-radius:999px;box-shadow:0 46px 80px -46px rgba(38,46,54,.6)}
.hero__retrato img{width:100%;height:100%;object-fit:cover;object-position:50% 32%;border-radius:999px;animation:abre-retrato 1.4s var(--ease) .35s both}
.hero__par{width:clamp(40px,4.8vw,68px);aspect-ratio:60/200;height:auto;color:var(--ardosia);flex:0 0 auto}
.hero__par--esq{animation:par-esq 1.3s var(--ease) .2s both}
.hero__par--dir{animation:par-dir 1.3s var(--ease) .2s both}
.hero__ponta{position:absolute;left:50%;width:14px;height:14px;margin-left:-7px;background:var(--ouro);transform:rotate(45deg);animation:ponta .8s var(--ease) 1.1s both}
.hero__ponta--cima{top:.6rem}
.hero__ponta--baixo{bottom:.6rem}
.hero__ponta--baixo::after{content:"";position:absolute;left:50%;top:50%;width:1.5px;height:70px;background:linear-gradient(180deg,var(--ouro),rgba(188,156,100,0));transform:rotate(-45deg);transform-origin:0 0}
@keyframes abre-retrato{from{clip-path:inset(46% 0 46% 0);opacity:.2;transform:scale(1.08)}to{clip-path:inset(0 0 0 0);opacity:1;transform:none}}
@keyframes par-esq{from{opacity:0;transform:translateX(70%)}to{opacity:1;transform:none}}
@keyframes par-dir{from{opacity:0;transform:translateX(-70%)}to{opacity:1;transform:none}}
@keyframes ponta{from{opacity:0;transform:rotate(45deg) scale(0)}to{opacity:1;transform:rotate(45deg) scale(1)}}

.hero__rolar{position:absolute;left:50%;bottom:1.6rem;width:44px;height:56px;margin-left:-22px;display:flex;justify-content:center}
.hero__rolar span{position:relative;width:1.5px;height:100%;background:var(--linha);overflow:hidden}
.hero__rolar span::after{content:"";position:absolute;left:0;top:-40%;width:100%;height:40%;background:var(--ouro);animation:rolar 2.4s ease-in-out infinite}
@keyframes rolar{0%{top:-40%}70%,100%{top:100%}}

/* =========================================================
   2. PARA QUEM É
   ========================================================= */
.para-quem{background:var(--papel-2)}
.para-quem__fundo{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.marca-dagua{position:absolute;width:clamp(140px,18vw,250px);aspect-ratio:60/200;height:auto;color:var(--ouro);opacity:.08}
.para-quem .marca-dagua{left:-4%;bottom:6%}
.para-quem__grid{position:relative;display:grid;grid-template-columns:5fr 7fr;gap:clamp(2.5rem,6vw,6rem);align-items:start}
.para-quem__fixo{position:sticky;top:calc(var(--topo-h) + 2rem)}
.para-quem__nota{font-size:1.05rem;color:var(--texto-suave);max-width:34ch;padding-left:1.1rem;border-left:2px solid var(--ouro)}
.acende{font-family:var(--serif);font-size:clamp(1.65rem,2.7vw,2.35rem);line-height:1.28;color:var(--tinta);margin-bottom:3.5rem}
.js .acende .acende-palavra{opacity:.2;transition:opacity .45s ease}
.js .acende .acende-palavra.on{opacity:1}

.trilha{position:relative;padding-left:2.8rem}
.trilha__lista{margin:0;padding:0}
.trilha__linha{position:absolute;left:7px;top:.6rem;bottom:.6rem;width:2px;background:var(--linha)}
.trilha__linha span{position:absolute;inset:0;background:linear-gradient(180deg,var(--ouro),var(--ouro-forte));transform-origin:50% 0;transform:scaleY(var(--prog,1))}
.trilha__item{position:relative;padding-bottom:2.6rem}
.trilha__item:last-child{padding-bottom:0}
.trilha__no{position:absolute;left:calc(-2.8rem + 2px);top:.55rem;width:12px;height:12px;background:var(--papel-2);border:2px solid var(--ouro);transform:rotate(45deg);transition:background-color .5s ease .3s}
.trilha__item.visible .trilha__no{background:var(--ouro)}
.trilha__item h3{font-family:var(--serif);font-size:clamp(1.5rem,2vw,1.85rem);line-height:1.15;margin-bottom:.55rem}
.trilha__item p{max-width:54ch}

/* =========================================================
   3. ABORDAGEM
   ========================================================= */
.abordagem{background:var(--areia)}
.abordagem__fundo{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.abordagem__luz{position:absolute;left:50%;top:-20%;width:min(90vw,1100px);aspect-ratio:2/1;margin-left:calc(min(90vw,1100px) / -2);border-radius:50%;background:radial-gradient(closest-side,rgba(251,249,245,.85),rgba(251,249,245,0))}
.abordagem .wrap{position:relative}
.contraste{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(2rem,5vw,4.5rem);margin-top:clamp(3rem,6vw,4.5rem);align-items:center}
.contraste__lado h3{font-family:var(--sans);font-size:.8rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--ouro-texto);margin-bottom:1.6rem}
.contraste__lado li{padding-block:1rem;border-bottom:1px solid var(--linha)}
.contraste__lado li:last-child{border-bottom:0}
.contraste__lado--nao{color:var(--texto-suave);font-size:1.08rem}
.risco{background-image:linear-gradient(var(--ouro),var(--ouro));background-repeat:no-repeat;background-position:0 58%;background-size:0% 1.5px;-webkit-box-decoration-break:clone;box-decoration-break:clone;transition:background-size 1.1s var(--ease)}
.contraste__lado--nao li:nth-child(2) .risco{transition-delay:.25s}
.contraste__lado--nao li:nth-child(3) .risco{transition-delay:.5s}
.contraste__lado--nao.visible .risco,html:not(.js) .risco{background-size:100% 1.5px}
.contraste__lado--sim{position:relative;padding:2.4rem clamp(3rem,6vw,4.6rem)}
.contraste__lado--sim li{font-family:var(--serif);font-size:clamp(1.3rem,1.9vw,1.6rem);line-height:1.3;color:var(--tinta);display:flex;gap:.9rem;align-items:baseline}
.contraste__lado--sim li::before{content:"";width:8px;height:8px;background:var(--ouro);transform:rotate(45deg) translateY(-3px);flex:0 0 auto}
.contraste__par{position:absolute;top:0;bottom:0;height:100%;width:clamp(22px,2.6vw,34px);color:var(--ouro)}
.contraste__par--esq{left:0}
.contraste__par--dir{right:0}

/* =========================================================
   4. PAUSA (âncora escura)
   ========================================================= */
.pausa{background:
    radial-gradient(60% 80% at 50% 0%,rgba(188,156,100,.16),rgba(188,156,100,0) 70%),
    linear-gradient(180deg,var(--ardosia),var(--ardosia-2));
  color:var(--creme);padding-block:clamp(6rem,11vw,9.5rem);text-align:center}
.pausa h1,.pausa h2,.pausa h3,.pausa h4{color:var(--papel-2)}
.pausa__fundo{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.pausa__par{position:absolute;top:8%;width:clamp(120px,15vw,220px);aspect-ratio:60/200;height:auto;color:var(--ouro);opacity:.07}
.pausa__par--esq{left:3%}
.pausa__par--dir{right:3%}
.pausa__inner{position:relative;max-width:900px}
.pausa__citacao{margin:0 auto 3.2rem;max-width:780px}
.pausa__citacao p{font-family:var(--serif);font-style:italic;font-size:clamp(1.75rem,3.2vw,2.75rem);line-height:1.18;color:var(--papel-2);margin-bottom:1.2rem}
.pausa__citacao cite{font-style:normal;font-size:.8rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--ouro-claro)}
.pausa__titulo{font-family:var(--sans);font-size:clamp(1.2rem,1.8vw,1.45rem);font-weight:500;line-height:1.45;max-width:36ch;margin:0 auto 1rem}
.pausa__texto{max-width:52ch;margin:0 auto 2.2rem;color:rgba(228,220,204,.85)}

/* =========================================================
   5. COMO FUNCIONA
   ========================================================= */
.como{background:var(--papel)}
.como::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(rgba(64,76,88,.12) 1px,transparent 1.2px);background-size:26px 26px;-webkit-mask-image:radial-gradient(70% 60% at 50% 60%,#000,transparent 85%);mask-image:radial-gradient(70% 60% at 50% 60%,#000,transparent 85%)}
.como .wrap{position:relative}
.fluxo{position:relative;margin-top:clamp(2.5rem,5vw,4rem)}
.fluxo__lista{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1.2rem,2.5vw,2.4rem);margin:0;padding:0}
.fluxo__linha{position:absolute;top:26px;left:12.5%;right:12.5%;height:2px;background:var(--linha)}
.fluxo__linha span{position:absolute;inset:0;background:linear-gradient(90deg,var(--ouro),var(--ouro-forte));transform-origin:0 50%;transform:scaleX(var(--prog,1))}
.fluxo__passo{position:relative;text-align:center;padding-inline:.4rem}
.fluxo__no{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:52px;height:52px;margin:0 auto 1.6rem}
.fluxo__no::before{content:"";position:absolute;inset:7px;background:var(--papel);border:1.5px solid var(--ouro);transform:rotate(45deg);transition:background-color .5s ease .35s,border-color .5s ease .35s}
.fluxo__passo.visible .fluxo__no::before{background:var(--ardosia);border-color:var(--ardosia)}
.fluxo__no b{position:relative;font-family:var(--serif);font-weight:400;font-size:1.35rem;color:var(--ouro-texto);transition:color .5s ease .35s}
.fluxo__passo.visible .fluxo__no b{color:var(--papel-2)}
.fluxo__passo h3{font-family:var(--serif);font-size:1.6rem;line-height:1.15;margin-bottom:.7rem}
.fluxo__passo p{font-size:1rem;color:var(--texto)}
.como__nota{margin-top:clamp(2.5rem,5vw,3.5rem);text-align:center;font-size:.92rem;color:var(--texto-suave)}

/* =========================================================
   6. SOBRE
   ========================================================= */
.sobre{background:var(--papel-2)}
.sobre__grid{display:grid;grid-template-columns:5fr 6fr;gap:clamp(3rem,7vw,7rem);align-items:center}
.sobre__imagens{position:relative;padding:0 2rem 3rem 0}
.sobre__sala{border-radius:200px 200px var(--raio) var(--raio);overflow:hidden;aspect-ratio:4/5;box-shadow:var(--sombra);background:var(--creme)}
.sobre__sala img{width:100%;height:118%;object-fit:cover;transform:translate3d(0,var(--py,0px),0);margin-top:-9%}
.sobre__retrato{position:absolute;right:0;bottom:0;width:42%;aspect-ratio:1;border-radius:50%;overflow:hidden;border:6px solid var(--papel-2);box-shadow:var(--sombra)}
.sobre__retrato img{width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.sobre__cargo{font-size:.8rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--ouro-texto);margin:-.6rem 0 1.6rem}
.sobre__texto > p:not(.eyebrow):not(.sobre__cargo){max-width:58ch}
.marcos{position:relative;margin-top:2.4rem;padding-left:2.4rem;border-left:0}
.marcos::before{content:"";position:absolute;left:6px;top:.7rem;bottom:.7rem;width:1.5px;background:linear-gradient(180deg,var(--ouro),rgba(188,156,100,.25))}
.marcos__item{position:relative;padding-bottom:1.4rem}
.marcos__item:last-child{padding-bottom:0}
.marcos__no{position:absolute;left:calc(-2.4rem + 1px);top:.55rem;width:12px;height:12px;background:var(--papel-2);border:2px solid var(--ouro);transform:rotate(45deg)}
.marcos__item strong{display:block;font-family:var(--serif);font-weight:400;font-size:1.4rem;line-height:1.2;color:var(--tinta)}
.marcos__item span:not(.marcos__no){font-size:.98rem;color:var(--texto-suave)}

/* =========================================================
   7. DIFERENCIAIS
   ========================================================= */
.diferenciais{background:var(--papel)}
.diferenciais::before{content:"";position:absolute;right:0;top:10%;width:50vw;max-width:800px;aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,rgba(228,220,204,.8),rgba(228,220,204,0));pointer-events:none}
.diferenciais__grid{position:relative;display:grid;grid-template-columns:7fr 5fr;gap:clamp(3rem,6vw,6rem);align-items:center}
.acordeao{margin-top:2.2rem;border-top:1px solid var(--linha)}
.acordeao__item{border-bottom:1px solid var(--linha)}
.acordeao__item h3{font-size:inherit}
.acordeao__botao{display:flex;align-items:center;gap:1.1rem;width:100%;min-height:64px;padding:1.3rem 0;background:none;border:0;text-align:left;cursor:pointer;font-family:var(--serif);font-size:clamp(1.3rem,1.9vw,1.6rem);line-height:1.2;color:var(--tinta);transition:color .2s}
.acordeao__botao:hover{color:var(--ouro-texto)}
.acordeao__num{font-family:var(--sans);font-size:.78rem;font-weight:600;letter-spacing:.14em;color:var(--ouro-texto);flex:0 0 auto}
.acordeao__icone{position:relative;width:18px;height:18px;margin-left:auto;flex:0 0 auto}
.acordeao__icone::before,.acordeao__icone::after{content:"";position:absolute;left:0;right:0;top:50%;height:1.5px;margin-top:-.75px;background:var(--ardosia);transition:transform .35s var(--ease)}
.acordeao__icone::after{transform:rotate(90deg)}
[aria-expanded="true"] .acordeao__icone::after{transform:rotate(0)}
.acordeao__painel{padding:0 0 1.5rem 0;max-width:60ch;color:var(--texto)}
@keyframes abre{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.acordeao__painel:not([hidden]),.faq__painel:not([hidden]){animation:abre .45s var(--ease)}
.diferenciais__foto{position:relative}
.diferenciais__foto img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:var(--raio) var(--raio) var(--raio) 140px;box-shadow:var(--sombra)}
.diferenciais__foto figcaption{margin-top:1rem;font-family:var(--serif);font-style:italic;font-size:1.05rem;line-height:1.4;color:var(--texto-suave);max-width:34ch}

/* =========================================================
   8. ATENDIMENTO
   ========================================================= */
.atendimento{background:var(--areia);padding-bottom:clamp(4rem,7vw,6rem)}
.formatos{display:grid;grid-template-columns:1fr auto 1fr;gap:clamp(1.5rem,4vw,3.5rem);margin-top:clamp(2.5rem,5vw,3.5rem);align-items:stretch}
.formato{padding:clamp(1.8rem,3vw,2.6rem);background:var(--papel-2);border:1px solid var(--linha);border-radius:var(--raio);transition:transform .3s var(--ease),box-shadow .3s ease}
.formato:hover{transform:translateY(-4px);box-shadow:var(--sombra)}
.formato__icone{display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:50%;border:1px solid var(--ouro);color:var(--ouro-texto);margin-bottom:1.3rem}
.formato__rotulo{font-size:.76rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--ouro-texto);margin-bottom:.4rem}
.formato h3{font-family:var(--serif);font-size:clamp(1.6rem,2.3vw,2rem);line-height:1.12;margin-bottom:.9rem}
.formatos__divisa{position:relative;width:16px}
.formatos__divisa::before{content:"";position:absolute;left:calc(50% - .75px);top:8%;bottom:8%;width:1.5px;background:linear-gradient(180deg,rgba(188,156,100,0),var(--ouro),rgba(188,156,100,0))}
.formatos__divisa i{position:absolute;left:50%;top:50%;width:11px;height:11px;margin:-5.5px 0 0 -5.5px;background:var(--ouro);transform:rotate(45deg);box-shadow:0 0 0 5px var(--areia)}

.galeria{margin-top:clamp(3rem,6vw,4.5rem);overflow:hidden}
.galeria__trilho{display:flex;gap:1.2rem;width:max-content;margin-inline:auto;padding-inline:clamp(20px,5vw,48px);transform:translate3d(calc(var(--gx,0) * -1px),0,0);will-change:transform}
.galeria figure{flex:0 0 auto;height:clamp(220px,27vw,370px);border-radius:var(--raio);overflow:hidden;background:var(--creme)}
.galeria img{height:100%;width:auto;max-width:none;object-fit:cover;transition:transform .8s var(--ease)}
.galeria figure:hover img{transform:scale(1.04)}

/* =========================================================
   9. FAQ
   ========================================================= */
.duvidas{background:var(--papel-2)}
.duvidas__grid{display:grid;grid-template-columns:4fr 7fr;gap:clamp(2.5rem,6vw,6rem);align-items:start}
.duvidas__intro{position:sticky;top:calc(var(--topo-h) + 2rem)}
.duvidas__intro > p:not(.eyebrow){color:var(--texto-suave);max-width:30ch}
.faq{border-top:1px solid var(--linha)}
.faq__item{border-bottom:1px solid var(--linha)}
.faq__item h3{font-size:inherit}
.faq__botao{display:flex;align-items:center;gap:1.2rem;width:100%;min-height:64px;padding:1.25rem 0;background:none;border:0;text-align:left;cursor:pointer;font-family:var(--sans);font-size:1.08rem;font-weight:500;line-height:1.4;color:var(--tinta);transition:color .2s}
.faq__botao:hover{color:var(--ouro-texto)}
.faq__painel{padding:0 2.5rem 1.4rem 0;color:var(--texto)}

/* =========================================================
   10. BLOG (chamada)
   ========================================================= */
.secao-blog{background:var(--papel);border-top:1px solid var(--linha);border-bottom:1px solid var(--linha)}
.blog-grade{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.2rem,2.5vw,2rem);margin-top:clamp(2.2rem,4vw,3rem)}
.blog-card{display:flex;flex-direction:column;background:var(--papel-2);border:1px solid var(--linha);border-radius:var(--raio);overflow:hidden;text-decoration:none;transition:transform .3s var(--ease),box-shadow .3s ease}
.blog-card:hover{transform:translateY(-4px);box-shadow:var(--sombra)}
.blog-card__capa{position:relative;display:flex;align-items:center;justify-content:center;gap:1.4rem;aspect-ratio:16/10;background:radial-gradient(70% 90% at 50% 40%,rgba(188,156,100,.22),rgba(188,156,100,0) 70%),linear-gradient(150deg,var(--ardosia),var(--ardosia-3))}
.blog-card__par{width:26px;height:86px;color:var(--creme);opacity:.75}
.blog-card__capa i{width:16px;height:16px;background:var(--ouro);transform:rotate(45deg)}
.blog-card__selo{padding:1.3rem 1.5rem .2rem;font-size:.76rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--ouro-texto)}
.blog-card__texto{padding:0 1.5rem 1.5rem;font-family:var(--serif);font-size:1.35rem;line-height:1.25;color:var(--tinta)}
.secao-blog__acao{text-align:center;margin-top:clamp(2rem,4vw,3rem)}

/* =========================================================
   11. CONTATO
   ========================================================= */
.contato{background:var(--areia)}
.contato::before{content:"";position:absolute;left:0;bottom:4%;width:clamp(120px,15vw,210px);aspect-ratio:60/200;pointer-events:none;opacity:.05;
  background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 200'%3E%3Cpath d='M46 12 L14 100 L46 188' fill='none' stroke='%23404C58' stroke-width='13' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.contato__grid{position:relative;display:grid;grid-template-columns:5fr 6fr;gap:clamp(2.5rem,6vw,6rem);align-items:start}
.contato__intro > p:not(.eyebrow){max-width:44ch}
.contatos{display:flex;flex-wrap:wrap;gap:.6rem 1.6rem;margin-top:1.8rem}
.contatos a{display:inline-flex;align-items:center;gap:.6rem;min-height:44px;color:currentColor;text-decoration:none;font-weight:500;transition:color .2s}
.contatos a:hover{color:var(--ouro-texto)}
.contatos svg{flex:0 0 auto}
.contatos--coluna{flex-direction:column;gap:.2rem;margin-top:0}
.contato__dados{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:1rem 2.2rem;margin:2.2rem 0 0;padding-top:1.6rem;border-top:1px solid var(--linha)}
.contato__dados dt{font-size:.72rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ouro-texto)}
.contato__dados dd{margin:0;font-family:var(--serif);font-size:1.25rem;color:var(--tinta)}

.formulario{background:var(--papel-2);border:1px solid var(--linha);border-radius:var(--raio);padding:clamp(1.6rem,3.5vw,2.6rem);box-shadow:var(--sombra)}
.campo{margin-bottom:1.15rem}
.campo label{display:block;font-size:.78rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--texto);margin-bottom:.45rem}
.campo input,.campo textarea{width:100%;font-family:var(--sans);font-size:1rem;color:var(--tinta);background:var(--branco);border:1px solid var(--linha);border-radius:14px;padding:.9rem 1rem;min-height:52px;transition:border-color .2s,box-shadow .2s}
.campo textarea{resize:vertical;min-height:120px}
.campo input:focus,.campo textarea:focus{outline:none;border-color:var(--ouro);box-shadow:0 0 0 4px rgba(188,156,100,.18)}
.campo.invalido input,.campo.invalido textarea{border-color:var(--erro)}
.campo__erro{display:block;min-height:1.1em;font-size:.85rem;color:var(--erro);margin-top:.3rem}
.formulario__lgpd{font-size:.86rem;color:var(--texto-suave);margin:.4rem 0 1.3rem}
.formulario__lgpd a{color:var(--ouro-texto)}
.formulario__enviar{width:100%}
.formulario__enviar.enviando{opacity:.75;pointer-events:none}

/* =========================================================
   RODAPÉ
   ========================================================= */
.rodape{background:var(--ardosia-3);color:rgba(228,220,204,.82);padding:clamp(4.5rem,8vw,6rem) 0 2rem;font-size:.98rem}
.rodape h1,.rodape h2,.rodape h3,.rodape h4{color:var(--papel-2)}
.rodape__grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:clamp(2rem,5vw,4rem)}
.rodape__marca img{width:150px;height:auto;margin-bottom:1.4rem}
.rodape__marca p{max-width:34ch}
.rodape__titulo{font-size:.74rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--ouro-claro);margin-bottom:1rem}
.rodape__nav li a{display:inline-flex;align-items:center;min-height:44px;min-width:44px;color:rgba(228,220,204,.82);text-decoration:none;transition:color .2s}
.rodape__nav li a:hover,.rodape .contatos a:hover{color:var(--ouro-claro)}
.rodape__base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.6rem 2rem;margin-top:3.5rem;padding-top:1.6rem;border-top:1px solid var(--linha-clara);font-size:.86rem;color:rgba(228,220,204,.65)}
.rodape__base p{margin:0}
.rodape__base a{color:rgba(228,220,204,.85)}

/* =========================================================
   WHATSAPP FLUTUANTE
   ========================================================= */
.whatsapp-flutuante{position:fixed;bottom:2rem;right:2rem;z-index:900;width:60px;height:60px;border-radius:50%;background:#25d366;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 26px -8px rgba(0,0,0,.35);animation:wa-float 3.2s ease-in-out infinite,wa-pulse 2.8s ease-out 1.2s infinite;will-change:transform,box-shadow;transition:transform .25s ease}
.whatsapp-flutuante:hover{animation-play-state:paused;transform:scale(1.13)}
@keyframes wa-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@keyframes wa-pulse{0%{box-shadow:0 10px 26px -8px rgba(0,0,0,.35),0 0 0 0 rgba(37,211,102,.5)}70%{box-shadow:0 10px 26px -8px rgba(0,0,0,.35),0 0 0 20px rgba(37,211,102,0)}100%{box-shadow:0 10px 26px -8px rgba(0,0,0,.35),0 0 0 0 rgba(37,211,102,0)}}

/* =========================================================
   PÁGINAS INTERNAS (política, espera do blog)
   ========================================================= */
.pagina{padding:calc(var(--topo-h) + 4rem) 0 clamp(4rem,8vw,6rem);background:var(--papel-2);position:relative;overflow:hidden}
.pagina::before{content:"";position:absolute;right:-4%;top:12%;width:clamp(140px,18vw,240px);aspect-ratio:60/200;opacity:.07;pointer-events:none;
  background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 200'%3E%3Cpath d='M14 12 L46 100 L14 188' fill='none' stroke='%23BC9C64' stroke-width='13' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.pagina .wrap{position:relative;max-width:860px}
.pagina h1{font-family:var(--serif);font-size:clamp(2.4rem,5vw,3.8rem);line-height:1.05;margin-bottom:1rem}
.pagina h2{font-family:var(--serif);font-size:1.7rem;margin:2.6rem 0 .8rem}
.pagina ul{list-style:disc;padding-left:1.3rem;margin-bottom:1.1em}
.pagina li{margin-bottom:.35rem}
.pagina__voltar{display:inline-flex;margin-top:2.5rem}
.espera{min-height:78vh;display:flex;align-items:center;text-align:center}
.espera .wrap{display:flex;flex-direction:column;align-items:center}
.espera__simbolo{display:flex;align-items:center;gap:1.4rem;margin-bottom:2.2rem}
.espera__simbolo svg{width:30px;height:100px;color:var(--ardosia)}
.espera__simbolo i{width:16px;height:16px;background:var(--ouro);transform:rotate(45deg)}
.espera p{max-width:46ch}
.espera__acoes{display:flex;flex-wrap:wrap;justify-content:center;gap:.9rem;margin-top:2rem}

/* =========================================================
   RESPONSIVO
   ========================================================= */
@media (max-width:1080px){
  .fluxo__lista{grid-template-columns:repeat(2,1fr);row-gap:3rem}
  .fluxo__linha{display:none}
}

@media (max-width:900px){
  :root{--topo-h:72px}
  .hero{padding-top:calc(var(--topo-h) + 1.2rem);padding-bottom:5rem}
  .hero__inner{grid-template-columns:1fr;gap:1.2rem}
  .hero__simbolo{order:-1;padding-block:1.8rem}
  .hero__retrato{width:clamp(170px,44vw,250px)}
  .hero__titulo{max-width:13ch}
  .hero__halo{right:50%;margin-right:calc(min(80vw,420px) / -2);top:4%;width:min(80vw,420px);margin-top:0}
  .para-quem__grid,.sobre__grid,.diferenciais__grid,.duvidas__grid,.contato__grid{grid-template-columns:1fr}
  .para-quem__fixo,.duvidas__intro{position:static}
  .contraste{grid-template-columns:1fr}
  .formatos{grid-template-columns:1fr}
  .formatos__divisa{width:100%;height:16px}
  .formatos__divisa::before{left:8%;right:8%;top:calc(50% - .75px);bottom:auto;width:auto;height:1.5px;background:linear-gradient(90deg,rgba(188,156,100,0),var(--ouro),rgba(188,156,100,0))}
  .sobre__imagens{max-width:460px}
  .diferenciais__foto{max-width:460px}
  .blog-grade{grid-template-columns:1fr;max-width:480px;margin-inline:auto}
  .rodape__grid{grid-template-columns:1fr 1fr}
  .rodape__marca{grid-column:1/-1}
}

@media (max-width:640px){
  body{font-size:1rem}
  .hero__acoes .btn{width:100%}
  .hero__selos{flex-direction:column;gap:.45rem}
  .fluxo{padding-left:3.6rem}
  .fluxo__lista{grid-template-columns:1fr;row-gap:0}
  .fluxo__linha{display:block;top:26px;bottom:26px;left:25px;right:auto;width:2px;height:auto}
  .fluxo__linha span{transform-origin:50% 0;transform:scaleY(var(--prog,1))}
  .fluxo__passo{text-align:left;padding:0 0 2.4rem}
  .fluxo__passo:last-child{padding-bottom:0}
  .fluxo__no{position:absolute;left:-3.6rem;top:-.6rem;margin:0}
  .contraste__lado--sim{padding:2rem 2.4rem}
  .contato__dados{grid-template-columns:1fr 1fr}
  .rodape__grid{grid-template-columns:1fr}
  .rodape__base{flex-direction:column}
  .whatsapp-flutuante{bottom:1.25rem;right:1.25rem;width:56px;height:56px}
  .acordeao__painel{padding-left:0}
  .pagina::before{opacity:.035;right:-14%;top:auto;bottom:4%}
}

/* =========================================================
   MENOS MOVIMENTO
   ========================================================= */
@media (prefers-reduced-motion:reduce){
  .js .animate-on-scroll{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}
  .hero__entra,.hero__retrato img,.hero__par,.hero__ponta{animation:none!important}
  .decor-drift,.hero__rolar span::after,.whatsapp-flutuante{animation:none!important}
  [data-parallax]{--py:0px!important}
  .sobre__sala img{--py:0px!important}
  .js .fio.fio--espera{transform:none;opacity:1}
  .js .acende .acende-palavra{opacity:1}
  .galeria__trilho{--gx:0!important}
  .risco{background-size:100% 1.5px;transition:none}
  .mobile-menu,.menu-backdrop{transition:none!important}
}
