/* Shared by privacy.html, terms.html and contact.html. */

:root{
  --bg:#0a0d13;
  --surface:#12161f;
  --ink:#f4f5f7;
  --ink-soft:#a7afbf;
  --ink-faint:#6b7386;
  --accent:#ff4b4b;
  --line:rgba(244,245,247,0.09);
  --line-strong:rgba(244,245,247,0.16);
}
*{ box-sizing:border-box; }
body{
  margin:0; background:var(--bg); color:var(--ink); line-height:1.7;
  font-family: ui-sans-serif, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  -webkit-font-smoothing:antialiased;
}
.topbar{ border-bottom:1px solid var(--line); }
.topbar-inner{ max-width:720px; margin:0 auto; padding:16px 20px; display:flex; align-items:center; gap:9px; }
.topbar-inner span{ font-weight:600; letter-spacing:-0.01em; font-size:.95rem; }
main{ max-width:720px; margin:0 auto; padding:56px 20px 8px; }
h1{ font-size:clamp(1.9rem,4.5vw,2.4rem); font-weight:800; letter-spacing:-0.025em; line-height:1.14; margin:0 0 10px; }
.updated{ font-size:.78rem; color:var(--ink-faint); margin:0 0 34px; }
.lede{ font-size:1.02rem; color:var(--ink-soft); margin:0 0 30px; }
h2{ font-size:1.05rem; font-weight:700; letter-spacing:-0.01em; margin:36px 0 12px; }
p, li{ font-size:.93rem; color:var(--ink-soft); margin:0 0 14px; }
ul{ margin:0 0 14px; padding-left:19px; }
li{ margin-bottom:7px; }
li::marker{ color:var(--ink-faint); }
b, strong{ color:var(--ink); font-weight:600; }
a{ color:var(--ink); text-decoration:underline; text-decoration-color:var(--line-strong); text-underline-offset:4px; transition:text-decoration-color .15s ease; }
a:hover{ text-decoration-color:var(--accent); }
a:focus-visible{ outline:2px solid var(--accent); outline-offset:3px; border-radius:4px; }
.card{ background:var(--surface); border:1px solid var(--line); border-radius:14px; padding:22px 24px; margin:26px 0; }
.card :last-child{ margin-bottom:0; }
.card-label{ font-size:.7rem; font-weight:600; letter-spacing:.12em; text-transform:uppercase; color:var(--accent); margin:0 0 8px; }
.card-line{ font-size:1.05rem; color:var(--ink); font-weight:600; margin:0 0 6px; }
footer{ border-top:1px solid var(--line); margin-top:54px; }
.footer-inner{
  max-width:720px; margin:0 auto; padding:24px 20px 40px; font-size:.79rem; color:var(--ink-faint);
  display:flex; flex-wrap:wrap; gap:10px 20px; align-items:center; justify-content:space-between;
}
.footer-inner a{ color:var(--ink-faint); text-decoration-color:transparent; }
.footer-inner a:hover{ color:var(--ink); }
.footer-links{ display:flex; flex-wrap:wrap; gap:20px; }
