/* Base and empty-state styling. Agenda overrides below. */
.sva-events-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.sva-event-card {
    min-height: 250px;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-content: start;
    gap: 22px;
    padding: 28px;
    border: 1px solid #dce2dc;
    border-radius: 22px;
    background: #fff;
    color: #15231a;
    text-decoration: none;
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.sva-event-card:hover,
.sva-event-card:focus-visible {
    transform: translateY(-5px);
    border-color: #88ad76;
    box-shadow: 0 22px 52px rgba(39, 74, 45, .13);
}

.sva-event-card--next {
    background: #315d25;
    border-color: #315d25;
    color: #fff;
}

.sva-event-card__date {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 54px;
    line-height: 1;
}

.sva-event-card__date strong {
    font-size: 2.25rem;
    font-weight: 850;
}

.sva-event-card__date span,
.sva-event-card__label {
    margin-top: 6px;
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.sva-event-card__content {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.sva-event-card__label {
    margin: 4px 0 0;
    color: #568f36;
}

.sva-event-card--next .sva-event-card__label {
    color: #cde5bf;
}

.sva-event-card__title {
    font-size: clamp(1.25rem, 2vw, 1.65rem);
    line-height: 1.08;
}

.sva-event-card__meta {
    margin-top: auto;
    color: #718076;
    font-size: .86rem;
    line-height: 1.5;
}

.sva-event-card--next .sva-event-card__meta {
    color: rgba(255, 255, 255, .76);
}

.sva-event-card__arrow {
    font-size: 1.4rem;
}

.sva-events-empty {
    padding: clamp(28px, 5vw, 54px);
    border: 1px solid #dce2dc;
    border-radius: 22px;
    background: #f3f0e8;
    color: #15231a;
}

.sva-events-empty__eyebrow {
    margin: 0 0 10px;
    color: #568f36;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.sva-events-empty__title {
    margin: 0 0 10px;
    font-size: clamp(1.6rem, 3vw, 2.5rem);
    font-weight: 850;
    line-height: 1.05;
}

.sva-events-empty a {
    display: inline-block;
    margin-top: 14px;
    color: #315d25;
    font-weight: 800;
}

@media (max-width: 1024px) {
    .sva-events-grid {
        grid-template-columns: 1fr;
    }

    .sva-event-card {
        min-height: 0;
    }
}

@media (max-width: 600px) {
    .sva-event-card {
        grid-template-columns: auto 1fr;
        gap: 16px;
        padding: 22px;
    }

    .sva-event-card__arrow {
        display: none;
    }
}

/* Compact date-first agenda. */
.sva-events-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.sva-event-card { grid-template-columns:88px minmax(0,1fr) 28px; align-items:center; align-content:center; gap:24px; padding:26px; min-height:0; background:#fff; border:1px solid #e1e7df; border-radius:10px; color:#15231a; box-shadow:0 6px 18px #15231a06; }
.sva-event-card:hover { color:#15231a; transform:translateY(-3px); border-color:#6aad44; box-shadow:0 12px 28px #15231a12; }
.sva-event-card:focus-visible { outline:3px solid #6aad44; outline-offset:4px; }
.sva-event-card--next { grid-column:1/-1; background:#15231a; color:#fff; border-color:#15231a; padding:30px; }
.sva-event-card--next:hover { color:#fff; }
.sva-event-card__date { gap:5px; padding:12px 24px 12px 0; border-right:1px solid #dfe6dc; color:#487934; font-variant-numeric:tabular-nums; }
.sva-event-card__date strong { font-family:Poppins,sans-serif; font-size:58px; font-weight:700; line-height:1; letter-spacing:-.065em; }
.sva-event-card__date span { margin:0; font-size:11px; font-weight:700; letter-spacing:.12em; line-height:1.3; }
.sva-event-card--next .sva-event-card__date { color:#8fc66c; border-color:#ffffff26; }
.sva-event-card__content { align-items:flex-start; gap:10px; min-width:0; }
.sva-event-card__label { display:flex; align-items:center; gap:7px; margin:0; color:#56813f; font-size:10px; font-weight:700; letter-spacing:.13em; }
.sva-event-card--next .sva-event-card__label { color:#9dce7d; }
.sva-event-card svg { width:16px; height:16px; flex:none; }
.sva-event-card__title { font-family:Poppins,sans-serif; font-size:clamp(19px,1.8vw,25px); line-height:1.22; letter-spacing:-.035em; font-weight:700; overflow-wrap:anywhere; }
.sva-event-card--next .sva-event-card__title { font-size:clamp(24px,2.6vw,34px); }
.sva-event-card__meta { display:flex; flex-wrap:wrap; gap:7px 18px; margin:0; color:#647060; font-size:12px; line-height:1.5; }
.sva-event-card__meta > span { display:flex; align-items:flex-start; gap:7px; }
.sva-event-card__meta svg { margin-top:1px; }
.sva-event-card--next .sva-event-card__meta { color:#d6dfd1; }
.sva-event-card__demo { color:#71816a; font-size:10px; letter-spacing:.03em; }
.sva-event-card__access { display:inline-flex; align-items:center; gap:7px; padding:5px 10px; border-radius:5px; background:#edf3e8; color:#3b622d; font-size:11px; font-weight:600; line-height:1.4; }
.sva-event-card--next .sva-event-card__access { background:#ffffff12; color:#c5e3b0; }
.sva-event-match-info { display:flex; flex-wrap:wrap; align-items:center; gap:8px 14px; margin-top:3px; font-size:12px; font-weight:600; line-height:1.5; }
.sva-event-match-info__open { display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border-radius:6px; background:#8fc66c; color:#15231a; }
.sva-event-match-info__open svg { width:18px; height:18px; flex:none; }
.sva-event-match-info__price { color:inherit; }
.sva-event-detail-info { margin:24px 0; }
.sva-event-card--next .sva-event-card__demo { color:#a6b69d; }
.sva-event-card__arrow { color:#56813f; font-size:26px; }
.sva-event-card--next .sva-event-card__arrow { color:#9dce7d; }
.sva-events-footer { display:flex; justify-content:flex-end; margin-top:26px; }
.sva-events-footer a { display:inline-flex; align-items:center; gap:18px; color:#315d25; font-size:14px; font-weight:700; text-decoration:none; }
.sva-events-footer a:hover { text-decoration:underline; }
.sva-events-footer a span { font-size:23px; color:#6aad44; }
@media(max-width:767px) {
 .sva-events-grid { grid-template-columns:1fr; gap:12px; }
 .sva-event-card,.sva-event-card--next { grid-template-columns:66px minmax(0,1fr); padding:20px 16px; gap:17px; }
 .sva-event-card__date { padding-right:16px; }
 .sva-event-card__date strong { font-size:48px; }
 .sva-event-card__arrow { display:none; }
 .sva-event-card__meta { flex-direction:column; }
 .sva-event-card--next .sva-event-card__title { font-size:23px; }
}
@media(prefers-reduced-motion:reduce) { .sva-event-card { transition:none; } }

/* Informational cards, deliberately without single-event navigation. */
.sva-event-card--ucl,.sva-event-card--ucl:hover { background:radial-gradient(ellipse at 100% 100%,#6132a4 0,transparent 60%),linear-gradient(120deg,#060e38,#142e87); color:#fff; border-color:#294994; overflow:hidden; isolation:isolate; }
.sva-event-card--ucl .sva-event-card__date { color:#a5c7ff; border-color:#ffffff33; }
.sva-event-card--ucl .sva-event-card__label { color:#b8d6ff; }
.sva-event-card--ucl .sva-event-card__meta { color:#e0e7ff; }
.sva-event-card--ucl .sva-event-card__access { color:#fff; background:#ffffff19; }
.sva-event-card--ucl .sva-event-card__content,.sva-event-card--ucl .sva-event-card__date,.sva-event-card--ucl > .sva-event-match-info { z-index:1; }
.sva-event-ucl-mark { position:absolute; right:-25px; top:50%; transform:translateY(-50%); width:300px; max-width:50%; opacity:.18; mix-blend-mode:screen; pointer-events:none; z-index:-1; }
.sva-event-bayern-mark { position:absolute; right:28px; bottom:24px; width:48px; height:48px; object-fit:contain; }
.sva-event-card--ucl .sva-event-card__title { padding-right:45px; }
@media(max-width:1024px) {
 .sva-event-card.sva-event-card--ucl:has(.sva-event-bayern-mark) { padding-bottom:80px; }
}

.sva-event-card { position:relative; grid-template-columns:88px minmax(0,1fr); }
.sva-event-card:hover { transform:none; border-color:#e1e7df; box-shadow:0 6px 18px #15231a06; }
.sva-event-card--next:hover { border-color:#15231a; }
.sva-event-card__badges { display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px; }
.sva-event-card__badges .sva-event-match-info { margin:0; }
.sva-event-card--next > .sva-event-match-info { position:absolute; top:22px; right:30px; margin:0; }
.sva-event-card--next:has(> .sva-event-match-info) .sva-event-card__label { min-height:34px; padding-right:300px; }
@media(max-width:767px) {
 .sva-event-card { grid-template-columns:66px minmax(0,1fr); }
 .sva-event-card--next > .sva-event-match-info { position:static; grid-column:1/-1; justify-content:flex-end; grid-row:1; }
 .sva-event-card--next:has(> .sva-event-match-info) .sva-event-card__label { min-height:0; padding-right:0; }
}
