/* ==========================================================================
   Seitenspezifische Anpassungen
   ========================================================================== */

/* Startseite: Vorteile-Leiste direkt unter dem Hero */
.page-startseite .benefits--strip {
    padding: var(--space-5) 0;
    border-block: 1px solid var(--c-line);
}

.page-startseite .hero + .section--tight {
    padding-top: var(--space-4);
}

@media (max-width: 639px) {
    .page-startseite .benefits--strip .benefit {
        padding-inline: 0;
    }
}

/* Kurse: Sprungnavigation direkt unter dem Seitenkopf */
.page-kurse .course-jump {
    margin-top: calc(var(--space-6) * -1);
    margin-bottom: var(--space-4);
}

/* Über mich: Fließtext etwas größer */
.page-ueber-mich .prose p {
    font-size: 1.125rem;
}

.page-ueber-mich .prose h2 {
    font-style: italic;
    color: var(--c-bordeaux);
}

/* Rechtliches: ohne Ornament-Abstand zu groß */
.page-impressum .page-hero,
.page-datenschutz .page-hero {
    padding-bottom: var(--space-4);
}

.page-datenschutz .page-hero .lead {
    font-size: 1.05rem;
}

/* ==========================================================================
   Druckansicht – Preise werden von Eltern ausgedruckt
   ========================================================================== */
@page {
    margin: 14mm 12mm;
}

@media print {
    :root {
        --bg: #fff;
        --bg-soft: #fff;
        --surface: #fff;
    }

    html {
        font-size: 12px;
    }

    body {
        background: #fff;
        color: #000;
    }

    /* Alles weg, was nicht auf Papier gehört */
    .site-header,
    .skip-link,
    .wave,
    .cta,
    .motto,
    .lightbox,
    .page-hero__watermark,
    .page-hero__ornament,
    .page-hero::before,
    .hero::before,
    .cta__dancer,
    .course-card__dancer,
    .map,
    .route-links,
    .course-jump,
    .gallery__zoom,
    .site-footer__grid > :not(:nth-child(2)),
    .site-footer__bottom ul,
    .todo-badge .icon {
        display: none !important;
    }

    *,
    *::before,
    *::after {
        box-shadow: none !important;
        text-shadow: none !important;
    }

    .js [data-reveal] {
        opacity: 1 !important;
        transform: none !important;
        clip-path: none !important;
    }

    .section,
    .section--tight,
    .page-hero {
        padding-block: 0.6rem;
        background: #fff;
    }

    .page-hero__title {
        font-size: 2rem;
    }

    a {
        color: inherit;
        text-decoration: none;
    }

    /* Preise */
    .price-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .price-card {
        border: 1px solid #999;
        break-inside: avoid;
    }

    .price-card__cta {
        display: none;
    }

    .benefits {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Am Ende: Adresse und Telefon */
    .site-footer {
        margin: 1rem 0 0;
        color: #000;
    }

    .site-footer__body {
        padding: 0.8rem 0 0;
        background: #fff;
        border-top: 1px solid #999;
    }

    .site-footer a,
    .site-footer__title,
    .site-footer__links .icon {
        color: #000;
    }

    .site-footer__grid {
        display: block;
        padding: 0;
    }

    .site-footer__links {
        display: flex;
        gap: 1.5rem;
    }

    .site-footer__bottom {
        border: 0;
        padding-top: 0.4rem;
    }
}
