/* Grid */
.events-grid{
    display:grid; gap:18px;
    grid-template-columns:1fr;
}
@media (min-width:900px){
    .events-grid{ grid-template-columns:1fr 1fr; }
}

/* Card */
.event-card{
    background:#3e3d40; border:0;
    border-radius:14px; overflow:hidden;
}

/* Media */
.event-media{ aspect-ratio:16/9; background:#2b2723; }
.event-media img{ width:100%; height:100%; object-fit:cover; display:block; }

/* Banner-Erkennung (≈2:1) */
.event-media--banner{ aspect-ratio:2/1; }
.event-media--banner img{ object-fit:contain; background:#2b2723; }

/* Content */
.event-content{ padding:16px 16px 18px; }
.event-title{ margin:0 0 6px; font-size:20px; color:#f6f3ee; }
.event-meta{ color:#cfc7bd; font-size:14px; display:flex; gap:10px; flex-wrap:wrap; margin:0 0 8px; }
.event-summary{ color:#e9e3da; margin:8px 0 14px; }

/* Buttons */
.btn-row{ display:flex; gap:10px; flex-wrap:wrap; }
.btn{ text-decoration:none; padding:10px 12px; border-radius:10px; font-weight:700; }
.btn-primary{ background:#d6a354; color:#1b140b; }
.btn-primary:hover{ background:#e3b869; }
.btn-ghost{ border:1px solid #3a332d; color:#cfc7bd; }

/* (Optional) kleine Badge */
.badge { display:inline-flex; gap:6px; align-items:center; padding:6px 10px;
    border:1px solid #2b2723; background:#201c18; color:#cfc7bd; border-radius:8px; font-size:13px; }

.btn-primary {
    background: #287621 !important;   /* neues Grün */
    border-color: #287621 !important;
    color: #fff;           /* weißer Text für guten Kontrast */
}

.btn-primary:hover {
    background: #2f8c27; /* etwas helleres Grün beim Hover */
    color: #287621 !important;
}
p.event-summary {
    font-size: 0.8rem;
}