:root{
  --navy:#0E2A47; --navy-deep:#081B30; --ice:#F3F8FB; --glacier:#BFDDEB;
  --red:#C8202F; --boards:#5B6B78; --white:#fff;
  --display:"Saira Condensed","Arial Narrow",Arial,sans-serif;
  --body:"Source Sans 3","Segoe UI",Helvetica,Arial,sans-serif;
  --wrap:1180px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{margin:0;font-family:var(--body);font-size:1.0625rem;line-height:1.6;color:var(--navy);background:var(--ice)}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
a:focus-visible,button:focus-visible{outline:3px solid var(--red);outline-offset:3px}
h1,h2,h3{font-family:var(--display);line-height:1;margin:0 0 .5em;letter-spacing:.01em}
h2{font-size:clamp(2.2rem,5vw,3.4rem);font-weight:800}
h3{font-size:1.6rem;font-weight:700}
p{margin:0 0 1em;max-width:68ch}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}
.btn{display:inline-block;font-family:var(--display);font-weight:700;font-size:1.15rem;letter-spacing:.03em;
  padding:.6em 1.3em;background:var(--red);color:var(--white);text-decoration:none;border-radius:3px}
.btn:hover{background:#A51824}
.btn.ghost{background:transparent;border:2px solid currentColor}
.btn.ghost:hover{background:rgba(255,255,255,.12)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:var(--navy-deep);color:var(--white)}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;min-height:72px;gap:16px}
.logo{font-family:var(--display);font-weight:800;font-size:1.6rem;line-height:.9;text-decoration:none}
.logo span{display:block;font-size:.95rem;font-weight:500;color:var(--glacier);letter-spacing:.08em}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:4px}
.nav a{display:block;padding:10px 12px;font-family:var(--display);font-weight:500;font-size:1.1rem;text-decoration:none}
.nav a:hover{color:var(--glacier)}
.nav-toggle{display:none;background:none;border:2px solid var(--glacier);color:var(--white);
  font-family:var(--display);font-size:1.1rem;padding:6px 14px;border-radius:3px;cursor:pointer}
@media (max-width:900px){
  .nav-toggle{display:block}
  .nav{position:absolute;left:0;right:0;top:72px;background:var(--navy-deep);display:none;border-top:1px solid var(--navy)}
  .nav.open{display:block}
  .nav ul{flex-direction:column;padding:8px 24px 20px}
  .nav a{padding:12px 0;border-bottom:1px solid var(--navy)}
}

/* Hero */
.hero{position:relative;color:var(--white);background:var(--navy) center/cover no-repeat;
  background-image:linear-gradient(180deg,rgba(8,27,48,.35),rgba(8,27,48,.85)),
  url("https://static.wixstatic.com/media/dba733_0b0fb6ec5f5146aca2712d03981d663e~mv2.jpg/v1/fill/w_1800,h_940,al_c,q_80,enc_avif,quality_auto/dba733_0b0fb6ec5f5146aca2712d03981d663e~mv2.jpg")}
.hero .wrap{min-height:min(82vh,720px);display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:64px}
.hero h1{font-size:clamp(3.4rem,11vw,8.5rem);font-weight:800;line-height:.85;margin-bottom:.25em}
.hero h1::after{content:"";display:block;width:min(420px,70%);height:10px;background:var(--red);margin-top:.18em}
.hero p{font-size:1.25rem;max-width:44ch;margin-bottom:1.5em}
.hero .actions{display:flex;flex-wrap:wrap;gap:12px}

/* Sections */
section{padding:80px 0}
.dark{background:var(--navy);color:var(--white)}
.dark p{color:#DCE8F0}

/* Poster row */
.posters{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.posters a{display:block;border-radius:4px;overflow:hidden;background:var(--navy-deep)}
.posters img{width:100%;aspect-ratio:4/5;object-fit:cover}
@media (max-width:900px){.posters{grid-template-columns:repeat(2,1fr)}}

/* Split feature */
.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.split.flip .split-media{order:2}
.split-media img{width:100%;border-radius:4px;aspect-ratio:4/3;object-fit:cover}
.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0 28px;padding:0;list-style:none}
.facts li{border-left:4px solid var(--red);padding-left:12px;font-size:.95rem}
.facts strong{display:block;font-family:var(--display);font-size:1.5rem;line-height:1.1}
@media (max-width:860px){.split{grid-template-columns:1fr;gap:32px}.split.flip .split-media{order:0}.facts{grid-template-columns:1fr}}

/* Programs */
.programs{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--glacier);border:2px solid var(--glacier);margin-top:32px}
.program{background:var(--white);padding:28px}
.program p{font-size:.98rem}
.program .links{display:flex;flex-wrap:wrap;gap:8px 18px;font-weight:600}
.program .links a{color:var(--red)}
@media (max-width:900px){.programs{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.programs{grid-template-columns:1fr}}

/* Rates */
.rates{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.rate-table{width:100%;border-collapse:collapse;font-size:1.05rem}
.rate-table th,.rate-table td{text-align:left;padding:12px 0;border-bottom:1px solid rgba(191,221,235,.3)}
.rate-table td{text-align:right;font-family:var(--display);font-size:1.3rem;font-weight:700}
.note{background:var(--red);color:var(--white);padding:10px 14px;border-radius:3px;font-weight:600;display:inline-block}
@media (max-width:860px){.rates{grid-template-columns:1fr}}

/* Events cards */
.events{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.event img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:4px;margin-bottom:16px}
.event ul{columns:2;padding-left:1.1em;margin:0 0 1em}
@media (max-width:860px){.events{grid-template-columns:1fr}}

/* Pro shop */
.shop{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:24px;border-top:2px solid var(--navy)}
.shop div{padding:20px 16px 20px 0;border-bottom:1px solid var(--glacier)}
.shop strong{display:block;font-family:var(--display);font-size:2rem;color:var(--red);line-height:1}
@media (max-width:860px){.shop{grid-template-columns:1fr 1fr}}

/* Footer */
.site-footer{background:var(--navy-deep);color:var(--white);padding:72px 0 32px}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:48px}
.site-footer h3{color:var(--glacier)}
.site-footer p,.site-footer li{color:#DCE8F0;font-size:.98rem}
.site-footer ul{list-style:none;padding:0;margin:0}
.site-footer li{padding:4px 0}
.fine{border-top:1px solid var(--navy);margin-top:48px;padding-top:24px;font-size:.85rem;color:var(--glacier)}
.fine p{max-width:none}
@media (max-width:860px){.footer-grid{grid-template-columns:1fr}}

/* Utilities */
.mt-1{margin-top:1em}
.mt-15{margin-top:1.5em}
.rate-box{padding:28px;border-radius:4px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
