:root{
  --orange:#e76123;
  --orange-light:#f07838;
  --orange-deep:#d14f16;
  --orange-soft:#ee7e4e;
  --orange-glass-bg:linear-gradient(180deg,#f28a45 0%,#e76123 48%,#d95518 100%);
  --orange-glass-shadow:
    0 12px 30px rgba(231,97,35,.4),
    inset 0 1px 0 rgba(255,255,255,.38),
    inset 0 -4px 12px rgba(160,50,8,.22);
  --ink:#171717;
  --ink-soft:#404040;
  --muted:#737373;
  --paper:#ffffff;
  --page-bg:#f6f4f1;
  --line:rgba(0,0,0,.07);
  --font-display:"Barlow Condensed",sans-serif;
  --font-body:"Inter",sans-serif;
  --font-ui:"Space Grotesk","Inter",sans-serif;
}
[data-theme="dark"]{
  color-scheme:dark;
  --ink:#f5f5f5;
  --ink-soft:#d4d4d4;
  --muted:#a3a3a3;
  --paper:#171717;
  --page-bg:#0a0a0a;
  --line:rgba(255,255,255,.09);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:var(--font-body);color:var(--ink);background:var(--page-bg);
  -webkit-font-smoothing:antialiased;line-height:1.65;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}

.legal-top{
  position:sticky;top:0;z-index:20;padding:16px 14px 0;
  background:transparent;
}
.legal-nav{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  max-width:920px;margin:0 auto;padding:14px 22px;border-radius:999px;
  background:rgba(255,255,255,.42);
  -webkit-backdrop-filter:blur(22px) saturate(180%);
  backdrop-filter:blur(22px) saturate(180%);
  border:1px solid rgba(255,255,255,.65);
  box-shadow:0 12px 40px rgba(23,23,23,.08);
}
[data-theme="dark"] .legal-nav{
  background:rgba(18,18,18,.78);
  border-color:rgba(255,255,255,.1);
}
.legal-nav .brand-logo{height:42px;width:auto}
.legal-nav .back{
  font-family:var(--font-ui);font-size:.86rem;font-weight:500;color:var(--ink-soft);
  transition:color .2s ease;
}
.legal-nav .back:hover{color:var(--orange)}
.theme-toggle{
  width:40px;height:40px;border:none;background:transparent;color:var(--ink);
  cursor:pointer;display:flex;align-items:center;justify-content:center;
}
.theme-toggle svg{width:20px;height:20px}
.theme-toggle .icon-sun{display:none}
[data-theme="dark"] .theme-toggle{color:#fff}
[data-theme="dark"] .theme-toggle .icon-moon{display:none}
[data-theme="dark"] .theme-toggle .icon-sun{display:block}

.legal-wrap{max-width:920px;margin:28px auto 60px;padding:0 18px}
.legal-card{
  background:var(--paper);border-radius:36px;padding:48px 44px 56px;
  border:1px solid var(--line);
}
.eyebrow{
  display:inline-flex;align-items:center;
  font-family:var(--font-ui);font-size:.68rem;font-weight:500;
  letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft);
  padding:9px 18px;border-radius:999px;border:1px solid rgba(0,0,0,.14);
}
[data-theme="dark"] .eyebrow{border-color:rgba(255,255,255,.22);color:rgba(255,255,255,.72)}
.legal-card h1{
  font-family:var(--font-display);font-weight:800;text-transform:uppercase;
  font-size:clamp(2.2rem,5vw,3.6rem);line-height:.95;margin:22px 0 12px;color:var(--ink);
}
.legal-card .updated{color:var(--muted);font-size:.92rem;margin-bottom:36px}
.legal-card h2{
  font-family:var(--font-display);font-weight:800;text-transform:uppercase;
  font-size:1.45rem;letter-spacing:.01em;margin:36px 0 12px;color:var(--ink);
}
.legal-card h3{
  font-family:var(--font-ui);font-weight:600;font-size:1.02rem;
  margin:22px 0 8px;color:var(--ink);
}
.legal-card p,.legal-card li{color:var(--ink-soft);font-size:1.02rem;margin-bottom:12px}
.legal-card ul{padding-left:1.2em;margin-bottom:14px}
.legal-card a{color:var(--orange);text-decoration:underline;text-underline-offset:3px}
.legal-card a:hover{color:var(--orange-light)}
.legal-links{
  display:flex;flex-wrap:wrap;gap:10px;margin-top:40px;padding-top:28px;
  border-top:1px solid var(--line);
}
.legal-links a{
  font-family:var(--font-ui);font-size:.82rem;font-weight:500;
  color:var(--ink-soft);padding:9px 16px;border-radius:999px;
  border:1px solid var(--line);text-decoration:none;transition:color .2s,border-color .2s;
}
.legal-links a:hover,.legal-links a.is-on{color:var(--orange);border-color:rgba(231,97,35,.35)}
.legal-foot{
  text-align:center;color:var(--muted);font-size:.86rem;padding:0 18px 40px;
}
@media(max-width:700px){
  .legal-card{padding:32px 22px 40px;border-radius:28px}
  .legal-nav{padding:12px 16px}
  .legal-nav .brand-logo{height:36px}
}
