/* Unfallmeldungen DE -- extracted component CSS
 *
 * Every block below was an inline <style> in a PHP template. They are
 * concatenated in the order the browser used to receive them, because these
 * strata deliberately override each other; reordering them changes rendering.
 *
 * Enqueued by psdtheme_setup_scripts() as "umde-theme", after
 * "psdtheme-styles" (css/styles.min.css) and "umde-tokens".
 */
/* SEO landing intro (was wp_head 30)
   ----------------------------------
   was functions.php:1052-1072 */
.unfallmeldungen-seo-intro {
    max-width: 980px;
    margin: 0 auto 24px;
    padding: 14px 18px;
    background: #f7f9fb;
    border: 1px solid #e5ebf0;
}

.unfallmeldungen-seo-intro h2 {
    margin: 0 0 6px;
    font-size: 1.05rem;
    line-height: 1.25;
}

.unfallmeldungen-seo-intro p {
    margin: 0;
    font-size: 0.88rem;
    line-height: 1.45;
}


/* Region badge on article cards (was wp_head 30)
   ----------------------------------------------
   was functions.php:1662-1671 */
.region-badge {
    display: inline-block;
    margin-top: -10px;
    padding: 5px 10px;
    background: #f8f9fa;
    border-radius: var(--umde-radius);
    box-shadow: 0 2px 5px rgba(0, 0, 0, .1);
}

.region-badge__code {
    display: block;
    text-align: center;
    font-weight: 700;
    font-size: 20px;
    line-height: 1;
    color: var(--umde-red);
}


/* NEU badge on menu items (was wp_head 99)
   ----------------------------------------
   was functions.php:1556-1576 */
.nav-new-badge {
    display: inline-block;
    margin-left: 6px;
    padding: 1px 6px;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.4;
    color: var(--umde-surface);
    background: var(--umde-red);
    border-radius: var(--umde-radius);
    text-transform: uppercase;
    letter-spacing: .5px;
    vertical-align: middle;
    animation: navNewPulse 1.6s ease-in-out infinite;
}

@keyframes navNewPulse {
    0%, 100% {
        transform: scale(1);
        opacity: 1;
    }
    50% {
        transform: scale(1.12);
        opacity: .85;
    }
}


/* Header bands, nav, region rail, drawer, listing cards, top stories, ad rails
   ----------------------------------------------------------------------------
   was header.php:35-1712 */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.articles-list .meta .date {
    color: var(--umde-ink-muted) !important;
}

.footer-menu li {
    margin: 4px 2px;
}

.footer-menu li a {
    display: inline-block;
    padding: 10px 8px;
    min-height: 48px;
    line-height: 1.4;
}

.header-right {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: nowrap;
    position: relative;
    min-height: 66px;
    white-space: nowrap;
}

/* No rule on .custom-gtranslate a. It was written for GTranslate's old
   "lang_names" look (a row of <a> links) and does not apply to the native
   select used now — but it DID apply to the "float" look's .gt_options a,
   overriding the plugin's own colour with white-on-white. */
.custom-gtranslate {
    float: left;
}

.custom-gtranslate {
    display: flex;
    align-items: center;
    padding: 0 10px;
    border-left: 1px solid rgba(255, 255, 255, 0.18);
    border-right: 1px solid rgba(255, 255, 255, 0.18);
}

.custom-gtranslate > .gtranslate_wrapper {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.custom-gtranslate > .gtranslate_wrapper::after {
    content: '';
    position: absolute;
    right: 14px;
    top: 50%;
    width: 8px;
    height: 8px;
    border-right: 2px solid rgba(255, 255, 255, 0.72);
    border-bottom: 2px solid rgba(255, 255, 255, 0.72);
    transform: translateY(-60%) rotate(45deg);
    pointer-events: none;
}

.custom-gtranslate .gt_selector {
    -webkit-appearance: none;
    appearance: none;
    height: 38px;
    min-width: 180px;
    padding: 0 34px 0 14px;
    border: 1px solid rgba(255, 255, 255, 0.35);
    border-radius: var(--umde-radius-pill);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02));
    color: #f2f4f7;
    font-family: "proxima_novasemibold";
    font-size: 16px;
    line-height: 38px;
    outline: none;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.18) inset;
}

.custom-gtranslate .gt_selector:hover {
    border-color: rgba(255, 255, 255, 0.55);
}

.custom-gtranslate .gt_selector:focus {
    border-color: #5ac8fa;
    box-shadow: 0 0 0 2px rgba(90, 200, 250, 0.22);
}

.custom-gtranslate .gt_selector option {
    color: #1f2328;
    background: var(--umde-surface);
}

/* Guard: should the plugin ever be switched back to the "float" look, keep its
   options list out of the document flow so the header cannot grow, and let the
   plugin's own colours through. */
.custom-gtranslate .gt_float_switcher {
    position: relative;
}

.custom-gtranslate .gt_float_switcher .gt_options {
    position: absolute !important;
    top: 100%;
    left: 0;
    z-index: 999;
    max-height: 60vh;
    overflow-y: auto;
    background: var(--umde-surface);
    box-shadow: 0 8px 24px rgba(0, 0, 0, .18);
}

.custom-gtranslate .gt_float_switcher .gt_options a {
    color: #1f2328;
}

#g-header .header-bar .header-right .social {
    margin-right: 0 !important;
}

#g-header .header-bar .btn-search {
    position: relative !important;
    right: auto !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 23px 16px;
    white-space: nowrap;
}

#g-header .header-bar .search-form {
    display: none;
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    float: none;
    margin: 0;
    padding: 6px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: var(--umde-radius);
    background: var(--umde-ink);
    z-index: 2000;
}

#g-header .header-bar .search-form.search-open {
    display: flex;
    align-items: center;
    gap: 6px;
}

#g-header .header-bar .search-form input[type="text"] {
    width: 240px;
    height: 36px;
    margin: 0;
    padding: 0 10px;
    border: 0;
    background: var(--umde-surface);
    color: var(--umde-ink);
}

#g-header .header-bar .search-form input[type="submit"] {
    position: static;
    top: auto;
    right: auto;
    width: auto;
    min-width: 74px;
    height: 36px;
    padding: 0 12px;
    border: 0;
    text-indent: 0;
    background: var(--umde-red);
    color: var(--umde-surface);
    font-size: 13px;
    line-height: 36px;
}

#g-header .header-bar .social.search-open {
    margin-right: 0 !important;
}

/* ──────────────────────────────────────
   DESKTOP HINWEIS IN DER TOP‐BAR
─────────────────────────────────────── */
#g-header .top-bar {
    position: relative;
}

.header-hinweis-desktop {
    position: absolute;
    right: 32px;
    bottom: 8px;
    color: #888;
    font-size: 13px;
    line-height: 1.3;
    user-select: none;
    pointer-events: none;
    max-width: 300px;
    text-align: right;
}

/* ──────────────────────────────────────
   MOBILE‐ONLY HINWEIS AT BOTTOM OF BURGER
─────────────────────────────────────── */
.header-hinweis-mobile {
    display: none;
}

.categories-list-mobile .mobile-menu-tools {
    display: none;
}

@media (max-width: 1500px) and (min-width: 978px) {
    /* Keep desktop header on one row for laptop widths. */
    #g-header .header-bar .menu a {
        padding: 23px 14px;
        font-size: 14px;
    }

    #g-header .header-bar .col9.col-md-9.col-sm-3 {
        width: 78%;
    }

    #g-header .header-bar .col3.col-md-3.col-sm-3 {
        width: 22%;
    }

    .custom-gtranslate {
        padding: 0 6px;
    }

    .custom-gtranslate .gt_selector {
        min-width: 156px;
        height: 34px;
        line-height: 34px;
        font-size: 14px;
    }

    #g-header .header-bar .social a {
        width: 42px;
        padding: 23px 0;
    }

    #g-header .header-bar .btn-search {
        padding: 23px 12px;
        gap: 6px;
    }
}

@media (max-width: 1320px) and (min-width: 978px) {
    #g-header .header-bar .menu a {
        padding: 22px 10px;
        font-size: 13px;
    }

    .custom-gtranslate .gt_selector {
        min-width: 136px;
    }

    #g-header .header-bar .btn-search span {
        display: none;
    }

    #g-header .header-bar .btn-search {
        padding: 22px 10px;
    }
}

@media (max-width: 977px) {
    /* 1) White background on both bars */
    #g-header .top-bar,
    #g-header .header-bar {
        background-color: var(--umde-surface) !important;
    }

    /* 1b) Fix header column widths at 768-977px (col-sm overrides only apply <=767px) */
    #g-header .header-bar .row > .col9.col-sm-3 {
        width: 25% !important;
    }

    #g-header .header-bar .row > .col9.col-sm-6 {
        width: 50% !important;
    }

    #g-header .header-bar .row > .col3.col-sm-3 {
        width: 25% !important;
    }

    #g-header .header-bar .row {
        display: flex;
        align-items: center;
        flex-wrap: nowrap;
    }

    #g-header .header-bar .logo-police {
        top: 0 !important;
        display: block;
        margin: 0 auto;
    }

    /* 2) Grey-out the burger and its close icon */
    #g-header .header-bar .icon-menu,
    #g-header .categories-list-mobile .menu-close img {
        filter: grayscale(100%) brightness(60%) !important;
    }

    /* 3) Move search + language into mobile slide menu only */
    #g-header .header-bar .btn-search,
    #g-header .header-bar .search-form,
    #g-header .header-bar .custom-gtranslate {
        display: none !important;
    }

    #g-header .header-bar .search-form input:focus {
    }

    #g-header .header-bar .search-form:has(input:focus) {
    }

    /* 4) Restore your mobile Hinweis text */
    .header-hinweis-mobile {
        display: block !important;
        margin: 16px 8px 24px;
        color: #888;
        font-size: 10px;
        line-height: 1.4;
        text-align: center;
    }

    #g-header .header-bar .header-right {
        min-height: 0;
        overflow: visible;
    }

    #g-header .categories-list-mobile .mobile-menu-tools {
        display: block;
        padding: 14px 18px 6px;
        border-top: 1px solid rgba(255, 255, 255, 0.16);
        margin-top: 8px;
    }

    #g-header .categories-list-mobile .mobile-menu-language {
        margin-bottom: 10px;
    }

    #g-header .categories-list-mobile .mobile-menu-language .gtranslate_wrapper {
        position: relative;
        display: block;
    }

    #g-header .categories-list-mobile .mobile-menu-language .gtranslate_wrapper::after {
        content: '';
        position: absolute;
        right: 12px;
        top: 50%;
        width: 8px;
        height: 8px;
        border-right: 2px solid var(--umde-slate-600);
        border-bottom: 2px solid var(--umde-slate-600);
        transform: translateY(-60%) rotate(45deg);
        pointer-events: none;
    }

    #g-header .categories-list-mobile .mobile-menu-language .gt_selector {
        width: 100%;
        min-width: 0;
        height: 40px;
        padding: 0 34px 0 12px;
        border: 1px solid #c8ced6;
        border-radius: var(--umde-radius);
        background: var(--umde-surface);
        color: var(--umde-ink) !important;
        font-size: 16px;
        line-height: 40px;
        box-shadow: none;
        -webkit-appearance: none;
        appearance: none;
    }

    #g-header .categories-list-mobile .mobile-menu-language .gt_selector option {
        color: var(--umde-ink);
        background: var(--umde-surface);
    }

    #g-header .categories-list-mobile .mobile-menu-search {
        display: flex;
        gap: 8px;
    }

    #g-header .categories-list-mobile .mobile-menu-search input[type="text"] {
        flex: 1 1 auto;
        min-width: 0;
        height: 40px;
        border: 1px solid #c8ced6;
        border-radius: var(--umde-radius);
        padding: 0 12px;
        background: var(--umde-surface);
        color: var(--umde-ink);
        font-size: 15px;
    }

    #g-header .categories-list-mobile .mobile-menu-search input[type="text"]::placeholder {
        color: #7e8793;
    }

    #g-header .categories-list-mobile .mobile-menu-search button[type="submit"] {
        height: 40px;
        border: 0;
        border-radius: var(--umde-radius);
        background: var(--umde-red);
        color: var(--umde-surface);
        font-family: "proxima_novasemibold";
        font-size: 13px;
        padding: 0 12px;
        white-space: nowrap;
    }

    /* Compact canton switcher row on mobile */
    #g-header .categories-header-part {
        height: 38px !important;
        padding: 6px 0 4px !important;
        margin-top: 72px !important;
    }

    #g-header .categories-list-desktop ul {
        align-items: center;
    }

    #g-header .categories-list-desktop ul li {
        min-width: 34px !important;
        padding: 0 6px !important;
    }

    #g-header .categories-list-desktop .region-abbreviation {
        display: block;
        font-size: 14px !important;
        line-height: 1 !important;
    }
}


/* Hide list markers for structural UI lists (header/footer/listings/pagination) */
#g-header ul,
#g-header ol,
#g-header li,
.footer-menu ul,
.footer-menu ol,
.footer-menu li,
footer.footer ul,
footer.footer ol,
footer.footer li,
.articles-list,
.articles-list ul,
.articles-list ol,
.articles-list li,
.pagination ul,
.pagination ol,
.pagination li {
    list-style: none !important;
}

#g-header ul,
#g-header ol,
.footer-menu ul,
.footer-menu ol,
footer.footer ul,
footer.footer ol,
.articles-list,
.articles-list ul,
.articles-list ol,
.pagination ul,
.pagination ol {
    margin: 0;
    padding: 0;
}

#g-header li::marker,
.footer-menu li::marker,
footer.footer li::marker,
.articles-list li::marker,
.pagination li::marker {
    content: '';
}

/* Keep markers in article body content only */
.post-content-area ul li {
    list-style: disc outside !important;
}

.post-content-area ol li {
    list-style: decimal outside !important;
}

/* Single article category pills */
.single-post .article-category-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 8px 0 14px;
}

.single-post .article-category-pill {
    display: inline-flex;
    align-items: center;
    padding: 6px 12px;
    border-radius: var(--umde-radius-pill);
    border: 1px solid #cfd6df;
    background: #eef2f7;
    color: #46515f;
    font-family: "proxima_novasemibold";
    font-size: 13px;
    line-height: 1;
    text-decoration: none;
}

.single-post .article-category-pill:hover {
    background: #e3e9f0;
    color: #2f3b47;
}

.single-post .featured-image--lead {
    float: none;
    width: 100%;
    margin: 0 0 16px 0;
}

.single-post .featured-image--lead .thumb {
    width: 100%;
    height: auto;
    display: block;
}

/* 2026-07-29 Headline-first lead (Torben): title + compact Vorlesen pill
   ABOVE the media so readers reach the article text sooner. */
.single-post .article-lead-head {
    margin: 6px 0 16px;
}

.single-post .article-lead-title {
    font-size: 40px;
    line-height: 1.06;
    font-weight: 800;
    color: #14181c;
    letter-spacing: -0.01em;
    margin: 0 0 12px;
}

.single-post .article-lead-title::after {
    content: "";
    display: block;
    width: 56px;
    height: 4px;
    margin-top: 12px;
    background: var(--umde-red);
    border-radius: var(--umde-radius-mark);
}

.single-post .article-tts--lead {
    margin: 0 0 4px;
}

.single-post .article-tts--lead .article-tts-btn {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: var(--umde-red);
    color: var(--umde-surface);
    border: 0;
    border-radius: var(--umde-radius-pill);
    padding: 8px 15px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
}

.single-post .article-tts--lead .article-tts-btn .tts-icon {
    font-size: 15px;
}

.single-post .featured-video,
.single-post .featured-image {
    margin: 0 0 16px;
}

.single-post .post-content-area {
    clear: both;
}

.single-post .article-follow {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 12px 0 20px;
    padding: 12px 14px;
    border: 1px solid #cbead7;
    background: #effbf3;
    color: #245b38;
}

.single-post .article-follow a {
    color: var(--umde-surface);
    background: var(--umde-whatsapp);
    font-family: "proxima_novasemibold";
    padding: 8px 12px;
    white-space: nowrap;
}

.single-post .article-follow a:hover {
    background: var(--umde-whatsapp-hover);
    color: var(--umde-surface);
}

@media (max-width: 767px) {
    .single-post .featured-image--lead {
        float: none;
        width: 100%;
        margin: 0 0 12px 0;
    }

    .single-post .article-lead-title {
        font-size: 24px;
        line-height: 1.12;
        margin: 0 0 9px;
    }

    .single-post .article-lead-title::after {
        width: 44px;
        height: 3px;
        margin-top: 9px;
    }

    .single-post .article-lead-head {
        margin: 4px 0 12px;
    }

    .single-post .article-tts--lead .article-tts-btn {
        padding: 7px 13px;
        font-size: 13px;
    }

    .single-post .featured-video,
    .single-post .featured-image {
        margin: 0 0 12px;
    }

    .single-post .article-category-pills {
        gap: 6px;
        margin: 6px 0 12px;
    }

    .single-post .article-category-pill {
        padding: 5px 10px;
        font-size: 12px;
    }

    .single-post .article-follow {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* Enhanced, full-width listing layout (home/category/archive/search) */
body.blog .main-content .content-col,
body.home .main-content .content-col,
body.category .main-content .content-col,
body.archive .main-content .content-col,
body.search .main-content .content-col {
    width: 100% !important;
}

body.blog .main-content .sidebar-col,
body.home .main-content .sidebar-col,
body.category .main-content .sidebar-col,
body.archive .main-content .sidebar-col,
body.search .main-content .sidebar-col {
    display: none !important;
}

/* 2026-07-29 card layout for article lists (home/category/archive/search/single) — replaces horizontal list */
body.blog .articles-list,
body.home .articles-list,
body.category .articles-list,
body.archive .articles-list,
body.search .articles-list,
body.single .articles-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns:repeat(3, 1fr);
    gap: 16px;
}

body.blog .articles-list > li,
body.home .articles-list > li,
body.category .articles-list > li,
body.archive .articles-list > li,
body.search .articles-list > li,
body.single .articles-list > li {
    margin: 0;
    border: 1px solid #d8dde3;
    border-radius: var(--umde-radius-lg);
    background: var(--umde-surface);
    box-shadow: var(--umde-shadow-card);
    overflow: hidden;
    transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease;
}

body.blog .articles-list > li:hover,
body.home .articles-list > li:hover,
body.category .articles-list > li:hover,
body.archive .articles-list > li:hover,
body.search .articles-list > li:hover,
body.single .articles-list > li:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 26px rgba(31, 51, 69, .15);
    border-color: #c9d3de;
}

body.blog .articles-list > li > a.link,
body.home .articles-list > li > a.link,
body.category .articles-list > li > a.link,
body.archive .articles-list > li > a.link,
body.search .articles-list > li > a.link,
body.single .articles-list > li > a.link {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    height: 100%;
    padding: 0 !important;
    text-decoration: none;
    color: inherit;
}

body.blog .articles-list .thumb,
body.home .articles-list .thumb,
body.category .articles-list .thumb,
body.archive .articles-list .thumb,
body.search .articles-list .thumb,
body.single .articles-list .thumb {
    position: relative;
    flex: 0 0 auto;
    width: 100% !important;
    max-width: none;
    aspect-ratio: 16/10;
    height: auto !important;
    background: #eef2f6;
    border-radius: 0;
    margin: 0 !important;
    overflow: hidden;
}

body.blog .articles-list .thumb img,
body.home .articles-list .thumb img,
body.category .articles-list .thumb img,
body.archive .articles-list .thumb img,
body.search .articles-list .thumb img,
body.single .articles-list .thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    display: block;
}

body.blog .articles-list .team,
body.home .articles-list .team,
body.category .articles-list .team,
body.archive .articles-list .team,
body.search .articles-list .team,
body.single .articles-list .team {
    position: absolute;
    top: 10px;
    left: 10px;
    right: auto;
    transform: none;
    margin: 0 !important;
    background: var(--umde-red) !important;
    padding: 0 !important;
    border-radius: var(--umde-radius);
    box-shadow: 0 2px 6px rgba(0, 0, 0, .28);
    z-index: 2;
}

body.blog .articles-list .team span,
body.home .articles-list .team span,
body.category .articles-list .team span,
body.archive .articles-list .team span,
body.search .articles-list .team span,
body.single .articles-list .team span {
    color: var(--umde-surface) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 34px;
    height: 28px;
    padding: 0 7px;
    line-height: 1;
    text-align: center;
}

body.blog .articles-list .text,
body.home .articles-list .text,
body.category .articles-list .text,
body.archive .articles-list .text,
body.search .articles-list .text,
body.single .articles-list .text {
    flex: 1 1 auto;
    min-width: 0;
    position: static;
    padding: 12px 14px 14px !important;
    min-height: 0;
    display: flex;
    flex-direction: column;
    gap: 9px;
}

body.blog .articles-list .subtitle,
body.home .articles-list .subtitle,
body.category .articles-list .subtitle,
body.archive .articles-list .subtitle,
body.search .articles-list .subtitle,
body.single .articles-list .subtitle {
    display: none;
}

body.blog .articles-list h2,
body.home .articles-list h2,
body.category .articles-list h2,
body.archive .articles-list h2,
body.search .articles-list h2,
body.single .articles-list h2 {
    font-size: 15px;
    line-height: 1.28;
    font-weight: 700;
    margin: 0;
    padding: 0;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

body.blog .articles-list .meta,
body.home .articles-list .meta,
body.category .articles-list .meta,
body.archive .articles-list .meta,
body.search .articles-list .meta,
body.single .articles-list .meta {
    display: flex;
    align-items: center;
    gap: 9px;
    flex-wrap: wrap;
    margin-top: auto;
    padding: 0 !important;
}

body.blog .articles-list .label-cat,
body.home .articles-list .label-cat,
body.category .articles-list .label-cat,
body.archive .articles-list .label-cat,
body.search .articles-list .label-cat,
body.single .articles-list .label-cat {
    position: absolute;
    left: 10px;
    bottom: 10px;
    z-index: 2;
    max-width: calc(100% - 20px);
    display: inline-block;
    color: var(--umde-surface);
    background: rgba(20, 32, 43, .82) !important;
    font-size: 11px;
    font-weight: 700;
    padding: 4px 9px;
    border-radius: var(--umde-radius-pill);
    line-height: 1.1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

body.blog .articles-list .meta .date,
body.home .articles-list .meta .date,
body.category .articles-list .meta .date,
body.archive .articles-list .meta .date,
body.search .articles-list .meta .date,
body.single .articles-list .meta .date {
    float: none;
    color: #63707e;
    font-size: 12px;
    white-space: nowrap;
}

@media (min-width: 1000px) {
    body.blog .main-content > .container,
    body.home .main-content > .container,
    body.category .main-content > .container,
    body.archive .main-content > .container,
    body.search .main-content > .container,
    body.home .main-slideshow > .container,
    body.blog .main--container,
    body.home .main--container,
    body.category .main--container,
    body.archive .main--container,
    body.search .main--container {
        float: none !important;
        width: 94% !important;
        max-width: 1240px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

@media (max-width: 980px) and (min-width: 601px) {
    body.blog .articles-list,
    body.home .articles-list,
    body.category .articles-list,
    body.archive .articles-list,
    body.search .articles-list,
    body.single .articles-list {
        grid-template-columns:repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    body.blog .articles-list,
    body.home .articles-list,
    body.category .articles-list,
    body.archive .articles-list,
    body.search .articles-list,
    body.single .articles-list {
        grid-template-columns:1fr;
        gap: 12px;
    }
}

/* ad slots inside the list are not cards: full-width banner rows */
body.blog .articles-list > li.unfall-controlled-ad-item,
body.home .articles-list > li.unfall-controlled-ad-item,
body.category .articles-list > li.unfall-controlled-ad-item,
body.archive .articles-list > li.unfall-controlled-ad-item,
body.search .articles-list > li.unfall-controlled-ad-item,
body.single .articles-list > li.unfall-controlled-ad-item {
    grid-column: 1 / -1;
    border: 0;
    background: transparent;
    box-shadow: none;
    border-radius: 0;
    overflow: visible;
}

body.blog .articles-list > li.unfall-controlled-ad-item:hover,
body.home .articles-list > li.unfall-controlled-ad-item:hover,
body.category .articles-list > li.unfall-controlled-ad-item:hover,
body.archive .articles-list > li.unfall-controlled-ad-item:hover,
body.search .articles-list > li.unfall-controlled-ad-item:hover,
body.single .articles-list > li.unfall-controlled-ad-item:hover {
    transform: none;
    box-shadow: none;
}

/* Fix wp-paginate layout (plugin CSS conflicts with theme CSS) */
.pagination .navigation {
    border-top: 1px solid #d7dbdf;
    margin-top: 8px;
    padding-top: 14px;
}

.pagination .navigation ol.wp-paginate {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 9px;
    margin: 0 !important;
    padding: 6px 12px 10px !important;
    list-style: none !important;
}

.pagination .navigation ol.wp-paginate li {
    display: block !important;
    margin: 0 !important;
    line-height: 1 !important;
    list-style: none !important;
}

.pagination .navigation ol.wp-paginate li a,
.pagination .navigation ol.wp-paginate li span {
    margin-right: 0 !important;
}

.pagination .navigation ol.wp-paginate li .title,
.pagination .navigation ol.wp-paginate li .gap {
    display: block;
    width: auto !important;
    height: auto !important;
    padding: 0 2px !important;
    border: 0 !important;
    background: transparent !important;
    color: #7c8693 !important;
    line-height: 1.2 !important;
}

.pagination .navigation ol.wp-paginate li .title {
    padding-right: 6px !important;
    font-size: 18px !important;
    font-weight: 500 !important;
}

.pagination .navigation ol.wp-paginate li .gap {
    font-size: 18px !important;
}

.pagination .navigation ol.wp-paginate li a.page,
.pagination .navigation ol.wp-paginate li span.page {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    height: 42px;
    padding: 0 12px !important;
    border: 1px solid #cfd5dc !important;
    border-radius: var(--umde-radius) !important;
    background: #f3f5f8 !important;
    color: #2a3139 !important;
    text-decoration: none !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    letter-spacing: 0.01em;
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
    transition: all .15s ease;
}

.pagination .navigation ol.wp-paginate li a.page:hover {
    border-color: #b5bdc7 !important;
    background: #e9edf2 !important;
    color: #1d2530 !important;
}

.pagination .navigation ol.wp-paginate li span.current {
    background: #3f6f9f !important;
    border-color: #3f6f9f !important;
    color: var(--umde-surface) !important;
    box-shadow: none;
}

.pagination .navigation ol.wp-paginate li a.page.larger,
.pagination .navigation ol.wp-paginate li span.page.larger {
    min-width: 62px;
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: 0;
    padding: 0 10px !important;
    border-style: dashed !important;
    background: var(--umde-surface-raised) !important;
    color: #68717d !important;
}

.pagination .navigation ol.wp-paginate li a.page.larger:hover {
    background: #e5eaf0 !important;
    border-color: #c4ccd5 !important;
    color: #5a6370 !important;
}

.pagination .navigation ol.wp-paginate li a.prev,
.pagination .navigation ol.wp-paginate li a.next {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 30px !important;
    height: 42px !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    color: #444d57 !important;
    font-size: 30px !important;
    line-height: 1 !important;
    text-indent: 0 !important;
}

.pagination .navigation ol.wp-paginate li a.prev:hover,
.pagination .navigation ol.wp-paginate li a.next:hover {
    color: #222b35 !important;
}

@media (max-width: 767px) {
    .pagination .navigation {
        padding-top: 10px;
    }

    .pagination .navigation ol.wp-paginate {
        gap: 5px;
        padding: 8px 4px !important;
        justify-content: flex-start;
    }

    .pagination .navigation ol.wp-paginate li .title {
        display: none;
    }

    .pagination .navigation ol.wp-paginate li a.page,
    .pagination .navigation ol.wp-paginate li span.page {
        min-width: 34px;
        height: 34px;
        padding: 0 8px !important;
        font-size: 16px !important;
        border-radius: var(--umde-radius) !important;
    }

    .pagination .navigation ol.wp-paginate li a.page.larger,
    .pagination .navigation ol.wp-paginate li span.page.larger {
        min-width: 52px;
        font-size: 13px !important;
    }

    .pagination .navigation ol.wp-paginate li a.prev,
    .pagination .navigation ol.wp-paginate li a.next {
        height: 34px !important;
        font-size: 24px !important;
        width: 24px !important;
    }
}

/* Keep desktop header-bar nav single-line within its column.
   Active only above 1300px where main-menu is visible — below that, .icon-menu (hamburger) takes over. */
@media only screen and (min-width: 978px) {
    #g-header .header-bar .col9 {
        min-width: 0 !important;
        overflow: hidden !important;
    }

    #g-header .header-bar .menu,
    #g-header .header-bar ul.main-menu {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        white-space: nowrap !important;
        max-width: 100% !important;
        min-width: 0 !important;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
    }

    #g-header .header-bar .menu > li,
    #g-header .header-bar ul.main-menu > li {
        flex: 0 0 auto !important;
        white-space: nowrap !important;
    }
}

/* Shrink header nav padding so all 11 items fit within col9 between 1300-1600px */
@media only screen and (min-width: 978px) and (max-width: 1599px) {
    #g-header .header-bar .menu a {
        padding: 22px 8px !important;
        font-size: 13px !important;
    }

    #g-header .header-bar .menu li + li {
        border-left-color: rgba(255, 255, 255, 0.15);
    }
}

@media only screen and (min-width: 1600px) and (max-width: 1799px) {
    #g-header .header-bar .menu a {
        padding: 23px 12px !important;
        font-size: 14px !important;
    }
}

/* Drawer padding so menu items dont hug the left edge */
#g-header .categories-list-mobile ul,
#g-header .categories-list-mobile ul.main-menu,
#g-header .categories-list-mobile ul.menu {
    padding-left: 25px !important;
    padding-right: 25px !important;
}

/* Surface PUMA20 at the top of the mobile drawer (parity with desktop nav
   order:0). The drawer renders the primary menu in DOM order, where PUMA20 is
   last; flex + order floats it first without disturbing the other items. */
@media (max-width: 977px) {
    #g-header .categories-list-mobile ul.main-menu {
        display: flex;
        flex-direction: column;
    }

    #g-header .categories-list-mobile ul.main-menu > li {
        order: 1;
    }

    #g-header .categories-list-mobile ul.main-menu > li.menu-item-puma20 {
        order: 0;
    }
}

/* Video link in mobile canton row (leftmost) — desktop already has it in nav */
.flag-video-mobile {
    display: none;
}

@media (max-width: 977px) {
    #g-header .categories-list-desktop .flags-list .flag-video-mobile {
        display: block;
        margin-right: 4px;
    }

    #g-header .categories-list-desktop .flags-list .flag-video-mobile > a {
        position: relative;
        display: inline-block;
        white-space: nowrap;
        overflow: visible;
    }

    #g-header .categories-list-desktop .flag-video-label {
        font-size: 14px !important;
        line-height: 1 !important;
    }

    #g-header .categories-list-desktop .flag-video-mobile .nav-new-badge {
        position: absolute;
        bottom: 100%;
        left: 50%;
        transform: translateX(-50%);
        margin: 0 0 2px 0;
        padding: 0 4px;
        font-size: 8px;
        line-height: 1.5;
        border-radius: var(--umde-radius);
        background: #7ed957;
        color: #0b3d00;
        animation: none;
    }
}

/* Canton flags row: below ~1300px the row was a horizontal scroller
   (.categories-list-desktop overflow-x:auto), so every canton past the
   viewport edge (VD/VS/ZG/ZH on tablet, GR..ZH on phone) was hidden with
   no visible scroll affordance. Wrap the row instead so ALL 26 cantons
   stay on screen at every width. */
@media (max-width: 1300px) {
    #g-header .categories-header-part {
        height: auto !important;
    }

    #g-header .categories-list-desktop {
        overflow-x: visible !important;
    }

    #g-header .categories-list-desktop .flags-list {
        flex-wrap: wrap !important;
        justify-content: center !important;
        row-gap: 6px;
        column-gap: 4px;
    }

    #g-header .categories-list-desktop .flags-list li {
        flex: 0 0 auto !important;
    }
}

/* Mobile canton picker: keep the header quiet, then reveal every canton in a
   deliberate grid instead of squeezing abbreviations into a second row. */
#g-header .region-menu-toggle {
    display: none;
}

@media (max-width: 977px) {
    #g-header {
        position: relative;
        overflow: visible !important;
    }

    /* The picker belongs in the main mobile header, not in a second empty row. */
    #g-header .categories-header-part {
        position: static !important;
        height: 0 !important;
        min-height: 0 !important;
        /* The main mobile header is fixed; retain its normal-flow offset so
           the feature pills (Video, Karte, YouTube, WhatsApp) are not hidden behind it. */
        margin-top: 85px !important;
        padding: 0 !important;
    }

    #g-header .header-bar .header-right {
        display: flex;
        justify-content: flex-end;
        align-items: center;
    }

    #g-header .header-bar .header-right .social {
        display: none !important;
    }

    #g-header .header-bar .region-menu-toggle {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 7px;
        min-width: 76px;
        height: 38px;
        margin: 0 7px 0 0;
        padding: 0 9px;
        border: 1px solid #d7dce2;
        border-radius: var(--umde-radius);
        background: var(--umde-surface);
        color: var(--umde-ink-soft);
        font-family: "proxima_novasemibold";
        font-size: 13px;
        line-height: 1;
    }

    #g-header .region-menu-toggle__icon {
        display: grid;
        gap: 3px;
        width: 16px;
    }

    #g-header .region-menu-toggle__icon i {
        display: block;
        height: 2px;
        border-radius: var(--umde-radius-mark);
        background: var(--umde-red);
    }

    #g-header .categories-list-desktop .flags-list {
        display: none !important;
        position: absolute;
        z-index: 1200;
        top: 100%;
        left: 8px;
        right: 8px;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 7px;
        margin: 0;
        padding: 12px;
        border: 1px solid #d7dce2;
        border-radius: var(--umde-radius);
        background: var(--umde-surface);
        box-shadow: 0 8px 22px rgba(0, 0, 0, .16);
    }

    #g-header .categories-list-desktop .flags-list.is-open {
        display: grid !important;
    }

    #g-header .categories-list-desktop .flags-list .flag-video-mobile {
        display: none !important;
    }

    #g-header .categories-list-desktop .flags-list li {
        min-width: 0 !important;
        padding: 0 !important;
    }

    #g-header .categories-list-desktop .flags-list li a {
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 34px;
        border: 1px solid #e2e5e9;
        border-radius: var(--umde-radius);
        background: #f8f9fa;
        text-decoration: none;
    }

    #g-header .categories-list-desktop .flags-list .region-abbreviation {
        font-size: 15px !important;
    }
}

/* --- Rückrufe/Fahndungen desktop nav: order, NEU badge, fit (2026-07-24) --- */
@media only screen and (min-width: 978px) {
    /* tighter side padding so more entries fit on one row */
    #g-header .header-bar .menu a {
        padding: 22px 9px !important;
        font-size: 13px !important;
    }

    /* Order follows Appearance > Menus. The Swiss theme pinned it here with
       CSS `order:` on hardcoded menu-item IDs, which meant reordering the nav
       required editing the theme. */
    /* scroll the row instead of hard-clipping items mid-word when they overflow */
    #g-header .header-bar .col9 {
        overflow-x: auto !important;
        overflow-y: visible !important;
        scrollbar-width: thin;
    }

    #g-header .header-bar ul.main-menu {
        overflow: visible !important;
    }
}

/* smaller language picker to reclaim nav space */
.custom-gtranslate {
    padding: 0 6px !important;
}

.custom-gtranslate .gt_selector {
    min-width: 112px !important;
    height: 34px !important;
    font-size: 13px !important;
    line-height: 34px !important;
    padding: 0 24px 0 10px !important;
}


/* 2026-07-29 top stories as bold overlay hero cards (stand out above the list) */
body.home .main-slideshow .top-story-box {
    position: relative;
    border-radius: var(--umde-radius-lg);
    overflow: hidden;
    box-shadow: 0 12px 30px rgba(16, 32, 48, .20);
    margin-bottom: 16px;
    background: #0a121a;
    min-height: 360px;
}

body.home .main-slideshow .top-story-box-wrapper {
    display: block;
    height: 360px;
    padding-bottom: 0;
    margin: 0;
}

body.home .main-slideshow .top-story-box-wrapper img {
    transition: transform .5s ease;
}

body.home .main-slideshow .top-story-box:hover .top-story-box-wrapper img {
    transform: scale(1.05);
}

body.home .main-slideshow .top-story-box::before {
    content: "TOP-MELDUNG";
    position: absolute;
    top: 16px;
    left: 16px;
    z-index: 3;
    background: var(--umde-red);
    color: var(--umde-surface);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
    padding: 7px 11px;
    border-radius: var(--umde-radius);
    box-shadow: 0 3px 10px rgba(0, 0, 0, .35);
}

body.home .main-slideshow .top-story-text {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    padding: 52px 22px 18px;
    background: linear-gradient(to top, rgba(8, 15, 22, .68) 0%, rgba(8, 15, 22, .12) 52%, rgba(8, 15, 22, 0) 80%);
}

body.home .main-slideshow .top-story-text a {
    text-decoration: none;
}

body.home .main-slideshow .top-story-text span {
    color: #7fe0b0;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .02em;
    margin: 0 0 6px;
    padding: 0;
    display: block;
}

body.home .main-slideshow .top-story-text span:empty {
    display: none;
}

body.home .main-slideshow .top-story-text h2 {
    color: var(--umde-surface);
    font-size: 26px;
    line-height: 1.14;
    margin: 0;
    padding: 0;
    font-weight: 800;
    letter-spacing: -.01em;
    text-shadow: 0 1px 3px rgba(0, 0, 0, .85), 0 2px 14px rgba(0, 0, 0, .6);
}

@media (max-width: 767px) {
    body.home .main-slideshow .top-story-box-wrapper {
        height: 250px;
    }

    body.home .main-slideshow .top-story-text {
        padding: 40px 14px 14px;
    }

    body.home .main-slideshow .top-story-text h2 {
        font-size: 21px;
    }

    body.home .main-slideshow .top-story-box {
        margin-bottom: 12px;
        min-height: 250px;
    }
}

/* 2026-07-29 remove grey panel + shadow behind lists & top-stories (cards sit on page bg) */
body.blog .main-content,
body.home .main-content,
body.category .main-content,
body.archive .main-content,
body.search .main-content {
    background: transparent !important;
    box-shadow: none !important;
}

body.blog .main-slideshow,
body.home .main-slideshow,
body.category .main-slideshow,
body.archive .main-slideshow,
body.search .main-slideshow {
    background: transparent !important;
    box-shadow: none !important;
}

/* 2026-08-06 Audienzz halfpage (adnz_halfpage_1) -> sticky right-gutter rail.
   Per Audienzz: homepage/tower ads belong on the RIGHT, OUTSIDE the ~1240px
   content container, and should travel with the scroll for viewability
   ("mitfahren"). It lives in the empty right margin and only appears when the
   viewport is wide enough to fit 300px in the right margin WITHOUT overlapping
   the 1240px-wide centered content. Overlap-free requires
   vw >= 1240 + 2*(300+16+gap); at >=1900px there is a ~14px gap, so that is the
   gate. Below it there is no room -> hidden (as Audienzz expects). top:240px
   starts it below the 228px static header. position:fixed keeps it visible
   while the reader scrolls. */
body.home .skyscraper-wrapper,
body.single .skyscraper-wrapper,
body.category .skyscraper-wrapper,
body.archive .skyscraper-wrapper {
    display: none;
}

@media (min-width: 1900px) {
    body.home .skyscraper-wrapper,
    body.single .skyscraper-wrapper,
    body.category .skyscraper-wrapper,
    body.archive .skyscraper-wrapper {
        display: block !important;
        float: none !important;
        position: fixed;
        top: 240px;
        right: 16px;
        left: auto !important;
        width: 300px !important;
        max-width: 300px !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        z-index: 40;
    }

    body.home .skyscraper-wrapper > #adnz_halfpage_1,
    body.single .skyscraper-wrapper > #adnz_halfpage_1,
    body.category .skyscraper-wrapper > #adnz_halfpage_1,
    body.archive .skyscraper-wrapper > #adnz_halfpage_1 {
        width: 300px !important;
        max-width: 300px !important;
        margin: 0 auto !important;
    }
}

/* 2026-08-06 Audienzz rectangle (adnz_rectangle_1) sticky in the article
   sidebar so it "mitfährt" (higher viewability). Sidebar only renders on
   single posts; on listing pages the sidebar column is display:none. */
@media (min-width: 978px) {
    body.single .main-content .sidebar-col {
        align-self: flex-start;
    }

    body.single .main-content .sidebar-col .widget--ad {
        position: sticky;
        top: 140px;
    }
}

/* 2026-08-06 Audienzz rectangle as a grid tile in the related list — center the
   300x250 and drop the article-card chrome so it reads as an ad slot. */
body.single .articles-list > li.unfall-ad-tile {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    min-height: 250px;
}

body.single .articles-list > li.unfall-ad-tile:hover {
    transform: none !important;
    box-shadow: none !important;
}

/* 2026-08-06 AdSense unit spacing */
.rail-google-ad {
    margin-top: 12px;
    text-align: center;
    width: 300px;
}

.rail-google-ad .adsbygoogle {
    width: 300px !important;
    margin: 0 auto;
}

.unfall-in-article-ad {
    margin: 22px 0;
    text-align: center;
    clear: both;
}

.unfall-multiplex-ad {
    margin: 24px auto;
}

/* 2026-08-06 manual sticky anchor CSS removed — AdSense Auto-ads Overlay handles the anchor now. */
/* 2026-07-29 NEU badge stacked ABOVE the nav label (Video/Karte/Rückrufe) */
@media (min-width: 768px) {
    #g-header .header-bar ul.main-menu > li.menu-item-545204 > a {
        display: inline-flex !important;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 3px;
        line-height: 1.05;
        padding-top: 9px !important;
        padding-bottom: 9px !important;
    }

    #g-header .header-bar ul.main-menu > li.menu-item-video > a .nav-new-badge,
    #g-header .header-bar ul.main-menu > li.menu-item-karte > a .nav-new-badge {
        order: -1;
        margin-left: 0 !important;
    }

    #g-header .header-bar ul.main-menu > li.menu-item-545204 > a::after {
        order: -1;
        margin-left: 0 !important;
    }
}

/* 2026-07-29 selected-category red dot ABOVE label (+ live pulse on Breaking News) */
/* The pulsing dot was pinned to li.menu-item-324148 -- a menu item ID from the
   Swiss install, which means nothing on this site, so the pulse never appeared
   on anything. It is li.menu-item-live now: an operator types "menu-item-live"
   into the CSS Classes box in Appearance > Menus, the same way .nav-new-badge is
   opted into per item. Enable the CSS Classes field under Screen Options if it
   is not visible. */
@media (min-width: 768px) {
    #g-header .header-bar ul.main-menu > li.current-menu-item > a,
    #g-header .header-bar ul.main-menu > li.current_page_item > a,
    #g-header .header-bar ul.main-menu > li.menu-item-live > a {
        display: inline-flex !important;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 4px;
        line-height: 1.05;
        padding-top: 9px !important;
        padding-bottom: 9px !important;
    }

    #g-header .header-bar ul.main-menu > li.current-menu-item > a::before,
    #g-header .header-bar ul.main-menu > li.current_page_item > a::before,
    #g-header .header-bar ul.main-menu > li.menu-item-live > a::before {
        content: "";
        order: -1;
        flex: 0 0 auto;
        width: 7px;
        height: 7px;
        border-radius: 50%;
        background: var(--umde-red);
    }

    #g-header .header-bar ul.main-menu > li.menu-item-live > a::before {
        box-shadow: 0 0 0 0 rgba(227, 0, 15, .55);
        animation: ufbBreak 1.8s infinite;
    }

    @keyframes ufbBreak {
        0% {
            box-shadow: 0 0 0 0 rgba(227, 0, 15, .55)
        }
        70% {
            box-shadow: 0 0 0 7px rgba(227, 0, 15, 0)
        }
        100% {
            box-shadow: 0 0 0 0 rgba(227, 0, 15, 0)
        }
    }
    @media (prefers-reduced-motion: reduce) {
        #g-header .header-bar ul.main-menu > li.menu-item-live > a::before {
            animation: none
        }
    }
}

/* 2026-07-29 brand band: logo left + CTA pills right (desktop >=978px) */
@media (min-width: 978px) {
    #g-header .top-bar > .container--fluid {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 20px;
        flex-wrap: wrap;
        max-width: none;
        margin: 0 auto;
        padding: 12px 20px;
    }

    #g-header .top-bar .dekstop-team-list {
        flex: 0 0 auto;
        margin: 0;
        text-align: left;
    }

    #g-header .top-bar .logo-police img {
        height: 44px;
        width: auto;
        display: block;
    }

    #g-header .top-bar .unfall-feat-banner {
        background: none !important;
        border: 0 !important;
        box-shadow: none !important;
        margin-left: auto;
        flex: 0 1 auto;
    }

    #g-header .top-bar .ufb-inner {
        padding: 0 !important;
        margin: 0 !important;
        justify-content: flex-end;
        gap: 8px;
        max-width: none;
    }

    #g-header .top-bar .ufb-btn--map {
        background: var(--umde-surface-sunken) !important;
        color: var(--umde-slate-800) !important;
        border: 1px solid var(--umde-hairline) !important;
    }

    #g-header .top-bar .ufb-btn--map:hover {
        background: #e9edf2 !important;
        color: var(--umde-slate-800) !important;
    }

    #g-header .top-bar .ufb-btn--video {
        background: var(--umde-red) !important;
        color: var(--umde-surface) !important;
        box-shadow: 0 3px 10px rgba(227, 0, 15, .3) !important;
    }
}

/* 2026-07-29 canton rail -> slim slate band (match preview) */
@media (min-width: 978px) {
    #g-header .categories-list-desktop {
        background: var(--umde-slate-700) !important;
    }

    #g-header .categories-header-part {
        background: var(--umde-slate-700) !important;
    }

    #g-header .categories-list-desktop .flags-list {
        background: var(--umde-slate-700);
        padding: 7px 14px;
    }

    #g-header .categories-list-desktop .flags-list li a .region-abbreviation {
        color: var(--umde-red-on-dark) !important;
        font-size: 13px !important;
        font-weight: 800 !important;
        padding: 4px 8px;
        border-radius: var(--umde-radius);
        display: inline-block;
        transition: background .12s, color .12s;
    }

    #g-header .categories-list-desktop .flags-list li a:hover .region-abbreviation {
        background: var(--umde-red) !important;
        color: var(--umde-surface) !important;
    }
}

/* 2026-07-29 align header bands to one 1240 content column (desktop) */
@media (min-width: 978px) {
    #g-header .top-bar > .container--fluid,
    #g-header .header-bar > .container,
    #g-header .categories-list-desktop > .flags-list {
        max-width: none !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
        box-sizing: border-box;
    }

    #g-header .categories-list-desktop {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

@media (min-width: 978px) {
    #g-header .top-bar .dekstop-team-list {
        padding-left: 0 !important;
        margin-left: 0 !important;
    }

    #g-header .top-bar .logo-police {
        padding-left: 0 !important;
        margin-left: 0 !important;
    }
}

@media (min-width: 978px) {
    #g-header .top-bar > .container--fluid {
        justify-content: flex-start !important;
    }

    #g-header .top-bar .unfall-feat-banner {
        margin-left: auto !important;
    }

    #g-header .top-bar .dekstop-team-list {
        margin-left: 0 !important;
    }
}

/* 2026-07-29 DE + search in brand band (desktop) */
@media (min-width: 978px) {
    #g-header .top-bar .uh-brandtools {
        display: flex;
        align-items: center;
        gap: 10px;
        position: relative;
        flex: 0 0 auto;
        margin-left: 14px;
    }

    #g-header .top-bar .btn-search {
        display: inline-flex;
        align-items: center;
        gap: 7px;
        padding: 9px 13px;
        border-radius: var(--umde-radius);
        color: var(--umde-slate-800);
        font-weight: 700;
        font-size: 13px;
        border: 1px solid var(--umde-hairline);
        background: var(--umde-surface);
        cursor: pointer;
        text-decoration: none;
        white-space: nowrap;
    }

    #g-header .top-bar .btn-search:hover {
        background: var(--umde-surface-sunken);
    }

    #g-header .top-bar .btn-search img {
        width: 16px;
        height: 16px;
        filter: brightness(0);
    }

    #g-header .top-bar .search-form {
        display: none;
        position: absolute;
        top: calc(100% + 8px);
        right: 0;
        margin: 0;
        padding: 6px;
        border: 1px solid var(--umde-hairline);
        border-radius: var(--umde-radius);
        background: var(--umde-surface);
        box-shadow: 0 10px 26px rgba(16, 32, 48, .16);
        z-index: 2000;
    }

    #g-header .top-bar .search-form.search-open {
        display: flex;
        align-items: center;
        gap: 6px;
    }

    #g-header .top-bar .search-form input[type="text"] {
        width: 220px;
        height: 34px;
        margin: 0;
        padding: 0 10px;
        border: 1px solid var(--umde-hairline);
        border-radius: var(--umde-radius);
        background: var(--umde-surface);
        color: var(--umde-slate-800);
    }

    #g-header .top-bar .search-form input[type="submit"] {
        height: 34px;
        min-width: 70px;
        padding: 0 12px;
        border: 0;
        border-radius: var(--umde-radius);
        background: var(--umde-red);
        color: var(--umde-surface);
        font-size: 13px;
        cursor: pointer;
    }

    #g-header .top-bar .custom-gtranslate .gt_selector {
        color: var(--umde-slate-800);
        background: var(--umde-surface);
        border: 1px solid var(--umde-hairline);
        border-radius: var(--umde-radius);
        padding: 8px 26px 8px 12px;
        font-weight: 700;
        font-size: 13px;
    }

    #g-header .top-bar .custom-gtranslate > .gtranslate_wrapper::after {
        filter: none;
    }
}

/* 2026-07-29 desktop order: brand -> nav -> canton rail (match preview) */
@media (min-width: 978px) {
    #g-header {
        display: flex;
        flex-direction: column;
    }

    #g-header .top-bar {
        order: 1;
    }

    #g-header .sticky-header, #g-header .header-bar {
        order: 2;
    }

    #g-header .categories-header-part {
        order: 3;
    }
}

@media (min-width: 1200px) {
    #g-header .top-bar > .container--fluid {
        flex-wrap: nowrap !important;
    }

    #g-header .top-bar .unfall-feat-banner {
        margin-left: auto !important;
    }

    #g-header .top-bar .uh-brandtools {
        margin-left: 12px !important;
    }
}

@media (max-width: 977px) {
    #g-header .top-bar .uh-brandtools {
        display: none !important;
    }
}

/* 2026-07-29 nav uppercase + A-roads right + canton eyebrow (match preview) */
@media (min-width: 978px) {
    #g-header .categories-list-desktop .flags-list[data-rail-label]::before {
        content: attr(data-rail-label);
        flex: 0 0 auto;
        align-self: center;
        color: #7f8ea0;
        font-size: 10px;
        font-weight: 800;
        letter-spacing: .14em;
        margin-right: 10px;
    }
}

/* 2026-07-29 fix: theme caps .container--fluid/.container to fixed widths <1300px,
   which centered+shrank the brand band; force full-width bands + one-row canton rail */
@media (min-width: 978px) {
    #g-header .top-bar > .container--fluid {
        width: 100% !important;
    }

    #g-header .header-bar > .container {
        width: 100% !important;
        max-width: none !important;
    }

    #g-header .categories-list-desktop > .flags-list,
    #g-header .categories-list-desktop .flags-list {
        width: 100% !important;
        box-sizing: border-box;
        flex-wrap: nowrap !important;
        overflow-x: auto;
        overflow-y: hidden;
        scrollbar-width: thin;
    }
}

/* space-between clips a nowrap flex row on BOTH sides once it overflows
   (left items become unreachable) -> left-align + gap while it can overflow,
   spread only when everything fits */
@media (min-width: 978px) and (max-width: 1439px) {
    #g-header .categories-list-desktop .flags-list {
        justify-content: flex-start !important;
        gap: 0 2px;
    }

    #g-header .categories-list-desktop .flags-list li a .region-abbreviation {
        font-size: 12px !important;
        padding: 4px 6px;
    }
}

@media (min-width: 1440px) {
    #g-header .categories-list-desktop .flags-list {
        justify-content: space-between !important;
    }
}

/* ===== uh-preview-match 2026-07-29: align header with approved prototype ===== */
@media (min-width: 978px) {
    /* nav band: one dark row at ALL desktop widths, uppercase, no separators */
    #g-header .header-bar {
        background: var(--umde-slate-900) !important;
    }

    #g-header .header-bar .row {
        display: flex !important;
        align-items: stretch !important;
    }

    #g-header .header-bar .col9 {
        flex: 1 1 auto !important;
        width: auto !important;
        float: none !important;
        min-width: 0 !important;
        overflow: hidden !important;
    }

    #g-header .header-bar .col3 {
        display: none !important;
    }

    #g-header .header-bar .menu,
    #g-header .header-bar ul.main-menu {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        max-width: 100% !important;
        min-width: 0 !important;
        padding: 0 12px !important;
        margin: 0 !important;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        width: 100% !important;
    }

    #g-header .header-bar .menu::-webkit-scrollbar,
    #g-header .header-bar ul.main-menu::-webkit-scrollbar {
        display: none;
    }

    #g-header .header-bar .menu > li,
    #g-header .header-bar ul.main-menu > li {
        flex: 0 0 auto !important;
        display: flex !important;
        border: none !important;
        white-space: nowrap !important;
        order: 7;
    }

    #g-header .header-bar .menu li + li {
        border-left: none !important;
    }

    #g-header .header-bar .menu > li > a,
    #g-header .header-bar ul.main-menu > li > a {
        display: inline-flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 3px !important;
        color: #dfe6ee !important;
        font-size: 12.5px !important;
        font-weight: 700 !important;
        letter-spacing: .04em !important;
        text-transform: uppercase !important;
        padding: 14px 13px !important;
        line-height: 1 !important;
        border: none !important;
        background: transparent;
    }

    #g-header .header-bar .menu > li > a:hover {
        color: var(--umde-surface) !important;
        background: rgba(255, 255, 255, .06) !important;
    }

    #g-header .header-bar .menu li.current-menu-item > a {
        color: var(--umde-surface) !important;
    }

    /* NEU badge tuned to prototype */
    #g-header .header-bar .menu .nav-new-badge {
        order: -1 !important;
        font-size: 8.5px !important;
        font-weight: 800 !important;
        letter-spacing: .08em !important;
        background: var(--umde-red) !important;
        color: var(--umde-surface) !important;
        padding: 2px 6px !important;
        border-radius: var(--umde-radius-pill) !important;
        line-height: 1 !important;
        margin: 0 !important;
    }

    /* brand band CTA pills: compact prototype spec */
    #g-header .top-bar .unfall-feat-banner {
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        margin-left: auto !important;
    }

    #g-header .top-bar .ufb-inner {
        padding: 0 !important;
        gap: 8px !important;
        flex-wrap: nowrap !important;
        max-width: none !important;
    }

    #g-header .top-bar .ufb-actions {
        gap: 8px !important;
        flex-wrap: nowrap !important;
    }

    #g-header .top-bar .ufb-btn {
        font-size: 12.5px !important;
        font-weight: 700 !important;
        padding: 8px 13px !important;
        gap: 7px !important;
        border-radius: var(--umde-radius-pill) !important;
        line-height: 1 !important;
        box-shadow: none !important;
    }

    #g-header .top-bar .ufb-btn:hover {
        transform: none !important;
        box-shadow: none !important;
    }

    #g-header .top-bar .ufb-btn svg {
        width: 15px !important;
        height: 15px !important;
    }

    #g-header .top-bar .ufb-btn--video,
    #g-header .top-bar .ufb-btn--map {
        background: var(--umde-surface) !important;
        border: 1px solid var(--umde-hairline) !important;
        color: var(--umde-slate-900) !important;
    }

    #g-header .top-bar .ufb-btn--video:hover,
    #g-header .top-bar .ufb-btn--map:hover {
        background: var(--umde-surface-raised) !important;
        color: var(--umde-slate-900) !important;
    }

    #g-header .top-bar .ufb-btn--youtube {
        background: var(--umde-red) !important;
        border: 1px solid var(--umde-red) !important;
        color: var(--umde-surface) !important;
    }

    #g-header .top-bar .ufb-btn--youtube:hover {
        background: var(--umde-red-hover) !important;
    }

    #g-header .top-bar .ufb-btn--whatsapp {
        background: #22a45d !important;
        border: 1px solid #22a45d !important;
        color: var(--umde-surface) !important;
    }

    #g-header .top-bar .ufb-btn--whatsapp:hover {
        background: #1c8f50 !important;
    }

    /* tools group: DE code + icon search, hairline divider */
    #g-header .top-bar .uh-brandtools {
        gap: 6px !important;
        padding-left: 14px !important;
        margin-left: 6px !important;
        border-left: 1px solid var(--umde-hairline) !important;
    }

    #g-header .top-bar .custom-gtranslate {
        padding: 0 !important;
        border: none !important;
        float: none !important;
    }

    #g-header .top-bar .custom-gtranslate .gt_selector {
        min-width: 0 !important;
        width: auto !important;
        height: 36px !important;
        line-height: 36px !important;
        border: none !important;
        background: transparent !important;
        color: var(--umde-slate-400) !important;
        font-family: inherit !important;
        font-size: 12.5px !important;
        font-weight: 700 !important;
        padding: 0 20px 0 8px !important;
        box-shadow: none !important;
        border-radius: var(--umde-radius) !important;
        cursor: pointer;
        -webkit-appearance: none;
        appearance: none;
    }

    #g-header .top-bar .custom-gtranslate .gt_selector:hover {
        background: var(--umde-surface-raised) !important;
    }

    #g-header .top-bar .custom-gtranslate > .gtranslate_wrapper::after {
        border-right-color: var(--umde-slate-400) !important;
        border-bottom-color: var(--umde-slate-400) !important;
        width: 6px !important;
        height: 6px !important;
        right: 6px !important;
    }

    #g-header .top-bar .btn-search {
        width: 36px !important;
        height: 36px !important;
        padding: 0 !important;
        border: none !important;
        border-radius: var(--umde-radius) !important;
        background: transparent !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    #g-header .top-bar .btn-search:hover {
        background: var(--umde-surface-raised) !important;
    }

    #g-header .top-bar .btn-search span {
        display: none !important;
    }

    #g-header .top-bar .btn-search img {
        width: 18px !important;
        height: 18px !important;
    }

    /* canton rail: left-packed tight chips like prototype */
    #g-header .categories-header-part {
        height: auto !important;
        padding: 0 !important;
        background: var(--umde-slate-700) !important;
    }

    #g-header .categories-list-desktop ul.flags-list {
        display: flex !important;
        justify-content: flex-start !important;
        align-items: center !important;
        gap: 0 !important;
        overflow-x: auto !important;
        padding: 9px 14px !important;
        margin: 0 !important;
        scrollbar-width: none;
    }

    #g-header .categories-list-desktop ul.flags-list::-webkit-scrollbar {
        display: none;
    }

    #g-header .categories-list-desktop ul.flags-list[data-rail-label]::before {
        content: attr(data-rail-label);
        flex: 0 0 auto;
        font-size: 10px;
        font-weight: 800;
        letter-spacing: .14em;
        text-transform: uppercase;
        color: #8fa1b2;
        margin-right: 12px;
    }

    #g-header .categories-list-desktop ul.flags-list li {
        flex: 0 0 auto !important;
        min-width: 0 !important;
        width: auto !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    #g-header .categories-list-desktop ul.flags-list li a {
        display: block !important;
        padding: 5px 9px !important;
        border-radius: var(--umde-radius) !important;
        transition: background .12s;
    }

    #g-header .categories-list-desktop .region-abbreviation {
        font-size: 12.5px !important;
        font-weight: 800 !important;
        letter-spacing: .03em !important;
        color: var(--umde-red-on-dark) !important;
        line-height: 1 !important;
        display: block !important;
    }

    #g-header .categories-list-desktop ul.flags-list li a:hover {
        background: var(--umde-red) !important;
    }

    #g-header .categories-list-desktop ul.flags-list li a:hover .region-abbreviation {
        color: var(--umde-surface) !important;
    }
}

/* ===== /uh-preview-match ===== */

/* ===== uh-preview-match MOBILE 2026-07-29: banner -> drawer (prototype) ===== */
@media (max-width: 977px) {
    /* kill the full-width CTA strip that overlapped the logo row */
    #g-header .top-bar .unfall-feat-banner {
        display: none !important;
    }

    /* channel pills injected into the slide-out drawer by JS */
    #g-header .categories-list-mobile .m-cta {
        display: flex;
        flex-direction: column;
        gap: 8px;
        padding: 14px 18px 8px;
        margin-top: 8px;
        border-top: 1px solid rgba(255, 255, 255, .14);
    }

    #g-header .categories-list-mobile .m-cta a {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        padding: 12px;
        border-radius: var(--umde-radius-pill);
        font-weight: 700;
        font-size: 14px;
        text-decoration: none;
        line-height: 1;
        white-space: nowrap;
    }

    #g-header .categories-list-mobile .m-cta a svg {
        width: 17px;
        height: 17px;
        flex-shrink: 0;
    }

    #g-header .categories-list-mobile .m-cta .ufb-btn--video {
        background: var(--umde-red);
        color: var(--umde-surface);
    }

    #g-header .categories-list-mobile .m-cta .ufb-btn--map {
        background: rgba(255, 255, 255, .12);
        color: var(--umde-surface);
        border: 1px solid rgba(255, 255, 255, .5);
    }

    #g-header .categories-list-mobile .m-cta .ufb-btn--youtube {
        background: var(--umde-red);
        color: var(--umde-surface);
    }

    #g-header .categories-list-mobile .m-cta .ufb-btn--whatsapp {
        background: #22a45d;
        color: var(--umde-surface);
    }
}

/* ===== /uh-preview-match MOBILE ===== */

/* Single-post card redesign
   -------------------------
   was header.php:1783-1876 */
/* ===== 2026-07-29 Single-post cohesive card redesign (Torben) =====
   CSS-only; overrides existing component styles via body.single specificity.
   Preserves all markup, ad slots, the Leaflet mini-map, TTS and lightbox. */
body.single .single-post .featured-video,
body.single .single-post .featured-image {
    margin: 0 0 14px;
}

body.single .article-watch-wrap {
    border-radius: var(--umde-radius-lg);
    overflow: hidden;
    border: 1px solid var(--umde-hairline-soft);
    box-shadow: var(--umde-shadow-card);
}

body.single .single-post .featured-image--lead .thumb,
body.single .single-post .featured-image--gallery .thumb {
    border-radius: var(--umde-radius-lg);
}

body.single .single-post .img-lightbox {
    cursor: zoom-in;
    display: block;
}

/* WP [gallery] (video-post images + editor galleries) -> clean thumbnail grid */
body.single .single-post .gallery {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
    margin: 0 0 14px !important;
}

@media (max-width: 520px) {
    body.single .single-post .gallery {
        grid-template-columns: repeat(3, 1fr);
    }
}

body.single .single-post .gallery br {
    display: none;
}

body.single .single-post .gallery .gallery-item {
    width: auto !important;
    margin: 0 !important;
    float: none !important;
    padding: 0 !important;
}

body.single .single-post .gallery .gallery-icon {
    margin: 0 !important;
}

body.single .single-post .gallery .gallery-icon img {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    display: block;
    border: 1px solid var(--umde-hairline-soft) !important;
    border-radius: var(--umde-radius);
    cursor: zoom-in;
    transition: transform .15s ease;
}

body.single .single-post .gallery .gallery-icon img:hover {
    transform: scale(1.04);
}

body.single .single-post .gallery .gallery-caption {
    display: none;
}

/* Lone gallery image (video posts route their image through a 150px [gallery]):
   keep it a sharp, left-aligned thumbnail that opens full-res in the lightbox. */
body.single .single-post .gallery .gallery-item:only-of-type {
    max-width: 240px;
}

/* Lead head + meta row (badge / event pill / date / Vorlesen) */
body.single .single-post .article-lead-head {
    margin: 14px 0 16px;
}

body.single .single-post .article-lead-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 9px;
    margin: 12px 0 0;
}

body.single .single-post .article-lead-meta .alm-badge {
    background: var(--umde-red);
    color: var(--umde-surface);
    font-weight: 800;
    font-size: 12.5px;
    line-height: 1;
    border-radius: var(--umde-radius);
    padding: 5px 9px;
    box-shadow: 0 2px 6px rgba(211, 19, 43, .28);
}

body.single .single-post .article-lead-meta .alm-pill {
    background: #1f3345;
    color: var(--umde-surface);
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    border-radius: var(--umde-radius-pill);
    padding: 6px 11px;
}

body.single .single-post .article-lead-meta .alm-date {
    color: #63707e;
    font-size: 13px;
}

body.single .single-post .article-lead-meta .article-tts--lead {
    margin: 0 0 0 auto;
}

/* Mini-map: align frame to the card system (keeps Leaflet + CTA + legend) */
body.single .single-post .unfall-minimap {
    border-radius: var(--umde-radius-lg);
    border-color: var(--umde-hairline-soft);
    box-shadow: var(--umde-shadow-card);
}

body.single .single-post .unfall-minimap-cta {
    border-radius: var(--umde-radius-pill);
    background: var(--umde-red);
    padding: 8px 13px;
    box-shadow: 0 6px 16px rgba(211, 19, 43, .28);
}

/* Info boxes (Mehr Meldungen / Einordnung) -> unified card + red-tick heading */
body.single .single-post .unfall-agg,
body.single .single-post .unfall-ctx {
    background: var(--umde-surface);
    border: 1px solid var(--umde-hairline-soft);
    border-radius: var(--umde-radius-lg);
    box-shadow: var(--umde-shadow-card);
    padding: 18px;
    margin: 22px 0;
}

body.single .single-post .unfall-agg-title,
body.single .single-post .unfall-ctx-title {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 17px;
    font-weight: 800;
    color: #12171c;
    margin: 0 0 14px;
}

body.single .single-post .unfall-agg-title::before,
body.single .single-post .unfall-ctx-title::before {
    content: "";
    width: 4px;
    height: 20px;
    border-radius: var(--umde-radius-mark);
    background: var(--umde-red);
    flex: 0 0 auto;
}

/* Unify all pills (agg canton pills + article-category pills) */
body.single .single-post .unfall-agg-pill,
body.single .single-post .article-category-pill {
    background: #eef2f7 !important;
    border: 1px solid var(--umde-hairline-soft) !important;
    color: #46515f !important;
    border-radius: var(--umde-radius-pill);
    padding: 6px 12px;
    font-size: 13px;
    font-weight: 600;
}

body.single .single-post .unfall-agg-pill:hover,
body.single .single-post .article-category-pill:hover {
    background: #e3e9f0 !important;
    border-color: #d6dee8 !important;
    color: #12171c !important;
}

/* Social share -> quiet monochrome round buttons */
body.single .single-post .article-socialbar {
    display: flex;
    gap: 10px;
}

body.single .single-post .article-socialbar a {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    border: 1px solid var(--umde-hairline-soft);
    background: #f3f5f8;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--umde-slate-800);
    transition: background .15s ease, color .15s ease, border-color .15s ease;
}

body.single .single-post .article-socialbar a:hover {
    background: var(--umde-red);
    color: var(--umde-surface);
    border-color: var(--umde-red);
}

body.single .single-post .article-socialbar a i {
    font-size: 17px;
}

/* Follow strip -> card shell */
body.single .single-post .article-follow {
    background: var(--umde-surface);
    border: 1px solid var(--umde-hairline-soft);
    box-shadow: var(--umde-shadow-card);
    border-radius: var(--umde-radius-lg);
}

/* Related grid: fill the content column without clipping (sidebar kept) */
body.single .content-col .articles-list {
    grid-template-columns: repeat(auto-fill, minmax(215px, 1fr));
}

/* Center the single-post column on desktop — the theme floats .main--container
   left, so content hugged the left edge with a big right gutter. Match the
   centered max-width used across the rest of the site. */
@media (min-width: 1000px) {
    body.single .main--container,
    body.single .single-post,
    body.single .main-content {
        float: none !important;
        width: auto !important;
    }

    body.single .single-post > .container,
    body.single .main-content > .container,
    body.single main > .container {
        float: none !important;
        width: 94% !important;
        max-width: 1040px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

/* Article body lists (the_content only — direct children, so the .unfall-agg /
   .unfall-ctx link lists inside .post-content-area keep their own styling) */
body.single .post-content-area > ul,
body.single .post-content-area > ol {
    margin: 0 0 14px;
    padding-left: 1.4em;
}

body.single .post-content-area > ul {
    list-style: disc;
}

body.single .post-content-area > ol {
    list-style: decimal;
}

body.single .post-content-area > ul > li,
body.single .post-content-area > ol > li {
    margin: 0 0 6px;
    line-height: 1.55;
}

body.single .post-content-area > ul > li::marker {
    color: var(--umde-red);
}

/* Mobile: media + title/meta are full-bleed (their .container has no side
   padding), while the map/text below are inset 15px via .post-content-area.
   Give the top elements the same 15px side margin so everything lines up. */
@media (max-width: 767px) {
    body.single .single-post > .container > .featured-video,
    body.single .single-post > .container > .featured-image,
    body.single .single-post > .container > .gallery,
    body.single .single-post > .container > .article-lead-head {
        margin-left: 15px !important;
        margin-right: 15px !important;
    }
}

/* Feature banner
   --------------
   was functions.php:1615-1651 */
.unfall-feat-banner {
    background: linear-gradient(135deg, #10141d 0%, #1d2740 55%, #3a1620 100%);
    border-top: 1px solid rgba(255, 255, 255, .06);
    border-bottom: 3px solid var(--umde-red);
    box-shadow: 0 6px 18px rgba(0, 0, 0, .18);
}

.ufb-inner {
    max-width: 1180px;
    margin: 0;
    padding: 9px 20px 9px 0;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 12px 16px;
    flex-wrap: wrap;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

.ufb-actions {
    display: flex;
    gap: 8px;
    flex-shrink: 0;
    flex-wrap: wrap;
}

.ufb-btn {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 15px;
    border-radius: var(--umde-radius-pill);
    font-size: 13.5px;
    font-weight: 700;
    text-decoration: none;
    line-height: 1;
    white-space: nowrap;
    transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
}

.ufb-btn svg {
    flex-shrink: 0;
}

.ufb-btn:hover {
    transform: translateY(-2px);
    color: var(--umde-surface);
}

.ufb-btn--primary {
    background: linear-gradient(135deg, var(--umde-red), var(--umde-red-deep));
    color: var(--umde-surface);
    box-shadow: 0 4px 14px rgba(225, 0, 15, .45);
}

.ufb-btn--primary:hover {
    box-shadow: 0 7px 20px rgba(225, 0, 15, .55);
}

.ufb-btn--ghost {
    background: rgba(255, 255, 255, .10);
    color: var(--umde-surface);
    border: 1px solid rgba(255, 255, 255, .55);
}

.ufb-btn--ghost:hover {
    background: rgba(255, 255, 255, .18);
}

.ufb-btn--youtube {
    background: var(--umde-youtube);
    color: var(--umde-surface);
    box-shadow: 0 4px 14px rgba(255, 0, 0, .40);
}

.ufb-btn--youtube:hover {
    background: var(--umde-youtube-hover);
    box-shadow: 0 7px 20px rgba(255, 0, 0, .50);
}

.ufb-btn--whatsapp {
    background: var(--umde-whatsapp);
    color: var(--umde-surface);
    box-shadow: 0 4px 14px rgba(37, 211, 102, .40);
}

.ufb-btn--whatsapp:hover {
    background: var(--umde-whatsapp-hover);
    box-shadow: 0 7px 20px rgba(37, 211, 102, .50);
}

.ufb-btn--telegram {
    background: var(--umde-telegram);
    color: var(--umde-surface);
    box-shadow: 0 4px 14px rgba(34, 158, 217, .40);
}

.ufb-btn--telegram:hover {
    background: var(--umde-telegram-hover);
    box-shadow: 0 7px 20px rgba(34, 158, 217, .50);
}

@media (max-width: 782px) {
    .ufb-inner {
        flex-direction: column;
        align-items: stretch;
        gap: 10px;
        padding: 10px 14px;
    }

    .ufb-actions {
        width: 100%;
    }

    .ufb-btn {
        flex: 1 1 45%;
        justify-content: center;
    }
}


/* WhatsApp CTA on category pages
   ------------------------------
   was category.php:158-171 */
.cat-wa-cta {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    margin: 22px 30px;
    padding: 16px 18px;
    background: linear-gradient(135deg, #f0fbf3, #e4f7ea);
    border: 1px solid #cdeed6;
    border-radius: var(--umde-radius-lg)
}

.cat-wa-icon {
    flex: 0 0 auto;
    width: 46px;
    height: 46px;
    border-radius: var(--umde-radius-lg);
    background: var(--umde-whatsapp);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 6px rgba(37, 211, 102, .35)
}

.cat-wa-text {
    flex: 1 1 200px;
    line-height: 1.35
}

.cat-wa-text strong {
    display: block;
    font-size: 16px;
    color: #0f2a17
}

.cat-wa-text span {
    display: block;
    font-size: 13.5px;
    color: #4a6b56;
    margin-top: 2px
}

.cat-wa-btn {
    flex: 0 0 auto;
    background: var(--umde-whatsapp);
    color: var(--umde-surface) !important;
    font-weight: 700;
    font-size: 15px;
    text-decoration: none;
    padding: 11px 22px;
    border-radius: var(--umde-radius-pill);
    white-space: nowrap;
    box-shadow: 0 2px 6px rgba(37, 211, 102, .4);
    transition: background .15s, transform .15s
}

.cat-wa-btn:hover {
    background: #1ebe5a;
    transform: translateY(-1px)
}

@media (max-width: 480px) {
    .cat-wa-cta {
        margin: 20px 16px
    }

    .cat-wa-btn {
        width: 100%;
        text-align: center
    }
}


/* Region hub page
   ---------------
   was functions.php:1905-1919 */
.polizeimeldungen-hub {
    padding: 28px 30px 0;
    background: var(--umde-surface);
    color: var(--umde-ink-soft)
}

.polizeimeldungen-hub__intro {
    max-width: 760px;
    font-size: 18px;
    line-height: 1.5;
    margin: 0 0 22px
}

.polizeimeldungen-hub__updated {
    color: #667085;
    font-size: 13px;
    margin: 0 0 16px
}

.polizeimeldungen-hub__tools {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin: 0 0 26px
}

.polizeimeldungen-hub__tools a {
    background: #f2f4f6;
    border: 1px solid #dfe4e8;
    border-radius: var(--umde-radius-pill);
    color: var(--umde-ink-soft);
    font-weight: 600;
    padding: 8px 13px
}

.polizeimeldungen-hub__tools a:hover {
    background: var(--umde-red);
    border-color: var(--umde-red);
    color: var(--umde-surface)
}

.polizeimeldungen-hub__feed {
    border-top: 3px solid var(--umde-red);
    margin: 0 -30px 28px;
    padding: 20px 30px 0
}

.polizeimeldungen-hub__feed h2 {
    font-family: proxima_nova_rgbold;
    font-size: 27px;
    margin: 0 0 4px
}

.polizeimeldungen-hub__feed-note {
    color: #667085;
    font-size: 14px;
    margin: 0 0 12px
}

.polizeimeldungen-hub__all {
    display: inline-block;
    background: var(--umde-ink);
    color: var(--umde-surface);
    font-weight: 700;
    margin: 15px 0 6px;
    padding: 11px 16px
}

.polizeimeldungen-hub__all:hover {
    background: var(--umde-red);
    color: var(--umde-surface)
}

.polizeimeldungen-hub__links {
    border-top: 1px solid #e5e7eb;
    padding-top: 22px
}

@media (max-width: 767px) {
    .polizeimeldungen-hub {
        padding: 20px 0 0
    }

    .polizeimeldungen-hub h1, .polizeimeldungen-hub__intro, .polizeimeldungen-hub__tools, .polizeimeldungen-hub__links {
        margin-left: 16px;
        margin-right: 16px
    }

    .polizeimeldungen-hub h1 {
        font-size: 30px;
        line-height: 1.08
    }

    .polizeimeldungen-hub__intro {
        font-size: 16px
    }

    .polizeimeldungen-hub__feed {
        margin-left: 0;
        margin-right: 0;
        padding-left: 0;
        padding-right: 0
    }

    .polizeimeldungen-hub__feed h2, .polizeimeldungen-hub__feed-note, .polizeimeldungen-hub__all {
        margin-left: 16px;
        margin-right: 16px
    }
}


/* Article video player
   --------------------
   was single.php:144-151 */
.article-watch-wrap {
    position: relative;
    width: 100%;
    aspect-ratio: 16/9;
    background: #000;
    overflow: hidden
}

.article-watch-wrap .article-watch-video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    background: #000;
    display: block
}

.article-watch-play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: min(30%, 120px);
    aspect-ratio: 1/1;
    border: 0;
    padding: 0;
    margin: 0;
    background: transparent;
    cursor: pointer;
    z-index: 3;
    filter: drop-shadow(0 2px 8px rgba(0, 0, 0, .45));
    transition: opacity .2s ease, transform .2s ease
}

.article-watch-play svg {
    width: 100%;
    height: 100%;
    display: block
}

.article-watch-play:hover {
    transform: translate(-50%, -50%) scale(1.05)
}

.article-watch-wrap.is-playing .article-watch-play {
    display: none
}


/* Portrait featured image (Vermisst posts)
   ----------------------------------------
   was single.php:224-224 */
.featured-image--portrait {
    text-align: center
}

.featured-image--portrait .thumb {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 75vh;
    object-fit: contain;
    display: inline-block
}

/* Image lightbox cursor
   ---------------------
   was single.php:860-862 */
.single-post .img-lightbox {
    cursor: zoom-in;
    display: inline-block;
}

/* Footer extra links
   ------------------
   was footer.php:51-54 */
.footer-extra-link {
    display: inline-block;
    margin: 0 12px 10px 0;
    color: #797b84;
    font-size: 16px
}

.footer-extra-link:hover {
    color: var(--umde-red)
}


/* Homepage SEO footer text
   ------------------------
   was footer.php:77-81 */
.home-seo-text {
    max-width: 840px;
    margin: 30px auto 40px;
    padding: 0 15px;
    line-height: 1.6;
    color: var(--umde-ink-soft)
}

.home-seo-text h2 {
    font-size: 1.4em;
    margin-bottom: .5em;
    color: var(--umde-ink)
}

.home-seo-text p {
    margin: 0
}
					

