/* Legal pages (privacy/, terms/, cookies/). Same tokens and type as index.html; long-form reading layout. */
:root {
  color-scheme: dark;
  --ground: #030626; --chip: rgba(255,255,255,.10);
  --ink: #fff; --ink-muted: rgba(255,255,255,.72); --ink-faint: rgba(255,255,255,.55);
  --line: rgba(255,255,255,.2); --accent: #FF5200; --accent-hover: #E84A00; --warm: #FF7A3D; --hot: #F0AC47;
  --r: 5px; --pad: 20px;
  --ease: cubic-bezier(.7,0,.3,1);
}
*, *::before, *::after { box-sizing: border-box; }
[hidden] { display: none !important; }
html { font-size: 62.5%; background: var(--ground); }
body { margin: 0; color: var(--ink); font: 400 1.6rem/2.6rem Archivo, system-ui, sans-serif;
       -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility;
       background: var(--ground) radial-gradient(120% 60% at 70% 0%, rgba(21,82,178,.22) 0%, rgba(3,6,38,0) 70%) no-repeat; }
:focus-visible { outline: 2px solid var(--hot); outline-offset: 3px; }
a { color: inherit; }

.lg-skip { position: absolute; left: var(--pad); top: -100px; z-index: 10; padding: 1rem 1.4rem; border-radius: var(--r);
           background: var(--accent); color: #fff; font-weight: 500; text-decoration: none; }
.lg-skip:focus { top: var(--pad); }

.lg-top { display: flex; align-items: center; justify-content: space-between; gap: 2rem; flex-wrap: wrap;
          max-width: 112rem; margin: 0 auto; padding: var(--pad) var(--pad) 0; }
.lg-brand { display: inline-flex; align-items: center; height: 5rem; padding: 0 2rem; border-radius: var(--r);
            background: var(--chip); }
.lg-brand img { display: block; height: 2rem; width: auto; }
.lg-back { display: inline-flex; align-items: center; gap: 1rem; min-height: 4.4rem; padding: 0 .4rem;
           color: var(--ink-muted); text-decoration: none; font-size: 1.4rem; transition: color .3s var(--ease); }
.lg-back svg { width: 14px; height: 14px; flex: none; }
.lg-back:hover { color: var(--ink); }

.lg-main { max-width: 76rem; margin: 0 auto; padding: 8rem var(--pad) 10rem; }
.lg-main:focus { outline: none; }
.lg-eyebrow { margin: 0 0 1.6rem; font: 400 1.2rem/1.6rem 'JetBrains Mono', ui-monospace, monospace;
              letter-spacing: .12em; text-transform: uppercase; color: var(--warm); }
.lg-main h1 { margin: 0; font-weight: 300; font-size: clamp(3.6rem, 6vw, 6rem); line-height: 1.02; letter-spacing: -.02em; }
.lg-main .lg-date { margin: 2rem 0 4.8rem; padding-bottom: 3.2rem; border-bottom: 1px solid var(--line); color: var(--ink-muted); font-size: 1.5rem; }
.lg-main .lg-date strong { font-weight: 400; }
.lg-main h2 { margin: 5.6rem 0 1.6rem; font-weight: 400; font-size: 2.6rem; line-height: 3.2rem; letter-spacing: -.01em; scroll-margin-top: 2rem; }
.lg-main h3 { margin: 3.2rem 0 1.2rem; font-weight: 500; font-size: 1.8rem; line-height: 2.6rem; scroll-margin-top: 2rem; }
.lg-main p { margin: 0 0 1.6rem; color: var(--ink-muted); }
.lg-main strong { color: var(--ink); font-weight: 500; }
.lg-main ul { margin: 0 0 2rem; padding: 0 0 0 2rem; color: var(--ink-muted); }
.lg-main li { margin: 0 0 .6rem; padding-left: .4rem; }
.lg-main li::marker { color: var(--warm); }
.lg-main a { color: var(--ink); text-decoration: underline; text-decoration-color: var(--warm); text-underline-offset: .25em; }
.lg-main a:hover { color: var(--warm); }
.lg-main hr { margin: 4rem 0; border: 0; height: 1px; background: var(--line); }
.lg-inline-btn { padding: 0; border: 0; background: none; color: var(--ink); font: inherit; cursor: pointer;
                 text-decoration: underline; text-decoration-color: var(--warm); text-underline-offset: .25em; }
.lg-inline-btn:hover { color: var(--warm); }

.lg-foot { max-width: 112rem; margin: 0 auto; padding: 3.2rem var(--pad) calc(3.2rem + env(safe-area-inset-bottom, 0px));
           display: flex; justify-content: space-between; align-items: center; gap: 1.6rem 3.2rem; flex-wrap: wrap;
           border-top: 1px solid var(--line); font-size: 1.3rem; line-height: 1.6rem; color: var(--ink-faint); }
.lg-legal { display: flex; flex-wrap: wrap; gap: 0 2.4rem; }
.lg-legal a, .lg-legal button { display: inline-flex; align-items: center; min-height: 4.4rem; padding: 0; border: 0; background: none;
                                color: var(--ink-muted); font: inherit; text-decoration: none; cursor: pointer; transition: color .3s var(--ease); }
.lg-legal a:hover, .lg-legal button:hover { color: var(--ink); }
.lg-legal a[aria-current="page"] { color: var(--ink); }
.lg-copy { margin: 0; }

@media (max-width: 640px) {
  body { font-size: 1.5rem; line-height: 2.4rem; }
  .lg-brand { padding: 0 1.4rem; }
  .lg-main { padding-top: 4.8rem; padding-bottom: 7rem; }
  .lg-main h2 { margin-top: 4.4rem; font-size: 2.2rem; line-height: 2.8rem; }
  .lg-legal { gap: 0 2rem; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition-duration: .01ms !important; }
}
