/* TEXT BALANCE & TYPOGRAFIE */
:is(h1, h2, h3, h4, h5, h6),
.balance {
    text-wrap: balance;
}

p,
blockquote,
li {
    text-wrap: pretty;
}

.entry-content p:last-child,
.gb-container p:last-child {
    margin-bottom: 0;
}


/* LINE LIMITS */
.line-limit-2,
.line-limit-3 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.line-limit-2 {
    -webkit-line-clamp: 2;
    line-clamp: 2;
}

.line-limit-3 {
    -webkit-line-clamp: 3;
    line-clamp: 3;
}


/* BILD-SCHUTZ */
:is(.bild-schutz img, img.bild-schutz) {
    pointer-events: none;
    -webkit-user-drag: none;
    user-select: none;
}


/* DEBUGGING HILFSMITTEL BEI BEDARF AKTIVIEREN */
/* * { outline: 2px solid red; background-color: rgba(0, 255, 0, 0.05); } */


/* MOBILE INTERAKTION & FOKUS */
@media (max-width: 768px) {
    a, button, input, [role="button"] {
        -webkit-tap-highlight-color: transparent;
    }
}

.gb-submenu-toggle:focus-visible {
    background: #000;
    color: #fff;
    outline: 2px solid var(--global-color-01);
}


/* -------------------------------------------------- */
/* BARRIEREFREIHEIT                                   */
/* -------------------------------------------------- */

/* AUSGEHENDE LINKS KENNZEICHNEN ! DOMAIN AUSTAUSCHEN */
.site-content p a[href^="http"]:not([href*="bfmd.demokratie-memmingen.de"]):not(.gb-button, .button, :has(img))::before,
.listlink::before {
    content: "➚ ";
    color: #576fcb;
    text-decoration: none;
    display: inline-block;
    margin-right: 4px;
}

/* BARRIEREFREIHEIT TASTATURFOKUS */
:focus:not(:focus-visible) {
    outline: none;
}

:focus-visible {
    outline: 3px solid var(--global-color-01) !important;
    outline-offset: 2px;
}

.rk-field:focus-visible {
    border-radius: 30px !important;
}

/* HIGH CONTRAST (FORCED COLORS) */
@media screen and (forced-colors: active) {
    h1, h2, h3, h4, h5, h6 {
        font-family: var(--gp-font--atkinson-hyperlegible-next) !important;
        font-weight: 500 !important;
    }

    a {
        font-family: var(--gp-font--atkinson-hyperlegible-next) !important;
        font-weight: 600 !important;
    }

    a:focus-visible {
        outline: 2px solid CanvasText !important;
        outline-offset: 2px;
    }
}