:root{
  --paper:#fbf8ee; --card:#fffdf6; --rule:rgba(59,108,166,.20); --rule-faint:rgba(59,108,166,.10);
  --marginline:#e2574b; --line:#d9d2bd; --ink:#141414; --dim:#4a4a44; --faint:#8b877a;
  --blue:#1d3f8f; --red:#c0392b; --amber:#8a5a00;
  --fine:Arial,Helvetica,sans-serif;
  --head:"Bitter",Georgia,"Times New Roman",serif;
  --body:Georgia,"Times New Roman",serif;
  --green:#141414; --grid:var(--rule-faint); --grid-strong:var(--rule);   /* legacy names used by inline SVGs */
}
*{box-sizing:border-box}
html,body{margin:0}
body{
  min-height:100vh; color:var(--dim); background-color:var(--paper); font-family:var(--body); line-height:1.65;
  background-image:
    linear-gradient(90deg, transparent 58px, var(--marginline) 58px, var(--marginline) 60px, transparent 60px),
    repeating-linear-gradient(180deg, transparent 0, transparent 31px, var(--rule) 31px, var(--rule) 32px);
  -webkit-font-smoothing:antialiased; display:flex; flex-direction:column;
}
::selection{background:rgba(226,87,75,.22)}
a{color:var(--blue); text-decoration:underline; text-underline-offset:2px}
a:hover{color:var(--red)}

.top{position:sticky; top:0; z-index:5; background:rgba(251,248,238,.94); backdrop-filter:blur(6px);
  border-bottom:3px solid var(--ink); box-shadow:0 6px 0 -5px var(--ink)}
.top .row{max-width:760px; margin:0 auto; padding:13px 22px; display:flex; align-items:center; justify-content:space-between; gap:16px}
.brand{display:flex; align-items:center; gap:10px; color:var(--ink); text-decoration:none}
.brand:hover{color:var(--ink)}
.brand svg{width:36px; height:25px}
.brand .eyebrow{font-family:var(--head); font-weight:700; font-size:.68rem; letter-spacing:.06em; color:var(--marginline)}
.brand .name{font-family:var(--head); font-weight:900; font-size:1.05rem; letter-spacing:-.01em; color:var(--ink)}
.back{font-family:var(--fine); font-weight:700; font-size:.74rem; letter-spacing:.1em; text-transform:uppercase; color:#3c3a33; text-decoration:none}
.back:hover{color:var(--ink); text-decoration:underline}

.wrap{width:100%; max-width:760px; margin:0 auto; padding:36px 22px 10px; flex:1}
.legal h1{font-family:var(--head); font-weight:900; font-size:clamp(2rem,5vw,2.9rem); line-height:1.03; letter-spacing:-.02em; margin:0 0 8px; color:var(--ink)}
.legal .updated{font-family:var(--fine); font-size:.74rem; letter-spacing:.08em; text-transform:uppercase; color:var(--faint); margin-bottom:24px}
.legal h2{font-family:var(--head); font-weight:800; font-size:1.22rem; margin:30px 0 8px; color:var(--ink); border-bottom:1px solid var(--line); padding-bottom:5px}
.legal h3{font-family:var(--head); font-weight:800; font-size:1rem; margin:18px 0 6px; color:var(--ink)}
.legal p, .legal li{color:var(--dim); font-size:.98rem; line-height:1.7}
.legal ul{padding-left:20px; display:grid; gap:6px}
.legal a{color:var(--blue)}
.legal code{font-family:ui-monospace,Menlo,monospace; background:#efe9d8; color:var(--ink); padding:1px 6px; border-radius:3px}
.placeholder{color:var(--red); font-weight:700}
.disclaimer{font-family:var(--fine); background:#fdf3e0; border:1px solid #e3c98f; color:var(--amber); border-radius:4px; padding:14px 16px; font-size:.86rem; line-height:1.6; margin:0 0 24px}
.disclaimer b{color:var(--amber)}

.foot{border-top:3px solid var(--ink); box-shadow:0 -6px 0 -5px var(--ink); padding:22px; margin-top:40px; background:rgba(251,248,238,.7)}
.foot .row{max-width:760px; margin:0 auto; display:flex; gap:16px; flex-wrap:wrap; justify-content:space-between; align-items:center}
.foot .b{font-family:var(--head); font-weight:800; font-size:.85rem; color:var(--ink)}
.foot .links{display:flex; gap:16px; flex-wrap:wrap}
.foot .links a{font-family:var(--fine); font-size:.78rem; color:var(--dim); text-decoration:none}
.foot .links a:hover{color:var(--ink); text-decoration:underline}

/* keep the red margin line clear of the text at every window size */
@media (max-width:860px){ .wrap,.top .row,.foot .row{padding-left:84px} }
@media (max-width:560px){
  body{background-image:
    linear-gradient(90deg, transparent 28px, var(--marginline) 28px, var(--marginline) 30px, transparent 30px),
    repeating-linear-gradient(180deg, transparent 0, transparent 31px, var(--rule) 31px, var(--rule) 32px)}
  .wrap,.top .row,.foot .row{padding-left:52px}
}
