/**
 * Leistungsbox Content Element Styles
 */

/* Base Styles */
.ce-leistungsbox {
    margin-bottom: 2rem;
}

.ce-leistungsbox__icon-wrapper {
    text-align: center;
}

.ce-leistungsbox__icon-container {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.ce-leistungsbox__icon-container img {
    max-width: 100%;
    height: auto;
}

/* Icon Background Styles */
.ce-leistungsbox__icon-container--circle {
    border-radius: 50%;
    padding: 1.5rem;
    background-color: var(--bs-light, #f8f9fa);
}

.ce-leistungsbox__icon-container--square {
    border-radius: 0.5rem;
    padding: 1.5rem;
    background-color: var(--bs-light, #f8f9fa);
}

.ce-leistungsbox__icon-container--circle-primary {
    border-radius: 50%;
    padding: 1.5rem;
    background-color: var(--bs-primary, #0d6efd);
}

.ce-leistungsbox__icon-container--circle-primary img {
    filter: brightness(0) invert(1);
}

.ce-leistungsbox__icon-container--square-primary {
    border-radius: 0.5rem;
    padding: 1.5rem;
    background-color: var(--bs-primary, #0d6efd);
}

.ce-leistungsbox__icon-container--square-primary img {
    filter: brightness(0) invert(1);
}

.ce-leistungsbox__icon-container--circle-secondary {
    border-radius: 50%;
    padding: 1.5rem;
    background-color: var(--bs-secondary, #6c757d);
}

.ce-leistungsbox__icon-container--circle-secondary img {
    filter: brightness(0) invert(1);
}

.ce-leistungsbox__icon-container--square-secondary {
    border-radius: 0.5rem;
    padding: 1.5rem;
    background-color: var(--bs-secondary, #6c757d);
}

.ce-leistungsbox__icon-container--square-secondary img {
    filter: brightness(0) invert(1);
}

/* Column Styles */
.ce-leistungsbox__column {
    padding: 0;
}

.ce-leistungsbox__header {
    margin-bottom: 1rem;
}

.ce-leistungsbox__content {
    color: var(--bs-body-color, #212529);
}

.ce-leistungsbox__content ul {
    padding-left: 1.25rem;
    margin-bottom: 0;
}

.ce-leistungsbox__content li {
    margin-bottom: 0.5rem;
}

.ce-leistungsbox__content li:last-child {
    margin-bottom: 0;
}

/* ===================================
   LAYOUT: Cards (mit Schatten)
   =================================== */
.ce-leistungsbox--cards .ce-leistungsbox__card {
    background-color: #fff;
    border-radius: 0.5rem;
    padding: 1.5rem;
    height: 100%;
    transition: box-shadow 0.3s ease, transform 0.3s ease;
}

.ce-leistungsbox--cards .ce-leistungsbox__card:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
    transform: translateY(-2px);
}

/* ===================================
   LAYOUT: Boxed (mit Hintergrund)
   =================================== */
.ce-leistungsbox--boxed .ce-leistungsbox__boxed-wrapper {
    background-color: var(--bs-light, #f8f9fa);
    border-radius: 0.75rem;
}

/* ===================================
   LAYOUT: Minimal (nur Text)
   =================================== */
.ce-leistungsbox--minimal .ce-leistungsbox__header {
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
}

.ce-leistungsbox--minimal .ce-leistungsbox__content {
    font-size: 0.95rem;
}

/* ===================================
   LAYOUT: Icon links/rechts
   =================================== */
.ce-leistungsbox--icon-left .ce-leistungsbox__icon-wrapper,
.ce-leistungsbox--icon-right .ce-leistungsbox__icon-wrapper {
    flex-shrink: 0;
}

/* ===================================
   Responsive Adjustments
   =================================== */
@media (max-width: 767.98px) {
    .ce-leistungsbox__column {
        margin-bottom: 1.5rem;
    }

    .ce-leistungsbox__column:last-child {
        margin-bottom: 0;
    }

    .ce-leistungsbox--cards .ce-leistungsbox__card {
        padding: 1.25rem;
    }

    .ce-leistungsbox--boxed .ce-leistungsbox__boxed-wrapper {
        padding: 1.25rem !important;
    }
}
