.events-page,.classes-page,.instructors-page{max-width:var(--page-max-width);padding:2rem var(--page-gutter) 4rem;width:100%;margin:0 auto}.events-page-header,.classes-page-header{margin-bottom:var(--space-3xl-4xl)}.events-page-title{font-size:var(--heading-size);font-weight:var(--heading-weight);letter-spacing:var(--heading-tracking);color:var(--text-color);margin:0 0 .4rem}.events-page-subtitle{font-size:var(--text-md);color:var(--accent-color);margin:0;font-weight:300}.events-section{margin-bottom:var(--section-spacing)}.events-section-title{font-size:var(--text-xl);letter-spacing:-.01em;color:var(--text-color);margin:0 0 var(--space-lg);font-weight:400}.events-grid{gap:var(--page-gutter);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.instructor-grid{gap:var(--page-gutter);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.scroll-section{margin-bottom:var(--space-3xl-4xl)}.scroll-header{margin-bottom:var(--space-lg);justify-content:space-between;align-items:center;display:flex}.scroll-title{font-size:var(--text-xl);letter-spacing:-.01em;color:var(--text-color);font-weight:400}.scroll-arrows{gap:var(--space-xs);display:flex}.scroll-arrow{border-radius:var(--radius-full);background:var(--bg-color);width:32px;height:32px;box-shadow:4px 4px 8px var(--shadow-dark), -4px -4px 8px var(--shadow-light);cursor:pointer;font-size:var(--text-md);color:var(--accent-color);border:none;justify-content:center;align-items:center;font-family:inherit;transition:box-shadow .2s;display:flex}.scroll-arrow:hover{box-shadow:inset 3px 3px 6px var(--shadow-dark), inset -3px -3px 6px var(--shadow-light)}.scroll-track{gap:var(--space-xl-2xl);scroll-behavior:smooth;padding:var(--space-xl-2xl);scrollbar-width:none;-webkit-overflow-scrolling:touch;margin-left:-20px;margin-right:-20px;display:flex;overflow-x:auto}.scroll-track::-webkit-scrollbar{display:none}.scroll-track>*{flex-shrink:0;width:260px}.scroll-track>.scroll-card--wide{width:320px}.filter-bar{gap:var(--space-sm);margin-bottom:var(--space-2xl);flex-wrap:wrap;display:flex}.filter-pill{font-family:inherit;font-size:var(--text-xs);padding:var(--space-sm) var(--space-lg-xl);border-radius:var(--chip-radius,24px);cursor:pointer;background:var(--bg-color);color:var(--accent-color);box-shadow:3px 3px 6px var(--shadow-dark), -3px -3px 6px var(--shadow-light);transition:all .2s var(--ease-out-quint);letter-spacing:.04em;text-transform:uppercase;border:none;font-weight:500}.filter-pill:hover{color:var(--text-color)}.filter-pill.active{box-shadow:inset 3px 3px 6px var(--shadow-dark), inset -3px -3px 6px var(--shadow-light);color:var(--text-color);font-weight:600}.event-filter-bar{justify-content:space-between;align-items:center;gap:var(--space-lg);margin-bottom:var(--space-xl);flex-wrap:wrap;display:flex}.event-filter-chips{align-items:center;gap:var(--space-sm-md);flex-wrap:wrap;display:flex}.event-filter-chip{font-family:inherit;font-size:var(--text-sm-);letter-spacing:.03em;color:var(--accent-color);background:var(--bg-color);padding:var(--chip-padding);border-radius:var(--chip-radius);cursor:pointer;box-shadow:3px 3px 6px var(--shadow-dark), -3px -3px 6px var(--shadow-light);transition:box-shadow .2s var(--ease-out-quint), color .2s, transform .2s;white-space:nowrap;border:none;font-weight:400}.event-filter-chip:hover{color:var(--text-color);box-shadow:2px 2px 4px var(--shadow-dark), -2px -2px 4px var(--shadow-light);transform:translateY(1px)}.event-filter-chip--active{color:var(--text-color);box-shadow:inset 3px 3px 6px var(--shadow-dark), inset -3px -3px 6px var(--shadow-light);font-weight:500;transform:translateY(0)}.event-filter-chip--active:hover{box-shadow:inset 3px 3px 6px var(--shadow-dark), inset -3px -3px 6px var(--shadow-light);transform:translateY(0)}.event-filter-count{font-size:var(--text-sm-);color:var(--accent-color);letter-spacing:.03em;white-space:nowrap;font-weight:300}@media (max-width:640px){.event-filter-chips{gap:var(--space-sm)}.event-filter-chip{font-size:var(--text-xs);padding:var(--space-xs) var(--space-md-lg)}.event-filter-bar{flex-direction:column;align-items:flex-start}}.hero-grid{gap:var(--space-xl-2xl);margin-bottom:var(--space-3xl-4xl);grid-template-columns:1fr 1fr;display:grid}.hero-card{border-radius:var(--card-radius);box-shadow:var(--card-shadow);aspect-ratio:16/9;color:var(--color-white);transition:box-shadow .3s var(--ease-out-quint);text-decoration:none;display:block;position:relative;overflow:hidden}.hero-card:hover{box-shadow:var(--card-shadow-hover)}.hero-card-img{background:var(--placeholder-bg);position:absolute;inset:0}.hero-card-img img{object-fit:cover}.hero-card-overlay{padding:var(--space-xl-2xl);background:linear-gradient(#0000,#00000080);position:absolute;bottom:0;left:0;right:0}.hero-card-title{font-size:var(--text-xl);margin:0 0 var(--space-2xs);font-weight:500}.hero-card-sub{font-size:var(--text-sm-);opacity:.85;margin:0;font-weight:300}.hero-card-price{top:var(--space-md);right:var(--space-md);background:var(--bg-color);padding:var(--space-2xs) var(--space-md);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-color);font-weight:600;position:absolute;box-shadow:2px 2px 4px #0000001f}.two-col{gap:var(--space-2xl-3xl);grid-template-columns:1fr 1fr;display:grid}.col-header{font-size:var(--text-base);color:var(--text-color);margin-bottom:var(--space-lg);padding-bottom:var(--space-sm);border-bottom:1px solid #0000000f;font-weight:500}.col-cards{gap:var(--space-lg);flex-direction:column;display:flex}.freq-badge{font-size:var(--text-2xs);letter-spacing:.08em;text-transform:uppercase;padding:3px var(--space-sm);border-radius:var(--radius-sm);background:var(--bg-color);color:var(--color-warm-accent);box-shadow:2px 2px 4px var(--shadow-dark), -2px -2px 4px var(--shadow-light);font-weight:600;display:inline-block}.registration-note{margin:var(--space-2xl) 0;padding:var(--space-lg) var(--space-xl);border-radius:var(--radius-xl);background:var(--bg-color);box-shadow:inset 3px 3px 6px var(--shadow-dark), inset -3px -3px 6px var(--shadow-light);text-align:center}.registration-note p{font-size:var(--text-sm-);color:var(--accent-color);margin:0 0 var(--space-xs);font-weight:300}.registration-note a{font-size:var(--text-xs);color:var(--text-color);border-bottom:1px solid var(--accent-color);text-decoration:none;transition:border-color .2s}.registration-note a:hover{border-color:var(--text-color)}.event-detail{max-width:900px;padding:2rem var(--page-gutter) 4rem;width:100%;margin:0 auto;overflow-x:hidden}.event-detail-hero{aspect-ratio:16/8;border-radius:var(--card-radius);width:100%;margin-bottom:var(--space-2xl);background:var(--placeholder-bg);box-shadow:var(--card-shadow);position:relative;overflow:hidden}.event-detail-hero img{object-fit:cover}.event-detail-badges{gap:var(--space-sm);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.event-type-badge{padding:var(--space-2xs) var(--space-md);border-radius:var(--radius-sm);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;font-weight:600;display:inline-block}.event-type-badge--class{background:var(--badge-class);color:var(--color-white)}.event-type-badge--workshop{background:var(--badge-workshop);color:var(--color-white)}.event-type-badge--community{background:var(--badge-community);color:var(--color-white)}.event-type-badge--experience{background:var(--badge-experience);color:var(--color-white)}.event-skill-badge{padding:var(--space-2xs) var(--space-md);border-radius:var(--radius-sm);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;background:var(--bg-color);color:var(--accent-color);box-shadow:2px 2px 4px var(--shadow-dark), -2px -2px 4px var(--shadow-light);font-weight:600;display:inline-block}.event-detail-title{font-size:var(--text-4xl);letter-spacing:-.02em;color:var(--text-color);margin:0 0 var(--space-2xs);font-weight:400;line-height:1.2}.event-detail-subtitle{font-size:var(--text-base);color:var(--accent-color);margin:0 0 var(--space-xl);font-style:italic;font-weight:300}.event-meta{gap:var(--space-lg);padding:var(--space-xl-2xl) 0;margin-bottom:var(--space-xl);border-top:1px solid #0000000f;border-bottom:1px solid #0000000f;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.event-meta-item{gap:var(--space-3xs);flex-direction:column;display:flex}.event-meta-label{font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:.08em;color:var(--accent-color);font-weight:600}.event-meta-value{font-size:var(--text-md);color:var(--text-color)}.event-description{font-size:var(--text-md);color:var(--accent-color);margin-bottom:var(--space-2xl);line-height:1.7}.event-description p{margin:0 0 var(--space-lg)}.event-sessions{margin:var(--space-2xl) 0}.event-sessions h3{font-size:var(--text-lg);color:var(--text-color);margin:0 0 var(--space-lg);font-weight:500}.session-list{gap:var(--space-sm);flex-direction:column;display:flex}.session-item{align-items:center;gap:var(--space-lg);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-lg);background:var(--bg-color);box-shadow:3px 3px 6px var(--shadow-dark), -3px -3px 6px var(--shadow-light);display:flex}.session-date{font-size:var(--text-md);color:var(--text-color);min-width:180px;font-weight:500}@media (max-width:640px){.session-date{min-width:0}.session-item{gap:var(--space-sm);flex-wrap:wrap}}.session-label{font-size:var(--text-sm-);color:var(--accent-color);flex:1}.session-status{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;padding:3px var(--space-sm);border-radius:var(--radius-xs);font-weight:600}.session-status--scheduled{color:#229646;background:#22c55e1f}.session-status--full{color:#c83232;background:#ef44441f}.session-status--waitlist{color:#c87828;background:#fb923c1f}.event-instructors{margin:var(--space-2xl) 0}.event-instructors h3{font-size:var(--text-lg);color:var(--text-color);margin:0 0 var(--space-lg);font-weight:500}.event-prerequisites{margin:var(--space-xl) 0;padding:var(--space-lg) var(--space-xl-2xl);border-radius:var(--radius-lg);background:var(--bg-color);box-shadow:inset 3px 3px 6px var(--shadow-dark), inset -3px -3px 6px var(--shadow-light)}.event-prerequisites h4{font-size:var(--text-sm);color:var(--color-info);margin:0 0 var(--space-sm);font-weight:600}.event-prerequisites ul{padding:0 0 0 var(--space-xl-2xl);margin:0;list-style:outside}.event-prerequisites li{font-size:var(--text-sm);color:var(--accent-color);margin:var(--space-2xs) 0}.event-prerequisites a{color:var(--color-info);text-decoration:none}.event-prerequisites a:hover{text-decoration:underline}.events-empty{text-align:center;padding:var(--space-3xl) var(--space-lg);color:var(--accent-color);font-size:var(--text-base);font-weight:300}@media (max-width:768px){.events-grid{grid-template-columns:1fr}.instructor-grid{grid-template-columns:repeat(2,1fr)}.hero-grid,.two-col{grid-template-columns:1fr}.event-detail-title{font-size:var(--text-2xl)}.event-meta{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.events-page,.classes-page,.instructors-page{padding:var(--space-xl) var(--space-lg) var(--space-3xl)}.scroll-track>*{width:220px}}@media (max-width:480px){.instructor-grid{grid-template-columns:1fr}}.registration-banner{margin-top:var(--space-3xl);padding:var(--space-3xl-4xl);text-align:center;border-radius:var(--card-radius);background:var(--bg-color);box-shadow:var(--shadow-sm);border:1px solid var(--shadow-dark)}.registration-banner h3{font-size:var(--text-2xl);color:var(--text-color);margin-bottom:var(--space-sm);font-weight:500}.registration-banner p{color:var(--accent-color);margin-bottom:var(--space-xl)}.registration-banner a{padding:var(--space-md) var(--space-xl);border-radius:var(--radius-md);background:var(--text-color);color:var(--bg-color);font-weight:500;text-decoration:none;transition:opacity .2s;display:inline-block}.registration-banner a:hover{opacity:.8}