@import url("tokens/fonts.css");
@import url("tokens/colors.css");
@import url("tokens/typography.css");
@import url("tokens/spacing.css");
@import url("tokens/effects.css");

* { box-sizing: border-box; }
html { color-scheme: dark; scroll-behavior: smooth; }
body {
  margin: 0;
  background: linear-gradient(180deg, rgba(4, 5, 4, .8), rgba(4, 5, 4, .97)), url("assets/textures/dark-fiber-carbon-02.png") center top / 900px auto fixed;
  color: var(--text-body);
  font: 1rem/1.7 var(--font-ui);
}
a { color: var(--gold-300); text-underline-offset: 3px; }
a:hover { color: var(--bone); }
.legal-nav {
  position: sticky; top: 0; z-index: 10; display: flex; align-items: center; justify-content: space-between; gap: 20px;
  min-height: 78px; padding: 10px clamp(20px, 4vw, 62px); border-bottom: 1px solid var(--border-soft);
  background: rgba(4, 5, 4, .9); backdrop-filter: blur(16px);
}
.legal-nav img { display: block; width: 190px; height: 58px; object-fit: contain; }
.legal-back { font: 800 .72rem/1 var(--font-mono); letter-spacing: .08em; text-transform: uppercase; text-decoration: none; }
.legal-shell { width: min(calc(100% - 40px), 920px); margin: 0 auto; }
.legal-hero { padding: clamp(58px, 8vw, 104px) 0 42px; border-bottom: 1px solid var(--border-soft); }
.legal-kicker { margin: 0 0 18px; color: var(--gold-300); font: 800 .72rem/1 var(--font-mono); letter-spacing: .12em; text-transform: uppercase; }
.legal-hero h1 { max-width: 12ch; margin: 0; color: var(--bone); font: 900 clamp(3.2rem, 8vw, 7.2rem)/.84 var(--font-display); text-transform: uppercase; }
.legal-intro { max-width: 68ch; margin: 28px 0 0; font-size: clamp(1rem, 1.4vw, 1.2rem); }
.legal-updated { margin: 18px 0 0; color: var(--text-muted); font: 700 .72rem/1.4 var(--font-mono); text-transform: uppercase; }
.legal-content { padding: 28px 0 clamp(70px, 10vw, 120px); }
.legal-section { padding: 34px 0; border-bottom: 1px solid var(--border-soft); }
.legal-section h2 { margin: 0 0 16px; color: var(--bone); font: 900 clamp(1.8rem, 4vw, 2.7rem)/.95 var(--font-display); text-transform: uppercase; }
.legal-section p, .legal-section ul { margin: 12px 0 0; }
.legal-section ul { padding-left: 22px; }
.legal-section li + li { margin-top: 8px; }
.legal-company { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 12px; margin-top: 20px; }
.legal-company div { padding: 16px; border: 1px solid var(--border-soft); background: rgba(4, 5, 4, .52); }
.legal-company strong { display: block; color: var(--bone); }
.legal-note { padding: 18px; border-left: 3px solid var(--gold-300); background: rgba(215, 170, 46, .07); }
.legal-footer { padding: 28px clamp(20px, 4vw, 62px); border-top: 1px solid var(--border-soft); background: var(--black); color: var(--text-faint); font-size: .78rem; }
.legal-footer > div { display: flex; justify-content: space-between; gap: 20px; flex-wrap: wrap; width: min(100%, 920px); margin: 0 auto; }
.legal-footer p { margin: 0; }
.legal-links { display: flex; gap: 16px; flex-wrap: wrap; }
@media (max-width: 560px) {
  .legal-nav { min-height: 68px; }
  .legal-nav img { width: 136px; height: 48px; }
  .legal-hero { padding-top: 46px; }
}
