:root { --legal-paper:#f7f4ec; --legal-ink:#152220; --legal-soft:#4a5b57; --legal-line:#dfe7e3; --legal-teal:#0e6b5c; --legal-mint:#e5f3ee; }
.legal-page { background:var(--legal-paper); color:var(--legal-ink); }
.legal-page .legal-shell { width:min(1180px, calc(100% - 48px)); margin:0 auto; }
.legal-page .legal-intro { padding:clamp(58px, 9vw, 112px) 0 clamp(42px, 6vw, 68px); background:linear-gradient(180deg, #f7f4ec 0%, #eaf6f2 100%); }
.legal-page .legal-intro-grid { display:grid; grid-template-columns:minmax(0, 1.35fr) minmax(260px, .65fr); gap:42px; align-items:end; }
.legal-page .legal-intro h1 { max-width:780px; margin:16px 0 0; font:700 clamp(2.8rem, 6vw, 5.35rem)/.96 var(--display, system-ui, sans-serif); letter-spacing:-.065em; }
.legal-page .legal-intro h1 em { font-style:normal; color:var(--legal-teal); }
.legal-page .legal-intro p { max-width:690px; margin:22px 0 0; color:var(--legal-soft); font-size:1.06rem; line-height:1.7; }
.legal-page .legal-version { padding:20px 22px; border:1px solid #b8ddd5; border-radius:18px; background:#fffdf9; box-shadow:0 14px 28px rgba(7,42,38,.07); }
.legal-page .legal-version strong { display:block; color:var(--legal-teal); font:700 .74rem/1 var(--display, system-ui, sans-serif); letter-spacing:.1em; text-transform:uppercase; }
.legal-page .legal-version span { display:block; margin-top:9px; color:var(--legal-ink); font:700 1rem/1.35 var(--display, system-ui, sans-serif); }
.legal-page .legal-body { padding:clamp(46px, 7vw, 82px) 0 clamp(70px, 10vw, 120px); }
.legal-page .legal-layout { display:grid; grid-template-columns:230px minmax(0, 1fr); gap:clamp(28px, 6vw, 76px); align-items:start; }
.legal-page .legal-rail { position:sticky; top:98px; padding:22px; border:1px solid var(--legal-line); border-radius:18px; background:#fffdf9; }
.legal-page .legal-rail strong { display:block; margin-bottom:12px; color:var(--legal-teal); font:700 .72rem/1 var(--display, system-ui, sans-serif); letter-spacing:.11em; text-transform:uppercase; }
.legal-page .legal-rail a { display:block; padding:8px 0; color:var(--legal-soft); font:600 .84rem/1.35 var(--body, system-ui, sans-serif); text-decoration:none; }
.legal-page .legal-rail a:hover { color:var(--legal-teal); }
.legal-page .legal-content { padding:clamp(24px, 4vw, 48px); border:1px solid rgba(14,107,92,.18); border-radius:26px; background:#fffdf9; box-shadow:0 20px 45px rgba(7,42,38,.08); }
.legal-page .legal-content section + section { margin-top:31px; padding-top:31px; border-top:1px solid var(--legal-line); }
.legal-page .legal-content h2 { margin:0 0 12px; font:700 clamp(1.42rem, 2.5vw, 1.9rem)/1.12 var(--display, system-ui, sans-serif); letter-spacing:-.035em; }
.legal-page .legal-content p, .legal-page .legal-content li { color:#36534e; font-size:1rem; line-height:1.72; }
.legal-page .legal-content p { margin:12px 0 0; }
.legal-page .legal-content a { color:var(--legal-teal); font-weight:800; text-underline-offset:3px; }
.legal-page .legal-callout { margin:34px 0 0; padding:22px 24px; border-radius:17px; background:var(--legal-mint); color:#244b45; }
.legal-page .legal-callout strong { display:block; color:var(--legal-teal); font:700 .76rem/1 var(--display, system-ui, sans-serif); letter-spacing:.1em; text-transform:uppercase; }
.legal-page .legal-callout p { margin:9px 0 0; color:#36534e; }
.legal-page .legacy-legal-nav, .legal-page .legacy-legal-footer { display:none; }
.legal-page .legacy-eula-main { width:min(960px, calc(100% - 48px)); margin:0 auto; padding:76px 0 110px; }
.legal-page .legacy-eula-hero { margin:0 0 34px; padding:42px; border:1px solid #b8ddd5; border-radius:26px; background:linear-gradient(135deg, #eaf6f2, #fffdf9); }
.legal-page .legacy-eula-hero h1 { margin:14px 0 0; font:700 clamp(2.6rem, 5vw, 4.6rem)/.98 var(--display, system-ui, sans-serif); letter-spacing:-.06em; }
.legal-page .legacy-eula-hero p { max-width:710px; color:var(--legal-soft); line-height:1.7; }
.legal-page .legacy-eula-card { padding:clamp(24px, 4vw, 48px); border:1px solid rgba(14,107,92,.18); border-radius:26px; background:#fffdf9; box-shadow:0 20px 45px rgba(7,42,38,.08); }
.legal-page .legacy-eula-card h2 { margin:30px 0 12px; padding-top:30px; border-top:1px solid var(--legal-line); font:700 clamp(1.42rem, 2.5vw, 1.9rem)/1.12 var(--display, system-ui, sans-serif); letter-spacing:-.035em; }
.legal-page .legacy-eula-card h2:first-child { margin-top:0; padding-top:0; border:0; }
.legal-page .legacy-eula-card p { color:#36534e; font-size:1rem; line-height:1.72; }
.legal-page .legacy-eula-card a { color:var(--legal-teal); font-weight:800; text-underline-offset:3px; }
@media (max-width:800px) { .legal-page .legal-shell { width:min(100% - 32px, 1180px); }.legal-page .legal-intro-grid, .legal-page .legal-layout { grid-template-columns:1fr; gap:25px; }.legal-page .legal-intro { padding-top:56px; }.legal-page .legal-rail { position:static; display:flex; flex-wrap:wrap; gap:5px 16px; padding:16px 18px; }.legal-page .legal-rail strong { width:100%; }.legal-page .legal-rail a { padding:2px 0; }.legal-page .legal-content { border-radius:20px; } }
