/* Shared styles for the legal pages (privacy, terms, DPA). Same palette as the site. */
@font-face{font-family:'Montserrat';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/montserrat-400.woff2) format('woff2')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/montserrat-600.woff2) format('woff2')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/montserrat-700.woff2) format('woff2')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/montserrat-800.woff2) format('woff2')}
:root{
  --gold:#ae853e; --gold-hi:#c99a4a; --gold-dk:#8a6a2f; --gold-soft:#f4ecdc; --gold-line:#e6d7b8;
  --gold-text:#7d5f27; --shell:#242220; --shell-muted:#bfb7a8; --shell-line:#3a3631;
  --ink:#33302b; --muted:#6b655b; --line:#e7e2d8; --paper:#fbf9f5; --card:#fff;
}
*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--paper); color:var(--ink); font-family:Montserrat,system-ui,sans-serif; line-height:1.6; font-size:1rem}
a{color:var(--gold-text); text-underline-offset:3px}
a:focus-visible,button:focus-visible{outline:3px solid var(--gold-dk); outline-offset:2px}
.skip{position:absolute; left:-999px; top:8px; background:#fff; color:var(--ink); padding:8px 12px; border-radius:8px; z-index:9}
.skip:focus{left:8px}
header.top{background:var(--shell); color:#fff; padding:16px 0}
.wrap{max-width:880px; margin:0 auto; padding:0 20px}
.brand{display:flex; align-items:center; gap:10px; text-decoration:none; color:inherit}
.brand .mark{width:38px; height:38px; background:#fff; border-radius:10px; padding:5px; display:flex}
.brand .mark svg{width:100%; height:100%}
.brand b{font-size:1.15rem; font-weight:800; display:block; line-height:1.05}
.brand small{display:block; color:var(--gold-hi); font-size:.6rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase}
.hero{background:var(--shell); color:#fff; padding:30px 0 40px; border-bottom:4px solid var(--gold)}
.eyebrow{color:var(--gold-hi); font-weight:800; letter-spacing:.14em; text-transform:uppercase; font-size:.72rem; margin:0 0 10px}
h1{font-size:clamp(1.8rem,4vw,2.6rem); font-weight:800; line-height:1.12; margin:0 0 12px; letter-spacing:-.01em}
.hero p{color:#e8e2d6; max-width:640px; margin:0; font-size:1.05rem}
.hero .meta{margin-top:18px; color:var(--shell-muted); font-size:.85rem}
main{padding:34px 0 60px}
.summary{background:var(--card); border:1.5px solid var(--gold-line); border-radius:16px; padding:20px 22px; margin:0 0 30px}
.summary h2{margin:0 0 10px; font-size:1.1rem}
.summary ul{margin:0; padding-left:20px}
.summary li{margin:6px 0}
h2{font-size:1.35rem; font-weight:800; margin:34px 0 10px; line-height:1.25}
h3{font-size:1.02rem; font-weight:700; margin:20px 0 6px}
p{margin:0 0 12px}
ul,ol{margin:0 0 14px; padding-left:22px}
li{margin:4px 0}
table{border-collapse:collapse; width:100%; margin:8px 0 18px; font-size:.93rem}
th,td{text-align:left; vertical-align:top; padding:9px 10px; border-bottom:1px solid var(--line)}
th{font-weight:700; color:var(--muted); font-size:.8rem; letter-spacing:.04em; text-transform:uppercase}
.scroll{overflow-x:auto}
.kids{background:var(--gold-soft); border:1.5px dashed var(--gold-line); border-radius:16px; padding:18px 22px; margin:20px 0}
.kids h2{margin-top:0; font-size:1.2rem}
.kids p{font-size:1.05rem}
.note{background:#fff; border-left:4px solid var(--gold); padding:12px 16px; border-radius:0 12px 12px 0; margin:14px 0 18px; font-size:.95rem}
.open{display:inline-block; background:#f1e6cf; color:#5c4519; border-radius:999px; padding:1px 9px; font-size:.75rem; font-weight:700; vertical-align:middle}
.sig{display:grid; grid-template-columns:1fr 1fr; gap:24px; margin:24px 0}
.sig div{border:1.5px solid var(--line); border-radius:12px; padding:16px}
.sig p{margin:0 0 22px; border-bottom:1px solid var(--line); padding-bottom:4px; font-size:.9rem; color:var(--muted)}
.links{display:flex; gap:14px; flex-wrap:wrap; margin:0 0 24px; font-size:.92rem}
footer{background:var(--shell); color:var(--shell-muted); border-top:1px solid var(--shell-line); padding:26px 0; font-size:.85rem}
footer .wrap{display:flex; align-items:center; gap:14px; flex-wrap:wrap}
footer b{color:var(--gold-hi)}
footer a{color:inherit}
footer .sp{margin-left:auto}
footer .legal{flex-basis:100%; font-size:.78rem; opacity:.8}
@media (max-width:620px){.sig{grid-template-columns:1fr}}
@media print{header.top,footer,.skip,.links{display:none} .hero{background:none;color:#000;border:0;padding:0} .hero p{color:#000} body{background:#fff} .open{border:1px solid #000}}
