/* ═══════════════════════════════════════════════════════════════
   MONOLITH — shared styling for the legal pages
   (terms.html / privacy.html / accessibility.html)
   Dark gothic theme, tuned for long-form readability.
   ═══════════════════════════════════════════════════════════════ */
:root{
  --bg:#0f0f1a; --panel:#15131f; --ink:#e8e0d0; --muted:rgba(232,224,208,0.62);
  --gold:#c9a84c; --line:rgba(201,168,76,0.22);
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0; background:var(--bg); color:var(--ink);
  font-family:'EB Garamond','Crimson Text',Georgia,serif;
  font-size:1.05rem; line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--gold); text-decoration:underline; text-underline-offset:2px;}
a:hover{color:#e8c869;}
.wrap{max-width:780px; margin:0 auto; padding:2.2rem 1.25rem 5rem;}
.topbar{
  position:sticky; top:0; z-index:5; backdrop-filter:blur(8px);
  background:rgba(15,15,26,0.86); border-bottom:1px solid var(--line);
}
.topbar .inner{max-width:780px; margin:0 auto; padding:0.7rem 1.25rem; display:flex; align-items:center; justify-content:space-between; gap:1rem;}
.brand{font-family:'Cinzel',serif; letter-spacing:0.18em; color:var(--gold); font-size:0.95rem; text-transform:uppercase; text-decoration:none;}
.backlink{font-family:'Cinzel',serif; font-size:0.7rem; letter-spacing:0.12em; text-transform:uppercase; color:var(--muted); text-decoration:none; border:1px solid var(--line); border-radius:100px; padding:0.4rem 0.9rem;}
.backlink:hover{color:var(--gold); border-color:var(--gold);}
h1{font-family:'Cinzel',serif; color:var(--gold); font-size:clamp(1.8rem,5vw,2.6rem); line-height:1.15; margin:1.6rem 0 0.4rem;}
h2{font-family:'Cinzel',serif; color:#e8c869; font-size:1.18rem; letter-spacing:0.02em; margin:2.4rem 0 0.5rem; padding-top:0.6rem; border-top:1px solid var(--line);}
h3{font-family:'Cinzel',serif; color:var(--ink); font-size:1rem; margin:1.3rem 0 0.3rem;}
p,li{color:var(--ink);}
ul,ol{padding-left:1.3rem;}
li{margin:0.3rem 0;}
.meta{color:var(--muted); font-size:0.92rem; margin-bottom:1.4rem;}
.lead{font-size:1.12rem; color:var(--ink);}
.callout{background:var(--panel); border:1px solid var(--line); border-left:3px solid var(--gold); border-radius:8px; padding:0.9rem 1.1rem; margin:1.2rem 0;}
.callout strong{color:#e8c869;}
.fill{color:#ffcf6b; background:rgba(201,168,76,0.10); border-radius:4px; padding:0 4px; font-style:normal;}
.toc{background:var(--panel); border:1px solid var(--line); border-radius:10px; padding:1rem 1.2rem; margin:1.6rem 0;}
.toc ol{margin:0.3rem 0 0; columns:2; column-gap:1.6rem;}
.toc a{text-decoration:none; color:var(--muted); font-size:0.95rem;}
.toc a:hover{color:var(--gold);}
.foot{margin-top:3rem; padding-top:1.2rem; border-top:1px solid var(--line); color:var(--muted); font-size:0.86rem;}
@media (max-width:520px){ .toc ol{columns:1;} body{font-size:1rem;} }
