.upcoming-event-card{display:flex;gap:3rem;border-radius:16px;border:1px solid var(--BG-2---Beige, #d8d6ce);background:var(--neutral-1-white, #fff);padding:1.5rem;transition:transform .3s ease,box-shadow .3s ease;position:relative;height:100%}.upcoming-event-card:hover{transform:translateY(-4px)}.upcoming-event-card .card-image-wrapper{position:relative;width:45%;flex-shrink:0;border-radius:8px;overflow:hidden}.upcoming-event-card .card-image-wrapper:after{content:"";position:absolute;top:50%;transform:translateY(-50%);right:0;width:0;height:0;border-top:32px solid transparent;border-bottom:32px solid transparent;border-right:24px solid white}.upcoming-event-card .card-image-wrapper img{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:4 / 3}.upcoming-event-card .badge{position:absolute;top:0;left:3rem;display:inline-block;font-family:var(--font-body);font-weight:700;font-size:12px;text-transform:uppercase;padding:6px 12px;border-bottom-left-radius:8px;border-bottom-right-radius:8px;letter-spacing:.5px;background:linear-gradient(to right,#ff960b,#ff6632);color:#fff;z-index:2}.upcoming-event-card .badge--upcoming{background:linear-gradient(to right,#ff960b,#ff6632)}.upcoming-event-card .badge--completed{background:var(--gradient-green)}.upcoming-event-card .card-content{flex:1;display:flex;flex-direction:column}.upcoming-event-card .event-title{font-family:var(--font-display);font-weight:800;font-size:clamp(1.75rem,3vw,2.5rem);line-height:1.2;color:var(--brand-purple);text-transform:uppercase;margin:0 0 1rem;text-align:left}.upcoming-event-card .event-meta{display:flex;flex-direction:row;align-items:center;gap:.75rem;margin:0 0 .5rem}.upcoming-event-card .event-location{font-family:var(--font-body);font-size:1.05rem;font-weight:700;color:#333;margin:0}.upcoming-event-card .event-type-tag{display:inline-block;font-family:var(--font-body);font-size:.75rem;font-weight:600;color:var(--brand-purple);border:1.5px solid var(--brand-purple);padding:2px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.upcoming-event-card .event-date{font-family:var(--font-body);font-size:.95rem;color:#666;margin:0 0 1rem;line-height:1.4}.upcoming-event-card .event-description{font-family:var(--font-body);font-size:.95rem;color:#444;margin:0 0 1.5rem;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.upcoming-event-card .card-actions{display:flex;gap:1rem;margin-top:auto}.upcoming-event-card .btn-outline{display:inline-flex;align-items:center;padding:.75rem 1.25rem;border:2px solid var(--brand-purple);color:var(--brand-purple);background:transparent;text-decoration:none;font-family:var(--font-body);font-weight:500;font-size:.9rem;letter-spacing:.5px;text-transform:uppercase;border-radius:8px;transition:all .3s ease;cursor:pointer}.upcoming-event-card .btn-outline:hover{background-color:var(--brand-purple);color:#fff}.upcoming-event-card .btn-outline:focus{outline:2px solid var(--brand-purple);outline-offset:2px}.upcoming-event-card .btn-filled{display:inline-flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem;background:var(--Brand-Dark-Plum, #821545);color:#fff;text-decoration:none;font-family:var(--font-body);font-weight:500;font-size:.9rem;letter-spacing:.5px;text-transform:uppercase;border-radius:8px;transition:all .3s ease;cursor:pointer}.upcoming-event-card .btn-filled:hover{background-color:#450728;transform:translate(4px);color:#fff}.upcoming-event-card .btn-filled:focus{outline:2px solid var(--brand-purple);outline-offset:2px}.upcoming-event-card .arrow-icon{object-fit:contain;transition:transform .3s ease}.upcoming-event-card .btn-filled:hover .arrow-icon{transform:translate(4px)}@media(max-width:1023px){.upcoming-event-card{padding:1.5rem;gap:1.5rem}.upcoming-event-card .card-image-wrapper{width:40%}.upcoming-event-card .event-title{font-size:clamp(1.5rem,2.5vw,2rem)}}@media(max-width:767px){.upcoming-event-card{flex-direction:column;padding:1.25rem;gap:1.25rem}.upcoming-event-card .card-image-wrapper{width:100%}.upcoming-event-card .card-image-wrapper img{aspect-ratio:16 / 9}.upcoming-event-card .event-title{font-size:clamp(1.25rem,5vw,1.75rem)}.upcoming-event-card .event-description{-webkit-line-clamp:2}.upcoming-event-card .card-actions{flex-direction:column}.upcoming-event-card .btn-outline,.upcoming-event-card .btn-filled{width:100%;justify-content:center}}
