/* site.css — cinematic 3D-scroll shell. Colors come from CSS vars set per-brief. */
:root {
  --bg: #060d18;
  --accent: #39e0ff;
  --text: #dfeaf5;
  --muted: rgba(223, 234, 245, 0.55);
  --hairline: rgba(255, 255, 255, 0.12);
  --serif: "Times New Roman", Georgia, serif;
  --sans: "Helvetica Neue", Inter, Arial, sans-serif;
}
* { margin: 0; padding: 0; box-sizing: border-box; }
html { scrollbar-width: none; }
html::-webkit-scrollbar { display: none; }
body {
  background: var(--bg);
  color: var(--text);
  font-family: var(--sans);
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
  cursor: default;
}

/* fixed WebGL / canvas backdrop — effectively pinned so text scrolls over it */
#scene {
  position: fixed; inset: 0; width: 100vw; height: 100vh;
  display: block; z-index: 0;
}
/* film grain + vignette for cinematic depth */
.grain, .vignette { position: fixed; inset: 0; pointer-events: none; z-index: 1; }
.vignette { box-shadow: inset 0 0 340px 60px rgba(0,0,0,0.85); }
.grain {
  opacity: 0.05; mix-blend-mode: overlay;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* content sits above the canvas */
main { position: relative; z-index: 2; }
.chapter {
  min-height: 100vh; display: flex; align-items: center;
  padding: 12vh 8vw; position: relative;
}
.chapter[data-align="center"] { justify-content: center; text-align: center; }
.chapter[data-align="right"] { justify-content: flex-end; text-align: right; }
.chapter-inner { max-width: 720px; will-change: transform, opacity; }

.kicker {
  font-size: 13px; letter-spacing: 0.42em; text-transform: uppercase;
  color: var(--accent); margin-bottom: 22px; font-weight: 600;
}
.chapter h1 {
  font-family: var(--serif); font-weight: 400; line-height: 0.98;
  font-size: clamp(48px, 8.5vw, 132px); letter-spacing: -0.01em;
}
.chapter h2 {
  font-family: var(--serif); font-weight: 400; line-height: 1.02;
  font-size: clamp(34px, 5.2vw, 74px); letter-spacing: -0.01em; margin-bottom: 8px;
}
.chapter p.lead { margin-top: 26px; font-size: clamp(16px, 1.5vw, 21px); color: var(--muted); max-width: 46ch; line-height: 1.55; }
.hero-sub { margin-top: 30px; font-size: 15px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--muted); }

/* spec strip */
.specs { display: flex; flex-wrap: wrap; gap: 44px; margin-top: 40px; }
.spec { border-top: 1px solid var(--hairline); padding-top: 12px; min-width: 120px; }
.spec .k { font-size: 11px; letter-spacing: 0.28em; text-transform: uppercase; color: var(--muted); }
.spec .v { font-family: var(--serif); font-size: 30px; margin-top: 6px; }

/* CTA */
.cta { text-align: center; }
.cta .btn {
  display: inline-block; margin-top: 30px; padding: 16px 40px; border: 1px solid var(--accent);
  color: var(--accent); text-decoration: none; letter-spacing: 0.22em; text-transform: uppercase; font-size: 13px;
  transition: background 0.3s, color 0.3s;
}
.cta .btn:hover { background: var(--accent); color: #000; }

/* fixed HUD (depth / speed / floor counter) */
.hud {
  position: fixed; top: 0; right: 0; height: 100vh; width: 92px; z-index: 3;
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 14px; pointer-events: none;
}
.hud .rail { position: relative; width: 2px; height: 42vh; background: var(--hairline); overflow: hidden; }
.hud .rail #hud-bar { position: absolute; inset: 0; transform-origin: top; background: var(--accent); transform: scaleY(0); }
.hud .label { writing-mode: vertical-rl; font-size: 10px; letter-spacing: 0.4em; text-transform: uppercase; color: var(--muted); }
.hud #hud-value { writing-mode: vertical-rl; font-family: var(--sans); font-size: 13px; letter-spacing: 0.14em; color: var(--accent); }

/* top brand bar + scroll cue */
.topbar {
  position: fixed; top: 0; left: 0; right: 0; z-index: 4; display: flex; justify-content: space-between;
  padding: 26px 34px; font-size: 12px; letter-spacing: 0.3em; text-transform: uppercase; color: var(--muted);
  mix-blend-mode: difference;
}
.scrollcue {
  position: fixed; bottom: 26px; left: 50%; transform: translateX(-50%); z-index: 4;
  font-size: 11px; letter-spacing: 0.4em; text-transform: uppercase; color: var(--muted);
  animation: bob 2.4s ease-in-out infinite;
}
@keyframes bob { 0%,100% { transform: translate(-50%, 0); opacity: 0.5; } 50% { transform: translate(-50%, 8px); opacity: 1; } }

/* menu / secondary content */
.menu-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; margin-top: 40px; }
.menu-cols .row { display: flex; justify-content: space-between; border-bottom: 1px solid var(--hairline); padding: 14px 0; }
.menu-cols h3 { font-family: var(--serif); font-weight: 400; font-size: 26px; margin-bottom: 12px; color: var(--accent); }

@media (max-width: 720px) {
  .chapter { padding: 12vh 7vw; }
  .menu-cols { grid-template-columns: 1fr; gap: 30px; }
  .specs { gap: 24px; }
  .hud { width: 60px; }
}

/* loading veil until the engine reports ready */
#veil { position: fixed; inset: 0; z-index: 9; background: var(--bg); display: flex; align-items: center; justify-content: center; transition: opacity 0.8s; }
#veil.gone { opacity: 0; pointer-events: none; }
#veil .mark { font-family: var(--serif); font-size: 40px; letter-spacing: 0.1em; }
#veil .bar { position: absolute; bottom: 20%; width: 160px; height: 1px; background: var(--hairline); overflow: hidden; }
#veil .bar i { position: absolute; inset: 0; width: 40%; background: var(--accent); animation: slide 1.1s ease-in-out infinite; }
@keyframes slide { 0% { left: -40%; } 100% { left: 100%; } }

/* ═══ Identidade Rizzi Media — creme, preto quente, dourado; Playfair + Manrope ═══ */
:root{--gold:#C9A54E;--gold-2:#D9B968;--gold-ink:#8A6D2B;--cream:#F6F1E7;--cream-2:#EFE7D8;--sand:#B7A582;
  --ink:#161412;--ink-2:#211D17;--muted-ink:#4A4436;--hair-ink:rgba(22,20,18,.14);--hair-cream:rgba(246,241,231,.16);
  --serif:"Playfair Display",Georgia,"Times New Roman",serif;--sans:Manrope,ui-sans-serif,system-ui,"Segoe UI",Roboto,sans-serif}
body{font-family:var(--sans)}

/* abertura cinematográfica — variante escura da marca */
.chapter-inner{max-width:780px}
.chapter h1,.chapter h2{font-family:var(--serif);font-weight:600;letter-spacing:-.012em;line-height:1.06;text-wrap:balance}
.chapter h1{font-size:clamp(38px,5.4vw,74px)}
.chapter h2{font-size:clamp(30px,4vw,56px)}
.chapter h1 em,.chapter h2 em{font-style:italic;color:var(--gold);font-weight:600}
.kicker{font-family:var(--sans);font-size:11px;letter-spacing:.24em;font-weight:600;color:var(--gold);display:flex;align-items:center;gap:12px;margin-bottom:26px}
.kicker::before{content:"";width:28px;height:1px;background:var(--gold);flex:none}
.chapter[data-align="right"] .kicker{justify-content:flex-end}
.chapter[data-align="center"] .kicker{justify-content:center}
.chapter p.lead{font-family:var(--sans);color:rgba(246,241,231,.74);font-size:clamp(16px,1.35vw,19px);line-height:1.6;max-width:50ch}
.chapter[data-align="right"] p.lead{margin-left:auto}
.chapter .hero-sub{text-transform:none;letter-spacing:0;font-size:clamp(1.02rem,1.3vw,1.2rem);line-height:1.58;max-width:56ch;color:rgba(246,241,231,.78);margin-top:26px}
.hero-acao{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px;align-items:center}
.hero-confianca{flex-basis:100%;margin:8px 0 0;font-size:.86rem;color:rgba(246,241,231,.58)}
.cta .btn{border-radius:2px;background:var(--gold);color:var(--ink);border-color:var(--gold);text-transform:none;letter-spacing:0;font-weight:600;font-size:1rem;padding:16px 28px;font-family:var(--sans)}
.cta .btn:hover,.cta .btn:focus-visible{background:var(--gold-2);color:var(--ink)}
#veil .mark{font-family:var(--serif);font-style:italic;letter-spacing:0;font-weight:400}
.hud #hud-value{font-family:var(--serif);font-size:15px;letter-spacing:.06em;color:var(--gold)}
.hud .label{color:rgba(246,241,231,.5)}

/* No herói, o sólido 3D sai de baixo do título: a cena desliza para a direita (desktop)
   ou para baixo (celular) enquanto o leitor está na primeira tela; ao rolar, volta ao centro. */
#scene{transition:transform 1.1s cubic-bezier(.2,.7,.2,1);transform-origin:center;will-change:transform}
@media (min-width:900px){body.no-hero #scene{transform:translateX(19vw) scale(1.42)}}
@media (max-width:899px){body.no-hero #scene{transform:translateY(58vh) scale(2.3)}}
/* véu suave atrás do texto dos capítulos: legível por cima do ouro sem esconder a cena */
.chapter-inner{position:relative}
html{overflow-x:clip}
.chapter-inner::before{content:"";position:absolute;inset:-70px -6vw;z-index:-1;pointer-events:none;
  background:radial-gradient(ellipse at center,rgba(22,20,18,.86) 0%,rgba(22,20,18,.6) 45%,rgba(22,20,18,0) 78%)}

/* barra do topo: marca em Playfair + botão WhatsApp (o mesmo padrão do site da agência) */
.topbar{mix-blend-mode:normal;text-transform:none;letter-spacing:0;align-items:center;color:var(--cream);transition:background .3s,padding .3s,color .3s}
.topbar .marca{font-family:var(--serif);font-weight:600;font-size:21px;color:inherit;text-decoration:none}
.topbar .marca span{font-style:italic;font-weight:400}
.topo-zap{font-family:var(--sans);font-size:.82rem;font-weight:600;letter-spacing:.02em;color:var(--ink);background:var(--gold);padding:9px 16px;border-radius:2px;text-decoration:none}
.topo-zap:hover,.topo-zap:focus-visible{background:var(--gold-2)}
body.pos-cinema .topbar{background:rgba(246,241,231,.9);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--ink);padding:14px 34px;border-bottom:1px solid var(--hair-ink)}

/* botões — retos, como os da agência */
.botao{display:inline-block;text-align:center;background:var(--gold);color:var(--ink);font-family:var(--sans);font-weight:600;font-size:1rem;padding:15px 26px;border-radius:2px;text-decoration:none;transition:background .2s,transform .15s;border:1px solid var(--gold)}
.botao:hover,.botao:focus-visible{background:var(--gold-2);border-color:var(--gold-2);transform:translateY(-1px)}
.botao.secundario{background:transparent;border-color:rgba(246,241,231,.45);color:var(--cream)}
.botao.secundario:hover,.botao.secundario:focus-visible{background:rgba(246,241,231,.08);border-color:var(--cream)}
.botao.grande{padding:18px 34px;font-size:1.05rem}
.link-seta{display:inline-block;margin-top:18px;color:var(--ink);font-weight:600;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:2px}
.link-seta::after{content:" →"}

/* assinatura: citação no lugar da foto */
.citacao{margin:0;padding:34px 36px 30px;border:1px solid rgba(22,20,18,.3);background:rgba(246,241,231,.38)}
.citacao p{margin:0;font-family:var(--serif);font-weight:600;font-size:clamp(1.3rem,2vw,1.7rem);line-height:1.3;color:var(--ink);text-wrap:balance}
.citacao p em{font-style:italic;font-weight:400}
.citacao footer{margin-top:14px;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(22,20,18,.72);font-weight:600}
.citacao .fatos{grid-template-columns:repeat(3,1fr);margin-top:26px;gap:14px}
.citacao .fatos li{border-top-color:rgba(22,20,18,.3)}
.citacao .fatos strong{color:var(--ink);font-size:1.4rem}
.citacao .fatos span{color:rgba(22,20,18,.75)}

/* ═══ Corpo de conversão ═══ */
.bloco{position:relative;z-index:2;padding:11vh 8vw;background:var(--cream);color:var(--ink-2)}
.bloco.claro2{background:var(--cream-2)}
.bloco.escuro{background:var(--ink);color:var(--cream)}
.bloco.areia{background:var(--sand);color:var(--ink)}
.bloco-inner{max-width:1120px;margin:0 auto}
.olho{font-family:var(--sans);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;font-weight:600;color:var(--gold-ink);margin:0 0 18px;display:flex;align-items:center;gap:12px}
.olho::before{content:"";width:28px;height:1px;background:currentColor;flex:none}
.escuro .olho{color:var(--gold)}
.olho.centro{justify-content:center}
.bloco h2{font-family:var(--serif);font-weight:600;font-size:clamp(1.9rem,3.5vw,2.85rem);line-height:1.1;letter-spacing:-.012em;margin:0;text-wrap:balance}
.bloco h2 em{font-style:italic;color:var(--gold-ink);font-weight:600}
.escuro h2 em{color:var(--gold)}
.areia h2 em{color:var(--ink);font-weight:400}
.bloco .sub{margin:16px 0 0;font-size:1.08rem;line-height:1.62;color:var(--muted-ink);max-width:58ch}
.escuro .sub{color:rgba(246,241,231,.72)}
.areia .sub{color:rgba(22,20,18,.8);margin-top:0}
.bloco strong{color:inherit;font-weight:700}
.sub.centro{margin-left:auto;margin-right:auto;text-align:center}
.cabeca{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.6fr);gap:28px 48px;align-items:start;margin-bottom:44px}
.cabeca .olho{margin:10px 0 0}
.duas{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}

/* fatos (no lugar de números inventados) */
.fatos{list-style:none;margin:34px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:18px 28px}
.fatos li{border-top:1px solid var(--hair-ink);padding-top:12px;display:flex;flex-direction:column;gap:4px}
.fatos strong{font-family:var(--serif);font-weight:600;font-size:1.6rem;color:var(--gold-ink);line-height:1}
.fatos span{font-size:.86rem;color:var(--muted-ink)}

/* a conversa, em tela clara */
.telefone{max-width:420px;width:100%;margin:0 auto;background:#FFFDF8;border:1px solid var(--hair-ink);border-radius:28px;overflow:hidden;box-shadow:0 50px 90px -50px rgba(22,20,18,.55),0 1px 0 rgba(255,255,255,.7) inset}
.telefone-topo{display:flex;align-items:center;gap:12px;padding:16px 18px;background:var(--ink);color:var(--cream)}
.telefone-topo .avatar{width:38px;height:38px;border-radius:50%;background:var(--gold);color:var(--ink);display:grid;place-items:center;font-family:var(--serif);font-weight:600;font-size:1.1rem}
.telefone-topo b{display:block;font-size:.95rem}
.telefone-topo small{color:rgba(246,241,231,.6);font-size:.78rem}
.telefone-topo .online{margin-left:auto;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}
.chat{list-style:none;margin:0;padding:18px 14px 20px;display:flex;flex-direction:column;gap:9px;min-height:400px;background:var(--cream-2)}
.balao{max-width:84%;opacity:0;transform:translateY(10px);transition:opacity .35s ease,transform .35s ease}
.balao.visivel{opacity:1;transform:none}
.balao span{display:inline-block;padding:10px 13px;border-radius:14px;font-size:.96rem;line-height:1.42;color:var(--ink-2)}
.balao.paciente{align-self:flex-end}
.balao.paciente span{background:#E9D9AC;border-bottom-right-radius:4px}
.balao.ia{align-self:flex-start}
.balao.ia span{background:#fff;border:1px solid var(--hair-ink);border-bottom-left-radius:4px}
.balao.digitando span{display:inline-flex;gap:5px;padding:12px 14px}
.balao.digitando i{width:7px;height:7px;border-radius:50%;background:var(--sand);animation:pulsa 1.1s infinite}
.balao.digitando i:nth-child(2){animation-delay:.18s}.balao.digitando i:nth-child(3){animation-delay:.36s}
@keyframes pulsa{0%,80%,100%{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}

/* calculadora (faixa escura) */
.calc-grade{align-items:start}
.calc-form{display:flex;flex-direction:column;gap:26px}
.calc-form label{display:grid;grid-template-columns:1fr auto;gap:8px 16px;align-items:end;border-top:1px solid var(--hair-cream);padding-top:16px}
.calc-form .lbl{color:rgba(246,241,231,.72);font-size:1rem}
.calc-form .val{font-family:var(--serif);font-variant-numeric:tabular-nums;color:var(--cream);font-weight:600;font-size:1.25rem;white-space:nowrap}
.calc-form input[type=range]{grid-column:1/-1;width:100%;accent-color:var(--gold);height:28px}
.resultado{display:flex;flex-direction:column;gap:16px}
.res{border:1px solid var(--hair-cream);padding:22px 24px;display:flex;flex-direction:column;gap:8px}
.res .olho{margin:0}
.res strong{font-family:var(--serif);font-weight:600;font-size:clamp(1.9rem,3.6vw,2.8rem);line-height:1;font-variant-numeric:tabular-nums}
.res .perda{color:var(--gold)}
.res .custo{color:var(--cream)}
.res small{color:rgba(246,241,231,.6)}
.veredito{margin:0;color:rgba(246,241,231,.85);font-size:1.04rem;line-height:1.55}
.veredito b{color:var(--gold)}

/* cartões numerados (o grid com borda fina do site da agência) */
.cartoes{list-style:none;margin:0;padding:0;display:grid;gap:1px;background:var(--hair-ink);border:1px solid var(--hair-ink)}
.cartoes.quatro{grid-template-columns:repeat(4,1fr)}
.cartoes.tres{grid-template-columns:repeat(3,1fr)}
.cartao{background:var(--cream);padding:28px 26px 30px;display:flex;flex-direction:column;gap:12px}
.claro2 .cartao{background:var(--cream-2)}
.cartao .num{font-family:var(--serif);font-style:italic;color:var(--gold-ink);font-size:1rem}
.cartao b{font-family:var(--serif);font-weight:600;font-size:1.22rem;line-height:1.25;color:var(--ink)}
.cartao span:not(.num){font-size:.95rem;line-height:1.58;color:var(--muted-ink)}
.escuro .cartoes{background:var(--hair-cream);border-color:var(--hair-cream)}
.escuro .cartao{background:var(--ink)}
.escuro .cartao .num{color:var(--gold)}
.escuro .cartao b{color:var(--cream)}
.escuro .cartao span:not(.num){color:rgba(246,241,231,.7)}
.nota{margin:22px 0 0;color:rgba(246,241,231,.7);font-size:.98rem}

/* para quem é / não é */
.pra-quem{align-items:start;gap:48px}
.pra-quem h3{font-family:var(--serif);font-weight:600;font-style:italic;font-size:1.35rem;margin:0 0 6px;color:var(--ink)}
.lista{list-style:none;margin:0;padding:0}
.lista li{border-bottom:1px solid var(--hair-ink);padding:14px 0 14px 30px;position:relative;color:var(--muted-ink);line-height:1.5}
.lista li::before{position:absolute;left:0;top:13px;font-weight:700}
.lista.sim li::before{content:"✓";color:var(--gold-ink)}
.lista.nao li::before{content:"✕";color:var(--sand)}

/* dúvidas */
.faq details{border-top:1px solid var(--hair-ink);padding:2px 0}
.faq details:last-of-type{border-bottom:1px solid var(--hair-ink)}
.faq summary{cursor:pointer;list-style:none;padding:18px 40px 18px 0;color:var(--ink);font-family:var(--serif);font-size:1.15rem;font-weight:600;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:6px;top:14px;color:var(--gold-ink);font-family:var(--sans);font-weight:400;font-size:1.5rem;line-height:1;transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{margin:0 0 20px;color:var(--muted-ink);line-height:1.65;max-width:68ch}

/* preço */
.card-preco{position:relative;border:1px solid var(--gold);background:rgba(201,165,78,.06);padding:36px 34px 30px;display:flex;flex-direction:column;gap:16px;max-width:600px}
.card-preco .tag{position:absolute;top:-12px;left:28px;background:var(--gold);color:var(--ink);font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;font-weight:700;padding:5px 12px}
.card-preco .linha{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-bottom:1px solid var(--hair-cream);padding-bottom:14px;color:rgba(246,241,231,.72)}
.card-preco .linha strong{font-family:var(--serif);font-weight:600;font-size:1.8rem;color:var(--cream);font-variant-numeric:tabular-nums}
.card-preco .linha small{font-size:.9rem;color:rgba(246,241,231,.6);font-family:var(--sans);font-weight:400}
.inclui{margin:0;padding:0;list-style:none;color:rgba(246,241,231,.78);line-height:1.75}
.inclui li{padding-left:22px;position:relative}
.inclui li::before{content:"✓";position:absolute;left:0;color:var(--gold)}
.roi{margin:0;color:var(--cream);font-size:1.02rem;line-height:1.5;min-height:1.5em}
.roi b{color:var(--gold)}
.mini{margin:0;color:rgba(246,241,231,.6);font-size:.9rem}

/* final + rodapé */
.final .bloco-inner{text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}
.final h2{font-size:clamp(2.1rem,4.4vw,3.5rem);max-width:26ch}
.final .botao{margin-top:22px}
.rodape-legal{max-width:1120px;margin:12vh auto 0;padding-top:34px;border-top:1px solid var(--hair-cream)}
.rodape-inner{display:grid;grid-template-columns:auto 1fr auto;gap:24px 40px;align-items:start}
.rodape-marca{font-family:var(--serif);font-weight:600;font-size:1.2rem;color:var(--cream)}
.rodape-marca span{font-style:italic;font-weight:400}
.rodape-sobre{margin:0;max-width:52ch;color:rgba(246,241,231,.6);font-size:.92rem;line-height:1.6}
.rodape-links{display:flex;flex-direction:column;gap:8px;font-size:.92rem;text-align:left}
.rodape-links a{color:rgba(246,241,231,.7);text-decoration:none;border-bottom:1px solid transparent}
.rodape-links a:hover,.rodape-links a:focus-visible{color:var(--gold);border-bottom-color:var(--gold)}

/* botão fixo no celular, só depois da abertura */
.cta-fixa{display:none}

/* HUD e dica de rolagem somem quando a abertura acaba */
body.pos-cinema .hud{opacity:0;pointer-events:none;transition:opacity .4s}
body.pos-cinema .scrollcue{display:none}

:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
@media (max-width:980px){
  .cartoes.quatro{grid-template-columns:repeat(2,1fr)}
  .cabeca{grid-template-columns:1fr;gap:14px;margin-bottom:34px}
  .cabeca .olho{margin:0}
}
@media (max-width:760px){
  .bloco{padding:10vh 6vw}
  .duas{grid-template-columns:1fr;gap:36px}
  .cartoes.quatro,.cartoes.tres{grid-template-columns:1fr}
  .fatos{grid-template-columns:1fr 1fr}
  .rodape-inner{grid-template-columns:1fr}
  .citacao{padding:26px 22px 24px}
  .citacao .fatos{grid-template-columns:1fr}
  .topbar{padding:20px 22px}
  body.pos-cinema .topbar{padding:12px 22px}
  .card-preco{padding:30px 22px 24px}
  .hero-acao .botao{width:100%}
  .cta-fixa{position:fixed;left:14px;right:14px;bottom:14px;z-index:5;text-align:center;background:var(--gold);color:var(--ink);font-weight:600;font-size:.95rem;padding:15px 18px;border-radius:2px;text-decoration:none;box-shadow:0 12px 30px -10px rgba(0,0,0,.5);transform:translateY(120%);transition:transform .35s}
  .cta-fixa{display:block}
  body.pos-cinema .cta-fixa{transform:none}
  .final .bloco-inner{padding-bottom:64px}
}
@media (prefers-reduced-motion:reduce){.balao{transition:none;opacity:1;transform:none}.balao.digitando{display:none}}
