/* TV35 sports pages — team-color badges (no school logos) and calendar subscribe UI */
.school-badge{
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  min-height:7.5rem; padding:1.25rem 1rem; border-radius:16px; text-align:center;
  text-decoration:none; color:inherit; border:1px solid transparent;
}
.school-badge:hover,.school-badge:focus-visible{ outline:2px solid currentColor; outline-offset:3px; }
.school-badge .mascot{
  font-family:var(--font-display, Archivo, sans-serif);
  font-weight:800; font-stretch:condensed; font-size:clamp(1.4rem, 2.5vw, 2rem);
  line-height:1.05; letter-spacing:.01em; margin:0;
}
.school-badge .school{ margin:.4rem 0 0; font-size:.95rem; font-weight:600; opacity:.95; }
.school-grid{ display:grid; gap:1rem; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); }

/* Official colors, contrast-checked for body text on the badge background */
.school-dublin{ background:#187515; color:#FFFFFF; }
.school-dublin .accent{ color:#F9CF00; }
.school-trinity{ background:#1000A0; color:#FFFFFF; }
.school-west-laurens{ background:#0754A1; color:#FFFFFF; }
.school-east-laurens{ background:#111111; color:#FDC300; }

.school-hero{
  padding:2.5rem 0 2rem; border-bottom:6px solid currentColor;
}
.school-hero.school-dublin{ border-bottom-color:#F9CF00; }
.school-hero.school-trinity{ border-bottom-color:#FFFFFF; }
.school-hero.school-west-laurens{ border-bottom-color:#FFFFFF; }
.school-hero.school-east-laurens{ border-bottom-color:#FDC300; }
.school-hero h1{ color:inherit; margin:0 0 .4rem; }
.school-hero .eyebrow, .school-hero p{ color:inherit; }
.school-hero p{ max-width:38rem; }

.sports-subnav{ display:flex; flex-wrap:wrap; gap:.5rem .85rem; margin-top:1rem; }
.sports-subnav a{
  color:inherit; text-decoration:none; font-weight:600; font-size:.95rem;
  border-bottom:2px solid transparent;
}
.sports-subnav a:hover, .sports-subnav a[aria-current="page"]{ border-bottom-color:currentColor; }
.school-hero .sports-subnav a{ color:inherit; }

.subscribe-row{ display:flex; flex-wrap:wrap; gap:.6rem; align-items:center; margin-top:1.1rem; }
.subscribe-row .btn{ width:auto; height:auto; padding:8px 14px; }
.school-hero .btn-outline, .school-hero .btn-ghost{
  border-color:currentColor; color:inherit; background:transparent;
}
.school-hero .btn-outline:hover, .school-hero .btn-ghost:hover{
  background:rgba(255,255,255,.12);
}
.school-east-laurens .btn-outline:hover, .school-east-laurens .btn-ghost:hover{
  background:rgba(253,195,0,.14);
}

.cal-subscribe{ display:flex; flex-wrap:wrap; gap:.6rem; align-items:center; }
.cal-subscribe .btn{ width:auto; height:auto; padding:8px 14px; }

.upcoming-list{ list-style:none; margin:0; padding:0; display:grid; gap:.65rem; }
.upcoming-list li a, .upcoming-list li .row{
  display:grid; grid-template-columns:6.5rem 1fr; gap:.85rem; align-items:start;
  text-decoration:none; color:inherit; padding:.7rem .85rem; border-radius:12px;
  border:1px solid var(--line, #d8ddd8); background:var(--surface, #fff);
}
.upcoming-list .when{ font-weight:600; font-size:.9rem; white-space:pre-line; color:var(--ink-muted, #3a463a); }
.upcoming-list h3{ margin:0 0 .2rem; font-size:1.05rem; }
.upcoming-list .meta{ font-size:.9rem; color:var(--ink-muted, #3a463a); }

.official-note{ font-size:.9rem; color:var(--ink-muted, #3a463a); max-width:42rem; }
.logo-note{ font-size:.85rem; color:var(--ink-muted, #3a463a); }

/* Sports calendar pills use school colors */
.cal-pill.school-dublin{ background:#187515; color:#fff; }
.cal-pill.school-trinity{ background:#1000A0; color:#fff; }
.cal-pill.school-west-laurens{ background:#0754A1; color:#fff; }
.cal-pill.school-east-laurens{ background:#111; color:#FDC300; }

@media (max-width:700px){
  .upcoming-list li a, .upcoming-list li .row{ grid-template-columns:5.2rem 1fr; }
}
