.widget-service-cards {
    max-width: 1120px;
    margin: 0 auto;
    padding: var(--wl-section-spacing, 4rem) 1.5rem;
}

.service-cards__head {
    max-width: 620px;
    margin: 0 auto 2.5rem;
    text-align: center;
}

.service-cards__eyebrow {
    display: block;
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-weight: 700;
    opacity: 0.45;
    margin-bottom: 0.9rem;
}

.widget-service-cards__title {
    font-size: clamp(1.6rem, 3vw, 2.2rem);
    font-weight: 700;
    letter-spacing: -0.03em;
    margin: 0;
}

.service-cards__subtitle {
    margin: 0.75rem 0 0;
    font-size: 0.95rem;
    line-height: 1.6;
    opacity: 0.6;
}

.service-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 1.25rem;
}

.service-card {
    background: #fff;
    border: 1px solid rgba(27, 29, 45, 0.08);
    border-radius: var(--wl-radius, 1rem);
    padding: 1.6rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.service-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--wl-shadow, 0 16px 40px rgba(27, 29, 45, 0.09));
}

.service-card__icon {
    width: 2.9rem;
    height: 2.9rem;
    border-radius: calc(var(--wl-radius, 1rem) * 0.75);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    background: linear-gradient(135deg, rgba(118,231,210,0.35), rgba(167,125,245,0.30));
    margin-bottom: 0.6rem;
}

.service-card__title { margin: 0; font-size: 1.1rem; font-weight: 700; }
.service-card__text { margin: 0; font-size: 0.9rem; line-height: 1.6; opacity: 0.7; }

.service-card__link {
    margin-top: auto;
    padding-top: 0.9rem;
    font-size: 0.85rem;
    font-weight: 600;
    text-decoration: none;
    color: var(--color-primary);
}

.service-card__link:hover { text-decoration: underline; }

/* Eigene dunkle Hintergrundfarbe (siehe render.php, Color::isDark()) --
   die Standard-Textfarbe ist dunkel und waere auf dunklem Grund
   unlesbar, deshalb hier komplett auf hell umgeschaltet. Der Icon-Verlauf
   bleibt gleich (bleibt auf dunklem Grund gut sichtbar), nur etwas
   kraeftiger, damit er sich vom dunklen Hintergrund abhebt. */
.service-card--on-dark {
    color: #fafbfd;
    border-color: rgba(255, 255, 255, 0.12);
}

.service-card--on-dark .service-card__icon {
    background: linear-gradient(135deg, rgba(118, 231, 210, 0.5), rgba(167, 125, 245, 0.45));
}

.service-card--on-dark .service-card__title { color: #fafbfd; }
.service-card--on-dark .service-card__text { color: #fafbfd; opacity: 0.75; }
.service-cards .service-card--on-dark .service-card__link {
    /* Hoehere Spezifitaet noetig: manche Themes (z.B. fils-studio) setzen
       ".service-card__link { color: var(--fs-ink); }" mit derselben
       Spezifitaet wie eine einfache ".service-card--on-dark .service-
       card__link"-Regel und wuerden sie sonst je nach Ladereihenfolge
       ueberschreiben. */
    color: #a7e8db;
}
