/* ───────────────────────────────────────────────
   Astróloga Suzana · Templo Espiritual do Amor
   Paleta: a hora azul, a noite virando dia
   ─────────────────────────────────────────────── */

:root{
  --breu:#060B1A;
  --noite:#0D1838;
  --noite-2:#122048;
  --azul:#1E3C8F;
  --brilho:#7FA8EE;
  --vela:#F5F8FE;
  --vela-2:#E4EBF8;
  --ouro:#C9A227;
  --ouro-claro:#E8C65A;
  --tinta:#0A1230;
  --tinta-fraca:#46557E;
  --zap:#1FA855;

  --borda:rgba(127,168,238,.22);
  --borda-clara:rgba(10,18,48,.14);
  --raio:20px;
  --raio-p:12px;

  --larg:1180px;
  --passo:clamp(68px,9vw,116px);

  --display:"Fraunces",Georgia,serif;
  --corpo:"Figtree",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

*,*::before,*::after{box-sizing:border-box}

html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
}

body{
  margin:0;
  background:var(--breu);
  color:var(--vela);
  font-family:var(--corpo);
  font-size:17px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

/* a noite não é lisa: dois clarões de luz azul atrás de tudo */
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    radial-gradient(900px 620px at 76% -6%, rgba(30,60,143,.55), transparent 62%),
    radial-gradient(760px 540px at 6% 34%, rgba(18,32,72,.75), transparent 60%),
    radial-gradient(1100px 700px at 50% 108%, rgba(30,60,143,.28), transparent 66%);
}
body>*{position:relative;z-index:1}

h1,h2,h3{font-family:var(--display);font-weight:600;line-height:1.12;margin:0;letter-spacing:-.012em}
h1{font-size:clamp(1.95rem,3.65vw,2.95rem)}
h2{font-size:clamp(1.75rem,3.3vw,2.6rem)}
h3{font-size:1.14rem;font-weight:600;letter-spacing:0}
p{margin:0}
img,svg,video{display:block;max-width:100%}

a{color:var(--brilho);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--ouro-claro)}

:focus-visible{outline:2.5px solid var(--ouro-claro);outline-offset:3px;border-radius:4px}

.pular{
  position:absolute;left:-9999px;top:0;
  background:var(--vela);color:var(--tinta);
  padding:12px 20px;border-radius:0 0 var(--raio-p) 0;font-weight:600;z-index:999;
}
.pular:focus{left:0}

/* ─── topo ─── */
.topo{
  position:sticky;top:0;z-index:60;
  background:rgba(6,11,26,.86);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--borda);
}
.faixa{
  max-width:var(--larg);margin:0 auto;
  padding:14px 24px;
  display:flex;align-items:center;gap:30px;
}
.marca{display:flex;align-items:center;gap:11px;text-decoration:none;color:inherit;flex-shrink:0;padding:6px 0;min-height:44px}
.marca-selo{width:26px;height:26px;fill:var(--ouro);flex-shrink:0}
.marca-txt{display:flex;flex-direction:column;line-height:1.12}
.marca-txt strong{font-family:var(--display);font-size:1.07rem;font-weight:600;letter-spacing:.005em}
.marca-txt em{font-style:normal;font-size:.7rem;color:var(--brilho);letter-spacing:.07em;opacity:.9}

.menu{display:flex;gap:26px;margin-left:auto}
.menu a{
  color:rgba(245,248,254,.84);text-decoration:none;font-size:.93rem;font-weight:500;
  padding:5px 0;position:relative;transition:color .18s;
}
.menu a::after{
  content:"";position:absolute;left:0;right:100%;bottom:0;height:1.5px;
  background:var(--ouro);transition:right .22s ease;
}
.menu a:hover,.menu a.ativo{color:var(--vela)}
.menu a:hover::after,.menu a.ativo::after{right:0}

/* ─── botão WhatsApp, no estilo da casa (não o verde padrão) ─── */
.zap{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  font-family:var(--corpo);font-weight:600;text-decoration:none;
  border-radius:999px;border:1px solid transparent;cursor:pointer;
  transition:transform .16s ease,box-shadow .2s ease,background .2s ease;
}
.zap svg{width:1.08em;height:1.08em;fill:currentColor;flex-shrink:0}

.zap-topo{
  padding:10px 19px;font-size:.88rem;
  background:linear-gradient(145deg,var(--ouro-claro),var(--ouro));
  color:#1B1403;
  box-shadow:0 2px 16px rgba(201,162,39,.26);
}
.zap-topo:hover{transform:translateY(-1px);box-shadow:0 6px 22px rgba(201,162,39,.4);color:#1B1403}

.zap-grande{
  padding:16px 32px;font-size:1.05rem;
  background:linear-gradient(145deg,var(--ouro-claro),var(--ouro));
  color:#1B1403;
  box-shadow:0 4px 26px rgba(201,162,39,.3);
}
.zap-grande:hover{transform:translateY(-2px);box-shadow:0 10px 34px rgba(201,162,39,.45);color:#1B1403}

.zap-painel{
  padding:14px 26px;font-size:.98rem;margin-top:22px;
  background:linear-gradient(145deg,var(--azul),#16306F);
  color:var(--vela);border-color:rgba(127,168,238,.4);
  box-shadow:0 3px 20px rgba(30,60,143,.4);
}
.zap-painel:hover{transform:translateY(-2px);color:#fff;box-shadow:0 8px 28px rgba(30,60,143,.6)}

.zap-contorno{
  padding:13px 26px;font-size:.95rem;
  background:transparent;color:var(--vela);border-color:var(--borda);
}
.zap-contorno:hover{background:rgba(127,168,238,.12);border-color:var(--brilho);color:var(--vela)}

/* ─── menu no celular ─── */
.menu-btn{
  display:none;margin-left:auto;background:none;border:1px solid var(--borda);
  border-radius:10px;width:44px;height:44px;cursor:pointer;
  flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:0;
}
.menu-btn span{display:block;width:17px;height:1.5px;background:var(--vela);transition:transform .22s ease,opacity .18s}
.menu-btn[aria-expanded="true"] span:first-child{transform:translateY(3.25px) rotate(45deg)}
.menu-btn[aria-expanded="true"] span:last-child{transform:translateY(-3.25px) rotate(-45deg)}
.menu-mobile{display:none;flex-direction:column;border-top:1px solid var(--borda);padding:8px 24px 16px}
.menu-mobile a{color:var(--vela);text-decoration:none;padding:12px 0;font-weight:500;border-bottom:1px solid rgba(127,168,238,.1)}
.menu-mobile a:last-child{border-bottom:none}
.zap-menu{
  margin-top:14px;padding:14px 22px;font-size:.95rem;
  background:linear-gradient(145deg,var(--ouro-claro),var(--ouro));
  color:#1B1403;box-shadow:0 2px 16px rgba(201,162,39,.26);
}
.zap-menu:hover{color:#1B1403}

/* ─── hero ─── */
.hero{max-width:var(--larg);margin:0 auto;padding:clamp(48px,7vw,86px) 24px clamp(40px,6vw,70px)}
.hero-grid{display:grid;grid-template-columns:1.06fr .94fr;gap:clamp(32px,5vw,64px);align-items:center}

.hero-sobre{
  font-size:.82rem;color:var(--brilho);letter-spacing:.03em;margin-bottom:20px;
}
.hero-txt h1{margin-bottom:22px;text-wrap:balance}
.hero-sub{font-size:1.06rem;color:rgba(245,248,254,.84);max-width:50ch;margin-bottom:30px}

.hero-acoes{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:36px}
.hero-nota{font-size:.87rem;color:rgba(245,248,254,.62)}

.numeros{
  list-style:none;display:grid;grid-template-columns:repeat(3,auto);justify-content:start;
  gap:20px 44px;margin:0;padding:26px 0 0;border-top:1px solid var(--borda);
}
.numeros li{font-size:.89rem;color:rgba(245,248,254,.62);line-height:1.4}
.numeros strong{display:block;font-size:1.02rem;font-weight:600;color:var(--vela);line-height:1.25}
.numeros .num{
  font-size:1.34rem;font-weight:700;color:var(--ouro-claro);
  font-variant-numeric:lining-nums tabular-nums;letter-spacing:-.01em;
}

/* ─── a constelação ─── */
.hero-ceu{min-width:0}
.ceu-moldura{
  position:relative;
  border:1px solid var(--borda);
  border-radius:var(--raio);
  background:
    radial-gradient(120% 90% at 50% 0%, rgba(30,60,143,.4), transparent 60%),
    linear-gradient(170deg,rgba(13,24,56,.9),rgba(6,11,26,.92));
  padding:22px 22px 20px;
  overflow:hidden;
}
.ceu{width:100%;height:auto;display:block;touch-action:pan-y}

.ceu-legenda{
  display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;
  gap:3px 14px;margin-bottom:6px;min-height:1.3em;
}
.ceu-dica{margin-left:auto}
.ceu-lua{font-size:.76rem;color:rgba(245,248,254,.56);letter-spacing:.01em}
.ceu-lua strong{color:var(--vela);font-weight:600}
.ceu-dica{font-size:.7rem;color:rgba(245,248,254,.4);letter-spacing:.04em;
  white-space:nowrap;pointer-events:none;transition:opacity .3s}
.ceu-dica.some{opacity:0}

.ceu-camada circle.po{fill:var(--vela);opacity:.3}
@media (prefers-reduced-motion:no-preference){
  .ceu-camada circle.po.pisca{animation:respira 7s ease-in-out infinite}
  .ceu>.ceu-camada{opacity:0;animation:surge .9s ease forwards}
  .ceu>.ceu-camada:nth-of-type(2){animation-delay:.14s}
  .ceu>.ceu-camada:nth-of-type(3){animation-delay:.3s}
  .ceu>.ceu-camada:nth-of-type(4){animation-delay:.52s}
}
@keyframes respira{0%,100%{opacity:.16}50%{opacity:.52}}
@keyframes surge{to{opacity:1}}

/* a lua, desenhada na fase real do dia */
.lua-brilho{fill:url(#luzLua)}
.lua-disco{fill:#0E1735;stroke:rgba(127,168,238,.16);stroke-width:1}
.lua-luz{fill:#E9F0FF;opacity:.94}

.ceu-linhas line{
  stroke:var(--brilho);stroke-width:1;opacity:.28;stroke-dasharray:3 6;
  transition:stroke .3s ease,opacity .3s ease,stroke-width .3s ease;
}
.ceu-linhas line.viva{stroke:var(--ouro);stroke-width:1.4;opacity:.62}

.ceu-camada{will-change:transform}
.estrela{cursor:pointer}
.estrela-alvo{fill:transparent}
.estrela-halo{
  fill:url(#luzFria);
  transition:r .3s ease,opacity .3s ease;
}
.estrela-corpo{
  fill:var(--vela);
  transform-box:fill-box;transform-origin:center;
  transition:fill .25s ease,transform .25s ease;
}
.estrela:hover .estrela-halo,.estrela:focus-visible .estrela-halo{fill:url(#luzOuro);r:30}
.estrela:hover .estrela-corpo{fill:var(--ouro-claro);transform:scale(1.1)}
.estrela-anel{fill:none;stroke:none;stroke-width:2;transition:stroke .15s ease}
.estrela:focus{outline:none}
.estrela:focus-visible .estrela-corpo{fill:var(--ouro-claro)}
.estrela:focus-visible .estrela-anel{stroke:var(--ouro-claro)}

.estrela.acesa .estrela-halo{r:34;fill:url(#luzOuro)}
.estrela.acesa .estrela-corpo{fill:var(--ouro-claro);transform:scale(1.26)}

.ceu-fala{
  margin-top:16px;padding:20px 22px;
  background:rgba(6,11,26,.62);
  border:1px solid var(--borda);
  border-radius:var(--raio-p);
}
.ceu-fala blockquote{
  margin:0 0 15px;font-family:var(--display);font-size:1.02rem;font-weight:500;
  line-height:1.48;color:var(--vela);font-style:italic;
}
@media (prefers-reduced-motion:no-preference){
  .ceu-fala.trocou blockquote,.ceu-fala.trocou .ceu-quem{animation:acende .34s ease}
}
@keyframes acende{from{opacity:0;filter:blur(1px)}to{opacity:1;filter:none}}
.ceu-rodape{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.ceu-quem{font-size:.76rem;color:var(--brilho);letter-spacing:.02em}
.ceu-ver{
  background:none;border:1px solid var(--borda);color:var(--vela);
  font-family:var(--corpo);font-size:.82rem;font-weight:600;
  padding:12px 18px;border-radius:999px;cursor:pointer;min-height:42px;transition:background .18s,border-color .18s;
}
.ceu-ver:hover{background:rgba(201,162,39,.16);border-color:var(--ouro)}
.ceu-dica{
  position:absolute;top:26px;right:26px;
  font-size:.7rem;color:rgba(245,248,254,.4);letter-spacing:.04em;
  pointer-events:none;transition:opacity .3s;
}
.ceu-dica.some{opacity:0}

/* ─── estrutura das seções ─── */
.secao{max-width:var(--larg);margin:0 auto;padding:0 24px var(--passo);scroll-margin-top:96px}
.secao-cabeca{max-width:62ch;margin-bottom:38px}
.secao-cabeca h2{margin-bottom:14px;text-wrap:balance}
.secao-cabeca p{color:rgba(245,248,254,.76);font-size:1.02rem}

.painel{border-radius:var(--raio);padding:clamp(28px,4.4vw,56px)}
.painel-escuro{
  background:linear-gradient(165deg,rgba(18,32,72,.86),rgba(6,11,26,.7));
  border:1px solid var(--borda);
}
.painel-claro{background:var(--vela);color:var(--tinta);border:1px solid var(--vela-2)}
.painel-claro h2{color:var(--tinta)}
.painel-claro p{color:var(--tinta-fraca)}

.painel-cabeca{max-width:62ch;margin-bottom:36px}
.painel-cabeca h2{margin-bottom:14px;text-wrap:balance}
.secao-cabeca-interna{margin-bottom:40px}

.cabeca-linha{display:flex;align-items:flex-end;justify-content:space-between;gap:26px;flex-wrap:wrap;margin-bottom:40px}
.cabeca-linha .secao-cabeca{margin-bottom:0;flex:1 1 320px}
.jeito{display:inline-flex;gap:4px;padding:4px;background:rgba(6,11,26,.58);border:1px solid var(--borda);border-radius:999px}
.jeito-btn{
  font-family:var(--corpo);font-size:.86rem;font-weight:600;
  color:rgba(245,248,254,.72);background:none;border:none;border-radius:999px;
  padding:9px 20px;min-height:40px;cursor:pointer;transition:background .2s,color .2s;
}
.jeito-btn:hover{color:var(--vela)}
.jeito-btn.jeito-on{background:linear-gradient(145deg,var(--ouro-claro),var(--ouro));color:#1B1403}
.secao-cabeca-interna p{color:rgba(245,248,254,.76)}

/* ─── depoimentos em vídeo ─── */
.videos{display:grid;grid-template-columns:repeat(6,1fr);gap:26px}
.videos .video-card{grid-column:span 2}
.videos .video-card:nth-child(4){grid-column:2 / span 2}

/* quem está tocando fica na frente, os outros recuam */
.video-moldura{transition:opacity .35s ease,filter .35s ease,transform .35s ease,box-shadow .35s ease}
.videos[data-foco] .video-moldura{opacity:.4;filter:saturate(.68)}
.videos[data-foco="1"] .video-card:nth-child(1) .video-moldura,
.videos[data-foco="2"] .video-card:nth-child(2) .video-moldura,
.videos[data-foco="3"] .video-card:nth-child(3) .video-moldura,
.videos[data-foco="4"] .video-card:nth-child(4) .video-moldura,
.videos[data-foco="5"] .video-card:nth-child(5) .video-moldura{
  opacity:1;filter:none;transform:scale(1.04);
  box-shadow:0 20px 52px rgba(10,18,48,.34);
}
.video-card{margin:0;display:flex;flex-direction:column}
.video-moldura{
  position:relative;border-radius:var(--raio-p);overflow:hidden;
  background:var(--noite);aspect-ratio:9/16;
  box-shadow:0 10px 30px rgba(10,18,48,.16);
}
.video-moldura video{width:100%;height:100%;object-fit:cover;background:var(--noite)}

.video-play{
  position:absolute;inset:0;margin:auto;
  width:62px;height:62px;border-radius:50%;
  background:rgba(6,11,26,.56);border:1.5px solid rgba(245,248,254,.78);
  backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);
  cursor:pointer;display:flex;align-items:center;justify-content:center;
  transition:transform .18s ease,background .18s ease,opacity .2s ease;
}
.video-play svg{width:26px;height:26px;fill:var(--vela);margin-left:3px}
.video-play:hover{transform:scale(1.07);background:rgba(201,162,39,.82)}
.video-play.some{opacity:0;pointer-events:none}

.video-fim{
  position:absolute;inset:0;display:none;
  flex-direction:column;align-items:center;justify-content:center;gap:12px;
  background:rgba(6,11,26,.74);
  -webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);
  border:none;cursor:pointer;color:var(--vela);
  font-family:var(--corpo);font-size:.93rem;font-weight:600;line-height:1.35;
  padding:24px;text-align:center;
}
.video-fim.ver{display:flex}
.video-fim svg{width:46px;height:46px;fill:none;stroke:var(--ouro-claro);stroke-width:1.3;transition:transform .2s ease}
.video-fim:hover svg{transform:scale(1.08)}
.video-fim small{display:block;font-weight:400;font-size:.8rem;color:rgba(245,248,254,.66);margin-top:2px}

.video-card figcaption{padding-top:18px}
.video-card blockquote{
  margin:0 0 10px;font-family:var(--display);font-size:1rem;font-weight:500;
  line-height:1.46;color:var(--tinta);font-style:italic;
}
.video-quem{font-size:.76rem;color:var(--tinta-fraca);letter-spacing:.02em}

.painel-pe{margin-top:34px;padding-top:22px;border-top:1px solid var(--borda-clara);font-size:.9rem}
.painel-pe a{color:var(--azul);font-weight:600;display:inline-block;padding:11px 0}
.painel-pe a:hover{color:var(--ouro)}

/* ─── seletor de situação ─── */
.escolha{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:26px;align-items:start}
.escolha-lista{display:flex;flex-direction:column;gap:9px}
.opcao{
  text-align:left;font-family:var(--display);font-size:1.03rem;font-weight:500;
  line-height:1.3;color:rgba(245,248,254,.8);
  background:rgba(13,24,56,.52);border:1px solid var(--borda);
  border-radius:var(--raio-p);padding:16px 19px;cursor:pointer;
  transition:background .18s,border-color .18s,color .18s,padding-left .18s;
  position:relative;
}
.opcao::before{
  content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);
  width:2.5px;height:0;background:var(--ouro);border-radius:0 2px 2px 0;transition:height .22s ease;
}
.opcao:hover{background:rgba(18,32,72,.8);color:var(--vela);border-color:rgba(127,168,238,.4)}
.opcao.opcao-on{
  background:linear-gradient(135deg,rgba(30,60,143,.52),rgba(18,32,72,.7));
  border-color:rgba(201,162,39,.42);color:var(--vela);padding-left:24px;
}
.opcao.opcao-on::before{height:56%}

.escolha-painel{
  background:linear-gradient(165deg,rgba(18,32,72,.8),rgba(6,11,26,.62));
  border:1px solid var(--borda);border-radius:var(--raio);
  padding:clamp(24px,3.2vw,38px);
}
.escolha-selo{
  display:inline-block;font-size:.73rem;letter-spacing:.09em;
  color:var(--ouro-claro);border:1px solid rgba(201,162,39,.35);
  border-radius:999px;padding:4px 13px;margin-bottom:16px;
}
.escolha-painel h3{font-size:clamp(1.3rem,2.2vw,1.72rem);margin-bottom:14px;line-height:1.2}
.escolha-painel>p{color:rgba(245,248,254,.8);max-width:52ch}
.escolha-itens{list-style:none;padding:0;margin:20px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.escolha-itens li{
  font-size:.84rem;color:rgba(245,248,254,.84);
  background:rgba(127,168,238,.1);border:1px solid var(--borda);
  border-radius:999px;padding:6px 14px;
}
.escolha-pre{font-size:.79rem;color:rgba(245,248,254,.54);margin-top:12px}
.escolha-elo{
  display:inline-block;margin-top:4px;padding:11px 0;
  font-size:.86rem;font-weight:600;color:var(--brilho);
  text-decoration-color:rgba(127,168,238,.45);text-underline-offset:4px;
}
.escolha-elo:hover{color:var(--ouro-claro)}

/* ─── passos ─── */
.passos{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--borda);border:1px solid var(--borda);border-radius:var(--raio-p);overflow:hidden}
.passos li{background:rgba(6,11,26,.5);padding:28px 26px;display:flex;flex-direction:column;gap:9px}
.passo-n{
  font-family:var(--corpo);font-size:.78rem;font-weight:700;letter-spacing:.04em;
  color:var(--ouro-claro);font-variant-numeric:lining-nums;
}
.passos h3{color:var(--vela)}
.passos p{color:rgba(245,248,254,.74);font-size:.95rem}
@media (prefers-reduced-motion:no-preference){
  .passos li.mudou{animation:acende .42s ease}
}

/* ─── perguntas ─── */
.perguntas-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:clamp(30px,5vw,62px);align-items:start}
.secao-cabeca-lado{margin-bottom:0}

.duvida{
  margin-top:26px;padding:20px;
  background:rgba(6,11,26,.5);border:1px solid var(--borda);border-radius:var(--raio-p);
  display:flex;flex-direction:column;gap:10px;
}
.duvida label{font-size:.78rem;letter-spacing:.05em;color:var(--brilho)}
.duvida input{
  font-family:var(--corpo);font-size:.98rem;color:var(--vela);width:100%;
  background:rgba(6,11,26,.6);border:1px solid var(--borda);
  border-radius:var(--raio-p);padding:13px 15px;
  transition:border-color .18s ease,background .18s ease;
}
.duvida input::placeholder{color:rgba(245,248,254,.36)}
.duvida input:hover{border-color:rgba(127,168,238,.4)}
.duvida input:focus{border-color:var(--ouro);background:rgba(13,24,56,.74)}
.duvida input:focus:not(:focus-visible){outline:none}
.duvida .zap-contorno{margin-top:2px}
.faq{display:flex;flex-direction:column;gap:1px;background:var(--borda);border:1px solid var(--borda);border-radius:var(--raio-p);overflow:hidden}
.faq details{background:rgba(6,11,26,.5)}
.faq summary{
  cursor:pointer;padding:19px 24px;font-weight:600;font-size:1rem;
  list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;
  transition:background .18s,color .18s;color:var(--vela);
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{
  content:"";width:9px;height:9px;flex-shrink:0;
  border-right:1.6px solid var(--ouro);border-bottom:1.6px solid var(--ouro);
  transform:rotate(45deg) translate(-2px,-2px);transition:transform .22s ease;
}
.faq details[open] summary::after{transform:rotate(-135deg) translate(-2px,-2px)}
.faq summary:hover{background:rgba(18,32,72,.6)}
.faq details[open] summary{color:var(--ouro-claro)}
.faq details p{padding:0 24px 22px;color:rgba(245,248,254,.78);font-size:.96rem;max-width:62ch}

/* ─── primeira mensagem ─── */
.primeira{
  border:1px solid var(--borda);border-radius:var(--raio);
  padding:clamp(28px,4.4vw,56px);
  background:
    radial-gradient(90% 150% at 50% 0%, rgba(30,60,143,.52), transparent 64%),
    linear-gradient(175deg,rgba(13,24,56,.8),rgba(6,11,26,.6));
}
.fechamento-selo{width:34px;height:34px;fill:var(--ouro);margin:0 0 18px}
.primeira-cabeca{max-width:60ch;margin-bottom:34px}
.primeira-cabeca h2{margin-bottom:14px;text-wrap:balance}
.primeira-cabeca p{color:rgba(245,248,254,.8);font-size:1.02rem}

.primeira-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:clamp(24px,3.6vw,46px);align-items:start}

.campo{display:flex;flex-direction:column;gap:7px;margin-bottom:18px}
.form>.campo:last-child{margin-bottom:0}
.campo label,.rotulo{font-size:.78rem;letter-spacing:.05em;color:var(--brilho)}
.opc{color:rgba(245,248,254,.58);letter-spacing:0}
.campo input,.campo textarea{
  font-family:var(--corpo);font-size:1rem;color:var(--vela);width:100%;
  background:rgba(6,11,26,.52);border:1px solid var(--borda);
  border-radius:var(--raio-p);padding:14px 16px;
  transition:border-color .18s ease,background .18s ease;
}
.campo textarea{resize:vertical;min-height:92px;line-height:1.5}
.campo input::placeholder,.campo textarea::placeholder{color:rgba(245,248,254,.36)}
.campo input:hover,.campo textarea:hover{border-color:rgba(127,168,238,.4)}
.campo input:focus,.campo textarea:focus{border-color:var(--ouro);background:rgba(13,24,56,.72)}
.campo input:focus:not(:focus-visible),.campo textarea:focus:not(:focus-visible){outline:none}
.campo-duplo{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.campo-eco{font-size:.8rem;color:var(--ouro-claro);line-height:1.3}
.campo-eco.aviso{color:#F2B3A8}
.campo-eco .glifo{font-size:1.22em;margin-right:5px;vertical-align:-.04em}

.ceu-noite{
  display:flex;align-items:center;gap:16px;
  margin:0 0 18px;padding:13px 17px;
  background:
    radial-gradient(120% 180% at 88% 50%, rgba(30,60,143,.42), transparent 62%),
    rgba(6,11,26,.5);
  border:1px solid rgba(201,162,39,.3);border-radius:var(--raio-p);
}
.ceu-noite[hidden]{display:none}
.noite-lua{width:62px;height:62px;flex-shrink:0}
.noite-txt{min-width:0}
.noite-rot{font-size:.72rem;letter-spacing:.05em;color:var(--brilho);opacity:.92}
.noite-tit{font-family:var(--display);font-size:1.14rem;font-weight:600;color:var(--vela);line-height:1.2;margin-top:3px}
.noite-tit .glifo{color:var(--ouro-claro);margin-right:7px;font-size:1.02em}
.noite-sub{font-size:.82rem;color:rgba(245,248,254,.68);margin-top:3px;line-height:1.4}
@media (prefers-reduced-motion:no-preference){
  .ceu-noite.chegou{animation:acende .42s ease}
}

.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{
  font-family:var(--corpo);font-size:.86rem;font-weight:500;
  color:rgba(245,248,254,.78);background:rgba(13,24,56,.58);
  border:1px solid var(--borda);border-radius:999px;
  padding:10px 16px;min-height:40px;cursor:pointer;
  transition:background .18s ease,border-color .18s ease,color .18s ease;
}
.chip:hover{color:var(--vela);border-color:rgba(127,168,238,.46)}
.chip.chip-on{
  background:linear-gradient(140deg,rgba(201,162,39,.26),rgba(201,162,39,.08));
  border-color:rgba(201,162,39,.58);color:var(--vela);
}

.previa-rotulo{font-size:.78rem;letter-spacing:.05em;color:var(--brilho);margin-bottom:9px}
.previa-tela{
  background:var(--vela);border:1px solid var(--vela-2);
  border-radius:var(--raio);overflow:hidden;
  box-shadow:0 16px 42px rgba(6,11,26,.42);
}
.previa-topo{
  display:flex;align-items:center;gap:11px;padding:12px 15px;
  background:var(--vela-2);border-bottom:1px solid rgba(10,18,48,.07);
}
.previa-selo{
  width:34px;height:34px;border-radius:50%;flex-shrink:0;
  background:linear-gradient(145deg,var(--noite-2),var(--breu));
  display:flex;align-items:center;justify-content:center;
}
.previa-selo svg{width:17px;height:17px;fill:var(--ouro)}
.previa-quem{display:flex;flex-direction:column;line-height:1.22}
.previa-quem strong{font-family:var(--display);font-size:.99rem;font-weight:600;color:var(--tinta)}
.previa-quem em{font-style:normal;font-size:.74rem;color:var(--tinta-fraca);font-variant-numeric:lining-nums}
.previa-chat{
  padding:20px 16px 22px;min-height:188px;
  display:flex;flex-direction:column;justify-content:flex-end;
  background:linear-gradient(180deg,#EDF2FB,var(--vela));
}
.bolha{
  align-self:flex-end;max-width:94%;
  background:#E1E9F9;border:1px solid rgba(30,60,143,.13);
  border-radius:15px 15px 5px 15px;padding:12px 14px 9px;
}
.bolha p{color:var(--tinta);font-size:.95rem;line-height:1.5;white-space:pre-line}
.bolha-hora{
  display:block;text-align:right;margin-top:6px;
  font-size:.68rem;color:var(--tinta-fraca);font-variant-numeric:lining-nums;
}
@media (prefers-reduced-motion:no-preference){
  .bolha.pulsa{animation:bolhaEntra .26s ease}
}
@keyframes bolhaEntra{from{transform:translateY(5px) scale(.985);opacity:.55}to{transform:none;opacity:1}}

.previa .zap-grande{margin-top:18px;width:100%}
.zap.travado{
  filter:grayscale(.72);opacity:.5;cursor:not-allowed;
  box-shadow:none;transform:none;
}
.zap.travado:hover{transform:none;box-shadow:none}
.previa-trava{
  margin-top:11px;font-size:.84rem;font-weight:600;color:#F2B3A8;
}
.previa-fatos{
  list-style:none;margin:18px 0 0;padding:17px 0 0;
  border-top:1px solid var(--borda);display:flex;flex-direction:column;gap:9px;
}
.previa-fatos li{
  position:relative;padding-left:18px;line-height:1.45;
  font-size:.87rem;color:rgba(245,248,254,.78);
}
.previa-fatos li::before{
  content:"";position:absolute;left:0;top:.56em;
  width:6px;height:6px;border-radius:50%;background:var(--ouro);opacity:.8;
}
.previa-nota{margin-top:14px;font-size:.78rem;color:rgba(245,248,254,.54);line-height:1.55}

/* ─── rodapé ─── */
.rodape{border-top:1px solid var(--borda);background:rgba(6,11,26,.6)}
.rodape-grid{
  max-width:var(--larg);margin:0 auto;padding:clamp(40px,5vw,62px) 24px 34px;
  display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:34px;
}
.rodape-marca{display:flex;gap:12px;align-items:flex-start}
.rodape-marca .marca-selo{width:24px;height:24px;margin-top:2px}
.rodape-marca p{line-height:1.5}
.rodape-marca strong{font-family:var(--display);font-size:1.06rem;font-weight:600}
.rodape-col h3{
  font-family:var(--corpo);font-size:.75rem;font-weight:700;letter-spacing:.08em;
  color:var(--brilho);margin-bottom:13px;
}
.rodape-col p{font-size:.9rem;color:rgba(245,248,254,.74);margin-bottom:2px}
.rodape-col a{color:rgba(245,248,254,.88);text-decoration:none;font-weight:500;display:inline-block;padding:12px 0;line-height:1.2}
.rodape-col a:hover{color:var(--ouro-claro);text-decoration:underline}

.aviso{
  max-width:var(--larg);margin:0 auto;padding:26px 24px 110px;
  border-top:1px solid var(--borda);
}
.aviso p{font-size:.81rem;color:rgba(245,248,254,.56);max-width:88ch;margin-bottom:9px;line-height:1.6}
.aviso strong{color:rgba(245,248,254,.82)}
.aviso-fim{font-size:.76rem!important;color:rgba(245,248,254,.4)!important;margin-top:16px}

/* ─── WhatsApp flutuante ─── */
.zap-flutua{
  position:fixed;right:20px;bottom:20px;z-index:70;
  width:56px;height:56px;border-radius:50%;
  background:linear-gradient(145deg,var(--ouro-claro),var(--ouro));
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 6px 24px rgba(6,11,26,.6),0 0 0 6px rgba(201,162,39,.13);
  transition:transform .25s ease,box-shadow .2s ease,opacity .25s ease;
}
.zap-flutua.recolhido{opacity:0;transform:scale(.6);pointer-events:none}
.zap-flutua svg{width:28px;height:28px;fill:#1B1403}
.zap-flutua:hover{transform:scale(1.07);box-shadow:0 10px 30px rgba(6,11,26,.7),0 0 0 9px rgba(201,162,39,.18)}

/* ───────────────── responsivo ───────────────── */
@media (max-width:1000px){
  /* no celular o céu vem antes do texto: é a parte viva da página */
  .hero-grid{grid-template-columns:1fr;gap:0}
  .hero-txt{display:contents}
  .hero-sobre{order:1;margin-bottom:18px}
  .hero-ceu{order:2;max-width:520px;width:100%;margin:0 auto 30px}
  .hero-txt h1{order:3}
  .hero-sub{order:4}
  .hero-acoes{order:5}
  .numeros{order:6}
  .perguntas-grid{grid-template-columns:1fr;gap:30px}
  .rodape-grid{grid-template-columns:1fr 1fr;gap:30px}
}

@media (max-width:860px){
  .menu{display:none}
  .zap-topo{display:none}
  .menu-btn{display:flex}
  .menu-mobile.aberto{display:flex}
  .faixa{gap:16px;padding:12px 20px}
  .escolha{grid-template-columns:1fr}
  .videos{grid-template-columns:1fr;gap:34px;max-width:420px;margin:0 auto}
  .videos .video-card,.videos .video-card:nth-child(4){grid-column:auto}
  .videos[data-foco] .video-moldura{opacity:1;filter:none;transform:none}
  .passos{grid-template-columns:1fr}
  .primeira-grid{grid-template-columns:1fr;gap:30px}
  .jeito{width:100%}
  .jeito-btn{flex:1}
}

@media (max-width:620px){
  body{font-size:16px}
  :root{--passo:58px;--raio:16px}
  .hero{padding:34px 20px 30px}
  .secao{padding:0 20px var(--passo)}
  .hero-sub{font-size:1rem}
  .hero-acoes{gap:14px}
  .zap-grande{padding:15px 26px;font-size:1rem;width:100%}
  .hero-nota{width:100%;text-align:center}
  .numeros{grid-template-columns:1fr;gap:14px}
  .ceu-noite{gap:13px;padding:12px 14px}
  .noite-lua{width:48px;height:48px}
  .ceu-moldura{padding:16px 16px 16px}
  .ceu-legenda{gap:3px 10px}
  .ceu-lua{font-size:.72rem}
  .ceu-data{display:none}
  .ceu-fala{padding:17px 18px}
  .ceu-fala blockquote{font-size:.97rem}
  .ceu-rodape{flex-direction:column;align-items:flex-start;gap:11px}
  .painel{padding:26px 20px}
  .faq summary{padding:17px 18px;font-size:.95rem}
  .faq details p{padding:0 18px 19px}
  .passos li{padding:22px 20px}
  .rodape-grid{grid-template-columns:1fr;gap:26px}
  .campo-duplo{grid-template-columns:1fr;gap:0}
  .primeira-cabeca{margin-bottom:26px}
  .previa-chat{min-height:150px}
  .aviso{padding:22px 20px 96px}
  .zap-flutua{width:52px;height:52px;right:16px;bottom:16px}
  .zap-flutua svg{width:26px;height:26px}
}

@media (max-width:380px){
  .faixa{padding:11px 16px}
  .marca-txt strong{font-size:.98rem}
  .marca-txt em{font-size:.64rem}
  .hero{padding:28px 16px 26px}
  .secao{padding:0 16px var(--passo)}
  .opcao{font-size:.96rem;padding:14px 16px}
  .escolha-painel{padding:20px 17px}
  .chip{font-size:.83rem;padding:9px 13px}
  .campo input,.campo textarea{font-size:.97rem;padding:13px 14px}
  .numeros .num{font-size:1.28rem}
}
