/* ============================================================================
 * Component: standorte — clubs cards + Leaflet mini-map.
 * ========================================================================= */

.rc-st {
    padding: 56px 16px;
    background: #F8FAFB;
    color: #1A1F26;
    font-family: 'ProximaNova', 'Proxima Nova', 'Noto Sans', sans-serif;
}
.rc-st *, .rc-st *::before, .rc-st *::after { box-sizing: border-box; }

.rc-st-head { text-align: center; max-width: 760px; margin: 0 auto 36px; }
.rc-st-eyebrow {
    display: inline-block;
    font-family: 'Plakkaat', 'ProximaNova', sans-serif;
    font-size: 12px; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase;
    color: #00A356; background: #E6F9F0; padding: 6px 14px; border-radius: 999px; margin-bottom: 16px;
}
.rc-st-h2 {
    font-family: 'ProximaNova', sans-serif; font-weight: 800; font-size: 28px;
    line-height: 1.15; letter-spacing: -0.015em; margin: 0 0 12px;
}
.rc-st-lead { font-size: 17px; color: #555E6B; margin: 0; line-height: 1.55; }

.rc-st-layout {
    max-width: 1180px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
}
@media (min-width: 900px) {
    .rc-st-layout { grid-template-columns: 1.2fr 1fr; align-items: stretch; }
}

.rc-st-map {
    width: 100%;
    min-height: 280px;
    height: 100%;
    border-radius: 18px;
    overflow: hidden;
    background: #E7EDF1;
    border: 1px solid #E1E6EB;
    z-index: 0;
}
@media (min-width: 900px) { .rc-st-map { min-height: 380px; } }

.rc-st-grid { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 12px; }
.rc-st-card {
    background: #FFFFFF; border: 1px solid #EFF1F4; border-radius: 14px;
    box-shadow: 0 3px 10px rgba(0,0,0,0.04);
    transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}
.rc-st-card:hover { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(15,23,42,0.10); border-color: #BFECD7; }
.rc-st .rc-st-link {
    display: flex; align-items: center; gap: 14px; padding: 16px 18px;
    text-decoration: none !important; color: #1A1F26;
}
.rc-st-pin { flex: 0 0 auto; display: inline-flex; }
.rc-st-info { flex: 1; display: flex; flex-direction: column; gap: 2px; }
.rc-st-name { font-weight: 700; font-size: 16px; color: #1A1F26; }
.rc-st-street { font-size: 13.5px; color: #6B7280; }
.rc-st-arrow { color: #00A356; font-size: 18px; flex: 0 0 auto; transition: transform 0.15s ease; }
.rc-st-card:hover .rc-st-arrow { transform: translateX(3px); }

/* Leaflet popup brand tweak */
.rc-st-map .leaflet-popup-content { font-family: 'ProximaNova', sans-serif; font-size: 13px; }
.rc-st-map .leaflet-popup-content a { color: #00A356; font-weight: 700; text-decoration: none; }

@media (min-width: 768px) {
    .rc-st { padding: 80px 32px; }
    .rc-st-h2 { font-size: 36px; }
}
