.v3-page-header--simple { padding-bottom: clamp(2rem, 4vw, 3rem); }
.v3-legal { padding-block: var(--section-y); }
.v3-legal__inner { display: grid; grid-template-columns: 17rem minmax(0, 1fr); gap: clamp(2rem, 6vw, 5rem); align-items: start; }
.v3-legal__toc { position: sticky; top: 1.5rem; padding: 1.5rem; background: var(--c-sky-pale); border-radius: var(--radius-card); }
.v3-legal__toc-title { font-weight: 800; color: var(--c-heading); margin-bottom: 0.5rem; }
.v3-legal__toc-list { margin: 0; padding-left: 1.25rem; display: grid; gap: 0.15rem; }
.v3-legal__toc-list a { display: inline-flex; align-items: center; min-height: 40px; font-weight: 600; text-decoration: none; }
@media (max-width: 767px) { .v3-legal__toc-list a { min-height: 44px; } }
.v3-legal__toc-list a:hover { text-decoration: underline; }
.v3-legal__content { max-width: 70ch; font-size: 1.0625rem; line-height: 1.7; }
.v3-legal__maj { color: var(--c-muted); font-size: var(--fs-small); font-weight: 600; margin-bottom: 1.5rem; }
.v3-legal__section { scroll-margin-top: 1.5rem; padding-block: 1.5rem; }
.v3-legal__section + .v3-legal__section { border-top: 1px solid var(--c-border); }
.v3-legal__h2 { font-size: 1.5rem; font-weight: 800; margin-bottom: 0.75rem; }
.v3-legal__content h3 { margin: 1.25rem 0 0.4rem; font-size: 1.15rem; font-weight: 800; color: var(--c-heading); }
.v3-legal__content p + p, .v3-legal__content ul + p { margin-top: 0.75rem; }
.v3-legal__content ul { margin: 0.75rem 0 0; padding-left: 1.25rem; display: grid; gap: 0.3rem; }
.v3-legal__content a { font-weight: 600; }
@media (max-width: 900px) { .v3-legal__inner { grid-template-columns: 1fr; } .v3-legal__toc { position: static; } }
