:root{--ivory:#fbf6ec;--cream:#f3ead8;--burgundy:#6b1f2e;--burgundy-dk:#4d1421;--gold:#e0c27a;--gold-dk:#7d5a14;--ink:#2b2123;--muted:#5e5154;--serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,"Times New Roman",serif;--sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:4.5rem}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--ivory);color:var(--ink);font:1.0625rem/1.65 var(--sans);-webkit-text-size-adjust:100%}
.wrap{max-width:68rem;margin:0 auto;padding:0 1rem}
.narrow{max-width:44rem}
h1,h2,h3,.brand,.foot-brand{font-family:var(--serif);font-weight:600;line-height:1.2;color:var(--burgundy)}
h1{font-size:clamp(2.1rem,7vw,3.6rem);margin:.4rem 0 1rem}
h2{font-size:clamp(1.7rem,5vw,2.3rem);margin:0 0 1rem}
h3{font-size:1.3rem;margin:0 0 .5rem}
a{color:var(--burgundy)}
a:focus-visible,.btn:focus-visible{outline:3px solid var(--gold-dk);outline-offset:3px}
.hero a:focus-visible{outline-color:var(--gold)}
.skip{position:absolute;left:-999px;top:0;background:var(--burgundy);color:#fff;padding:.6rem 1rem;z-index:10}
.skip:focus{left:0}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.site-header{position:sticky;top:0;z-index:5;background:rgba(251,246,236,.96);border-bottom:1px solid #e6d9bd}
.bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.25rem 1rem;padding-top:.6rem;padding-bottom:.6rem}
.brand{font-size:1.3rem;text-decoration:none}
nav ul{display:flex;flex-wrap:wrap;gap:.25rem 1.1rem;list-style:none;margin:0;padding:0}
nav a{display:inline-block;padding:.35rem 0;color:var(--ink);text-decoration:none;font-weight:500}
nav a:hover{color:var(--burgundy);text-decoration:underline;text-decoration-color:var(--gold-dk);text-underline-offset:.3em}
.hero{background:linear-gradient(160deg,var(--burgundy-dk),var(--burgundy));color:#fbf6ec;padding:4rem 0 4.5rem}
.hero h1{color:#fff}
.eyebrow{margin:0;text-transform:uppercase;letter-spacing:.14em;font-size:.82rem;font-weight:600;color:var(--gold)}
.eyebrow.gold{color:var(--gold-dk)}
.lead{font-size:1.2rem;max-width:40rem}
.actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.8rem}
.btn{display:inline-block;padding:.8rem 1.4rem;border-radius:999px;font-weight:600;text-decoration:none;border:2px solid transparent;min-height:44px}
.btn-primary{background:var(--burgundy);color:#fff}
.btn-primary:hover{background:var(--burgundy-dk)}
.hero .btn-primary{background:var(--gold);color:var(--burgundy-dk)}
.hero .btn-primary:hover{background:#ecd392}
.btn-ghost{border-color:var(--gold);color:#fff}
.btn-ghost:hover{background:rgba(255,255,255,.1)}
.btn-gold{background:var(--burgundy);color:#fff}
.btn-gold:hover{background:var(--burgundy-dk)}
.sr{clip-path:inset(50%)}
.section{padding:3.5rem 0}
.alt{background:var(--cream)}
.cards{list-style:none;margin:1.5rem 0 0;padding:0;display:grid;gap:1rem}
.cards li{background:var(--ivory);border:1px solid #e6d9bd;border-top:4px solid var(--gold);border-radius:.6rem;padding:1.3rem}
.cards p{margin:0;color:var(--muted)}
.event{display:grid;gap:1.2rem;align-items:center;background:var(--cream);border:1px solid #e0cf9f;border-left:6px solid var(--gold-dk);border-radius:.6rem;padding:1.6rem}
.event p{margin:.4rem 0}
.facts{list-style:none;margin:.8rem 0 0;padding:0}
.facts li{margin:.15rem 0}
.event-cta{margin:0}
.social{list-style:none;padding:0;margin:1.5rem 0 0;display:flex;flex-wrap:wrap;gap:.8rem}
.social span{font-weight:400;margin-left:.3rem}
.site-footer{background:var(--burgundy-dk);color:#f1e6d0;padding:2.5rem 0}
.site-footer p{margin:.3rem 0}
.foot-brand{font-size:1.4rem;color:var(--gold)}
.small{font-size:.9rem;color:#d9c9ab}
.nf{min-height:100vh}
@media (min-width:48rem){
 .cards{grid-template-columns:repeat(2,1fr)}
 .event{grid-template-columns:1fr auto;padding:2rem}
 .hero{padding:6rem 0 6.5rem}
 .wrap{padding:0 1.5rem}
}
@media (min-width:64rem){.cards{grid-template-columns:repeat(4,1fr)}}
