
/* =================================================
   Antenne Bad Kreuznach – Startseite
   Template: page-antenne-startseite.php
   Bereinigte Gesamtversion auf Basis des Ursprungscodes
================================================= */

/* =================================================
   Werbung: Desktop / Mobil
================================================= */

.ad-mobile {
    display: none;
}

.ad-desktop {
    display: block;
}

@media (max-width: 768px) {
    .ad-desktop {
        display: none;
    }

    .ad-mobile {
        display: block;
    }
}

/* =================================================
   Design-Grundlagen
================================================= */

:root {
    --antenne-red: #e30613;
    --antenne-red-dark: #bc0010;
    --antenne-dark: #101114;
    --antenne-dark-2: #191b20;
    --antenne-text: #17181b;
    --antenne-muted: #70737a;
    --antenne-line: #e5e7eb;
    --antenne-soft: #f5f6f8;
    --antenne-white: #ffffff;
    --antenne-radius-lg: 24px;
    --antenne-radius-md: 16px;
    --antenne-shadow: 0 14px 40px rgba(16, 17, 20, 0.10);
    --antenne-shadow-hover: 0 22px 55px rgba(16, 17, 20, 0.17);
}

/* =================================================
   Seitenbasis
================================================= */

html,
body,
.site,
#page,
#content,
.site-content,
.site-main,
main,
article,
.entry-content {
    background: #ffffff;
}

.antenne-home {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 10% 8%,
            rgba(227, 6, 19, 0.045),
            transparent 26rem
        ),
        #ffffff;
    color: var(--antenne-text);
}

.antenne-container {
    width: min(1240px, calc(100% - 40px));
    margin: 0 auto;
}

/* Theme-Seitentitel ausblenden */
.page-template-page-antenne-startseite .entry-header,
.page-template-page-antenne-startseite .entry-title,
.page-template-page-antenne-startseite .page-title {
    display: none !important;
}

/* =================================================
   Allgemeine Bereiche
================================================= */

.antenne-section {
    position: relative;
    padding: 66px 0;
}

.antenne-section-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 25px;
    margin-bottom: 28px;
}

.antenne-section-head > div {
    position: relative;
}

.antenne-section-head > div::after {
    display: block;
    width: 58px;
    height: 4px;
    margin-top: 16px;
    border-radius: 99px;
    background: var(--antenne-red);
    content: "";
}

.antenne-section-head h2,
.antenne-employer-box h2 {
    margin: 0;
    color: var(--antenne-text);
    font-size: clamp(30px, 4vw, 46px);
    font-weight: 850;
    line-height: 1;
    letter-spacing: -0.055em;
}

.antenne-kicker {
    display: inline-flex;
    align-items: center;
    min-height: 25px;
    margin: 0 0 12px;
    padding: 5px 10px;
    border: 1px solid rgba(227, 6, 19, 0.15);
    border-radius: 99px;
    background: rgba(227, 6, 19, 0.07);
    color: var(--antenne-red);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 0.08em;
    line-height: 1;
    text-transform: uppercase;
}

.antenne-section-link,
.antenne-text-link {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--antenne-red);
    font-size: 14px;
    font-weight: 800;
    text-decoration: none;
    transition: color 0.2s ease, gap 0.2s ease;
}

.antenne-section-link:hover,
.antenne-text-link:hover {
    gap: 11px;
    color: var(--antenne-red-dark);
}

.antenne-post-meta {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 9px;
    color: var(--antenne-muted);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.065em;
    line-height: 1.2;
    text-transform: uppercase;
}

.antenne-post-meta::before {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--antenne-red);
    content: "";
}

/* =================================================
   Live-Bereich: Grundform
   (Desktop und Mobil überschreiben weiter unten)
================================================= */

.antenne-live-section,
.antenne-live-widget-area {
    position: relative;
    overflow: visible;
    padding: 58px 0 22px;
    background: transparent;
    box-shadow: none;
}

.antenne-live-section::before,
.antenne-live-section::after,
.antenne-live-widget-area::before,
.antenne-live-widget-area::after {
    display: none;
}

.antenne-live-section .antenne-container,
.antenne-live-widget-area .antenne-container {
    position: relative;
    z-index: 1;
}

.antenne-live-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    gap: 22px;
    align-items: stretch;
}

.antenne-live-onair {
    position: relative;
    display: flex;
    min-width: 0;
    min-height: 178px;
}

.antenne-live-onair .antenne-onair {
    display: flex;
    width: 100%;
    min-height: 178px;
    overflow: visible;
    border: 0;
    border-radius: 0;
    background:
        radial-gradient(
            circle at 78% 16%,
            rgba(255, 33, 61, 0.56) 0,
            rgba(173, 12, 40, 0.24) 24%,
            transparent 47%
        ),
        linear-gradient(
            120deg,
            #101015 0%,
            #1b1118 52%,
            #4b0b1b 100%
        );
    box-shadow: none;
}

.antenne-live-onair .antenne-onair-inner {
    position: relative;
    width: 100%;
    min-height: 178px;
    padding: 25px 30px;
    overflow: visible;
    box-sizing: border-box;
}

.antenne-live-onair .antenne-onair-content {
    position: relative;
    z-index: 20;
    width: 57%;
    max-width: 610px;
}

.antenne-live-onair .antenne-onair-live-label {
    margin-bottom: 7px;
    font-size: 10px;
}

.antenne-live-onair .antenne-onair-station,
.antenne-live-onair .antenne-onair-description,
.antenne-live-onair .antenne-onair-presenter,
.antenne-live-onair .antenne-onair-actions {
    display: none;
}

.antenne-live-onair .antenne-onair-title {
    max-width: 520px;
    margin-bottom: 7px;
    font-size: clamp(29px, 3.2vw, 46px);
    line-height: 0.98;
}

.antenne-live-onair .antenne-onair-title-sub {
    margin-top: 4px;
    font-size: 0.50em;
}

.antenne-live-onair .antenne-onair-time {
    margin-bottom: 0;
    font-size: 14px;
}

/* Moderator-Freisteller */

.antenne-live-onair .antenne-onair-artwork-floating {
    position: absolute;
    top: -36px;
    right: 1.5%;
    bottom: auto;
    left: auto;
    z-index: 30;
    display: block;
    width: 37%;
    height: 214px;
    min-height: 0;
    margin: 0;
    padding: 0;
    overflow: visible;
    pointer-events: none;
}

.antenne-live-onair
.antenne-onair-artwork-floating
.antenne-onair-moderator-wrap {
    position: relative;
    display: block;
    width: 100%;
    height: 214px;
    overflow: visible;
}

.antenne-live-onair
.antenne-onair-artwork-floating
.antenne-onair-moderator-image {
    position: absolute;
    top: auto;
    right: 0;
    bottom: 0;
    left: auto;
    z-index: 10;
    display: block;
    width: auto;
    height: 214px;
    max-width: none;
    max-height: none;
    margin: 0;
    padding: 0;
    object-fit: contain;
    object-position: right bottom;
    transform: none;
    filter: drop-shadow(0 16px 18px rgba(0, 0, 0, 0.34));
}

.antenne-live-onair
.antenne-onair-artwork-floating
.antenne-onair-moderator-wrap::before {
    position: absolute;
    right: 5%;
    bottom: 0;
    z-index: 1;
    width: 195px;
    height: 195px;
    border-radius: 50%;
    background: radial-gradient(
        circle at 35% 30%,
        #ff5863 0%,
        #e30613 36%,
        rgba(227, 6, 19, 0) 72%
    );
    content: "";
    filter: blur(3px);
    opacity: 0.92;
}

.antenne-live-onair
.antenne-onair-artwork-floating
.antenne-onair-moderator-wrap::after {
    position: absolute;
    right: -5%;
    bottom: 5px;
    z-index: 2;
    width: 225px;
    height: 225px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 50%;
    box-shadow:
        0 0 0 30px rgba(255, 255, 255, 0.035),
        0 0 0 60px rgba(255, 255, 255, 0.018);
    content: "";
}

/* =================================================
   Studio-Kachel: Grundform
================================================= */

.antenne-studio-panel {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-width: 0;
    min-height: 178px;
    overflow: hidden;
    border: 0;
    border-radius: 0;
    background:
        linear-gradient(
            145deg,
            #30282b 0%,
            #191b20 100%
        );
    box-shadow: none;
    color: #ffffff;
}

.antenne-studio-panel-top {
    flex: 1 1 auto;
    padding: 18px 24px 14px;
}

.antenne-studio-eyebrow {
    display: inline-block;
    margin-bottom: 6px;
    color: #ff9299;
    font-size: 10px;
    font-weight: 850;
    letter-spacing: 0.10em;
    text-transform: uppercase;
}

.antenne-studio-panel h2 {
    margin: 0 0 9px;
    color: #ffffff;
    font-size: 22px;
    font-weight: 850;
    line-height: 1.04;
    letter-spacing: -0.045em;
}

.antenne-studio-panel-top p,
.antenne-studio-hotline p {
    display: none;
}

.antenne-studio-mail-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    width: 100%;
    min-height: 40px;
    padding: 9px 12px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 10px;
    background: linear-gradient(135deg, #ff1644 0%, #d8002f 100%);
    box-shadow: 0 8px 18px rgba(216, 0, 47, 0.27);
    color: #ffffff;
    cursor: pointer;
    font: inherit;
    font-size: 11px;
    font-weight: 850;
    text-decoration: none;
    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        filter 0.2s ease;
}

.antenne-studio-mail-button:hover {
    color: #ffffff;
    filter: brightness(1.07);
    box-shadow: 0 12px 24px rgba(216, 0, 47, 0.36);
    transform: translateY(-2px);
}

.antenne-studio-mail-button:focus-visible {
    outline: 3px solid rgba(255, 255, 255, 0.92);
    outline-offset: 3px;
}

.antenne-studio-hotline {
    display: block;
    flex: 0 0 auto;
    margin-top: 0;
    padding: 12px 24px 14px;
    border-top: 1px solid rgba(255, 255, 255, 0.14);
    background: rgba(0, 0, 0, 0.19);
}

.antenne-studio-hotline-label {
    display: block;
    margin-bottom: 4px;
    color: rgba(255, 255, 255, 0.60);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.antenne-studio-phone {
    display: inline-block;
    margin: 0;
    color: #ffffff;
    font-size: 20px;
    font-weight: 850;
    line-height: 1.05;
    letter-spacing: -0.045em;
    text-decoration: none;
    white-space: nowrap;
}

.antenne-studio-phone:hover {
    color: #ff959c;
}

/* =================================================
   Nachrichten
================================================= */

.antenne-news-section {
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 28px;
    padding-bottom: 0;
    background: transparent;
}

.antenne-news-section .antenne-kicker {
    display: block;
    margin: 0 0 10px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #777777;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.10em;
    line-height: 1.3;
}

.antenne-news-section .antenne-section-head > div {
    position: relative;
    padding-left: 19px;
}

.antenne-news-section .antenne-section-head > div::before {
    position: absolute;
    top: 3px;
    bottom: 4px;
    left: 0;
    width: 5px;
    border-radius: 10px;
    background: var(--antenne-red);
    content: "";
}

.antenne-news-section .antenne-section-head > div::after {
    display: none;
}

.antenne-news-section .antenne-section-head h2 {
    font-size: clamp(32px, 4vw, 48px);
    font-weight: 900;
    letter-spacing: -0.06em;
}

.antenne-news-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.36fr) minmax(340px, 1fr);
    gap: 30px;
    align-items: start;
}

.antenne-news-featured {
    display: flex;
    flex-direction: column;
    height: auto;
    min-height: 0;
    overflow: hidden;
    border: 1px solid rgba(16, 17, 20, 0.08);
    border-radius: var(--antenne-radius-lg);
    background: var(--antenne-white);
    box-shadow: var(--antenne-shadow);
    transition: transform 0.28s ease, box-shadow 0.28s ease;
}

.antenne-news-featured:hover {
    transform: translateY(-5px);
    box-shadow: var(--antenne-shadow-hover);
}

.antenne-news-image {
    position: relative;
    display: block;
    flex: 0 0 auto;
    aspect-ratio: 16 / 7.2;
    overflow: hidden;
    background: #e8eaed;
}

.antenne-news-image::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 45%;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.18), transparent);
    content: "";
    pointer-events: none;
}

.antenne-news-image img,
.antenne-news-list-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.45s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.antenne-news-featured:hover .antenne-news-image img,
.antenne-news-list-item:hover .antenne-news-list-image img {
    transform: scale(1.06);
}

.antenne-news-featured-content {
    padding: 20px 24px 22px;
}

.antenne-news-featured h3 {
    margin: 0 0 9px;
    color: var(--antenne-text);
    font-size: clamp(23px, 2.25vw, 25px);
    font-weight: 850;
    line-height: 1.08;
    letter-spacing: -0.045em;
}

.antenne-news-featured h3 a,
.antenne-news-list-item h3 a {
    color: inherit;
    text-decoration: none;
}

.antenne-news-featured h3 a:hover,
.antenne-news-list-item h3 a:hover {
    color: var(--antenne-red);
}

.antenne-news-featured p {
    max-width: 720px;
    margin: 0 0 12px;
    color: #51545a;
    font-size: 15px;
    line-height: 1.42;
}

.antenne-news-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.antenne-news-list-item {
    display: grid;
    grid-template-columns: 132px minmax(0, 1fr);
    gap: 16px;
    align-items: center;
    min-height: 0;
    margin: 0;
    padding: 7px 10px;
    border: 1px solid transparent;
    border-radius: var(--antenne-radius-md);
    background: transparent;
    transition:
        transform 0.22s ease,
        border-color 0.22s ease,
        background 0.22s ease,
        box-shadow 0.22s ease;
}

.antenne-news-list-item:hover {
    transform: translateX(4px);
    border-color: rgba(16, 17, 20, 0.08);
    background: var(--antenne-white);
    box-shadow: 0 10px 25px rgba(16, 17, 20, 0.07);
}

.antenne-news-list-image {
    display: block;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    border-radius: 11px;
    background: #e8eaed;
}

.antenne-news-list-item h3 {
    margin: 0;
    color: var(--antenne-text);
    font-size: 18px;
    font-weight: 800;
    line-height: 1.18;
    letter-spacing: -0.023em;
}

/* =================================================
   Zwei Kategorie-Bereiche
================================================= */

.antenne-category-news-section {
    padding: 26px 0 44px;
    background: #ffffff;
}

.antenne-category-news-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px;
}

.antenne-category-news-block {
    min-width: 0;
}

.antenne-category-news-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
    padding-bottom: 13px;
    border-bottom: 2px solid rgba(21, 23, 28, 0.12);
}

.antenne-category-news-kicker {
    display: block;
    margin-bottom: 5px;
    color: var(--antenne-red);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.antenne-category-news-head h2 {
    margin: 0;
    color: var(--antenne-text);
    font-size: clamp(25px, 2.8vw, 34px);
    font-weight: 900;
    line-height: 1;
    letter-spacing: -0.045em;
}

.antenne-category-news-head a {
    flex: 0 0 auto;
    color: var(--antenne-red);
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}

.antenne-category-news-head a:hover {
    color: #9e2419;
}

.antenne-category-news-list {
    display: flex;
    flex-direction: column;
}

.antenne-category-news-item {
    display: grid;
    grid-template-columns: 116px minmax(0, 1fr);
    gap: 13px;
    align-items: center;
    padding: 12px 0;
    border-bottom: 1px solid rgba(21, 23, 28, 0.10);
}

.antenne-category-news-item:first-child {
    padding-top: 0;
}

.antenne-category-news-image {
    display: block;
    width: 116px;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    border-radius: 10px;
    background: #eaecf0;
}

.antenne-category-news-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.22s ease;
}

.antenne-category-news-item:hover .antenne-category-news-image img {
    transform: scale(1.05);
}

.antenne-category-news-content {
    min-width: 0;
}

.antenne-category-news-content time {
    display: block;
    margin-bottom: 5px;
    color: #777d86;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.075em;
    line-height: 1.15;
    text-transform: uppercase;
}

.antenne-category-news-content time::before {
    display: inline-block;
    width: 5px;
    height: 5px;
    margin: 0 6px 1px 0;
    border-radius: 50%;
    background: var(--antenne-red);
    content: "";
}

.antenne-category-news-content h3 {
    margin: 0;
    color: var(--antenne-text);
    font-size: 16px;
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -0.02em;
}

.antenne-category-news-content h3 a {
    color: inherit;
    text-decoration: none;
}

.antenne-category-news-content h3 a:hover {
    color: var(--antenne-red);
}

/* =================================================
   Weitere Regionalnachrichten
================================================= */

.antenne-more-news-section {
    padding: 30px 0 52px;
    background: #ffffff;
}

.antenne-more-news-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 24px;
}

.antenne-more-news-head > div {
    position: relative;
    padding-left: 18px;
}

.antenne-more-news-head > div::before {
    position: absolute;
    top: 3px;
    bottom: 3px;
    left: 0;
    width: 5px;
    border-radius: 99px;
    background: var(--antenne-red);
    content: "";
}

.antenne-more-news-kicker {
    display: block;
    margin-bottom: 7px;
    color: #777d86;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 0.10em;
    line-height: 1.2;
    text-transform: uppercase;
}

.antenne-more-news-head h2 {
    margin: 0;
    color: var(--antenne-text);
    font-size: clamp(30px, 3.6vw, 43px);
    font-weight: 900;
    line-height: 1;
    letter-spacing: -0.055em;
}

.antenne-more-news-head > a {
    flex: 0 0 auto;
    color: var(--antenne-red);
    font-size: 14px;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}

.antenne-more-news-head > a:hover {
    color: #9e2419;
}

.antenne-more-news-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.antenne-more-news-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(21, 23, 28, 0.10);
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 8px 24px rgba(16, 17, 20, 0.07);
    transition:
        transform 0.22s ease,
        box-shadow 0.22s ease;
}

.antenne-more-news-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 15px 34px rgba(16, 17, 20, 0.12);
}

.antenne-more-news-image {
    display: block;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #e9ebef;
}

.antenne-more-news-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.antenne-more-news-card:hover .antenne-more-news-image img {
    transform: scale(1.05);
}

.antenne-more-news-content {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    padding: 17px 18px 19px;
}

.antenne-more-news-meta {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 10px;
    color: #737981;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.065em;
    line-height: 1.2;
    text-transform: uppercase;
}

.antenne-more-news-meta span {
    color: var(--antenne-red);
    font-size: 14px;
    line-height: 0;
}

.antenne-more-news-card h3 {
    margin: 0 0 10px;
    color: var(--antenne-text);
    font-size: 19px;
    font-weight: 850;
    line-height: 1.14;
    letter-spacing: -0.025em;
}

.antenne-more-news-card h3 a {
    color: inherit;
    text-decoration: none;
}

.antenne-more-news-card h3 a:hover {
    color: var(--antenne-red);
}

.antenne-more-news-card p {
    margin: 0 0 16px;
    color: #5d626a;
    font-size: 14px;
    line-height: 1.45;
}

.antenne-more-news-link {
    display: inline-flex;
    margin-top: auto;
    color: var(--antenne-red);
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
}

.antenne-more-news-link:hover {
    color: #9e2419;
}

/* =================================================
   Mediathek: nur Bild + Titel (wie die Nachrichten)
================================================= */

.antenne-mediathek-section {
    position: relative;
    overflow: visible;
    margin-top: 0;
    padding: 42px 0 56px;
    background: #ffffff;
    color: var(--antenne-text);
}

.antenne-mediathek-section::before,
.antenne-mediathek-section::after {
    display: none;
}

.antenne-mediathek-section h1,
.antenne-mediathek-section h2,
.antenne-mediathek-section h3,
.antenne-mediathek-section .wp-block-heading,
.antenne-mediathek-section .antenne-mediathek-title {
    color: var(--antenne-text);
    text-shadow: none;
}

.antenne-mediathek-section a:not(.antenne-media-link):not(.antenne-media-play):not(.antenne-play-icon) {
    color: var(--antenne-text);
}

.antenne-mediathek-section a:not(.antenne-media-link):not(.antenne-media-play):not(.antenne-play-icon):hover {
    color: var(--antenne-red);
}

/* Kein Datum, keine Meta-Angaben, keine Play-Dots, kein Anhören-Link */
.antenne-mediathek-section time,
.antenne-mediathek-section .date,
.antenne-mediathek-section .datum,
.antenne-mediathek-section .meta,
.antenne-mediathek-section .media-date,
.antenne-mediathek-section .media-meta,
.antenne-mediathek-section .entry-meta,
.antenne-mediathek-section .entry-date,
.antenne-mediathek-section .post-meta,
.antenne-mediathek-section .post-date,
.antenne-mediathek-section .post-date-meta,
.antenne-mediathek-section .card-date,
.antenne-mediathek-section .card-meta,
.antenne-mediathek-section .meta-date,
.antenne-mediathek-section .meta-date-text,
.antenne-mediathek-section .antenne-media-date,
.antenne-mediathek-section .antenne-media-meta,
.antenne-mediathek-section .antenne-media-category,
.antenne-mediathek-section .antenne-media-kicker,
.antenne-mediathek-section .antenne-post-meta,
.antenne-mediathek-section .antenne-media-play,
.antenne-mediathek-section .antenne-play-icon,
.antenne-mediathek-section .antenne-media-link {
    display: none !important;
}

/* Kopfbereich */

.antenne-mediathek-section .antenne-container {
    width: min(1240px, calc(100% - 40px)) !important;
    max-width: 1240px !important;
    margin: 0 auto !important;
}

.antenne-mediathek-section .antenne-section-head {
    display: flex !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    gap: 24px !important;
    margin-bottom: 24px !important;
}

.antenne-mediathek-section .antenne-section-head > div {
    min-width: 0 !important;
}

.antenne-mediathek-section .antenne-section-link {
    flex: 0 0 auto !important;
    margin-bottom: 3px !important;
    white-space: nowrap !important;
}

/* Desktop: drei Spalten */

.antenne-mediathek-section .antenne-mediathek-grid,
.antenne-mediathek-section .antenne-media-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-template-rows: none !important;
    grid-auto-rows: auto !important;
    gap: 26px 20px !important;
    align-items: start !important;
}

/* Karte ohne Rahmen, ohne Höhenzwang */

.antenne-mediathek-section .antenne-mediathek-card,
.antenne-mediathek-section .antenne-media-card {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    grid-column: auto !important;
    grid-row: auto !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* Bild */

.antenne-mediathek-section .antenne-media-image,
.antenne-mediathek-section .antenne-media-thumb {
    position: relative !important;
    display: block !important;
    flex: 0 0 auto !important;
    grid-column: auto !important;
    grid-row: auto !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: 16 / 10 !important;
    overflow: hidden !important;
    border-radius: 14px !important;
    background: #e8eaed !important;
    box-shadow: 0 8px 22px rgba(16, 17, 20, 0.10) !important;
}

.antenne-mediathek-section .antenne-media-image img,
.antenne-mediathek-section .antenne-media-thumb img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    transition: transform 0.4s cubic-bezier(0.2, 0.7, 0.2, 1) !important;
}

.antenne-mediathek-section .antenne-mediathek-card:hover img,
.antenne-mediathek-section .antenne-media-card:hover img {
    transform: scale(1.05) !important;
}

/* Titel unter dem Bild */

.antenne-mediathek-section .antenne-media-content,
.antenne-mediathek-section .antenne-media-body {
    display: block !important;
    flex: 0 0 auto !important;
    grid-column: auto !important;
    grid-row: auto !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 12px 2px 0 !important;
    overflow: visible !important;
    background: transparent !important;
}

.antenne-mediathek-section .antenne-media-content h2,
.antenne-mediathek-section .antenne-media-content h3,
.antenne-mediathek-section .antenne-media-body h2,
.antenne-mediathek-section .antenne-media-body h3 {
    display: -webkit-box !important;
    margin: 0 !important;
    overflow: hidden !important;
    color: var(--antenne-text) !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1.18 !important;
    letter-spacing: -0.023em !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 3 !important;
}

.antenne-mediathek-section .antenne-media-content h3 a,
.antenne-mediathek-section .antenne-media-body h3 a {
    color: inherit !important;
    text-decoration: none !important;
}

.antenne-mediathek-section .antenne-mediathek-card:hover h3,
.antenne-mediathek-section .antenne-media-card:hover h3 {
    color: var(--antenne-red) !important;
}

/* Tablet: zwei Spalten */

@media (min-width: 621px) and (max-width: 900px) {
    .antenne-mediathek-section .antenne-mediathek-grid,
    .antenne-mediathek-section .antenne-media-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 22px 16px !important;
    }
}

/* Smartphone: Bild links, Titel rechts (wie die Nachrichten-Liste) */

@media (max-width: 620px) {
    .antenne-mediathek-section {
        padding: 32px 0 42px !important;
    }

    .antenne-mediathek-section .antenne-container {
        width: calc(100% - 28px) !important;
        max-width: none !important;
    }

    .antenne-mediathek-section .antenne-section-head {
        display: block !important;
        margin-bottom: 18px !important;
    }

    .antenne-mediathek-section .antenne-section-head h2 {
        font-size: 30px !important;
        line-height: 1.02 !important;
    }

    .antenne-mediathek-section .antenne-section-link {
        margin-top: 10px !important;
        margin-bottom: 0 !important;
        font-size: 12px !important;
    }

    .antenne-mediathek-section .antenne-mediathek-grid,
    .antenne-mediathek-section .antenne-media-grid {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    .antenne-mediathek-section .antenne-mediathek-card,
    .antenne-mediathek-section .antenne-media-card {
        display: grid !important;
        grid-template-columns: 105px minmax(0, 1fr) !important;
        align-items: center !important;
        gap: 13px !important;
        min-height: 105px !important;
        padding: 7px !important;
        overflow: hidden !important;
        border: 1px solid rgba(21, 23, 28, 0.09) !important;
        border-radius: 13px !important;
        background: #ffffff !important;
        box-shadow: 0 5px 16px rgba(16, 17, 20, 0.06) !important;
        box-sizing: border-box !important;
    }

    .antenne-mediathek-section .antenne-media-image,
    .antenne-mediathek-section .antenne-media-thumb {
        grid-column: 1 !important;
        grid-row: 1 !important;
        width: 105px !important;
        height: 91px !important;
        aspect-ratio: auto !important;
        border-radius: 9px !important;
        box-shadow: none !important;
    }

    .antenne-mediathek-section .antenne-media-content,
    .antenne-mediathek-section .antenne-media-body {
        grid-column: 2 !important;
        grid-row: 1 !important;
        min-width: 0 !important;
        padding: 0 !important;
    }

    .antenne-mediathek-section .antenne-media-content h2,
    .antenne-mediathek-section .antenne-media-content h3,
    .antenne-mediathek-section .antenne-media-body h2,
    .antenne-mediathek-section .antenne-media-body h3 {
        font-size: 16px !important;
        line-height: 1.18 !important;
    }
	main.antenne-home .antenne-news-section .antenne-section-head h2,
    main.antenne-home .antenne-more-news-head h2,
    main.antenne-home .antenne-category-news-head h2,
    main.antenne-home .antenne-cat-overview-head h2,
    main.antenne-home .antenne-mediathek-section .antenne-section-head h2,
    main.antenne-home .antenne-section-head h2 {
        font-size: 30px !important;
        line-height: 1.1 !important;
        letter-spacing: -0.04em !important;
    }
}

/* =================================================
   DESKTOP: Live-Bereich als ein gemeinsamer Kasten
   Moderator ragt nur oben heraus
================================================= */

@media (min-width: 901px) {

    .antenne-live-section,
    .antenne-live-widget-area {
        position: relative !important;
        z-index: 1 !important;
        padding: 155px 0 22px !important;
        overflow: visible !important;
        background: transparent !important;
    }

    .antenne-live-section .antenne-container,
    .antenne-live-widget-area .antenne-container {
        width: min(1198px, calc(100% - 40px)) !important;
        max-width: 1198px !important;
        margin: 0 auto !important;
    }

    /* Gemeinsamer Kasten: links On Air, rechts Studio (330px) */
    .antenne-live-layout {
        position: relative !important;
        z-index: 1 !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 330px !important;
        gap: 0 !important;
        align-items: stretch !important;
        width: 100% !important;
        height: 178px !important;
        min-height: 178px !important;
        max-height: 178px !important;
        margin: 0 auto !important;
        overflow: visible !important;
        border: 0 !important;
        border-radius: 18px !important;
        background: #17151a !important;
        box-shadow:
            0 18px 42px rgba(23, 8, 14, 0.23),
            0 2px 6px rgba(23, 8, 14, 0.16) !important;
    }

    .antenne-live-onair {
        position: relative !important;
        display: flex !important;
        min-width: 0 !important;
        height: 178px !important;
        min-height: 178px !important;
        max-height: 178px !important;
        overflow: visible !important;
        border: 0 !important;
        border-radius: 18px 0 0 18px !important;
        box-shadow: none !important;
    }

    .antenne-live-onair .antenne-onair {
        position: relative !important;
        display: flex !important;
        width: 100% !important;
        height: 178px !important;
        min-height: 178px !important;
        max-height: 178px !important;
        overflow: visible !important;
        border: 0 !important;
        border-radius: 18px 0 0 18px !important;
        box-shadow: none !important;
        background:
            radial-gradient(
                circle at 78% 16%,
                rgba(255, 33, 61, 0.56) 0,
                rgba(173, 12, 40, 0.24) 24%,
                transparent 47%
            ),
            linear-gradient(
                120deg,
                #101015 0%,
                #1b1118 52%,
                #4b0b1b 100%
            ) !important;
    }

    .antenne-live-onair .antenne-onair-inner {
        position: relative !important;
        width: 100% !important;
        height: 178px !important;
        min-height: 178px !important;
        max-height: 178px !important;
        padding: 25px 30px !important;
        overflow: visible !important;
        box-sizing: border-box !important;
    }

    .antenne-live-onair .antenne-onair-content {
        position: relative !important;
        z-index: 20 !important;
    }

    /*
       Moderator: beginnt 102px über dem Kasten und ist 280px hoch.
       -102px + 280px = 178px, endet also genau am unteren Kastenrand.
       Der Kopf ist vollständig sichtbar, nichts ragt nach unten.
    */
    .antenne-live-onair .antenne-onair-artwork-floating {
        position: absolute !important;
        top: -102px !important;
        right: 1.5% !important;
        bottom: auto !important;
        left: auto !important;
        z-index: 30 !important;
        display: block !important;
        width: 42% !important;
        height: 280px !important;
        min-height: 280px !important;
        max-height: 280px !important;
        overflow: visible !important;
        pointer-events: none !important;
    }

    .antenne-live-onair
    .antenne-onair-artwork-floating
    .antenne-onair-moderator-wrap {
        position: relative !important;
        display: block !important;
        width: 100% !important;
        height: 280px !important;
        min-height: 280px !important;
        max-height: 280px !important;
        overflow: visible !important;
    }

    .antenne-live-onair
    .antenne-onair-artwork-floating
    .antenne-onair-moderator-image {
        position: absolute !important;
        top: 0 !important;
        right: -14px !important;
        bottom: auto !important;
        left: auto !important;
        display: block !important;
        width: auto !important;
        height: 280px !important;
        min-height: 280px !important;
        max-height: 280px !important;
        max-width: none !important;
        object-fit: contain !important;
        object-position: right top !important;
        transform: none !important;
    }

    .antenne-live-onair
    .antenne-onair-artwork-floating
    .antenne-onair-moderator-wrap::before {
        right: 3% !important;
        bottom: 0 !important;
        width: 245px !important;
        height: 245px !important;
    }

    .antenne-live-onair
    .antenne-onair-artwork-floating
    .antenne-onair-moderator-wrap::after {
        right: -5% !important;
        bottom: 0 !important;
        width: 275px !important;
        height: 275px !important;
    }

    /* Studio-Bereich: rechter Teil desselben Kastens */
    .antenne-studio-panel {
        position: relative !important;
        z-index: 40 !important;
        display: flex !important;
        flex-direction: column !important;
        width: 330px !important;
        min-width: 330px !important;
        height: 178px !important;
        min-height: 178px !important;
        max-height: 178px !important;
        overflow: hidden !important;
        border: 0 !important;
        border-left: 1px solid rgba(255, 255, 255, 0.13) !important;
        border-radius: 0 18px 18px 0 !important;
        background:
            linear-gradient(
                145deg,
                rgba(44, 41, 48, 0.98),
                rgba(19, 18, 22, 0.98)
            ) !important;
        box-shadow: none !important;
        box-sizing: border-box !important;
    }

    .antenne-studio-panel-top {
        display: flex !important;
        flex: 1 1 auto !important;
        flex-direction: column !important;
        min-height: 0 !important;
        padding: 15px 18px 10px !important;
        box-sizing: border-box !important;
    }

    .antenne-studio-eyebrow {
        margin-bottom: 5px !important;
        font-size: 9px !important;
    }

    .antenne-studio-panel h2 {
        margin: 0 0 8px !important;
        font-size: 20px !important;
        line-height: 1.03 !important;
    }

    .antenne-studio-mail-button {
        width: 100% !important;
        min-height: 36px !important;
        margin-top: auto !important;
        padding: 8px 10px !important;
        font-size: 10px !important;
        box-sizing: border-box !important;
    }

    /* Hotline: immer sichtbar */
    .antenne-studio-hotline {
        display: grid !important;
        grid-template-columns: 30px 1fr !important;
        grid-template-rows: auto auto !important;
        column-gap: 10px !important;
        row-gap: 2px !important;
        align-content: center !important;
        flex: 0 0 59px !important;
        height: 59px !important;
        min-height: 59px !important;
        padding: 9px 18px !important;
        border-top: 1px solid rgba(255, 255, 255, 0.10) !important;
        background: rgba(0, 0, 0, 0.19) !important;
        box-sizing: border-box !important;
    }

    .antenne-studio-hotline::before {
        display: grid !important;
        grid-column: 1 !important;
        grid-row: 1 / span 2 !important;
        align-self: center !important;
        width: 30px !important;
        height: 30px !important;
        border-radius: 9px !important;
        place-items: center !important;
        background: rgba(255, 255, 255, 0.08) !important;
        color: #ff4264 !important;
        content: "☎" !important;
        font-size: 15px !important;
    }

    .antenne-studio-hotline-label {
        display: block !important;
        grid-column: 2 !important;
        grid-row: 1 !important;
        margin: 0 !important;
        line-height: 1.1 !important;
    }

    .antenne-studio-phone {
        display: inline-block !important;
        grid-column: 2 !important;
        grid-row: 2 !important;
        font-size: 19px !important;
        line-height: 1.05 !important;
        white-space: nowrap !important;
    }
}

/* =================================================
   TABLET (621px – 900px)
================================================= */

@media (min-width: 621px) and (max-width: 900px) {

    .antenne-more-news-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .antenne-mediathek-section .antenne-mediathek-grid,
    .antenne-mediathek-section .antenne-media-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 16px !important;
    }

    .antenne-mediathek-section .antenne-mediathek-card,
    .antenne-mediathek-section .antenne-media-card {
        height: 250px !important;
        min-height: 250px !important;
        max-height: 250px !important;
    }

    .antenne-mediathek-section .antenne-media-image,
    .antenne-mediathek-section .antenne-media-thumb {
        flex-basis: 170px !important;
        height: 170px !important;
        min-height: 170px !important;
        max-height: 170px !important;
    }

    .antenne-mediathek-section .antenne-media-play,
    .antenne-mediathek-section .antenne-play-icon {
        top: 124px !important;
        right: 9px !important;
        width: 34px !important;
        height: 34px !important;
        min-width: 34px !important;
        min-height: 34px !important;
    }
}

/* =================================================
   TABLET + MOBIL (bis 900px)
================================================= */

@media (max-width: 900px) {

    /* ---------- Live-Bereich ---------- */

    .antenne-live-section,
    .antenne-live-widget-area {
        padding: 24px 0 28px !important;
    }

    .antenne-live-layout {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 14px !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    /* On-Air: schmaler Banner, Text links, Moderator rechts */
    .antenne-live-onair,
    .antenne-live-onair .antenne-onair {
        position: relative !important;
        width: 100% !important;
        height: 166px !important;
        min-height: 166px !important;
        max-height: 166px !important;
        overflow: hidden !important;
        border-radius: 15px !important;
    }

    .antenne-live-onair .antenne-onair {
        box-shadow: 0 12px 28px rgba(15, 8, 14, 0.20) !important;
    }

    .antenne-live-onair .antenne-onair-inner {
        position: relative !important;
        display: block !important;
        width: 100% !important;
        height: 166px !important;
        min-height: 166px !important;
        max-height: 166px !important;
        padding: 18px 14px !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }

    .antenne-live-onair .antenne-onair-content {
        position: relative !important;
        z-index: 20 !important;
        width: 57% !important;
        max-width: 57% !important;
    }

    .antenne-live-onair .antenne-onair-live-label {
        margin-bottom: 6px !important;
        font-size: 8px !important;
        letter-spacing: 0.08em !important;
    }

    .antenne-live-onair .antenne-onair-title {
        max-width: 100% !important;
        margin-bottom: 3px !important;
        font-size: clamp(21px, 6vw, 27px) !important;
        line-height: 0.98 !important;
        letter-spacing: -0.045em !important;
    }

    .antenne-live-onair .antenne-onair-title-sub {
        margin-top: 4px !important;
        font-size: 0.20em !important;
        line-height: 1.05 !important;
    }

    .antenne-live-onair .antenne-onair-time {
        margin-top: 8px !important;
        font-size: 10px !important;
    }

    .antenne-live-onair .antenne-onair-artwork-floating {
        position: absolute !important;
        top: 0 !important;
        right: -4px !important;
        bottom: auto !important;
        left: auto !important;
        z-index: 10 !important;
        display: block !important;
        width: 45% !important;
        height: 166px !important;
        min-height: 166px !important;
        max-height: 166px !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: none !important;
    }

    .antenne-live-onair
    .antenne-onair-artwork-floating
    .antenne-onair-moderator-wrap {
        position: relative !important;
        display: block !important;
        width: 100% !important;
        height: 166px !important;
        min-height: 166px !important;
        max-height: 166px !important;
        overflow: visible !important;
    }

    .antenne-live-onair
    .antenne-onair-artwork-floating
    .antenne-onair-moderator-image {
        position: absolute !important;
        top: auto !important;
        right: -2px !important;
        bottom: 0 !important;
        left: auto !important;
        z-index: 12 !important;
        display: block !important;
        width: auto !important;
        height: 166px !important;
        min-height: 166px !important;
        max-height: 166px !important;
        max-width: none !important;
        opacity: 1 !important;
        visibility: visible !important;
        object-fit: contain !important;
        object-position: right bottom !important;
        transform: none !important;
    }

    .antenne-live-onair
    .antenne-onair-artwork-floating
    .antenne-onair-moderator-wrap::before {
        right: -9px !important;
        bottom: -20px !important;
        width: 145px !important;
        height: 145px !important;
        opacity: 0.85 !important;
    }

    .antenne-live-onair
    .antenne-onair-artwork-floating
    .antenne-onair-moderator-wrap::after {
        right: -28px !important;
        bottom: -20px !important;
        width: 165px !important;
        height: 165px !important;
    }

    /* Studio-Kachel mobil: eigene Karte unter dem Banner */
    .antenne-studio-panel {
        width: 100% !important;
        min-height: 0 !important;
        height: auto !important;
        max-height: none !important;
        overflow: hidden !important;
        border: 1px solid rgba(255, 255, 255, 0.12) !important;
        border-radius: 16px !important;
        box-shadow: 0 12px 28px rgba(15, 8, 14, 0.16) !important;
    }

    .antenne-studio-panel-top {
        display: flex !important;
        flex-direction: column !important;
        min-height: 0 !important;
        padding: 20px 18px 16px !important;
    }

    .antenne-studio-panel h2 {
        margin-bottom: 14px !important;
        font-size: 24px !important;
        line-height: 1.04 !important;
    }

    .antenne-studio-mail-button {
        min-height: 44px !important;
        margin-top: 0 !important;
        font-size: 11px !important;
    }

    .antenne-studio-hotline {
        display: grid !important;
        grid-template-columns: 32px 1fr !important;
        grid-template-rows: auto auto !important;
        column-gap: 10px !important;
        row-gap: 3px !important;
        align-content: center !important;
        min-height: 68px !important;
        padding: 11px 18px 13px !important;
        border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
        background: rgba(0, 0, 0, 0.19) !important;
    }

    .antenne-studio-hotline::before {
        display: grid !important;
        grid-column: 1 !important;
        grid-row: 1 / span 2 !important;
        align-self: center !important;
        width: 30px !important;
        height: 30px !important;
        border-radius: 9px !important;
        place-items: center !important;
        background: rgba(255, 255, 255, 0.08) !important;
        color: #ff4264 !important;
        content: "☎" !important;
        font-size: 15px !important;
    }

    .antenne-studio-hotline-label {
        display: block !important;
        grid-column: 2 !important;
        grid-row: 1 !important;
        margin: 0 !important;
    }

    .antenne-studio-phone {
        display: inline-block !important;
        grid-column: 2 !important;
        grid-row: 2 !important;
        font-size: 20px !important;
        white-space: nowrap !important;
    }
	
	main.antenne-home section.antenne-live-section .antenne-live-onair .antenne-onair-title .antenne-onair-title-sub,
    main.antenne-home section.antenne-live-section .antenne-live-onair .antenne-onair-title-sub {
        font-size: 20px !important;
        line-height: 1.15 !important;
        margin-top: 4px !important;
    }
	
	main.antenne-home section.antenne-live-section .antenne-live-onair .antenne-onair-title {
        font-size: 28px !important;
        line-height: 1.05 !important;
        margin-bottom: 4px !important;
    }

    /* ---------- Nachrichten: einspaltig ---------- */

    .antenne-news-layout {
        display: grid !important;
        grid-template-columns: 1fr !important;
        width: 100% !important;
        gap: 22px !important;
    }

    .antenne-news-featured {
        width: 100% !important;
        min-width: 0 !important;
        border-radius: 16px !important;
    }

    .antenne-news-image {
        width: 100% !important;
        height: 190px !important;
        min-height: 190px !important;
        aspect-ratio: auto !important;
    }

    .antenne-news-featured-content {
        min-width: 0 !important;
        padding: 17px 18px 19px !important;
    }

    .antenne-news-featured h3 {
        font-size: 22px !important;
        line-height: 1.10 !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
    }

    .antenne-news-featured p {
        font-size: 14px !important;
    }

    .antenne-news-list {
        gap: 10px !important;
    }

    .antenne-news-list-item {
        grid-template-columns: 105px minmax(0, 1fr) !important;
        min-height: 105px !important;
        gap: 13px !important;
        padding: 7px !important;
        border: 1px solid rgba(21, 23, 28, 0.09) !important;
        border-radius: 13px !important;
        background: #ffffff !important;
        box-shadow: 0 5px 16px rgba(16, 17, 20, 0.06) !important;
        box-sizing: border-box !important;
    }

    .antenne-news-list-image {
        width: 105px !important;
        height: 91px !important;
        aspect-ratio: auto !important;
        border-radius: 9px !important;
    }

    .antenne-news-list-item h3 {
        display: -webkit-box !important;
        overflow: hidden !important;
        font-size: 16px !important;
        line-height: 1.18 !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 3 !important;
    }

    .antenne-news-list-item .antenne-post-meta {
        margin-bottom: 6px !important;
        font-size: 9px !important;
    }

    .antenne-category-news-grid {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
    }
}

/* =================================================
   SMARTPHONE (bis 620px)
================================================= */

@media (max-width: 620px) {

    .antenne-container {
        width: min(100% - 30px, 1240px);
    }

    .antenne-section {
        padding: 46px 0;
    }

    .antenne-section-head,
    .antenne-more-news-head {
        align-items: flex-start;
        flex-direction: column;
        gap: 12px;
        margin-bottom: 18px;
    }

    .antenne-section-head h2 {
        font-size: 31px;
    }

    .antenne-live-section,
    .antenne-live-widget-area {
        padding: 20px 0 26px !important;
    }

    .antenne-category-news-head {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
    }

    .antenne-category-news-item {
        grid-template-columns: 104px minmax(0, 1fr);
        gap: 12px;
        padding: 11px 0;
    }

    .antenne-category-news-image {
        width: 104px;
    }

    .antenne-category-news-content h3 {
        font-size: 15px;
        line-height: 1.16;
    }

    .antenne-more-news-section {
        padding: 24px 0 38px;
    }

    .antenne-more-news-grid {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .antenne-more-news-card {
        display: grid !important;
        grid-template-columns: 112px minmax(0, 1fr) !important;
        min-height: 112px !important;
        border-radius: 14px !important;
    }

    .antenne-more-news-image {
        grid-column: 1 !important;
        grid-row: 1 !important;
        width: 112px !important;
        height: 100% !important;
        min-height: 112px !important;
        aspect-ratio: auto !important;
    }

    .antenne-more-news-content {
        grid-column: 2 !important;
        grid-row: 1 !important;
        min-width: 0 !important;
        padding: 13px 14px !important;
    }

    .antenne-more-news-meta {
        margin-bottom: 6px;
        font-size: 9px;
    }

    .antenne-more-news-card h3 {
        display: -webkit-box;
        margin-bottom: 7px;
        overflow: hidden;
        font-size: 16px;
        line-height: 1.15;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }

    .antenne-more-news-card p {
        display: none;
    }

    .antenne-more-news-link {
        font-size: 12px;
    }

    /* ---------- Mediathek: kompakte Liste ---------- */

    .antenne-mediathek-section {
        padding: 32px 0 42px !important;
    }

    .antenne-mediathek-section .antenne-container {
        width: calc(100% - 28px) !important;
        max-width: none !important;
    }

    .antenne-mediathek-section .antenne-section-head {
        display: block !important;
        margin-bottom: 18px !important;
    }

    .antenne-mediathek-section .antenne-section-head h2 {
        font-size: 30px !important;
        line-height: 1.02 !important;
    }

    .antenne-mediathek-section .antenne-section-link {
        margin-top: 10px !important;
        margin-bottom: 0 !important;
        font-size: 12px !important;
    }

    .antenne-mediathek-section .antenne-mediathek-grid,
    .antenne-mediathek-section .antenne-media-grid {
        grid-template-columns: 1fr !important;
        gap: 11px !important;
    }

    .antenne-mediathek-section .antenne-mediathek-card,
    .antenne-mediathek-section .antenne-media-card {
        display: grid !important;
        grid-template-columns: 112px minmax(0, 1fr) !important;
        grid-template-rows: 112px !important;
        height: 112px !important;
        min-height: 112px !important;
        max-height: 112px !important;
        border-radius: 13px !important;
        box-shadow: 0 5px 15px rgba(16, 17, 20, 0.06) !important;
    }

    .antenne-mediathek-section .antenne-media-image,
    .antenne-mediathek-section .antenne-media-thumb {
        grid-column: 1 !important;
        grid-row: 1 !important;
        flex: none !important;
        width: 112px !important;
        height: 112px !important;
        min-height: 112px !important;
        max-height: 112px !important;
    }

    .antenne-mediathek-section .antenne-media-content,
    .antenne-mediathek-section .antenne-media-body {
        grid-column: 2 !important;
        grid-row: 1 !important;
        flex: none !important;
        justify-content: center !important;
        width: auto !important;
        height: 112px !important;
        min-height: 112px !important;
        max-height: 112px !important;
        padding: 11px 42px 11px 13px !important;
    }

    .antenne-mediathek-section .antenne-media-content h2,
    .antenne-mediathek-section .antenne-media-content h3,
    .antenne-mediathek-section .antenne-media-body h2,
    .antenne-mediathek-section .antenne-media-body h3 {
        margin: 0 0 7px !important;
        font-size: 15px !important;
        line-height: 1.14 !important;
    }

    .antenne-mediathek-section .antenne-media-link {
        font-size: 11px !important;
    }

    .antenne-mediathek-section .antenne-media-play,
    .antenne-mediathek-section .antenne-play-icon {
        top: auto !important;
        right: 8px !important;
        bottom: 8px !important;
        width: 30px !important;
        height: 30px !important;
        min-width: 30px !important;
        min-height: 30px !important;
    }
}

/* =================================================
   Reduzierte Bewegung
================================================= */

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
    }
}

/* =================================================
   Kategorie-Übersicht
================================================= */

.antenne-cat-overview {
    padding: 34px 0 20px;
    background: #ffffff;
}

.antenne-cat-overview-head {
    position: relative;
    margin-bottom: 22px;
    padding-left: 18px;
}

.antenne-cat-overview-head::before {
    position: absolute;
    top: 3px;
    bottom: 3px;
    left: 0;
    width: 5px;
    border-radius: 99px;
    background: var(--antenne-red);
    content: "";
}

.antenne-cat-overview-kicker {
    display: block;
    margin-bottom: 7px;
    color: #777d86;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 0.10em;
    line-height: 1.2;
    text-transform: uppercase;
}

.antenne-cat-overview-head h2 {
    margin: 0;
    color: var(--antenne-text);
    font-size: clamp(28px, 3.4vw, 40px);
    font-weight: 900;
    line-height: 1;
    letter-spacing: -0.055em;
}

.antenne-cat-overview-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
    gap: 16px;
}

/* Kachel */

.antenne-cat-tile {
    position: relative;
    isolation: isolate;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 150px;
    padding: 16px 18px;
    overflow: hidden;
    border-radius: 16px;
    background:
        radial-gradient(
            circle at 85% 10%,
            rgba(255, 33, 61, 0.55),
            transparent 55%
        ),
        linear-gradient(135deg, #1b1118 0%, #4b0b1b 100%);
    background-position: center;
    background-size: cover;
    box-shadow: 0 8px 24px rgba(16, 17, 20, 0.12);
    color: #ffffff;
    text-decoration: none;
    transition:
        transform 0.22s ease,
        box-shadow 0.22s ease;
}

/* Dunkler Verlauf über dem Bild, damit Text lesbar bleibt */
.antenne-cat-tile.has-image::before {
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(
        to top,
        rgba(10, 6, 10, 0.88) 0%,
        rgba(10, 6, 10, 0.35) 60%,
        rgba(10, 6, 10, 0.15) 100%
    );
    content: "";
    transition: background 0.22s ease;
}

.antenne-cat-tile:hover {
    box-shadow: 0 16px 36px rgba(16, 17, 20, 0.22);
    color: #ffffff;
    transform: translateY(-4px);
}

.antenne-cat-tile:focus-visible {
    outline: 3px solid var(--antenne-red);
    outline-offset: 3px;
}

.antenne-cat-tile-count {
    align-self: flex-start;
    padding: 5px 10px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 99px;
    background: rgba(255, 255, 255, 0.12);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: 0.07em;
    line-height: 1;
    text-transform: uppercase;
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
}

.antenne-cat-tile-body {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding-right: 34px;
}

.antenne-cat-tile-name {
    font-size: 22px;
    font-weight: 900;
    line-height: 1.05;
    letter-spacing: -0.04em;
}

.antenne-cat-tile-text {
    color: rgba(255, 255, 255, 0.78);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.25;
}

.antenne-cat-tile-arrow {
    position: absolute;
    right: 16px;
    bottom: 16px;
    display: grid;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    place-items: center;
    background: var(--antenne-red);
    font-size: 16px;
    line-height: 1;
    transition: transform 0.22s ease;
}

.antenne-cat-tile:hover .antenne-cat-tile-arrow {
    transform: translateX(4px);
}

/* Smartphone: zwei Kacheln nebeneinander */

@media (max-width: 620px) {
    .antenne-cat-overview {
        padding: 26px 0 12px;
    }

    .antenne-cat-overview-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .antenne-cat-tile {
        min-height: 128px;
        padding: 13px 14px;
        border-radius: 14px;
    }

    .antenne-cat-tile-name {
        font-size: 18px;
    }

    .antenne-cat-tile-text {
        display: none;
    }

    .antenne-cat-tile-body {
        padding-right: 30px;
    }

    .antenne-cat-tile-arrow {
        right: 12px;
        bottom: 12px;
        width: 28px;
        height: 28px;
    }
}

/* =================================================
   Studiomail-Popup
================================================= */

body.antenne-modal-open {
    overflow: hidden;
}

.antenne-modal {
    position: fixed;
    z-index: 999999;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 22px;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.22s ease, visibility 0.22s ease;
}

.antenne-modal.is-open {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
}

.antenne-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(5, 6, 8, 0.80);
    -webkit-backdrop-filter: blur(7px);
    backdrop-filter: blur(7px);
}

.antenne-modal-dialog {
    position: relative;
    z-index: 1;
    width: min(100%, 650px);
    max-height: min(780px, calc(100vh - 44px));
    overflow-y: auto;
    padding: 70px 38px 38px;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 24px;
    background:
        radial-gradient(
            circle at 95% 5%,
            rgba(227, 6, 19, 0.28),
            transparent 19rem
        ),
        linear-gradient(135deg, #15171c, #22262f);
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.50);
    color: #ffffff;
    transform: translateY(14px) scale(0.98);
    transition: transform 0.22s ease;
}

.antenne-modal.is-open .antenne-modal-dialog {
    transform: translateY(0) scale(1);
}

/* X oben links */
/* X oben rechts */
.antenne-modal-close {
    position: absolute;
    top: 15px;
    right: 17px;
    left: auto;
    z-index: 5;
    display: grid;
    width: 38px;
    height: 38px;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, 0.20);
    border-radius: 50%;
    place-items: center;
    background: rgba(255, 255, 255, 0.09);
    color: #ffffff;
    cursor: pointer;
    font-size: 27px;
    line-height: 1;
    transition: background 0.2s ease, transform 0.2s ease;
}

.antenne-modal-close:hover {
    background: var(--antenne-red);
    transform: rotate(90deg);
}

.antenne-modal-close:focus-visible {
    outline: 3px solid #ffffff;
    outline-offset: 3px;
}

.antenne-modal-kicker {
    display: inline-block;
    margin-bottom: 12px;
    color: #ff949b;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 0.10em;
    text-transform: uppercase;
}

.antenne-modal-dialog h2 {
    margin: 0 50px 12px 0;
    color: #ffffff;
    font-size: clamp(28px, 5vw, 40px);
    font-weight: 850;
    line-height: 1.05;
    letter-spacing: -0.05em;
}

.antenne-modal-intro {
    max-width: 540px;
    margin: 0 0 27px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 15px;
    line-height: 1.55;
}

/* Formular (Contact Form 7) */

.antenne-modal-form p {
    margin: 0 0 14px;
}

.antenne-modal-form label {
    display: block;
    margin: 0 0 7px;
    color: rgba(255, 255, 255, 0.88);
    font-size: 14px;
    font-weight: 700;
}

.antenne-modal-form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.antenne-modal-form textarea,
.antenne-modal-form select {
    width: 100%;
    min-height: 47px;
    padding: 11px 13px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 8px;
    outline: none;
    background: rgba(255, 255, 255, 0.09);
    color: #ffffff;
    font: inherit;
    box-sizing: border-box;
}

.antenne-modal-form textarea {
    min-height: 130px;
    resize: vertical;
}

.antenne-modal-form input:focus,
.antenne-modal-form textarea:focus,
.antenne-modal-form select:focus {
    border-color: #ff6a73;
    box-shadow: 0 0 0 3px rgba(227, 6, 19, 0.20);
}

.antenne-modal-form input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin-right: 8px;
    accent-color: var(--antenne-red);
}

.antenne-modal-form a {
    color: #ff949b;
}

.antenne-modal-form input[type="submit"],
.antenne-modal-form button[type="submit"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 12px 22px;
    border: 0;
    border-radius: 10px;
    background: linear-gradient(135deg, #ff1644 0%, #d8002f 100%);
    color: #ffffff;
    cursor: pointer;
    font: inherit;
    font-size: 14px;
    font-weight: 850;
}

.antenne-modal-form .wpcf7-not-valid-tip {
    margin-top: 5px;
    color: #ff949b;
    font-size: 13px;
}

.antenne-modal-form .wpcf7-response-output {
    margin: 16px 0 0 !important;
    padding: 11px 14px !important;
    border-radius: 10px;
    border-color: rgba(255, 255, 255, 0.25) !important;
    color: #ffffff;
    font-size: 14px;
}

@media (max-width: 600px) {
    .antenne-modal {
        align-items: flex-end;
          padding: 30px 20px 24px;
    }

    .antenne-modal-dialog {
        max-height: calc(100vh - 24px);
        padding: 64px 20px 24px;
        border-radius: 20px;
    }
}

/* =================================================
   Hero-Bild hinter dem Live-Bereich
   läuft nach unten transparent aus, die On-Air-Box
   liegt zur Hälfte darüber
================================================= */

main.antenne-home section.antenne-live-section {
    /* Dein Bild */
    --antenne-hero-img: url("https://www.antenne-kh.de/wp-content/uploads/2026/10/167.jpg");

    /* Höhe der Bildfläche = Abstand oben (155px) + halbe Box (89px) */
    --antenne-hero-h: 240px;

    position: relative !important;
    padding-bottom: 22px !important;
    background: transparent !important;
}

/* Die Bildebene */
main.antenne-home section.antenne-live-section::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    z-index: 0;
    display: block !important;
    height: var(--antenne-hero-h);
    background:
        linear-gradient(
            to bottom,
            rgba(10, 6, 10, 0.30) 0%,
            rgba(10, 6, 10, 0.10) 100%
        ),
        var(--antenne-hero-img, none) center top / cover no-repeat;

    /* Von oben sichtbar bis unten vollständig transparent */
    -webkit-mask-image: linear-gradient(
        to bottom,
        #000 0%,
        #000 35%,
        transparent 100%
    );
    mask-image: linear-gradient(
        to bottom,
        #000 0%,
        #000 35%,
        transparent 100%
    );
    pointer-events: none;
}

/* Alles zwischen Bild und Box durchsichtig lassen */
main.antenne-home section.antenne-live-section .antenne-container,
main.antenne-home section.antenne-live-section .antenne-live-layout {
    background: transparent !important;
    background-image: none !important;
}

/* Smartphone: weniger Abstand oben, Bild endet in der Mitte des Banners */
@media (max-width: 900px) {
    main.antenne-home section.antenne-live-section {
        --antenne-hero-h: 80px;
        padding-top: 30px !important;
    }
}

/* Weißes Band hinter den Live-Kacheln entfernen */

main.antenne-home section.antenne-live-section .antenne-container::before,
main.antenne-home section.antenne-live-section .antenne-container::after,
main.antenne-home section.antenne-live-section .antenne-live-layout::before,
main.antenne-home section.antenne-live-section .antenne-live-layout::after,
main.antenne-home section.antenne-live-section::after {
    content: none !important;
    display: none !important;
    background: transparent !important;
}

main.antenne-home section.antenne-live-section .antenne-container,
main.antenne-home section.antenne-live-section .antenne-live-layout {
    background: transparent !important;
    background-image: none !important;
    outline: 0 !important;
    clip-path: none !important;
}

/* Schatten nur als normaler Kastenschatten, kein weißer Riesen-Schatten */
main.antenne-home section.antenne-live-section .antenne-live-layout {
    box-shadow:
        0 18px 42px rgba(23, 8, 14, 0.23),
        0 2px 6px rgba(23, 8, 14, 0.16) !important;
}

/* Live-hören-Button im On-Air-Banner (nur PC) */
.antenne-live-onair .antenne-onair-live-btn { display:none; }

@media (min-width: 901px) {
    .antenne-live-onair .antenne-onair-live-btn {
        position:absolute !important;
        left:47% !important;
        top:50% !important;
        transform:translateY(-50%);
        z-index:40 !important;
        display:inline-flex !important;
        align-items:center;
        gap:10px;
        padding:15px 26px;
        border-radius:999px;
        background:#e30613;
        color:#fff !important;
        font-size:15px;
        font-weight:800;
        letter-spacing:.05em;
        text-transform:uppercase;
        text-decoration:none;
        white-space:nowrap;
        box-shadow:0 8px 20px rgba(227,6,19,.4);
        transition:transform .15s, background .15s;
    }
    .antenne-live-onair .antenne-onair-live-btn:hover {
        background:#ff1a27;
        transform:translateY(-50%) scale(1.05);
    }
}

/* Live-Button mobil in der Kachel */
@media (max-width: 900px) {
    .antenne-live-onair,
    .antenne-live-onair .antenne-onair,
    .antenne-live-onair .antenne-onair-inner {
        height: 205px !important;
        min-height: 205px !important;
        max-height: 205px !important;
    }
    .antenne-live-onair .antenne-onair-inner {
        padding-bottom: 60px !important;
        box-sizing: border-box !important;
    }
    .antenne-live-onair .antenne-onair-artwork-floating,
    .antenne-live-onair .antenne-onair-artwork-floating .antenne-onair-moderator-wrap,
    .antenne-live-onair .antenne-onair-artwork-floating .antenne-onair-moderator-image {
        height: 205px !important;
        min-height: 205px !important;
        max-height: 205px !important;
    }
    .antenne-live-onair .antenne-onair-live-btn {
        position: absolute !important;
        left: 14px !important;
        bottom: 14px !important;
        top: auto !important;
        transform: none !important;
        z-index: 40 !important;
        display: inline-flex !important;
        align-items: center;
        gap: 7px;
        padding: 9px 16px;
        border-radius: 999px;
        background: #e30613;
        color: #fff !important;
        font-size: 12px;
        font-weight: 800;
        letter-spacing: .05em;
        text-transform: uppercase;
        text-decoration: none;
        white-space: nowrap;
        box-shadow: 0 6px 16px rgba(227,6,19,.4);
    }
	.antenne-live-onair .antenne-onair-content {
        width: 60% !important;
        max-width: 60% !important;
    }
    .antenne-live-onair .antenne-onair-title {
        font-size: clamp(26px, 7.6vw, 40px) !important;
        line-height: 1.0 !important;
    }
    .antenne-live-onair .antenne-onair-title-sub {
        font-size: 0.64em !important;
        margin-top: 5px !important;
    }
    .antenne-live-onair .antenne-onair-time {
        font-size: 12px !important;
    }
}
	
/* HEADER */
.antenne-header { background:#fff; border-bottom:0; box-shadow:0 2px 12px rgba(0,0,0,.08); position:relative; z-index:100; }
.antenne-header .antenne-header-inner { max-width:1200px; margin:0 auto; padding:12px 20px 0; text-align:center; }
.antenne-header .antenne-logo { margin-bottom:10px; }
.antenne-header .antenne-logo img { max-height:200px; width:auto; height:auto; display:inline-block; }
.antenne-header .antenne-logo-text { font-size:28px; font-weight:700; text-decoration:none; color:#111; }

/* Burger: am PC aus */
.antenne-header .antenne-menu-toggle { display:none !important; background:none; border:0; padding:10px; cursor:pointer; }
.antenne-header .antenne-menu-toggle span { display:block; width:26px; height:3px; margin:5px 0; background:#111; transition:.2s; }

/* Menü ohne Punkte */
.antenne-header .antenne-menu,
.antenne-header .antenne-menu li { list-style:none !important; margin:0; padding:0; }
.antenne-header .antenne-menu li::before,
.antenne-header .antenne-menu li::after { content:none !important; display:none !important; }
.antenne-header .antenne-menu li::marker { content:''; }

/* Dunkler Menüstreifen */
.antenne-header .antenne-nav { background:#161616; margin:0 -20px; }
.antenne-header .antenne-menu { display:flex; justify-content:center; flex-wrap:wrap; gap:4px 28px; }
.antenne-header .antenne-menu li { position:relative; }
.antenne-header .antenne-menu a { display:block; padding:14px 6px; text-decoration:none; color:#fff; font-weight:600; text-transform:uppercase; font-size:15px; letter-spacing:.04em; position:relative; }
.antenne-header .antenne-menu a::after { content:''; position:absolute; left:0; right:0; bottom:6px; height:3px;
    background:#e2001a; transform:scaleX(0); transition:transform .2s; }
.antenne-header .antenne-menu a:hover::after,
.antenne-header .antenne-menu .current-menu-item > a::after { transform:scaleX(1); }
.antenne-header .antenne-menu a:hover,
.antenne-header .antenne-menu .current-menu-item > a { color:#fff; }

/* Untermenü */
.antenne-header .antenne-menu .sub-menu { list-style:none; margin:0; padding:8px 16px; position:absolute; left:50%; transform:translateX(-50%);
    min-width:200px; background:#161616; border:1px solid #333; display:none; text-align:left; z-index:10; }
.antenne-header .antenne-menu li:hover > .sub-menu,
.antenne-header .antenne-menu li:focus-within > .sub-menu { display:block; }

.antenne-header .antenne-header-inner { position:relative; }
.antenne-header .antenne-live-btn { position:absolute; top:20px; right:20px; display:inline-flex; align-items:center; gap:8px;
    background:#e2001a; color:#fff !important; text-decoration:none; font-weight:700; text-transform:uppercase;
    font-size:14px; letter-spacing:.04em; padding:12px 20px; border-radius:999px; box-shadow:0 4px 12px rgba(226,0,26,.35);
    transition:transform .15s, background .15s; z-index:5; }
.antenne-header .antenne-live-btn:hover { background:#b8001a; transform:translateY(-1px); }
.antenne-header .antenne-live-icon { font-size:12px; }	
.antenne-header .antenne-live-btn { display:none !important; }
	
/* Smartphone und Tablet */
@media (max-width: 1024px) {
    .antenne-header .antenne-header-inner { padding-bottom:10px; }
    .antenne-header .antenne-logo img { max-height:90px; }
    .antenne-header .antenne-menu-toggle { display:inline-block !important; }
    .antenne-header .antenne-nav { display:none; text-align:left; margin:8px -20px 0; }
    .antenne-header .antenne-nav.is-open { display:block; }
    .antenne-header .antenne-menu { display:block; }
    .antenne-header .antenne-menu a { padding:14px 20px; border-bottom:1px solid #2a2a2a; }
    .antenne-header .antenne-menu a::after { display:none; }
    .antenne-header .antenne-menu .current-menu-item > a { color:#e2001a; }
    .antenne-header .antenne-menu .sub-menu { position:static; transform:none; display:block; border:0; padding:0 0 0 16px; background:transparent; }
    .antenne-header .antenne-menu-toggle.is-open span:nth-child(1) { transform:translateY(8px) rotate(45deg); }
    .antenne-header .antenne-menu-toggle.is-open span:nth-child(2) { opacity:0; }
    .antenne-header .antenne-menu-toggle.is-open span:nth-child(3) { transform:translateY(-8px) rotate(-45deg); }
	.antenne-header .antenne-live-btn { position:static; display:inline-flex; margin:0 8px 8px 0; padding:10px 16px; font-size:13px; }
	.antenne-header .antenne-menu-toggle {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: 0 auto !important;
    float: none !important;
    width: 52px;
    height: 48px;
    padding: 0 !important;
}
.antenne-header .antenne-menu-toggle span {
    margin: 4px auto !important;
}
.antenne-header .antenne-menu-toggle.is-open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.antenne-header .antenne-menu-toggle.is-open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
}
	.antenne-header .antenne-nav {
    text-align: center !important;
}
.antenne-header .antenne-menu a {
    text-align: center !important;
    justify-content: center;
}
.antenne-header .antenne-menu .sub-menu {
    padding: 0 !important;
    text-align: center !important;
}
.antenne-header .antenne-menu .sub-menu a {
    padding-left: 4px;
  }

/* =================================================
   HEADER (neu) – Klassen mit Präfix "ah-"
   Diesen Block ans Ende der antenne-startseite.css setzen
================================================= */

.ah {
    position: relative;
    z-index: 9999;
    background: #ffffff;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
}

.ah-top {
    max-width: 1200px;
    margin: 0 auto;
    padding: 12px 20px 10px;
    text-align: center;
}

.ah-logo a {
    display: inline-block;
    line-height: 0;
}

.ah-logo img {
    display: block;
    width: auto;
    height: auto;
    max-height: 200px;
}

/* Burger: am PC aus */
.ah-burger {
    display: none;
    -webkit-appearance: none;
    appearance: none;
    border: 0;
    background: transparent;
    cursor: pointer;
}

.ah-burger span {
    display: block;
    width: 26px;
    height: 3px;
    margin: 4px 0;
    border-radius: 2px;
    background: #111111;
    transition: transform 0.2s ease, opacity 0.2s ease;
}

/* Dunkler Menüstreifen */
.ah-nav {
    background: #161616;
}

.ah-menu,
.ah-menu li {
    margin: 0;
    padding: 0;
    list-style: none !important;
}

.ah-menu li::before,
.ah-menu li::after {
    content: none !important;
    display: none !important;
}

.ah-menu {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 4px 28px;
    max-width: 1200px;
    margin: 0 auto;
}

.ah-menu li {
    position: relative;
}

.ah-menu a {
    position: relative;
    display: block;
    padding: 14px 6px;
    color: #ffffff;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-decoration: none;
    text-transform: uppercase;
}

.ah-menu a::after {
    position: absolute;
    right: 0;
    bottom: 6px;
    left: 0;
    height: 3px;
    background: #e2001a;
    content: "";
    transform: scaleX(0);
    transition: transform 0.2s ease;
}

.ah-menu a:hover::after,
.ah-menu .current-menu-item > a::after {
    transform: scaleX(1);
}

.ah-menu a:hover,
.ah-menu .current-menu-item > a {
    color: #ffffff;
}

/* Untermenü (PC) */
.ah-menu .sub-menu {
    position: absolute;
    top: 100%;
    left: 50%;
    z-index: 10;
    display: none;
    min-width: 200px;
    margin: 0;
    padding: 8px 16px;
    border: 1px solid #333333;
    background: #161616;
    list-style: none;
    text-align: left;
    transform: translateX(-50%);
}

.ah-menu li:hover > .sub-menu,
.ah-menu li:focus-within > .sub-menu {
    display: block;
}

/* =================================================
   Smartphone und Tablet
   Logo links, Burger rechts, Menü als Overlay
================================================= */

@media (max-width: 1024px) {

    .ah-top {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        max-width: none;
        padding: 10px 16px;
        text-align: left;
    }

    .ah-logo {
        flex: 0 1 auto;
        min-width: 0;
    }

    .ah-logo img {
        max-width: 68vw;
        max-height: 120px;
    }

    .ah-burger {
        display: flex;
        flex: 0 0 auto;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        width: 48px;
        height: 48px;
        margin: 0 0 0 auto;
        padding: 0;
    }

    .ah-burger.is-open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
    .ah-burger.is-open span:nth-child(2) { opacity: 0; }
    .ah-burger.is-open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

    /* Menü legt sich über den Inhalt */
    .ah-nav {
        position: absolute;
        top: 100%;
        right: 0;
        left: 0;
        display: none;
        max-height: calc(100vh - 100px);
        overflow-y: auto;
        box-shadow: 0 18px 36px rgba(0, 0, 0, 0.35);
    }

    .ah-nav.is-open {
        display: block;
    }

    .ah-menu {
        display: block;
        max-width: none;
    }

    .ah-menu a {
        padding: 14px 20px;
        border-bottom: 1px solid #2a2a2a;
        text-align: center;
    }

    .ah-menu a::after {
        display: none;
    }

    .ah-menu .current-menu-item > a {
        color: #e2001a;
    }

    .ah-menu .sub-menu {
        position: static;
        display: block;
        min-width: 0;
        padding: 0;
        border: 0;
        background: transparent;
        text-align: center;
        transform: none;
    }
}

@media (min-width: 1025px) {
    .ah .ah-burger {
        display: none !important;
    }
    .ah .ah-nav {
        position: static !important;
        display: block !important;
        max-height: none !important;
        box-shadow: none !important;
    }
	
	/* =================================================
   Weihnachts-Banner (Event-Tipp)
================================================= */

.xmas-banner-wrap {
    width: min(1198px, calc(100% - 40px));
    margin: 26px auto 30px;
}

.xmas-banner {
    position: relative;
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 24px 28px 20px;
    overflow: hidden;
    border-radius: 18px;
    background:
        radial-gradient(circle at 92% 20%, rgba(246, 196, 83, 0.20), transparent 18rem),
        linear-gradient(120deg, #c8102e 0%, #8f0d22 45%, #0f5132 100%);
    box-shadow:
        inset 0 0 0 1px rgba(246, 196, 83, 0.55),
        0 14px 34px rgba(143, 13, 34, 0.30);
    color: #ffffff;
    box-sizing: border-box;
}

/* Zuckerstange oben */
.xmas-banner::after {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 6px;
    background: repeating-linear-gradient(135deg, #ffffff 0 12px, #c8102e 12px 24px);
    content: "";
}

/* Fallender Schnee */
.xmas-banner::before {
    position: absolute;
    inset: 0;
    z-index: 0;
    opacity: 0.7;
    pointer-events: none;
    background-image:
        radial-gradient(circle, #ffffff 0 1.6px, transparent 2.2px),
        radial-gradient(circle, rgba(255, 255, 255, 0.7) 0 1.2px, transparent 1.8px),
        radial-gradient(circle, rgba(255, 255, 255, 0.5) 0 2.2px, transparent 3px);
    background-size: 90px 90px, 140px 140px, 200px 200px;
    background-position: 0 0, 40px 60px, 90px 20px;
    content: "";
    animation: xmas-snow 18s linear infinite;
}

@keyframes xmas-snow {
    to { background-position: 0 90px, 40px 200px, 90px 220px; }
}

.xmas-banner > * {
    position: relative;
    z-index: 1;
}

.xmas-banner-icon {
    display: grid;
    flex: 0 0 56px;
    width: 56px;
    height: 56px;
    border: 1px solid rgba(246, 196, 83, 0.55);
    border-radius: 14px;
    place-items: center;
    background: rgba(255, 255, 255, 0.12);
    font-size: 30px;
    line-height: 1;
}

.xmas-banner-body {
    flex: 1 1 auto;
    min-width: 0;
}

.xmas-banner-label {
    display: inline-block;
    margin-bottom: 4px;
    color: #f6c453;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 0.10em;
    text-transform: uppercase;
}

.xmas-banner-title {
    margin: 0 0 4px;
    color: #ffffff;
    font-size: clamp(20px, 2.2vw, 26px);
    font-weight: 850;
    line-height: 1.12;
    letter-spacing: -0.02em;
}

.xmas-banner-text {
    margin: 0;
    color: rgba(255, 255, 255, 0.88);
    font-size: 16px;
    line-height: 1.4;
}

.xmas-banner-date {
    flex: 0 0 auto;
    padding: 9px 18px;
    border: 1px solid #f6c453;
    border-radius: 999px;
    background: rgba(0, 0, 0, 0.18);
    color: #ffe29a;
    font-size: 20px;
    font-weight: 700;
    white-space: nowrap;
}

.xmas-banner-btn {
    flex: 0 0 auto;
    padding: 12px 22px;
    border-radius: 999px;
    background: #f6c453;
    color: #5b0a15 !important;
    font-size: 14px;
    font-weight: 850;
    text-decoration: none;
    white-space: nowrap;
    transition: transform 0.15s ease, background 0.15s ease;
}

.xmas-banner-btn:hover {
    background: #ffd978;
    transform: translateY(-2px);
}

/* Tablet und Smartphone */
@media (max-width: 900px) {
    .xmas-banner {
        flex-wrap: wrap;
        padding: 24px 20px 20px;
    }
    .xmas-banner-body {
        flex: 1 1 calc(100% - 80px);
    }
    .xmas-banner-date,
    .xmas-banner-btn {
        margin-left: 74px;
    }
}

@media (max-width: 620px) {
    .xmas-banner-wrap {
        width: calc(100% - 30px);
    }
    .xmas-banner-icon {
        flex-basis: 46px;
        width: 46px;
        height: 46px;
        font-size: 24px;
    }
    .xmas-banner-body {
        flex-basis: calc(100% - 64px);
    }
    .xmas-banner-date,
    .xmas-banner-btn {
        margin-left: 0;
        white-space: normal;
    }

	/* Standardbild (kein Moderator): komplett im Banner */
.antenne-live-onair .antenne-onair-artwork-floating.is-default-image .antenne-onair-moderator-image {
    top: auto !important;
    bottom: 16px !important;
    right: 28px !important;
    height: 140px !important;
    min-height: 0 !important;
    max-height: 140px !important;
    filter: drop-shadow(0 10px 14px rgba(0, 0, 0, 0.35));
}

@media (max-width: 900px) {
    .antenne-live-onair .antenne-onair-artwork-floating.is-default-image .antenne-onair-moderator-image {
        bottom: 18px !important;
        right: 12px !important;
        height: 100px !important;
        min-height: 0 !important;
        max-height: 100px !important;
    }


}