/* Premium-Inhalt: Badge in der Newsliste + Fade-Paywall im Detail
   (rlv_site_package). Bei Bedarf in euer Haupt-Stylesheet übernehmen. */

.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;
}

/* ---- Premium-Kennzeichnung: nur farbiges Icon, keine Pille ---- */
/* Icon-only Marker in der Newsliste */
.news-premium-flag { display: inline-flex; align-items: center; line-height: 0; vertical-align: middle; }
.news-premium-flag .news-premium-badge__icon { font-size: 1.15rem; }

/* In der Paywall: Icon + Text (ohne Pillen-Hintergrund) */
.news-premium-badge { display: inline-flex; align-items: center; gap: .4em; font-weight: 600; }
.news-premium-badge__icon { flex: 0 0 auto; }

/* ---- Beitragsbild im Gate ---- */
.news-premium-preview__media { margin: 0 0 1.25rem; }
.news-premium-preview__media img { display:block; width:100%; height:auto; border-radius:6px; }

/* ---- Artikelvorschau mit Fade-Out ---- */
.news-premium-gate__excerpt { position: relative; margin: 0 0 -1.5rem; }
.news-premium-gate__excerpt::after { content: ""; display: block; clear: both; }
.news-premium-preview {
    position: relative;
    color: #333;
    /* harte Begrenzung auf ~4 Zeilen … */
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    max-height: 6.6em;
    overflow: hidden;
    /* … plus weiches Ausblenden der letzten Zeile */
    -webkit-mask-image: linear-gradient(to bottom, #000 40%, transparent 100%);
            mask-image: linear-gradient(to bottom, #000 40%, transparent 100%);
}

/* Classic-Paywall: Bild floatet (200px), Vorschautext läuft daneben und umfließt */
.news-premium-gate--classic .news-premium-preview {
    display: block;               /* -webkit-box würde nicht um den Float laufen */
    -webkit-line-clamp: unset;
}
.news-premium-preview p { margin: 0; }

/* ---- Gate / Login-Aufforderung ---- */
.news-premium-gate {
    margin: 1.5rem 0;
}
.news-premium-gate__cta {
    position: relative;
    padding: 1.5rem;
    border: 1px solid #e3e3e3;
    border-radius: 8px;
    background: #f7f7f9;
    text-align: center;
}
.news-premium-gate__badge { margin: 0 0 .75rem; }
.news-premium-gate__hint  { margin: 0 auto 1.25rem; max-width: 42ch; color: #444; }
.news-premium-gate__login { display: inline-block; }

/* ---- Classic-Detail: umflossenes Lead-Bild (max. 200px, links oben) ---- */
.news-classic__body::after { content: ""; display: block; clear: both; }

.news-classic__lead {
    float: left;
    width: 200px;
    max-width: 45%;
    margin: .25rem 1.25rem .75rem 0;
}
.news-classic__lead img { display: block; width: 100%; height: auto; border-radius: 4px; }
.news-classic__lead figcaption { margin-top: .35rem; font-size: .8rem; line-height: 1.4; color: #666; }

@media (max-width: 480px) {
    .news-classic__lead { float: none; width: auto; max-width: 100%; margin: 0 0 1rem; }
}

/* ---- Premium-Icon-Farbe je Marke/Gruppe ----
   Alle Marken nutzen dasselbe Plus-Icon (fa-circle-plus), nur in eigener Farbe.
   Hier bei Bedarf die exakten Markenfarben eintragen. */
.news-premium-badge__icon { font-size: 1em; line-height: 1; }
.news-premium-badge--group-1 .news-premium-badge__icon { color: #1A873A; } /* LZ-Rheinland */
.news-premium-badge--group-2 .news-premium-badge__icon { color: #00A139; } /* OG Profi     */
.news-premium-badge--group-3 .news-premium-badge__icon { color: #006E91; } /* SEP Profi    */

/* Premium-Plus links neben dem "weiter"-Link (OG Profi) */
.more-button { display: flex; align-items: center; gap: .4em; }
.more-button__flag { flex: 0 0 auto; }
