/* Legal page template (/terms, /privacy). Layout from the "Legal page" boards on the Time Code Zero Branding canvas;
   fonts and colours are the live site's (Inter Tight, the landing/thanks/failed dark palette). Dark only, like the site. */
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/inter-tight-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter-tight-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/inter-tight-latin-800-normal.woff2) format('woff2')}

/* Site tokens (as used on the landing, thanks and failed pages) */
:root{
  --bg:#0B0D10; --heading:#F2F4F7; --text:#C4CAD3; --muted:#9AA3AF; --faint:#6B7584; --line:#1E232A;
  --accent:#34C759; --accent-hover:#5EDB7E; --radius:6px;
}

html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--bg);color:var(--text);font-family:'Inter Tight',system-ui,sans-serif}
.legal-page{min-height:100vh;display:flex;flex-direction:column}

/* Site header: logo only */
.legal-header{border-bottom:1px solid var(--line)}
.legal-header-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 24px}
.legal-logo{display:flex;align-items:center;gap:10px;text-decoration:none;border-radius:var(--radius)}
.legal-logo .mark-top{fill:var(--heading)}
.legal-logo .mark-line{stroke:var(--faint)}
.legal-wordmark{font-size:15px;font-weight:800;color:var(--heading);white-space:nowrap}
.legal-wordmark span{color:var(--accent)}

/* Centred reading column */
.legal{width:100%;max-width:720px;box-sizing:border-box;margin:0 auto;padding:56px 24px 72px;display:flex;flex-direction:column;gap:28px;font-size:16px;line-height:1.75;overflow-wrap:break-word}
.legal-title{display:flex;flex-direction:column;gap:8px}
.legal h1{margin:0;font-size:40px;font-weight:800;letter-spacing:-0.8px;line-height:1.15;color:var(--heading)}
.legal .updated{margin:0;color:var(--muted);font-size:14px}
.legal section{display:flex;flex-direction:column;gap:12px}
.legal h2{margin:0;font-size:20px;font-weight:600;line-height:1.3;color:var(--heading)}
.legal p,.legal ul{margin:0}
.legal ul{padding-left:22px;display:flex;flex-direction:column;gap:8px}
.legal .keep-spaces{white-space:pre-wrap}
.legal a{color:var(--accent);overflow-wrap:anywhere}
.legal a:hover{color:var(--accent-hover)}

/* Footer: "Terms · Privacy", centred */
.legal-page .site-footer{margin-top:auto;border-top:1px solid var(--line);padding:18px 24px;display:flex;justify-content:center;gap:10px;font-size:13px;color:var(--faint)}
.legal-page .site-footer a{color:var(--muted);text-decoration:none}
.legal-page .site-footer a:hover{color:var(--heading);text-decoration:underline}

a:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius)}

@media (max-width:600px){
  .legal-header-inner{padding:14px 16px}
  .legal{padding:28px 16px 40px}
  .legal h1{font-size:30px}
  .legal h2{font-size:18px}
}

/* Printing / the terms PDF: black on white, no header or footer */
@media print{
  :root{--bg:#fff;--heading:#000;--text:#000;--muted:#333;--accent:#000}
  .legal-header,.legal-page .site-footer{display:none !important}
  .legal-page{min-height:0}
  .legal{max-width:none;padding:0;font-size:11pt;line-height:1.5;gap:16pt}
  .legal h1{font-size:24pt}
  .legal h2{font-size:14pt;break-after:avoid}
  .legal a{text-decoration:none}
  .legal li,.legal p{break-inside:avoid}
}
