/* Public legal/contact pages, responsive and light/dark aware. */
.legal-page{padding-block:clamp(24px,4vw,54px) 72px;max-width:1220px}
.legal-hero{position:relative;isolation:isolate;padding:clamp(24px,4vw,48px);border:1px solid var(--border);border-radius:24px;background:radial-gradient(circle at 8% 8%,color-mix(in srgb,var(--brand) 12%,transparent),transparent 58%),var(--surface);box-shadow:var(--shadow-sm);margin-bottom:28px}
.legal-eyebrow{display:inline-flex;align-items:center;padding:6px 12px;border-radius:50px;color:var(--link);background:var(--brand-soft);font-size:.8rem;font-weight:700;margin-bottom:12px}
.legal-hero h1{font-size:clamp(1.6rem,3.3vw,2.45rem);line-height:1.45;margin:0 0 12px;color:var(--text)}
.legal-hero p{max-width:790px;color:var(--muted-strong,var(--muted));line-height:2.1;margin:0}
.legal-meta{display:flex;gap:18px;flex-wrap:wrap;color:var(--muted);font-size:.78rem;margin-top:18px}.legal-meta a{color:var(--link);font-weight:750}
.legal-layout{display:grid;grid-template-columns:225px minmax(0,1fr);gap:24px;align-items:start}
.legal-toc{position:sticky;top:calc(var(--header-height,70px) + 18px);display:flex;flex-direction:column;gap:4px;border-radius:18px;border:1px solid var(--border);background:var(--surface);padding:20px}
.legal-toc strong{color:var(--text);margin-bottom:8px}.legal-toc a{font-size:.82rem;color:var(--muted-strong,var(--muted));padding:9px 11px;border-radius:9px}.legal-toc a:hover,.legal-toc a:focus-visible{background:var(--brand-soft);color:var(--link)}
.legal-copy{display:grid;gap:18px;min-width:0}.legal-section{padding:clamp(20px,3vw,34px);border-radius:18px;border:1px solid var(--border);background:var(--surface);scroll-margin-top:calc(var(--header-height,70px) + 24px)}
.legal-section h2{font-size:clamp(1rem,1.6vw,1.2rem);line-height:1.7;color:var(--text);margin:0 0 15px}.legal-section p{font-size:.91rem;line-height:2.2;color:var(--muted-strong,var(--text));margin:0 0 12px}.legal-section p:last-child{margin-bottom:0}.legal-section a,.legal-details a{color:var(--link);text-decoration:underline;text-underline-offset:3px}.legal-highlight{border-color:color-mix(in srgb,var(--brand) 40%,var(--border));background:color-mix(in srgb,var(--brand-soft) 30%,var(--surface))}
.legal-section-chip{font-size:.75rem;font-weight:700;color:var(--link);display:inline-block;margin-bottom:8px}
.legal-details{display:grid;grid-template-columns:1fr;gap:0;margin:12px 0}.legal-details>div{display:grid;grid-template-columns:115px minmax(0,1fr);gap:12px;padding:11px 0;border-bottom:1px solid var(--border);font-size:.86rem;line-height:1.9}.legal-details dt{color:var(--muted);font-weight:700}.legal-details dd{margin:0;color:var(--text);overflow-wrap:anywhere}
.legal-end,.contact-assistance{border-radius:18px;padding:24px;border:1px solid var(--border);background:var(--surface-subtle)}.legal-end>strong{color:var(--text)}.legal-end p,.contact-assistance p{line-height:1.9;color:var(--muted-strong,var(--muted));margin:10px 0 18px}
.contact-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.contact-card{position:relative;border:1px solid var(--border);background:var(--surface);border-radius:20px;padding:28px;min-width:0;box-shadow:var(--shadow-sm)}.contact-card-wide{grid-column:1/-1}.contact-emoji{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--brand-soft);color:var(--link);font-size:1.45rem;margin-bottom:14px}.contact-card h2{font-size:1.02rem;color:var(--text);margin:0 0 10px}.contact-card address{font-size:1rem;line-height:2.2;font-style:normal;color:var(--text)}.contact-subline{margin-top:12px;border-top:1px solid var(--border);padding-top:12px;color:var(--muted-strong,var(--muted))}.contact-primary-link{display:inline-block;color:var(--link);font-size:clamp(.92rem,2vw,1.2rem);font-weight:750;overflow-wrap:anywhere}.contact-card p{font-size:.82rem;line-height:2;color:var(--muted);margin:10px 0 0}.contact-assistance{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:22px}.contact-assistance h2{font-size:1.1rem;margin:0;color:var(--text)}.contact-assistance p{margin-bottom:0;max-width:720px}
@media(max-width:900px){.legal-layout{grid-template-columns:1fr}.legal-toc{position:static;display:flex;flex-direction:row;overflow-x:auto;white-space:nowrap;align-items:center}.legal-toc strong{margin:0;flex:none}.legal-toc a{flex:none}}
@media(max-width:600px){.legal-page{padding-block:20px 46px}.legal-hero{padding:22px 18px;border-radius:18px}.legal-section{padding:22px 18px}.legal-details>div{grid-template-columns:1fr;gap:1px}.contact-cards{grid-template-columns:1fr}.contact-card-wide{grid-column:auto}.contact-card{padding:22px}.contact-assistance{display:block}.contact-assistance .button{margin-top:17px}.legal-toc{padding:10px 12px}}
