.legal-page { min-height: 70vh; padding: clamp(3rem, 8vw, 7rem) clamp(1.25rem, 6vw, 6rem); color: #fff; background: #080808; }
.legal-hero, .legal-content { width: min(100%, 1000px); margin-inline: auto; }
.legal-hero { position: relative; margin-bottom: clamp(2.5rem, 6vw, 5rem); padding-bottom: 2rem; border-bottom: 2px solid var(--color-pop-yellow); }
.legal-kicker { margin: 0 0 1rem; color: var(--color-pop-yellow); font-size: .68rem; font-weight: 900; letter-spacing: .18em; }
.legal-hero h1 { margin: 0; font-size: clamp(3rem, 9vw, 6.5rem); font-weight: 950; line-height: .9; letter-spacing: -.07em; text-transform: uppercase; }
.legal-hero h1 em { color: var(--color-pop-red); font-style: normal; }
.legal-hero > p:last-child { margin: 1.2rem 0 0; color: rgba(255,255,255,.65); }
.legal-block { display: grid; grid-template-columns: 3rem minmax(0,1fr); gap: 1rem; padding: 1.75rem 0; border-bottom: 1px solid rgba(255,255,255,.15); }
.legal-index { color: var(--color-pop-red); font-size: .8rem; font-weight: 900; letter-spacing: .08em; }
.legal-block h2 { margin: 0 0 .9rem; color: var(--color-pop-yellow); font-size: clamp(1.1rem, 3vw, 1.5rem); font-weight: 900; text-transform: uppercase; }
.legal-block p, .legal-block dd { color: rgba(255,255,255,.75); font-size: .95rem; line-height: 1.75; }
.legal-block p:last-child { margin-bottom: 0; }
.legal-block a { color: #fff; text-decoration-color: var(--color-pop-red); text-underline-offset: .2em; }
.legal-details { display: grid; grid-template-columns: minmax(130px,.35fr) 1fr; gap: .55rem 1rem; margin: 1rem 0 0; }
.legal-details dt { color: rgba(255,255,255,.48); font-size: .82rem; font-weight: 700; }
.legal-details dd { margin: 0; }
.legal-cookie-table { margin-top: 1.25rem; border: 1px solid rgba(255,255,255,.18); }
.legal-cookie-row { display: grid; grid-template-columns: 1fr 2fr 1fr; gap: 1rem; padding: .9rem 1rem; border-top: 1px solid rgba(255,255,255,.14); color: rgba(255,255,255,.72); font-size: .82rem; line-height: 1.5; }
.legal-cookie-row--head { border-top: 0; color: var(--color-pop-yellow); font-size: .68rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.legal-cookie-row code { color: #fff; overflow-wrap: anywhere; }
.legal-updated { margin: 2rem 0 0; color: rgba(255,255,255,.42); font-size: .72rem; }
@media (max-width: 650px) {
    .legal-page { padding: 2.5rem 1.15rem 3.5rem; }
    .legal-block { grid-template-columns: 2rem minmax(0,1fr); gap: .55rem; padding: 1.35rem 0; }
    .legal-details { grid-template-columns: 1fr; gap: .2rem; }
    .legal-details dd { margin-bottom: .7rem; }
    .legal-cookie-row { grid-template-columns: 1fr; gap: .35rem; }
    .legal-cookie-row--head { display: none; }
    .legal-cookie-row span + span { padding-top: .2rem; }
}
