:root{--black:#050505;--ink:#0d0d0f;--panel:#151518;--line:#2b2b30;--white:#f8f7f5;--muted:#aaa9ad;--red:#e21b2d;--red2:#ff4050;--max:1200px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--white);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}a{color:inherit}img{max-width:100%;display:block}.skip{position:fixed;top:-100px;left:1rem;background:#fff;color:#000;padding:.7rem;z-index:99}.skip:focus{top:1rem}:focus-visible{outline:3px solid #fff;outline-offset:4px}.header{height:84px;display:flex;align-items:center;gap:2rem;padding:0 max(1.25rem,calc((100vw - 1600px)/2));border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(5,5,5,.94);backdrop-filter:blur(14px);z-index:20}.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;font-weight:900;letter-spacing:-.04em;font-size:1.25rem;white-space:nowrap}.brand img{width:46px;height:46px;object-fit:contain;border-radius:50%}.header nav{display:flex;gap:1.15rem;align-items:center;flex:1}.header nav a,.header-actions a{text-decoration:none;font-size:.88rem;font-weight:700;white-space:nowrap}.header nav a:hover,.header-actions a:hover{color:var(--red2)}.header nav .mobile-action{display:none}.header-actions{display:flex;gap:.8rem;align-items:center}.menu{display:none;background:transparent;color:#fff;border:1px solid var(--line);padding:.5rem}.button{display:inline-flex;justify-content:center;align-items:center;background:var(--red);color:#fff!important;border:0;border-radius:999px;padding:.8rem 1.25rem;text-decoration:none;font-weight:800;cursor:pointer}.button:hover{background:var(--red2)}.button.small{padding:.55rem .9rem}.button.ghost{background:transparent;border:1px solid #555}.hero,main>section,.page-hero,.dash-main{max-width:var(--max);margin:auto}.hero{min-height:640px;display:grid;grid-template-columns:1.3fr .7fr;align-items:center;gap:4rem;padding:5rem 1.25rem;background:radial-gradient(circle at 75% 50%,rgba(226,27,45,.22),transparent 36%)}.hero h1,.page-hero h1{font-size:clamp(3rem,8vw,7rem);line-height:.93;letter-spacing:-.075em;margin:.15em 0}.hero img{filter:drop-shadow(0 20px 50px rgba(226,27,45,.25))}.lede{font-size:1.25rem;color:#d2d2d4;max-width:680px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--red2);font-size:.75rem;font-weight:900}.actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2rem}.marquee{overflow:hidden;border-block:1px solid var(--line);padding:1.4rem!important}.marquee-track{display:flex;gap:4rem;min-width:max-content;align-items:center;animation:marquee 25s linear infinite}.marquee-track:hover,.marquee-track:focus-within{animation-play-state:paused}.marquee img{height:60px;width:150px;object-fit:contain;filter:grayscale(1)}@keyframes marquee{to{transform:translateX(-50%)}}main>section{padding:5rem 1.25rem}.player{display:grid;grid-template-columns:320px 1fr;gap:4rem;align-items:center;background:linear-gradient(135deg,#18181c,#0c0c0e);border:1px solid var(--line);border-radius:28px;margin-top:5rem;padding:2.25rem}.art img{aspect-ratio:1;object-fit:cover;border-radius:18px;background:#000}.player h2{font-size:clamp(2rem,5vw,4.5rem);line-height:1;margin:.2em 0}.player-controls{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap}.play{width:64px;height:64px;border-radius:50%;border:0;background:var(--red);color:#fff;font-size:1.4rem;cursor:pointer}.split{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}.split h2,.section-head h2{font-size:clamp(2rem,5vw,4rem);line-height:1.05;letter-spacing:-.05em}.signal{display:flex;align-items:flex-end;height:180px;gap:18px;justify-content:center}.signal i{width:24px;background:var(--red);border-radius:99px;animation:pulse 1.2s ease-in-out infinite alternate}.signal i:nth-child(1),.signal i:nth-child(5){height:30%}.signal i:nth-child(2),.signal i:nth-child(4){height:65%;animation-delay:.2s}.signal i:nth-child(3){height:100%;animation-delay:.4s}@keyframes pulse{to{height:18%}}.section-head{display:flex;justify-content:space-between;align-items:end}.mixcloud{width:100%;height:180px;border:0;background:#111}.app{background:linear-gradient(120deg,var(--red),#70000d);border-radius:28px;margin-block:4rem}.page-hero{padding:5rem 1.25rem 3rem}.page-hero p{max-width:720px}.search{display:block;max-width:480px;margin-top:2rem}.search input{margin-top:.4rem}.cards{max-width:var(--max);margin:auto;padding:0 1.25rem 5rem;display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.card{background:var(--panel);border:1px solid var(--line);border-radius:18px;overflow:hidden}.card>div:last-child{padding:1.4rem}.card-img{aspect-ratio:1.25;background:#09090a;display:grid;place-items:center}.card-img img{width:100%;height:100%;object-fit:cover}.card-img span{font-size:3rem;font-weight:900;color:#333}.card h2{line-height:1.1}.accent{color:var(--red2)}.timeline{max-width:900px;margin:auto;padding:0 1.25rem 5rem}.timeline article{display:grid;grid-template-columns:180px 1fr;gap:2rem;border-top:1px solid var(--line);padding:1.5rem 0}.timeline time{color:var(--red2);font-weight:800}.timeline h2{margin:0}.empty,.muted{color:var(--muted)}.narrow{max-width:760px;margin:4rem auto;padding:1.25rem}.panel{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:1.5rem;margin-bottom:1rem}.stack{display:grid;gap:1rem}label{display:grid;gap:.35rem;font-weight:700}input,textarea,select{width:100%;background:#09090b;border:1px solid #48484f;color:#fff;padding:.8rem;border-radius:8px;font:inherit}.check{display:flex;align-items:center;gap:.6rem}.check input{width:auto}.hp{position:absolute;left:-9999px}.notice{padding:1rem;border-radius:8px;margin:1rem 0}.notice.success{background:#10381e}.notice.error{background:#471119}footer{border-top:1px solid var(--line);padding:4rem max(1.25rem,calc((100vw - var(--max))/2));display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem}footer div{display:grid;align-content:start;gap:.5rem}footer a{text-decoration:none}footer small{grid-column:1/-1;color:var(--muted)}.dash-head{display:flex;align-items:center;gap:2rem;padding:1rem 2rem;border-bottom:1px solid var(--line)}.dash-head nav{display:flex;gap:1rem;flex:1}.dash-head button{background:none;color:#fff;border:1px solid var(--line);padding:.5rem}.dash-main{padding:2rem 1.25rem 5rem}.dash-title{margin-bottom:2rem}.admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.admin-tile{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:1.5rem;text-decoration:none}.admin-tile:hover{border-color:var(--red)}.admin-tile span{font-size:2rem;color:var(--red2)}.nav-row{display:grid;grid-template-columns:1fr 2fr 6rem auto auto;gap:1rem;align-items:end;border-bottom:1px solid var(--line);padding-bottom:1rem}.tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.tabs a{padding:.6rem 1rem;border:1px solid var(--line);border-radius:99px;text-decoration:none}.status{display:grid;grid-template-columns:1fr auto auto;gap:1.5rem;align-items:center;border:1px solid var(--line);border-radius:12px;padding:1rem;margin:.8rem 0}.status.ok{border-left:4px solid #35c66b}.status.bad{border-left:4px solid var(--red)}dl{display:grid;grid-template-columns:170px 1fr;gap:.7rem}dt{font-weight:800}
@media(max-width:1639px){.header nav{display:none;position:absolute;top:84px;left:0;right:0;background:#080808;padding:1rem;flex-direction:column;align-items:flex-start}.header nav.open{display:flex}.header nav .mobile-action{display:block}.menu{display:block}.header-actions{margin-left:auto}.header-actions>a:not(.listen):not(:last-child){display:none}.cards,.admin-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.header{padding-inline:1rem;gap:.7rem}.brand span{display:none}.header-actions{margin-left:auto}.hero{min-height:auto;grid-template-columns:1fr;padding-block:4rem}.hero img{max-width:250px;grid-row:1}.hero h1,.page-hero h1{font-size:3.4rem}.player,.split{grid-template-columns:1fr;gap:2rem}.cards,.admin-grid{grid-template-columns:1fr}.timeline article{grid-template-columns:1fr;gap:.2rem}.nav-row,.status{grid-template-columns:1fr}.status{gap:.35rem}.dash-head{flex-wrap:wrap;padding:1rem}.dash-head nav{order:3;width:100%}footer{grid-template-columns:1fr}.section-head{align-items:start;flex-direction:column}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.marquee-track{animation:none;flex-wrap:wrap;min-width:0}}
.block-editor{display:grid;gap:.65rem;padding:1rem;margin:1rem 0;border:1px solid var(--line);border-radius:12px}.content-block iframe{width:100%;aspect-ratio:16/9;border:0}.content-block figure{margin:0}.content-block img{max-height:580px;object-fit:contain}.content-block .split{gap:1rem}.records{margin-top:2rem}.records .status{grid-template-columns:1fr auto auto auto}fieldset{border:1px solid var(--line);border-radius:12px}legend{font-weight:800}@media(max-width:700px){.records .status{grid-template-columns:1fr auto}}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.gallery-grid figure{margin:0;background:var(--panel);border-radius:14px;overflow:hidden}.gallery-grid img{width:100%;aspect-ratio:4/3;object-fit:cover}.gallery-grid figcaption{padding:.7rem}.gallery .section-head{margin-bottom:1rem}@media(max-width:700px){.gallery-grid{grid-template-columns:1fr 1fr}}
.club-filters{display:grid;grid-template-columns:2fr 1fr 1fr auto;align-items:end;gap:.75rem;margin-top:1.6rem}.club-filters .button{min-height:50px}@media(max-width:800px){.club-filters{grid-template-columns:1fr 1fr}}@media(max-width:550px){.club-filters{grid-template-columns:1fr}}
.content-group{max-width:var(--max);margin:auto;padding:0 1.25rem 3rem}.content-group>h2{font-size:2rem}.content-group .cards{padding:0}.content-group .card h3{font-size:1.4rem;line-height:1.2;margin:.3rem 0}.event-card-image{width:100%;aspect-ratio:16/9;object-fit:cover}
.marquee img{height:105px;width:105px}.marquee-track a{flex:none;display:inline-flex;align-items:center;text-decoration:none;font-weight:800}.marquee-track a:hover{color:var(--red2)}@media(prefers-reduced-motion:reduce){.marquee-copy{display:none!important}}
.schedule-day{max-width:var(--max);margin:auto;padding:0 1.25rem 2.5rem}.schedule-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line);margin-bottom:1rem}.schedule-head h2{font-size:clamp(1.45rem,3vw,2rem);margin:.3rem 0 1rem}.schedule-pill,.schedule-badge{display:inline-flex;align-items:center;border-radius:99px;padding:.25rem .7rem;border:1px solid #65363b;color:#ff7a80;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.schedule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.schedule-slot{display:flex;align-items:center;gap:1rem;padding:1rem 1.2rem;border:1px solid var(--line);border-radius:15px;background:linear-gradient(140deg,#19191d,#111114)}.schedule-slot time{flex:0 0 125px;color:#ff7a80;font-weight:900}.schedule-slot h3{font-size:1.05rem;line-height:1.25;margin:0 0 .45rem}.schedule-badge{font-size:.66rem;padding:.1rem .5rem;color:#ddd;border-color:#444}@media(max-width:750px){.schedule-grid{grid-template-columns:1fr}.schedule-slot time{flex-basis:105px}}
.player{display:block;max-width:900px;margin-inline:auto;text-align:center;padding:2rem 1rem}
.camper-player-frame{display:block;width:100%;max-width:715px;height:1120px;margin-inline:auto;border:0}
.player-fallback{margin:1rem 0 0}.player-fallback a{color:#fff;text-decoration:underline;text-underline-offset:.2em}
@media(max-width:700px){.player{padding:1rem .5rem}}
.broadcast-hub{padding:4rem 1.25rem 5rem}
.broadcast-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;align-items:start}
.broadcast-panel{min-width:0;padding:1.2rem;border:1px solid var(--line);border-radius:26px;background:linear-gradient(145deg,#17171b,#0b0b0e);box-shadow:0 24px 70px #0005;scroll-margin-top:105px}
.broadcast-heading{min-height:150px;padding:.25rem .5rem 1rem}
.broadcast-heading .eyebrow{margin:0 0 .5rem}.broadcast-heading h2{margin:0 0 .4rem;font-size:clamp(1.55rem,3vw,2.5rem);line-height:1.1;letter-spacing:-.04em}.broadcast-heading p:last-child{margin:0;color:var(--muted);font-size:.95rem}
.camper-player-frame,.schedule-widget-frame{display:block;width:100%;max-width:100%;border:0;border-radius:18px;background:#09090c}
.camper-player-frame{height:1120px}.schedule-widget-frame{height:760px}
.broadcast-link{display:inline-block;margin:1rem .5rem .2rem;color:#ff8b96;font-weight:750;text-underline-offset:.2em}
@media(max-width:900px){.broadcast-grid{grid-template-columns:1fr}.broadcast-heading{min-height:0}.broadcast-panel{max-width:715px;width:100%;margin:auto}}
@media(max-width:600px){.broadcast-hub{padding:2.5rem .75rem}.broadcast-panel{padding:.6rem;border-radius:18px}.broadcast-heading{padding:.65rem .45rem 1rem}.camper-player-frame{height:1120px}.schedule-widget-frame{height:800px}}

/* Homepage gallery and live player options. */
.site-header #nav a:hover,.site-header #nav a:focus-visible{color:#ef3748!important;transition:color .18s ease}
.gallery-scroll{display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:1rem;overscroll-behavior-x:contain}.gallery-scroll figure{flex:0 0 clamp(240px,32vw,380px);margin:0;scroll-snap-align:start;background:var(--panel);border-radius:14px;overflow:hidden}.gallery-scroll img{width:100%;aspect-ratio:4/3;object-fit:cover}.gallery-scroll figcaption{padding:.8rem}.live-options{display:grid;gap:.7rem;max-width:320px;margin:1rem auto}.live-options label{display:flex;justify-content:space-between}.live-options input{width:100%;accent-color:#ef3748}.live-options a{text-align:center}#pager-meter{width:100px;accent-color:#ef3748}#pager-voice-preview{width:100%}#pager-voice-preview[hidden]{display:none}
/* Keep the homepage station artwork centered and legible on narrow screens. */
@media(max-width:700px){.hero img{width:min(100%,360px);max-width:none;justify-self:center;margin-inline:auto}}

/* Subtle circular branding shared with the chat welcome, directory and calendar. */
body:not(.dashboard) main :is(.hero, .page-hero) {
  position: relative;
  isolation: isolate;
  overflow: hidden;
}
body:not(.dashboard) main :is(.hero, .page-hero)::before,
body:not(.dashboard) main :is(.hero, .page-hero)::after {
  content: "";
  position: absolute;
  z-index: -1;
  border-radius: 50%;
  pointer-events: none;
}
body:not(.dashboard) main :is(.hero, .page-hero)::before {
  width: 340px;
  height: 340px;
  top: -150px;
  right: -110px;
  border: 60px solid rgba(226, 27, 45, .11);
}
body:not(.dashboard) main :is(.hero, .page-hero)::after {
  width: 220px;
  height: 220px;
  bottom: -135px;
  left: -115px;
  border: 38px solid rgba(226, 27, 45, .065);
}
@media (max-width: 700px) {
  body:not(.dashboard) main :is(.hero, .page-hero)::before {
    width: 250px;
    height: 250px;
    top: -105px;
    right: -125px;
    border-width: 44px;
  }
}

/* Shared public subpage titles, including CMS detail pages and applications. */
body:not(.dashboard) main :is(.page-hero, .application-hero) h1 {
  font-family: inherit;
  font-size: clamp(2.5rem, 5vw, 4.5rem);
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -.05em;
  color: var(--white);
  margin: .25rem 0 1rem;
  text-transform: none;
  overflow-wrap: anywhere;
}
.schedule-page .schedule-intro.page-hero {
  max-width: none;
  margin: 0;
  padding: 0 0 2rem;
}

/* Compact public search panels with clear active-filter actions. */
.public-filters{max-width:100%;margin-top:1.5rem;border:1px solid var(--line);border-radius:16px;background:var(--panel);padding:1rem 1.25rem}
.public-filters summary{cursor:pointer;font-weight:800;color:var(--white)}
.public-filters summary::marker{color:var(--red2)}
.filter-active{display:inline-block;margin-left:.5rem;color:var(--red2);font-size:.75rem;font-weight:700}
.public-filters .club-filters{grid-template-columns:2fr 1fr 1fr;margin-top:1rem}
.filter-actions{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center;grid-column:1/-1}
.public-filters .search{margin-top:1rem}
@media(max-width:800px){.public-filters .club-filters{grid-template-columns:1fr}}
