.format-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}@media (max-width: 960px){.format-grid{grid-template-columns:1fr}}.format-card{border:1px solid var(--gray-200);background:var(--white);border-radius:var(--radius-3xl);padding:28px;scroll-margin-top:96px;display:flex;flex-direction:column;gap:14px}.format-card--feature{border:2px solid var(--brand-500);box-shadow:0 20px 40px -24px #c2410c73}.format-days{font-size:14px;font-weight:600;color:var(--gray-500);text-transform:uppercase;letter-spacing:.06em}.format-days span{font-family:var(--font-display);font-weight:800;font-size:72px;line-height:.8;color:var(--brand-500);margin-right:4px;letter-spacing:0}.format-card h3{font-family:var(--font-display);font-weight:800;font-size:36px;text-transform:uppercase;line-height:1}.format-meta{margin:0;display:grid;gap:10px;padding:14px 0;border-top:1px solid var(--gray-100);border-bottom:1px solid var(--gray-100)}.format-meta dt{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--gray-500)}.format-meta dd{margin:2px 0 0;font-size:14.5px;color:var(--fg-secondary);line-height:1.5}.format-card .checklist li{font-size:14.5px}.day-flow{list-style:none;margin:0;padding:0;position:relative;display:grid;gap:0}.day-flow li{position:relative;padding:0 0 22px 36px}.day-flow li:before{content:"";position:absolute;left:6px;top:6px;width:14px;height:14px;border-radius:50%;background:var(--brand-500);box-shadow:0 0 0 4px var(--brand-100)}.day-flow li:after{content:"";position:absolute;left:12px;top:24px;bottom:0;width:2px;background:var(--gray-200)}.day-flow li:last-child:after{display:none}.day-flow h3{font-size:17px}.day-flow p{margin-top:4px;font-size:15px;line-height:1.6}.band-table{border:1px solid var(--gray-200);border-radius:var(--radius-2xl);overflow:hidden;background:var(--white)}.band-table-row{display:grid;grid-template-columns:1.3fr .8fr 1fr 1.2fr;gap:12px;padding:16px 22px;border-top:1px solid var(--gray-100);font-size:15.5px;color:var(--fg-secondary)}.band-table-row a{font-weight:600;color:var(--fg-primary)}.band-table-row a:hover{color:var(--fg-brand)}.band-table-head{border-top:0;background:var(--gray-50);font-family:var(--font-mono);font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--gray-500)}@media (max-width: 640px){.band-table-row{grid-template-columns:1fr 1fr}.band-table-head{display:none}}.upcoming-title{font-size:20px;margin-bottom:14px}.upcoming-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.upcoming-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;padding:16px 18px;background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-xl)}.upcoming-icon{width:44px;height:44px;border-radius:var(--radius-lg);background:var(--hue-bg);color:var(--hue-ic);display:inline-flex;align-items:center;justify-content:center}.upcoming-when{font-family:var(--font-mono);font-size:12.5px;color:var(--gray-500)}.upcoming-what{font-weight:600;font-size:16px;color:var(--fg-primary);margin-top:2px}.upcoming-where{font-size:14px;color:var(--fg-tertiary);margin-top:2px}@media (max-width: 560px){.upcoming-item{grid-template-columns:auto minmax(0,1fr)}.upcoming-item .btn{grid-column:1 / -1}}.upcoming-empty{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 26px;border:1px dashed var(--brand-300);border-radius:var(--radius-2xl);background:var(--brand-25)}.upcoming-empty h3{font-size:18px}.upcoming-empty p{margin-top:6px;font-size:15px;max-width:640px}@media (max-width: 640px){.upcoming-empty{flex-direction:column;align-items:flex-start}}.band-jump{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}.band-jump a{display:inline-flex;align-items:baseline;gap:8px;padding:10px 16px;border-radius:var(--radius-full);border:1px solid var(--gray-300);background:var(--white);font-size:15px}.band-jump a span{font-family:var(--font-mono);font-size:12.5px;color:var(--fg-brand)}.band-jump a:hover{border-color:var(--brand-400)}.band-section{scroll-margin-top:72px}.band-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:start}@media (max-width: 900px){.band-layout{grid-template-columns:1fr;gap:32px}}.band-ages{font-family:var(--font-display);font-weight:800;font-size:clamp(64px,9vw,110px);line-height:.85;color:var(--brand-500)}.band-intro .h2{margin-top:8px;text-transform:uppercase}.band-headline{margin-top:10px;font-size:19px;font-weight:600;color:var(--fg-primary)}.band-detail h3{font-size:18px;margin-bottom:16px}.band-sports{margin-top:22px;display:flex;flex-wrap:wrap;gap:6px 12px;font-size:14px;color:var(--gray-500);align-items:baseline}.band-sports a{color:var(--fg-brand);font-weight:600}.season-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}@media (max-width: 860px){.season-columns{grid-template-columns:1fr}}.season-column{border:1px solid var(--gray-200);border-radius:var(--radius-2xl);padding:24px;background:var(--white)}.season-column-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding-bottom:14px;border-bottom:1px solid var(--gray-100);margin-bottom:12px}.season-column-head h2{font-family:var(--font-display);font-weight:800;font-size:30px;text-transform:uppercase;line-height:1}.season-column-head span{font-family:var(--font-mono);font-size:12px;color:var(--gray-500)}.season-column ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.season-column a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-md);font-weight:600}.season-column a svg{color:var(--hue-ic)}.season-column a:hover{background:var(--hue-bg);color:var(--hue-fg)}.tryout-table{display:grid;gap:12px}.tryout-row{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;align-items:start;padding:22px 24px;border:1px solid var(--gray-200);border-left:4px solid var(--hue-ic);background:var(--white);border-radius:var(--radius-xl)}@media (max-width: 800px){.tryout-row{grid-template-columns:1fr;gap:14px}}.tryout-row-sport{display:flex;align-items:center;gap:12px}.tryout-row-sport h3{font-family:var(--font-display);font-weight:800;font-size:26px;text-transform:uppercase;line-height:1}.tryout-row dl{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px}@media (max-width: 600px){.tryout-row dl{grid-template-columns:1fr}}.tryout-row dt{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--gray-500)}.tryout-row dd{margin:3px 0 0;font-size:14.5px;line-height:1.5;color:var(--fg-secondary)}
