@font-face{font-family:Gallinari;src:url('assets/font/Gallinari-ExtraboldCond.otf') format('opentype');font-weight:800;font-style:normal;font-display:swap}
:root{--ink:#24241f;--muted:#67645c;--cream:#f4efe5;--paper:#fffdf8;--accent:#ee7bbe;--line:#24241f22}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}
.legal-shell{width:min(1120px,calc(100% - 40px));margin:0 auto;padding:28px 0 72px}
.legal-header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:32px}
.legal-brand{font:800 36px/.9 Gallinari,'Arial Narrow',Arial,sans-serif;text-decoration:none;letter-spacing:-.02em}
.legal-back{font-size:13px;text-decoration:underline;text-underline-offset:3px}
.legal-card{background:var(--paper);border-radius:14px;padding:clamp(24px,5vw,64px);box-shadow:0 12px 30px #24241f0d}
.legal-card h1,.legal-card h2{font-family:Gallinari,'Arial Narrow',Arial,sans-serif;font-weight:800;line-height:1.05;text-transform:uppercase}
.legal-card h1{font-size:clamp(34px,5vw,64px);margin:0 0 8px;max-width:800px}
.legal-card .place{margin:0 0 34px;color:var(--muted)}
.legal-card h2{font-size:clamp(24px,3vw,38px);margin:42px 0 15px;padding-top:22px;border-top:1px solid var(--line)}
.legal-card h3{font-size:18px;line-height:1.3;margin:24px 0 8px}
.legal-card p{margin:0 0 14px}
.legal-card ul{margin:0 0 18px;padding-left:24px}
.legal-card li{padding-left:4px;margin:4px 0}
.legal-table-wrap{overflow-x:auto;margin:12px 0 24px}
.legal-table{width:100%;min-width:600px;border-collapse:collapse;font-size:14px;background:#fff}
.legal-table th,.legal-table td{padding:11px 12px;border:1px solid var(--line);text-align:left;vertical-align:top}
.legal-table th{background:#f8dced;font-weight:700}
.legal-check{font-size:18px;letter-spacing:.08em;margin:18px 0 4px}
.legal-sign{margin-top:8px}
.legal-footer{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:22px;color:var(--muted);font-size:12px}
@media(max-width:620px){
 .legal-shell{width:min(100% - 24px,1120px);padding-top:16px}
 .legal-header{margin-bottom:20px}
 .legal-brand{font-size:30px}
 .legal-back{font-size:12px}
 .legal-card{padding:22px 18px;border-radius:11px}
 .legal-card h2{margin-top:30px;padding-top:16px}
 .legal-table{font-size:13px}
}
