.legal-hero,
.legal-layout { width: min(1240px, calc(100% - 64px)); margin-inline: auto; }
.legal-hero { padding: 72px 0 42px; border-bottom: 1px solid rgba(255, 255, 255, .24); box-shadow: 0 1px rgba(255, 63, 168, .1); }
.legal-hero > p { margin: 0; color: #ff3fa8; font-size: .72rem; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.legal-hero h1 { margin: 10px 0 14px; color: #fff; font-size: clamp(2.8rem, 6vw, 5.6rem); line-height: 1; }
.legal-hero span { color: #9ca2bd; font-size: .76rem; }
.legal-layout { display: grid; grid-template-columns: 235px minmax(0, 1fr); gap: 48px; padding: 42px 0 100px; }
.legal-nav { align-self: start; display: grid; gap: 8px; counter-reset: legal-section; }
.legal-nav a { display: grid; grid-template-columns: 27px minmax(0, 1fr); align-items: center; min-height: 48px; border: 1px solid rgba(255, 255, 255, .09); border-radius: 10px; padding: 8px 12px; color: #9ba1ba; background: rgba(12, 16, 38, .72); text-decoration: none; font-size: .72rem; font-weight: 800; counter-increment: legal-section; }
.legal-nav a::before { display: grid; width: 24px; height: 24px; place-items: center; border-radius: 7px; color: #777e9d; background: rgba(255, 255, 255, .05); content: counter(legal-section, decimal-leading-zero); font-size: .57rem; }
.legal-nav a:hover,
.legal-nav a.active { border-color: rgba(255, 63, 168, .48); color: #fff; background: linear-gradient(100deg, rgba(255, 63, 168, .16), rgba(108, 45, 202, .08)); box-shadow: 0 12px 30px rgba(0, 0, 0, .16); }
.legal-nav a.active::before { color: #fff; background: linear-gradient(135deg, #ff3fa8, #8f31df); }
.legal-document { max-width: 830px; color: #aeb3ca; line-height: 1.75; }
.legal-document .legal-intro { margin: 0 0 38px; color: #e1e3ee; font-size: 1.08rem; }
.legal-document h2 { margin: 38px 0 8px; color: #fff; font-size: 1.2rem; }
.legal-document p { margin: 0 0 16px; }
.legal-document a { color: #ff72ba; }
.legal-document code { border: 1px solid rgba(255, 255, 255, .1); border-radius: 5px; padding: 2px 5px; color: #dfc2ee; background: #0b0e25; }
.contact-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.contact-options a { border: 1px solid rgba(255, 255, 255, .11); border-radius: 13px; padding: 20px; background: rgba(13, 17, 41, .88); text-decoration: none; }
.contact-options a:hover { border-color: rgba(255, 63, 168, .55); }
.contact-options strong,
.contact-options span { display: block; }
.contact-options strong { color: #fff; }
.contact-options span { margin-top: 5px; color: #969cb7; font-size: .75rem; line-height: 1.5; }
.contact-address { margin-top: 25px !important; }
@media (max-width: 760px) {
    .legal-hero,
    .legal-layout { width: min(100% - 28px, 1240px); }
    .legal-hero { padding-top: 44px; }
    .legal-layout { grid-template-columns: 1fr; gap: 28px; }
    .legal-nav { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .contact-options { grid-template-columns: 1fr; }
}
