.mn-legal {
    --legal-ink: #0a0d18;
    --legal-paper: #f7f6f2;
    --legal-violet: #a895ff;
    --legal-mint: #56e6c1;
    min-height: 100vh;
    overflow: hidden;
    color: #f8f9ff;
    background: var(--legal-ink);
    font-family: 'DM Sans', system-ui, sans-serif;
}

.mn-legal *, .mn-legal *::before, .mn-legal *::after { box-sizing: border-box; }
.mn-legal h1, .mn-legal h2, .mn-legal h3, .mn-legal p { margin: 0; }
.mn-legal a { color: inherit; text-decoration: none; }
.mn-legal-container { width: min(1100px, calc(100% - 48px)); margin: 0 auto; }

.mn-legal-nav {
    position: relative; z-index: 10; height: 76px; padding: 0 max(24px, calc((100vw - 1100px) / 2));
    display: flex; align-items: center; gap: 38px; border-bottom: 1px solid rgba(255,255,255,.08);
    background: rgba(10,13,24,.92); backdrop-filter: blur(18px);
}
.mn-legal-brand { display: inline-flex; align-items: center; gap: 11px; font: 800 20px 'Manrope', sans-serif; letter-spacing: -.7px; white-space: nowrap; }
.mn-legal-brand img { width: 42px; height: 34px; object-fit: cover; border: 1px solid rgba(255,255,255,.15); border-radius: 10px; box-shadow: 0 8px 24px rgba(10,115,218,.28); }
.mn-legal-brand > span > span { color: var(--legal-mint); }
.mn-legal-nav__links { display: flex; align-items: center; gap: 28px; margin: 0 auto; }
.mn-legal-nav__links a { position: relative; padding: 28px 0 25px; color: #aeb5c8; font-size: 13px; transition: color .2s ease; }
.mn-legal-nav__links a:hover, .mn-legal-nav__links a.active { color: #fff; }
.mn-legal-nav__links a.active::after { content: ''; position: absolute; inset: auto 0 -1px; height: 2px; background: var(--legal-mint); }
.mn-legal-back { min-height: 42px; padding: 0 17px; display: inline-flex; align-items: center; gap: 9px; border: 1px solid rgba(255,255,255,.15); border-radius: 12px; background: rgba(255,255,255,.05); font-size: 12px; font-weight: 700; transition: border-color .2s ease, color .2s ease; }
.mn-legal-back:hover { color: var(--legal-mint); border-color: rgba(86,230,193,.4); }

.mn-legal-hero { position: relative; padding: 105px 0 95px; background: radial-gradient(circle at 75% 45%, rgba(130,108,255,.2), transparent 29%), linear-gradient(150deg, #0b0e1a, #0a0d18 70%, #111329); }
.mn-legal-hero__glow { position: absolute; width: 420px; height: 420px; right: -190px; top: -80px; border: 1px solid rgba(130,108,255,.13); border-radius: 50%; background: rgba(130,108,255,.05); }
.mn-legal-hero .mn-legal-container { position: relative; z-index: 1; }
.mn-legal-eyebrow { display: flex; align-items: center; gap: 11px; margin-bottom: 25px !important; color: #b8bfd0; font-size: 11px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.mn-legal-eyebrow span { width: 26px; height: 1px; background: var(--legal-mint); box-shadow: 0 0 10px var(--legal-mint); }
.mn-legal-hero h1 { max-width: 750px; font: 700 clamp(55px, 7vw, 88px)/.96 'Manrope', sans-serif; letter-spacing: -.065em; }
.mn-legal-hero h1 em { color: var(--legal-violet); font-style: normal; }
.mn-legal-lead { max-width: 690px; margin-top: 28px !important; color: #a8b0c2; font-size: 18px; line-height: 1.7; }
.mn-legal-date { margin-top: 26px !important; color: #687187; font-size: 12px; }

.mn-legal-content { padding: 96px 0 110px; color: #151a29; background: var(--legal-paper); }
.mn-legal-grid { display: grid; grid-template-columns: 300px minmax(0, 1fr); align-items: start; gap: 70px; }
.mn-legal-grid > aside { position: sticky; top: 28px; }
.mn-legal-kicker { display: block; margin-bottom: 17px; color: #6a55df; font-size: 11px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.mn-legal-grid aside h2 { font: 700 35px/1.13 'Manrope', sans-serif; letter-spacing: -.04em; }
.mn-legal-grid aside p { margin-top: 20px; color: #72798a; font-size: 14px; line-height: 1.75; }
.mn-legal-card { padding: 9px 42px; border: 1px solid #e5e2da; border-radius: 22px; background: #fff; box-shadow: 0 24px 70px rgba(37,33,65,.08); }
.mn-legal-card section { display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 19px; padding: 34px 0; border-bottom: 1px solid #ece9e3; }
.mn-legal-card section:last-child { border-bottom: 0; }
.mn-legal-number { width: 35px; height: 35px; display: grid; place-items: center; border-radius: 10px; color: #6b56dd; background: #f0edff; font: 800 10px 'Manrope', sans-serif; }
.mn-legal-card h3 { margin: 3px 0 12px; font: 700 19px/1.3 'Manrope', sans-serif; letter-spacing: -.02em; }
.mn-legal-card p { color: #646c7c; font-size: 14px; line-height: 1.75; }
.mn-legal-card p + p { margin-top: 12px; }
.mn-legal-card ul { margin: 4px 0 0; padding: 0; display: grid; gap: 11px; list-style: none; }
.mn-legal-card li { position: relative; padding-left: 25px; color: #646c7c; font-size: 14px; line-height: 1.65; }
.mn-legal-card li::before { content: '✓'; position: absolute; left: 0; top: 0; color: #159678; font-weight: 800; }
.mn-legal-card a { color: #604bd3; font-weight: 700; }
.mn-legal-card a:hover { text-decoration: underline; }

.mn-legal-footer { padding: 38px 0; border-top: 1px solid rgba(255,255,255,.08); background: #080b14; }
.mn-legal-footer .mn-legal-container { display: flex; align-items: center; justify-content: space-between; gap: 25px; }
.mn-legal-footer p, .mn-legal-footer nav { color: #737c90; font-size: 11px; }
.mn-legal-footer nav { display: flex; gap: 20px; }
.mn-legal-footer nav a:hover { color: var(--legal-mint); }

@media (max-width: 820px) {
    .mn-legal-nav { height: auto; min-height: 76px; padding: 15px 24px; flex-wrap: wrap; }
    .mn-legal-nav__links { order: 3; width: 100%; justify-content: center; }
    .mn-legal-nav__links a { padding: 10px 0 12px; }
    .mn-legal-back { margin-left: auto; }
    .mn-legal-hero { padding-top: 85px; }
    .mn-legal-grid { grid-template-columns: 1fr; gap: 40px; }
    .mn-legal-grid > aside { position: static; max-width: 600px; }
}

@media (max-width: 600px) {
    .mn-legal-container { width: min(100% - 30px, 1100px); }
    .mn-legal-nav { padding: 14px 15px; gap: 10px; }
    .mn-legal-brand { font-size: 17px; }
    .mn-legal-brand img { width: 37px; height: 30px; }
    .mn-legal-back { min-height: 38px; padding: 0 11px; font-size: 10px; }
    .mn-legal-nav__links { gap: 16px; overflow-x: auto; justify-content: flex-start; }
    .mn-legal-nav__links a { white-space: nowrap; font-size: 11px; }
    .mn-legal-hero { padding: 72px 0 68px; }
    .mn-legal-hero h1 { font-size: clamp(49px, 15vw, 67px); }
    .mn-legal-lead { font-size: 16px; }
    .mn-legal-content { padding: 70px 0 80px; }
    .mn-legal-grid aside h2 { font-size: 31px; }
    .mn-legal-card { padding: 4px 22px; border-radius: 17px; }
    .mn-legal-card section { grid-template-columns: 1fr; gap: 13px; padding: 28px 0; }
    .mn-legal-footer .mn-legal-container { align-items: flex-start; flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
    .mn-legal *, .mn-legal *::before, .mn-legal *::after { transition-duration: .01ms !important; }
}
