/* ============================================
   Anlaesse - Occasion-Landingpages
   (/kindergeburtstag, /hochzeit, /konfirmation, /firmenfeier, /sommerfest,
   /vereinsfest, /schulfest, /gartenparty, /familienfest)
   Alle 9 Seiten werden ueber die eine wiederverwendbare Komponente
   Eventify.Client/Elemente/OccasionLandingSection.razor gerendert.

   Layout basics (.article-page, .article-grid, .article-card,
   .related-articles, .page-header, .page-title) come from
   RatgeberDesign.css / ArtikelDesign.css / layoutDesign.css. This file only
   adds classes specific to the Anlass-Landingpages.

   WICHTIG (Bugfix-Konvention): Panel-Regeln werden NIE auf der bloßen
   globalen Klasse `.article-page` definiert (das wuerde in alle anderen
   Artikel-/Kategorie-/Standort-/Einschulung-Seiten hineinlecken, die
   dieselbe Klasse verwenden — genau das hat schon einmal einen Bug
   verursacht). Stattdessen IMMER compound-scoped auf
   `.anlass-page.article-page`, also nur Elemente, die BEIDE Klassen
   gleichzeitig tragen (das Wurzel-<article> dieser Seiten).
   ============================================ */

.anlass-page {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 var(--spacing-lg) var(--spacing-2xl);
}

/* Kopfbereich und jede direkte Sektion (Intro/CTA, Produkte, Fakten, FAQ,
   weiterfuehrende Ratgeber) sitzen sonst direkt auf dem rotierenden
   Foto-Hintergrund des Layouts — deckendes Panel nach dem Muster von
   .Eventify-Jobs-card (JobsDesign.css) fuer Lesbarkeit. */
.anlass-page.article-page > .page-header,
.anlass-page.article-page > section {
    background: rgba(30, 30, 30, 0.95);
    border-radius: var(--border-radius);
    padding: var(--spacing-xl);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.anlass-page.article-page > section p {
    max-width: 72ch;
    color: var(--color-text-muted);
    line-height: 1.75;
}

.anlass-page.article-page > section h2 {
    margin-bottom: var(--spacing-md);
}

.anlass-page.article-page > section + section {
    margin-top: var(--spacing-xl);
}

/* FaqSection rendert ihr eigenes <section class="faq-section"> — explizit
   compound-scoped, statt sich allein auf die generische ">section"-Regel
   oben zu verlassen. */
.anlass-page.article-page > .faq-section {
    background: rgba(30, 30, 30, 0.95);
    border-radius: var(--border-radius);
    padding: var(--spacing-xl);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.anlass-facts {
    margin: var(--spacing-md) 0 0;
    padding-left: var(--spacing-lg);
    color: var(--color-text-muted);
    line-height: 1.75;
}

    .anlass-facts li {
        margin-bottom: var(--spacing-sm);
    }

.anlass-cta-row {
    display: flex;
    flex-wrap: wrap;
    gap: var(--spacing-md);
    margin-top: var(--spacing-lg);
}

.anlass-page .anlass-cta-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: var(--spacing-sm) var(--spacing-xl);
    font-size: var(--font-size-base);
    font-weight: 600;
    font-family: inherit;
    background: var(--color-primary);
    color: #fff;
    border: 1px solid transparent;
    border-radius: var(--border-radius-sm);
    text-decoration: none;
    transition: background 0.2s ease;
}

    .anlass-page .anlass-cta-btn:hover {
        background: var(--color-primary-dark, #2a9fd8);
    }

.anlass-page .anlass-cta-btn--secondary {
    background: transparent;
    border-color: var(--color-border);
    color: var(--color-text);
}

    .anlass-page .anlass-cta-btn--secondary:hover {
        background: rgba(255, 255, 255, 0.08);
    }

@media (max-width: 600px) {
    .anlass-page {
        padding-right: var(--spacing-md);
        padding-left: var(--spacing-md);
    }

    .anlass-page.article-page > .page-header,
    .anlass-page.article-page > section,
    .anlass-page.article-page > .faq-section {
        padding: var(--spacing-lg);
    }

    .anlass-cta-row {
        flex-direction: column;
    }

    .anlass-page .anlass-cta-btn {
        width: 100%;
    }
}
