*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
  --ink:#0B1220;--fog:#93A1BC;--pearl:#E8EEF7;--gold:#E8B23A;
  --lax:#14b8a6;--fb:#8b5cf6;--bb:#f59e0b;--belt:#C1352B;
  --accent:var(--lax);
  --fd:'Bebas Neue','Arial Narrow',sans-serif;--fbody:'Inter',system-ui,sans-serif;
}
body{font-family:var(--fbody);color:var(--pearl);min-height:100vh;
  background:radial-gradient(ellipse at 18% 12%,color-mix(in srgb,var(--accent) 22%,transparent),transparent 58%),
             radial-gradient(ellipse at 82% 88%,rgba(232,178,58,.12),transparent 55%),
             linear-gradient(160deg,#0B1220 0%,#111A2E 60%,#101a2a 140%);
  background-attachment:fixed;-webkit-font-smoothing:antialiased}
body.lax{--accent:var(--lax)} body.fbp{--accent:var(--fb)} body.bbp{--accent:var(--bb)}
.wrap{max-width:900px;margin:0 auto;padding:0 1.25rem}
nav{border-bottom:1px solid rgba(255,255,255,.1);padding:.9rem 0;position:sticky;top:0;
  background:rgba(11,18,32,.88);backdrop-filter:blur(9px);z-index:10}
nav .wrap{display:flex;gap:1.1rem;align-items:center;flex-wrap:wrap}
nav .home{font-family:var(--fd);font-size:1.4rem;letter-spacing:.06em;margin-right:auto;color:var(--pearl);text-decoration:none}
nav .home span{color:var(--accent)}
nav a{color:var(--fog);text-decoration:none;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}
nav a:hover,nav a.on{color:var(--accent)}
header{padding:2.6rem 0 1.4rem}
.eyebrow{font-size:.7rem;letter-spacing:.3em;text-transform:uppercase;color:var(--accent);margin-bottom:.9rem}
h1{font-family:var(--fd);font-size:clamp(3rem,10vw,5.5rem);line-height:.95}
h1 .last{color:var(--accent)}
.teamline{color:var(--fog);font-size:.95rem;margin-top:.7rem;line-height:1.55}
.teamline b{color:var(--pearl)}
.section-title{font-family:var(--fd);font-size:2.1rem;letter-spacing:.04em;margin:2.2rem 0 1rem;
  display:flex;align-items:center;gap:.8rem}
.section-title::before{content:'';width:32px;height:3px;background:var(--accent);border-radius:2px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:1.2rem}
.card .d{font-family:var(--fd);font-size:1.9rem;letter-spacing:.04em;color:var(--gold);line-height:1}
.card .t{font-size:.78rem;color:var(--fog);margin-top:.25rem}
.card .vs{margin-top:.8rem;font-weight:600}
.card .venue{font-size:.8rem;color:var(--fog);margin-top:.3rem;line-height:1.4}
.pill{display:inline-block;font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;
  padding:.16rem .45rem;border-radius:3px;border:1px solid currentColor;margin-bottom:.5rem;color:var(--fog)}
.pill.lacrosse{color:var(--lax)} .pill.football{color:var(--fb)} .pill.baseball{color:var(--bb)}
.pill.game,.pill.tournament{color:var(--gold)}
.sport-card{display:block;text-decoration:none;color:var(--pearl);border-radius:14px;padding:1.6rem 1.4rem;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-top:3px solid var(--c);transition:.15s}
.sport-card:hover{background:rgba(255,255,255,.1);transform:translateY(-2px)}
.sport-card .ic{font-size:1.6rem}
.sport-card .sport{font-family:var(--fd);font-size:2.3rem;letter-spacing:.04em;line-height:1;margin-top:.4rem}
.sport-card .tag{font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--c);margin-top:.5rem}
.sport-card .sb{font-size:.83rem;color:var(--fog);margin-top:.6rem;line-height:1.45}
.table-wrap{overflow-x:auto}
table{width:100%;border-collapse:collapse;margin-top:.6rem;font-size:.9rem}
th{text-align:left;font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--fog);
  padding:.55rem .6rem;border-bottom:1px solid rgba(255,255,255,.16)}
td{padding:.6rem .6rem;border-bottom:1px solid rgba(255,255,255,.07);vertical-align:top}
td.d{white-space:nowrap;font-weight:600}
td.tm,td.lo{color:var(--fog);font-size:.83rem}
tr.past td{opacity:.45}
tr.game td.ev{color:var(--gold);font-weight:600}
.notice{border:1px dashed rgba(255,255,255,.28);border-radius:12px;padding:1rem 1.2rem;
  line-height:1.55;font-size:.88rem;color:var(--fog);margin-top:1rem}
.notice b{color:var(--pearl)}
.warn{border:1px solid rgba(232,178,58,.55);background:rgba(232,178,58,.1);border-radius:12px;
  padding:1rem 1.2rem;font-size:.88rem;line-height:1.55;margin-top:1rem}
.warn b{color:var(--gold)}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.8rem}
.fact{background:rgba(255,255,255,.05);border-radius:10px;padding:.9rem 1rem}
.fact .k{font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--fog)}
.fact .v{margin-top:.3rem;font-weight:600;font-size:.93rem;line-height:1.4}
.belt{display:flex;align-items:center;gap:1rem;text-decoration:none;color:inherit;
  border:1px solid rgba(193,53,43,.45);background:rgba(193,53,43,.1);border-radius:12px;padding:.9rem 1.1rem;transition:.15s}
.belt:hover{border-color:var(--belt);background:rgba(193,53,43,.18)}
.belt .ic{font-size:1.5rem;line-height:1}
.belt .tx{font-weight:600;font-size:.95rem}
.belt .sb{color:var(--fog);font-size:.8rem;margin-top:.15rem}
.belt .go{margin-left:auto;color:var(--belt);font-size:1.2rem}
.note{color:var(--fog);font-size:.8rem;margin-top:.8rem;line-height:1.5}
footer{margin:3rem 0 2.5rem;color:var(--fog);font-size:.78rem;text-align:center}
footer a{color:var(--accent);text-decoration:none}
@media(max-width:640px){td.lo,th.lo{display:none}.section-title{font-size:1.8rem}}
