:root { --ink:#0a2043; --blue:#1164d8; --pale:#eef6ff; --line:#c9d7e8; --muted:#4b607b; }
* { box-sizing:border-box; }
body { margin:0; color:var(--ink); background:#f8fbff; font-family:Manrope,Arial,sans-serif; line-height:1.65; }
a { color:#075bc8; }
.legal-header { background:#fff; border-bottom:1px solid var(--line); padding:20px clamp(22px,5vw,80px); display:flex; justify-content:space-between; align-items:center; gap:16px; }
.legal-brand { color:var(--ink); text-decoration:none; font-size:1.4rem; font-weight:800; letter-spacing:-.06em; }
.legal-brand i { color:var(--blue); font-style:normal; }
.legal-header a:last-child { font-size:.94rem; font-weight:700; }
.legal-wrap { width:min(900px,calc(100% - 40px)); margin:0 auto; padding:60px 0 75px; }
.legal-kicker { font-family:"DM Mono",monospace; font-size:.76rem; letter-spacing:.09em; color:var(--blue); text-transform:uppercase; }
h1 { font-size:clamp(2.3rem,5vw,4.2rem); letter-spacing:-.065em; line-height:1; margin:10px 0 18px; }
h2 { margin:38px 0 10px; font-size:1.35rem; letter-spacing:-.03em; }
h3 { margin:24px 0 6px; font-size:1.05rem; }
p, li { font-size:1rem; }
.updated, .lead { color:var(--muted); max-width:760px; }
.notice { margin:28px 0; padding:17px 20px; border-left:5px solid var(--blue); background:#e8f3ff; border-radius:4px; }
.card { background:#fff; border:1px solid var(--line); border-radius:12px; padding:20px 24px; margin:22px 0; }
.card p:last-child, .notice p:last-child { margin-bottom:0; }
ol, ul { padding-left:1.35rem; }
.legal-footer { background:var(--ink); color:#fff; padding:28px clamp(22px,5vw,80px); display:flex; justify-content:space-between; gap:14px; flex-wrap:wrap; font-size:.88rem; }
.legal-footer a { color:#fff; margin-right:18px; }
@media(max-width:560px) { .legal-wrap { padding-top:42px; } .legal-header { align-items:flex-start; flex-direction:column; } }
