/* ============================================================
   LP · Guia WhatsApp Business 2027 (GoSac)
   Fonte: Claude Design "LP eBook API Oficial 2027 v2" — high-fidelity.
   Tokens em ../shared/css/tokens.css (DS GoSac). Sem valores soltos.
   ============================================================ */

/* ---------- Base da página ---------- */
html { scroll-padding-top: 88px; }
body { background: var(--offwhite); color: var(--lt-text); font-family: var(--font-ui); font-size: var(--text-md); line-height: var(--leading-normal); }
a { color: var(--purple-600); }
a:not(.btn):hover { color: var(--purple-500); }
.wrap { max-width: var(--container); margin: 0 auto; padding-inline: var(--space-8); }
.h2 { margin: 0; font-size: 34px; line-height: 1.2; letter-spacing: var(--tracking-tight); font-weight: 700; color: var(--lt-text); text-wrap: pretty; }
.h2--xl { font-size: 38px; line-height: 1.15; }
.h2--md { font-size: 30px; }
.sub { margin: var(--space-4) 0 var(--space-12); font-size: var(--text-md); color: var(--lt-text-secondary); }
.sub--onDark { color: var(--text-secondary); }
.tx-center { text-align: center; }
.tx-brand { color: var(--purple-600); }
.tx-lime { color: var(--lime-500); }
.tx-white { color: var(--white); }
.microcopy { font-size: var(--text-sm); color: var(--ink-400); }
.eyebrow { font-size: var(--text-sm); font-weight: 700; letter-spacing: var(--tracking-wide); text-transform: uppercase; }
.eyebrow--muted { color: var(--text-secondary); }
.eyebrow--lime { color: var(--lime-500); }
.eyebrow--brand { color: var(--purple-600); }
.btn--xl { height: 54px; padding: 0 36px; font-size: 17px; }
.linkbtn { border: 0; background: transparent; color: var(--text-secondary); font-family: inherit; font-size: var(--text-sm); font-weight: 700; cursor: pointer; padding: var(--space-2); transition: color var(--dur-fast) var(--ease-swift); }
.linkbtn:hover { color: var(--white); }

/* ---------- Topbar ---------- */
.topbar { position: sticky; top: 0; z-index: 50; background: rgba(255,255,255,.92); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); border-bottom: 1px solid var(--ink-100); }
.topbar__inner { display: flex; align-items: center; justify-content: space-between; padding-block: var(--space-4); }
.topbar__logo img { height: 44px; width: auto; }
.topbar__right { display: flex; align-items: center; gap: var(--space-5); }
.topbar__note { font-size: var(--text-sm); color: var(--ink-500); }

/* ---------- Hero ---------- */
.hero { background: linear-gradient(180deg, var(--white) 0%, var(--ink-50) 100%); border-bottom: 1px solid var(--ink-100); }
.hero__grid { display: grid; grid-template-columns: 1fr 440px; gap: 56px; align-items: start; padding-block: var(--space-16) var(--space-20); }
.hero__copy { display: flex; flex-direction: column; gap: 18px; padding-top: var(--space-1); }
.badge-pill { display: inline-flex; align-items: center; gap: var(--space-2); background: var(--purple-50); border: 1px solid var(--purple-200); color: var(--purple-600); font-size: var(--text-sm); font-weight: 700; letter-spacing: var(--tracking-wide); text-transform: uppercase; padding: 7px 14px; border-radius: var(--radius-pill); }
.badge-pill__dot { width: 8px; height: 8px; border-radius: 50%; background: var(--lime-500); }
.hero__title { margin: 0; font-size: clamp(32px, 3.2vw, 44px); line-height: 1.1; letter-spacing: var(--tracking-tight); font-weight: 700; color: var(--lt-text); text-wrap: pretty; }
.hero__lead { margin: 0; font-size: var(--text-lg); line-height: var(--leading-relaxed); color: var(--lt-text-secondary); max-width: 580px; text-wrap: pretty; }
.hero__cta { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; margin-top: var(--space-2); }

/* Simulador */
.sim { display: flex; flex-direction: column; gap: 14px; }
.sim__tabs { display: flex; gap: var(--space-2); background: var(--ink-100); border-radius: var(--radius-pill); padding: var(--space-1); }
.sim__tab { flex: 1; border: 0; cursor: pointer; font-family: inherit; font-size: var(--text-base); font-weight: 700; padding: 10px var(--space-4); border-radius: var(--radius-pill); background: transparent; color: var(--ink-500); transition: background 160ms var(--ease-swift), color 160ms var(--ease-swift); }
.sim__tab.is-active { background: var(--purple-600); color: var(--white); }
.chat { background: var(--deep-800); border: 1px solid var(--border-subtle); border-radius: var(--radius-xl); overflow: hidden; box-shadow: 0 24px 60px rgba(31,0,85,.25); }
.chat__head { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-4) var(--space-5); background: var(--deep-900); border-bottom: 1px solid var(--border-subtle); }
.avatar { width: 36px; height: 36px; border-radius: 50%; background: var(--purple-500); color: var(--white); display: inline-flex; align-items: center; justify-content: center; font-weight: 700; font-size: 13.7px; flex: none; }
.chat__who { flex: 1; }
.chat__name { font-size: var(--text-base); font-weight: 700; color: var(--text-primary); }
.chat__status { display: flex; align-items: center; gap: 6px; font-size: var(--text-xs); color: var(--text-muted); }
.chat__dot { width: 6px; height: 6px; border-radius: 50%; background: var(--ch-whatsapp); }
.chat__more { width: 18px; height: 18px; color: var(--text-muted); }
.chat__body { height: 400px; padding: var(--space-5); display: flex; flex-direction: column; justify-content: flex-end; gap: var(--space-3); overflow: hidden; }
.msg { display: flex; flex-direction: column; animation: msgIn 320ms var(--ease-swift) both; }
.msg--agent { align-items: flex-end; }
.msg--contact { align-items: flex-start; }
.msg__bubble { max-width: 72%; padding: 10px 14px; font-size: var(--text-base); line-height: 1.5; }
.msg--agent .msg__bubble { background: var(--purple-600); color: var(--white); border-radius: 14px 14px 4px 14px; }
.msg--contact .msg__bubble { background: var(--deep-700); color: var(--text-primary); border: 1px solid var(--border-subtle); border-radius: 14px 14px 14px 4px; }
.msg__meta { display: flex; align-items: center; gap: 4px; font-size: 11px; color: var(--text-muted); margin-top: 4px; }
.msg__meta .icon { width: 13px; height: 13px; color: var(--teal-400); }
.msg__alert { display: flex; align-items: center; justify-content: center; gap: 10px; border-radius: var(--radius-md); padding: 10px var(--space-4); font-size: var(--text-sm); font-weight: 700; animation: msgIn 320ms var(--ease-swift) both; }
.msg__alert .icon { width: 16px; height: 16px; }
.msg__alert--bad { background: var(--error-bg); border: 1px solid rgba(229,72,77,.45); color: var(--error-400); }
.msg__alert--good { background: rgba(174,222,43,.15); border: 1px solid rgba(174,222,43,.45); color: var(--lime-400); }
.typing { display: flex; gap: 5px; background: var(--deep-700); border-radius: 14px 14px 14px 4px; padding: var(--space-3) var(--space-4); width: fit-content; }
.typing span { width: 7px; height: 7px; border-radius: 50%; background: var(--text-secondary); animation: dotPulse 1.1s infinite; }
.typing span:nth-child(2) { animation-delay: .18s; }
.typing span:nth-child(3) { animation-delay: .36s; }
.sim__hint { display: flex; align-items: center; justify-content: center; gap: var(--space-2); margin: 0; font-size: var(--text-sm); color: var(--ink-400); text-align: center; }
.sim__hint .icon { width: 15px; height: 15px; color: var(--purple-600); flex: none; }
@keyframes msgIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
@keyframes dotPulse { 0%, 80%, 100% { opacity: .25; } 40% { opacity: 1; } }

/* ---------- Faixa de destaques ---------- */
.highlights { background: var(--deep-800); }
.highlights__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-6); padding-block: var(--space-12); }
.hl { display: flex; align-items: flex-start; gap: 14px; }
.hl__chip { flex: none; width: 40px; height: 40px; border-radius: 12px; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.14); display: inline-flex; align-items: center; justify-content: center; color: var(--lime-500); }
.hl__chip .icon { width: 18px; height: 18px; }
.hl__title { font-size: 15px; font-weight: 700; color: var(--white); line-height: 1.3; }
.hl__desc { font-size: 13.5px; color: var(--text-secondary); line-height: 1.5; margin-top: var(--space-1); }

/* ---------- Callout ---------- */
.callout-sec { background: var(--white); }
.callout-sec .wrap { padding-block: var(--space-16) var(--space-24); }
.callout { background: var(--purple-50); border: 1px solid var(--purple-100); border-radius: var(--radius-lg); padding: 28px 36px; display: flex; gap: var(--space-5); align-items: flex-start; }
.callout__icon { flex: none; width: 40px; height: 40px; border-radius: var(--radius-md); background: var(--purple-600); color: var(--white); display: inline-flex; align-items: center; justify-content: center; }
.callout__icon .icon { width: 20px; height: 20px; }
.callout p { margin: 0; font-size: 17px; line-height: var(--leading-relaxed); color: var(--lt-text); text-wrap: pretty; }

/* ---------- Cascata ---------- */
.cascade { background: var(--white); }
.cascade .wrap { padding-block: var(--space-24); }
.cascade__grid { display: grid; grid-template-columns: 1fr 380px; gap: var(--space-12); align-items: start; }
.steps { display: flex; flex-direction: column; gap: 10px; }
.step { display: flex; align-items: center; gap: var(--space-5); background: var(--white); border: 1px solid var(--ink-100); border-radius: 14px; padding: 18px var(--space-6); cursor: pointer; font-family: inherit; text-align: left; width: 100%; opacity: .55; transition: background 200ms var(--ease-swift), border-color 200ms var(--ease-swift), opacity 200ms var(--ease-swift); }
.step.is-next, .step.is-active { opacity: 1; }
.step__n { flex: none; width: 36px; height: 36px; border-radius: 50%; background: var(--ink-50); color: var(--ink-300); display: inline-flex; align-items: center; justify-content: center; font-size: var(--text-md); font-weight: 700; transition: background 200ms var(--ease-swift), color 200ms var(--ease-swift); }
.step__txt { flex: 1; display: flex; flex-direction: column; }
.step__title { font-size: 17px; font-weight: 700; color: var(--lt-text); }
.step__desc { font-size: 15px; color: var(--lt-text-secondary); line-height: 1.5; }
.step__delta { flex: none; font-size: var(--text-base); font-weight: 700; color: var(--purple-500); opacity: 0; transition: opacity 200ms var(--ease-swift); }
.step.is-active { background: var(--purple-50); border-color: var(--purple-200); }
.step.is-active .step__n { background: var(--purple-600); color: var(--white); }
.step.is-active .step__delta { opacity: 1; }
.step--last .step__delta { color: var(--error-500); }
.step--last.is-active { background: rgba(229,72,77,.08); border-color: rgba(229,72,77,.4); }
.step--last.is-active .step__n { background: var(--error-500); }
.meter { position: sticky; top: 88px; background: var(--deep-800); border-radius: 20px; padding: var(--space-8); display: flex; flex-direction: column; gap: var(--space-5); box-shadow: var(--shadow-deep); }
.meter__value { display: flex; align-items: baseline; gap: 6px; color: var(--lime-500); transition: color 300ms var(--ease-swift); }
.meter[data-tone="warn"] .meter__value, .meter[data-tone="warn"] .meter__fill { color: var(--warning-500); }
.meter[data-tone="bad"] .meter__value, .meter[data-tone="bad"] .meter__fill { color: var(--error-400); }
.meter__num { font-size: 76px; font-weight: 300; line-height: 1; letter-spacing: -0.04em; }
.meter__pct { font-size: 28px; font-weight: 300; }
.meter__bar { height: 10px; border-radius: var(--radius-pill); background: rgba(255,255,255,.12); overflow: hidden; }
.meter__fill { height: 100%; border-radius: var(--radius-pill); color: var(--lime-500); background: currentColor; transition: width 400ms var(--ease-swift), color 300ms var(--ease-swift); }
.meter__label { margin: 0; font-size: var(--text-base); line-height: 1.6; color: var(--text-secondary); min-height: 44px; }
.meter__actions { display: flex; gap: 10px; }
.meter__advance, .meter__avoid { flex: 1; }
.meter__actions [hidden] { display: none !important; }

/* ---------- Personas ---------- */
.personas { background: var(--lavender-100); border-top: 1px solid var(--lavender-200); border-bottom: 1px solid var(--lavender-200); }
.personas .wrap { padding-block: var(--space-24); }
.personas__title { margin-bottom: var(--space-12); }
.personas__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-5); }
.pcard { background: var(--white); border: 1px solid var(--ink-100); border-radius: var(--radius-lg); overflow: hidden; display: flex; flex-direction: column; box-shadow: var(--shadow-card); }
.pcard p { margin: 0; padding: var(--space-5) var(--space-6) var(--space-6); font-size: 15.5px; line-height: 1.55; color: var(--lt-text); text-wrap: pretty; }
.pcard__media { position: relative; height: 170px; background: var(--ink-50); background-size: cover; background-position: center; }
.pcard__pic, .pcard__pic img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; }
.pcard__tag { position: absolute; bottom: var(--space-3); left: var(--space-4); display: inline-flex; align-items: center; gap: var(--space-2); background: rgba(31,0,85,.85); backdrop-filter: blur(4px); color: var(--white); font-size: var(--text-xs); font-weight: 700; letter-spacing: .05em; text-transform: uppercase; padding: 6px var(--space-3); border-radius: var(--radius-pill); }
.pcard__tag .icon { width: 14px; height: 14px; color: var(--lime-500); }
.pcard--cta { background: linear-gradient(160deg, var(--deep-800), var(--purple-600) 220%); border: 0; padding: 28px; justify-content: center; gap: 14px; box-shadow: 0 12px 30px rgba(31,0,85,.25); }
.pcard--cta p { padding: 0; font-size: 20px; font-weight: 700; line-height: 1.4; color: var(--white); }

/* ---------- Diagnóstico ---------- */
.quiz-sec { background: linear-gradient(180deg, var(--deep-800) 0%, var(--purple-600) 200%); }
.quiz-wrap { max-width: 820px; margin: 0 auto; padding: var(--space-24) var(--space-8); display: flex; flex-direction: column; align-items: center; gap: var(--space-8); }
.quiz-head { text-align: center; display: flex; flex-direction: column; align-items: center; gap: 14px; }
.quiz-head__p { margin: 0; font-size: var(--text-md); line-height: 1.6; color: var(--ink-200); max-width: 560px; }
.glass { width: 100%; max-width: 620px; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.14); border-radius: 20px; padding: 36px; backdrop-filter: blur(4px); }
.quiz__q { display: flex; flex-direction: column; gap: var(--space-6); }
.quiz__progress { display: flex; align-items: center; gap: 14px; }
.quiz__track { flex: 1; height: 6px; border-radius: var(--radius-pill); background: rgba(255,255,255,.15); overflow: hidden; }
.quiz__fill { height: 100%; border-radius: var(--radius-pill); background: var(--lime-500); transition: width 300ms var(--ease-swift); }
.quiz__counter { font-size: var(--text-sm); font-weight: 700; color: var(--text-secondary); white-space: nowrap; }
.quiz__question { margin: 0; font-size: var(--text-xl); font-weight: 700; line-height: 1.4; color: var(--white); min-height: 92px; text-wrap: pretty; }
.quiz__btns { display: flex; gap: var(--space-3); }
.qbtn { flex: 1; border: 1px solid rgba(255,255,255,.2); background: rgba(255,255,255,.08); color: var(--white); font-family: inherit; font-size: var(--text-md); font-weight: 700; padding: 14px; border-radius: 12px; cursor: pointer; transition: background 150ms var(--ease-swift), color 150ms var(--ease-swift), border-color 150ms var(--ease-swift); }
.qbtn--yes:hover { background: var(--lime-500); color: var(--deep-800); border-color: var(--lime-500); }
.qbtn--no:hover { background: var(--error-500); color: var(--white); border-color: var(--error-500); }
.quiz__result { display: flex; flex-direction: column; align-items: center; gap: 18px; text-align: center; }
.quiz__result[hidden] { display: none; }
.quiz__ricon { width: 64px; height: 64px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: var(--lime-500); color: var(--deep-800); }
.quiz__ricon .icon { width: 30px; height: 30px; }
.quiz__ricon--warn { background: var(--warning-500); color: var(--deep-800); }
.quiz__ricon--bad { background: var(--error-500); color: var(--white); }
.quiz__score { font-size: 15px; font-weight: 700; letter-spacing: var(--tracking-wide); text-transform: uppercase; color: var(--text-secondary); }
.quiz__rtitle { font-size: 26px; font-weight: 700; color: var(--white); letter-spacing: -0.01em; }
.quiz__rtext { margin: 0; font-size: 15px; line-height: var(--leading-relaxed); color: var(--ink-200); text-wrap: pretty; }
.quiz__ractions { display: flex; flex-direction: column; gap: 10px; width: 100%; margin-top: 6px; }
.quiz__ractions .btn--lg { height: 52px; font-size: var(--text-md); }
.quiz-foot { margin: 0; font-size: 15px; font-weight: 700; color: var(--white); text-align: center; }

/* ---------- Formulário ---------- */
.form-sec { background: var(--white); }
.form-sec__grid { display: grid; grid-template-columns: 1fr 460px; gap: var(--space-16); align-items: center; padding-block: var(--space-24); }
.form-sec__copy { display: flex; flex-direction: column; gap: var(--space-5); }
.form-sec__copy .h2 { font-size: 36px; }
.form-sec__copy > p { margin: 0; font-size: var(--text-md); line-height: var(--leading-relaxed); color: var(--lt-text-secondary); text-wrap: pretty; }
.checks { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--space-3); }
.checks li { display: flex; align-items: center; gap: var(--space-3); font-size: 15px; color: var(--lt-text); }
.checks__dot { flex: none; width: 22px; height: 22px; border-radius: 50%; background: var(--lime-500); color: var(--deep-800); display: inline-flex; align-items: center; justify-content: center; }
.checks__dot .icon { width: 14px; height: 14px; }
.lgpd { display: flex; align-items: center; gap: 10px; margin: var(--space-2) 0 0; color: var(--ink-400); font-size: var(--text-sm); }
.lgpd .icon { width: 15px; height: 15px; flex: none; }
.form-card { background: var(--deep-800); border: 1px solid var(--border-subtle); border-radius: 18px; padding: var(--space-8); box-shadow: var(--shadow-deep); }
.form-card__submit { height: 52px; font-size: var(--text-md); margin-top: var(--space-1); }
.form-card__note { display: block; font-size: var(--text-xs); line-height: 1.5; color: var(--text-muted); text-align: center; }
.form-done { display: flex; flex-direction: column; align-items: center; gap: var(--space-4); text-align: center; }
.form-done[hidden] { display: none; }
.form-done:focus-visible { outline: none; }
.form-done__step { display: inline-flex; align-items: center; gap: var(--space-2); padding: 6px var(--space-3); border-radius: var(--radius-pill); background: rgba(174,222,43,.12); border: 1px solid rgba(174,222,43,.4); color: var(--lime-400); font-size: var(--text-xs); font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.form-done__step .icon { width: 14px; height: 14px; }
.form-done__title { margin: 0; font-size: var(--text-2xl); line-height: 1.25; color: var(--white); text-wrap: balance; }
.form-done__text { margin: 0; font-size: var(--text-md); line-height: 1.6; color: var(--text-secondary); text-wrap: pretty; }
.form-done__note { margin: 0; font-size: var(--text-xs); line-height: 1.5; color: var(--text-muted); }
.btn--wa { height: 60px; padding: 0 var(--space-6); font-size: var(--text-lg); background: #25D366; color: var(--deep-900); box-shadow: 0 10px 28px rgba(37,211,102,.35); animation: wa-pulse 2.4s var(--ease-swift) infinite; }
.btn--wa:hover { background: #1FBF5B; }
.btn--wa:active { background: #17A34C; }
.btn--wa .icon { width: 26px; height: 26px; }
@keyframes wa-pulse { 0% { box-shadow: 0 10px 28px rgba(37,211,102,.35), 0 0 0 0 rgba(37,211,102,.45); } 70% { box-shadow: 0 10px 28px rgba(37,211,102,.35), 0 0 0 14px rgba(37,211,102,0); } 100% { box-shadow: 0 10px 28px rgba(37,211,102,.35), 0 0 0 0 rgba(37,211,102,0); } }
@media (prefers-reduced-motion: reduce) { .btn--wa { animation: none; } }

/* ---------- Partes ---------- */
.parts { background: linear-gradient(180deg, var(--deep-900) 0%, var(--deep-800) 100%); }
.parts .wrap { padding-block: var(--space-24); }
.parts__grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: var(--space-5); }
.part { background: var(--white); border: 1px solid var(--ink-100); border-radius: var(--radius-lg); padding: 28px; display: flex; flex-direction: column; gap: var(--space-3); box-shadow: var(--shadow-card); }
.part--2 { grid-column: span 2; }
.part--3 { grid-column: span 3; }
.part h3 { margin: 0; font-size: 19px; font-weight: 700; line-height: 1.3; color: var(--lt-text); }
.part p { margin: 0; font-size: 15px; line-height: 1.6; color: var(--lt-text-secondary); text-wrap: pretty; }

/* ---------- Bônus ---------- */
.bonus-sec { background: var(--white); }
.bonus-sec .wrap { padding-block: var(--space-24); }
.bonus { background: linear-gradient(135deg, var(--white) 0%, var(--lime-50) 100%); border: 1px solid var(--lime-400); border-radius: 20px; padding: var(--space-12); display: grid; grid-template-columns: 220px 1fr; gap: var(--space-12); align-items: center; }
.bonus__num { display: flex; flex-direction: column; align-items: center; gap: 6px; }
.bonus__big { font-size: 120px; font-weight: 300; line-height: 1; color: var(--purple-600); letter-spacing: -0.04em; }
.bonus__caption { font-size: var(--text-base); font-weight: 700; letter-spacing: var(--tracking-wide); text-transform: uppercase; color: var(--lime-600); text-align: center; }
.bonus__body { display: flex; flex-direction: column; gap: var(--space-4); }
.bonus__body p { margin: 0; font-size: var(--text-md); line-height: var(--leading-relaxed); color: var(--lt-text-secondary); text-wrap: pretty; }
.bonus__p2 { font-size: 15px !important; line-height: 1.6 !important; }
.badge-lime { display: inline-flex; align-self: flex-start; background: var(--lime-500); color: var(--deep-800); font-size: var(--text-xs); font-weight: 700; letter-spacing: var(--tracking-wide); text-transform: uppercase; padding: 5px var(--space-3); border-radius: var(--radius-pill); }

/* ---------- FAQ ---------- */
.faq-sec { background: var(--ink-50); border-top: 1px solid var(--ink-100); }
.faq-wrap { max-width: 760px; margin: 0 auto; padding: var(--space-24) var(--space-8); }
.faq-wrap .h2 { margin-bottom: var(--space-12); }
.faq { display: flex; flex-direction: column; gap: var(--space-3); }
.faq__item { background: var(--white); border: 1px solid var(--ink-100); border-radius: 12px; overflow: hidden; }
.faq__q { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); background: transparent; border: 0; padding: var(--space-5) var(--space-6); cursor: pointer; font-family: inherit; font-size: 16.5px; font-weight: 700; color: var(--lt-text); text-align: left; }
.faq__chev { flex: none; display: inline-flex; color: var(--purple-600); transition: transform 160ms var(--ease-swift); }
.faq__chev .icon { width: 18px; height: 18px; }
.faq__item.is-open .faq__chev { transform: rotate(180deg); }
.faq__a { display: none; }
.faq__item.is-open .faq__a { display: block; }
.faq__a p { margin: 0; padding: 0 var(--space-6) var(--space-5); font-size: 15px; line-height: var(--leading-relaxed); color: var(--lt-text-secondary); text-wrap: pretty; }
.faq-cta { display: flex; flex-direction: column; align-items: center; gap: 10px; margin-top: var(--space-12); }

/* ---------- Footer ---------- */
.foot { background: var(--deep-900); }
.foot__inner { display: flex; align-items: center; justify-content: space-between; gap: var(--space-6); padding-block: var(--space-10); }
.foot img { height: 40px; width: auto; }
.foot__legal { font-size: var(--text-sm); color: var(--text-muted); text-align: right; line-height: 1.5; }
.foot__legal a { color: inherit; text-decoration: underline; }

/* ---------- Responsivo ---------- */
@media (min-width: 921px) and (max-width: 1120px) {
  .personas__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 920px) {
  .wrap, .quiz-wrap, .faq-wrap { padding-inline: var(--space-5); }
  .hero__grid, .cascade__grid, .form-sec__grid { grid-template-columns: 1fr; gap: var(--space-10); }
  .hero__grid { padding-block: var(--space-12) var(--space-16); }
  .hero__title { font-size: 34px; }
  .h2, .h2--xl, .form-sec__copy .h2 { font-size: 28px; }
  .h2--md { font-size: 26px; }
  .topbar__note { display: none; }
  .sim { max-width: 440px; width: 100%; margin: 0 auto; }
  .highlights__grid, .personas__grid { grid-template-columns: 1fr; }
  .meter { position: static; }
  .parts__grid { display: flex; flex-direction: column; }
  .bonus { grid-template-columns: 1fr; padding: var(--space-8); gap: var(--space-6); }
  .bonus__big { font-size: 96px; }
  .foot__inner { flex-direction: column; align-items: flex-start; }
  .foot__legal { text-align: left; }
  .callout { padding: var(--space-5); flex-direction: column; }
  .glass { padding: var(--space-6); }
  .quiz__question { min-height: 0; }
  .btn--xl { padding: 0 var(--space-6); width: 100%; }
  .hero__cta { align-items: stretch; }
}
@media (max-width: 480px) {
  .step { padding: 14px var(--space-4); gap: var(--space-3); }
  .step__delta { font-size: var(--text-sm); }
  .meter__num { font-size: 60px; }
  .form-card { padding: var(--space-5); }
  .quiz__btns { flex-direction: column; }
}
