:root{--navy:#14274a;--navy-deep:#0d1a33;--chalk:#f6f7f3;--line:#d9dccf;--stitch:#b3202a;--ink:#1b2233;--muted:#55607a;
--serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;--sans:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--chalk);color:var(--ink);font-family:var(--sans);line-height:1.55;font-size:17px}
a{color:var(--navy);text-underline-offset:3px}
a:focus-visible,button:focus-visible{outline:3px solid var(--stitch);outline-offset:3px}
.wrap{max-width:960px;margin:0 auto;padding:0 20px}
nav.top{background:var(--navy-deep);color:var(--chalk)}
nav.top .wrap{display:flex;flex-wrap:wrap;gap:6px 22px;align-items:center;padding-top:12px;padding-bottom:12px}
nav.top .brand{font-family:var(--serif);font-weight:700;margin-right:auto;color:var(--chalk);text-decoration:none}
nav.top a.l{color:#dfe5f2;text-decoration:none;padding:4px 0;border-bottom:2px solid transparent}
nav.top a.l[aria-current="page"],nav.top a.l:hover{border-bottom-color:var(--stitch);color:#fff}
header.hero{background:var(--navy);color:var(--chalk);padding:48px 0 40px}
header.hero.small{padding:34px 0 28px}
.hero h1{font-family:var(--serif);font-weight:700;font-size:clamp(2rem,6vw,3.5rem);line-height:1.05;margin:0 0 14px;max-width:16em}
.hero p.lede{font-size:1.1rem;max-width:36em;margin:0 0 26px;color:#dfe5f2}
.hero.small p.lede{margin:0}
.board{background:var(--navy-deep);border:2px solid #2b406b;border-radius:6px;padding:16px 16px 12px}
.board-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.board-top .raised{font-family:var(--serif);font-size:2rem;font-weight:700}
.board-top .goal{color:#b9c4dd}
.innings{display:grid;grid-template-columns:repeat(9,1fr);gap:6px}
.inning{text-align:center}
.inning .box{position:relative;height:48px;background:#1a2d54;border:1px solid #34497a;overflow:hidden}
.inning .fill{position:absolute;inset:0 auto 0 0;width:0;background:var(--chalk);transition:width 1.1s cubic-bezier(.2,.7,.2,1)}
.inning .num{display:block;margin-top:4px;font-size:.78rem;color:#9fb0d4}
.board-foot{margin:10px 0 0;font-size:.92rem;color:#b9c4dd}
@media(prefers-reduced-motion:reduce){.inning .fill{transition:none}}
@media(max-width:520px){.inning .box{height:36px}.innings{gap:4px}}
main section{padding:40px 0 6px}
h2{font-family:var(--serif);font-size:clamp(1.5rem,4vw,2rem);line-height:1.15;margin:0 0 14px;color:var(--navy)}
h3{font-size:1.05rem;margin:0 0 4px;color:var(--navy)}
p{margin:0 0 14px;max-width:40em}
.muted{color:var(--muted)}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
.card{background:#fff;border:1px solid var(--line);border-radius:6px;padding:16px}
.card p{margin:6px 0 0;font-size:.97rem}
.tag{display:inline-block;font-size:.74rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 8px;border-radius:3px;margin-bottom:8px;background:#e8ebf3;color:var(--navy)}
.tag.live{background:var(--stitch);color:#fff}.tag.done{background:#dfe9dc;color:#245b2a}.tag.upcoming{background:var(--navy);color:#fff}
.meta{font-size:.9rem;color:var(--muted)}
.filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.filters button{font:inherit;padding:6px 14px;border:1px solid var(--navy);background:#fff;color:var(--navy);border-radius:999px;cursor:pointer}
.filters button[aria-pressed="true"]{background:var(--navy);color:#fff}
.cal-head{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.cal-head h3{font-family:var(--serif);font-size:1.4rem;margin:0;min-width:9em;text-align:center}
.cal-head button{font:inherit;border:1px solid var(--navy);background:#fff;color:var(--navy);border-radius:4px;padding:4px 12px;cursor:pointer}
.cal{display:grid;grid-template-columns:repeat(7,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);background:#fff}
.cal .dow{background:var(--navy);color:#fff;text-align:center;font-size:.8rem;padding:4px 0}
.cal .day{min-height:78px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:3px 4px;font-size:.78rem;overflow:hidden}
.cal .day.out{background:#f0f1ec;color:#a0a6b4}
.cal .day .n{font-weight:700;font-size:.82rem}
.cal .ev{display:block;margin-top:3px;padding:1px 4px;border-radius:3px;background:var(--navy);color:#fff;line-height:1.25}
.cal .ev.live{background:var(--stitch)}.cal .ev.done{background:#3d7a45}.cal .ev.ms{background:#7a6a2a}
@media(max-width:600px){.cal .day{min-height:54px;font-size:.66rem}.cal .ev{padding:0 2px}}
table{border-collapse:collapse;width:100%;background:#fff;border:1px solid var(--line)}
th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
th{background:var(--navy);color:#fff;font-size:.9rem}
.players{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:18px}
.player{background:#fff;border:1px solid var(--line);border-radius:6px;overflow:hidden}
.player .ph{aspect-ratio:1/1;background:var(--navy);color:var(--chalk);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:4rem}
.player img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}
.player .body{padding:12px 14px 14px}
.player p{font-size:.95rem;margin:6px 0 0}
.contact{background:var(--navy);color:var(--chalk);padding:36px 0 40px;margin-top:48px}
.contact h2{color:var(--chalk)}.contact p{color:#dfe5f2}.contact a{color:var(--chalk);font-weight:600}
.btn{display:inline-block;background:var(--chalk);color:var(--navy)!important;text-decoration:none;padding:10px 18px;border-radius:4px;font-weight:700;margin:6px 8px 0 0}
footer{padding:20px 0 34px;font-size:.9rem;color:var(--muted)}
.empty{padding:16px;border:1px dashed var(--line);background:#fff;color:var(--muted)}
.card .flyer{display:block;margin:-16px -16px 14px}.card .flyer img{display:block;width:100%;border-radius:6px 6px 0 0}
.cardlink{display:inline-block;margin-top:10px;font-weight:700}
.cards{align-items:start}
nav.top .brand{display:flex;align-items:center;gap:10px}nav.top .brand img{height:34px;width:auto;display:block}
.hero-grid{display:grid;grid-template-columns:1fr minmax(220px,360px);gap:32px;align-items:center}
.hero-grid img{width:100%;height:auto;display:block}
@media(max-width:720px){.hero-grid{grid-template-columns:1fr}.hero-grid img{max-width:300px;margin:0 auto}}
.player .ph img{width:55%;height:auto;aspect-ratio:auto;object-fit:contain}
