.events-page{max-width:70rem;margin-inline:0;padding:2.625rem 1.75rem;font-family:Inter18pt,sans-serif}.events-page-title{font-family:ManropeExtraBold,sans-serif;font-size:1.75rem;font-weight:800;color:var(--foreground);margin-bottom:.4375rem}.events-page-subtitle{color:var(--muted-foreground);font-size:.875rem;margin-bottom:1.75rem}.events-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3125rem}.events-card{background:var(--card);border:1px solid var(--border);border-radius:.4375rem;overflow:hidden;transition:box-shadow .2s ease,transform .2s ease;text-decoration:none;color:inherit;display:flex;flex-direction:column}.events-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.events-card-image{width:100%;height:10.5rem;object-fit:cover;display:block}.events-card-placeholder{width:100%;height:10.5rem;background:linear-gradient(135deg,var(--primary),var(--accent));display:flex;align-items:center;justify-content:center;color:var(--primary-foreground);font-size:2.1875rem;font-weight:700;opacity:.85}.events-card-body{padding:.875rem 1.0938rem 1.0938rem;display:flex;flex-direction:column;gap:.4375rem;flex:1}.events-card-title{font-family:ManropeExtraBold,sans-serif;font-size:1.0062rem;font-weight:700;color:var(--foreground);margin:0;line-height:1.3}.events-card-date,.events-card-location{font-size:.7656rem;color:var(--muted-foreground)}.events-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:.4375rem}.events-card-price{font-weight:600;font-size:.8312rem;color:var(--foreground)}.events-card-price--free{background:var(--success);color:#fff;padding:.1313rem .525rem;border-radius:9999px;font-size:.6562rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.events-card-spots{font-size:.7rem;color:var(--muted-foreground)}.events-card-recurring{font-size:.6125rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:.1313rem .4813rem;border-radius:9999px;background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 25%,transparent)}.events-empty{text-align:center;padding:3.5rem .875rem;color:var(--muted-foreground)}.events-empty-title{font-family:ManropeExtraBold,sans-serif;font-size:1.3125rem;color:var(--foreground);margin-bottom:.4375rem}.event-detail{max-width:70rem;margin-inline:auto;padding:2.625rem 1.75rem;font-family:Inter18pt,sans-serif}.event-back-link{display:inline-flex;align-items:center;gap:.3062rem;color:var(--muted-foreground);text-decoration:none;font-size:.7656rem;margin-bottom:1.3125rem;transition:color .15s}.event-back-link:hover{color:var(--foreground)}.event-hero{margin-bottom:1.75rem}.event-hero-image{width:100%;height:17.5rem;object-fit:cover;border-radius:.4375rem;margin-bottom:1.3125rem}.event-title{font-family:ManropeExtraBold,sans-serif;font-size:1.75rem;font-weight:800;color:var(--foreground);margin:0 0 .875rem;line-height:1.2}.event-meta{display:flex;flex-wrap:wrap;gap:.875rem 1.75rem;color:var(--muted-foreground);font-size:.8312rem;margin-bottom:1.3125rem}.event-meta-item{display:flex;align-items:center;gap:.35rem}.event-badge{display:inline-block;padding:.175rem .6125rem;border-radius:9999px;font-size:.6562rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.event-badge--free{background:var(--success);color:#fff}.event-badge--virtual{background:var(--accent);color:var(--accent-foreground)}.event-badge--paid{background:var(--primary);color:var(--primary-foreground)}.event-badge--recurring{background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 25%,transparent)}.event-description{color:var(--foreground);line-height:1.7;margin-bottom:2.1875rem}.event-description p{margin-bottom:.875rem}.event-description{margin-bottom:1.75rem;padding:1.0938rem 1.3125rem;background:var(--card);border:1px solid var(--border);border-radius:var(--radius)}.event-description__text{font-size:.8312rem;line-height:1.7;color:var(--muted-foreground);white-space:pre-line;margin:0}.event-description__toggle{display:inline-block;margin-top:.4375rem;padding:0;background:none;border:none;font-size:.7438rem;font-weight:600;color:var(--primary);cursor:pointer;transition:opacity .15s}.event-description__toggle:hover{opacity:.8}.event-video{position:relative;width:100%;padding-bottom:56.25%;height:0;overflow:hidden;border-radius:var(--radius,.4375rem);background:#000;margin-bottom:1.75rem}.event-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.event-video-link{margin-bottom:1.75rem;padding:.875rem 1.0938rem;background:var(--card);border:1px solid var(--border);border-radius:var(--radius,.4375rem);font-size:.7875rem}.event-video-link a{color:var(--primary);font-weight:600;text-decoration:none}.event-video-link a:hover{text-decoration:underline}.event-register-layout{display:grid;grid-template-columns:3fr 2fr;gap:1.3125rem;align-items:start}.event-register-main{padding:1.75rem}.event-register-main,.event-register-side{background:var(--card);border:1px solid var(--border);border-radius:.4375rem}.event-register-side{padding:1.3125rem;position:sticky;top:1.75rem}.event-donate-header{margin-bottom:1.3125rem;padding-bottom:.875rem;border-bottom:1px solid var(--border)}.event-donate-title{font-size:.9625rem;font-weight:700;color:var(--foreground);margin:0 0 .4375rem}.event-donate-desc{font-size:.7438rem;line-height:1.6;color:var(--muted-foreground);margin:0}.event-form-section{background:var(--card);border:1px solid var(--border);border-radius:.4375rem;padding:1.75rem}.event-form-title{font-family:ManropeExtraBold,sans-serif;font-size:1.1813rem;font-weight:700;color:var(--foreground);margin:0 0 1.3125rem}.event-form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.875rem;margin-bottom:.875rem}.event-form-field{display:flex;flex-direction:column;gap:.3062rem;margin-bottom:.875rem}.event-form-label{font-size:.7438rem;font-weight:600;color:var(--foreground)}.event-form-input{padding:.525rem .7rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--background);color:var(--foreground);font-size:.8312rem;font-family:inherit;transition:border-color .15s,box-shadow .15s}.event-form-input:focus{outline:none;border-color:var(--ring);box-shadow:0 0 0 2px color-mix(in srgb,var(--ring) 25%,transparent)}.event-form-input::placeholder{color:var(--muted-foreground);opacity:.6}.event-form-input--error,.event-form-input--error:focus{border-color:var(--destructive)}.event-form-input--error:focus{box-shadow:0 0 0 2px color-mix(in srgb,var(--destructive) 25%,transparent)}.event-field-error{display:block;font-size:.6825rem;color:var(--destructive);margin-top:.2188rem}.event-form-select{padding:.525rem .7rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--background);color:var(--foreground);font-size:.8312rem;font-family:inherit;cursor:pointer}.event-form-select:focus{outline:none;border-color:var(--ring);box-shadow:0 0 0 2px color-mix(in srgb,var(--ring) 25%,transparent)}.event-form-submit{display:inline-flex;align-items:center;justify-content:center;gap:.4375rem;padding:.6125rem 1.575rem;background:var(--primary);color:var(--primary-foreground);border:none;border-radius:var(--radius);font-size:.875rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s;margin-top:.4375rem;width:100%}.event-form-submit:hover:not(:disabled){background:var(--primary-hover)}.event-form-submit:disabled{opacity:.6;cursor:not-allowed}.event-form-error{background:color-mix(in srgb,var(--destructive) 10%,transparent);border:1px solid var(--destructive);color:var(--destructive);padding:.6562rem .875rem;border-radius:var(--radius);font-size:.7875rem;margin-bottom:.875rem}.event-form-success{background:color-mix(in srgb,var(--success) 10%,transparent);border:1px solid var(--success);color:var(--success);padding:1.3125rem;border-radius:var(--radius);text-align:center}.event-form-success-title{font-family:ManropeExtraBold,sans-serif;font-size:1.0938rem;font-weight:700;margin-bottom:.4375rem}.event-capacity-closed{text-align:center;padding:1.3125rem;background:color-mix(in srgb,var(--warning) 10%,transparent);border:1px solid var(--warning);border-radius:var(--radius);color:var(--warning);font-weight:600}.event-donate-amounts{display:flex;gap:.4375rem;flex-wrap:wrap;margin-bottom:.6562rem}.event-donate-pill{padding:.4375rem 1.0938rem;border:1px solid var(--border);border-radius:var(--radius,.3281rem);background:var(--card);color:var(--foreground);font-weight:600;font-size:.7875rem;cursor:pointer;transition:all .15s}.event-donate-pill--active,.event-donate-pill:hover{border-color:var(--primary)}.event-donate-pill--active{background:var(--primary);color:var(--primary-foreground)}@media (max-width:1024px){.events-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.events-grid{grid-template-columns:1fr}.event-detail,.events-page{padding:1.75rem .875rem}.event-form-row{grid-template-columns:1fr}.event-hero-image{height:12.25rem}.event-title{font-size:1.3125rem}.event-register-layout{grid-template-columns:1fr}.event-register-side{position:static}.event-register-main{padding:1.0938rem}}.event-occurrence-select{display:flex;flex-direction:column;gap:.35rem;width:100%;box-sizing:border-box;max-height:240px;overflow-y:auto;padding:.5687rem .7rem;border:1px solid var(--border);border-radius:var(--radius,.4375rem);background:var(--card);color:var(--foreground)}.event-occurrence-select__all{display:flex;align-items:center;gap:.4813rem;font-weight:600;color:var(--foreground);cursor:pointer;padding-bottom:.3937rem;border-bottom:1px solid var(--border)}.event-occurrence-select__list{display:flex;flex-direction:column;gap:.3062rem;padding-top:.1313rem}.event-occurrence-select__option{display:flex;align-items:center;gap:.4813rem;color:var(--foreground);cursor:pointer;font-size:.7875rem;line-height:1.35;word-break:break-word}.event-occurrence-select__all input,.event-occurrence-select__option input{width:16px;height:16px;flex:0 0 auto;accent-color:var(--primary);cursor:pointer}@media (max-width:640px){.event-occurrence-select{max-height:200px;padding:.4813rem .5687rem}.event-occurrence-select__option{font-size:.7438rem}}