:root {
    --legal-max: 760px;
}
.legal-main {
    padding: 2rem 1.25rem 3rem;
}
.legal-shell {
    width: min(100%, var(--legal-max));
    margin: 0 auto;
    background: #fff;
    border: 1px solid var(--line, #d5dee9);
    border-radius: 20px;
    box-shadow: var(--shadow, 0 18px 48px rgba(15, 23, 42, 0.1));
    padding: 2rem 1.5rem 2.5rem;
}
.legal-head h1 {
    margin: 0 0 0.5rem;
    font-family: var(--display, "Sora", sans-serif);
    font-size: clamp(1.8rem, 4vw, 2.4rem);
    letter-spacing: -0.03em;
    line-height: 1.15;
}
.legal-updated {
    margin: 0 0 1.5rem;
    color: var(--muted, #5b6b7c);
    font-size: 0.92rem;
}
.legal-body-copy h2 {
    margin: 1.75rem 0 0.65rem;
    font-family: var(--display, "Sora", sans-serif);
    font-size: 1.2rem;
    letter-spacing: -0.02em;
}
.legal-body-copy p,
.legal-body-copy li {
    color: #334155;
    font-size: 0.98rem;
    line-height: 1.65;
}
.legal-body-copy p { margin: 0 0 0.85rem; }
.legal-body-copy ul {
    margin: 0 0 1rem;
    padding-left: 1.2rem;
}
.legal-body-copy li { margin-bottom: 0.4rem; }
.legal-body-copy a {
    color: var(--emerald-deep, #059669);
    font-weight: 600;
}
.home-nav .nav-links a.is-active {
    color: var(--emerald-deep, #059669);
}
@media (min-width: 760px) {
    .legal-shell { padding: 2.5rem 2.75rem 3rem; }
}
