/* Shared shell for the legal pages. Same tokens as index.html — kept in a separate file
   so terms.html and privacy.html can never drift apart from each other. */
:root{
  --ink:#12151C; --deep:#0D1015; --surface:#1A1F29; --border:#2B3140;
  --champagne:#EFE7D6; --muted:#A79C86; --faint:#6B6455;
  --brass:#C9A22F; --terra:#B3492A; --sage:#8CAB93;
  --serif:"Didot","Playfair Display",Georgia,"Times New Roman",serif;
  --sans:-apple-system,"Segoe UI","Inter",Roboto,sans-serif;
}
*{box-sizing:border-box;}
body{margin:0;background:var(--ink);color:var(--champagne);font-family:var(--sans);
  -webkit-font-smoothing:antialiased;line-height:1.65;}
::selection{background:rgba(201,162,47,.3);}
a{color:var(--brass);text-decoration:none;border-bottom:1px solid rgba(201,162,47,.35);}
a:hover{border-bottom-color:var(--brass);}

.topbar{border-bottom:1px solid var(--border);background:rgba(13,16,21,.86);
  backdrop-filter:saturate(140%) blur(8px);position:sticky;top:0;z-index:10;}
.topbar .inner{max-width:760px;margin:0 auto;padding:16px 24px;display:flex;
  align-items:center;justify-content:space-between;gap:16px;}
.topbar .mark{font-family:var(--serif);font-size:19px;color:var(--brass);border:0;}
.topbar nav{display:flex;align-items:center;gap:18px;font-size:13px;}
.topbar nav a{color:var(--muted);border:0;}
.topbar nav a:hover{color:var(--champagne);}
.topbar nav a[aria-current="page"]{color:var(--champagne);}
.topbar .launch{border:1px solid rgba(201,162,47,.45);border-radius:999px;padding:7px 15px;
  color:var(--brass);font-weight:600;font-size:12.5px;white-space:nowrap;}
.topbar .launch:hover{background:rgba(201,162,47,.1);color:var(--brass);}

.doc{max-width:760px;margin:0 auto;padding:64px 24px 40px;}
.doc .stamp{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--brass);
  font-weight:650;display:flex;align-items:center;gap:14px;}
.doc .stamp::after{content:"";flex:0 0 48px;height:1px;
  background:linear-gradient(90deg,var(--brass),transparent);}
.doc h1{font-family:var(--serif);font-weight:400;font-size:clamp(32px,5.5vw,46px);
  line-height:1.12;margin:20px 0 14px;text-wrap:balance;}
.doc .dates{font-size:13px;color:var(--faint);margin:0 0 34px;}
.doc .dates b{color:var(--muted);font-weight:600;}
.doc .lede{font-size:17px;line-height:1.7;color:var(--muted);margin:0 0 12px;}
.doc .lede strong{color:var(--champagne);font-weight:600;}

.doc h2{font-family:var(--serif);font-weight:400;font-size:24px;line-height:1.25;
  margin:52px 0 8px;scroll-margin-top:90px;}
.doc h2 .num{color:var(--faint);font-size:16px;margin-right:10px;}
.doc h3{font-size:14px;font-weight:650;letter-spacing:.02em;color:var(--champagne);margin:28px 0 6px;}
.doc p{font-size:15px;line-height:1.75;color:#CFC8B6;margin:12px 0;}
.doc strong{color:var(--champagne);font-weight:600;}
.doc ul{padding-left:0;list-style:none;margin:14px 0;}
.doc li{font-size:15px;line-height:1.7;color:#CFC8B6;padding:7px 0 7px 22px;position:relative;}
.doc li::before{content:"—";position:absolute;left:0;color:var(--faint);}
.doc code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;
  color:var(--sage);background:var(--deep);border:1px solid var(--border);
  border-radius:5px;padding:1px 6px;}

/* the callout used for Limited Use, the no-training pledge and the ticketing disclaimer */
.pledge{border:1px solid rgba(201,162,47,.35);border-radius:14px;background:rgba(201,162,47,.06);
  padding:18px 22px;margin:22px 0;font-size:15px;line-height:1.7;color:#D8D0BE;}
.pledge b{color:var(--brass);font-weight:650;}
.pledge.warn{border-color:rgba(179,73,42,.4);background:rgba(179,73,42,.07);}
.pledge.warn b{color:#E0937B;}

.tablewrap{overflow-x:auto;margin:20px 0;border:1px solid var(--border);border-radius:14px;}
table{border-collapse:collapse;width:100%;min-width:560px;font-size:13.5px;}
th{text-align:left;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--muted);font-weight:650;padding:13px 16px;border-bottom:1px solid var(--border);
  background:var(--surface);}
td{padding:13px 16px;border-bottom:1px solid var(--border);color:#CFC8B6;vertical-align:top;
  line-height:1.55;}
tr:last-child td{border-bottom:0;}
td b{color:var(--champagne);font-weight:600;}

.toc{border:1px solid var(--border);border-radius:14px;background:var(--surface);
  padding:20px 24px;margin:32px 0 8px;}
.toc h4{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);
  font-weight:650;margin:0 0 12px;}
.toc ol{margin:0;padding-left:20px;columns:2;column-gap:32px;}
.toc li{font-size:13.5px;padding:4px 0;color:var(--muted);break-inside:avoid;}
.toc li::before{content:none;}
.toc a{color:var(--muted);border:0;}
.toc a:hover{color:var(--brass);}
@media (max-width:560px){.toc ol{columns:1;}}

footer.site{border-top:1px solid var(--border);margin-top:72px;}
footer.site .inner{max-width:760px;margin:0 auto;padding:38px 24px 56px;
  display:flex;flex-wrap:wrap;gap:18px 32px;align-items:baseline;justify-content:space-between;}
footer.site .legal{font-size:12.5px;color:var(--faint);line-height:1.7;}
footer.site .legal a{color:var(--muted);border:0;}
footer.site .legal a:hover{color:var(--brass);}
footer.site .links{display:flex;gap:20px;font-size:12.5px;flex-wrap:wrap;}
footer.site .links a{color:var(--muted);border:0;}
footer.site .links a:hover{color:var(--brass);}
