*{box-sizing:border-box}
:root{--bg:#F7F1E2;--ink:#1B1A2E;--muted:#4C4A5E;--navy:#1A1E4C;--red:#B22234;--line:#D9CBA8;--card:#FFFDF7}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.65 "Libre Franklin","Segoe UI",system-ui,sans-serif}
a{color:var(--red)}
a:focus-visible{outline:3px solid #D9B44A;outline-offset:2px}
.stripes{height:8px;background:repeating-linear-gradient(90deg,#B22234 0 22px,#fff 22px 44px)}
header.site{background:var(--navy);color:#fff}
header.site .in{max-width:900px;margin:0 auto;padding:14px 16px;display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center}
header.site .brand{font-family:"IM Fell English",Georgia,serif;font-size:24px;color:#fff;text-decoration:none;margin-right:auto}
header.site nav a{color:#E6E8F7;text-decoration:none;font-weight:600;font-size:15px}
header.site nav{display:flex;flex-wrap:wrap;gap:6px 18px}
header.site nav a:hover{color:#fff;text-decoration:underline}
main{max-width:760px;margin:0 auto;padding:28px 16px 48px}
h1,h2,h3{font-family:"IM Fell English",Georgia,serif;font-weight:400;line-height:1.2}
h1{font-size:clamp(32px,6vw,46px);margin:.2em 0 .4em}
h2{font-size:28px;margin:1.6em 0 .4em}
h3{font-size:21px;margin:1.3em 0 .3em}
.lede{font-size:19px;color:var(--muted)}
.card{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:18px 20px;margin:22px 0}
.cta{display:inline-block;background:var(--red);color:#fff;text-decoration:none;font-weight:700;padding:12px 20px;border-radius:6px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}
.grid a{display:block;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:14px;text-decoration:none;color:var(--ink)}
.grid a strong{font-family:"IM Fell English",Georgia,serif;font-weight:400;font-size:20px;display:block}
.grid a span{font-size:14px;color:var(--muted)}
ul.facts li{margin:.3em 0}
table{border-collapse:collapse;width:100%;font-size:15px}
td,th{border-bottom:1px solid var(--line);padding:8px 6px;text-align:left;vertical-align:top}
footer.site{background:var(--navy);color:#C9CEF0;font-size:14px}
footer.site .in{max-width:900px;margin:0 auto;padding:22px 16px;display:flex;flex-wrap:wrap;gap:8px 18px}
footer.site a{color:#fff}
footer.site p{flex-basis:100%;margin:6px 0 0}
