/* home v2 */
.hero{padding-top:10px;padding-bottom:30px}
.hero .eyebrow{margin-bottom:14px}
.hero-sub{margin:16px 0 22px}
.trio{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:24px}
.trio-i{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 6px 11px;border-radius:16px;
  background:var(--card);border:1px solid var(--line);text-align:center}
.trio-i .sym{font-size:22px;line-height:1.1;color:var(--lilac)}
.trio-i b{font-size:14px;font-weight:600}
.trio-i small{font-size:12px;color:var(--dim)}
.trio-i.known{border-color:rgba(236,201,133,.35);background:rgba(236,201,133,.07)}
.trio-i.known .sym{color:var(--gold)}
.trio-i .q{font-family:var(--serif);font-size:18px;line-height:1;color:var(--gold);animation:qblink 2.2s ease-in-out infinite}
.trio-i:nth-child(3) .q{animation-delay:.6s}
@keyframes qblink{0%,100%{opacity:.35}50%{opacity:1}}

.start .field{margin-bottom:12px}
.start-trust{display:flex;justify-content:center;gap:16px;margin-top:12px;font-size:13px;color:var(--dim)}
.start-trust span::before{content:"✓ ";color:var(--ok)}
.returning .btn{margin-top:14px}
.proof{margin-top:22px;text-align:center;font-size:14px;color:var(--mute)}

.reveal-list{list-style:none;display:grid;gap:10px}
.reveal-list li{display:flex;gap:14px;align-items:flex-start;padding:16px;border-radius:var(--r);background:var(--card);border:1px solid var(--line)}
.reveal-list .ri{flex:0 0 40px;height:40px;border-radius:12px;display:grid;place-items:center;font-size:20px;
  background:rgba(185,167,255,.1);color:var(--lilac)}
.reveal-list b{display:block;font-size:16px;margin-bottom:2px}
.reveal-list p{font-size:15px;color:var(--mute);line-height:1.45}

.sample{margin:4px 0 0;padding:26px 22px;border-radius:var(--r2);
  background:linear-gradient(160deg,rgba(185,167,255,.13),rgba(236,201,133,.06));border:1px solid rgba(185,167,255,.22)}
.sample blockquote{font-family:var(--serif);font-style:italic;font-weight:400;font-size:23px;line-height:1.32;margin:12px 0 10px;letter-spacing:-.01em}
.calc-note{font-size:14px;color:var(--dim);line-height:1.55;margin-top:16px;padding:0 4px}

.quotes{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 20px 6px;scrollbar-width:none;
  max-width:560px;margin:0 auto}
.quotes::-webkit-scrollbar{display:none}
.quote{flex:0 0 84%;scroll-snap-align:center;padding:20px;border-radius:var(--r2);background:var(--card);border:1px solid var(--line)}
.quote p{font-family:var(--serif);font-size:17px;line-height:1.45;margin:10px 0 14px}
.quote b{display:block;font-size:14px}
.quote span:last-child{font-size:13px;color:var(--dim)}

.steps{list-style:none;display:grid;gap:14px}
.steps li{display:flex;gap:14px}
.steps li>b{flex:0 0 34px;height:34px;border-radius:50%;display:grid;place-items:center;font-family:var(--serif);
  background:rgba(236,201,133,.12);color:var(--gold);border:1px solid rgba(236,201,133,.3)}
.steps strong{display:block;font-size:16px}
.steps p{font-size:15px;color:var(--mute)}

.faq details{border-bottom:1px solid var(--line);padding:4px 0}
.faq summary{list-style:none;cursor:pointer;padding:16px 30px 16px 0;font-size:16px;font-weight:550;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:4px;top:12px;font-size:22px;color:var(--gold);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding:0 0 16px;color:var(--mute);font-size:15px;line-height:1.6}

.final{padding-bottom:30px}
.foot{padding:28px 20px calc(40px + var(--safe-b));text-align:center;font-size:13px;color:var(--dim);line-height:2}
.foot a{color:var(--mute)}

/* ===== quiz (tela cheia, uma pergunta por vez) ===== */
.quiz .screen-top{gap:6px}
.qprog{flex:1;height:4px;border-radius:4px;background:rgba(255,255,255,.08);overflow:hidden;margin-right:8px}
.qprog i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--lilac),var(--gold));border-radius:4px;transition:width .35s ease}
.qstep{padding-top:4vh;animation:screenIn .3s cubic-bezier(.2,.8,.2,1)}
.qstep .eyebrow{margin-bottom:10px;display:block}
.qstep .h2{margin-bottom:8px}
.qstep .lead{font-size:16px;margin-bottom:24px}
.qstep .btn{margin-top:18px}
.chips{display:grid;gap:10px}
.chip{display:flex;align-items:center;gap:12px;width:100%;min-height:60px;padding:0 18px;border-radius:16px;font-size:18px;text-align:left;
  background:rgba(255,255,255,.05);border:1.5px solid var(--line2)}
.chip.on{border-color:var(--gold);background:rgba(236,201,133,.1)}
.chip .sym{color:var(--lilac);width:22px;text-align:center}
.trip{display:grid;grid-template-columns:1fr 1fr 1.45fr;gap:10px}
.trip .field,.duo .field{text-align:center;padding:0 8px;font-size:22px;font-variant-numeric:tabular-nums}
.trip label,.duo label{display:block;text-align:center;font-size:12px;color:var(--dim);margin-top:6px;letter-spacing:.06em;text-transform:uppercase}
.duo{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:start}
.duo .colon{font-size:28px;line-height:60px;color:var(--dim)}
.notime{margin-top:16px}
.city-list{margin-top:10px;display:grid;gap:6px}
.city-opt{display:flex;gap:10px;align-items:center;width:100%;min-height:54px;padding:10px 16px;border-radius:14px;text-align:left;
  background:rgba(255,255,255,.04);border:1px solid var(--line);font-size:16px}
.city-opt .sym{color:var(--gold)}
.city-hint{font-size:14px;color:var(--dim);padding:10px 4px}
.optin{display:flex;gap:12px;align-items:flex-start;margin-top:16px;font-size:14px;color:var(--mute);line-height:1.45}
.optin input{width:22px;height:22px;flex:0 0 22px;accent-color:var(--gold);margin-top:1px}
.qsafe{margin-top:16px;text-align:center;font-size:13px;color:var(--dim)}
