:root { --ink:#172947; --muted:#64748b; --line:#dfe4ea; --paper:#fff; --cream:#faf8f3; --gold:#c9a85d; }
* { box-sizing:border-box; }
body { margin:0; color:var(--ink); background:var(--cream); font-family:"DM Sans",Arial,sans-serif; line-height:1.65; }
a { color:#244a76; }
.notice { background:#fff2cf; border-bottom:1px solid #e6c976; padding:10px 20px; text-align:center; color:#654f1e; font-size:14px; }
.notice strong { margin-right:10px; letter-spacing:.08em; }
.legal-header { background:var(--ink); color:white; padding:22px clamp(20px,6vw,70px); display:flex; justify-content:space-between; align-items:center; gap:20px; }
.brand { color:white; text-decoration:none; font-family:"Playfair Display",serif; font-size:25px; font-weight:700; }
.brand span { color:var(--gold); }
.legal-header nav { display:flex; gap:18px; }
.legal-header nav a { color:#e9eef7; text-decoration:none; }
.legal-shell { width:min(880px,calc(100% - 32px)); margin:34px auto 60px; background:var(--paper); border:1px solid var(--line); border-radius:10px; padding:clamp(24px,6vw,64px); box-shadow:0 20px 60px rgba(23,41,71,.08); }
.eyebrow { color:#9a762f; font-size:12px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; }
h1,h2 { font-family:"Playfair Display",serif; line-height:1.18; }
h1 { margin:10px 0 8px; font-size:clamp(34px,6vw,54px); }
h2 { margin-top:38px; font-size:25px; }
.meta { color:var(--muted); margin-bottom:28px; }
.callout { border-left:4px solid var(--gold); background:#fffaf0; padding:16px 18px; margin:24px 0; }
li { margin:8px 0; }
.legal-footer { border-top:1px solid var(--line); padding:24px; text-align:center; color:var(--muted); font-size:13px; }
@media(max-width:600px){ .legal-header{align-items:flex-start;flex-direction:column}.legal-shell{margin-top:16px;width:min(100% - 20px,880px);padding:24px 20px}.notice{text-align:left} }
