/* ==========================================================================
   Legal pages (/privacy-policy/, /terms/, /cookie-policy/), generated by tools/gen-legal.js · Prefix .sblg-
   ========================================================================== */
.sblg-hero, .sblg {
  --lg-navy: #0A1F38; --lg-ink: #0B63BE; --lg-orange: #FF8A00; --lg-text: #334155; --lg-muted: #64748B; --lg-line: #E2E8F0;
  position: relative; font-family: var(--sb-font-body); color: var(--sb-charcoal);
}
.sblg-hero *, .sblg *, .sblg-hero *::before { box-sizing: border-box; }
.sblg-hero :where(h1, p), .sblg :where(h2, p, ol) { margin: 0; }
.sblg-wrap { position: relative; z-index: 1; max-width: 1240px; margin-inline: auto; padding-inline: var(--sb-gutter); }
.sblg-hero { overflow: hidden; padding: 52px 0 40px; background: #F7F9FC; border-bottom: 1px solid var(--lg-line); }
.sblg-hero__dots { position: absolute; inset: 0; pointer-events: none; background: radial-gradient(rgba(10, 31, 56, .07) 1px, transparent 1.2px) 0 0 / 22px 22px; -webkit-mask-image: radial-gradient(50% 90% at 85% 30%, #000, transparent 75%); mask-image: radial-gradient(50% 90% at 85% 30%, #000, transparent 75%); }
.sblg-eyebrow { display: inline-flex; align-items: center; gap: 16px; font: 600 .8125rem/1 var(--sb-font-mono); letter-spacing: .22em; text-transform: uppercase; color: var(--lg-navy); }
.sblg-eyebrow span { width: 40px; height: 2px; background: var(--lg-orange); }
.sblg-title { margin-top: 20px !important; font: 800 clamp(2.25rem, 4.2vw, 3.75rem)/1.04 var(--sb-font-heading); font-stretch: 100%; letter-spacing: -.035em; color: var(--lg-navy); }
.sblg-lede { margin-top: 16px !important; max-width: 46rem; font-size: clamp(1.0625rem, 1.3vw, 1.25rem); line-height: 1.55; color: #475569; }
.sblg-meta { display: inline-flex; align-items: center; gap: 8px; margin-top: 20px !important; padding: 8px 14px; border-radius: 999px; background: #FFFFFF; border: 1px solid var(--lg-line); font: 500 .875rem/1 var(--sb-font-mono); color: var(--lg-muted); }
.sblg { padding: 48px 0 88px; background: #FFFFFF; }
.sblg-layout { display: grid; grid-template-columns: 260px minmax(0, 760px); gap: 64px; justify-content: center; }
.sblg-toc { position: sticky; top: 120px; align-self: start; }
.sblg-toc p { font: 600 .75rem/1 var(--sb-font-mono); letter-spacing: .2em; text-transform: uppercase; color: var(--lg-muted); }
.sblg-toc ol { margin-top: 14px !important; padding: 0; list-style: none; display: grid; gap: 2px; border-left: 2px solid var(--lg-line); }
.sblg-toc a { display: flex; gap: 10px; margin-left: -2px; padding: 8px 12px; border-left: 2px solid transparent; color: #475569; font-size: .9375rem; line-height: 1.35; text-decoration: none; }
.sblg-toc a span { font: 600 .75rem/1.6 var(--sb-font-mono); color: var(--lg-muted); }
.sblg-toc a:hover { border-left-color: var(--lg-orange); color: var(--lg-navy); }
.sblg-body { font-size: 1.0625rem; line-height: 1.75; color: var(--lg-text); }
.sblg-sec { padding: 28px 0; border-bottom: 1px solid var(--lg-line); scroll-margin-top: 110px; }
.sblg-sec:first-child { padding-top: 0; }
.sblg-sec h2 { display: flex; align-items: baseline; gap: 14px; margin-bottom: 14px !important; font: 800 1.5rem/1.25 var(--sb-font-heading); font-stretch: 100%; letter-spacing: -.02em; color: var(--lg-navy); }
.sblg-sec h2 span { font: 600 .875rem/1 var(--sb-font-mono); color: var(--lg-orange); }
.sblg-sec > * + * { margin-top: 1em; }
.sblg-sec ul { padding-left: 1.3em; list-style: disc; }
.sblg-sec li + li { margin-top: .4em; }
.sblg-sec li::marker { color: var(--lg-orange); }
.sblg-sec strong { color: var(--lg-navy); }
.sblg-body a { color: var(--lg-ink); font-weight: 600; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; overflow-wrap: anywhere; }
.sblg-body a:hover { color: var(--lg-orange); }
.sblg-table { overflow-x: auto; border: 1px solid var(--lg-line); border-radius: 12px; }
.sblg-table:focus-visible, .sblg-toc a:focus-visible, .sblg-body a:focus-visible { outline: 3px solid var(--lg-orange); outline-offset: 2px; }
.sblg-table table { width: 100%; min-width: 620px; border-collapse: collapse; font-size: .9375rem; line-height: 1.5; }
.sblg-table th { padding: 12px 16px; background: #F7F9FC; border-bottom: 1px solid var(--lg-line); font: 600 .75rem/1.3 var(--sb-font-mono); letter-spacing: .1em; text-transform: uppercase; color: var(--lg-muted); text-align: left; }
.sblg-table td { padding: 12px 16px; border-bottom: 1px solid var(--lg-line); vertical-align: top; }
.sblg-table tr:last-child td { border-bottom: 0; }
.sblg-table td:first-child { font-weight: 600; color: var(--lg-navy); }
.sblg-more { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; margin-top: 32px; }
.sblg-more p { font: 600 .75rem/1 var(--sb-font-mono); letter-spacing: .2em; text-transform: uppercase; color: var(--lg-muted); }
.sblg-more a { display: inline-flex; align-items: center; gap: 8px; text-decoration: none !important; }
@media (max-width: 960px) {
  .sblg-layout { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .sblg-toc { position: static; padding: 18px 20px; border: 1px solid var(--lg-line); border-radius: 14px; background: #F7F9FC; }
  .sblg-toc ol { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-left: 0; }
  .sblg-toc a { margin-left: 0; padding: 6px 0; border-left: 0; }
}
@media (max-width: 560px) { .sblg-toc ol { grid-template-columns: minmax(0, 1fr); } .sblg-hero { padding: 36px 0 28px; } }
