/* ============================================================
   Shared by privacy-policy.html, terms-of-service.html and
   accessibility-statement.html.
   Same palette and type as index.html, set for long reading.
   ============================================================ */
:root{
  --ink:      #0f1c3f;
  --body:     #334155;
  --muted:    #64748b;
  --faint:    #5b6b85;   /* darkest shade that still reads as secondary: 5:1 on the page tint */
  --blue:     #2563eb;
  --line:     #e6ecf7;
  --hairline: #f1f5fb;
  --wash:     #f4f7fc;
}

*{box-sizing:border-box}
html{-webkit-font-smoothing:antialiased;scroll-behavior:smooth}
body{
  margin:0;
  font-family:'Heebo',system-ui,-apple-system,sans-serif;
  color:var(--body);
  background:linear-gradient(180deg,#f4f8ff 0,#fff 320px);
}
a{color:var(--blue)}
:focus-visible{outline:2.5px solid var(--blue);outline-offset:3px;border-radius:6px}

/* ---- skip link: off screen until a keyboard user tabs to it ---- */
.skip-link{
  position:absolute;top:-100px;inset-inline-start:16px;z-index:20;
  padding:10px 18px;border-radius:10px;
  background:var(--ink);color:#fff;font-weight:600;text-decoration:none;
}
.skip-link:focus{top:12px}
main[tabindex="-1"]:focus{outline:none}

/* ---- top bar: the links on the right, the logo on the left ---- */
.lbar{
  position:sticky;top:0;z-index:10;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  height:64px;
  padding:0 max(16px,calc((100% - 760px) / 2));
  background:rgba(255,255,255,.78);
  -webkit-backdrop-filter:blur(18px) saturate(180%);
  backdrop-filter:blur(18px) saturate(180%);
  border-bottom:1px solid rgba(15,28,63,.08);
}
.lbar__nav{display:flex;gap:18px}
.lbar__nav a{font-size:14.5px;font-weight:500;color:var(--muted);text-decoration:none}
.lbar__nav a:hover{color:var(--ink)}
.lbar__nav a[aria-current="page"]{color:var(--ink);font-weight:600}
.lbar__brand{display:flex;align-items:center;gap:9px;text-decoration:none}
.lbar__brand img{width:28px;height:28px}
.lbar__brand span{font-family:'Rubik',sans-serif;font-weight:700;font-size:20px;color:var(--ink)}

/* ---- the document ---- */
.doc{max-width:760px;margin:0 auto;padding:clamp(36px,6vw,64px) 16px clamp(56px,8vw,96px)}
.doc h1{
  margin:0;
  font-family:'Rubik',sans-serif;
  font-weight:800;
  font-size:clamp(32px,4.4vw,44px);
  line-height:1.15;
  letter-spacing:-.02em;
  color:var(--ink);
}
.doc__date{margin:10px 0 0;font-size:14px;color:var(--faint)}
.doc__body{margin-top:clamp(28px,4vw,44px);font-size:16px;line-height:1.85}

.doc section{scroll-margin-top:84px}
.doc section + section{margin-top:40px}
.doc h2{
  margin:0 0 12px;
  font-family:'Rubik',sans-serif;
  font-weight:700;
  font-size:21px;
  line-height:1.35;
  color:var(--ink);
}
.doc p{margin:0 0 12px}
.doc .lead-in{margin-top:18px;font-weight:600;color:var(--ink)}
.doc strong{color:var(--ink);font-weight:600}
.doc ul{margin:0 0 12px;padding-inline-start:1.3em}
.doc li{margin-bottom:6px}
.doc li ul{margin:6px 0}

.doc table{
  width:100%;
  border-collapse:collapse;
  font-size:14.5px;
  line-height:1.6;
}
.doc__table{
  margin:4px 0 16px;
  overflow-x:auto;
  background:#fff;
  border:1px solid var(--line);
  border-radius:14px;
}
.doc th{background:var(--wash);color:var(--ink);font-weight:600;text-align:start}
.doc th,.doc td{padding:10px 14px;vertical-align:top}
.doc tbody tr + tr td{border-top:1px solid var(--hairline)}
.doc td:first-child{font-weight:600;color:var(--ink);white-space:nowrap}

/* ---- footer ---- */
.lfoot{
  max-width:760px;margin:0 auto;
  padding:22px 16px 40px;
  border-top:1px solid var(--line);
  display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 20px;
  font-size:13.5px;color:var(--faint);
}
.lfoot nav{display:flex;gap:18px}
.lfoot a{color:var(--muted);text-decoration:none}
.lfoot a:hover{color:var(--ink)}

@media (max-width:520px){
  .lbar__nav{gap:14px}
  .lbar__nav a{font-size:13.5px}
  .lbar__brand span{font-size:18px}
  .doc td:first-child{white-space:normal}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
}
