/* Textlink wie in About-Vorschau 02. Klasse am Textmodul oder am Link.
 * Schriftart, Schriftgröße und Schriftgewicht bleiben in Divi steuerbar.
 */
a:is(.burnabit-text-link, .burnabit-text-link--down, .burnabit-text-link--external),
:is(.burnabit-text-link, .burnabit-text-link--down, .burnabit-text-link--external) a,
a.burnabit-text-link-external,
.burnabit-text-link-external a {
    display: inline-flex;
    align-items: center;
    gap: 16px;
    min-height: 44px;
    max-width: 100%;
    box-sizing: border-box;
    padding-block: 8px;
    color: var(--burnabit-text-link-color, #bc4800);
    text-decoration-line: underline;
    text-decoration-color: currentColor;
    text-decoration-thickness: 1px;
    text-underline-offset: 5px;
    overflow-wrap: anywhere;
}

/* Explizite Pfeile aus der Vorschau bleiben verwendbar. */
a:is(.burnabit-text-link, .burnabit-text-link--down, .burnabit-text-link--external) > span[aria-hidden="true"],
:is(.burnabit-text-link, .burnabit-text-link--down, .burnabit-text-link--external) a > span[aria-hidden="true"] {
    display: inline-block;
    flex: none;
    font-size: 21px;
    line-height: 1;
    transition: transform 180ms ease;
}

/* Reine Textlinks erhalten einen dekorativen SVG-Pfeil ohne Zusatz-Markup. */
a:is(.burnabit-text-link, .burnabit-text-link--down, .burnabit-text-link--external):not(:has(> span[aria-hidden="true"]))::after,
:is(.burnabit-text-link, .burnabit-text-link--down, .burnabit-text-link--external) a:not(:has(> span[aria-hidden="true"]))::after,
a.burnabit-text-link-external::after,
.burnabit-text-link-external a::after {
    content: "";
    display: block;
    flex: 0 0 21px;
    width: 21px;
    height: 21px;
    background: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 18 18 6M6 6h12v12' fill='none' stroke='black' stroke-width='1.5'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 18 18 6M6 6h12v12' fill='none' stroke='black' stroke-width='1.5'/%3E%3C/svg%3E") center / contain no-repeat;
    transition: transform 180ms ease;
}

/* Eigenständige externe Variante; keine zusätzliche Basisklasse nötig.
 * Icon und Unterstreichung reagieren wie beim normalen Textlink auf Hover.
 */
a.burnabit-text-link-external::after,
.burnabit-text-link-external a::after {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14 3h7v7M21 3 11 13M10 5H5a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-5' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14 3h7v7M21 3 11 13M10 5H5a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-5' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

@media (hover: hover) and (pointer: fine) {
    a:is(.burnabit-text-link, .burnabit-text-link--down, .burnabit-text-link--external):hover,
    :is(.burnabit-text-link, .burnabit-text-link--down, .burnabit-text-link--external) a:hover,
    a.burnabit-text-link-external:hover,
    .burnabit-text-link-external a:hover {
        color: var(--burnabit-text-link-color, #bc4800);
        text-decoration-thickness: 2px;
    }

    a.burnabit-text-link-external:hover::after,
    .burnabit-text-link-external a:hover::after,
    a:is(.burnabit-text-link, .burnabit-text-link--down, .burnabit-text-link--external):hover::after,
    :is(.burnabit-text-link, .burnabit-text-link--down, .burnabit-text-link--external) a:hover::after,
    a:is(.burnabit-text-link, .burnabit-text-link--down, .burnabit-text-link--external):hover > span[aria-hidden="true"],
    :is(.burnabit-text-link, .burnabit-text-link--down, .burnabit-text-link--external) a:hover > span[aria-hidden="true"] {
        transform: translate(3px, -2px);
    }
}

a:is(.burnabit-text-link, .burnabit-text-link--down, .burnabit-text-link--external):focus-visible,
:is(.burnabit-text-link, .burnabit-text-link--down, .burnabit-text-link--external) a:focus-visible,
a.burnabit-text-link-external:focus-visible,
.burnabit-text-link-external a:focus-visible {
    outline: 3px solid currentColor;
    outline-offset: 5px;
}

@media (prefers-reduced-motion: reduce) {
    a.burnabit-text-link-external::after,
    .burnabit-text-link-external a::after,
    a:is(.burnabit-text-link, .burnabit-text-link--down, .burnabit-text-link--external)::after,
    :is(.burnabit-text-link, .burnabit-text-link--down, .burnabit-text-link--external) a::after,
    a:is(.burnabit-text-link, .burnabit-text-link--down, .burnabit-text-link--external) > span[aria-hidden="true"],
    :is(.burnabit-text-link, .burnabit-text-link--down, .burnabit-text-link--external) a > span[aria-hidden="true"] {
        transition: none;
        transform: none !important;
    }
}

/* Richtungsvarianten: jeweils eine eigenständige Klasse am Link oder Divi-Textmodul.
 * Pfeilzeichen aus dem Linktext entfernen. Linkziel/target bleiben in Divi.
 * Die bisherige Klasse burnabit-text-link-external bleibt unverändert.
 */
a.burnabit-text-link--down:not(:has(> span[aria-hidden="true"]))::after,
.burnabit-text-link--down a:not(:has(> span[aria-hidden="true"]))::after {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 4v16M5 13l7 7 7-7' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 4v16M5 13l7 7 7-7' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
/* --external verwendet bewusst den reduzierten Diagonalpfeil der Basisklasse.
 * Keine automatische Änderung des Linkziels oder Öffnen eines neuen Tabs.
 */
@media (hover: hover) and (pointer: fine) {
    a.burnabit-text-link--down:hover::after,
    .burnabit-text-link--down a:hover::after {
        transform: translateY(3px);
    }
}
@media (prefers-reduced-motion: reduce) {
    a.burnabit-text-link--down:hover::after,
    .burnabit-text-link--down a:hover::after {
        transform: none;
    }
}


/* Generated project anchors: desktop row with wrapping; Divi controls the parent row. */
@media (min-width: 981px) {
    #main-content ul.burn-project-navigation {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 16px 32px;
        margin: 0;
        padding: 0;
        list-style: none;
    }

    #main-content ul.burn-project-navigation > li {
        margin: 0;
        padding: 0;
    }
}

/* Nested shortcode project links; text styling stays in Divi. */
.burn-project-links .burn-project-links__projects{padding-inline-start:1.5em}
