
:root{--navy:#15335A;--deep:#0E2742;--red:#EA312F;--orange:#FB9424;--teal:#0BA7BC;--cream:#FBF6EE;--sand:#F4EAD8;--ink:#16304D;}
*{box-sizing:border-box}
body{margin:0;font-family:'Hanken Grotesk',system-ui,-apple-system,sans-serif;color:var(--ink);background:var(--cream);line-height:1.6}
a{color:var(--navy)}
header.site{background:var(--navy);padding:16px 24px}
header.site a{color:#fff;text-decoration:none;font-weight:800;font-size:18px;letter-spacing:.02em}
main{max-width:820px;margin:0 auto;padding:32px 20px 64px}
.breadcrumb{font-size:13px;color:#6b7d92;margin-bottom:18px}
.breadcrumb a{color:var(--teal);text-decoration:none}
h1{font-size:28px;color:var(--navy);margin:0 0 8px;font-weight:800}
h2{font-size:20px;color:var(--navy);margin:36px 0 14px;font-weight:800;border-bottom:2px solid var(--sand);padding-bottom:8px}
p.lead{color:#4a5a70;font-size:15.5px;margin:0 0 28px}
.card{background:#fff;border:1px solid rgba(20,58,94,.1);border-radius:14px;padding:20px 22px;margin-bottom:16px}
.card .meta{font-size:12.5px;font-weight:700;color:var(--orange);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}
.card h3{margin:0 0 8px;font-size:17px;color:var(--navy)}
.card .place{font-size:13.5px;color:#6b7d92;margin-bottom:10px}
.card p{margin:0;font-size:14.5px;color:#33445c}
.card .en{margin-top:10px;padding-top:10px;border-top:1px dashed rgba(20,58,94,.15);color:#5a6b80;font-size:13.5px;font-style:italic}
ul.months{list-style:none;padding:0;display:grid;gap:10px}
ul.months a{display:block;background:#fff;border:1px solid rgba(20,58,94,.1);border-radius:12px;padding:14px 18px;text-decoration:none;color:var(--navy);font-weight:700}
ul.months a:hover{border-color:var(--orange)}
.hub-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:20px}
.hub-grid a{display:block;background:#fff;border:1px solid rgba(20,58,94,.1);border-radius:14px;padding:22px;text-decoration:none;color:var(--navy)}
.hub-grid a strong{display:block;font-size:17px;margin-bottom:6px}
.hub-grid a span{font-size:13.5px;color:#6b7d92}
footer.site{max-width:820px;margin:0 auto;padding:24px 20px 60px;font-size:13px;color:#6b7d92}
footer.site a{color:var(--teal);text-decoration:none}
.empty{color:#6b7d92;font-style:italic}
