/*
 * Professionelle Darstellung der Datenschutzerklaerung
 * Gekapselt unter .privacy-page, damit das bestehende Website-Layout unberuehrt bleibt.
 */

.privacy-page {
    background: #f4f7fb;
    color: #26364a;
    padding-top: 54px;
    padding-bottom: 64px;
}

.privacy-page .privacy-container {
    max-width: 1120px;
}

.privacy-page .privacy-grid {
    margin: 0;
}

/* Rechtstexte sind in einer gut lesbaren Spalte professioneller als in zwei Spalten. */
.privacy-page .privacy-column {
    float: none;
    width: 100%;
    max-width: 100%;
    min-height: 0;
    margin: 0 0 28px;
    padding: 38px 48px;
    background: #ffffff;
    border: 1px solid #dce5f0;
    border-radius: 14px;
    box-shadow: 0 12px 32px rgba(24, 55, 91, 0.08);
}

.privacy-page .privacy-column + .privacy-column {
    margin-top: 0;
}

.privacy-page .privacy-section-title {
    margin: 0 0 24px;
    padding: 0 0 15px;
    border-bottom: 2px solid #0b4a8f;
    font-size: 24px;
    line-height: 1.35;
    font-weight: 700;
    color: #0b4a8f;
}

.privacy-page .privacy-section-title a {
    color: inherit;
    text-decoration: none;
    pointer-events: none;
}

.privacy-page p {
    margin: 0 0 22px;
    font-size: 16px;
    line-height: 1.75;
    color: #34465a;
}

.privacy-page p strong:first-child {
    display: inline-block;
    margin-bottom: 8px;
    font-size: 18px;
    line-height: 1.45;
    color: #123f70;
}

.privacy-page .privacy-subheading {
    display: block;
    margin: 6px 0 12px;
    font-size: 17px;
    font-weight: 700;
    color: #123f70;
}

.privacy-page .privacy-legal-label,
.privacy-page .privacy-law-box {
    display: block;
    margin: 20px 0;
    padding: 16px 18px;
    border-left: 4px solid #0b4a8f;
    border-radius: 6px;
    background: #edf5fd;
    color: #183e65;
    font-weight: 600;
    line-height: 1.65;
}

.privacy-page .privacy-law-box {
    font-size: 15px;
    font-weight: 400;
}

.privacy-page a {
    color: #0b4a8f;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
    overflow-wrap: anywhere;
}

.privacy-page a:hover,
.privacy-page a:focus {
    color: #07325f;
    text-decoration-thickness: 2px;
}

.privacy-page br + br {
    line-height: 1.2;
}

.privacy-page .btn-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 11px 22px;
    border-radius: 7px;
    text-decoration: none;
}

@media (max-width: 767px) {
    .privacy-page {
        padding-top: 32px;
        padding-bottom: 38px;
    }

    .privacy-page .privacy-column {
        padding: 26px 22px;
        border-radius: 10px;
    }

    .privacy-page .privacy-section-title {
        font-size: 21px;
    }

    .privacy-page p {
        font-size: 15px;
        line-height: 1.7;
    }
}

@media print {
    .privacy-page {
        background: #ffffff;
        padding: 0;
    }

    .privacy-page .privacy-column {
        padding: 0;
        border: 0;
        box-shadow: none;
        break-inside: avoid;
    }

    .privacy-page a {
        color: #000000;
        text-decoration: none;
    }
}
