/* =========================================================
   Legal pages: AGB / Datenschutz
   ========================================================= */

.ak-legal-page {
    background: #ffffff;
    color: var(--ak-text, #0b1f38);
}

.ak-legal-hero {
    padding: clamp(72px, 9vw, 130px) 24px clamp(44px, 6vw, 74px);
    background:
        radial-gradient(circle at top right, rgba(185, 154, 100, 0.16), transparent 34%),
        linear-gradient(180deg, #ffffff 0%, #fbfbfa 100%);
    border-bottom: 1px solid rgba(6, 27, 54, 0.08);
}

.ak-legal-container {
    width: min(940px, calc(100vw - 48px));
    margin-inline: auto;
}

.ak-legal-kicker {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin: 0 0 18px;
    color: var(--ak-blue, #00578b);
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.28em;
    text-transform: uppercase;
}

.ak-legal-kicker::before {
    content: "";
    width: 34px;
    height: 1px;
    background: var(--ak-gold, #b99a64);
}

.ak-legal-hero h1 {
    margin: 0;
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 400;
    font-size: clamp(3.4rem, 7vw, 7rem);
    line-height: 0.95;
    letter-spacing: -0.055em;
    color: var(--ak-navy, #061b36);
}

.ak-legal-hero p:not(.ak-legal-kicker) {
    margin: 22px 0 0;
    max-width: 680px;
    color: #2d4058;
    font-size: clamp(1.02rem, 1.25vw, 1.18rem);
    line-height: 1.75;
}

.ak-legal-section {
    padding: clamp(54px, 7vw, 96px) 24px clamp(78px, 9vw, 130px);
    background: #ffffff;
}

.ak-legal-content {
    font-size: 1rem;
    line-height: 1.78;
    color: #21344a;
}

.ak-legal-content h2,
.ak-legal-content h3,
.ak-legal-content h4,
.ak-legal-content h5 {
    color: var(--ak-navy, #061b36);
    line-height: 1.25;
}

.ak-legal-content h2 {
    margin: 0 0 34px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2rem, 3.2vw, 3.3rem);
    font-weight: 400;
    letter-spacing: -0.035em;
}

.ak-legal-content h4 {
    margin: 38px 0 12px;
    font-size: 1.13rem;
    font-weight: 700;
}

.ak-legal-content h5 {
    margin: 28px 0 10px;
    font-size: 1.02rem;
    font-weight: 700;
}

.ak-legal-content p {
    margin: 0 0 16px;
}

.ak-legal-content a {
    color: var(--ak-blue, #00578b);
    text-decoration: underline;
    text-underline-offset: 0.18em;
    overflow-wrap: anywhere;
}

.ak-legal-content a:hover {
    color: var(--ak-navy, #061b36);
}

.ak-legal-content blockquote {
    margin: 34px 0;
    padding: 22px 26px;
    border-left: 3px solid var(--ak-gold, #b99a64);
    background: #fbfbfa;
    color: #344455;
}

@media (max-width: 640px) {
    .ak-legal-container {
        width: min(100%, calc(100vw - 32px));
    }

    .ak-legal-hero,
    .ak-legal-section {
        padding-left: 16px;
        padding-right: 16px;
    }

    .ak-legal-kicker {
        font-size: 0.74rem;
        letter-spacing: 0.2em;
    }
}
