.ce_iconbox .ce_iconbox_inside {
    border-radius: 20px;
    overflow: hidden;
    background: #B9ceac; /* nur falls nötig */
    padding: 50px; /* 30px oben/unten, 20px rechts/links */
}
.ce_iconbox .ce_iconbox_inside::before {
    border-radius: 20px;
}


@media (max-width: 767px) {

    .autogrid_row {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        align-items: stretch;
    }

    .autogrid_row > .column {
        width: calc(50% - 5px) !important;
        flex: 0 0 calc(50% - 5px) !important;
        max-width: calc(50% - 5px) !important;
        display: flex;
    }
}

@media (max-width: 767px) {
    .ce_iconbox .ce_iconbox_inside {
        min-height: 275px;
    }
}

@media (max-width: 767px) {
  .mobile-crop img {
    height: 250px;
    width: 100%;
    object-fit: cover;
  }
}
/* Flipbox – Optik wie die Iconboxen */

.ce_flipbox_frontside,
.ce_flipbox_backside {
    border-radius: 20px;
    overflow: hidden;
}

.ce_flipbox_frontside::before,
.ce_flipbox_backside::before {
    border-radius: 20px;
}

.ce_flipbox_frontside_inside,
.ce_flipbox_backside_inside {
    padding: 50px;
}

.ce_flipbox .hyperlink_txt {
    position: absolute;
    inset: 0;
    z-index: 10;

    /* Text unsichtbar */
    font-size: 0;
    color: transparent;

    /* Link über die gesamte Box */
    display: block;
    width: 100%;
    height: 100%;
}


/* =========================================
   SPEISEPLAN
   ========================================= */

.speiseplan table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}


/* Kopfzeile + erste Spalte */
.speiseplan thead th,
.speiseplan tbody td:first-child {
    font-family: inherit;
    font-weight: 700;
    font-size: 1.25rem !important;
    line-height: 1.3;
    text-align: left;
}

/* =========================================
   SPEISEPLAN – MOBILE
   ========================================= */

@media (max-width: 767px) {

    .speiseplan thead th,
    .speiseplan tbody td:first-child {
        font-size: 1rem !important;
        font-weight: 700 !important;
        line-height: 1.3 !important;
    }

}


/* Kopfzeile */
.speiseplan thead th {
    padding: 15px 12px;
    border-bottom: 1px solid #d9d9d9;
}


/* Erste Spalte – wie die Kopfzeile */
.speiseplan tbody td:first-child {
    padding: 15px 12px;
    background-color: var(--accent-color);
    color: #fff;
}


/* Normale Zellen */
.speiseplan tbody td {
    padding: 15px 12px;
    vertical-align: top;
}


/* Horizontale Trenner */
.speiseplan tbody tr {
    border-bottom: 1px solid #d9d9d9;
}


/* Vertikale Trenner – erst unterhalb der Kopfzeile */
.speiseplan tbody td + td {
    border-left: 1px solid #d9d9d9;
}


/* Letzte Zeile */
.speiseplan tbody tr:last-child {
    border-bottom: none;
}

.speiseplan tbody td:first-child {
    background-color: #b9ceac;
}