/* =========================================================
   1. INTERAKTIVE PREMIUM-KARTEN (Nie wieder abgeschnitten!)
   ========================================================= */
.interactive-benefits {
    padding: 100px 5%;
    background-color: var(--brand-light);
    margin-top: -60px;
    position: relative;
    z-index: 10;
}

.interactive-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 24px;
    max-width: 1200px;
    margin: 0 auto;
}

/* Die Hauptkarte */
.premium-hover-card {
    background: #ffffff;
    border-radius: 16px;
    border: 1px solid #E2E8F0;
    padding: 40px 30px;
    
    /* FIX 1: Flexible Mindesthöhe statt starrer Höhe! 
       Schneidet garantiert nie wieder Text ab. */
    min-height: 380px; 
    position: relative;
    overflow: hidden;
    
    /* FIX 2: Ein Grid-Layout sorgt dafür, dass Vorne & Hinten perfekt übereinander liegen */
    display: grid;
    align-items: start;
    
    /* FIX 3: Feste 3 Sekunden Animation */
    transition: transform 30s ease-in-out, 
                box-shadow 30s ease-in-out,
                background-color 30s ease-in-out,
                border-color 30s ease-in-out;
}

/* Der rote Akzentbalken */
.premium-hover-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 4px;
    background: #ef4444;
    transition: background-color 3s ease-in-out, height 3s ease-in-out;
}

.premium-hover-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 30px 60px -15px rgba(15, 23, 42, 0.08);
    border-color: #BFDBFE;
    background: #F8FAFC;
}

.premium-hover-card:hover::before {
    background: var(--brand-blue);
    height: 6px;
}

/* Die Zustands-Container */
.card-state-front, .card-state-back {
    /* Beide Container teilen sich exakt denselben Platz in der Grid-Zelle */
    grid-area: 1 / 1; 
    display: flex;
    flex-direction: column;
    
    /* Feste 3 Sekunden für das Ein/Ausblenden */
    transition: opacity 3s ease-in-out, transform 3s ease-in-out;
}

/* Startzustand */
.card-state-front {
    opacity: 1;
    transform: translateY(0);
    z-index: 2;
}

.card-state-back {
    opacity: 0;
    transform: translateY(15px);
    pointer-events: none;
    z-index: 1;
}

/* HOVER-EFFEKT */
.premium-hover-card:hover .card-state-front {
    opacity: 0;
    transform: translateY(-15px);
    pointer-events: none;
}

.premium-hover-card:hover .card-state-back {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

/* Icons & Texte */
.card-icon svg {
    width: 42px; height: 42px; margin-bottom: 20px;
}
.red-icon svg { stroke: #ef4444; }
.blue-icon svg { stroke: var(--brand-blue); }

.card-title {
    font-size: 19px; font-weight: 800; color: var(--brand-dark); margin-bottom: 12px; line-height: 1.3;
}
.text-blue { color: var(--brand-blue); }

.card-desc {
    font-size: 14.5px; color: var(--brand-text); line-height: 1.6;
}

/* =========================================================
   2. CATERLOGIC IN ZAHLEN (Vertrauen)
   ========================================================= */
.stats-section {
    padding: 100px 5%; background-color: #ffffff; text-align: center;
}
.stats-title {
    font-size: 32px; font-weight: 800; color: var(--brand-dark); margin-bottom: 60px;
}
.stats-grid {
    display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 40px; max-width: 1000px; margin: 0 auto;
}
.stat-item .stat-number {
    font-size: 56px; font-weight: 800; color: #ef4444; line-height: 1; margin-bottom: 10px;
}
.stat-item .stat-text {
    font-size: 16px; font-weight: 600; color: var(--brand-dark);
}

/* =========================================================
   3. KLARE VORTEILE / 4ER GRID
   ========================================================= */
.benefits-clear {
    padding: 80px 5%; background-color: var(--brand-light);
}
.benefits-grid {
    display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 30px; max-width: 1200px; margin: 0 auto;
}
.benefit-box {
    background: #ffffff; padding: 35px 30px; border-radius: 16px; text-align: center; border: 1px solid #E2E8F0;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.benefit-box:hover {
    transform: translateY(-5px); box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.05);
}
.benefit-box .check-icon {
    width: 44px; height: 44px; border-radius: 50%; border: 2px solid #ef4444; color: #ef4444; display: flex; align-items: center; justify-content: center; margin: 0 auto 20px auto;
}
.benefit-box h4 {
    font-size: 18px; font-weight: 700; color: var(--brand-dark); margin-bottom: 12px;
}
.benefit-box p {
    font-size: 14.5px; color: var(--brand-text); line-height: 1.6;
}