.datenschutz-section {
    padding-top: calc(var(--space-desktop-6) * 0.5);
    padding-bottom: var(--space-desktop-30);
}

@media (max-width: 1024px) {
   .datenschutz-section {
      padding-top: calc(var(--space-desktop-6) * 0.5);
      padding-bottom: var(--space-desktop-30);
   }
}

.datenschutz-section-title {
    color: var(--color-content-heading);
    font-size: var(--h3-font-size);
    line-height: var(--lh-fluid-lx);
    font-weight: bold;
    margin-bottom: 0;
}

.datenschutz-section-title-intro {
    color: var(--color-content-heading);
    font-size: var(--h5-font-size);
    font-weight: 300;
    line-height: var(--lh-fluid-l);
}

/* ==========================================================================
   Datenschutz Layout - Mobile First (Standard für Smartphones)
   ========================================================================== */
.datenschutz-container {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    box-sizing: border-box;
}

/* Der automatische WordPress-Wrapper steuert das Spalten-Layout */
.datenschutz-container .wpb_wrapper {
    display: block !important;
    column-count: 1; /* Mobil: 1 Spalte */
    column-gap: 1.5rem !important;
    
    /* Typografie-Vorgaben */
    font-family: inherit;
    font-size: clamp(0.825rem, 0.8083rem + 0.0833vw, 0.875rem); /* --fs-fluid-s */
    line-height: 1.25; /* --lh-fluid-s */
    color: var(--color-content-heading) !important;
    text-align: left;
}

/* GEÄNDERT: display: block erlaubt es langen Elementen (wie Ziff. 10), 
   natürlich am Spaltenende zu brechen. Kein künstlicher Leerraum mehr! */
.datenschutz-item {
    display: block !important; 
    width: 100%;
    margin-bottom: 24px;
}

/* Letztes Element: kein zusätzlicher Abstand am Ende */
.datenschutz-item:last-child {
    margin-bottom: 0 !important;
}

.datenschutz-title {
    font-size: clamp(1.1rem, 1.075rem + 0.125vw, 1.1667rem); /* --fs-fluid-sm */
    line-height: 1.125; /* --lh-fluid-sm */
    font-weight: bold;
    color: var(--color-content-heading) !important;
    margin-top: 0;
    margin-bottom: 12px;
    break-after: avoid !important; /* Verhindert, dass der Titel alleine am Spaltenende steht */
    page-break-after: avoid;
}

.datenschutz-subtitle {
    font-size: clamp(1.1rem, 1.075rem + 0.125vw, 1.1667rem); /* --fs-fluid-sm */
    line-height: 1.125; /* --lh-fluid-sm */
    font-weight: bold;
    color: var(--color-content-heading) !important;
    margin-top: 16px;
    margin-bottom: 6px;
    break-after: avoid !important; /* Verhindert das Trennen von Untertiteln zum Text */
    page-break-after: avoid;
}

.datenschutz-item p {
    margin-top: 0;
    margin-bottom: 10px;
}

/* Präziser Einzug für Listenpunkte */
.datenschutz-container ul {
    margin-top: 0;
    margin-bottom: 10px;
    margin-inline-start: 1.4rem !important;
    padding-left: 0 !important;
}

.datenschutz-container li {
    margin-bottom: 6px;
    break-inside: avoid !important; /* Einzelne Listenpunkte werden nicht zerschnitten */
}

/* ==========================================================================
   Breakpoints
   ========================================================================== */

@media (min-width: 600px) {
    .datenschutz-container .wpb_wrapper {
        column-count: 2;
    }
}

@media (min-width: 1025px) {
    .datenschutz-container .wpb_wrapper {
        column-count: 3; /* Fließt jetzt nahtlos über alle 3 Spalten */
    }
}

/* Impressum Seite CSS */

.impressum-container {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.2rem;
}

@media (min-width: 1025px) {
.impressum-main-inner-wrapper {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 1.5rem;
}
}

.impressum-container {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    box-sizing: border-box;
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.2rem;
}

@media (min-width: 1025px) {
    .impressum-container {
        width: 100%;
        max-width: 1280px;
        margin: 0 auto;
        box-sizing: border-box;
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;;
        gap: 1.5rem;
    }
}

.impressum-container a {
    transition: color 0.25s cubic-bezier(0.25, 0.1, 0.25, 1), opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

.impressum-container a:hover,
.impressum-container a:focus {
    color: var(--color-content-heading) !important;
    opacity: 1 !important;
    font-weight: 700;
    text-decoration: none;
}