:root { --bg:#111; --card:#1a1a1a; --text:#f5f5f5; --muted:#c9c9c9; --accent:#21c66b; --line:#343434; }
* { box-sizing: border-box; }
body { margin:0; background:var(--bg); color:var(--text); font-family:Montserrat,Arial,sans-serif; line-height:1.65; }
a { color:#7ae3a8; }
.legal-header { border-bottom:1px solid var(--line); background:#fff; }
.legal-header-inner,.legal-main,.legal-footer-inner { width:min(920px,calc(100% - 32px)); margin:auto; }
.legal-header-inner { min-height:82px; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.legal-logo { width:180px; max-height:58px; object-fit:contain; }
.back-link { color:#111; font-weight:700; text-decoration:none; }
.legal-main { padding:54px 0 70px; }
.legal-main h1 { font-size:clamp(2rem,5vw,3rem); line-height:1.15; margin:0 0 12px; }
.legal-main h2 { margin:34px 0 8px; font-size:1.3rem; }
.legal-main p,.legal-main li { color:var(--muted); }
.legal-main strong { color:var(--text); }
.notice { margin:24px 0; padding:18px 20px; border-left:4px solid var(--accent); background:var(--card); }
.legal-main address { font-style:normal; color:var(--muted); }
.legal-footer { border-top:1px solid var(--line); padding:28px 0; }
.legal-footer-inner { display:flex; flex-wrap:wrap; gap:12px 22px; }
.legal-footer a { font-size:.9rem; }
@media(max-width:600px){.legal-header-inner{min-height:70px}.legal-logo{width:130px}.legal-main{padding-top:38px}}
