:root { color-scheme: dark; --ink: #f7f9fc; --muted: #a7b3c5; --orange: #ff7a1a; --orange-soft: #ffad66; --blue: #6dd6ff; --bg: #07111f; }
* { box-sizing: border-box; }
html { background: var(--bg); }
body { margin: 0; min-height: 100vh; color: var(--ink); background: radial-gradient(circle at 10% -10%, rgba(38,132,190,.25), transparent 32rem), linear-gradient(150deg,#07111f,#050b13); font-family: Inter,system-ui,sans-serif; }
body.gate-locked { overflow: hidden; }
body.gate-locked .legal-page { visibility: hidden; }
.trivia-gate { position: fixed; inset: 0; z-index: 20; display: grid; place-items: center; padding: 24px; background: radial-gradient(circle at 50% 18%,rgba(38,132,190,.3),transparent 28rem),rgba(5,11,19,.97); }
body:not(.gate-locked) .trivia-gate { display: none; }
.trivia-card { width: min(100%,520px); padding: clamp(28px,7vw,48px); border: 1px solid rgba(255,122,26,.42); border-radius: 22px; background: linear-gradient(145deg,rgba(18,35,57,.98),rgba(8,21,34,.98)); box-shadow: 0 30px 90px rgba(0,0,0,.48); }
.gate-eyebrow,.eyebrow { margin: 0 0 10px; color: var(--orange-soft); font-size: .75rem; font-weight: 700; letter-spacing: .16em; }
.trivia-card h2 { margin: 0 0 26px; font: 800 clamp(2.2rem,9vw,3.6rem)/.95 "Barlow Condensed",Impact,sans-serif; text-transform: uppercase; }
.trivia-card label { display: block; margin-bottom: 10px; font-weight: 600; line-height: 1.45; }
.answer-row { display: flex; gap: 10px; }
.answer-row input { min-width: 0; flex: 1; border: 1px solid rgba(255,255,255,.18); border-radius: 11px; padding: 13px 14px; color: var(--ink); background: rgba(0,0,0,.24); font: inherit; }
.answer-row button { border: 0; border-radius: 11px; padding: 0 20px; color: #07111f; background: var(--orange); font-weight: 700; cursor: pointer; }
.gate-message { min-height: 1.25rem; margin: 12px 0 0; color: #ffb4a2; font-size: .85rem; }
.legal-page { width: min(760px,calc(100% - 32px)); margin: 0 auto; padding: 34px 0 64px; }
.back-link { color: var(--blue); font-size: .9rem; text-decoration: none; }
.legal-page header { margin: 34px 0 26px; padding-bottom: 22px; border-bottom: 1px solid rgba(151,169,196,.18); }
.legal-page h1,.legal-page h2 { font-family: "Barlow Condensed",Impact,sans-serif; text-transform: uppercase; }
.legal-page h1 { margin: 0 0 10px; font-size: clamp(2.8rem,10vw,5rem); line-height: .9; }
.effective { margin: 0; color: var(--muted); }
.legal-page article { padding: clamp(22px,5vw,36px); border: 1px solid rgba(151,169,196,.17); border-radius: 18px; background: rgba(13,27,45,.9); }
.legal-page h2 { margin: 28px 0 8px; color: var(--orange-soft); font-size: 1.45rem; }
.legal-page h2:first-child { margin-top: 0; }
.legal-page p,.legal-page li { color: #d5dce6; font-size: 1rem; line-height: 1.7; }
.legal-page a { color: var(--blue); }
.legal-page footer { margin-top: 24px; color: var(--muted); font-size: .8rem; text-align: center; }
@media (max-width:560px){.answer-row{flex-direction:column}.answer-row button{min-height:46px}.legal-page{padding-top:24px}.legal-page article{padding:20px}}

.sms-form{display:grid;gap:16px}.sms-form input[type=tel]{width:100%;padding:14px;border:1px solid #71839a;border-radius:10px;background:#07111f;color:#fff;font:inherit}.consent-card{display:grid;gap:10px;padding:16px;border:1px solid rgba(151,169,196,.26);border-radius:12px;background:rgba(7,17,31,.55)}.consent-card p{margin:0 0 0 32px;color:#aeb9c9;font-size:.82rem;line-height:1.6}.consent-check{display:flex;align-items:flex-start;gap:12px;line-height:1.6}.terms-check{padding-bottom:12px;border-bottom:1px solid rgba(151,169,196,.2)}.consent-check input{flex-shrink:0;width:20px;height:20px;margin-top:4px}.sms-form button{padding:16px;border:0;border-radius:10px;background:var(--orange);color:#07111f;font:700 1rem Inter,system-ui;cursor:pointer}.sms-form button:disabled{opacity:.6}.sms-message{margin:0}.sms-message.error{color:#ffb4a2}.sms-message.success{color:#90e9bc}a:focus-visible,input:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
