:root { --legal-ink:#15263b; --legal-muted:#536a80; --legal-blue:#0b6380; --legal-line:#dce7ef; --legal-bg:#f5f8fb; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--legal-ink); background:var(--legal-bg); font-family:Arial,system-ui,sans-serif; line-height:1.65; }
:where(a,button,input,select,textarea,summary):focus-visible { outline:3px solid #0b8f99; outline-offset:3px; }
.legal-page { width:min(calc(100% - 36px),920px); margin:0 auto; padding:30px 0 54px; }
.legal-header { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:24px; }
.legal-brand { display:flex; align-items:center; gap:11px; color:var(--legal-ink); text-decoration:none; }
.legal-brand img { width:42px; height:42px; border-radius:11px; background:#fff; object-fit:contain; box-shadow:0 5px 18px rgba(16,42,65,.12); }
.legal-brand strong { display:block; font-size:18px; line-height:1.1; }
.legal-brand small { display:block; color:var(--legal-muted); font-size:11px; margin-top:3px; }
.legal-back { color:var(--legal-blue); font-size:13px; font-weight:700; }
.legal-card { background:#fff; border:1px solid var(--legal-line); border-radius:16px; padding:30px 34px; box-shadow:0 14px 35px rgba(16,42,65,.07); }
.legal-eyebrow { margin:0 0 7px; color:var(--legal-blue); font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
h1 { margin:0 0 14px; font-size:clamp(30px,5vw,48px); line-height:1.12; letter-spacing:-.03em; }
h2 { margin:30px 0 8px; font-size:21px; line-height:1.2; }
h3 { margin:22px 0 6px; font-size:16px; }
p { margin:9px 0; }
.lead { color:var(--legal-muted); font-size:17px; }
ul { margin:9px 0; padding-left:22px; }
li { margin:6px 0; }
a { color:var(--legal-blue); }
.legal-note { margin:20px 0; padding:14px 16px; border-left:4px solid #0bb58a; border-radius:10px; color:#214d4a; background:#eaf8f4; font-size:14px; }
.legal-warning { border-left-color:#e08b2e; color:#63441f; background:#fff7e9; }
.legal-meta { color:#6d7e8e; font-size:12px; }
.legal-footer { display:flex; flex-wrap:wrap; gap:12px 18px; padding:18px 4px 0; color:#6d7e8e; font-size:12px; }
.legal-footer a { text-decoration:underline; text-underline-offset:3px; }
@media (max-width:620px){.legal-page{width:min(calc(100% - 24px),920px);padding-top:18px}.legal-header{align-items:flex-start;flex-direction:column}.legal-card{padding:23px 19px}h1{font-size:30px}.lead{font-size:16px}}
