/* Shared styles for privacy.html and terms.html. Same type system as
   pricing.html: Geist display (Roobert when licensed), Inter body, Geist labels. */
:root{
  --display:"Roobert","Roobert Medium","Geist","Inter",system-ui,sans-serif;
  --text:"Neue Haas Grotesk Text","Haas Grot Text Web 55 Roman","Inter",system-ui,sans-serif;
  --mono:"Geist","Inter",system-ui,sans-serif;
  --ink:#1b181d;--ink-2:#39353c;--muted:#6f6b73;--soft:#9b979f;
  --line:#d6d3d9;--line-2:#e6e3e8;--tint:#f6f5f7;--tint-2:#efedf1;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:#fff;color:var(--ink);font:400 16px/1.65 var(--text);-webkit-font-smoothing:antialiased}
a{color:inherit;text-underline-offset:3px}
:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.guides{margin:0 24px;border-left:1px dashed var(--line);border-right:1px dashed var(--line)}
.frame{position:relative;margin:0 16px;border-left:1px solid var(--line);border-right:1px solid var(--line)}
.fold{position:absolute;right:0;top:0;width:60px;height:60px;border-left:1px solid #b9b5bd;border-bottom:1px solid #b9b5bd;background:linear-gradient(45deg,transparent calc(50% - .5px),#b9b5bd calc(50% - .5px),#b9b5bd calc(50% + .5px),transparent calc(50% + .5px))}
.legal-hero{padding:66px 48px 44px;border-bottom:1px solid var(--line)}
.label{display:inline-block;padding:5px 10px;background:var(--tint-2);color:var(--ink-2);font:500 13px/1.2 var(--mono);}
.legal-hero h1{margin:30px 0 14px;font:500 clamp(40px,5vw,64px)/1.02 var(--display);letter-spacing:-.04em}
.legal-hero p{margin:0;max-width:720px;color:var(--ink-2);font-size:19px;line-height:1.45}
.meta{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:22px;color:var(--muted);font:400 13px var(--mono);letter-spacing:.03em}
.legal{display:grid;grid-template-columns:280px minmax(0,1fr)}
.toc{border-right:1px solid var(--line);background:var(--tint)}
.toc nav{position:sticky;top:70px;max-height:calc(100vh - 80px);overflow:auto;padding:32px 24px}
.toc h2{margin:0 0 12px;font:500 12px var(--mono);color:var(--ink)}
.toc ol{margin:0;padding:0;list-style:none;display:grid;gap:2px;counter-reset:t}
.toc a{display:block;padding:5px 8px;border-radius:3px;color:var(--muted);font-size:14px;line-height:1.35;text-decoration:none}
.toc a:hover{background:#fff;color:var(--ink)}
.toc a.on{background:#fff;color:var(--ink);box-shadow:inset 2px 0 0 var(--ink)}
.doc{min-width:0;padding:40px 56px 80px;max-width:860px}
.doc section{padding-top:8px}
.doc h2{margin:48px 0 14px;font:500 28px/1.15 var(--display);letter-spacing:-.025em}
.doc section:first-child h2{margin-top:10px}
.doc h3{margin:26px 0 8px;font:500 18px/1.3 var(--display);letter-spacing:-.01em}
.doc p,.doc li{color:var(--ink-2)}
.doc p{margin:0 0 14px}
.doc ul,.doc ol{margin:0 0 16px;padding-left:22px}
.doc li{margin:5px 0}
.doc strong{color:var(--ink);font-weight:500}
.caps{font-size:14.5px;}
.summary{margin:0 0 8px;padding:22px 24px;border:1px solid var(--line);background:var(--tint)}
.summary h2{margin:0 0 10px!important;font-size:15px!important;font-family:var(--mono)!important;!important;}
.summary ul{margin:0;padding-left:20px}
.tbl{width:100%;margin:6px 0 18px;border-collapse:collapse;font-size:14.5px}
.tbl th,.tbl td{padding:11px 12px;border-bottom:1px solid var(--line-2);text-align:left;vertical-align:top;color:var(--ink-2)}
.tbl th{border-bottom:2px solid var(--line);font:500 12px var(--mono);color:var(--ink)}
.tbl-wrap{overflow-x:auto}
mark.ph{padding:0 4px;border-radius:2px;background:#ffe98a;color:#3a2e00}
.foot-legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:22px 48px;border-top:1px solid var(--line);color:var(--muted);font:400 13px var(--mono)}
.foot-legal nav{display:flex;gap:18px}
.foot-legal a{text-decoration:none}
.foot-legal a:hover{text-decoration:underline}
@media(max-width:900px){
  .legal{grid-template-columns:1fr}
  .toc{border-right:0;border-bottom:1px solid var(--line)}
  .toc nav{position:static;max-height:none;padding:22px}
  .toc ol{grid-template-columns:1fr 1fr}
  .doc{padding:28px 22px 60px}
  .legal-hero{padding:48px 22px 36px}
  .foot-legal{padding:20px 22px}
}
@media(max-width:620px){.guides{margin:0}.frame{margin:0;border:0}.fold{width:42px;height:42px}.toc ol{grid-template-columns:1fr}.legal-hero p{font-size:17px}}
@media print{.toc,.fold,#runeships-site-nav{display:none}.legal{display:block}.guides,.frame{margin:0;border:0}mark.ph{background:none;border:1px solid #000}}
