:root {
    color-scheme: light;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    color: #182230;
    background: #f5f6f8;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; line-height: 1.7; }
a { color: inherit; }

.policy-shell {
    width: min(1120px, calc(100% - 32px));
    margin: 32px auto;
    background: #fff;
    border: 1px solid #e2e5e9;
    border-radius: 28px;
    box-shadow: 0 24px 70px rgba(27, 31, 43, .09);
    overflow: hidden;
}

.policy-hero {
    padding: 52px 64px;
    color: #fff;
    background: linear-gradient(135deg, #161d2f 0%, #4f46e5 62%, #645cf3 100%);
}

.brand { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 44px; font-weight: 750; text-decoration: none; }
.brand-icon { display: grid; width: 34px; height: 34px; place-items: center; border: 1px solid rgba(255,255,255,.28); border-radius: 10px; background: rgba(255,255,255,.14); }
.eyebrow { display: block; margin-bottom: 10px; color: #c8c5ff; font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
h1 { max-width: 700px; margin: 0; font-size: clamp(42px, 7vw, 68px); line-height: 1.05; letter-spacing: -.04em; }
.hero-copy { max-width: 720px; margin: 22px 0 0; color: #e6e5ff; font-size: 19px; }
.updated { margin: 22px 0 0; color: #c8c5ff; font-size: 13px; }

.policy-layout { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: 64px; padding: 56px 64px 72px; }
.policy-nav { position: sticky; top: 24px; align-self: start; display: grid; gap: 7px; }
.policy-nav p { margin: 0 0 8px; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.policy-nav a { padding: 7px 10px; border-radius: 8px; color: #667085; font-size: 14px; text-decoration: none; }
.policy-nav a:hover { color: #4f46e5; background: #f0efff; }
.policy-content section { scroll-margin-top: 24px; padding: 0 0 32px; margin: 0 0 34px; border-bottom: 1px solid #e8eaee; }
.policy-content section:last-child { margin-bottom: 0; }
.policy-content h2 { margin: 0 0 12px; font-size: 25px; line-height: 1.3; letter-spacing: -.02em; }
.policy-content h3 { margin: 24px 0 7px; font-size: 16px; }
.policy-content p { margin: 0 0 14px; color: #596273; }
.policy-content ul { padding-left: 22px; margin: 12px 0 0; color: #596273; }
.policy-content li { margin: 7px 0; padding-left: 4px; }
.policy-content .contact-card { padding: 30px; border: 1px solid #dcd9ff; border-radius: 20px; background: #f7f6ff; }
.contact-card .eyebrow { color: #6259e8; }
.contact-card a { display: inline-block; color: #4f46e5; font-weight: 750; text-decoration: none; }

@media (max-width: 760px) {
    .policy-shell { width: min(100% - 20px, 1120px); margin: 10px auto; border-radius: 20px; }
    .policy-hero { padding: 36px 26px; }
    .brand { margin-bottom: 34px; }
    .policy-layout { grid-template-columns: 1fr; gap: 30px; padding: 36px 26px 48px; }
    .policy-nav { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .policy-nav p { grid-column: 1 / -1; }
}
