/* ============ TOKENS ============ */
:root{
  --preto:#131009;
  --preto-2:#1C1710;
  --linha:rgba(232,206,150,.16);
  --ouro:#C9A25E;
  --ouro-claro:#E8CE96;
  --marfim:#F4EEE1;
  --marfim-2:#EDE5D2;
  --tinta:#191510;
  --grafite:#57503F;
  --couro:#8B4A2B;
  --txt-2:rgba(244,238,225,.72);

  --ff-display:"Bodoni Moda", Didot, "Times New Roman", serif;
  --ff-body:"Familjen Grotesk", Helvetica, Arial, sans-serif;

  --max:1200px;
  --gutter:clamp(20px,4vw,40px);
  --sec-y:clamp(84px,11vw,150px);
  --ease:cubic-bezier(.19,1,.22,1);

  --z-marquee:1; --z-content:2; --z-sticky:50; --z-cta:60; --z-progress:70;
}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0; background:var(--preto); color:var(--marfim);
  font-family:var(--ff-body); font-size:1rem; line-height:1.7;
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
img{max-width:100%; display:block;}
a{color:inherit;}
:focus-visible{outline:2px solid var(--ouro); outline-offset:3px;}
::selection{background:var(--ouro); color:var(--preto);}

.wrap{max-width:var(--max); margin:0 auto; padding:0 var(--gutter);}
.sec{padding:var(--sec-y) 0; position:relative;}

h1,h2{font-family:var(--ff-display); font-weight:400; letter-spacing:-0.015em; margin:0; text-wrap:balance;}
h1{font-size:clamp(2.7rem,6.4vw,5.4rem); line-height:1.02;}
h2{font-size:clamp(2.05rem,4.2vw,3.4rem); line-height:1.08;}
h3{font-family:var(--ff-body); font-weight:600; font-size:clamp(1.05rem,1.5vw,1.2rem); line-height:1.3; margin:0; letter-spacing:0;}
p{margin:0 0 1em;}
.lead{font-size:clamp(1.05rem,1.35vw,1.28rem); line-height:1.65;}
.gold-i{font-family:var(--ff-display); font-style:italic; font-weight:400; color:var(--ouro-claro);}

/* ============ ETIQUETA (hang tag, sistema de marca) ============ */
.etq{
  display:inline-flex; align-items:center; gap:12px;
  font-size:.7rem; font-weight:600; text-transform:uppercase; letter-spacing:.17em;
  color:var(--ouro); border:1px solid var(--linha);
  padding:9px 18px 9px 12px; margin-bottom:30px;
  position:relative; background:rgba(232,206,150,.03);
}
.etq::before{
  content:""; width:8px; height:8px; border-radius:999px; flex:none;
  border:1.5px solid var(--ouro); opacity:.85;
}
.etq::after{ /* barbante da etiqueta */
  content:""; position:absolute; left:-26px; top:50%; width:26px; height:1px;
  background:linear-gradient(90deg, transparent, var(--ouro)); opacity:.5;
}
.sec--claro .etq{color:var(--couro); border-color:rgba(139,74,43,.32); background:rgba(139,74,43,.05);}
.sec--claro .etq::before{border-color:var(--couro);}
.sec--claro .etq::after{background:linear-gradient(90deg, transparent, var(--couro));}

/* ============ BOTÕES (lampejo no hover) ============ */
.btn{
  display:inline-block; font-family:var(--ff-body); font-weight:600; font-size:.88rem;
  text-transform:uppercase; letter-spacing:.08em; text-decoration:none; text-align:center;
  padding:19px 38px; border-radius:999px; border:1px solid transparent;
  position:relative; overflow:hidden; cursor:pointer;
  transition:background-color .35s var(--ease), color .35s var(--ease),
             border-color .35s var(--ease), transform .35s var(--ease), box-shadow .35s var(--ease);
}
.btn::before{ /* lampejo */
  content:""; position:absolute; top:-20%; bottom:-20%; left:-80%; width:45%;
  background:linear-gradient(105deg, transparent, rgba(255,255,255,.32), transparent);
  transform:skewX(-18deg); transition:left .7s var(--ease); pointer-events:none;
}
.btn:hover::before{left:135%;}
.btn--ouro{background:var(--ouro); color:#181305;}
.btn--ouro:hover{background:var(--ouro-claro); transform:translateY(-2px); box-shadow:0 14px 34px -12px rgba(201,162,94,.45);}
.btn--linha{background:transparent; color:var(--marfim); border-color:rgba(244,238,225,.35);}
.btn--linha:hover{border-color:var(--ouro); color:var(--ouro-claro); transform:translateY(-2px);}
/* variante sobre o interlúdio claro */
.sec--claro .btn--linha{color:var(--tinta); border-color:rgba(25,21,16,.3);}
.sec--claro .btn--linha:hover{border-color:var(--couro); color:var(--couro);}
.sec--claro .btn--linha::before{background:linear-gradient(105deg, transparent, rgba(139,74,43,.16), transparent);}
.btn-row{display:flex; flex-wrap:wrap; gap:16px; align-items:center;}
.micro{font-size:.72rem; font-weight:500; letter-spacing:.13em; text-transform:uppercase; color:rgba(244,238,225,.5); margin-top:22px;}

/* ============ BARRA DE PROGRESSO ============ */
.progress{
  position:fixed; top:0; left:0; height:2px; width:100%; z-index:var(--z-progress);
  pointer-events:none;
}
.progress__fill{
  height:100%; width:100%;
  background:linear-gradient(90deg, var(--couro), var(--ouro) 55%, var(--ouro-claro));
  transform-origin:0 50%; transform:scaleX(0);
}

/* ============ HEADER ============ */
.hdr{
  position:fixed; inset:0 0 auto 0; z-index:var(--z-sticky);
  display:flex; align-items:center; justify-content:space-between;
  gap:20px; padding:22px var(--gutter);
  color:var(--marfim);
  transition:background-color .4s var(--ease), padding .4s var(--ease), box-shadow .4s var(--ease);
}
.hdr.is-stuck{background:rgba(19,16,9,.92); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); padding:13px var(--gutter); box-shadow:0 1px 0 var(--linha);}
.hdr__logo{font-family:var(--ff-display); font-size:1.2rem; letter-spacing:.03em; text-decoration:none;}
.hdr__logo em{font-style:italic; color:var(--ouro);}
.hdr__nav{display:flex; gap:30px; align-items:center;}
.hdr__nav a{font-size:.85rem; font-weight:500; text-decoration:none; opacity:.8; transition:opacity .3s, color .3s;}
.hdr__nav a:hover{opacity:1; color:var(--ouro-claro);}
.hdr .btn{padding:12px 24px; font-size:.72rem;}
@media (max-width:900px){ .hdr__nav{display:none;} }
@media (max-width:520px){ .hdr .btn{display:none;} }

/* ============ HERO ============ */
.hero{
  min-height:100svh; display:grid; grid-template-columns:1.04fr .96fr; align-items:center;
  position:relative; overflow:hidden;
}
.hero__text{padding:160px var(--gutter) 100px clamp(24px,7vw,110px); max-width:780px; position:relative; z-index:var(--z-content);}
.hero h1{margin-bottom:26px;}
.hero .hl{display:block; overflow:hidden; padding-bottom:.1em; margin-bottom:-.1em;}
.hero .hl > span{display:block; will-change:transform;}
.js .hero .hl > span{transform:translateY(115%); animation:hl-up 1.1s var(--ease) forwards;}
.js .hero .hl:nth-child(1) > span{animation-delay:.15s;}
.js .hero .hl:nth-child(2) > span{animation-delay:.28s;}
.js .hero .hl:nth-child(3) > span{animation-delay:.41s;}
@keyframes hl-up{to{transform:translateY(0);}}
.js .hero__tag{opacity:0; animation:fade-up .9s var(--ease) .05s forwards;}
.js .hero__fade{opacity:0; animation:fade-up 1s var(--ease) .75s forwards;}
@keyframes fade-up{from{opacity:0; transform:translateY(14px);} to{opacity:1; transform:translateY(0);}}
.hero__sub{max-width:36ch; color:var(--txt-2); margin-bottom:36px;}
.hero__sig{
  font-size:.72rem; font-weight:500; letter-spacing:.15em; text-transform:uppercase;
  color:rgba(244,238,225,.55); margin:0 0 34px; padding-top:22px;
  border-top:1px solid var(--linha); display:inline-block;
}
.hero__media{position:relative; align-self:stretch; overflow:hidden;}
.hero__media img{
  width:100%; height:100%; object-fit:cover; object-position:50% 20%;
  transform-origin:50% 30%;
}
.js .hero__media img{animation:kenburns 22s var(--ease) forwards;}
@keyframes kenburns{from{transform:scale(1.14) translateY(1.5%);} to{transform:scale(1.02) translateY(0);}}
.hero__media::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(90deg, var(--preto) 0%, rgba(19,16,9,.5) 24%, rgba(19,16,9,0) 62%),
             linear-gradient(0deg, rgba(19,16,9,.55) 0%, rgba(19,16,9,0) 30%);
}
@media (max-width:900px){
  .hero{grid-template-columns:1fr; min-height:auto;}
  .hero__media{order:-1; height:62vh;}
  .hero__media::after{background:linear-gradient(180deg, rgba(19,16,9,.6) 0%, rgba(19,16,9,0) 40%, var(--preto) 100%);}
  .hero__text{padding:26px var(--gutter) 70px;}
  .hero__sub{max-width:none;}
}

/* ============ PROVA (contadores) ============ */
.prova{padding:0 0 clamp(60px,8vw,100px);}
.prova__grid{display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--linha);}
.prova__item{padding:44px 28px 10px; border-right:1px solid var(--linha);}
.prova__item:last-child{border-right:0;}
.prova__num{
  font-family:var(--ff-display); font-weight:400; font-variant-numeric:tabular-nums;
  font-size:clamp(2.6rem,4.6vw,4rem); line-height:1; color:var(--ouro-claro);
}
.prova__num sup{font-size:.5em; color:var(--ouro); vertical-align:.5em;}
.prova__lbl{font-size:.9rem; color:var(--txt-2); margin-top:12px; max-width:16ch;}
@media (max-width:767px){
  .prova__grid{grid-template-columns:1fr 1fr;}
  .prova__item{padding:26px 18px 20px; border-bottom:1px solid var(--linha);}
  .prova__item:nth-child(2n){border-right:0;}
  .prova__item:nth-child(3),.prova__item:nth-child(4){border-bottom:0;}
}

/* ============ MARQUEE ============ */
.marquee{
  position:relative; z-index:var(--z-marquee); overflow:hidden; padding:26px 0;
  border-top:1px solid var(--linha); border-bottom:1px solid var(--linha);
  -webkit-mask-image:linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
          mask-image:linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}
.marquee__track{display:flex; width:max-content; will-change:transform;}
.js .marquee__track{animation:marquee 36s linear infinite;}
@keyframes marquee{from{transform:translateX(0);} to{transform:translateX(-50%);}}
.marquee__set{display:flex; align-items:baseline; flex:none;}
.marquee__set span{
  font-family:var(--ff-display); font-style:italic; font-weight:400;
  font-size:clamp(1.25rem,2.1vw,1.8rem); color:rgba(244,238,225,.55);
  white-space:nowrap; padding:0 .35em;
}
.marquee__set i{
  font-style:normal; color:var(--ouro); font-size:.62em; padding:0 .8em;
  position:relative; top:-.22em;
}

/* ============ INTERLÚDIO CLARO ============ */
.sec--claro{background:var(--marfim); color:var(--tinta);}
.sec--claro h2{color:var(--tinta);}
.sec--claro .lead{color:var(--grafite);}
.claro-topo{border-radius:clamp(22px,3.5vw,40px) clamp(22px,3.5vw,40px) 0 0; margin-top:clamp(22px,3.5vw,40px);}
.claro-topo::before{ /* recorte sobre o preto */
  content:""; position:absolute; left:0; right:0; top:calc(-1 * clamp(22px,3.5vw,40px));
  height:clamp(22px,3.5vw,40px); background:var(--preto);
}
.claro-fundo{border-radius:0 0 clamp(22px,3.5vw,40px) clamp(22px,3.5vw,40px); margin-bottom:clamp(22px,3.5vw,40px);}
.claro-fundo::after{
  content:""; position:absolute; left:0; right:0; bottom:calc(-1 * clamp(22px,3.5vw,40px));
  height:clamp(22px,3.5vw,40px); background:var(--preto);
}

/* ============ DORES ============ */
.split{display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(34px,6vw,90px); align-items:start;}
@media (max-width:900px){ .split{grid-template-columns:1fr; gap:38px;} }
.sticky-title{position:sticky; top:120px;}
@media (max-width:900px){ .sticky-title{position:static;} }

.dor-list{display:grid; gap:0;}
.dor{
  padding:24px 6px; border-top:1px solid rgba(25,21,16,.14);
  display:grid; grid-template-columns:auto 1fr; gap:18px; align-items:start;
  transition:transform .45s var(--ease);
}
.dor:last-child{border-bottom:1px solid rgba(25,21,16,.14);}
.dor__x{
  font-size:.66rem; color:var(--couro); font-weight:700; line-height:1; flex:none;
  width:24px; height:24px; border:1px solid rgba(139,74,43,.4); border-radius:999px;
  display:inline-flex; align-items:center; justify-content:center; margin-top:2px;
  transition:background-color .45s var(--ease), color .45s var(--ease);
}
.dor:hover{transform:translateX(6px);}
.dor:hover .dor__x{background:var(--couro); color:var(--marfim);}
.dor h3{margin-bottom:5px; color:var(--tinta);}
.dor p{margin:0; color:var(--grafite); font-size:.97rem;}
.fecho{
  margin-top:44px; font-family:var(--ff-display); font-size:clamp(1.3rem,2.3vw,1.8rem);
  line-height:1.35; max-width:40ch; color:var(--tinta);
}
.fecho em{font-style:italic; color:var(--couro);}

/* ============ OPORTUNIDADE (glow cards) ============ */
.center-head{text-align:center; max-width:26ch; margin:0 auto 64px;}
.center-head .etq{margin-bottom:24px;}
.center-head .etq::after{display:none;}
.ganhos{display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:14px;}
.ganho{
  position:relative; background:var(--preto-2); border:1px solid var(--linha);
  padding:36px 28px; overflow:hidden;
  transition:transform .5s var(--ease), border-color .5s var(--ease);
}
.ganho::before{ /* brilho que segue o mouse */
  content:""; position:absolute; inset:0; opacity:0; transition:opacity .5s var(--ease);
  background:radial-gradient(300px circle at var(--mx,50%) var(--my,50%), rgba(232,206,150,.13), transparent 65%);
  pointer-events:none;
}
.ganho:hover{transform:translateY(-4px); border-color:rgba(232,206,150,.36);}
.ganho:hover::before{opacity:1;}
.ganho__n{
  font-family:var(--ff-display); font-style:italic; font-size:1rem; color:var(--ouro);
  display:block; margin-bottom:16px;
}
.ganho h3{color:var(--marfim); margin-bottom:10px; font-size:1.06rem;}
.ganho p{margin:0; font-size:.93rem; color:var(--txt-2); line-height:1.6;}
.fecho-center{
  text-align:center; margin-top:52px; font-family:var(--ff-display);
  font-size:clamp(1.3rem,2.3vw,1.8rem); line-height:1.35;
}

/* ============ METODOLOGIA (costura viva) ============ */
.met-head{max-width:660px;}
.etapas{position:relative; padding-left:clamp(52px,7vw,84px); margin-top:70px;}
.costura{position:absolute; left:clamp(10px,1.4vw,17px); top:8px; bottom:8px; width:2px;}
.costura__base{
  position:absolute; inset:0; width:2px;
  background:repeating-linear-gradient(to bottom, rgba(232,206,150,.18) 0 7px, transparent 7px 15px);
}
.costura__fio{
  position:absolute; top:0; left:0; width:2px; height:100%;
  background:repeating-linear-gradient(to bottom, var(--ouro) 0 7px, transparent 7px 15px);
}
.js .costura__fio{height:0;}
.costura__agulha{
  position:absolute; left:50%; bottom:-3px; transform:translateX(-50%);
  width:7px; height:7px; border-radius:999px; background:var(--ouro-claro);
  box-shadow:0 0 14px 3px rgba(232,206,150,.55); opacity:0; transition:opacity .4s;
}
.js .costura--ativa .costura__agulha{opacity:1;}
.etapa{position:relative; padding:0 0 58px; max-width:640px;}
.etapa:last-child{padding-bottom:0;}
.etapa__ponto{
  position:absolute; top:10px; left:calc(-1 * clamp(52px,7vw,84px) + clamp(10px,1.4vw,17px) - 5px);
  width:12px; height:12px; border-radius:999px;
  background:var(--preto); border:1.5px solid rgba(232,206,150,.35);
  transition:background-color .5s var(--ease), border-color .5s var(--ease), box-shadow .5s var(--ease);
}
.etapa.is-lit .etapa__ponto{
  background:var(--ouro); border-color:var(--ouro-claro);
  box-shadow:0 0 0 5px rgba(201,162,94,.14), 0 0 18px 2px rgba(232,206,150,.35);
}
.etapa__n{
  font-family:var(--ff-display); font-style:italic; font-size:.95rem; letter-spacing:.06em;
  color:var(--ouro); display:block; margin-bottom:8px;
}
.etapa h3{
  font-family:var(--ff-display); font-weight:400; font-size:clamp(1.6rem,2.7vw,2.2rem);
  margin-bottom:12px; color:var(--marfim); transition:color .5s var(--ease);
}
.etapa.is-lit h3{color:var(--ouro-claro);}
.etapa p{color:var(--txt-2); max-width:56ch; margin:0;}

/* ============ COMO FUNCIONA ============ */
.fluxo{display:grid; grid-template-columns:repeat(6,1fr); gap:0; margin-top:64px; position:relative;}
.fluxo::before{content:""; position:absolute; left:0; right:0; top:6px; border-top:2px dashed rgba(232,206,150,.3);}
.passo{padding:38px 20px 0 0; position:relative;}
.passo::before{
  content:""; position:absolute; left:0; top:0; width:13px; height:13px;
  border-radius:999px; background:var(--ouro); box-shadow:0 0 0 6px var(--preto);
}
.passo h3{font-size:1rem; margin-bottom:8px; color:var(--marfim);}
.passo p{font-size:.88rem; color:var(--txt-2); margin:0; line-height:1.6;}
@media (max-width:1024px){
  .fluxo{grid-template-columns:1fr; padding-left:42px;}
  .fluxo::before{left:6px; right:auto; top:6px; bottom:6px; border-top:0; border-left:2px dashed rgba(232,206,150,.3);}
  .passo{padding:0 0 32px 0;}
  .passo::before{left:-42px; top:5px;}
}

/* ============ FOTOS COM MOLDURA + PARALLAX ============ */
.foto{position:relative; aspect-ratio:4/5;}
.foto__clip{position:absolute; inset:0; overflow:hidden; background:var(--preto-2); z-index:1;}
.foto img{
  position:absolute; left:0; top:-9%; width:100%; height:118%;
  object-fit:cover; will-change:transform;
}
.foto--frame::after{ /* moldura dourada deslocada, visível na faixa inferior/direita */
  content:""; position:absolute; inset:0; border:1px solid rgba(232,206,150,.5);
  transform:translate(16px,16px); pointer-events:none; z-index:0;
}
.sec--claro .foto--frame::after{border-color:rgba(139,74,43,.45);}

/* ============ HISTÓRIA ============ */
.historia{display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(34px,6vw,90px); align-items:center;}
@media (max-width:900px){ .historia{grid-template-columns:1fr;} }
.historia h2{max-width:16ch;}
.historia .txt p{color:var(--grafite);}
.quote{
  font-family:var(--ff-display); font-style:italic; font-size:clamp(1.45rem,2.6vw,2.05rem); line-height:1.3;
  margin:36px 0 0; max-width:26ch; color:var(--couro);
}
.quote::before{content:""; display:block; width:56px; height:1px; background:var(--couro); opacity:.55; margin-bottom:22px;}
.btn--ebook{margin-top:38px;}
.ebook-nota{
  font-size:.74rem; font-weight:500; letter-spacing:.1em; text-transform:uppercase;
  color:var(--grafite); opacity:.75; margin:14px 0 0;
}

/* ============ PARA QUEM ============ */
.duo{display:grid; grid-template-columns:1fr 1fr; gap:clamp(30px,5vw,80px); margin-top:58px;}
@media (max-width:767px){ .duo{grid-template-columns:1fr;} }
.duo h3{
  font-family:var(--ff-display); font-style:italic; font-weight:400;
  font-size:clamp(1.3rem,2vw,1.6rem); margin-bottom:26px;
}
.duo--sim h3{color:var(--ouro-claro);}
.duo--nao h3{color:rgba(244,238,225,.55);}
.duo ul{list-style:none; margin:0; padding:0; display:grid; gap:0;}
.duo li{padding:16px 0 16px 34px; position:relative; font-size:.98rem; border-top:1px solid var(--linha);}
.duo li:last-child{border-bottom:1px solid var(--linha);}
.duo--sim li::before{content:"✓"; position:absolute; left:2px; top:16px; color:var(--ouro); font-size:.95rem;}
.duo--nao li{color:rgba(244,238,225,.55);}
.duo--nao li::before{content:"—"; position:absolute; left:0; top:16px; color:rgba(244,238,225,.35);}

/* ============ SOBRE ============ */
.big-quote{
  font-family:var(--ff-display); font-size:clamp(1.8rem,3.8vw,3rem); line-height:1.2;
  max-width:24ch; margin:0 0 80px; text-wrap:balance;
}
.bio{display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(34px,6vw,90px); align-items:center;}
@media (max-width:900px){ .bio{grid-template-columns:1fr;} }
.bio ul{list-style:none; margin:30px 0 40px; padding:0;}
.bio li{padding:17px 0 17px 30px; border-top:1px solid var(--linha); font-size:.98rem; position:relative; color:var(--txt-2);}
.bio li::before{
  content:""; position:absolute; left:2px; top:24px; width:7px; height:7px; border-radius:999px;
  border:1.5px solid var(--ouro);
}
.bio li:last-child{border-bottom:1px solid var(--linha);}

/* ============ APLICAÇÃO ============ */
.passos3{display:grid; grid-template-columns:repeat(3,1fr); gap:26px; margin:56px 0 70px;}
@media (max-width:767px){ .passos3{grid-template-columns:1fr;} }
.passo3{border-top:1px solid var(--ouro); padding-top:20px;}
.passo3 span{
  font-family:var(--ff-display); font-style:italic; font-size:.95rem;
  color:var(--ouro); display:block; margin-bottom:10px;
}
.passo3 h3{font-size:1.05rem; margin-bottom:8px; color:var(--marfim);}
.passo3 p{margin:0; font-size:.9rem; color:var(--txt-2);}

.form{max-width:620px; margin:0 auto; display:grid; gap:20px;}
.field{display:grid; gap:8px;}
.field label{
  font-size:.7rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase;
  color:rgba(244,238,225,.75);
}
.field input,.field select,.field textarea{
  font-family:var(--ff-body); font-size:1rem; color:var(--marfim);
  background:rgba(244,238,225,.05); border:1px solid rgba(244,238,225,.22);
  padding:15px 17px; border-radius:3px; width:100%;
  transition:border-color .3s var(--ease), background-color .3s var(--ease);
}
.field input:focus,.field select:focus,.field textarea:focus{
  border-color:var(--ouro); background:rgba(232,206,150,.06); outline:none;
}
.field textarea{min-height:112px; resize:vertical;}
.field select option{color:var(--tinta); background:var(--marfim);}
.field input::placeholder,.field textarea::placeholder{color:rgba(244,238,225,.4);}
.field-2{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
@media (max-width:600px){ .field-2{grid-template-columns:1fr;} }
.check{display:flex; gap:12px; align-items:flex-start; font-size:.86rem; color:var(--txt-2);}
.check input{width:18px; height:18px; margin-top:3px; accent-color:var(--ouro); flex:none;}
.form .btn{width:100%; margin-top:8px;}
.form-msg{display:none; padding:20px; border:1px solid var(--ouro); font-size:.95rem; color:var(--ouro-claro);}
.form-msg.is-on{display:block;}
.form-msg--erro{border-color:#C2603A; color:#E39A76;}
.btn[disabled]{opacity:.6; pointer-events:none;}
.alt-wpp{text-align:center; margin-top:30px; font-size:.9rem; color:rgba(244,238,225,.6);}
.alt-wpp a{color:var(--ouro-claro);}

/* ============ FAQ ============ */
.faq{max-width:780px; margin:56px auto 0;}
.faq-item{border-bottom:1px solid var(--linha);}
.faq-item:first-child{border-top:1px solid var(--linha);}
.faq-q{
  display:flex; justify-content:space-between; align-items:center; gap:20px;
  width:100%; background:none; border:0; cursor:pointer; text-align:left;
  font-family:var(--ff-body); font-size:1.06rem; font-weight:500; color:var(--marfim);
  padding:24px 4px; transition:color .3s var(--ease);
}
.faq-q:hover{color:var(--ouro-claro);}
.faq-q__ico{
  flex:none; width:30px; height:30px; border:1px solid var(--linha); border-radius:999px;
  position:relative; transition:transform .55s var(--ease), border-color .4s var(--ease), background-color .4s var(--ease);
}
.faq-q__ico::before,.faq-q__ico::after{
  content:""; position:absolute; background:var(--ouro); left:50%; top:50%;
  transition:background-color .4s var(--ease);
}
.faq-q__ico::before{width:12px; height:1.5px; transform:translate(-50%,-50%);}
.faq-q__ico::after{width:1.5px; height:12px; transform:translate(-50%,-50%);}
.faq-q[aria-expanded="true"] .faq-q__ico{transform:rotate(135deg); background:var(--ouro); border-color:var(--ouro);}
.faq-q[aria-expanded="true"] .faq-q__ico::before,
.faq-q[aria-expanded="true"] .faq-q__ico::after{background:var(--preto);}
.faq-a{display:grid; grid-template-rows:0fr; transition:grid-template-rows .6s var(--ease);}
.faq-item.is-open .faq-a{grid-template-rows:1fr;}
.faq-a__inner{overflow:hidden;}
.faq-a p{
  color:var(--txt-2); padding:0 44px 26px 4px; margin:0; max-width:62ch;
  opacity:0; transform:translateY(-6px);
  transition:opacity .5s var(--ease) .08s, transform .5s var(--ease) .08s;
}
.faq-item.is-open .faq-a p{opacity:1; transform:none;}
html:not(.js) .faq-a{grid-template-rows:1fr;}
html:not(.js) .faq-a p{opacity:1; transform:none;}

/* ============ CTA FINAL ============ */
.cta-final{position:relative; overflow:hidden; padding:clamp(120px,16vw,220px) 0;}
.cta-final__bg{position:absolute; inset:-12% 0;}
.cta-final__bg img{
  width:100%; height:100%; object-fit:cover; object-position:50% 28%;
  opacity:.24; filter:grayscale(.8) contrast(1.05); will-change:transform;
}
.cta-final__bg::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, var(--preto) 0%, rgba(19,16,9,.45) 45%, var(--preto) 100%);
}
.cta-final .wrap{position:relative; z-index:var(--z-content); text-align:center;}
.cta-final h2{max-width:21ch; margin:0 auto 24px;}
.cta-final .lead{max-width:44ch; margin:0 auto 40px; color:var(--txt-2);}

/* ============ RODAPÉ ============ */
.foot{color:rgba(244,238,225,.6); padding:60px 0; border-top:1px solid var(--linha);}
.foot__grid{display:flex; flex-wrap:wrap; gap:28px; justify-content:space-between; align-items:flex-end;}
.foot__logo{font-family:var(--ff-display); font-size:1.5rem; color:var(--marfim);}
.foot__logo em{font-style:italic; color:var(--ouro);}
.foot__sig{font-size:.85rem; margin-top:8px;}
.foot__links{display:flex; flex-wrap:wrap; gap:22px; font-size:.85rem;}
.foot__links a{text-decoration:none; transition:color .3s;}
.foot__links a:hover{color:var(--ouro-claro);}
.foot__copy{width:100%; font-size:.7rem; letter-spacing:.12em; text-transform:uppercase; opacity:.5; margin-top:38px;}

/* ============ CTA FIXO MOBILE ============ */
.sticky-cta{
  position:fixed; left:0; right:0; bottom:0; z-index:var(--z-cta); padding:12px var(--gutter);
  background:rgba(19,16,9,.96); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
  border-top:1px solid var(--linha);
  transform:translateY(110%); transition:transform .45s var(--ease); display:none;
}
.sticky-cta.is-on{transform:translateY(0);}
.sticky-cta .btn{display:block; padding:16px;}
@media (max-width:767px){ .sticky-cta{display:block;} .foot{padding-bottom:120px;} }

/* ============ EBOOK ============ */
.ebook-hero{
  min-height:70svh; display:flex; align-items:center; position:relative; overflow:hidden;
  padding:150px 0 90px; text-align:center;
}
.ebook-hero::before{
  content:""; position:absolute; inset:0;
  background:radial-gradient(ellipse 60% 55% at 50% 0%, rgba(201,162,94,.14), transparent 70%);
  pointer-events:none;
}
.ebook-hero .wrap{position:relative; z-index:2; max-width:760px;}
.ebook-hero .etq{margin-left:auto; margin-right:auto;}
.ebook-hero h1{margin-bottom:22px;}
.ebook-hero .lead{max-width:44ch; margin:0 auto 12px; color:var(--txt-2);}
.ebook-autor{
  font-size:.78rem; font-weight:500; letter-spacing:.1em; text-transform:uppercase;
  color:rgba(244,238,225,.55); margin:26px 0 40px;
}
.ebook-capa{
  width:min(260px, 60vw); margin:0 auto 44px; aspect-ratio:5/7; position:relative;
  background:linear-gradient(165deg, var(--preto-2) 0%, var(--preto) 100%);
  border:1px solid rgba(232,206,150,.28); padding:26px 22px; display:flex; flex-direction:column;
  justify-content:space-between; text-align:left; box-shadow:0 30px 70px -20px rgba(0,0,0,.6);
}
.ebook-capa__titulo{font-family:var(--ff-display); font-size:1.5rem; line-height:1.12;}
.ebook-capa__titulo em{display:block; font-style:italic; color:var(--ouro-claro);}
.ebook-capa__linha{width:34px; height:1px; background:var(--ouro); opacity:.6; margin:14px 0;}
.ebook-capa__sub{font-size:.68rem; color:var(--txt-2); line-height:1.5;}
.ebook-capa__autor{font-size:.66rem; letter-spacing:.1em; text-transform:uppercase; color:var(--ouro);}

.ebook-intro{max-width:680px; margin:0 auto;}
.ebook-intro p{color:var(--txt-2); font-size:1.02rem;}
.ebook-intro p:first-of-type{color:var(--marfim); font-size:1.12rem;}

.sumario{max-width:680px; margin:60px auto 0; display:grid; gap:0;}
.sumario li{
  list-style:none; display:grid; grid-template-columns:auto 1fr; gap:20px; align-items:baseline;
  padding:18px 4px; border-top:1px solid var(--linha); font-size:1rem;
}
.sumario li:last-child{border-bottom:1px solid var(--linha);}
.sumario li span{
  font-family:var(--ff-display); font-style:italic; color:var(--ouro); font-size:1.05rem;
}

.ebook-cta{text-align:center; margin-top:60px;}
.ebook-cta .btn{padding:22px 48px; font-size:.95rem;}
.ebook-cta p{margin-top:16px; font-size:.82rem; color:rgba(244,238,225,.5);}

/* ============ REVEAL ============ */
.js .rv{opacity:0; transform:translateY(22px); transition:opacity .8s var(--ease), transform .8s var(--ease);}
.js .rv.is-in{opacity:1; transform:none;}

/* ============ REDUCED MOTION ============ */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation:none !important; transition:none !important;}
  .js .rv{opacity:1; transform:none;}
  .js .hero .hl > span{transform:none;}
  .js .hero__fade,.js .hero__tag{opacity:1;}
  .js .costura__fio{height:100% !important;}
  .js .costura__agulha{display:none;}
  .foto img, .foto--frame .foto__clip img{transform:none !important; top:0; height:100%;}
}
