:root { --legal-ink:#18211e; --legal-muted:#5f6e68; --legal-line:#dce6e1; --legal-coral:#ff5a3d; --legal-green:#0f766e; }
.legal-page { background:#f5f8f6; color:var(--legal-ink); }
.legal-page a { color:var(--legal-green); text-decoration-thickness:1px; text-underline-offset:3px; }
.legal-header { position:sticky; top:0; z-index:20; border-bottom:1px solid rgba(220,230,225,.9); background:rgba(255,255,255,.95); backdrop-filter:blur(14px); }
.legal-header-inner { min-height:74px; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.legal-header nav { display:flex; align-items:center; gap:22px; font-size:14px; font-weight:800; }
.legal-header .button { color:#18211e; }
.legal-hero { position:relative; overflow:hidden; padding:74px 0 60px; background:linear-gradient(135deg,#112520 0%,#0f766e 65%,#1e9187 100%); color:#fff; }
.legal-hero::after { content:""; position:absolute; width:360px; height:360px; right:-100px; top:-180px; border-radius:50%; background:rgba(255,90,61,.8); filter:blur(2px); }
.legal-hero .legal-narrow { position:relative; z-index:1; }
.legal-hero .eyebrow { color:#ffd5cc; }
.legal-hero h1 { max-width:900px; margin:14px 0 10px; font-size:clamp(38px,6vw,68px); line-height:1; letter-spacing:-.045em; }
.legal-hero p { margin:0; color:#d9eeea; }
.legal-grid { display:grid; grid-template-columns:250px minmax(0,790px); justify-content:center; gap:58px; padding-top:58px; padding-bottom:90px; }
.legal-index { position:sticky; top:104px; align-self:start; display:grid; gap:4px; padding:18px; border:1px solid var(--legal-line); border-radius:16px; background:#fff; box-shadow:0 14px 35px rgba(15,50,43,.06); }
.legal-index strong { padding:8px 10px 12px; font-size:13px; text-transform:uppercase; letter-spacing:.08em; color:var(--legal-muted); }
.legal-index a { padding:10px; border-radius:9px; color:var(--legal-ink); font-size:14px; font-weight:750; text-decoration:none; }
.legal-index a:hover { background:#edf7f4; color:var(--legal-green); }
.legal-content { min-width:0; font-size:16px; line-height:1.75; }
.legal-content .legal-lead { margin:0 0 42px; padding-bottom:32px; border-bottom:1px solid var(--legal-line); color:#30403a; font-size:21px; line-height:1.55; }
.legal-content h2 { margin:52px 0 16px; font-size:26px; letter-spacing:-.025em; }
.legal-content h3 { margin:28px 0 10px; font-size:18px; }
.legal-content p { margin:0 0 18px; color:var(--legal-muted); }
.legal-content ul,.legal-content ol { margin:0 0 22px; padding-left:24px; color:var(--legal-muted); }
.legal-content li { margin-bottom:9px; padding-left:5px; }
.legal-content strong { color:var(--legal-ink); }
.legal-callout { margin:28px 0 38px; padding:24px 26px; border:1px solid #f5b5a7; border-left:6px solid var(--legal-coral); border-radius:12px; background:#fff4f1; }
.legal-callout > strong { display:block; margin-bottom:5px; font-size:18px; }
.legal-callout p { margin:0; color:#71473e; }
.legal-facts { padding:0 !important; list-style:none; border:1px solid var(--legal-line); border-radius:14px; overflow:hidden; background:#fff; }
.legal-facts li { display:grid; grid-template-columns:190px 1fr; gap:18px; margin:0; padding:15px 18px; border-bottom:1px solid var(--legal-line); }
.legal-facts li:last-child { border:0; }
.legal-table-wrap { max-width:100%; overflow:auto; margin:22px 0 30px; border:1px solid var(--legal-line); border-radius:14px; background:#fff; }
.legal-content table { width:100%; min-width:620px; border-collapse:collapse; }
.legal-content th,.legal-content td { padding:15px 17px; border-bottom:1px solid var(--legal-line); text-align:left; vertical-align:top; color:var(--legal-muted); }
.legal-content th { background:#edf7f4; color:var(--legal-ink); font-size:13px; text-transform:uppercase; letter-spacing:.06em; }
.legal-content tr:last-child td { border-bottom:0; }
.legal-content code { padding:3px 7px; border-radius:6px; background:#e8f2ef; color:#075e57; }
.legal-footer { border-top:1px solid var(--legal-line); background:#10211e; color:#dcebe7; }
.legal-footer-inner { min-height:150px; display:flex; justify-content:space-between; gap:36px; align-items:center; }
.legal-footer-inner > div { display:grid; gap:7px; }
.legal-footer-inner > div:last-child { text-align:right; }
.legal-footer span { color:#9ebbb4; }
.legal-footer a { color:#fff; font-weight:800; }
@media (max-width:850px) {
    .legal-header-inner { min-height:66px; }
    .legal-header nav a:not(.button) { display:none; }
    .legal-grid { grid-template-columns:1fr; gap:28px; padding-top:30px; }
    .legal-index { position:static; grid-template-columns:repeat(2,minmax(0,1fr)); }
    .legal-index strong { grid-column:1/-1; }
    .legal-hero { padding:52px 0 44px; }
    .legal-content h2 { margin-top:42px; }
    .legal-facts li { grid-template-columns:1fr; gap:3px; }
    .legal-footer-inner { align-items:flex-start; flex-direction:column; padding-top:34px; padding-bottom:34px; }
    .legal-footer-inner > div:last-child { text-align:left; }
}
@media (max-width:520px) {
    .legal-index { grid-template-columns:1fr; }
    .legal-index strong { grid-column:auto; }
    .legal-content { font-size:15px; }
    .legal-content .legal-lead { font-size:18px; }
}
