/* Anny Muniz · Método Autêntica
   Paleta tirada do Instagram dela: concreto claro, cacau e terracota.
   Pares de cor conferidos em WCAG AA (ver LEIA-ME.md). */

:root{
  --papel:#F4F1EC;
  --pedra:#E9E3DB;
  --tinta:#2B1D14;
  --cacau:#5E4637;
  --terra:#8E4E2F;
  --terra-escura:#7A4127;
  --linha:rgba(43,29,20,.14);

  --noite:#22170F;
  --noite-2:#2E2018;
  --creme:#F3EBE1;
  --creme-suave:#C9B6A4;
  --areia:#E7B48D;
  --linha-escura:rgba(243,235,225,.16);

  --luz:255,214,170;

  --serif:"Fraunces", Georgia, "Times New Roman", serif;
  --sans:"Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;

  --raio:28px;
  --gutter:clamp(20px, 1rem + 2.4vw, 56px);
  --max:1240px;
  --ease:cubic-bezier(.22,.8,.24,1);
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--papel);color:var(--tinta);
  font-family:var(--sans);font-size:1.0625rem;line-height:1.65;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  overflow-x:clip;
}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
h1,h2,h3{margin:0;font-weight:500}
p{margin:0 0 1em}
p:last-child{margin-bottom:0}
em{font-style:italic}
:focus-visible{outline:3px solid var(--terra);outline-offset:3px;border-radius:6px}
.escuro :focus-visible{outline-color:var(--areia)}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.pular{position:absolute;left:12px;top:-60px;z-index:200;background:var(--tinta);color:var(--papel);padding:10px 16px;border-radius:999px;text-decoration:none}
.pular:focus{top:12px}

.contem{width:100%;max-width:calc(var(--max) + var(--gutter)*2);margin:0 auto;padding:0 var(--gutter)}

.escuro{background:var(--noite);color:var(--creme)}

/* grão de papel/concreto em todas as seções */
.hero::after,.metodo::before,.sobre::before,.duvidas::before,.escuro::before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:0;opacity:.5;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .2 0 0 0 0 .15 0 0 0 0 .1 0 0 0 .07 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
.escuro::before{opacity:.9;mix-blend-mode:screen}
section{position:relative}
section > *{position:relative;z-index:1}

/* ---------- botões ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.6em;
  min-height:52px;padding:.85em 1.6em;border-radius:999px;border:0;
  font:600 1.0625rem/1.2 var(--sans);text-decoration:none;cursor:pointer;
  transition:transform .35s var(--ease),background-color .3s,box-shadow .35s var(--ease),color .3s;
}
.btn:hover{transform:translateY(-2px)}
.btn-primario{background:var(--terra);color:#fff;box-shadow:0 10px 30px -12px rgba(142,78,47,.7)}
.btn-primario:hover{background:var(--terra-escura);box-shadow:0 16px 36px -14px rgba(142,78,47,.8)}
.btn-claro{background:var(--creme);color:var(--noite)}
.btn-claro:hover{background:#fff}
.btn-grande{min-height:60px;padding:1em 2em;font-size:1.125rem}
.ico-wa{width:1.25em;height:1.25em;fill:currentColor;flex:none}

.link-seta{font-weight:600;color:var(--cacau);text-decoration:none;padding:.6em .2em;border-bottom:1px solid currentColor}
.link-seta span{display:inline-block;transition:transform .3s var(--ease)}
.link-seta:hover span{transform:translateY(3px)}

/* ---------- topo ---------- */
.topo{position:fixed;inset:14px 0 auto;z-index:100;pointer-events:none;padding:0 var(--gutter)}
.nav{
  pointer-events:auto;max-width:var(--max);margin:0 auto;
  display:flex;align-items:center;gap:24px;
  padding:8px 8px 8px 24px;border-radius:999px;
  background:rgba(244,241,236,.78);backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);
  border:1px solid rgba(43,29,20,.08);
  box-shadow:0 10px 30px -18px rgba(43,29,20,.35);
  transition:background-color .4s,border-color .4s,color .4s;
}
.topo.no-escuro .nav{background:rgba(34,23,15,.72);border-color:rgba(243,235,225,.12);color:var(--creme)}
.marca{display:flex;align-items:baseline;gap:10px;text-decoration:none;margin-right:auto}
.marca-nome{font-family:var(--serif);font-size:1.4rem;font-weight:500;letter-spacing:-.01em}
.marca-sub{font-size:.875rem;color:var(--cacau);font-weight:500}
.topo.no-escuro .marca-sub{color:var(--creme-suave)}
.nav-links{display:flex;gap:4px;list-style:none;margin:0;padding:0}
.nav-links a{display:block;padding:.55em .9em;border-radius:999px;text-decoration:none;font-weight:500;font-size:.98rem;transition:background-color .25s}
.nav-links a:hover{background:rgba(142,78,47,.1)}
.topo.no-escuro .nav-links a:hover{background:rgba(243,235,225,.1)}
.btn-nav{min-height:46px;padding:.6em 1.2em;font-size:.98rem;background:var(--tinta);color:var(--papel)}
.btn-nav:hover{background:var(--terra)}
.topo.no-escuro .btn-nav{background:var(--creme);color:var(--noite)}
.menu-btn{display:none;width:46px;height:46px;border-radius:50%;border:0;background:var(--tinta);cursor:pointer;position:relative}
.menu-btn span{position:absolute;left:14px;right:14px;height:2px;background:var(--papel);border-radius:2px;transition:transform .35s var(--ease)}
.menu-btn span:first-child{top:18px}.menu-btn span:last-child{top:26px}
.menu-btn[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}
.menu-btn[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}
.topo.no-escuro .menu-btn{background:var(--creme)}
.topo.no-escuro .menu-btn span{background:var(--noite)}
.menu-mobile{
  pointer-events:auto;margin:10px auto 0;max-width:var(--max);
  background:var(--noite);color:var(--creme);border-radius:var(--raio);padding:18px;
  display:flex;flex-direction:column;gap:2px;box-shadow:0 30px 60px -20px rgba(0,0,0,.5);
}
.menu-mobile[hidden]{display:none}
.menu-mobile a:not(.btn){padding:.8em .6em;text-decoration:none;font-family:var(--serif);font-size:1.5rem;border-bottom:1px solid var(--linha-escura)}
.menu-mobile .btn{margin-top:14px}

/* ---------- HERO ---------- */
.hero{
  min-height:100svh;display:flex;align-items:center;overflow:hidden;
  padding:clamp(110px, 12vh, 150px) 0 clamp(48px, 7vh, 90px);
  background:
    radial-gradient(70% 60% at 82% 30%, rgba(var(--luz),.30), transparent 70%),
    radial-gradient(60% 50% at 0% 100%, rgba(201,182,164,.35), transparent 70%),
    var(--papel);
}
.hero-luz{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.folhas{position:absolute;right:-4%;top:-6%;width:min(62vw,900px);height:120%;opacity:.085;mix-blend-mode:multiply}
.ramo{transform-box:fill-box;transform-origin:50% 0}
.ramo-a{animation:balanca 11s ease-in-out infinite alternate}
.ramo-b{animation:balanca 14s ease-in-out -4s infinite alternate-reverse}
@keyframes balanca{from{transform:rotate(-2.2deg) translateX(-6px)}to{transform:rotate(2.4deg) translateX(8px)}}

/* a luz bilateral que atravessa a hero na abertura */
.hero-varredura{
  position:absolute;top:-10%;bottom:-10%;left:0;width:34vw;
  background:radial-gradient(closest-side, rgba(var(--luz),.55), rgba(var(--luz),.18) 55%, transparent);
  filter:blur(10px);opacity:0;transform:translateX(-40vw);
}
.pronto .hero-varredura{animation:varre 2.7s cubic-bezier(.45,0,.55,1) .15s both}
@keyframes varre{
  0%{opacity:0;transform:translateX(-40vw)}
  8%{opacity:1}
  33%{transform:translateX(100vw)}
  66%{transform:translateX(-30vw)}
  92%{opacity:1}
  100%{opacity:0;transform:translateX(100vw)}
}

.hero-grade{
  width:100%;max-width:calc(var(--max) + var(--gutter)*2);margin:0 auto;padding:0 var(--gutter);
  display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:clamp(32px,5vw,90px);align-items:center;
}
.hero-titulo{
  font-family:var(--serif);font-weight:400;font-variation-settings:"opsz" 144;
  font-size:clamp(2.6rem, 1.2rem + 4.1vw, 5.4rem);line-height:1.02;letter-spacing:-.025em;
  margin-bottom:.45em;color:var(--tinta);
}
.hero-titulo .linha{display:block;overflow:hidden;padding:0 .04em .12em;margin:0 -.04em -.12em}
.hero-titulo .linha > span{display:inline-block;transform:translateY(105%)}
.pronto .hero-titulo .linha > span{animation:sobe 1.1s var(--ease) both}
.pronto .hero-titulo .linha:nth-child(1) > span{animation-delay:.35s}
.pronto .hero-titulo .linha:nth-child(2) > span{animation-delay:1.15s}
.pronto .hero-titulo .linha:nth-child(3) > span{animation-delay:1.95s}
@keyframes sobe{to{transform:none}}

/* "peso" começa pesado e perde peso: a fonte variável emagrece */
.peso-palavra{color:var(--terra);font-variation-settings:"opsz" 144,"wght" 800;display:inline-block}
.pronto .peso-palavra{animation:alivia 2.4s var(--ease) 2.9s both}
@keyframes alivia{
  0%{font-variation-settings:"opsz" 144,"wght" 800;transform:translateY(.06em)}
  100%{font-variation-settings:"opsz" 144,"wght" 300;transform:translateY(-.02em)}
}

.hero-lead{font-size:clamp(1.0625rem, .95rem + .35vw, 1.25rem);max-width:34em;color:var(--cacau);margin-bottom:1.8em}
.hero-lead strong{color:var(--tinta);font-weight:600}
.hero-acoes{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin-bottom:1.8em}
.hero-id{font-size:.95rem;color:var(--cacau);font-weight:500;letter-spacing:.01em}
.hero-id span{margin:0 .35em;color:var(--terra)}
.hero-lead,.hero-acoes,.hero-id{opacity:0;transform:translateY(14px)}
.pronto .hero-lead{animation:aparece .9s var(--ease) 2.5s both}
.pronto .hero-acoes{animation:aparece .9s var(--ease) 2.7s both}
.pronto .hero-id{animation:aparece .9s var(--ease) 2.9s both}
@keyframes aparece{to{opacity:1;transform:none}}

/* o espelho */
.espelho-wrap{margin:0;justify-self:center;width:min(100%, 460px, calc((100svh - 290px) * .74))}
.espelho{
  position:relative;aspect-ratio:.74;border-radius:50%;overflow:hidden;isolation:isolate;
  box-shadow:
    0 0 0 7px #3A2A20,
    0 0 0 8px rgba(231,180,141,.55),
    0 40px 80px -30px rgba(43,29,20,.55),
    0 18px 40px -20px rgba(142,78,47,.35);
  transform:scale(.94);opacity:0;
}
.pronto .espelho{animation:espelho-entra 1.4s var(--ease) .05s both}
@keyframes espelho-entra{to{transform:none;opacity:1}}
.espelho img{width:100%;height:100%;object-fit:cover;object-position:50% 18%;filter:blur(16px) grayscale(.75) brightness(.92);transform:scale(1.1)}
.pronto .espelho img{animation:clareia 2.7s cubic-bezier(.45,0,.55,1) .15s both}
@keyframes clareia{
  0%{filter:blur(16px) grayscale(.75) brightness(.92);transform:scale(1.1)}
  33%{filter:blur(8px) grayscale(.45) brightness(.96);transform:scale(1.07)}
  66%{filter:blur(3px) grayscale(.15) brightness(1)}
  100%{filter:blur(0) grayscale(0) brightness(1);transform:scale(1.02)}
}
.espelho-nevoa{position:absolute;inset:0;background:radial-gradient(80% 70% at 50% 40%, rgba(244,241,236,.55), rgba(244,241,236,.25));}
.pronto .espelho-nevoa{animation:nevoa 2.7s cubic-bezier(.45,0,.55,1) .15s both}
@keyframes nevoa{0%{opacity:1}33%{opacity:.6}66%{opacity:.25}100%{opacity:0}}
.espelho-luz{
  position:absolute;top:-10%;bottom:-10%;left:0;width:55%;
  background:linear-gradient(90deg, transparent, rgba(var(--luz),.65), rgba(255,255,255,.55), rgba(var(--luz),.65), transparent);
  mix-blend-mode:soft-light;filter:blur(6px);opacity:0;transform:translateX(-110%);
}
.pronto .espelho-luz{animation:luz-espelho 2.7s cubic-bezier(.45,0,.55,1) .15s both}
@keyframes luz-espelho{
  0%{opacity:0;transform:translateX(-110%)}
  6%{opacity:1}
  33%{transform:translateX(190%)}
  66%{transform:translateX(-110%)}
  94%{opacity:1}
  100%{opacity:0;transform:translateX(190%)}
}
/* reflexo de vidro que passa devagar depois da abertura */
.espelho-brilho{
  position:absolute;inset:-20%;
  background:linear-gradient(115deg, transparent 40%, rgba(255,255,255,.28) 48%, rgba(255,255,255,.05) 53%, transparent 60%);
  transform:translateX(-60%);
}
.pronto .espelho-brilho{animation:brilho 9s ease-in-out 4s infinite}
@keyframes brilho{0%,70%{transform:translateX(-60%)}100%{transform:translateX(60%)}}

.placa{display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:30px;opacity:0}
.pronto .placa{animation:aparece 1s var(--ease) 2.9s both}
.placa-nome{font-family:var(--serif);font-size:1.35rem;color:var(--cacau)}
.placa-nome em{color:var(--terra)}
.placa-trilho{position:relative;width:150px;height:2px;background:linear-gradient(90deg,transparent,rgba(142,78,47,.4),transparent);border-radius:2px}
.placa-ponto{position:absolute;top:50%;left:0;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:var(--terra);box-shadow:0 0 0 4px rgba(142,78,47,.15),0 0 18px 4px rgba(var(--luz),.9);animation:bilateral 2.4s ease-in-out infinite alternate}
@keyframes bilateral{from{left:0}to{left:100%}}

/* ---------- O PESO (palco fixo ao rolar) ---------- */
.peso{height:330vh}
.peso-palco{
  position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;
  max-width:calc(var(--max) + var(--gutter)*2);margin:0 auto;padding:0 var(--gutter);gap:clamp(24px,4vw,70px);
}
.peso-textos{position:relative;display:grid}
.passo{grid-area:1/1;opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease);visibility:hidden}
.passo.ativo{opacity:1;transform:none;visibility:visible}
.peso h2,.passo-grande{font-family:var(--serif);font-weight:400;font-size:clamp(2rem, 1.1rem + 2.4vw, 3.4rem);line-height:1.08;letter-spacing:-.02em;margin-bottom:.6em}
.passo-grande em{color:var(--areia)}
.passo p:not(.passo-grande){color:var(--creme-suave);font-size:1.125rem;max-width:32em}
.passo .btn{margin-top:1.2em}

.peso-cena{position:relative;height:min(78vh,640px)}
.pw{
  position:absolute;left:var(--x);top:var(--y);white-space:nowrap;
  font-family:var(--serif);font-size:clamp(1.3rem, .8rem + 1.6vw, 2.4rem);line-height:1;
  color:var(--creme);
  --l:0;
  font-variation-settings:"opsz" 144,"wght" calc(800 - var(--l)*520);
  opacity:calc(1 - var(--l)*.92);
  filter:blur(calc(var(--l)*5px));
  transform:translateY(calc(var(--l)*var(--sobe,-260px) + var(--cai,0px))) rotate(calc(var(--r)*(1 - var(--l))));
  will-change:transform,opacity,filter;
}
.peso-luz{
  position:absolute;top:-15%;bottom:-15%;left:0;width:180px;margin-left:-90px;
  background:radial-gradient(closest-side, rgba(var(--luz),.5), rgba(var(--luz),.12) 60%, transparent);
  filter:blur(8px);opacity:0;left:var(--lx,50%);
}
.peso-alivio{
  position:absolute;left:50%;top:38%;transform:translate(-50%,-50%) scale(calc(.9 + var(--a,0)*.1));
  font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(3rem, 2rem + 4vw, 6rem);
  color:var(--areia);opacity:var(--a,0);text-shadow:0 0 40px rgba(var(--luz),.5);
}

/* ---------- MÉTODO ---------- */
.metodo{padding:clamp(90px,12vw,170px) 0 clamp(70px,9vw,130px);background:var(--papel);overflow:hidden}
.metodo-topo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,90px);align-items:end;margin-bottom:clamp(50px,7vw,100px)}
.metodo-titulo{
  font-family:var(--serif);font-weight:400;font-variation-settings:"opsz" 144;
  font-size:clamp(3.4rem, 1.4rem + 6.6vw, 8.4rem);line-height:.92;letter-spacing:-.035em;color:var(--tinta);
}
.metodo-titulo em{display:block;color:var(--terra);font-weight:300;padding-left:.5em}
.destaque{font-family:var(--serif);font-size:clamp(1.35rem, 1.05rem + .8vw, 1.8rem);line-height:1.3;color:var(--tinta);margin-bottom:.8em}
.metodo-intro p:not(.destaque){color:var(--cacau);max-width:34em}

.orbita-grade{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(30px,5vw,90px);align-items:start}
.orbita-wrap{position:sticky;top:110px}
.orbita{width:100%;max-width:560px;display:block;margin:0 auto;overflow:visible}
.anel{fill:none;stroke:rgba(142,78,47,.28);stroke-width:1.2;stroke-dasharray:1700;stroke-dashoffset:1700;transition:stroke-dashoffset 2.2s var(--ease)}
.anel-3{stroke-dasharray:3 7;stroke-dashoffset:0;opacity:0;transition:opacity 1.2s 1s}
.visivel .anel{stroke-dashoffset:0}
.visivel .anel-3{opacity:1}
.anel-2{transition-delay:.25s}
.nucleo{fill:var(--terra);transform-origin:280px 280px;transform:scale(0);transition:transform 1s var(--ease) .2s}
.nucleo-aura{fill:rgba(var(--luz),.45);transform-origin:280px 280px;animation:respira 5s ease-in-out infinite}
@keyframes respira{0%,100%{transform:scale(.92);opacity:.6}50%{transform:scale(1.12);opacity:1}}
.visivel .nucleo{transform:none}
.nucleo-txt{fill:#fff;font:600 17px var(--sans);opacity:0;transition:opacity .6s .9s}
.visivel .nucleo-txt{opacity:1}
.anel-rotulo{fill:var(--cacau);font:500 15px var(--sans);letter-spacing:.02em;opacity:0;transition:opacity .8s 1.4s}
.visivel .anel-rotulo{opacity:1}
.cometa{transform-origin:280px 280px}
.cometa circle{fill:var(--terra);filter:drop-shadow(0 0 6px rgba(var(--luz),1))}
.visivel .cometa-1{animation:gira 14s linear infinite}
.visivel .cometa-2{animation:gira 26s linear infinite reverse}
@keyframes gira{to{transform:rotate(360deg)}}
.no{transform-box:fill-box;transform-origin:center;transform:scale(0);transition:transform .7s var(--ease)}
.no circle{fill:var(--papel);stroke:var(--terra);stroke-width:1.5;transition:fill .3s,r .3s}
.no text{fill:var(--terra);font:700 12.5px var(--sans);transition:fill .3s}
.visivel .no{transform:none}
.visivel .no[data-i="2"]{transition-delay:1s}.visivel .no[data-i="3"]{transition-delay:1.1s}.visivel .no[data-i="4"]{transition-delay:1.2s}
.visivel .no[data-i="5"]{transition-delay:1.35s}.visivel .no[data-i="6"]{transition-delay:1.45s}.visivel .no[data-i="7"]{transition-delay:1.55s}.visivel .no[data-i="8"]{transition-delay:1.65s}
.no.ativo circle{fill:var(--terra)}
.no.ativo text{fill:#fff}
.visivel .no.ativo{transform:scale(1.25)}
.foco-nucleo .nucleo{fill:var(--terra-escura)}
.foco-nucleo .nucleo-aura{fill:rgba(var(--luz),.85)}

.pilares{list-style:none;margin:0;padding:0;border-top:1px solid var(--linha)}
.pilar{
  display:grid;grid-template-columns:52px minmax(0,1fr);gap:16px;padding:22px 18px 22px 8px;
  border-bottom:1px solid var(--linha);cursor:default;outline:none;border-radius:4px;
  transition:background-color .35s,padding .35s var(--ease);
}
.pilar-n{font-family:var(--serif);font-size:1.15rem;color:var(--terra);padding-top:2px;font-variation-settings:"opsz" 30}
.pilar h3{font-family:var(--sans);font-size:1.18rem;font-weight:600;line-height:1.3;margin-bottom:.3em;color:var(--tinta)}
.pilar p{color:var(--cacau);font-size:1.02rem}
.pilar.ativo{background:linear-gradient(90deg, rgba(var(--luz),.32), rgba(var(--luz),0));padding-left:18px}
.pilar:focus-visible{box-shadow:inset 0 0 0 2px var(--terra)}

.continua{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:clamp(30px,6vw,110px);align-items:center;margin-top:clamp(80px,10vw,150px)}
.continua-foto{margin:0;border-radius:999px 999px var(--raio) var(--raio);overflow:hidden;aspect-ratio:.8;box-shadow:0 40px 80px -40px rgba(43,29,20,.5)}
.continua-foto img{width:100%;height:100%;object-fit:cover;object-position:40% 30%}
.citacao{font-family:var(--serif);font-weight:400;font-size:clamp(2rem, 1.2rem + 2.2vw, 3.2rem);line-height:1.1;letter-spacing:-.02em;color:var(--tinta);margin-bottom:.7em}
.continua-texto p:not(.citacao){color:var(--cacau);max-width:32em;font-size:1.125rem}
.continua-texto .btn{margin-top:1.6em}

/* ---------- PARA QUEM ---------- */
.para-quem{padding:clamp(90px,11vw,160px) 0 0;overflow:hidden}
.pq-grade{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(30px,6vw,110px);align-items:center}
.para-quem h2{font-family:var(--serif);font-weight:400;font-size:clamp(2.2rem, 1.2rem + 2.6vw, 3.6rem);line-height:1.05;letter-spacing:-.02em;margin-bottom:.9em}
.pq-lista{list-style:none;margin:0;padding:0}
.pq-lista li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;align-items:baseline;padding:16px 0;border-bottom:1px solid var(--linha-escura)}
.pq-n{font-family:var(--serif);font-style:italic;font-size:1.5rem;color:var(--areia)}
.pq-lista p{font-size:1.2rem;line-height:1.45}
.pq-foto{margin:0}
.oval{border-radius:50%;overflow:hidden;aspect-ratio:.76;box-shadow:0 0 0 1px rgba(231,180,141,.45),0 0 0 12px rgba(231,180,141,.06)}
.oval img{width:100%;height:100%;object-fit:cover}

.trata{padding:clamp(70px,9vw,120px) 0 clamp(80px,10vw,140px)}
.trata-titulo{font-family:var(--sans);font-size:1.125rem;font-weight:600;color:var(--creme-suave);margin-bottom:26px}
.letreiro{overflow:hidden;border-top:1px solid var(--linha-escura);border-bottom:1px solid var(--linha-escura);padding:26px 0;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.letreiro-trilho{display:flex;align-items:center;gap:34px;width:max-content;animation:letreiro 60s linear infinite}
.letreiro-trilho span{font-family:var(--serif);font-size:clamp(1.6rem, 1rem + 1.6vw, 2.6rem);font-weight:300;white-space:nowrap}
.letreiro-trilho span:nth-of-type(even){font-style:italic;color:var(--areia)}
.letreiro-trilho i{width:9px;height:9px;border-radius:50%;background:var(--areia);flex:none;opacity:.7}
.letreiro:hover .letreiro-trilho{animation-play-state:paused}
@keyframes letreiro{to{transform:translateX(-50%)}}

/* ---------- CAMINHOS ---------- */
.caminhos{padding:clamp(90px,11vw,150px) 0;background:var(--pedra)}
.cam-titulo{font-family:var(--serif);font-weight:400;font-size:clamp(2.2rem, 1.2rem + 2.6vw, 3.6rem);line-height:1.05;letter-spacing:-.02em;margin-bottom:clamp(40px,5vw,70px);max-width:14em}
.cam-titulo em{color:var(--terra)}
.cam-grade{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--linha)}
.cam{padding:30px 26px 10px 0;border-right:1px solid var(--linha);margin-right:26px}
.cam:last-child{border-right:0;margin-right:0}
.cam-n{display:block;font-family:var(--serif);font-style:italic;font-size:2.6rem;line-height:1;color:var(--terra);margin-bottom:24px;font-weight:300}
.cam h3{font-size:1.22rem;font-weight:600;line-height:1.3;margin-bottom:.45em;color:var(--tinta)}
.cam p{color:var(--cacau)}

/* ---------- EMDR ---------- */
.emdr{padding:clamp(90px,11vw,160px) 0;overflow:hidden}
.emdr-grade{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(30px,6vw,110px);align-items:center}
.emdr h2{font-family:var(--serif);font-weight:400;font-size:clamp(2.1rem, 1.2rem + 2.3vw, 3.4rem);line-height:1.06;letter-spacing:-.02em;margin-bottom:.8em}
.emdr-texto p{color:var(--creme-suave);font-size:1.1rem}
.emdr-texto strong{color:var(--creme);font-weight:600}
.emdr-visual{
  position:relative;border-radius:var(--raio);padding:clamp(40px,5vw,70px) clamp(24px,4vw,50px) clamp(30px,4vw,44px);
  background:radial-gradient(90% 80% at 50% 30%, rgba(var(--luz),.10), transparent 70%), var(--noite-2);
  border:1px solid var(--linha-escura);text-align:center;
}
.emdr-lembranca{height:clamp(110px,14vw,170px);display:grid;place-items:center}
.emdr-lembranca span{
  font-family:var(--serif);font-size:clamp(2.2rem, 1.2rem + 3vw, 4rem);line-height:1;color:var(--creme);
  font-variation-settings:"opsz" 144,"wght" 800;filter:blur(3px);
}
.visivel .emdr-lembranca span{animation:processa 9s ease-in-out infinite}
@keyframes processa{
  0%,8%{font-variation-settings:"opsz" 144,"wght" 800;filter:blur(3px);opacity:1;letter-spacing:-.03em}
  60%,86%{font-variation-settings:"opsz" 144,"wght" 300;filter:blur(0);opacity:.85;letter-spacing:.01em}
  100%{font-variation-settings:"opsz" 144,"wght" 800;filter:blur(3px);opacity:1;letter-spacing:-.03em}
}
.emdr-trilho{position:relative;height:2px;margin:28px 8% 30px;background:linear-gradient(90deg,transparent,rgba(231,180,141,.45),transparent)}
.emdr-ponto{position:absolute;top:50%;left:0;width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:50%;background:var(--areia);box-shadow:0 0 0 6px rgba(231,180,141,.14),0 0 30px 8px rgba(var(--luz),.7)}
.visivel .emdr-ponto{animation:bilateral 1.1s ease-in-out infinite alternate}
.emdr-legenda{color:var(--creme-suave);font-size:1rem;max-width:26em;margin:0 auto}

/* ---------- SOBRE ---------- */
.sobre{padding:clamp(90px,11vw,160px) 0;background:var(--papel)}
.sobre-grade{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(30px,6vw,110px);align-items:center}
.sobre-foto{margin:0}
.arco{border-radius:999px 999px var(--raio) var(--raio);overflow:hidden;aspect-ratio:.8;box-shadow:0 40px 80px -40px rgba(43,29,20,.45)}
.arco img{width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.sobre h2{font-family:var(--serif);font-weight:400;font-size:clamp(2.4rem, 1.3rem + 2.8vw, 4rem);line-height:1.02;letter-spacing:-.025em;margin-bottom:.6em}
.sobre h2 em{color:var(--terra)}
.sobre-texto p:not(.destaque){color:var(--cacau);font-size:1.1rem;max-width:36em}
.sobre-dados{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:12px 40px;margin:32px 0 0;padding-top:26px;border-top:1px solid var(--linha)}
.sobre-dados dt{font-size:.9rem;color:var(--cacau);font-weight:500}
.sobre-dados dd{margin:0;font-weight:600;color:var(--tinta)}

/* ---------- COMEÇA ---------- */
.comeca{padding:clamp(70px,8vw,120px) 0;background:var(--pedra)}
.comeca-titulo{font-family:var(--serif);font-weight:400;font-size:clamp(2.2rem, 1.2rem + 2.6vw, 3.6rem);line-height:1.05;letter-spacing:-.02em;margin-bottom:clamp(36px,5vw,60px)}
.passos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.4vw,30px);counter-reset:p}
.passos li{position:relative;background:var(--papel);border-radius:var(--raio);padding:34px 30px 32px}
.passos-n{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--terra);color:#fff;font-family:var(--serif);font-size:1.5rem;margin-bottom:22px}
.passos h3{font-size:1.25rem;font-weight:600;margin-bottom:.4em;line-height:1.3}
.passos p{color:var(--cacau)}
.passos li:not(:last-child)::after{
  content:"";position:absolute;top:60px;right:calc(-1 * clamp(18px,2.4vw,30px));width:clamp(18px,2.4vw,30px);height:2px;
  background:var(--terra);opacity:.35;
}

/* ---------- DÚVIDAS ---------- */
.duvidas{padding:clamp(80px,10vw,140px) 0;background:var(--papel)}
.duvidas-grade{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:clamp(30px,6vw,110px);align-items:start}
.duvidas h2{font-family:var(--serif);font-weight:400;font-size:clamp(2.2rem, 1.2rem + 2.6vw, 3.6rem);line-height:1.05;letter-spacing:-.02em;position:sticky;top:120px}
.faq{border-top:1px solid var(--linha)}
.faq details{border-bottom:1px solid var(--linha)}
.faq summary{
  list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;
  padding:24px 4px;font-weight:600;font-size:1.15rem;line-height:1.4;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{
  content:"";flex:none;width:34px;height:34px;border-radius:50%;
  background:var(--pedra) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238E4E2F' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center/18px no-repeat;
  transition:transform .35s var(--ease),background-color .3s;
}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq summary:hover::after{background-color:rgba(231,180,141,.55)}
.faq details p{padding:0 50px 26px 4px;color:var(--cacau);max-width:42em}

/* ---------- FINAL ---------- */
.final{padding:clamp(100px,12vw,180px) 0;overflow:hidden}
.final-luz{
  position:absolute;inset:auto 0 0 0;height:70%;z-index:0;
  background:radial-gradient(50% 60% at var(--fx,50%) 100%, rgba(var(--luz),.22), transparent 70%);
}
.visivel .final-luz{animation:final-luz 7s ease-in-out infinite alternate}
@property --fx{syntax:"<percentage>";inherits:false;initial-value:50%}
@keyframes final-luz{from{--fx:20%}to{--fx:80%}}
.final-grade{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(30px,6vw,110px);align-items:center}
.final h2{font-family:var(--serif);font-weight:400;font-size:clamp(2.6rem, 1.3rem + 3.6vw, 5rem);line-height:1.02;letter-spacing:-.025em;margin-bottom:.6em}
.final h2 em{color:var(--areia);font-weight:300}
.final-texto p{color:var(--creme-suave);font-size:1.15rem;max-width:32em}
.final-texto .btn{margin-top:1.6em}
.final-foto{margin:0;justify-self:center;width:min(100%,400px)}

/* ---------- RODAPÉ ---------- */
.rodape{position:relative;padding:60px 0 calc(30px + env(safe-area-inset-bottom));border-top:1px solid var(--linha-escura)}
.rodape-grade{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:30px;margin-bottom:40px}
.rodape p{color:var(--creme-suave);font-size:1rem}
.rodape a{color:var(--creme);text-underline-offset:3px}
.rodape-nome{font-family:var(--serif);font-size:1.8rem;color:var(--creme)!important;margin-bottom:.3em}
.rodape-tit{font-weight:600;color:var(--creme)!important;margin-bottom:.4em}
.rodape-fim{font-size:.9rem!important;padding-top:24px;border-top:1px solid var(--linha-escura)}

/* barra fixa do celular */
.barra-wa{
  position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:90;
  display:none;align-items:center;justify-content:center;gap:.6em;min-height:54px;border-radius:999px;
  background:var(--terra);color:#fff;font-weight:600;text-decoration:none;
  box-shadow:0 14px 34px -12px rgba(43,29,20,.6);
  transform:translateY(140%);transition:transform .45s var(--ease);
}
.barra-wa.mostra{transform:none}

/* revelação ao rolar */
.revela{opacity:0;transform:translateY(26px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.revela.visivel{opacity:1;transform:none}

/* ---------- responsivo ---------- */
@media (max-width:1080px){
  .nav-links{display:none}
  .menu-btn{display:block}
  .btn-nav span{display:none}
  .btn-nav{width:46px;padding:0}
  .cam-grade{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cam{margin-right:0;padding-right:26px;border-bottom:1px solid var(--linha);padding-bottom:26px}
  .cam:nth-child(2n){border-right:0;padding-left:26px}
  .cam:nth-child(odd){padding-left:0}
}
@media (max-width:860px){
  body{font-size:1.0625rem}
  .hero{min-height:auto;padding-top:96px}
  .hero-grade{grid-template-columns:1fr;gap:34px}
  .espelho-wrap{order:-1;width:min(50vw,250px)}
  .placa{margin-top:20px;gap:10px}
  .hero-titulo{font-size:clamp(2.4rem, 1.4rem + 5.2vw, 3.6rem)}
  .folhas{width:150vw;left:-25vw;right:auto}

  .peso{height:300vh}
  .peso-palco{grid-template-columns:1fr;grid-template-rows:auto 1fr;align-content:center;padding-top:90px;padding-bottom:30px;gap:10px}
  .peso-cena{height:34vh;order:-1}
  .pw{left:var(--mx);top:var(--my);font-size:1.2rem;--sobe:-90px}
  .peso-alivio{font-size:3rem}
  .anel-rotulo{font-size:22px}
  .peso h2,.passo-grande{font-size:clamp(1.6rem, 1.1rem + 2.6vw, 2.3rem)}
  .passo p:not(.passo-grande){font-size:1rem;line-height:1.55}

  .metodo-topo,.orbita-grade,.continua,.pq-grade,.emdr-grade,.sobre-grade,.duvidas-grade,.final-grade{grid-template-columns:1fr}
  .orbita-wrap{position:relative;top:0;max-width:420px;margin:0 auto}
  .metodo-titulo em{padding-left:.3em}
  .continua-foto{max-width:380px;width:100%;margin:0 auto}
  .pq-foto{max-width:240px;margin:0 auto;order:-1}
  .sobre-foto{max-width:380px;width:100%;margin:0 auto}
  .sobre-dados{grid-template-columns:1fr 1fr}
  .duvidas h2{position:static}
  .final-foto{width:min(70vw,300px);order:-1}
  .passos{grid-template-columns:1fr}
  .passos li:not(:last-child)::after{top:auto;bottom:-18px;left:55px;right:auto;width:2px;height:18px}
  .rodape-grade{grid-template-columns:1fr}
  .barra-wa{display:flex}
  .rodape{padding-bottom:calc(100px + env(safe-area-inset-bottom))}
}
@media (max-width:560px){
  .cam-grade{grid-template-columns:1fr}
  .cam,.cam:nth-child(2n),.cam:nth-child(odd){border-right:0;padding:24px 0}
  .marca-sub{display:none}
  .nav{padding-left:18px;gap:10px}
  .pilar{grid-template-columns:40px minmax(0,1fr);gap:10px;padding-right:6px}
  .faq details p{padding-right:4px}
  .hero-id span{margin:0 .2em}
}

/* sem JS ou com movimento reduzido: tudo visível, sem coreografia */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .hero-titulo .linha > span,.hero-lead,.hero-acoes,.hero-id,.placa,.espelho{transform:none;opacity:1}
  .espelho img{filter:none;transform:none}
  .espelho-nevoa,.espelho-luz,.hero-varredura{display:none}
  .peso-palavra{font-variation-settings:"opsz" 144,"wght" 300}
  .peso{height:auto}
  .peso-palco{position:relative;height:auto;padding-top:100px;padding-bottom:100px}
  .passo{grid-area:auto;opacity:1;transform:none;visibility:visible;margin-bottom:40px}
  .peso-cena{display:none}
  .anel{stroke-dashoffset:0}.anel-3{opacity:1}
  .nucleo,.no{transform:none}.nucleo-txt,.anel-rotulo{opacity:1}
  .emdr-lembranca span{filter:none;font-variation-settings:"opsz" 144,"wght" 400}
  .revela{opacity:1;transform:none}
  .letreiro-trilho{flex-wrap:wrap;width:auto;justify-content:center;row-gap:14px;padding:0 20px}
}
html:not(.js) .hero-titulo .linha > span,html:not(.js) .hero-lead,html:not(.js) .hero-acoes,html:not(.js) .hero-id,html:not(.js) .placa,html:not(.js) .espelho{transform:none;opacity:1}
html:not(.js) .espelho img{filter:none;transform:none}
html:not(.js) .espelho-nevoa{display:none}
html:not(.js) .revela{opacity:1;transform:none}
html:not(.js) .peso{height:auto}
html:not(.js) .peso-palco{position:relative;height:auto;padding-top:100px;padding-bottom:100px}
html:not(.js) .passo{grid-area:auto;opacity:1;transform:none;visibility:visible;margin-bottom:40px}
html:not(.js) .peso-cena{display:none}
