:root {
  color-scheme: dark;
  --legal-bg: #050610;
  --legal-surface: #0c0f1d;
  --legal-text: #f7f8ff;
  --legal-muted: #9da4ba;
  --legal-line: rgba(255, 255, 255, .1);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; min-height: 100vh; color: var(--legal-text); background: radial-gradient(circle at 78% 6%, rgba(97,76,255,.2), transparent 30%), radial-gradient(circle at 5% 48%, rgba(25,154,255,.09), transparent 25%), var(--legal-bg); }
a { color: inherit; }
.legal-shell { width: min(980px, calc(100% - 40px)); margin-inline: auto; }
.legal-header { display: flex; min-height: 86px; align-items: center; justify-content: space-between; gap: 20px; }
.legal-brand { display: inline-flex; align-items: center; gap: 11px; color: var(--legal-text); font-weight: 800; text-decoration: none; }
.legal-brand img { width: 40px; height: 40px; border-radius: 11px; }
.back-link { padding: 11px 16px; border: 1px solid var(--legal-line); border-radius: 999px; color: #c5cad9; font-size: .8rem; font-weight: 750; text-decoration: none; }
.legal-hero { max-width: 820px; padding: 92px 0 54px; }
.legal-eyebrow { margin: 0 0 18px; color: #aeb6d0; font-size: .72rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.legal-hero h1 { max-width: 760px; margin: 0; font-size: clamp(3rem, 7vw, 6rem); line-height: .98; letter-spacing: -.06em; }
.legal-hero h1 span { color: transparent; background: linear-gradient(100deg, #9f82ff, #5dccff); background-clip: text; -webkit-background-clip: text; }
.legal-lead { max-width: 720px; margin: 26px 0 0; color: var(--legal-muted); font-size: clamp(1rem, 2vw, 1.15rem); line-height: 1.75; }
.legal-meta { margin: 16px 0 0; color: #707995; font-size: .78rem; line-height: 1.65; }
.legal-action { display: inline-flex; min-height: 54px; align-items: center; justify-content: center; margin-top: 30px; padding: 0 23px; border-radius: 999px; background: #fff; color: #080912; font-size: .88rem; font-weight: 800; text-decoration: none; box-shadow: 0 15px 45px rgba(255,255,255,.12); }
.legal-action:focus-visible, .back-link:focus-visible, .legal-footer a:focus-visible { outline: 3px solid rgba(93,204,255,.6); outline-offset: 3px; }
.legal-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 28px; }
.legal-card, .legal-panel, .legal-app-option { border: 1px solid var(--legal-line); background: linear-gradient(145deg, rgba(255,255,255,.055), rgba(255,255,255,.02)); box-shadow: 0 24px 65px rgba(0,0,0,.18); }
.legal-card { padding: 25px; border-radius: 24px; }
.legal-step { display: grid; width: 35px; height: 35px; place-items: center; border-radius: 11px; background: rgba(128,104,255,.16); color: #ae9dff; font-size: .76rem; font-weight: 900; }
.legal-card h2 { margin: 21px 0 9px; font-size: 1.05rem; }
.legal-card p, .legal-app-option p, .legal-panel p { margin: 0; color: var(--legal-muted); font-size: .88rem; line-height: 1.7; }
.legal-panel { margin-top: 18px; padding: clamp(26px, 5vw, 48px); border-radius: 28px; }
.legal-panel h2 { margin: 0 0 20px; font-size: clamp(1.7rem, 4vw, 2.5rem); letter-spacing: -.035em; }
.legal-panel h2:not(:first-child) { margin-top: 38px; }
.legal-panel ul { display: grid; gap: 13px; margin: 0; padding: 0; list-style: none; }
.legal-panel li { position: relative; padding-left: 29px; color: #c9cedd; font-size: .9rem; line-height: 1.6; }
.legal-panel li::before { position: absolute; left: 0; content: "✓"; color: #6ed6bd; font-weight: 900; }
.retention-note { margin-top: 26px !important; padding: 17px 18px; border: 1px solid rgba(255,255,255,.07); border-radius: 16px; background: rgba(255,255,255,.025); }
.legal-app-option { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 18px; padding: 24px 28px; border-radius: 22px; }
.legal-app-option h2 { margin: 0 0 7px; font-size: 1.1rem; }
.legal-app-option > span { color: #8f7cff; font-size: 1.8rem; }
.legal-footer { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 58px; padding: 25px 0 38px; border-top: 1px solid var(--legal-line); color: #747d98; font-size: .76rem; }
.legal-footer nav { display: flex; gap: 22px; }
.legal-footer a { color: #b9c0d4; font-weight: 700; text-decoration: none; }

@media (max-width: 700px) {
  .legal-shell { width: min(100% - 28px, 980px); }
  .legal-header { min-height: 72px; }
  .back-link { padding: 9px 12px; font-size: .72rem; }
  .legal-hero { padding: 66px 0 38px; }
  .legal-grid { grid-template-columns: 1fr; }
  .legal-app-option { align-items: flex-start; }
  .legal-footer { align-items: flex-start; flex-direction: column; }
  .legal-footer nav { flex-wrap: wrap; }
}
