body { background: radial-gradient(circle at top left, #223a72 0, #0b1020 34rem), var(--color-bg, #0b1020); }
.legal-shell { width: min(100% - 2rem, 76rem); margin: 0 auto; padding: var(--space-8, 2rem) 0 var(--space-10, 3rem); }
.legal-header { display: grid; gap: var(--space-4, 1rem); padding: var(--space-8, 2rem) 0; }
.legal-header h1 { font-size: clamp(2.2rem, 7vw, 4.4rem); line-height: .95; margin: 0; }
.legal-lede { color: var(--muted); font-size: 1.14rem; max-width: 62rem; }
.legal-status { border: 1px solid var(--color-border, rgba(143, 180, 255, .22)); border-radius: var(--radius-lg, 1.25rem); background: rgba(139, 213, 255, .08); color: var(--muted); padding: var(--space-4, 1rem); max-width: 66rem; }
.legal-nav { display: flex; flex-wrap: wrap; gap: .7rem; }
.legal-nav a { border: 1px solid var(--color-border, rgba(143, 180, 255, .22)); border-radius: 999px; color: var(--text); padding: .55rem .85rem; text-decoration: none; }
.legal-nav a:hover, .legal-nav a:focus-visible { border-color: var(--accent-strong, #8bd5ff); outline: 2px solid rgba(139, 213, 255, .35); outline-offset: 2px; }
.legal-card { border: 1px solid var(--color-border, rgba(143, 180, 255, .22)); border-radius: var(--radius-xl, 1.5rem); background: rgba(10, 16, 32, .78); box-shadow: var(--shadow-panel, 0 22px 80px rgba(0,0,0,.25)); padding: clamp(1.25rem, 3vw, 2.5rem); }
.legal-card h2 { margin-top: 2rem; font-size: clamp(1.35rem, 3vw, 1.85rem); }
.legal-card h2:first-child { margin-top: 0; }
.legal-card p, .legal-card li { color: var(--muted); line-height: 1.75; }
.legal-card a { color: var(--accent-strong, #8bd5ff); }
