:root { color-scheme: light; --ink:#11182c; --muted:#626b7f; --coral:#ff6b57; --line:#e7e8ed; --paper:#fffaf8; }
* { box-sizing: border-box; }
body { margin:0; background:linear-gradient(145deg,#fff7f3,#f7f9ff); color:var(--ink); font-family:Inter,system-ui,sans-serif; line-height:1.7; }
a { color:#b43c2c; }
.legal-header { position:sticky; top:0; z-index:2; display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:1rem max(1.25rem,calc((100% - 900px)/2)); background:rgba(255,255,255,.86); backdrop-filter:blur(16px); border-bottom:1px solid var(--line); }
.brand { display:flex; align-items:center; gap:.65rem; color:var(--ink); text-decoration:none; font-weight:850; }
.brand img { width:36px; height:36px; }
.home-link { text-decoration:none; font-weight:750; }
main { width:min(900px,calc(100% - 2rem)); margin:3rem auto 5rem; }
.legal-hero { background:linear-gradient(135deg,#172238,#2c3d5e); color:#fff; border-radius:28px; padding:clamp(1.7rem,5vw,3.5rem); box-shadow:0 24px 60px rgba(20,30,50,.18); }
.legal-hero span { color:#ffad9f; font-size:.78rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
h1 { font-size:clamp(2.2rem,6vw,4.5rem); line-height:1.02; margin:.7rem 0 1rem; }
.legal-hero p { color:#dce4f2; max-width:65ch; }
.meta { display:flex; flex-wrap:wrap; gap:.6rem 1.2rem; font-size:.82rem; }
.legal-card { margin-top:1rem; background:#fff; border:1px solid var(--line); border-radius:22px; padding:clamp(1.25rem,4vw,2.2rem); }
.legal-card h2 { margin-top:0; font-size:1.3rem; }
.legal-card h3 { margin-bottom:.25rem; }
.legal-card p:last-child,.legal-card ul:last-child { margin-bottom:0; }
.legal-card li + li { margin-top:.45rem; }
.notice { border-left:4px solid var(--coral); }
.action { display:inline-flex; margin-top:1rem; padding:.8rem 1.1rem; border-radius:12px; background:var(--ink); color:#fff; text-decoration:none; font-weight:800; }
footer { width:min(900px,calc(100% - 2rem)); margin:0 auto; padding:2rem 0; border-top:1px solid var(--line); color:var(--muted); font-size:.85rem; }
@media(max-width:600px){.legal-header{position:static}.legal-hero{border-radius:20px}.meta{display:grid}}
