:root {
  --ink: #11100e;
  --paper: #f8f6f0;
  --white: #fff;
  --line: rgba(17, 16, 14, .18);
  --purple: #4c167d;
  --gold: #efb929;
  --maroon: #6d0f2c;
  --cardinal: #dc0031;
  --gray: #c8c7c2;
}

/* School-first Yard entrances */
.yard-tab.pv-tab {
  background: #4b1979;
  color: #f4c542;
  border-color: rgba(244, 197, 66, .72);
}

.yard-tab.pv-tab > span {
  background: #f4c542;
  color: #351052;
  border-color: #f4c542;
}

.yard-tab.pv-tab small {
  color: #fff;
  opacity: .82;
}

.yard-tab.pv-tab b {
  background: #f4c542;
  color: #351052;
}

.yard-tab.tsu-tab {
  background: #781f3a;
  color: #fff;
  border-color: rgba(255, 255, 255, .58);
}

.yard-tab.tsu-tab > span {
  background: #fff;
  color: #781f3a;
  border-color: #fff;
}

.yard-tab.tsu-tab small {
  color: #fff;
  opacity: .82;
}

.yard-tab.tsu-tab b {
  background: #fff;
  color: #781f3a;
}

.yard-tab.lamar-tab { background: var(--cardinal); color: #fff; border-color: rgba(255,255,255,.62); }
.yard-tab.lamar-tab > span { background: #fff; color: var(--cardinal); border-color: #fff; }
.yard-tab.lamar-tab small { color: #fff; opacity: .82; }
.yard-tab.lamar-tab b { background: #fff; color: var(--cardinal); }

.yard-tab.pv-tab b,
.yard-tab.tsu-tab b,
.yard-tab.lamar-tab b {
  display: grid;
  width: 32px;
  height: 32px;
  place-items: center;
  border-radius: 50%;
  font-family: Arial, sans-serif;
  font-size: 18px;
  line-height: 1;
}

.yard-tab.pv-tab:hover,
.yard-tab.pv-tab.active {
  background: #351052;
  color: #f4c542;
  box-shadow: inset 0 -5px #f4c542;
}

.yard-tab.tsu-tab:hover,
.yard-tab.tsu-tab.active {
  background: #5b142b;
  color: #fff;
  box-shadow: inset 0 -5px #fff;
}

.yard-tab.lamar-tab:hover,
.yard-tab.lamar-tab.active { background: #b00027; color: #fff; box-shadow: inset 0 -5px #fff; }

/* Homecoming commerce */
.product-shop { padding: 14px 16px 17px; border-top: 1px solid var(--line); background: #f7f3e9; }
.product-size-label { display: grid; grid-template-columns: 1fr 82px; align-items: center; gap: 10px; margin-bottom: 11px; color: var(--ink); font-size: 9px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.product-size-label select { width: 100%; height: 38px; padding: 0 10px; border: 1px solid var(--ink); border-radius: 0; background: #fff; color: var(--ink); font-weight: 800; }
.product-buy-options { display: grid; gap: 7px; }
.product-buy-options button { display: flex; justify-content: space-between; align-items: center; width: 100%; min-height: 43px; padding: 10px 12px; border: 1px solid var(--ink); border-radius: 0; background: var(--ink); color: #fff; cursor: pointer; font-size: 9px; font-weight: 900; letter-spacing: .07em; text-align: left; text-transform: uppercase; }
.product-buy-options button:hover, .product-buy-options button:focus-visible { background: var(--gold); color: var(--ink); }
.product-buy-options button strong { font-size: 12px; }
.product-image-shop-trigger { cursor: pointer; outline: none; }
.product-image-shop-trigger:focus-visible { box-shadow: inset 0 0 0 4px var(--gold); }
.product-tap-to-shop, .hero-shop-prompt { position: absolute; z-index: 4; right: 12px; bottom: 12px; display: inline-flex; align-items: center; min-height: 40px; padding: 0 14px; border: 1px solid #fff; background: var(--ink); color: #fff; box-shadow: 0 8px 22px rgba(0,0,0,.24); font-size: 9px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; pointer-events: none; }
.product-card.is-shopping { border-color: var(--gold); box-shadow: 0 0 0 3px var(--gold), 0 18px 40px rgba(0,0,0,.2); }
.product-card.is-shopping .product-shop { background: #fff8d9; }
.yard-hero-art[data-hero-shop-open] { cursor: pointer; outline: none; }
.yard-hero-art[data-hero-shop-open]:focus-visible { box-shadow: inset 0 0 0 5px var(--gold); }
.hero-shop-prompt { left: 18px; right: auto; bottom: 18px; min-height: 48px; padding: 0 18px; background: var(--school); }
.homecoming-cart-trigger { position: fixed; z-index: 80; right: 18px; bottom: 18px; display: flex; align-items: center; gap: 12px; min-height: 52px; padding: 0 18px; border: 1px solid #fff; border-radius: 0; background: #0b0b0b; color: #fff; box-shadow: 0 12px 36px rgba(0,0,0,.25); cursor: pointer; font-size: 10px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.homecoming-cart-trigger strong { display: grid; place-items: center; min-width: 26px; height: 26px; border-radius: 50%; background: var(--gold); color: var(--ink); }
.homecoming-cart { position: fixed; z-index: 100; inset: 0; display: flex; justify-content: flex-end; visibility: hidden; background: rgba(0,0,0,.58); opacity: 0; transition: opacity .2s ease, visibility .2s ease; }
.homecoming-cart.is-open { visibility: visible; opacity: 1; }
.homecoming-cart-panel { width: min(520px, 100%); height: 100%; padding: 24px; overflow-y: auto; background: #f7f3e9; color: var(--ink); transform: translateX(100%); transition: transform .25s ease; }
.homecoming-cart.is-open .homecoming-cart-panel { transform: translateX(0); }
body.homecoming-cart-open { overflow: hidden; }
.homecoming-cart-panel > header { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; padding-bottom: 18px; border-bottom: 2px solid var(--ink); }
.homecoming-cart-panel > header small { font-size: 9px; letter-spacing: .12em; text-transform: uppercase; }
.homecoming-cart-panel > header h2 { margin: 5px 0 0; font-size: 48px; line-height: .9; letter-spacing: -.07em; text-transform: uppercase; }
.homecoming-cart-panel > header button { padding: 10px 12px; border: 1px solid var(--ink); background: transparent; cursor: pointer; font-size: 9px; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.homecoming-cart-items { display: grid; }
.homecoming-empty-cart { padding: 42px 0; border-bottom: 1px solid var(--line); font-size: 12px; text-align: center; }
.homecoming-cart-item { display: grid; grid-template-columns: 100px 1fr auto; gap: 14px; padding: 16px 0; border-bottom: 1px solid var(--line); }
.homecoming-cart-item img { width: 100px; height: 110px; object-fit: contain; background: #fff; }
.homecoming-cart-item > div:nth-child(2) { display: grid; align-content: start; gap: 8px; }
.homecoming-cart-item strong { font-size: 12px; line-height: 1.25; text-transform: uppercase; }
.homecoming-cart-item small { font-size: 10px; }
.homecoming-cart-item label { display: grid; grid-template-columns: auto 72px; align-items: center; gap: 8px; font-size: 9px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.homecoming-cart-item select { height: 34px; border: 1px solid var(--ink); border-radius: 0; background: #fff; }
.homecoming-cart-actions { display: grid; grid-template-columns: 31px 24px 31px; align-content: start; align-items: center; gap: 5px; text-align: center; }
.homecoming-cart-actions button { height: 31px; border: 1px solid var(--ink); background: #fff; cursor: pointer; }
.homecoming-cart-actions button:last-child { grid-column: 1 / -1; width: 100%; padding: 0; border: 0; background: transparent; font-size: 8px; text-decoration: underline; text-transform: uppercase; }
.homecoming-checkout-summary { display: grid; gap: 11px; padding: 20px 0; border-bottom: 1px solid var(--ink); }
.homecoming-checkout-summary > label { display: grid; gap: 7px; font-size: 9px; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.homecoming-checkout-summary input { width: 100%; min-height: 42px; padding: 0 11px; border: 1px solid var(--ink); border-radius: 0; background: #fff; }
.homecoming-checkout-summary label > span { display: grid; grid-template-columns: 1fr auto; }
.homecoming-checkout-summary label > span button { padding: 0 15px; border: 1px solid var(--ink); background: var(--ink); color: #fff; cursor: pointer; font-size: 9px; font-weight: 900; text-transform: uppercase; }
.homecoming-checkout-summary > p { min-height: 16px; margin: -2px 0 0; font-size: 10px; }
.homecoming-checkout-summary > div { display: flex; justify-content: space-between; font-size: 11px; text-transform: uppercase; }
.homecoming-checkout-summary .homecoming-total { padding-top: 12px; border-top: 1px solid var(--line); font-size: 17px; font-weight: 900; }
.homecoming-checkout-summary > small { color: #666; font-size: 9px; line-height: 1.45; }
.homecoming-stripe-fields { display: grid; gap: 12px; padding: 20px 0; }
.homecoming-stripe-fields h3 { margin: 8px 0 0; font-size: 16px; text-transform: uppercase; }
.homecoming-cart-message { min-height: 18px; margin: 12px 0; font-size: 10px; line-height: 1.4; }
.homecoming-cart-message[data-type="error"] { color: #a40022; }
.homecoming-cart-message[data-type="success"] { color: #176b39; }
.homecoming-checkout-button { width: 100%; min-height: 56px; border: 0; border-radius: 0; background: var(--ink); color: #fff; cursor: pointer; font-size: 12px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.homecoming-checkout-button:disabled { cursor: wait; opacity: .55; }

@media (max-width: 620px) {
  .homecoming-cart-trigger { right: 10px; bottom: 10px; min-height: 48px; padding: 0 14px; }
  .homecoming-cart-panel { padding: 18px; }
  .homecoming-cart-item { grid-template-columns: 78px 1fr; }
  .homecoming-cart-item img { width: 78px; height: 92px; }
  .homecoming-cart-actions { grid-column: 2; grid-template-columns: 31px 24px 31px auto; }
  .homecoming-cart-actions button:last-child { grid-column: auto; padding-left: 10px; }
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: Arial, Helvetica, sans-serif; }
body, button, input, select, textarea { font: inherit; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }

.school-experience-gates {
  display: grid;
  grid-template-columns: .72fr 1.28fr;
  border-bottom: 1px solid #111;
  background: #f4efe5;
}

.school-experience-gates > header {
  padding: 56px 34px;
  border-right: 1px solid #111;
}

.school-experience-gates header p,
.school-gate small {
  margin: 0;
  font: 800 9px/1 Arial, sans-serif;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.school-experience-gates h1 {
  margin: 22px 0 30px;
  font: 800 clamp(58px, 7vw, 108px)/.8 Arial, sans-serif;
  letter-spacing: -.07em;
}

.school-experience-gates header span {
  display: block;
  max-width: 500px;
  font: 18px/1.4 Georgia, serif;
}

.school-experience-gates > div { display: grid; grid-template-rows: repeat(3, 1fr); }

.school-gate {
  display: grid;
  align-content: center;
  gap: 12px;
  min-height: 240px;
  padding: 36px;
  color: #fff;
  border-bottom: 1px solid #111;
}

.school-gate:last-child { border-bottom: 0; }
.school-gate-pv { background: #4d178a; color: #f1b82d; }
.school-gate-tsu { background: #781d36; color: #fff8e8; }
.school-gate-lamar { background: var(--cardinal); color: #fff; }
.school-gate strong { font: 800 clamp(46px, 6vw, 92px)/.8 Arial, sans-serif; letter-spacing: -.06em; }
.school-gate span { font: 800 11px/1.35 Arial, sans-serif; letter-spacing: .06em; text-transform: uppercase; }

@media (max-width: 820px) {
  .school-experience-gates { grid-template-columns: 1fr; }
  .school-experience-gates > header { border-right: 0; border-bottom: 1px solid #111; }
  .school-gate { min-height: 190px; padding: 28px 22px; }
}

.yard-tabs {
  position: sticky;
  top: 0;
  z-index: 50;
  display: grid;
  grid-template-columns: minmax(150px, .55fr) repeat(5, minmax(150px, 1fr)) minmax(150px, .55fr);
  min-height: 78px;
  background: #0b0b0b;
  color: #fff;
  border-bottom: 1px solid rgba(255,255,255,.18);
}
.yard-home,
.yard-tab { display: flex; align-items: center; padding: 12px 28px; border-right: 1px solid rgba(255,255,255,.18); }
.yard-home { flex-direction: column; align-items: flex-start; justify-content: center; text-transform: uppercase; }
.yard-home small,
.yard-tab small { font-size: 10px; letter-spacing: .13em; text-transform: uppercase; opacity: .7; }
.yard-home strong { margin-top: 5px; font-size: 13px; letter-spacing: .08em; }
.yard-message { display: grid; align-content: center; gap: 5px; min-width: 0; padding: 12px 22px; background: #f4efe5; color: var(--ink); text-transform: uppercase; }
.yard-message small { font-size: 8px; letter-spacing: .12em; }
.yard-message strong { font-size: 11px; letter-spacing: .08em; }
.yard-tab { gap: 14px; transition: background .2s ease, color .2s ease; }
.yard-tab > span { display: grid; place-items: center; min-width: 46px; height: 46px; border: 1px solid currentColor; border-radius: 50%; font-weight: 900; }
.yard-tab div { display: flex; flex: 1; flex-direction: column; gap: 4px; }
.yard-tab strong { font-size: 14px; letter-spacing: .06em; text-transform: uppercase; }
.yard-tab b { font-size: 20px; }
.pv-tab:hover, .pv-tab.active { background: var(--purple); color: #fff; }
.tsu-tab:hover, .tsu-tab.active { background: var(--maroon); color: #fff; }

.capsule-header {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 24px;
  min-height: 96px;
  padding: 18px 34px;
  border-bottom: 1px solid var(--line);
  background: var(--paper);
}
.capsule-mark { font-size: 18px; font-weight: 900; line-height: .86; letter-spacing: -.05em; }
.capsule-header nav { display: flex; gap: 30px; font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.capsule-header > span { justify-self: end; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }

.capsule-hero {
  display: grid;
  grid-template-columns: .72fr 1.28fr;
  min-height: 660px;
  border-bottom: 1px solid var(--ink);
}
.hero-copy { display: flex; flex-direction: column; justify-content: space-between; padding: 52px 38px 32px; background: var(--ink); color: #fff; }
.hero-copy > p { margin: 0; font-size: 11px; letter-spacing: .15em; text-transform: uppercase; }
.hero-copy h1 { margin: 30px 0; font-size: clamp(64px, 7.6vw, 132px); line-height: .77; letter-spacing: -.08em; }
.hero-copy h1 em { color: var(--gold); font-family: Georgia, serif; font-weight: 400; }
.hero-facts { display: grid; gap: 8px; padding-top: 18px; border-top: 1px solid rgba(255,255,255,.3); font-size: 11px; letter-spacing: .09em; text-transform: uppercase; }
.collection-doors { display: grid; grid-template-columns: repeat(6, 1fr); background: #fff; }
.collection-doors > a { display: grid; grid-template-rows: minmax(0, 1fr) auto; min-width: 0; border-left: 1px solid var(--line); }
.collection-doors img { width: 100%; height: 100%; object-fit: contain; padding: 10px; background: #fff; }
.collection-doors > a > span { display: grid; gap: 8px; padding: 20px; border-top: 1px solid var(--line); }
.collection-doors small { font-size: 9px; letter-spacing: .13em; text-transform: uppercase; }
.collection-doors strong { font-size: clamp(18px, 2vw, 30px); line-height: .95; letter-spacing: -.04em; text-transform: uppercase; }
.collection-doors b { font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }

.shop-notice { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 24px; padding: 20px 34px; background: var(--gold); border-bottom: 1px solid var(--ink); font-size: 12px; }
.shop-notice strong { letter-spacing: .1em; }
.shop-notice a { font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }

.collection { padding: 84px 34px 100px; border-bottom: 1px solid var(--ink); }
.collection-head { display: grid; grid-template-columns: 1fr .7fr; gap: 48px; margin-bottom: 56px; }
.collection-head p { margin: 0 0 14px; max-width: 520px; line-height: 1.55; }
.collection-head > div:first-child > p { font-size: 10px; letter-spacing: .15em; text-transform: uppercase; }
.collection-head h2 { margin: 0; font-size: clamp(70px, 10vw, 170px); line-height: .76; letter-spacing: -.09em; }
.collection-head > div:last-child { align-self: end; padding: 22px 0 0; border-top: 1px solid currentColor; }
.collection-head > div:last-child > strong { display: block; margin-bottom: 18px; font-size: clamp(24px, 3vw, 42px); letter-spacing: -.05em; }
.collection-head > div:last-child > span,
.collection-head > div:last-child > a { display: inline-block; margin-top: 8px; padding: 11px 14px; border: 1px solid currentColor; font-size: 10px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.classic-kickoff { display: grid; grid-template-columns: minmax(320px, .8fr) minmax(0, 1.2fr); margin: 0 0 56px; overflow: hidden; border: 1px solid var(--ink); background: #080708; color: #fff; box-shadow: 10px 10px 0 var(--gold); }
.classic-kickoff-art { position: relative; min-height: 720px; overflow: hidden; background: #080708; }
.classic-kickoff-art::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, transparent 42%, rgba(8,7,8,.92) 100%); }
.classic-kickoff-art img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 25% center; }
.classic-kickoff-art > span { position: absolute; z-index: 1; left: 22px; bottom: 22px; padding: 10px 12px; border: 1px solid rgba(255,255,255,.5); background: rgba(8,7,8,.76); font-size: 9px; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.classic-kickoff-copy { display: flex; flex-direction: column; justify-content: center; min-width: 0; padding: clamp(30px, 4vw, 62px); }
.classic-kickoff-date { margin: 0 0 20px; color: var(--gold); font-size: 11px; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.classic-kickoff-copy h3 { margin: 0; font-size: clamp(58px, 6.2vw, 104px); line-height: .78; letter-spacing: -.07em; text-transform: uppercase; }
.classic-kickoff-copy h3 em { display: block; margin-top: 10px; color: var(--gold); font-family: Georgia, serif; font-size: .72em; font-weight: 400; letter-spacing: -.04em; }
.classic-kickoff-venue { align-self: flex-start; margin: 18px 0 24px; padding: 8px 12px; border: 1px solid #fff; font-size: 12px; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.classic-matchup { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: stretch; gap: 9px; }
.classic-matchup > span { display: flex; flex-direction: column; justify-content: center; min-width: 0; padding: 15px; }
.classic-matchup > span > strong { font-size: clamp(34px, 4vw, 66px); line-height: .82; letter-spacing: -.06em; }
.classic-matchup small { margin-top: 9px; font-size: 8px; font-weight: 800; line-height: 1.3; letter-spacing: .07em; text-transform: uppercase; }
.classic-matchup > b { align-self: center; font-family: Georgia, serif; font-size: 25px; font-style: italic; }
.classic-pv { background: var(--purple); color: var(--gold); }
.classic-tsu { background: var(--maroon); color: #fff; }
.classic-outside { margin: 14px 0; padding: 12px 4px; border-top: 1px solid rgba(255,255,255,.3); border-bottom: 1px solid rgba(255,255,255,.3); font-size: 13px; font-weight: 950; letter-spacing: .08em; text-align: center; text-transform: uppercase; }
.classic-specials { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.classic-specials article { padding: 16px; border: 1px solid rgba(255,255,255,.3); }
.classic-specials small, .classic-hosts small, .classic-location small { display: block; margin-bottom: 7px; color: var(--gold); font-size: 8px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.classic-specials strong { display: block; font-size: clamp(24px, 3vw, 46px); line-height: .9; text-transform: uppercase; }
.classic-specials p { margin: 10px 0 0; font-size: 10px; font-weight: 700; line-height: 1.5; text-transform: uppercase; }
.classic-hosts { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 16px 0; }
.classic-hosts span { border-left: 3px solid var(--gold); padding-left: 12px; }
.classic-hosts strong { font-size: 17px; text-transform: uppercase; }
.classic-location { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding-top: 16px; border-top: 1px solid rgba(255,255,255,.3); }
.classic-location > div, .classic-location > a { color: #fff; text-decoration: none; }
.classic-location strong { display: block; font-size: 11px; line-height: 1.4; text-transform: uppercase; }
.classic-weekend-stage { display: grid; grid-template-columns: minmax(250px, .72fr) minmax(520px, 1.65fr) minmax(250px, .72fr); align-items: stretch; gap: 16px; margin: 0 0 64px; }
.classic-original-flyer { width: min(100%, 920px); margin: 0 auto 64px; }
.classic-weekend-stage .classic-original-flyer { width: 100%; margin: 0; }
.classic-original-flyer > a { position: relative; display: block; background: #000; box-shadow: 12px 12px 0 var(--gold); }
.classic-original-flyer img { display: block; width: 100%; height: auto; }
.classic-original-flyer > a > span { position: absolute; right: 14px; bottom: 14px; padding: 10px 12px; border: 1px solid rgba(255,255,255,.65); background: rgba(0,0,0,.82); color: #fff; font-size: 9px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.classic-original-flyer figcaption { display: flex; justify-content: space-between; gap: 16px; padding: 18px 0 0 12px; font-size: 10px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.classic-original-flyer figcaption a { color: inherit; text-decoration: underline; text-underline-offset: 4px; }
.pv-grooves-flyer { display: flex; flex-direction: column; width: 100%; min-width: 0; margin: 0; background: #080708; color: #fff; box-shadow: -10px 10px 0 var(--gold); }
.pv-grooves-flyer > a { position: relative; display: block; flex: 1; min-height: 0; background: #080708; }
.pv-grooves-flyer img { display: block; width: 100%; height: 100%; object-fit: cover; }
.pv-grooves-flyer > a > span { position: absolute; right: 12px; bottom: 12px; padding: 9px 11px; border: 1px solid rgba(255,255,255,.65); background: rgba(0,0,0,.84); color: #fff; font-size: 8px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.pv-grooves-flyer figcaption { display: grid; gap: 8px; padding: 16px; background: var(--purple); color: #fff; font-size: 9px; font-weight: 900; letter-spacing: .08em; line-height: 1.45; text-transform: uppercase; }
.pv-grooves-flyer figcaption a { color: var(--gold); text-decoration: underline; text-underline-offset: 4px; }
.pv-reunion-card { display: flex; flex-direction: column; min-width: 0; padding: clamp(24px, 2.5vw, 42px); border: 1px solid var(--ink); }
.pv-reunion-intro { background: var(--purple); color: #fff; box-shadow: -10px 10px 0 var(--gold); }
.pv-reunion-rsvp { background: var(--gold); color: var(--ink); box-shadow: 10px 10px 0 var(--purple); }
.pv-reunion-kicker { margin: 0 0 28px; font-size: 9px; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.pv-reunion-date { align-self: flex-start; margin-bottom: 20px; padding: 8px 10px; border: 1px solid currentColor; font-size: 11px; font-weight: 950; letter-spacing: .13em; }
.pv-reunion-card h3 { margin: 0; font-size: clamp(44px, 4.1vw, 82px); line-height: .78; letter-spacing: -.07em; text-transform: uppercase; }
.pv-reunion-intro h3 { font-size: clamp(35px, 3.1vw, 64px); }
.pv-reunion-card h3 em { display: block; margin-top: 12px; color: var(--gold); font-family: Georgia, serif; font-size: .7em; font-weight: 400; letter-spacing: -.04em; }
.pv-reunion-venue { margin: 28px 0 18px; padding: 12px 0; border-top: 1px solid rgba(255,255,255,.45); border-bottom: 1px solid rgba(255,255,255,.45); font-size: clamp(20px, 2vw, 34px); font-weight: 950; line-height: .95; text-transform: uppercase; }
.pv-reunion-host { display: flex; flex-direction: column; gap: 5px; padding: 20px; background: var(--gold); color: var(--ink); }
.pv-reunion-host small { font-size: 8px; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.pv-reunion-host strong { font-size: clamp(25px, 2.4vw, 42px); line-height: .9; text-transform: uppercase; }
.pv-reunion-host span { font-size: 10px; font-weight: 800; text-transform: uppercase; }
.pv-reunion-note, .pv-reunion-rsvp > p { margin: auto 0 0; padding-top: 28px; font-size: 13px; font-weight: 700; line-height: 1.6; }
.pv-reunion-rsvp h3 { color: var(--purple); }
.pv-rsvp-links { display: grid; gap: 9px; margin: 30px 0; }
.pv-rsvp-links a, .pv-directions { display: flex; align-items: center; min-height: 52px; padding: 13px 15px; border: 1px solid var(--ink); color: inherit; font-size: 10px; font-weight: 950; letter-spacing: .08em; line-height: 1.35; text-decoration: none; text-transform: uppercase; }
.pv-rsvp-links a:hover, .pv-rsvp-links a:focus-visible, .pv-directions:hover, .pv-directions:focus-visible { background: var(--purple); color: #fff; }
.pv-rsvp-links .pv-rsvp-primary { background: var(--ink); color: #fff; }
.pv-reunion-rsvp address { display: flex; flex-direction: column; gap: 4px; margin-top: auto; padding-top: 24px; border-top: 1px solid var(--ink); font-size: 11px; font-style: normal; line-height: 1.3; text-transform: uppercase; }
.pv-reunion-rsvp address strong { font-size: 17px; }
.pv-directions { margin-top: 14px; }
.yard-reunion-feature { display: grid; grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr); gap: 24px; padding: 64px 34px; background: #0b0712; color: #fff; border-bottom: 1px solid var(--ink); }
.yard-reunion-feature .pv-grooves-flyer { max-width: 620px; justify-self: center; }
.yard-reunion-copy { display: flex; flex-direction: column; justify-content: center; min-width: 0; padding: clamp(12px, 3vw, 42px); }
.yard-reunion-copy > small { color: var(--gold); font: 900 9px/1 Arial, sans-serif; letter-spacing: .16em; text-transform: uppercase; }
.yard-reunion-copy h2 { margin: 20px 0 16px; font: 900 clamp(48px, 6vw, 96px)/.82 Arial, sans-serif; letter-spacing: -.07em; text-transform: uppercase; }
.yard-reunion-copy > p { max-width: 620px; margin: 0; color: rgba(255,255,255,.76); font: 600 14px/1.6 Arial, sans-serif; }
.yard-reunion-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 28px; }
.yard-reunion-actions a { display: flex; align-items: center; justify-content: center; min-height: 54px; padding: 13px; border: 1px solid var(--gold); color: #fff; font: 900 9px/1.3 Arial, sans-serif; letter-spacing: .08em; text-align: center; text-decoration: none; text-transform: uppercase; }
.yard-reunion-actions a:first-child { background: var(--gold); color: var(--ink); }
.pv-collection { background: var(--purple); color: #fff; }
.tsu-collection { background: var(--maroon); color: #fff; }
.lamar-collection { background: var(--cardinal); color: #fff; }
.southern-collection { background: #2d7fae; color: #fff; border-top: 8px solid #ffc72c; }

.garment-label { display: grid; grid-template-columns: 54px auto 1fr; align-items: baseline; gap: 14px; margin: 58px 0 22px; padding-bottom: 14px; border-bottom: 1px solid currentColor; }
.garment-label span { font-family: Georgia, serif; font-size: 32px; font-style: italic; }
.garment-label h3 { margin: 0; font-size: clamp(28px, 4vw, 54px); letter-spacing: -.05em; text-transform: uppercase; }
.garment-label p { justify-self: end; margin: 0; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }

.product-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.product-card { min-width: 0; background: #fff; color: var(--ink); border: 1px solid rgba(0,0,0,.14); }
.product-image { position: relative; aspect-ratio: 4 / 5; overflow: hidden; background: #fff; }
.product-image img { width: 100%; height: 100%; object-fit: contain; transition: transform .3s ease; }
.product-card:hover .product-image img { transform: scale(1.025); }
.product-image i, .product-image b { position: absolute; top: 12px; margin: 0; font-size: 9px; font-style: normal; letter-spacing: .1em; text-transform: uppercase; }
.product-image i { left: 12px; display: grid; place-items: center; width: 31px; height: 31px; border-radius: 50%; background: var(--ink); color: #fff; font-size: 12px; font-weight: 900; }
.product-image b { right: 12px; padding: 7px 9px; background: rgba(255,255,255,.9); border: 1px solid var(--line); }
.product-copy { display: flex; justify-content: space-between; gap: 14px; min-height: 132px; padding: 17px; border-top: 1px solid var(--line); }
.product-copy small { font-size: 8px; letter-spacing: .13em; text-transform: uppercase; }
.product-copy h3 { margin: 8px 0 5px; font-size: 18px; line-height: 1; letter-spacing: -.03em; text-transform: uppercase; }
.product-copy p { margin: 0; font-size: 11px; color: #555; }
.product-copy > strong { align-self: flex-end; font-size: 9px; letter-spacing: .08em; text-align: right; text-transform: uppercase; }

.experience-bridge { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 50px; padding: 84px 34px; background: var(--ink); color: #fff; }
.experience-bridge p { margin: 0 0 18px; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; }
.experience-bridge h2 { margin: 0; font-size: clamp(48px, 7vw, 110px); line-height: .82; letter-spacing: -.07em; }
.experience-bridge > div:last-child { display: grid; gap: 10px; min-width: 260px; }
.experience-bridge a { padding: 18px 20px; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.pv-button { background: var(--purple); }
.tsu-button { background: var(--maroon); }
.lamar-button { background: var(--cardinal); }
.southern-button { background: #2d7fae; color: #fff; box-shadow: inset 5px 0 #ffc72c; }
.alcorn-button { background: #512d6d; color: #fff; box-shadow: inset 5px 0 #cc8a00; }
.capsule-footer { display: grid; grid-template-columns: 1fr 2fr auto; gap: 30px; align-items: center; padding: 30px 34px; background: #070707; color: #fff; border-top: 1px solid rgba(255,255,255,.2); }
.capsule-footer p { margin: 0; font-size: 10px; line-height: 1.4; opacity: .7; }
.capsule-footer a { font-size: 10px; letter-spacing: .08em; text-transform: uppercase; text-decoration: underline; }

/* Individual Yard Experiences */
.yard-page { --school: var(--purple); --school-2: var(--gold); background: #eee9dd; }
.school-tsu { --school: var(--maroon); --school-2: #c7c5c0; }
.school-lamar { --school: var(--cardinal); --school-2: #fff; }
.school-alcorn { --school: #512d6d; --school-2: #cc8a00; }
.yard-site-header { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 86px; padding: 18px 34px; border-bottom: 1px solid var(--ink); background: #f7f3e9; }
.yard-site-header > a { font-size: 18px; font-weight: 900; line-height: .85; letter-spacing: -.05em; }
.yard-site-header nav { display: flex; gap: 26px; font-size: 10px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.yard-site-header > span { padding: 9px 11px; background: var(--school); color: #fff; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.independent-note { padding: 12px 34px; background: #111; color: #fff; font-size: 10px; line-height: 1.5; letter-spacing: .04em; text-align: center; }

.yard-hero { display: grid; grid-template-columns: 1fr 1fr; min-height: 650px; background: var(--school); color: #fff; }
.yard-hero-copy { display: flex; flex-direction: column; justify-content: center; padding: 54px 7vw 48px 36px; }
.yard-hero-copy > p:first-child { font-size: 10px; letter-spacing: .14em; text-transform: uppercase; }
.yard-hero-copy span { margin: 26px 0 5px; font-size: clamp(18px, 2.3vw, 34px); font-weight: 900; letter-spacing: -.03em; }
.yard-hero-copy h1 { margin: 0; font-size: clamp(78px, 10vw, 170px); line-height: .72; letter-spacing: -.1em; }
.yard-hero-copy em { margin-top: 16px; color: var(--school-2); font-family: Georgia, serif; font-size: clamp(32px, 4vw, 64px); }
.yard-hero-copy > p:last-of-type { max-width: 520px; margin: 28px 0; line-height: 1.55; }
.yard-hero-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.yard-hero-actions a { padding: 14px 16px; background: #fff; color: var(--ink); font-size: 10px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.yard-hero-art { position: relative; display: grid; place-items: center; overflow: hidden; background: #fff; }
.yard-hero-art::before { content: attr(data-monogram); position: absolute; color: var(--school); font-size: clamp(120px, 22vw, 360px); font-weight: 900; letter-spacing: -.12em; opacity: .09; }
.yard-hero-art img { position: relative; z-index: 1; width: 100%; height: 100%; object-fit: contain; }
.yard-hero-ticket { position: absolute; z-index: 2; right: 24px; bottom: 24px; display: grid; gap: 5px; padding: 16px 18px; background: var(--ink); color: #fff; transform: rotate(-3deg); }
.yard-hero-ticket small { font-size: 8px; letter-spacing: .12em; }
.yard-hero-ticket strong { font-size: 28px; }

.yard-section { padding: 86px 34px; border-bottom: 1px solid var(--ink); }
.section-intro { display: grid; grid-template-columns: .75fr 1.25fr; gap: 50px; margin-bottom: 45px; }
.section-kicker { margin: 0 0 14px; font-size: 10px; letter-spacing: .14em; text-transform: uppercase; }
.section-intro h2 { margin: 0; font-size: clamp(60px, 9vw, 142px); line-height: .77; letter-spacing: -.09em; }
.section-intro > div:last-child { align-self: end; max-width: 650px; line-height: 1.55; }

.official-events { background: #f7f3e9; color: var(--ink); }
.official-grid { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid var(--ink); }
.official-event { display: grid; grid-template-columns: 92px 1fr; min-height: 200px; border-right: 1px solid var(--ink); }
.official-event:last-child { border-right: 0; }
.official-date { display: flex; flex-direction: column; justify-content: center; align-items: center; background: var(--school); color: #fff; }
.official-date strong { font-size: 38px; letter-spacing: -.06em; }
.official-date span { font-size: 10px; letter-spacing: .12em; }
.official-event > div:last-child { display: flex; flex-direction: column; justify-content: center; padding: 22px; }
.official-event i { align-self: flex-start; padding: 5px 7px; background: var(--school-2); color: var(--ink); font-size: 8px; font-style: normal; letter-spacing: .08em; text-transform: uppercase; }
.official-event h3 { margin: 14px 0 6px; font-size: 22px; line-height: 1; text-transform: uppercase; }
.official-event p { margin: 0; font-size: 12px; line-height: 1.5; }
.official-source { display: inline-block; margin-top: 20px; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-decoration: underline; text-transform: uppercase; }

.yard-capsule { background: var(--school); color: #fff; }
.yard-capsule .product-grid { margin-top: 32px; }
.yard-capsule .garment-label:first-of-type { margin-top: 0; }
.yard-capsule-link { display: inline-flex; margin-top: 30px; padding: 15px 18px; background: #fff; color: var(--ink); font-size: 10px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }

.band-section { background: #0b0b0b; color: #fff; }
.band-films { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
.band-films-native { grid-template-columns: minmax(0, 1000px); }
.band-film { background: #1a1a1a; border: 1px solid rgba(255,255,255,.25); }
.video-frame { position: relative; aspect-ratio: 16 / 9; background: #000; }
.video-frame iframe,
.video-frame video { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; object-fit: contain; background: #000; }
.band-film div:last-child { padding: 20px; }
.band-film span { font-size: 9px; letter-spacing: .12em; text-transform: uppercase; opacity: .6; }
.band-film h3 { margin: 8px 0 0; font-size: 26px; text-transform: uppercase; }

.community-section { background: #e9e2d3; color: var(--ink); }
.community-layout { display: grid; grid-template-columns: 1.1fr .9fr; gap: 22px; }
.event-board, .community-form, .wall-board { background: #fff; border: 1px solid var(--ink); }
.event-board, .community-form { color: var(--ink); color-scheme: light; }
.board-head { display: flex; justify-content: space-between; gap: 20px; padding: 15px 18px; background: var(--ink); color: #fff; font-size: 9px; letter-spacing: .1em; text-transform: uppercase; }
.board-empty { padding: 50px 24px; }
.board-empty h3 { margin: 8px 0; font-size: 28px; text-transform: uppercase; }
.board-list article { display: grid; grid-template-columns: 94px 1fr auto; gap: 18px; padding: 18px; border-bottom: 1px solid var(--line); }
.board-list time { display: grid; align-content: start; gap: 5px; }
.board-list time strong { font-size: 22px; }
.board-list time span, .board-list small { font-size: 10px; }
.board-list h3 { margin: 5px 0; font-size: 18px; text-transform: uppercase; }
.board-list p { margin: 0; font-size: 11px; }
.board-list a { font-size: 18px; }
.community-form { padding: 22px; }
.community-form > strong { display: block; margin-bottom: 20px; font-size: 24px; text-transform: uppercase; }
.community-form label { display: grid; gap: 7px; margin-bottom: 13px; font-size: 9px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.community-form input, .community-form select, .community-form textarea { width: 100%; padding: 12px; border: 1px solid var(--ink); border-radius: 0; background: #fff; color: var(--ink); font-size: 13px; }
.form-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.community-form button { width: 100%; padding: 15px; border: 0; background: var(--school); color: #fff; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; cursor: pointer; }
.form-status { min-height: 20px; margin: 12px 0 0; font-size: 11px; line-height: 1.4; }
.form-trap { position: absolute !important; left: -9999px !important; }

.wall-section { background: #12110f; color: #fff; }
.wall-board { min-height: 320px; padding: 30px; background: #22201c; color: #fff; border-color: rgba(255,255,255,.3); }
.wall-signatures { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.signature { min-height: 110px; padding: 16px; border: 1px solid rgba(255,255,255,.2); transform: rotate(-1deg); }
.signature:nth-child(even) { transform: rotate(1.5deg); }
.signature strong { display: block; font-family: Georgia, serif; font-size: 25px; font-style: italic; color: var(--school-2); }
.signature span { font-size: 8px; letter-spacing: .1em; text-transform: uppercase; }
.signature p { margin: 10px 0 0; font-size: 11px; }
.wall-section .community-form { background: #f7f3e9; color: var(--ink); }

.yard-footer { display: grid; grid-template-columns: 1fr 2fr auto; gap: 30px; align-items: center; padding: 30px 34px; background: #070707; color: #fff; }
.yard-footer p { margin: 0; font-size: 10px; opacity: .65; }
.yard-footer a { font-size: 10px; text-decoration: underline; text-transform: uppercase; }

/* Shared countdown desk */
.homecoming-countdowns { display: grid; grid-template-columns: repeat(3, 1fr); border-bottom: 1px solid var(--ink); background: #0b0b0b; color: #fff; }.homecoming-countdowns>header{grid-column:1/-1}
.homecoming-countdowns > header { padding: 30px 28px; border-right: 1px solid rgba(255,255,255,.25); }
.homecoming-countdowns > header p { margin: 0 0 18px; color: var(--gold); font-size: 9px; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.homecoming-countdowns > header h2 { margin: 0; font-size: clamp(36px, 4vw, 67px); line-height: .82; letter-spacing: -.07em; }
.homecoming-countdowns > header span { display: block; margin-top: 22px; max-width: 420px; font-size: 10px; line-height: 1.55; opacity: .7; }
.countdown-card { display: flex; flex-direction: column; justify-content: space-between; min-width: 0; padding: 28px 22px; border-right: 1px solid rgba(255,255,255,.25); }
.countdown-card:last-child { border-right: 0; }
.countdown-card > div:first-child small { display: block; margin-bottom: 8px; font-size: 9px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.countdown-card > div:first-child strong { display: block; font-size: 22px; line-height: 1; }
.countdown-card p { min-height: 30px; margin: 9px 0 20px; font-size: 10px; line-height: 1.4; opacity: .75; }
.countdown-card em { margin-top: 15px; font-size: 8px; font-style: normal; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.countdown-pv { box-shadow: inset 0 5px 0 var(--gold); }
.countdown-tsu { box-shadow: inset 0 5px 0 #fff; }
.countdown-lamar { box-shadow: inset 0 5px 0 var(--cardinal); }
.countdown-units { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid currentColor; }
.countdown-units span { display: grid; gap: 4px; padding: 11px 5px; border-right: 1px solid currentColor; text-align: center; }
.countdown-units span:last-child { border-right: 0; }
.countdown-units b { font-size: clamp(23px, 2.5vw, 42px); line-height: 1; letter-spacing: -.06em; }
.countdown-units small { font-size: 7px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
[data-homecoming-countdown][data-status="live"] { animation: countdown-live 1.6s ease-in-out infinite alternate; }
@keyframes countdown-live { to { box-shadow: inset 0 0 0 4px var(--gold); } }

.school-countdown { display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: 48px; padding: 48px 34px; background: #0b0b0b; color: #fff; border-bottom: 1px solid rgba(255,255,255,.25); }
.school-countdown > div:first-child small { color: var(--school-2); font-size: 9px; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.school-countdown h2 { margin: 10px 0; font-size: clamp(45px, 6vw, 92px); line-height: .8; letter-spacing: -.07em; }
.school-countdown p { margin: 0 0 14px; font-size: 12px; opacity: .78; }
.school-countdown > div:first-child > strong { font-size: 9px; letter-spacing: .1em; text-transform: uppercase; }
.school-countdown .countdown-units b { font-size: clamp(35px, 6vw, 92px); }
.school-feature-card { max-width: 820px; }
.school-feature-card > div { min-height: 290px; display: flex; flex-direction: column; justify-content: center; }

/* 10x Homecoming engagement network */
.engagement-section { --engagement-accent: var(--school-2); padding-top: 76px; padding-bottom: 76px; background: #0b0b0b; color: #fff; }
.engagement-lamar { --engagement-accent: #fff; }
.engagement-mast { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(290px, .55fr); gap: 42px; align-items: end; }
.engagement-mast h2 { margin: 8px 0 20px; font-size: clamp(66px, 10vw, 152px); line-height: .78; letter-spacing: -.075em; }
.engagement-mast > div:first-child > p:last-child { max-width: 720px; margin: 0; color: rgba(255,255,255,.72); font: 500 15px/1.65 Arial, sans-serif; }
.engagement-actions { display: grid; gap: 10px; }
.engagement-actions a, .engagement-bottom a { padding: 17px 18px; background: var(--school); color: #fff; font: 900 10px/1 Arial, sans-serif; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }
.engagement-actions a:last-child { background: transparent; border: 1px solid rgba(255,255,255,.36); }
.engagement-totals { display: grid; grid-template-columns: repeat(3, 1fr); margin: 48px 0 18px; border: 1px solid rgba(255,255,255,.22); }
.engagement-totals span { padding: 24px; border-right: 1px solid rgba(255,255,255,.22); }
.engagement-totals span:last-child { border-right: 0; }
.engagement-totals strong, .engagement-totals small { display: block; }
.engagement-totals strong { font: 900 clamp(48px, 6vw, 92px)/.8 Arial, sans-serif; letter-spacing: -.07em; }
.engagement-totals small { margin-top: 12px; font: 900 9px/1 Arial, sans-serif; letter-spacing: .12em; text-transform: uppercase; color: var(--engagement-accent); }
.engagement-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; border: 1px solid rgba(255,255,255,.22); }
.engagement-panel { min-width: 0; min-height: 520px; border-right: 1px solid rgba(255,255,255,.22); }
.engagement-panel:last-child { border-right: 0; }
.engagement-panel > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; min-height: 104px; padding: 20px; border-bottom: 1px solid rgba(255,255,255,.22); }
.engagement-panel header small { display: block; margin-bottom: 7px; color: var(--engagement-accent); font: 900 8px/1 Arial, sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.engagement-panel h3 { margin: 0; font: 900 26px/.9 Arial, sans-serif; letter-spacing: -.045em; text-transform: uppercase; }
.engagement-panel header > b { color: var(--engagement-accent); font: 900 28px/1 Arial, sans-serif; }
.pulse-panel header i { width: 11px; height: 11px; margin-top: 5px; border-radius: 50%; background: #42d66d; box-shadow: 0 0 0 7px rgba(66,214,109,.15); animation: pulse-live 1.3s ease-in-out infinite alternate; }
@keyframes pulse-live { to { box-shadow: 0 0 0 13px rgba(66,214,109,.02); } }
.roll-call, .class-board, .school-pulse { max-height: 520px; overflow: auto; }
.roll-call-person, .pulse-row { display: grid; gap: 12px; padding: 16px 18px; border-bottom: 1px solid rgba(255,255,255,.13); }
.roll-call-person { grid-template-columns: 38px 1fr auto; align-items: start; }
.roll-call-person > span { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 50%; background: var(--school); font: 900 15px/1 Arial, sans-serif; }
.roll-call-person strong, .roll-call-person small, .roll-call-person p { display: block; }
.roll-call-person strong { font: 900 13px/1.1 Arial, sans-serif; text-transform: uppercase; }
.roll-call-person small { margin-top: 4px; color: rgba(255,255,255,.56); font: 700 9px/1.35 Arial, sans-serif; text-transform: uppercase; }
.roll-call-person p { margin: 7px 0 0; color: var(--engagement-accent); font: 800 11px/1.3 Arial, sans-serif; }
.roll-call-person time, .pulse-row time { color: rgba(255,255,255,.48); font: 900 8px/1 Arial, sans-serif; text-transform: uppercase; }
.class-row { display: grid; grid-template-columns: 28px 1fr auto; gap: 12px; align-items: center; padding: 16px 18px; border-bottom: 1px solid rgba(255,255,255,.13); }
.class-row > b { color: rgba(255,255,255,.4); font: 900 10px/1 Arial, sans-serif; }
.class-row span { display: flex; justify-content: space-between; gap: 10px; }
.class-row span strong { font: 900 11px/1 Arial, sans-serif; }
.class-row span small { color: rgba(255,255,255,.55); font: 800 8px/1 Arial, sans-serif; text-transform: uppercase; }
.class-row i { display: block; height: 5px; margin-top: 9px; background: rgba(255,255,255,.13); }
.class-row i::after { content: ""; display: block; width: var(--score-width); height: 100%; background: var(--engagement-accent); }
.class-row > em { min-width: 32px; color: var(--engagement-accent); font: 900 16px/1 Arial, sans-serif; font-style: normal; text-align: right; }
.score-note { margin: 18px; color: rgba(255,255,255,.48); font: 800 8px/1.4 Arial, sans-serif; letter-spacing: .06em; text-transform: uppercase; }
.pulse-row { grid-template-columns: 48px 1fr; }
.pulse-row strong { display: block; font: 900 13px/1.1 Arial, sans-serif; text-transform: uppercase; }
.pulse-row p { margin: 5px 0 0; color: rgba(255,255,255,.64); font: 500 11px/1.45 Arial, sans-serif; }
.engagement-empty { margin: 18px; padding: 22px; border: 1px dashed rgba(255,255,255,.28); color: rgba(255,255,255,.65); font: 500 12px/1.55 Arial, sans-serif; }
.engagement-empty strong { color: #fff; text-transform: uppercase; }
.engagement-bottom { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid rgba(255,255,255,.22); border-top: 0; }
.engagement-bottom > div { display: grid; grid-template-columns: 1fr auto; column-gap: 26px; padding: 28px; border-right: 1px solid rgba(255,255,255,.22); }
.engagement-bottom > div:last-child { border-right: 0; }
.engagement-bottom small { grid-column: 1 / -1; color: var(--engagement-accent); font: 900 8px/1 Arial, sans-serif; letter-spacing: .12em; }
.engagement-bottom strong { margin-top: 8px; font: 900 31px/.9 Arial, sans-serif; letter-spacing: -.05em; }
.engagement-bottom p { grid-column: 1; margin: 13px 0 0; color: rgba(255,255,255,.65); font: 500 11px/1.55 Arial, sans-serif; }
.engagement-bottom a { grid-column: 2; grid-row: 2 / 4; align-self: center; }

.mobile-school-switch { display: none; }

@media (max-width: 1180px) {
  .classic-weekend-stage { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .classic-weekend-stage .classic-original-flyer { grid-column: 1 / -1; grid-row: 1; width: min(100%, 820px); }
  .pv-reunion-intro, .pv-reunion-rsvp { min-height: 640px; }
}

@media (max-width: 980px) {
  .yard-tabs { grid-template-columns: .55fr repeat(5, 1fr) .55fr; }
  .yard-home { padding: 12px; }
  .yard-tab { padding: 12px; }
  .yard-tab small { display: none; }
  .capsule-header { grid-template-columns: 1fr auto; }
  .capsule-header nav { display: none; }
  .capsule-hero { grid-template-columns: 1fr; }
  .collection-doors { min-height: 540px; }
  .homecoming-countdowns { grid-template-columns: 1fr 1fr; }
  .homecoming-countdowns > header { grid-column: 1 / -1; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.25); }
  .countdown-card:last-child { grid-column: 1 / -1; }
  .school-countdown { grid-template-columns: 1fr; }
  .shop-notice { grid-template-columns: 1fr; }
  .collection-head, .section-intro { grid-template-columns: 1fr; }
  .classic-kickoff { grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr); }
  .classic-kickoff-copy { padding: 32px; }
  .product-grid { grid-template-columns: repeat(2, 1fr); }
  .yard-site-header nav { display: none; }
  .yard-hero { grid-template-columns: 1fr; }
  .yard-hero-art { min-height: 580px; }
  .official-grid { grid-template-columns: 1fr; }
  .official-event { border-right: 0; border-bottom: 1px solid var(--ink); }
  .official-event:last-child { border-bottom: 0; }
  .community-layout { grid-template-columns: 1fr; }
  .engagement-mast, .engagement-bottom { grid-template-columns: 1fr; }
  .engagement-grid { grid-template-columns: 1fr; }
  .engagement-panel { min-height: 0; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.22); }
  .engagement-panel:last-child { border-bottom: 0; }
  .roll-call, .class-board, .school-pulse { max-height: 390px; }
  .engagement-bottom > div { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.22); }
  .engagement-bottom > div:last-child { border-bottom: 0; }
}

@media (max-width: 620px) {
  .capsule-page > .yard-tabs { display: none; }
  .mobile-school-switch { position: sticky; top: 0; z-index: 40; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); background: #111; color: #fff; }
  .mobile-school-switch a { display: grid; min-width: 0; gap: 2px; padding: 12px 9px; border-right: 1px solid rgba(255,255,255,.25); color: #fff; text-decoration: none; }
  .mobile-school-switch a:last-child { border-right: 0; }
  .mobile-school-switch small, .mobile-school-switch span { font: 900 7px/1 Arial, sans-serif; letter-spacing: .09em; text-transform: uppercase; }
  .mobile-school-switch strong { overflow: hidden; font: 900 12px/1.05 Arial, sans-serif; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
  .mobile-school-switch span { margin-top: 4px; opacity: .7; }
  .mobile-school-pv { box-shadow: inset 0 4px var(--gold); }
  .mobile-school-tsu { box-shadow: inset 0 4px #fff; }
  .mobile-school-lamar { box-shadow: inset 0 4px var(--cardinal); }
  .yard-tabs { position: sticky; grid-template-columns: repeat(3, 1fr); min-height: 64px; }
  .yard-home { display: none; }
  .yard-message { display: none; }
  .yard-tab { min-width: 0; padding: 9px 10px; gap: 8px; }
  .yard-tab > span { min-width: 34px; height: 34px; font-size: 10px; }
  .yard-tab strong { font-size: 10px; }
  .yard-tab b { font-size: 14px; }
  .capsule-header, .yard-site-header { min-height: 72px; padding: 14px 18px; }
  .capsule-header > span, .yard-site-header > span { display: none; }
  .capsule-hero { min-height: auto; }
  .hero-copy { min-height: 520px; padding: 36px 20px 24px; }
  .hero-copy h1 { font-size: 74px; }
  .collection-doors { grid-template-columns: 1fr; min-height: 0; }
  .homecoming-countdowns { grid-template-columns: 1fr; }
  .homecoming-countdowns > header, .countdown-card, .countdown-card:last-child { grid-column: auto; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.25); }
  .school-countdown { padding: 42px 18px; gap: 28px; }
  .school-countdown .countdown-units b { font-size: 37px; }
  .collection-doors > a { grid-template-columns: 1fr .8fr; grid-template-rows: none; min-height: 270px; border-left: 0; border-top: 1px solid var(--line); }
  .collection-doors > a > span { align-content: center; border-top: 0; border-left: 1px solid var(--line); }
  .shop-notice, .collection, .experience-bridge, .yard-section { padding-left: 18px; padding-right: 18px; }
  .collection { padding-top: 58px; padding-bottom: 68px; }
  .collection-head { gap: 28px; margin-bottom: 34px; }
  .collection-head h2 { font-size: 68px; }
  .classic-kickoff { grid-template-columns: 1fr; box-shadow: 6px 6px 0 var(--gold); }
  .classic-kickoff-art { min-height: 390px; }
  .classic-kickoff-art::after { background: linear-gradient(0deg, rgba(8,7,8,.92), transparent 46%); }
  .classic-kickoff-copy { padding: 28px 20px 30px; }
  .classic-kickoff-copy h3 { font-size: 57px; }
  .classic-matchup > span { padding: 12px 10px; }
  .classic-matchup > span > strong { font-size: 38px; }
  .classic-matchup small { font-size: 7px; }
  .classic-specials, .classic-location { grid-template-columns: 1fr; }
  .classic-original-flyer { margin-bottom: 46px; }
  .classic-original-flyer > a { box-shadow: 6px 6px 0 var(--gold); }
  .classic-original-flyer > a > span { right: 8px; bottom: 8px; padding: 8px 9px; font-size: 8px; }
  .classic-original-flyer figcaption { display: grid; padding: 16px 0 0; line-height: 1.5; }
  .classic-weekend-stage { grid-template-columns: 1fr; gap: 14px; }
  .classic-weekend-stage .classic-original-flyer { grid-column: auto; grid-row: auto; order: 1; margin-bottom: 4px; }
  .pv-reunion-intro { order: 2; min-height: 590px; box-shadow: -6px 6px 0 var(--gold); }
  .pv-reunion-rsvp { order: 3; min-height: 610px; box-shadow: 6px 6px 0 var(--purple); }
  .pv-reunion-card { padding: 28px 22px; }
  .pv-reunion-card h3 { font-size: 42px; }
  .pv-grooves-flyer { order: 2; box-shadow: -6px 6px 0 var(--gold); }
  .yard-reunion-feature { grid-template-columns: 1fr; padding: 44px 18px; }
  .yard-reunion-copy { padding: 16px 0 0; }
  .yard-reunion-copy h2 { font-size: 54px; }
  .yard-reunion-actions { grid-template-columns: 1fr; }
  .garment-label { grid-template-columns: 42px 1fr; }
  .garment-label p { display: none; }
  .garment-label h3 { font-size: 28px; }
  .product-grid { grid-template-columns: 1fr; }
  .product-copy { min-height: 112px; }
  .experience-bridge { grid-template-columns: 1fr; padding-top: 60px; padding-bottom: 60px; }
  .experience-bridge h2 { font-size: 47px; }
  .capsule-footer, .yard-footer { grid-template-columns: 1fr; padding: 26px 18px; }
  .independent-note { padding: 10px 18px; }
  .yard-hero-copy { min-height: 520px; padding: 40px 20px; }
  .yard-hero-copy h1 { font-size: 76px; }
  .yard-hero-art { min-height: 430px; }
  .yard-hero-ticket { right: 12px; bottom: 12px; }
  .section-intro h2 { font-size: 60px; }
  .official-event { grid-template-columns: 76px 1fr; }
  .band-films { grid-template-columns: 1fr; }
  .form-pair { grid-template-columns: 1fr; gap: 0; }
  .wall-signatures { grid-template-columns: 1fr 1fr; }
  .engagement-section { padding: 54px 16px; }
  .engagement-mast { gap: 28px; }
  .engagement-mast h2 { font-size: 68px; }
  .engagement-totals { grid-template-columns: 1fr; }
  .engagement-totals span { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.22); }
  .engagement-totals span:last-child { border-bottom: 0; }
  .engagement-panel > header { min-height: 92px; }
  .engagement-bottom > div { display: block; }
  .engagement-bottom strong, .engagement-bottom p, .engagement-bottom a { display: block; }
  .engagement-bottom a { margin-top: 18px; text-align: center; }
}

/* Southern University — Columbia blue and gold */
.yard-tab.southern-tab{background:#2d7fae;color:#fff;border-color:#ffc72c}.yard-tab.southern-tab>span{background:#ffc72c;color:#17384c;border-color:#ffc72c}.yard-tab.southern-tab small{color:#e7f5ff}.yard-tab.southern-tab:hover,.yard-tab.southern-tab.active{background:#1d648d;box-shadow:inset 0 -5px #ffc72c}
.school-southern{--school:#5aa7d9;--school-2:#ffc72c;background:#07131e}.countdown-southern{box-shadow:inset 0 5px 0 #ffc72c}.engagement-southern{--engagement-accent:#ffc72c}.mobile-school-southern{box-shadow:inset 0 4px #ffc72c}
.yard-tab.alcorn-tab{background:#512d6d;color:#fff;border-color:#cc8a00}.yard-tab.alcorn-tab>span{background:#cc8a00;color:#160d1d;border-color:#cc8a00}.yard-tab.alcorn-tab small{color:#f3e8f7}.yard-tab.alcorn-tab:hover,.yard-tab.alcorn-tab.active{background:#3e2154;box-shadow:inset 0 -5px #cc8a00}
.school-alcorn{--school:#512d6d;--school-2:#cc8a00;background:#160d1d}.countdown-alcorn{box-shadow:inset 0 5px 0 #cc8a00}.engagement-alcorn{--engagement-accent:#cc8a00}.mobile-school-alcorn{box-shadow:inset 0 4px #cc8a00}
.yard-capsule[data-licensing-pending="true"]{position:relative}.yard-capsule[data-licensing-pending="true"] .yard-capsule-link{pointer-events:none;background:#34243c;color:#f4ebdc}.yard-capsule[data-licensing-pending="true"] .yard-capsule-link:before{content:"LICENSING REVIEW PENDING · ";font-weight:900}
.yard-southern-gameweek{display:grid;grid-template-columns:minmax(320px,.72fr) minmax(0,1fr);min-height:680px;background:#06121d;color:#fff;border-top:8px solid #ffc72c;border-bottom:1px solid #5aa7d9}.southern-gameweek-art{min-height:680px;overflow:hidden}.southern-gameweek-art img{width:100%;height:100%;object-fit:cover;object-position:center 28%}.southern-gameweek-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(32px,6vw,90px)}.southern-gameweek-copy .section-kicker{color:#ffc72c}.southern-gameweek-copy h2{font:900 clamp(54px,8vw,112px)/.82 Arial,sans-serif;letter-spacing:-.065em;margin:14px 0 26px}.southern-gameweek-copy>p:not(.section-kicker){max-width:680px;font-size:clamp(16px,2vw,23px);line-height:1.5}.southern-game-clock{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;max-width:680px;margin:28px 0}.southern-game-clock>strong{display:grid;padding:18px 12px;background:#5aa7d9;color:#07131e}.southern-game-clock span{font:900 clamp(34px,4vw,60px)/1 Arial,sans-serif}.southern-game-clock small{font:800 10px/1.2 Arial,sans-serif;text-transform:uppercase;letter-spacing:.1em}.southern-game-clock em{grid-column:1/-1;color:#b9d9ed;font-style:normal;font-size:12px}.southern-game-actions{display:flex;flex-wrap:wrap;gap:10px}.southern-game-actions a{padding:14px 18px;border:1px solid #ffc72c;color:#fff;font-weight:800;text-transform:uppercase;font-size:12px}.southern-game-actions a:first-child{background:#ffc72c;color:#07131e}
@media(max-width:760px){.yard-southern-gameweek{grid-template-columns:1fr}.southern-gameweek-art{min-height:520px;height:66vh}.southern-gameweek-copy{padding:32px 18px 42px}.southern-gameweek-copy h2{font-size:54px}.southern-game-clock{gap:5px}.southern-game-clock>strong{padding:14px 7px}.southern-game-actions{display:grid}.southern-game-actions a{text-align:center}.mobile-school-switch{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* Prairie View Marching Storm — Texans halftime feature */
.pv-storm-halftime{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);min-height:720px;background:#10071c;color:#fff;border-top:8px solid #f4c430;border-bottom:1px solid rgba(244,196,48,.55)}
.pv-storm-halftime-media{margin:0;padding:34px;background:#050506}
.pv-storm-flyer-frame{display:block;aspect-ratio:651/883;overflow:hidden;background:#09070d;border:1px solid rgba(244,196,48,.55);box-shadow:-12px 12px 0 #4b1682}
.pv-storm-flyer-frame img{width:100%;height:100%;object-fit:cover;object-position:center 44%;transform:scale(1.08)}
.pv-storm-halftime-media figcaption{margin-top:18px;color:rgba(255,255,255,.62);font:800 10px/1.4 Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}
.pv-storm-halftime-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(38px,6vw,92px)}
.pv-storm-halftime-copy .section-kicker{color:#f4c430}
.pv-storm-halftime-copy h2{margin:14px 0 26px;font:900 clamp(58px,8vw,118px)/.8 Arial,sans-serif;letter-spacing:-.07em}
.pv-storm-halftime-copy>p:not(.section-kicker){max-width:720px;margin:0 0 30px;color:rgba(255,255,255,.82);font:600 clamp(17px,2vw,24px)/1.5 Arial,sans-serif}
.pv-storm-halftime-copy dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 28px;border:1px solid rgba(244,196,48,.45)}
.pv-storm-halftime-copy dl>div{padding:18px;border-right:1px solid rgba(244,196,48,.35)}
.pv-storm-halftime-copy dl>div:last-child{border-right:0}
.pv-storm-halftime-copy dt{color:#f4c430;font:900 9px/1 Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}
.pv-storm-halftime-copy dd{margin:8px 0 0;font:800 14px/1.35 Arial,sans-serif}
.pv-storm-halftime-actions{display:flex;flex-wrap:wrap;gap:10px}
.pv-storm-halftime-actions a{padding:15px 19px;border:1px solid #f4c430;color:#fff;font:900 11px/1 Arial,sans-serif;letter-spacing:.07em;text-decoration:none;text-transform:uppercase}
.pv-storm-halftime-actions a:first-child{background:#f4c430;color:#10071c}
@media(max-width:760px){.pv-storm-halftime{grid-template-columns:1fr}.pv-storm-halftime-media{padding:24px 18px}.pv-storm-flyer-frame{box-shadow:-7px 7px 0 #4b1682}.pv-storm-halftime-copy{padding:38px 18px 46px}.pv-storm-halftime-copy h2{font-size:58px}.pv-storm-halftime-copy dl{grid-template-columns:1fr}.pv-storm-halftime-copy dl>div{border-right:0;border-bottom:1px solid rgba(244,196,48,.35)}.pv-storm-halftime-copy dl>div:last-child{border-bottom:0}.pv-storm-halftime-actions{display:grid}.pv-storm-halftime-actions a{text-align:center}}
.alcorn-collection{background:#221229;color:#f5eddf}.alcorn-collection .product-card{color:#111}.alcorn-collection .collection-head a{color:#e7b83e}.licensing-note{margin:28px 0 0;padding:16px;border:1px solid #cc8a00;color:#edd69a;font-size:12px;font-weight:800;letter-spacing:.04em}.nfl-tailgate-door{display:grid;grid-template-columns:1fr minmax(300px,.5fr);min-height:650px;background:#071426;color:#fff;border-top:8px solid #d3202a}.nfl-tailgate-door>div{display:flex;flex-direction:column;justify-content:center;padding:clamp(42px,7vw,100px)}.nfl-tailgate-door p{color:#ff6970;font-size:10px;font-weight:900;letter-spacing:.15em}.nfl-tailgate-door h2{margin:20px 0;font-size:clamp(66px,9vw,140px);line-height:.72;letter-spacing:-.08em}.nfl-tailgate-door span{max-width:620px;font:20px/1.5 Georgia,serif}.nfl-tailgate-door a{align-self:flex-start;margin-top:30px;padding:16px 20px;background:#d3202a;font-size:10px;font-weight:900;letter-spacing:.1em}.nfl-tailgate-door img{width:100%;height:650px;object-fit:contain;background:#03080f;padding:28px}@media(max-width:760px){.nfl-tailgate-door{grid-template-columns:1fr}.nfl-tailgate-door>div{padding:54px 18px}.nfl-tailgate-door h2{font-size:67px}.nfl-tailgate-door img{height:auto;padding:18px}}

/* Expanded 2026 Yard network */
.yard-tabs{display:flex;grid-template-columns:none;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-width:thin}
.yard-tabs>a{flex:0 0 168px;scroll-snap-align:start}.yard-tabs>.yard-home,.yard-tabs>.yard-message{flex-basis:150px}
.yard-tab.famu-tab{background:#ff8200;color:#fff;border-color:#00843d}.yard-tab.famu-tab>span{background:#00843d;color:#fff}.yard-tab.famu-tab.active,.yard-tab.famu-tab:hover{box-shadow:inset 0 -5px #00843d}
.yard-tab.spelhouse-tab{background:#840028;color:#fff;border-color:#75b2dd}.yard-tab.spelhouse-tab>span{background:#75b2dd;color:#102331}.yard-tab.spelhouse-tab.active,.yard-tab.spelhouse-tab:hover{box-shadow:inset 0 -5px #75b2dd}
.yard-tab.cau-tab{background:#c8102e;color:#fff;border-color:#f3c12c}.yard-tab.cau-tab>span{background:#111;color:#fff}.yard-tab.cau-tab.active,.yard-tab.cau-tab:hover{box-shadow:inset 0 -5px #f3c12c}
.yard-tab.jsu-tab{background:#002147;color:#fff;border-color:#fff}.yard-tab.jsu-tab>span{background:#fff;color:#081629}.yard-tab.jsu-tab.active,.yard-tab.jsu-tab:hover{box-shadow:inset 0 -5px #fff}
.network-spelhouse{--school:#840028;--accent:#75b2dd}.network-cau{--school:#c8102e;--accent:#f3c12c}.network-jsu{--school:#002147;--accent:#fff}.network-famu{--school:#ff8200;--accent:#00843d}
.countdown-spelhouse{--countdown:#840028}.countdown-cau{--countdown:#c8102e}.countdown-jsu{--countdown:#002147}.countdown-famu{--countdown:#ff8200}
.spelhouse-button,.cau-button,.jsu-button,.famu-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 18px;border:1px solid currentColor;font-weight:900;text-transform:uppercase}
.spelhouse-button{background:#840028;color:#fff}.cau-button{background:#c8102e;color:#fff}.jsu-button{background:#002147;color:#fff}.famu-button{background:#ff8200;color:#fff}
@media(max-width:780px){.yard-tabs{display:flex!important}.yard-tabs>a{flex-basis:132px}.yard-tabs>.yard-home,.yard-tabs>.yard-message{display:flex;flex-basis:126px}.mobile-school-switch{grid-auto-flow:column;grid-auto-columns:minmax(148px,1fr);grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory}.mobile-school-switch>a{scroll-snap-align:start}}

/* TSU Homecoming Friday / Seaside Lounge */
.tsu-seaside-feature{display:grid;grid-template-columns:minmax(320px,.85fr) minmax(0,1.15fr);background:#14040a;color:#fff;border-top:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16)}
.tsu-seaside-poster{position:relative;min-height:760px;background:#050505;overflow:hidden}
.tsu-seaside-poster a{display:block;width:100%;height:100%}
.tsu-seaside-poster img{display:block;width:100%;height:100%;object-fit:cover}
.tsu-seaside-poster span{position:absolute;right:18px;bottom:18px;padding:13px 16px;background:#fff;color:#6d0f2c;font:900 9px/1 Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}
.tsu-seaside-copy{position:relative;overflow:hidden;padding:clamp(42px,6vw,96px);background:radial-gradient(circle at 86% 15%,rgba(198,255,242,.16),transparent 24%),linear-gradient(145deg,#450619 0%,#761533 48%,#22040d 100%)}
.tsu-seaside-copy::after{content:"TSU";position:absolute;right:-.05em;bottom:-.2em;color:rgba(255,255,255,.045);font:900 clamp(160px,25vw,410px)/.7 Georgia,serif;letter-spacing:-.12em;pointer-events:none}
.tsu-seaside-copy>*{position:relative;z-index:1}
.tsu-seaside-copy .section-kicker{color:#c6fff2}
.tsu-seaside-date{display:flex;align-items:center;gap:16px;margin:clamp(34px,5vw,72px) 0 30px;color:#c6fff2}
.tsu-seaside-date strong{font:900 clamp(78px,10vw,150px)/.7 Georgia,serif;letter-spacing:-.08em}
.tsu-seaside-date span{padding-left:16px;border-left:1px solid currentColor;font:900 11px/1.3 Arial,sans-serif;letter-spacing:.15em}
.tsu-seaside-copy h2{max-width:900px;margin:0;font:900 clamp(52px,8vw,118px)/.78 Arial,sans-serif;letter-spacing:-.075em}
.tsu-seaside-lede{max-width:720px;margin:30px 0 36px;color:rgba(255,255,255,.78);font:700 clamp(15px,1.5vw,20px)/1.55 Arial,sans-serif}
.tsu-seaside-copy dl{display:grid;grid-template-columns:1fr 1fr;margin:0;border-top:1px solid rgba(255,255,255,.28)}
.tsu-seaside-copy dl>div{padding:19px 18px 19px 0;border-bottom:1px solid rgba(255,255,255,.22)}
.tsu-seaside-copy dt{color:#c6fff2;font:900 8px/1 Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase}
.tsu-seaside-copy dd{margin:7px 0 0;color:#fff;font:800 13px/1.45 Arial,sans-serif}
.tsu-seaside-note{max-width:720px;margin:20px 0 0;color:rgba(255,255,255,.58);font:600 10px/1.6 Arial,sans-serif}
.tsu-seaside-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:30px}
.tsu-seaside-actions a{padding:15px 17px;border:1px solid rgba(198,255,242,.55);background:rgba(0,0,0,.2);color:#fff;font:900 9px/1 Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase}
.tsu-seaside-actions a:first-child{background:#c6fff2;color:#5e0b27}
@media(max-width:820px){.tsu-seaside-feature{grid-template-columns:1fr}.tsu-seaside-poster{min-height:0;aspect-ratio:1000/1188}.tsu-seaside-copy dl{grid-template-columns:1fr}.tsu-seaside-actions{display:grid}.tsu-seaside-actions a{text-align:center}}

