/**
 * Heading CSS - Überschrift mit Subline
 *
 * Zweizeilige Sektions-Überschrift nach CD Rennsteig Schwarzatal:
 * - Zeile 1: Script-Schrift Sisterhood, Grün (Token --aktd-color-script-heading)
 * - Zeile 2: Bebas Neue, Versalien, Letterspacing, Schwarz
 *
 * Konsumiert Theme-Tokens (--aktd-*) mit Fallbacks, damit das Element
 * auch ohne das Child-Theme brauchbar rendert.
 */

/* Block */
.akt-heading {
    margin: 0 0 32px;
}

.akt-heading--spacing-small {
    margin-bottom: 16px;
}

.akt-heading--spacing-large {
    margin-bottom: 56px;
}

/* Ausrichtung */
.akt-heading--align-center {
    text-align: center;
}

.akt-heading--align-left {
    text-align: left;
}

/* Zeile 1: Script-Überschrift */
.akt-heading__title {
    display: block;
    font-family: var(--aktd-font-script, cursive);
    font-weight: 400;
    font-size: clamp(26px, 3vw, 40px); /* Design 36px @1200 */
    line-height: 1.35;
    color: var(--aktd-color-script-heading, #2b957e);
}

/* Zeile 2: Versal-Subline */
.akt-heading__subline {
    display: block;
    margin-top: 0.55em;
    font-family: var(--aktd-font-accent, sans-serif);
    font-weight: 400;
    font-size: clamp(15px, 1.5vw, 20px); /* Design 18px @1200 */
    line-height: 1.4;
    letter-spacing: 0.1em; /* Design-Tracking 100 */
    text-transform: uppercase;
    color: var(--aktd-color-font, #1b1b1b);
}

/* Schriftgrößen (Design: 30 / 36 / 43px je Kontext) */
.akt-heading--size-small .akt-heading__title {
    font-size: clamp(22px, 2.5vw, 33px); /* Design 30px @1200 */
}

.akt-heading--size-large .akt-heading__title {
    font-size: clamp(30px, 3.6vw, 47px); /* Design 43px @1200 */
}

/* Darstellung auf dunklem Hintergrund/Bild */
.akt-heading--scheme-dark .akt-heading__title,
.akt-heading--scheme-dark .akt-heading__subline {
    color: var(--aktd-color-white, #ffffff);
}

/* Leerzustand (nur für Redakteure sichtbar) */
.akt-heading__no-content {
    padding: 16px;
    border: 2px dashed #c3c4c7;
    border-radius: 3px;
    color: #646970;
    font-size: 14px;
    text-align: center;
}

/* Responsive */
@media (max-width: 544px) {

    .akt-heading {
        margin-bottom: 24px;
    }

    .akt-heading--spacing-large {
        margin-bottom: 36px;
    }

    .akt-heading__subline {
        letter-spacing: 0.09em;
    }
}

/* Barrierefreiheit / Print */
@media (prefers-contrast: high) {

    .akt-heading__title {
        color: var(--aktd-color-font, #1b1b1b);
    }
}

@media print {

    .akt-heading__title,
    .akt-heading__subline {
        color: #000;
    }
}
