.events-hero{position:relative}.events-hero__layout{display:flex;flex-direction:column;gap:var(--space-8)}.events-hero__content{max-width:40rem}.events-hero__eyebrow{margin-bottom:var(--space-4)}.events-hero__actions{margin-top:var(--space-5);display:flex;flex-wrap:wrap;gap:var(--space-3)}.events-hero__meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);margin-top:var(--space-6)}.events-hero__meta-item{background:rgba(255,255,255,0.86);border-radius:var(--radius-xl);padding:var(--space-4);border:1px solid var(--color-border-soft);box-shadow:var(--shadow-soft)}.events-hero__meta-label{font-size:var(--font-size-sm);color:var(--color-text-soft);margin-bottom:0}.events-hero__image-wrapper{margin-top:var(--space-4)}.events-hero__image{width:100%;border-radius:var(--radius-lg);object-fit:cover}.events-hero__badge{position:absolute;bottom:1.5rem;left:1.5rem}.events-types__grid{gap:var(--space-6)}.events-types__image-wrapper{margin-bottom:var(--space-4);border-radius:var(--radius-lg);overflow:hidden}.events-types__image{width:100%;height:100%;object-fit:cover}.events-types__cta-row{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-4)}.events-list{margin-top:var(--space-2);margin-bottom:var(--space-2);display:flex;flex-direction:column;gap:0.4rem;font-size:var(--font-size-sm);color:var(--color-text-soft)}.events-list--compact{gap:0.25rem}.events-list li::before{content:"•";margin-right:0.4rem;color:var(--color-secondary)}.events-note{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-top:var(--space-2)}.events-disclaimer{font-size:var(--font-size-xs);color:var(--color-danger);margin-top:var(--space-3)}.events-group__layout{gap:var(--space-6);align-items:stretch}.events-group__cta-row{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-4)}.events-menu__grid{display:grid;grid-template-columns:1fr;gap:var(--space-4);margin-top:var(--space-4);margin-bottom:var(--space-3)}.events-menu__link{margin-top:var(--space-2)}.events-calendar__grid{gap:var(--space-6);align-items:stretch}.events-calendar__img{width:100%;border-radius:var(--radius-lg);object-fit:cover}.events-calendar__content{display:flex;flex-direction:column;gap:var(--space-4)}.events-calendar__list{display:flex;flex-direction:column;gap:var(--space-4)}.events-calendar__item{display:flex;gap:var(--space-4)}.events-calendar__date{min-width:6rem;display:flex;flex-direction:column;gap:0.25rem;font-size:var(--font-size-sm);color:var(--color-text-soft)}.events-calendar__day{font-weight:600;color:var(--color-text)}.events-calendar__time{opacity:0.8}.events-calendar__info h3{font-size:var(--font-size-base);margin-bottom:var(--space-2)}.events-calendar__info p{margin-bottom:0;font-size:var(--font-size-sm)}.events-calendar__cta-row{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-2)}.events-gallery__layout{gap:var(--space-6);align-items:center}.events-gallery__image{width:100%;border-radius:var(--radius-lg);object-fit:cover}.events-reviews .carousel__slide{padding:var(--space-5)}.events-review__text{font-size:var(--font-size-sm);line-height:var(--line-relaxed);color:var(--color-text-soft);margin-bottom:var(--space-4)}.events-review__meta{display:flex;flex-direction:column;gap:0.25rem;font-size:var(--font-size-xs);color:var(--color-text-muted)}.events-review__author{font-weight:600;color:var(--color-text)}.events-review__tag{padding:0.2rem 0.7rem;border-radius:var(--radius-pill);background:rgba(148,163,184,0.12);align-self:flex-start}.events-reviews__cta{margin-top:var(--space-4);display:flex;justify-content:center;flex-wrap:wrap;gap:var(--space-3)}.events-faq__layout{gap:var(--space-6);align-items:flex-start}.events-faq .faq{margin-top:var(--space-2)}@media(min-width:768px){.events-hero__layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center}.events-hero__image-wrapper{margin-top:0}.events-hero__meta{grid-template-columns:repeat(3,minmax(0,1fr))}.events-menu__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.events-hero__layout{gap:var(--space-10)}.events-calendar__date{min-width:7rem}}