:root {
    --legal-ink: #0a1633;
    --legal-blue: #0d38f2;
    --legal-magenta: #f100cc;
    --legal-muted: #5a6b8c;
    --legal-line: #dde5f3;
    --legal-wash: #f4f7fd;
}

.legal-page {
    margin: 0;
    background: var(--legal-wash);
    color: var(--legal-ink);
    font: 400 17px/1.65 Arial, Helvetica, sans-serif;
}

.legal-page * { box-sizing: border-box; }
.legal-page a { color: var(--legal-blue); text-decoration: underline; text-underline-offset: 2px; }
.legal-page-header { background: linear-gradient(135deg, #0a1633 0%, #10226e 55%, #0d38f2 100%); color: #fff; padding: 52px 24px 40px; }
.legal-inner { width: min(100% - 48px, 760px); margin: 0 auto; }
.legal-page-header h1 { margin: 0 0 8px; font-size: clamp(28px, 5vw, 36px); line-height: 1.18; }
.legal-page-header p { margin: 0; color: #b9c8f2; }
.legal-page-header .legal-inner::after { content: ""; display: block; width: 46px; height: 4px; margin-top: 18px; background: var(--legal-magenta); }
.legal-nav { padding: 18px 0 0; font-size: 15px; }
.legal-nav a { margin-right: 16px; }
.legal-main { padding: 22px 0 70px; }
.legal-card { margin: 0 0 16px; padding: 22px 26px; background: #fff; border: 1px solid var(--legal-line); border-radius: 12px; }
.legal-card h2 { margin: 0 0 10px; color: var(--legal-blue); font-size: 20px; line-height: 1.3; }
.legal-card h3 { margin: 18px 0 4px; font-size: 16px; }
.legal-card p:first-child { margin-top: 0; }
.legal-card p:last-child { margin-bottom: 0; }
.legal-card ul { margin: 8px 0 0; padding-left: 20px; }
.legal-card li { margin: 5px 0; }
.legal-language { margin: 34px 0 14px; padding-top: 20px; border-top: 2px solid var(--legal-line); color: var(--legal-muted); font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.legal-button { display: inline-block; margin-top: 12px; padding: 11px 20px; border-radius: 8px; background: var(--legal-blue); color: #fff !important; font-weight: 700; text-decoration: none !important; }
.legal-footer { padding: 0 0 60px; color: var(--legal-muted); font-size: 14px; }
.legal-footer p { margin: 4px 0; }

@media (max-width: 600px) {
    .legal-inner { width: min(100% - 32px, 760px); }
    .legal-page-header { padding: 38px 16px 30px; }
    .legal-card { padding: 20px; }
}
