@import url("/css/fonts.css");
:root { --navy:#0E3A4A; --teal:#2F6F7E; --gold:#C98C2E; --cream:#F7F2E9; --ink:#12303B; --serif:"Cormorant Garamond", Georgia, serif; --sans:"Jost", system-ui, sans-serif; --caps:"Cinzel", serif; }
* { box-sizing:border-box; }
body { margin:0; background:var(--cream); color:var(--ink); font:400 1rem/1.65 var(--sans); }
a { color:var(--navy); text-underline-offset:3px; }
.legal-header { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:1.2rem clamp(1rem,5vw,4rem); background:var(--navy); color:var(--cream); }
.legal-brand { display:flex; align-items:center; gap:.6rem; color:inherit; font:600 .9rem var(--caps); letter-spacing:.08em; text-decoration:none; }
.legal-brand img { height:34px; width:auto; }
.legal-header a:not(.legal-brand) { color:var(--cream); font-size:.9rem; }
.legal-main { max-width:900px; margin:0 auto; padding:clamp(3rem,8vw,6rem) clamp(1rem,5vw,3rem); }
.legal-kicker { color:var(--teal); font:.75rem var(--caps); letter-spacing:.2em; text-transform:uppercase; }
h1 { color:var(--navy); font:600 clamp(2.6rem,6vw,4.4rem)/.98 var(--serif); margin:.65rem 0 1.4rem; }
h2 { color:var(--navy); font:600 2rem/1.1 var(--serif); margin:2.5rem 0 .8rem; }
h3 { color:var(--navy); font:600 1.35rem/1.2 var(--serif); margin:1.7rem 0 .5rem; }
p, li { max-width:760px; }
.notice { margin:1.8rem 0 2rem; padding:1rem 1.2rem; border-left:3px solid var(--gold); background:#fff; border-radius:0 12px 12px 0; color:var(--navy); }
ul { padding-left:1.2rem; }
li + li { margin-top:.45rem; }
.legal-footer { padding:2rem clamp(1rem,5vw,4rem); border-top:1px solid #e5dac8; text-align:center; color:var(--teal); font-size:.85rem; }
.legal-footer nav { display:flex; flex-wrap:wrap; justify-content:center; gap:.6rem 1rem; margin-top:.8rem; }
@media (max-width:560px) { .legal-header { align-items:flex-start; flex-direction:column; } }
