:root{
  --bg:#f0f1f3; --card:#ffffff; --border:#e2e5ea;
  --text:#0e1216; --muted:#5b6472;
  --accent:#1f4af4; --deep:#05060f;
  --mono:'IBM Plex Mono',ui-monospace,'SF Mono',Menlo,monospace;
  --sans:'Geist','IBM Plex Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
*{box-sizing:border-box; margin:0; padding:0;}
body{background:var(--bg); color:var(--text); font-family:var(--sans); font-size:16px; line-height:1.65; -webkit-font-smoothing:antialiased;}
a{color:var(--accent); text-decoration:none;}
a:hover{text-decoration:underline;}
.wrap{max-width:760px; margin:0 auto; padding:0 24px;}

.legal-head{background:var(--deep); color:#fff; padding:28px 0 64px;}
.legal-head .wrap{display:block;}
.legal-head .back{font-family:var(--mono); font-size:.8rem; letter-spacing:.06em; text-transform:uppercase; color:rgba(255,255,255,.6);}
.legal-head .back:hover{color:#fff; text-decoration:none;}
.legal-head h1{font-size:clamp(2rem,5vw,2.9rem); line-height:1.1; letter-spacing:-.02em; margin-top:34px;}
.legal-head .updated{font-family:var(--mono); font-size:.8rem; color:rgba(255,255,255,.55); margin-top:14px;}

main{background:var(--card); margin:-36px auto 0; max-width:812px; border:1px solid var(--border); border-radius:18px; padding:48px 0;}
main h2{font-size:1.18rem; letter-spacing:-.01em; margin:38px 0 12px;}
main h2:first-of-type{margin-top:0;}
main p{color:var(--muted); margin-bottom:14px;}
main ul{color:var(--muted); margin:0 0 14px 20px;}
main li{margin-bottom:7px;}
main strong{color:var(--text); font-weight:600;}

footer{padding:40px 0 56px; text-align:center; font-family:var(--mono); font-size:.78rem; color:var(--muted);}
footer a{color:var(--muted);}
@media (max-width:820px){ main{margin:-36px 16px 0; border-radius:14px; padding:36px 0;} }
