.eventCard{background-color:var(--color-surface-container-lowest);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);transition:transform var(--transition-normal), box-shadow var(--transition-normal);border:1px solid #012d1d0d;overflow:hidden}.eventCard:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.eventCard--finished{opacity:.7;filter:grayscale(.4)}.eventCard--finished:hover{filter:grayscale(0);opacity:1}.eventCard--featured{flex-direction:column;display:flex}@media (min-width:768px){.eventCard--featured{flex-direction:row}}.eventCard__image-wrap{flex-shrink:0;position:relative;overflow:hidden}.eventCard--featured .eventCard__image-wrap{height:256px}.eventCard--list .eventCard__image-wrap{width:100%;height:128px}@media (min-width:768px){.eventCard--featured .eventCard__image-wrap{width:50%;height:auto}.eventCard--list .eventCard__image-wrap{flex-shrink:0;width:192px;height:128px}}.eventCard__image{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-slow)}.eventCard:hover .eventCard__image{transform:scale(1.05)}.eventCard__date-badge{top:var(--space-sm);left:var(--space-sm);background-color:var(--color-primary);color:var(--color-on-primary);padding:var(--space-sm);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);flex-direction:column;align-items:center;min-width:48px;display:flex;position:absolute}.eventCard__date-month{font-family:var(--font-body);font-size:var(--fs-label-sm);font-weight:var(--fw-bold);text-transform:uppercase}.eventCard__date-day{font-family:var(--font-headline);font-size:var(--fs-headline-md);font-weight:var(--fw-bold);line-height:1}.eventCard__body{padding:var(--space-md);flex-direction:column;flex-grow:1;display:flex}@media (min-width:768px){.eventCard--featured .eventCard__body{padding:var(--space-lg)}}.eventCard__meta-row{align-items:center;gap:var(--space-xs);margin-bottom:var(--space-xs);flex-wrap:wrap;display:flex}.eventCard__featured-badge{padding:var(--space-base) var(--space-sm);background-color:var(--color-secondary-container);color:var(--color-on-secondary-container);border-radius:var(--radius-full);font-family:var(--font-body);font-size:var(--fs-label-sm);font-weight:var(--fw-bold);display:inline-block}.eventCard__date-label{font-family:var(--font-body);font-size:var(--fs-label-md);font-weight:var(--fw-bold);color:var(--color-primary)}.eventCard__dot{color:var(--color-outline-variant)}.eventCard__location{font-family:var(--font-body);font-size:var(--fs-label-sm);color:var(--color-outline);align-items:center;gap:2px;display:flex}.eventCard__location-icon{font-size:16px}.eventCard__title{font-family:var(--font-headline);font-size:var(--fs-headline-md);font-weight:var(--fw-semibold);color:var(--color-primary);line-height:var(--lh-headline);margin-bottom:var(--space-xs);transition:color var(--transition-fast)}.eventCard:hover .eventCard__title{color:var(--color-secondary)}.eventCard__description{font-family:var(--font-body);font-size:var(--fs-body-md);color:var(--color-on-surface-variant);line-height:var(--lh-body);-webkit-line-clamp:2;margin-bottom:var(--space-md);-webkit-box-orient:vertical;flex-grow:1;display:-webkit-box;overflow:hidden}.eventCard__footer{align-items:center;gap:var(--space-sm);flex-wrap:wrap;justify-content:space-between;display:flex}.eventCard__time,.eventCard__capacity{align-items:center;gap:var(--space-base);font-family:var(--font-body);font-size:var(--fs-label-md);font-weight:var(--fw-medium);color:var(--color-primary);display:flex}.eventCard__time-icon{font-size:18px}.eventCard__cta{padding:var(--space-xs) var(--space-md);background-color:var(--color-primary);color:var(--color-on-primary);border-radius:var(--radius-lg);font-family:var(--font-body);font-size:var(--fs-label-md);font-weight:var(--fw-medium);text-align:center;transition:background-color var(--transition-fast), transform var(--transition-fast);text-decoration:none;display:inline-block}.eventCard__cta:hover{background-color:var(--color-primary-container);transform:scale(.98)}.eventCard__cta--disabled{background-color:var(--color-surface-variant);color:var(--color-on-surface-variant);cursor:not-allowed}.eventCard--list{flex-direction:column;display:flex}@media (min-width:768px){.eventCard--list{flex-direction:row;align-items:center}}
