/* Legal pages use the same type, colors and navigation as the main website. */
.legal-page main{background:var(--paper)}
.legal-hero{padding-top:66px;padding-bottom:62px;border-bottom:1px solid var(--line)}
.legal-hero .section-meta{margin-bottom:45px}
.legal-hero h1{font-size:clamp(64px,8.2vw,118px);line-height:1.06;letter-spacing:-.055em;hyphens:manual;overflow-wrap:normal}
.legal-intro{margin-top:28px;max-width:650px;font-size:clamp(17px,1.6vw,22px);line-height:1.6}
.legal-date{margin-top:18px;font-size:12px;color:var(--muted)}
.legal-home{display:inline-flex;align-items:center;gap:15px;font-size:12px;text-decoration:none;min-height:44px}
.legal-home:hover{text-decoration:underline}
.legal-layout{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(0,2fr);gap:clamp(40px,8vw,140px);padding-top:65px;padding-bottom:90px;background:var(--paper-light)}
.legal-toc{position:sticky;top:128px;align-self:start;max-height:calc(100dvh - 155px);overflow:auto;padding:4px 6px 8px 0}
.legal-toc .eyebrow{margin-bottom:20px;font-size:10px}
.legal-toc a{display:block;padding:9px 0;font-size:13px;line-height:1.5;text-decoration:none;color:var(--muted)}
.legal-toc a:hover,.legal-toc a:focus-visible{color:var(--accent-ink);text-decoration:underline}
.legal-content{max-width:790px;min-width:0;font-size:16px;line-height:1.8;overflow-wrap:anywhere}
.legal-content h2{font-size:clamp(25px,2.5vw,34px);font-weight:600;letter-spacing:-.035em;line-height:1.25;margin:0 0 24px;hyphens:auto}
.legal-content h3{font-size:19px;line-height:1.4;letter-spacing:-.015em;font-weight:600;margin:30px 0 14px}
.legal-content p+p{margin-top:18px}
.legal-content strong{font-weight:600}
.legal-content address{font-style:normal}
.legal-content a{text-decoration-thickness:1px;text-underline-offset:4px}
.legal-content a:hover{color:var(--accent-ink)}
.legal-block{border-top:1px solid var(--line);padding-top:32px;margin-top:42px}
.legal-content>.legal-block:first-child{border:0;padding-top:0;margin-top:0}
.legal-card{padding:32px;background:var(--ink);color:var(--paper)}
.legal-card .legal-company{font-size:30px;letter-spacing:-.035em;margin:0 0 17px;line-height:1.3}
.legal-card address{font-size:19px;line-height:1.6}
.legal-contact-row{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:24px;font-size:15px}
.legal-rep{border-top:1px solid var(--dark-line);padding-top:20px;margin-top:24px;font-size:13px;line-height:1.7;color:#c4c1b8}
.legal-card a:hover{color:var(--accent)}
.legal-row{display:grid;grid-template-columns:180px minmax(0,1fr);gap:24px;padding:17px 0;border-bottom:1px solid var(--line)}
.legal-row-label,.legal-gisa{font-size:13px;color:var(--muted)}
.legal-list{padding-left:22px;margin:18px 0}
.legal-list li{padding-left:4px;margin:7px 0}
.legal-list li::marker{color:var(--accent-ink)}
.legal-content code{font-family:var(--mono);font-size:.85em;background:#e9e6dc;padding:2px 5px;overflow-wrap:anywhere}
.legal-page .site-footer{border-top:1px solid var(--line)}
.legal-page .footer-meta [aria-current=page]{color:var(--ink);text-decoration:underline}
@media(max-width:1000px){.legal-layout{grid-template-columns:minmax(160px,.65fr) minmax(0,1.6fr);gap:40px}.legal-row{grid-template-columns:135px minmax(0,1fr);gap:20px}}
@media(max-width:760px){
 .legal-hero{padding-top:35px;padding-bottom:38px}.legal-hero .section-meta{margin-bottom:27px;gap:16px}.legal-home{font-size:10px;gap:9px}
 .legal-hero h1{font-size:clamp(44px,10.6vw,76px)}.legal-intro{margin-top:24px;font-size:17px}
 .legal-layout{display:block;padding-top:32px;padding-bottom:55px}
 .legal-toc{position:static;max-height:none;display:grid;grid-template-columns:1fr 1fr;gap:0 20px;padding:0 0 27px;margin-bottom:35px;border-bottom:1px solid var(--line)}
 .legal-toc .eyebrow{grid-column:1/-1;margin-bottom:12px}.legal-toc a{font-size:12px;padding:8px 0}
 .legal-content{font-size:15px;line-height:1.8}.legal-content h2{font-size:27px;margin-bottom:20px}.legal-content h3{font-size:18px}
 .legal-card{padding:24px}.legal-card .legal-company{font-size:28px}.legal-card address{font-size:18px}.legal-contact-row{font-size:14px}.legal-rep{font-size:12px}
 .legal-block{margin-top:32px;padding-top:28px}.legal-row{grid-template-columns:1fr;gap:4px;padding:15px 0}
}
@media print{.legal-toc,.legal-home{display:none}.legal-layout{display:block}.legal-hero{padding:25px 20px}.legal-hero h1{font-size:46px}.legal-card{background:white;color:black;border:1px solid #aaa}.legal-rep{color:black}.legal-block{break-inside:avoid}.consent-banner,.consent-settings{display:none!important}}
