.events-hero-media{position:relative;max-width:480px;margin:0 auto}.events-hero-media__frame{border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-strong);border:1px solid rgba(148,163,184,.6);background:radial-gradient(circle at top left,rgba(0,193,106,.18),transparent 55%),var(--color-surface)}.events-hero-media__image{width:100%;height:100%;object-fit:cover}.events-hero-media__caption{padding:var(--space-3);font-size:var(--font-size-xs);color:var(--color-text-soft);background:linear-gradient(to bottom,rgba(15,23,42,.92),rgba(15,23,42,.98))}.events-hero-media__badges{position:absolute;inset-inline:var(--space-3);bottom:var(--space-3);display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:flex-end}.events-calendar-header{align-items:flex-start}.events-calendar-legend{display:flex;flex-wrap:wrap;gap:var(--space-3);font-size:var(--font-size-xs)}.events-calendar-table-wrapper{max-height:420px;overflow:auto;margin-top:var(--space-2);border-radius:var(--radius-md);border:1px solid var(--color-border-subtle)}.events-calendar-table{min-width:100%}.events-calendar-note{font-size:var(--font-size-xs);color:var(--color-text-soft);max-width:22rem}.events-fast-signup{align-self:flex-start}.events-quick-form{display:flex;flex-direction:column;gap:var(--space-4)}.events-sports-layout{display:grid;gap:var(--space-6)}.events-sports-media__frame{border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-strong);border:1px solid rgba(56,189,248,.5);background:radial-gradient(circle at top right,rgba(59,130,246,.28),transparent 55%),var(--color-surface)}.events-sports-media__caption{padding:var(--space-3);font-size:var(--font-size-xs);color:var(--color-text-soft);background:linear-gradient(to bottom,rgba(15,23,42,.92),rgba(15,23,42,.98))}.events-sports-list{margin:0 0 var(--space-3) 1.1rem}.events-rules-grid{align-items:stretch}.events-special-layout{display:grid;gap:var(--space-6)}.events-special-media__frame{border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-strong);border:1px solid rgba(250,204,21,.6);background:radial-gradient(circle at top,rgba(234,179,8,.25),transparent 55%),var(--color-surface)}.events-special-media__caption{padding:var(--space-3);font-size:var(--font-size-xs);color:var(--color-text-soft);background:linear-gradient(to bottom,rgba(15,23,42,.92),rgba(15,23,42,.98))}.events-testimonials-grid{align-items:stretch}.events-booking-layout{display:grid;gap:var(--space-6)}.events-booking-card-wrapper{display:grid;gap:var(--space-6)}.events-booking-card{max-width:32rem;margin-inline:auto}.events-booking-form-footer{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-2)}.events-booking-note{font-size:var(--font-size-xs);color:var(--color-text-soft)}.events-faq{border-radius:var(--radius-lg);border:1px solid var(--color-border-subtle);background-color:var(--color-surface-soft)}.events-faq-item+.events-faq-item{border-top:1px solid var(--color-border-subtle)}.events-faq-question{width:100%;padding:var(--space-4);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);color:var(--color-text);font-size:var(--font-size-md);text-align:left}.events-faq-icon{width:1.25rem;height:1.25rem;border-radius:999px;border:1px solid var(--color-border-strong);position:relative;flex-shrink:0}.events-faq-icon::before,.events-faq-icon::after{content:"";position:absolute;top:50%;left:50%;background-color:var(--color-text-soft);transform:translate(-50%,-50%)}.events-faq-icon::before{width:8px;height:1px}.events-faq-icon::after{width:1px;height:8px}.events-faq-item[aria-expanded=true] .events-faq-icon::after{display:none}.events-faq-answer{padding:0 var(--space-4) var(--space-4);font-size:var(--font-size-sm)}@media(min-width:768px){.events-hero-media{max-width:520px}.events-sports-layout{grid-template-columns:minmax(0,1.1fr)minmax(0,.9fr);align-items:center}.events-special-layout{grid-template-columns:minmax(0,1.1fr)minmax(0,.9fr);align-items:center}.events-booking-layout{grid-template-columns:minmax(0,1.1fr)minmax(0,.9fr);align-items:flex-start}.events-booking-card-wrapper{grid-template-columns:minmax(0,1.4fr)minmax(0,1fr);align-items:flex-start}.events-booking-card{max-width:none;margin-inline:0}}@media(min-width:1024px){.events-calendar-table{min-width:640px}}