:root {
            color-scheme: light;
            --paper: #f7f6f2;
            --ink: #15161a;
            --muted: #62656c;
            --rule: #d8d7d2;
            --blue: #315fce;
        }
        * { box-sizing: border-box; }
        html { scroll-behavior: smooth; }
        body {
            margin: 0;
            background: var(--paper);
            color: var(--ink);
            font-family: Inter, -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", sans-serif;
            -webkit-font-smoothing: antialiased;
        }
        a { color: inherit; }
        .legal-nav {
            position: sticky;
            top: 0;
            z-index: 20;
            display: flex;
            align-items: center;
            justify-content: space-between;
            min-height: 64px;
            padding: 0 clamp(24px, 5.6vw, 92px);
            border-bottom: 1px solid rgba(21,22,26,.12);
            background: rgba(255,255,255,.92);
            backdrop-filter: saturate(150%) blur(18px);
        }
        .legal-brand { display: inline-flex; align-items: center; gap: 10px; font-size: 15px; font-weight: 760; text-decoration: none; }
        .legal-brand .site-logo { width: 30px; height: 30px; }
        .legal-nav-links { display: flex; align-items: center; gap: 28px; font-size: 13px; font-weight: 620; }
        .legal-nav-links a { text-decoration: none; }
        .legal-shell { width: min(1180px, calc(100% - 80px)); margin: 0 auto; }
        .legal-hero {
            display: grid;
            grid-template-columns: minmax(220px, .45fr) minmax(0, 1fr);
            gap: clamp(48px, 8vw, 124px);
            padding: clamp(88px, 10vw, 148px) 0 78px;
            border-bottom: 1px solid var(--rule);
        }
        .legal-eyebrow { color: var(--blue); font-size: 12px; font-weight: 760; letter-spacing: .13em; text-transform: uppercase; }
        .legal-meta { margin-top: 22px; color: var(--muted); font-size: 13px; line-height: 1.6; }
        .legal-hero h1 { max-width: 10ch; margin: 0; font-size: clamp(56px, 7vw, 92px); line-height: .92; letter-spacing: -.06em; font-weight: 720; }
        .legal-dek { max-width: 58ch; margin: 32px 0 0; color: #45484f; font-size: 18px; line-height: 1.65; }
        .legal-layout {
            display: grid;
            grid-template-columns: minmax(220px, .45fr) minmax(0, 1fr);
            gap: clamp(48px, 8vw, 124px);
            align-items: start;
            padding: 64px 0 112px;
        }
        .legal-toc { position: sticky; top: 98px; display: grid; gap: 10px; font-size: 13px; }
        .legal-toc strong { margin-bottom: 8px; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
        .legal-toc a { color: var(--muted); line-height: 1.35; text-decoration: none; }
        .legal-toc a:hover { color: var(--ink); }
        .legal-copy { max-width: 760px; }
        .legal-section { padding: 0 0 52px; scroll-margin-top: 92px; }
        .legal-section + .legal-section { padding-top: 52px; border-top: 1px solid var(--rule); }
        .legal-section h2 { margin: 0 0 22px; font-size: clamp(27px, 3vw, 38px); line-height: 1.08; letter-spacing: -.035em; font-weight: 690; }
        .legal-section p, .legal-section li { color: #4b4e55; font-size: 16px; line-height: 1.75; }
        .legal-section p { margin: 0 0 16px; }
        .legal-section ul { margin: 0; padding-left: 20px; }
        .legal-section a { color: var(--blue); }
        .legal-footer {
            display: flex;
            justify-content: space-between;
            gap: 32px;
            padding: 34px 0 46px;
            border-top: 1px solid var(--rule);
            color: var(--muted);
            font-size: 13px;
        }
        .legal-footer nav { display: flex; flex-wrap: wrap; gap: 20px; }
        .legal-footer a { text-decoration: none; }
        @media (max-width: 760px) {
            .legal-nav { min-height: 58px; padding-inline: 16px; }
            .legal-nav-links a:not(:last-child) { display: none; }
            .legal-shell { width: calc(100% - 32px); }
            .legal-hero, .legal-layout { grid-template-columns: 1fr; gap: 34px; }
            .legal-hero { padding: 72px 0 52px; }
            .legal-hero h1 { font-size: clamp(48px, 15vw, 68px); }
            .legal-dek { font-size: 17px; }
            .legal-layout { padding: 40px 0 76px; }
            .legal-toc { position: static; padding-bottom: 30px; border-bottom: 1px solid var(--rule); }
            .legal-section { padding-bottom: 40px; }
            .legal-section + .legal-section { padding-top: 40px; }
            .legal-footer { display: grid; }
        }
