/* Ritual de 21 Dias · estilos abaixo da primeira dobra (carregados sem bloquear).
   Movimento: só transform/translate/opacity, e tudo para com prefers-reduced-motion.
   Hover só em @media (hover:hover), para não "grudar" no toque. */

.sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ---------- Seções e hierarquia ---------- */
.secao{position:relative;isolation:isolate;padding-block:4rem}
@media (min-width:48rem){.secao{padding-block:6.5rem}}
.secao--clara{background:var(--perola)}
.secao--branca{background:var(--branco)}
.secao--noite{color:var(--perola);background:radial-gradient(80% 60% at 50% 0%,rgba(36,84,127,.5),transparent 70%),linear-gradient(180deg,var(--noite),var(--noite-2))}
.secao--noite::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(235,203,133,.35),transparent)}

.secao h2{font-size:clamp(2rem,4.6vw,3.3rem);line-height:1.06;letter-spacing:-.012em;max-width:20ch;color:var(--azul)}
.secao h2 em{font-style:italic;color:var(--ouro-titulo)}
.secao--noite h2{color:var(--branco)}
.secao--noite h2 em{color:var(--ouro-claro)}

.centro{text-align:center}
.centro h2,.centro .texto{margin-inline:auto}
.texto{max-width:var(--w-texto);font-size:1.0625rem;color:var(--nevoa)}
.texto+.texto{margin-top:1rem}
.texto a{color:var(--azul);text-decoration-color:rgba(201,150,63,.6);text-underline-offset:3px}
.secao--noite .texto{color:rgba(238,242,246,.8)}

.cabeca{display:grid;gap:1.1rem;margin-bottom:2.75rem;justify-items:start}
.cabeca.centro{justify-items:center}
@media (min-width:48rem){.cabeca{margin-bottom:3.75rem}}

/* Rótulo de seção (versalete dourado com fio) */
.olho{display:inline-flex;align-items:center;gap:.75rem;margin:0;font-size:.72rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--ouro-escuro)}
.olho::before{content:"";width:1.75rem;height:1px;background:currentColor;opacity:.6}
.centro .olho::after{content:"";width:1.75rem;height:1px;background:currentColor;opacity:.6}
.secao--noite .olho,.painel .olho{color:var(--ouro-claro)}
.ornamento{display:block;margin:0 auto}

/* ---------- Superfícies ---------- */
/* Painel escuro: gradiente profundo, brilho sutil no topo e borda em gradiente dourado */
.painel{position:relative;isolation:isolate;overflow:hidden;border-radius:1.5rem;color:var(--perola);border:1px solid transparent;background:radial-gradient(120% 80% at 0% 0%,rgba(36,84,127,.55),transparent 60%) padding-box,linear-gradient(165deg,#132D4C,var(--noite) 70%) padding-box,var(--borda-ouro) border-box;box-shadow:0 30px 60px -36px rgba(4,12,24,.45),inset 0 1px 0 rgba(255,255,255,.06)}
.painel::before{content:"";position:absolute;left:-20%;right:-20%;top:-45%;height:90%;z-index:-1;background:radial-gradient(closest-side,rgba(235,203,133,.13),transparent);pointer-events:none}

/* Cartão claro com borda em gradiente que acende no hover */
.card{position:relative;isolation:isolate;overflow:hidden;border-radius:1.25rem;background:var(--branco);border:1px solid rgba(21,54,90,.09);box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 16px 36px -30px rgba(11,27,48,.3);transition:transform .45s var(--ease)}
.card::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(140deg,rgba(201,150,63,.75),rgba(201,150,63,0) 45%,rgba(36,84,127,.35));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .45s var(--ease);pointer-events:none}
@media (hover:hover){.card--hover:hover{transform:translateY(-4px)}.card--hover:hover::before{opacity:1}}

/* Spotlight que segue o cursor (posição via transform; ligado pelo script só em ponteiro fino) */
.spot::after{content:"";position:absolute;left:0;top:0;width:26rem;height:26rem;margin:-13rem 0 0 -13rem;border-radius:50%;background:radial-gradient(closest-side,var(--spot,rgba(235,203,133,.16)),transparent);transform:translate3d(var(--mx,0),var(--my,0),0);opacity:0;transition:opacity .5s var(--ease);pointer-events:none;z-index:-1}
.spot.is-spot::after{opacity:1}
.card.spot{--spot:rgba(201,150,63,.11)}

/* ---------- Revelação ao rolar (só abaixo da dobra; o script marca quem começa fora da tela) ---------- */
/* Fade + deslize, escolha do Miguel: vale mais o efeito que o último ponto da nota.
   Efeito colateral conhecido: o Lighthouse às vezes mede o texto no meio do fade e dá Acessibilidade 96 (contraste). */
[data-reveal].rv-anima{transition:opacity .9s var(--ease) var(--d,0s),translate .9s var(--ease) var(--d,0s),transform .45s var(--ease)}
[data-reveal].rv-espera{opacity:0;translate:0 28px}

/* ---------- Seções fora da tela inicial: o navegador só renderiza quando chegam perto da vista ---------- */
.secao{content-visibility:auto;contain-intrinsic-size:auto 900px}

/* ---------- Identificação ---------- */
.espelho-grid{display:grid;gap:2.25rem}
.espelho-grid .cabeca{margin:0}
.espelho{list-style:none;margin:0;padding:0}
.espelho li{display:grid;grid-template-columns:2.75rem minmax(0,1fr);gap:1rem;align-items:baseline;padding:1.35rem 0;border-top:1px solid rgba(21,54,90,.12)}
.espelho li:last-child{border-bottom:1px solid rgba(21,54,90,.12)}
.espelho__n{font-family:var(--f-display);font-style:italic;font-size:1.15rem;color:var(--ouro-escuro);font-variant-numeric:lining-nums}
.espelho p{font-family:var(--f-display);font-size:clamp(1.35rem,2.4vw,1.65rem);line-height:1.3;color:var(--tinta)}
.fecho{justify-self:center;max-width:30ch;margin-top:1rem;text-align:center;font-family:var(--f-display);font-style:italic;font-size:clamp(1.45rem,2.8vw,1.95rem);line-height:1.3;color:var(--azul)}
@media (min-width:56rem){
  .espelho-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);column-gap:5rem;align-items:start}
  .espelho-grid .cabeca{position:sticky;top:6rem}
  .fecho{grid-column:1 / -1;margin-top:2.5rem}
}

/* ---------- A virada ---------- */
.virada{display:grid;gap:1.6rem;justify-items:center;text-align:center;max-width:52rem;margin-inline:auto}
.virada h2{max-width:22ch;font-size:clamp(2.1rem,5vw,3.6rem)}
.virada .texto{max-width:40rem}

/* ---------- Letreiro (marquee): 4 grupos idênticos, desloca exatamente 1 grupo ---------- */
.marquee{background:var(--noite-2);border-top:1px solid rgba(235,203,133,.14);border-bottom:1px solid rgba(235,203,133,.14);padding-block:1.35rem 1.45rem;overflow:hidden}
.marquee__janela{overflow:hidden;-webkit-mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.marquee__trilho{display:flex;width:max-content;animation:letreiro 140s linear infinite}
.marquee__grupo{display:flex;flex:none}
.marquee__item{display:inline-flex;align-items:center;gap:1.6rem;padding-right:1.6rem;white-space:nowrap;font-family:var(--f-display);font-style:italic;font-size:clamp(1.15rem,2vw,1.45rem);color:rgba(238,242,246,.86)}
.marquee__item svg{flex:none}
.marquee.is-pausado .marquee__trilho{animation-play-state:paused}
@media (hover:hover){.marquee:hover .marquee__trilho{animation-play-state:paused}}
@keyframes letreiro{to{transform:translateX(-25%)}}

/* ---------- Como funciona ---------- */
/* Um painel só: título + contadores no topo; grade dos 21 dias e os 4 passos lado a lado no desktop */
.trilha{display:grid;gap:2rem;padding:2rem 1.25rem 1.75rem}
@media (min-width:48rem){.trilha{padding:2.75rem}}
@media (min-width:64rem){.trilha{padding:3.25rem 3.5rem;gap:2.75rem}}
.trilha__topo{display:grid;gap:1.5rem;padding-bottom:1.75rem;border-bottom:1px solid rgba(235,203,133,.14)}
@media (min-width:56rem){.trilha__topo{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:2.5rem}}
.trilha__titulo{font-family:var(--f-display);font-size:clamp(1.7rem,3vw,2.3rem);line-height:1.1;color:var(--branco)}
.trilha__nota{margin-top:.6rem;font-size:.95rem;color:rgba(238,242,246,.72)}
.contadores{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem}
@media (min-width:56rem){.contadores{grid-template-columns:repeat(3,6.75rem)}}
.contador{position:relative;padding:.85rem .5rem .75rem;border-radius:1rem;text-align:center;background:rgba(255,255,255,.035);border:1px solid rgba(235,203,133,.14)}
.contador strong{display:block;font-family:var(--f-display);font-weight:600;font-size:clamp(2.1rem,4.5vw,2.6rem);line-height:1;color:var(--ouro-claro);font-variant-numeric:lining-nums tabular-nums}
.contador span{display:block;margin-top:.35rem;font-size:.68rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:rgba(238,242,246,.66)}
.trilha__corpo{display:grid;gap:2.25rem}
@media (min-width:64rem){.trilha__corpo{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:4rem;align-items:center}}
.grade{width:100%;max-width:30rem}
@media (min-width:64rem){.grade{max-width:32rem;padding:1.75rem 1.5rem 1.25rem;border-radius:1.1rem;background:rgba(255,255,255,.03);border:1px solid rgba(235,203,133,.12)}}

.passos{list-style:none;margin:0;padding:0;display:grid}
.passo{display:grid;grid-template-columns:2.75rem minmax(0,1fr);gap:1rem;align-items:start;padding:1.05rem 0;border-top:1px solid rgba(235,203,133,.12)}
.passo:first-child{border-top:0;padding-top:0}
.passo:last-child{padding-bottom:0}
.passo__icone{width:2.75rem;height:2.75rem;border-radius:50%;display:grid;place-items:center;color:var(--ouro-claro);border:1px solid rgba(235,203,133,.35);background:radial-gradient(circle at 50% 30%,rgba(235,203,133,.14),rgba(235,203,133,.03))}
.passo h3{display:flex;align-items:baseline;gap:.6rem;margin-top:.15rem;font-size:1.32rem;color:var(--branco)}
.passo__n{font-family:var(--f-texto);font-size:.68rem;font-weight:700;letter-spacing:.14em;color:var(--ouro-claro)}
.passo p{margin-top:.25rem;font-size:.93rem;line-height:1.55;color:rgba(238,242,246,.72)}

.grade__ciclo{display:grid;grid-template-columns:4.2rem repeat(7,minmax(0,1fr));gap:.4rem;align-items:center;margin-bottom:.5rem}
.grade__rotulo{font-size:.76rem;font-weight:600;color:var(--ouro-claro);letter-spacing:.04em}
.dia{aspect-ratio:1;border-radius:50%;display:grid;place-items:center;font-size:.8rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--perola);border:1px solid rgba(235,203,133,.3);background:rgba(255,255,255,.02)}
.grade__ciclo:nth-child(2) .dia{border-color:rgba(235,203,133,.5);background:rgba(235,203,133,.06)}
.grade__ciclo:nth-child(3) .dia{border-color:var(--ouro-claro);background:rgba(235,203,133,.14)}
.dia--fim{background:var(--grad-ouro)!important;color:var(--noite);border:0;box-shadow:0 0 0 4px rgba(235,203,133,.14),0 0 24px rgba(235,203,133,.55)}
.grade__legenda{display:grid;grid-template-columns:4.2rem repeat(7,minmax(0,1fr));gap:.4rem;margin-top:.85rem;padding-top:.75rem;border-top:1px solid rgba(235,203,133,.14);font-size:.68rem;color:rgba(238,242,246,.6);text-align:center}
.grade__legenda span:first-child{text-align:left;letter-spacing:.04em}
@media (min-width:48rem){.dia{font-size:.95rem}.grade__ciclo,.grade__legenda{gap:.6rem;grid-template-columns:5rem repeat(7,minmax(0,1fr))}}

/* ---------- Os 7 temas ---------- */
.temas{list-style:none;margin:0;padding:0;border-top:1px solid rgba(21,54,90,.14)}
.tema{position:relative;isolation:isolate;display:grid;grid-template-columns:3.25rem minmax(0,1fr);gap:.4rem 1rem;padding:1.4rem .25rem;border-bottom:1px solid rgba(21,54,90,.14)}
.tema::before{content:"";position:absolute;top:0;bottom:0;left:-1rem;right:-1rem;z-index:-1;border-radius:1rem;background:linear-gradient(90deg,rgba(255,255,255,.95),rgba(255,255,255,0));opacity:0;transition:opacity .45s var(--ease)}
.tema__num{grid-row:span 2;font-family:var(--f-display);font-size:2.3rem;line-height:.95;font-variant-numeric:lining-nums;background:linear-gradient(180deg,#D9AE5E,#9C6F27);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;transition:transform .45s var(--ease)}
.tema h3{font-size:clamp(1.35rem,2.4vw,1.7rem);color:var(--azul)}
.tema p{color:var(--nevoa);font-size:.98rem}
.tema blockquote{grid-column:2;margin:.25rem 0 0;font-family:var(--f-display);font-style:italic;font-size:1.22rem;line-height:1.4;color:var(--tinta)}
@media (hover:hover){.tema:hover::before{opacity:1}.tema:hover .tema__num{transform:translateX(4px)}}
@media (max-width:47.99rem){.tema p{display:none}}
@media (min-width:56rem){
  .tema{grid-template-columns:5rem minmax(0,1fr) minmax(0,1.1fr);gap:.35rem 2.5rem;align-items:baseline;padding:2rem .5rem}
  .tema__num{font-size:3.2rem}
  .tema h3,.tema p{grid-column:2}
  .tema blockquote{grid-column:3;grid-row:1 / span 2;margin:0;align-self:center;font-size:1.35rem;padding-left:1.75rem;border-left:1px solid rgba(201,150,63,.35)}
}

.extras{margin-top:2.75rem;display:grid;gap:1rem}
.extras__lista{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.6rem}
.extras__lista li{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.05rem;border-radius:999px;font-size:.9rem;font-weight:500;color:var(--azul);border:1px solid transparent;background:linear-gradient(var(--branco),var(--branco)) padding-box,linear-gradient(140deg,rgba(201,150,63,.7),rgba(21,54,90,.12)) border-box;box-shadow:0 8px 20px -16px rgba(11,27,48,.5)}
.extras__lista li::before{content:"";width:.45rem;height:.45rem;transform:rotate(45deg);background:var(--ouro);flex:none}

/* ---------- Prévia do e-book (3 colunas iguais → 1) ---------- */
.previa{list-style:none;margin:0;padding:0;display:grid;gap:1.25rem;grid-template-columns:minmax(0,1fr)}
@media (min-width:56rem){.previa{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}}
.previa__item{display:flex;flex-direction:column}
.previa__link{position:relative;display:block;padding:1.5rem 1.5rem 0;text-decoration:none;background:radial-gradient(80% 60% at 50% 0%,rgba(235,203,133,.18),transparent 70%),linear-gradient(180deg,var(--perola),#E2E8EF)}
.previa__link:focus-visible{outline-offset:-4px}
.previa__folha{position:relative;display:block;overflow:hidden;aspect-ratio:600/480;border-radius:3px 3px 0 0;background:var(--branco);box-shadow:0 18px 40px -22px rgba(11,27,48,.5),0 0 0 1px rgba(21,54,90,.08)}
@media (min-width:56rem){.previa__folha{aspect-ratio:600/640}}
.previa__folha img{display:block;width:100%;height:auto;transform-origin:50% 0;transition:transform .7s var(--ease)}
.previa__folha::after{content:"";position:absolute;left:0;right:0;bottom:0;height:26%;background:linear-gradient(180deg,rgba(255,255,255,0),#fff 88%);pointer-events:none}
.previa__ampliar{position:absolute;right:1.1rem;bottom:1rem;z-index:1;display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .85rem;border-radius:999px;background:rgba(11,27,48,.88);color:var(--perola);font-size:.78rem;font-weight:600;box-shadow:0 10px 24px -12px rgba(11,27,48,.8);opacity:0;transform:translateY(6px);transition:opacity .35s var(--ease),transform .35s var(--ease)}
@media (hover:hover){.previa__item:hover .previa__ampliar{opacity:1;transform:none}.previa__item:hover .previa__folha img{transform:scale(1.025)}}
@media (hover:none){.previa__ampliar{opacity:1;transform:none}}
.previa__link:focus-visible .previa__ampliar{opacity:1;transform:none}
.previa__legenda{display:grid;gap:.25rem;padding:1.1rem 1.5rem 1.35rem;border-top:1px solid rgba(21,54,90,.08)}
.previa__legenda strong{font-size:.68rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--ouro-escuro)}
.previa__legenda span{font-family:var(--f-display);font-size:1.35rem;line-height:1.2;color:var(--azul)}

/* Visualizador (dialog nativo: foco, Esc e camada superior de graça) */
.lupa{width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:max(14px,env(safe-area-inset-top,0px)) 16px max(14px,env(safe-area-inset-bottom,0px));border:0;background:transparent;color:var(--perola)}
.lupa[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;justify-items:center;align-items:center;gap:.75rem;animation:lupa-in .35s var(--ease)}
.lupa::backdrop{background:rgba(4,12,24,.88);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.lupa__topo{width:min(100%,44rem);display:flex;align-items:center;justify-content:space-between;gap:1rem}
.lupa__legenda{font-family:var(--f-display);font-size:1.3rem;line-height:1.2}
.lupa__img{display:block;max-width:min(100%,44rem);max-height:100%;width:auto;height:auto;border-radius:3px;background:#fff;box-shadow:0 30px 80px -20px rgba(0,0,0,.75)}
.lupa__nav{display:flex;gap:.75rem}
.lupa__btn{appearance:none;width:2.75rem;height:2.75rem;flex:none;display:grid;place-items:center;border-radius:50%;cursor:pointer;color:var(--perola);background:rgba(255,255,255,.06);border:1px solid rgba(235,203,133,.35)}
@keyframes lupa-in{from{opacity:0;transform:scale(.985)}}
html:has(.lupa[open]){overflow:hidden}

/* ---------- Drí ---------- */
.dri{display:grid;gap:2rem}
.dri__titulo{display:grid;gap:1rem;justify-items:center;text-align:center}
.dri__titulo h2{margin:0}
.dri__moldura{position:relative;width:min(16rem,78%);margin-inline:auto;padding:1px;border-radius:12rem 12rem 1.4rem 1.4rem;background:var(--borda-ouro);box-shadow:0 40px 80px -40px rgba(0,0,0,.7)}
.dri__moldura::before{content:"";position:absolute;inset:-20%;z-index:-1;background:radial-gradient(closest-side,rgba(235,203,133,.2),transparent);pointer-events:none}
.dri__foto{position:relative;overflow:hidden;aspect-ratio:4/5;border-radius:12rem 12rem 1.35rem 1.35rem;background:radial-gradient(90% 70% at 50% 15%,var(--manto),var(--azul) 55%,var(--noite));display:grid;place-items:center;color:var(--ouro-claro);text-align:center;font-size:.85rem}
.dri__foto img{display:block;width:100%;height:100%;object-fit:cover}
.dri__numeros{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:2rem;max-width:26rem}
.dri__numeros div{display:grid;gap:.35rem;padding:1rem 1.1rem;border-radius:1rem;background:rgba(255,255,255,.035);border:1px solid rgba(235,203,133,.14)}
.dri__numeros strong{font-family:var(--f-display);font-size:2.3rem;font-weight:600;line-height:1;color:var(--ouro-claro);font-variant-numeric:lining-nums}
.dri__numeros span{font-size:.82rem;line-height:1.35;color:rgba(238,242,246,.7)}
.arroba{display:inline-flex;margin-top:1.75rem;color:var(--ouro-claro);text-decoration:none;border-bottom:1px solid rgba(235,203,133,.4);padding-bottom:.1rem}
@media (min-width:56rem){
  .dri{grid-template-columns:20rem minmax(0,1fr);grid-template-areas:"foto titulo" "foto texto";column-gap:5rem;row-gap:1.5rem}
  .dri__titulo{grid-area:titulo;justify-items:start;text-align:left;align-self:end}
  .dri__moldura{grid-area:foto;width:100%;align-self:center}
  .dri__texto{grid-area:texto}
}

/* ---------- Depoimentos (3 colunas iguais → 1) ---------- */
.depoimentos{display:grid;gap:1.25rem;grid-template-columns:minmax(0,1fr)}
@media (min-width:56rem){.depoimentos{grid-template-columns:repeat(3,minmax(0,1fr))}}
/* Relatos como mensagens de WhatsApp: "papel de parede" pontilhado e balão recebido com horário */
.depo{margin:0;display:flex;flex-direction:column}
.depo__chat{flex:1;padding:1.5rem 1.25rem 1.6rem;background-color:#F3F0EA;background-image:radial-gradient(rgba(21,54,90,.07) 1px,transparent 1.2px);background-size:14px 14px}
.depo__balao{position:relative;margin:0 1.25rem 0 .5rem;padding:.7rem .85rem 1.35rem .95rem;border-radius:0 .85rem .85rem .85rem;background:var(--branco);box-shadow:0 1px 1.5px rgba(11,27,48,.13)}
.depo__balao::before{content:"";position:absolute;top:0;left:-.5rem;width:.6rem;height:.75rem;background:var(--branco);clip-path:polygon(0 0,100% 0,100% 100%)}
.depo__balao p{font-size:1rem;line-height:1.5;color:#111B21}
.depo__hora{position:absolute;right:.7rem;bottom:.35rem;font-size:.7rem;color:#667781;font-variant-numeric:tabular-nums}
.depo figcaption{display:flex;align-items:center;gap:.75rem;padding:1rem 1.35rem 1.15rem;border-top:1px solid rgba(21,54,90,.08);font-size:.82rem;line-height:1.35;color:var(--nevoa)}
.depo figcaption strong{display:block;font-size:.9rem;color:var(--azul)}
.depo__avatar{width:2.25rem;height:2.25rem;flex:none;border-radius:50%;display:grid;place-items:center;background:linear-gradient(160deg,var(--manto),var(--noite))}
.aviso-exemplo{margin-top:1.75rem;font-size:.85rem;color:var(--nevoa);text-align:center}

/* ---------- Oferta ---------- */
.oferta{max-width:62rem;margin-inline:auto;display:grid;gap:2rem;padding:2.25rem 1.35rem}
@media (min-width:48rem){.oferta{padding:3rem}}
@media (min-width:56rem){.oferta{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:3rem;align-items:center;padding:3.5rem}}
.oferta__conteudo{display:grid;gap:.9rem;justify-items:start}
.oferta h2{color:var(--branco);font-size:clamp(2rem,4vw,2.9rem);max-width:16ch}
.oferta h2 em{color:var(--ouro-claro)}
.oferta__intro{color:rgba(238,242,246,.75);margin-top:.35rem}
.oferta__lista{list-style:none;margin:.35rem 0 0;padding:0;display:grid;gap:.85rem}
.oferta__lista li{display:grid;grid-template-columns:1.6rem minmax(0,1fr);gap:.8rem;align-items:start;font-size:1rem;color:rgba(238,242,246,.9)}
.oferta__lista .check{width:1.6rem;height:1.6rem;border-radius:50%;display:grid;place-items:center;margin-top:.05rem;background:rgba(235,203,133,.12);border:1px solid rgba(235,203,133,.3)}
/* No celular a caixa de compra fica sem moldura própria (evita caixa dentro de caixa e dá largura ao botão) */
.oferta__compra{padding-top:1.75rem;border-top:1px solid rgba(235,203,133,.18);text-align:center}
@media (min-width:48rem){.oferta__compra{padding:2.25rem 2rem 1.75rem;border-radius:1.25rem;background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.02));border:1px solid rgba(235,203,133,.2);box-shadow:inset 0 1px 0 rgba(255,255,255,.07)}}
/* Mockup do e-book na hora da decisão (reaproveita .livro do hero, em tamanho menor) */
.oferta__livro{position:relative;isolation:isolate;display:grid;place-items:center;padding:.75rem 0 2rem}
.oferta__livro::before{content:"";position:absolute;left:50%;top:44%;width:17rem;aspect-ratio:1;transform:translate(-50%,-50%);z-index:-1;border-radius:50%;background:radial-gradient(closest-side,rgba(235,203,133,.26),rgba(235,203,133,.06) 60%,transparent)}
.oferta__livro::after{content:"";position:absolute;left:50%;bottom:.9rem;width:9rem;height:1.4rem;transform:translateX(-50%);z-index:-1;border-radius:50%;background:radial-gradient(closest-side,rgba(2,8,18,.65),transparent)}
.oferta .livro{width:8.75rem}
@media (min-width:48rem){.oferta .livro{width:9.75rem}}
.preco{display:grid;gap:.3rem;margin-bottom:1.5rem}
.preco s{color:rgba(238,242,246,.55);font-size:.95rem}
.preco strong{font-family:var(--f-display);font-weight:600;font-size:clamp(3.6rem,10vw,4.75rem);line-height:.95;font-variant-numeric:lining-nums;color:var(--ouro-claro);background:linear-gradient(180deg,#F6E2B2,#D7A954);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.preco small{font-size:.82rem;color:rgba(238,242,246,.62)}
.oferta .botao{width:100%}
.garantia{display:grid;grid-template-columns:2.5rem minmax(0,1fr);gap:.9rem;align-items:center;margin-top:1.4rem;padding-top:1.25rem;border-top:1px solid rgba(235,203,133,.18);text-align:left;font-size:.88rem;color:rgba(238,242,246,.8)}
.selos{display:flex;align-items:center;justify-content:center;gap:.45rem;margin-top:1rem;font-size:.78rem;color:rgba(238,242,246,.55)}

/* ---------- FAQ ---------- */
.faq-grid{display:grid;gap:.5rem}
.faq-grid .cabeca{margin-bottom:1.75rem}
@media (min-width:56rem){.faq-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:5rem;align-items:start}.faq-grid .cabeca{position:sticky;top:6rem;margin:0}}
.faq{border-top:1px solid rgba(21,54,90,.14)}
.faq details{border-bottom:1px solid rgba(21,54,90,.14)}
.faq summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) 2.25rem;gap:1rem;align-items:center;padding:1.3rem 0;font-weight:600;font-size:1.02rem;color:var(--azul)}
.faq summary::-webkit-details-marker{display:none}
.mais{width:2.25rem;height:2.25rem;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(201,150,63,.4);background:var(--branco);transition:transform .35s var(--ease)}
.faq details[open] .mais{transform:rotate(45deg)}
.faq details p{padding:0 3.25rem 1.4rem 0;color:var(--nevoa)}

/* ---------- Fechamento ---------- */
.secao--fim{overflow:hidden}
.raios-fim{position:absolute;left:50%;top:55%;width:150vmax;height:150vmax;translate:-50% -50%;z-index:-1;pointer-events:none;background:repeating-conic-gradient(from 0deg,rgba(235,203,133,.14) 0deg 2deg,transparent 2deg 10deg);-webkit-mask:radial-gradient(circle,#000 0,rgba(0,0,0,.5) 18%,transparent 42%);mask:radial-gradient(circle,#000 0,rgba(0,0,0,.5) 18%,transparent 42%);animation:girar-fim 220s linear infinite}
@keyframes girar-fim{to{transform:rotate(360deg)}}
.fechamento{display:grid;gap:1.5rem;justify-items:center;text-align:center;max-width:46rem;margin-inline:auto}
.fechamento__estrela{filter:drop-shadow(0 0 14px rgba(235,203,133,.5))}
.fechamento h2{font-size:clamp(2.2rem,5.4vw,3.8rem);max-width:18ch}
.fechamento .texto{max-width:36rem}
.assinatura{font-family:var(--f-display);font-style:italic;font-size:1.6rem;color:var(--ouro-claro)}

/* ---------- Contato ---------- */
.contato{display:grid;gap:1.1rem;justify-items:center;text-align:center;max-width:40rem;margin-inline:auto;padding:2.5rem 1.35rem}
.contato h2{font-size:clamp(1.8rem,3.6vw,2.4rem)}
.botao--zap{color:var(--branco);background:linear-gradient(180deg,#34C27F,#1E9A5C);box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 14px 30px -14px rgba(30,154,92,.8),0 0 0 1px rgba(255,255,255,.08)}
.numero{font-size:.9rem;color:var(--nevoa);user-select:all}

/* ---------- Rodapé ---------- */
.rodape{position:relative;background:var(--noite);color:rgba(238,242,246,.6);font-size:.82rem;padding-block:3rem calc(3rem + 4.5rem)}
.rodape::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(235,203,133,.35),transparent)}
.rodape .conteudo{display:grid;gap:1rem}
.rodape a{color:rgba(238,242,246,.85)}
.rodape__aviso{max-width:46rem;color:rgba(238,242,246,.75)}
@media (min-width:48rem){.rodape{padding-bottom:3rem}}

/* ---------- Barra fixa de compra (celular) ---------- */
.barra{position:fixed;left:0;right:0;bottom:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem max(16px,env(safe-area-inset-right,0px)) calc(.75rem + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));color:var(--perola);background:rgba(11,27,48,.84);-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);border-top:1px solid rgba(235,203,133,.22);transform:translateY(110%);transition:transform .4s var(--ease)}
.barra.is-on{transform:none}
.barra__preco{display:grid;line-height:1.2;font-size:.75rem;color:rgba(238,242,246,.7)}
.barra__preco strong{font-family:var(--f-display);font-weight:500;font-size:1.65rem;color:var(--ouro-claro)}
.barra .botao{min-height:2.9rem;padding:.7rem 1.3rem;font-size:.95rem}
@media (min-width:48rem){.barra{display:none}}

/* ---------- Barra fixa do topo (computador) ---------- */
.topbar{display:none}
@media (min-width:48rem){
  .topbar{display:block;position:fixed;left:0;right:0;top:0;z-index:30;color:var(--perola);background:rgba(11,27,48,.94);box-shadow:0 10px 30px -18px rgba(4,12,24,.55);-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);border-bottom:1px solid rgba(235,203,133,.2);transform:translateY(-105%);transition:transform .4s var(--ease)}
  .topbar.is-on{transform:none}
}
.topbar__linha{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding-block:.6rem}
.topbar__produto{display:flex;align-items:center;gap:.9rem;min-width:0}
.topbar__produto>div{min-width:0}
.topbar__capa{flex:none;width:2.1rem;height:auto;border-radius:2px 3px 3px 2px;box-shadow:0 6px 14px -6px rgba(0,0,0,.7),0 0 0 1px rgba(235,203,133,.25)}
.topbar__produto strong{display:block;font-family:var(--f-display);font-weight:500;font-size:1.25rem;line-height:1.15;color:var(--branco);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.topbar__produto span{display:block;font-size:.72rem;letter-spacing:.03em;color:rgba(238,242,246,.65);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.topbar__acao{display:flex;align-items:center;gap:1.1rem;flex:none}
.topbar__preco{font-family:var(--f-display);font-weight:500;font-size:1.65rem;line-height:1;color:var(--ouro-claro);font-variant-numeric:lining-nums}
.topbar__preco small{font-family:var(--f-texto);font-weight:500;font-size:.72rem;color:rgba(238,242,246,.6)}
.botao--pequeno{min-height:2.6rem;padding:.6rem 1.3rem;font-size:.9rem}
#oferta{scroll-margin-top:1rem}

/* ---------- Movimento reduzido ---------- */
@media (prefers-reduced-motion:reduce){
  .marquee__trilho,.raios-fim{animation:none}
  .card,.card::before,.spot::after,.tema::before,.tema__num,.mais,.barra,.topbar,.previa__folha img,.previa__ampliar{transition:none}
  .lupa[open]{animation:none}
  [data-reveal].rv-espera{opacity:1;translate:none}
  [data-reveal].rv-anima{transition:none}
}
