/* =========================================================
   DRP NEWS – STYLES.CSS
   FINAL
========================================================= */


/* =========================================================
   RESET
========================================================= */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

:root {
    --bg: #090c10;
    --header: #0d1117;
    --card: #12171e;
    --card-hover: #181e27;

    --border: #252b33;

    --text: #f4f6f8;
    --muted: #9299a3;

    --red: #ed1d2e;
    --red-dark: #b91523;

    --white: #ffffff;
}

html {
    scroll-behavior: smooth;
}

body {
    min-height: 100vh;

    background: var(--bg);
    color: var(--text);

    font-family: Arial, Helvetica, sans-serif;
    line-height: 1.6;
}

a {
    color: inherit;
    text-decoration: none;
}

button,
input,
select,
textarea {
    font: inherit;
}


/* =========================================================
   HEADER
========================================================= */

.site-header {
    width: 100%;

    background: var(--header);

    border-bottom: 1px solid var(--border);
}

.header-inner {
    width: min(1450px, calc(100% - 40px));
    min-height: 100px;

    margin: 0 auto;

    display: flex;
    align-items: center;

    gap: 22px;

    flex-wrap: nowrap;
}


/* =========================================================
   DRP LOGO
========================================================= */

.brand {
    display: flex;
    align-items: center;

    gap: 14px;

    flex: 0 0 auto;

    white-space: nowrap;
}

.site-logo {
    display: block;

    width: 76px;
    height: 76px;

    object-fit: contain;

    border-radius: 50%;
}


/* =========================================================
   DRP NEWS | DEUTSCHES RP
========================================================= */

.brand-text {
    display: flex;
    align-items: center;

    flex-direction: row;

    gap: 9px;

    line-height: 1;

    white-space: nowrap;
}

.brand-text strong {
    display: inline-flex;
    align-items: center;

    color: #ffffff;

    font-size: 21px;
    font-weight: 900;

    letter-spacing: .3px;
}

.brand-text strong::after {
    content: "|";

    margin-left: 9px;

    color: #5f6670;

    font-size: 19px;
    font-weight: 400;
}

.brand-text span {
    margin: 0;

    color: var(--muted);

    font-size: 12px;
    font-weight: 800;

    letter-spacing: .9px;

    text-transform: uppercase;
}


/* =========================================================
   POLIZEI-BLÖCKE STANDARDMÄSSIG AUS
========================================================= */

.police-brand-addon,
.police-footer-brand {
    display: none !important;
}

.police-brand-addon[hidden],
.police-footer-brand[hidden] {
    display: none !important;
}


/* =========================================================
   NAVIGATION
========================================================= */

.main-navigation {
    margin-left: auto;

    display: flex;

    align-items: center;
    justify-content: flex-end;

    gap: 5px;

    flex-wrap: nowrap;

    white-space: nowrap;
}

.main-navigation a {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    min-height: 42px;

    padding: 10px 13px;

    border-radius: 7px;

    color: #d9dde3;

    font-size: 13px;
    font-weight: 800;

    white-space: nowrap;

    transition:
        background .2s,
        color .2s,
        transform .2s;
}

.main-navigation a:hover {
    background: #181e27;

    color: #ffffff;
}

.main-navigation a.active {
    background: var(--red);

    color: #ffffff;
}

.main-navigation .editor-button {
    margin-left: 7px;

    border: 1px solid #343b46;

    background: transparent;
}

.main-navigation .editor-button:hover {
    background: var(--red);

    border-color: var(--red);

    color: #ffffff;
}


/* =========================================================
   BREAKING NEWS
========================================================= */

.breaking-bar {
    width: 100%;

    background: var(--red);

    color: #ffffff;
}

.breaking-inner {
    width: min(1450px, calc(100% - 40px));
    min-height: 42px;

    margin: 0 auto;

    display: flex;
    align-items: center;

    gap: 14px;
}

.breaking-label,
.breaking-badge {
    display: inline-flex;

    align-items: center;

    padding: 4px 9px;

    background: var(--red-dark);

    color: #ffffff;

    border-radius: 4px;

    font-size: 10px;
    font-weight: 900;

    letter-spacing: .5px;
}

.breaking-message {
    color: #ffffff;

    font-size: 12px;
    font-weight: 700;
}


/* =========================================================
   MAIN CONTENT
========================================================= */

.main-content {
    width: min(1180px, calc(100% - 40px));

    margin: 0 auto;

    padding: 55px 0 80px;
}


/* =========================================================
   PAGE HEADING
========================================================= */

.page-heading {
    display: flex;

    justify-content: space-between;
    align-items: flex-end;

    gap: 30px;

    margin-bottom: 35px;

    padding-bottom: 22px;

    border-bottom: 1px solid var(--border);
}

.section-label {
    color: var(--red);

    font-size: 11px;
    font-weight: 900;

    letter-spacing: 1.1px;

    text-transform: uppercase;
}

.page-heading h1 {
    margin-top: 6px;

    color: #ffffff;

    font-size: clamp(31px, 4vw, 46px);

    line-height: 1.1;
}

.page-heading p {
    margin-top: 10px;

    color: var(--muted);

    font-size: 14px;
}

.article-count {
    color: var(--muted);

    font-size: 12px;

    white-space: nowrap;
}


/* =========================================================
   SECTION HEADER
========================================================= */

.section-header {
    margin-bottom: 20px;
}

.section-header h2 {
    margin-top: 5px;

    color: #ffffff;

    font-size: 24px;

    line-height: 1.2;
}


/* =========================================================
   NEWS SECTION
========================================================= */

.featured-section {
    margin-top: 10px;

    margin-bottom: 55px;
}

.all-news-grid {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 24px;

    width: 100%;

    align-items: stretch;
}


/* =========================================================
   NEWS CARD
========================================================= */

.featured-card {
    width: 100%;
    min-width: 0;
    height: 100%;

    overflow: hidden;

    background: var(--card);

    border: 1px solid var(--border);

    border-radius: 12px;

    transition:
        transform .2s,
        border-color .2s,
        box-shadow .2s;
}

.featured-card:hover {
    transform: translateY(-3px);

    border-color: #414956;
}

.featured-card > a {
    display: flex;

    flex-direction: column;

    width: 100%;
    height: 100%;

    color: inherit;
}

.featured-image {
    display: block;

    width: 100%;
    height: 240px;

    object-fit: cover;

    background: #202630;

    transition: transform .3s;
}

.featured-card:hover .featured-image {
    transform: scale(1.025);
}

.featured-placeholder {
    width: 100%;
    height: 240px;

    display: grid;

    place-items: center;

    background:
        linear-gradient(
            145deg,
            #202630,
            #10151b
        );

    color: #737c89;

    font-size: 30px;
    font-weight: 900;
}

.dynamic-card-content {
    padding: 20px;

    display: flex;

    flex-direction: column;

    flex: 1;
}

.featured-card h3 {
    display: block;

    margin-top: 14px;

    color: #ffffff !important;

    font-size: 24px;

    font-weight: 800;

    line-height: 1.15;
}

.article-card-excerpt {
    margin-top: 10px;

    color: #9299a3;

    font-size: 13px;

    line-height: 1.6;
}

.featured-meta,
.article-card-meta {
    margin-top: auto;

    padding-top: 16px;

    color: #b4bac3;

    font-size: 10px;
}


/* =========================================================
   KATEGORIE MARKER
========================================================= */

.featured-category {
    display: inline-flex;

    align-items: center;

    align-self: flex-start;

    width: fit-content;

    padding: 5px 10px;

    border-radius: 5px;

    font-size: 10px;
    font-weight: 900;

    letter-spacing: .55px;

    line-height: 1.2;

    text-transform: uppercase;
}

.featured-category.category-polizei {
    background: #aee3ff !important;

    color: #07131c !important;
}

.featured-category.category-ukd {
    background: #ffffff !important;

    color: #111318 !important;
}

.featured-category.category-bf-ff {
    background: #d71920 !important;

    color: #ffffff !important;
}

.featured-category.category-militaer {
    background: #556b2f !important;

    color: #ffffff !important;
}

.featured-category.category-mechaniker {
    background: #2563eb !important;

    color: #ffffff !important;
}

.featured-category.category-crime {
    background: #ed1d2e !important;

    color: #ffffff !important;
}

.featured-category.category-default {
    background: #ed1d2e !important;

    color: #ffffff !important;
}


/* =========================================================
   EMPTY STATE
========================================================= */

.empty-state {
    padding: 75px 30px;

    text-align: center;

    background: #0e1218;

    border: 1px dashed #303844;

    border-radius: 12px;
}

.empty-icon {
    width: 65px;
    height: 65px;

    margin: 0 auto 20px;

    display: grid;

    place-items: center;

    background: #181e26;

    color: var(--red);

    border-radius: 12px;

    font-weight: 900;
}

.empty-state h2 {
    color: #ffffff;

    font-size: 23px;
}

.empty-state p {
    max-width: 520px;

    margin: 10px auto 0;

    color: var(--muted);

    font-size: 13px;
}


/* =========================================================
   FOOTER
========================================================= */

.site-footer {
    background: #07090c;

    border-top: 1px solid var(--border);
}

.footer-inner {
    width: min(1180px, calc(100% - 40px));

    margin: 0 auto;

    padding: 30px 0;

    display: flex;

    align-items: center;

    gap: 16px;
}

.footer-brand {
    display: flex;

    align-items: center;

    gap: 10px;
}

.footer-brand img {
    width: 42px;
    height: 42px;

    object-fit: contain;

    border-radius: 50%;
}

.footer-brand div {
    display: flex;

    flex-direction: column;
}

.footer-brand strong {
    color: #ffffff;

    font-size: 13px;
}

.footer-brand span,
.footer-right {
    color: #737b86;

    font-size: 10px;
}

.footer-right {
    margin-left: auto;
}


/* =========================================================
   ARTIKELSEITE
========================================================= */

.article-wrap {
    width: min(900px, 100%);

    margin: 0 auto;
}

.back-link {
    display: inline-block;

    margin-bottom: 20px;

    color: var(--red);

    font-size: 13px;

    font-weight: 800;
}

.article-wrap h1 {
    margin: 14px 0 18px;

    color: #ffffff;

    font-size: clamp(35px, 6vw, 60px);

    line-height: 1.05;

    letter-spacing: -1.7px;
}

.article-lead {
    color: #a3aab4;

    font-size: 18px;

    line-height: 1.65;
}

.article-content {
    margin-top: 28px;

    color: #e0e4e9;

    font-size: 17px;

    line-height: 1.85;

    white-space: pre-wrap;
}

.article-image {
    display: block;

    width: 100%;

    max-height: 560px;

    margin: 28px 0;

    object-fit: cover;

    border-radius: 12px;
}

.article-image[hidden] {
    display: none !important;
}

.article-wrap .tag {
    display: inline-block;

    margin-bottom: 10px;

    padding: 5px 9px;

    background: rgba(237, 29, 46, .12);

    color: #ff5665;

    border: 1px solid rgba(237, 29, 46, .28);

    border-radius: 5px;
}


/* =========================================================
   ARTIKEL HEADER
========================================================= */

.brand-copy,
.article-brand-text {
    display: flex;

    flex-direction: row;

    align-items: center;

    gap: 9px;

    white-space: nowrap;

    line-height: 1;
}

.brand-copy strong,
.article-brand-text strong {
    color: #ffffff;

    font-size: 21px;

    font-weight: 900;
}

.brand-copy strong::after {
    content: "|";

    margin-left: 9px;

    color: #5f6670;

    font-size: 19px;

    font-weight: 400;
}

.article-brand-text strong::after {
    content: none;
}

.brand-copy span,
.article-brand-text span {
    color: var(--muted);

    font-size: 12px;

    font-weight: 800;

    letter-spacing: .9px;
}

.article-brand-divider {
    color: #5f6670;

    font-size: 19px;
}

.brand-mark {
    display: none;
}

.top-nav {
    display: flex;

    align-items: center;

    justify-content: flex-end;

    gap: 5px;

    flex-wrap: nowrap;

    white-space: nowrap;
}

.top-nav a {
    padding: 10px 12px;

    color: #d9dde3;

    border-radius: 7px;

    font-size: 13px;

    font-weight: 700;
}

.top-nav a:hover {
    background: #181e27;

    color: #ffffff;
}

.top-nav .editor-link {
    margin-left: 8px;

    border: 1px solid #343b46;
}


/* =========================================================
   ARTIKEL GALERIE
========================================================= */

.article-gallery {
    width: 100%;
    max-width: 900px;

    margin: 28px auto 34px;

    user-select: none;
}

.gallery-stage {
    position: relative;

    width: 100%;

    aspect-ratio: 16 / 9;

    overflow: hidden;

    background: #080b0f;

    border: 1px solid var(--border);

    border-radius: 14px;
}

.gallery-image {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;

    object-position: center;
}

.gallery-arrow {
    position: absolute;

    top: 50%;

    z-index: 10;

    width: 46px;
    height: 46px;

    display: flex;

    align-items: center;
    justify-content: center;

    transform: translateY(-50%);

    background: rgba(7, 9, 12, .82);

    color: #ffffff;

    border: 1px solid rgba(255, 255, 255, .2);

    border-radius: 50%;

    font-size: 34px;

    cursor: pointer;
}

.gallery-arrow-left {
    left: 16px;
}

.gallery-arrow-right {
    right: 16px;
}

.gallery-arrow:hover {
    background: var(--red);

    border-color: var(--red);
}

.gallery-arrow[hidden] {
    display: none !important;
}

.gallery-counter {
    position: absolute;

    right: 14px;
    bottom: 14px;

    padding: 6px 10px;

    background: rgba(5, 7, 10, .82);

    color: #ffffff;

    border-radius: 999px;

    font-size: 11px;
    font-weight: 800;
}

.gallery-counter[hidden] {
    display: none !important;
}

.gallery-dots {
    display: flex;

    justify-content: center;

    gap: 7px;

    margin-top: 12px;
}

.gallery-dot {
    width: 8px;
    height: 8px;

    padding: 0;

    background: #3b424c;

    border: 0;

    border-radius: 50%;

    cursor: pointer;
}

.gallery-dot.active {
    width: 24px;

    background: var(--red);

    border-radius: 999px;
}


/* =========================================================
   REDAKTION
========================================================= */

.admin-main {
    width: min(1250px, calc(100% - 40px));

    margin: 0 auto;

    padding: 48px 0 80px;
}

.admin-heading {
    margin-bottom: 30px;

    padding-bottom: 24px;

    border-bottom: 1px solid var(--border);
}

.admin-heading h1 {
    color: #ffffff;

    font-size: 38px;
}

.admin-heading p {
    margin-top: 8px;

    color: var(--muted);
}

.admin-layout {
    display: grid;

    grid-template-columns:
        minmax(0, 1.7fr)
        minmax(330px, .8fr);

    gap: 24px;

    align-items: start;
}

.admin-panel {
    overflow: hidden;

    background: var(--card);

    border: 1px solid var(--border);

    border-radius: 14px;
}

.admin-panel-header {
    padding: 22px 24px;

    background: #10151c;

    border-bottom: 1px solid var(--border);
}

.admin-panel-header h2 {
    color: #ffffff;

    font-size: 21px;
}

.panel-label {
    color: var(--red);

    font-size: 9px;

    font-weight: 900;

    letter-spacing: 1.1px;
}

.admin-panel-body {
    padding: 24px;
}

.editor-grid {
    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 18px;
}

.editor-full {
    grid-column: 1 / -1;
}

.editor-field {
    display: flex;

    flex-direction: column;

    gap: 7px;
}

.editor-field label {
    color: #c8ced7;

    font-size: 11px;

    font-weight: 800;
}

.editor-field input,
.editor-field select,
.editor-field textarea,
.upload-content input[type="text"] {
    width: 100%;

    padding: 12px 13px;

    background: #0c1016;

    color: #ffffff;

    border: 1px solid #303844;

    border-radius: 8px;

    outline: none;
}

.editor-field textarea {
    min-height: 310px;

    resize: vertical;
}

.editor-field input:focus,
.editor-field select:focus,
.editor-field textarea:focus {
    border-color: var(--red);
}


/* =========================================================
   UPLOAD
========================================================= */

.editor-upload {
    display: flex;

    gap: 15px;

    padding: 18px;

    background: #0c1016;

    border: 1px solid #2b323c;

    border-radius: 10px;
}

.upload-number {
    width: 34px;
    height: 34px;

    flex: 0 0 34px;

    display: grid;

    place-items: center;

    background: var(--red);

    color: #ffffff;

    border-radius: 8px;

    font-weight: 900;
}

.upload-content {
    width: 100%;

    display: flex;

    flex-direction: column;

    gap: 9px;
}

.upload-content strong {
    color: #ffffff;
}

.upload-content span {
    color: var(--muted);
}


/* =========================================================
   PUBLISH
========================================================= */

.publish-area {
    display: flex;

    justify-content: flex-end;
}

.publish-button {
    padding: 13px 22px;

    background: var(--red);

    color: #ffffff;

    border: 0;

    border-radius: 8px;

    font-weight: 900;

    cursor: pointer;
}

.publish-button:hover {
    background: #ff263a;
}


/* =========================================================
   ADMIN NOTICE
========================================================= */

.admin-notice {
    display: none;

    margin-bottom: 20px;

    padding: 13px 15px;

    border-radius: 8px;

    font-size: 12px;

    font-weight: 700;
}

.admin-notice.show {
    display: block;
}

.admin-notice.ok {
    background: rgba(46, 160, 100, .14);

    color: #70dfa4;
}

.admin-notice.error {
    background: rgba(237, 29, 46, .12);

    color: #ff6c79;
}


/* =========================================================
   ADMIN LIST
========================================================= */

.article-management {
    position: sticky;

    top: 20px;
}

.admin-list {
    display: flex;

    flex-direction: column;

    gap: 10px;
}

.admin-item {
    padding: 14px;

    display: grid;

    grid-template-columns: 1fr auto;

    gap: 12px;

    background: #0c1016;

    border: 1px solid #2d3540;

    border-radius: 9px;
}

.danger-btn {
    padding: 7px 9px;

    background: rgba(237, 29, 46, .08);

    color: #ff6977;

    border: 1px solid #58232a;

    border-radius: 6px;

    cursor: pointer;
}


/* =========================================================
   POLIZEI THEME
========================================================= */

body.theme-polizei {
    --bg: #f3f6fa;
    --header: #ffffff;
    --card: #ffffff;
    --card-hover: #f7f9fc;

    --border: #ccd5e0;

    --text: #071b36;
    --muted: #68778a;

    --red: #082b55;
    --red-dark: #061e3c;

    background: #f3f6fa;

    color: #071b36;
}


/* =========================================================
   POLIZEI HEADER
========================================================= */

body.theme-polizei .site-header {
    background: #ffffff;

    border-bottom: 1px solid #cbd4df;
}

body.theme-polizei .header-inner {
    width: min(1580px, calc(100% - 40px));

    min-height: 105px;

    gap: 15px;
}

body.theme-polizei .brand-text strong {
    color: #071b36 !important;
}

body.theme-polizei .brand-text span {
    color: #66758a !important;
}

body.theme-polizei .brand-text strong::after {
    color: #a7b2bf !important;
}


/* =========================================================
   ALTE POLIZEI-PSEUDO-TEXTE AUS
========================================================= */

body.theme-polizei .brand::after,
body.theme-polizei .footer-brand::after {
    content: none !important;

    display: none !important;
}


/* =========================================================
   POLIZEI LOGO + PRESSEABTEILUNG OBEN
========================================================= */

body.theme-polizei
.police-brand-addon:not([hidden]) {
    display: flex !important;

    align-items: center;

    gap: 11px;

    flex: 0 0 auto;

    white-space: nowrap;
}

body.theme-polizei
.police-brand-divider {
    width: 1px;

    height: 58px;

    margin: 0 6px;

    background: #aab6c4;
}

body.theme-polizei
.police-brand-logo {
    display: block;

    width: 68px;
    height: 68px;

    flex: 0 0 68px;

    object-fit: contain;
}

body.theme-polizei
.police-brand-copy {
    display: flex;

    flex-direction: row;

    align-items: center;

    gap: 0;

    white-space: nowrap;
}

body.theme-polizei
.police-brand-copy strong,
body.theme-polizei
.police-brand-copy span {
    color: #082b55 !important;

    font-size: 16px;

    font-weight: 900;

    letter-spacing: .3px;
}


/* =========================================================
   POLIZEI - PRESSEABTEILUNG
   HIER IST JETZT NUR EIN BINDESTRICH
========================================================= */

body.theme-polizei
.police-brand-copy strong::after {
    content: "-";

    margin: 0 8px;

    color: #082b55;

    font-weight: 900;
}


/* =========================================================
   POLIZEI NAVIGATION
========================================================= */

body.theme-polizei
.main-navigation {
    margin-left: auto;

    display: flex;

    align-items: center;

    justify-content: flex-end;

    gap: 5px;

    flex-wrap: nowrap;

    white-space: nowrap;
}

body.theme-polizei
.main-navigation a {
    min-height: 44px;

    padding: 11px 13px;

    color: #23364d;

    font-size: 13px;
}

body.theme-polizei
.main-navigation a:hover {
    background: #e8eef5;

    color: #082b55;
}

body.theme-polizei
.main-navigation a.active {
    background: #082b55;

    color: #ffffff;
}

body.theme-polizei
.main-navigation .editor-button {
    border-color: #bac5d1;

    color: #23364d;
}


/* =========================================================
   POLIZEI BREAKING
========================================================= */

body.theme-polizei
.breaking-bar {
    background: #082b55;

    color: #ffffff;
}

body.theme-polizei
.breaking-label {
    background: #ffffff;

    color: #082b55;
}

body.theme-polizei
.breaking-message {
    color: #ffffff !important;
}


/* =========================================================
   POLIZEI MAIN
========================================================= */

body.theme-polizei
.section-label {
    color: #082b55 !important;
}

body.theme-polizei
.section-header h2 {
    color: #071b36 !important;
}

body.theme-polizei
.page-heading h1 {
    color: #071b36 !important;
}

body.theme-polizei
.page-heading p,
body.theme-polizei
.article-count {
    color: #68778a !important;
}


/* =========================================================
   POLIZEI CARDS
========================================================= */

body.theme-polizei
.featured-card {
    background: #ffffff !important;

    border-color: #d3dbe5;

    box-shadow:
        0 5px 18px
        rgba(18, 42, 70, .07);
}

body.theme-polizei
.featured-card:hover {
    border-color: #8da2ba;

    box-shadow:
        0 9px 25px
        rgba(18, 42, 70, .12);
}


/* WICHTIG:
   Titel wieder sichtbar
*/

body.theme-polizei
.featured-card h3 {
    display: block !important;

    color: #071b36 !important;

    opacity: 1 !important;

    visibility: visible !important;
}

body.theme-polizei
.article-card-excerpt {
    color: #637287 !important;

    opacity: 1 !important;
}

body.theme-polizei
.article-card-meta,
body.theme-polizei
.featured-meta {
    color: #7b899a !important;

    opacity: 1 !important;
}


/* =========================================================
   POLIZEI MARKER
========================================================= */

body.theme-polizei
.featured-category.category-polizei {
    background: #aee3ff !important;

    color: #07131c !important;
}


/* =========================================================
   POLIZEI EMPTY STATE
========================================================= */

body.theme-polizei
.empty-state {
    background: #ffffff;

    border-color: #b9c6d4;
}

body.theme-polizei
.empty-state h2 {
    color: #071b36;
}

body.theme-polizei
.empty-state p {
    color: #68778a;
}

body.theme-polizei
.empty-icon {
    background: #e5edf5;

    color: #082b55;
}


/* =========================================================
   POLIZEI FOOTER
========================================================= */

body.theme-polizei
.site-footer {
    background: #ffffff !important;

    border-top: 1px solid #ccd5e0;
}

body.theme-polizei
.footer-brand strong {
    color: #071b36 !important;
}

body.theme-polizei
.footer-brand span,
body.theme-polizei
.footer-right {
    color: #718095 !important;
}


/* =========================================================
   POLIZEI FOOTER ADDON
========================================================= */

body.theme-polizei
.police-footer-brand:not([hidden]) {
    display: flex !important;

    align-items: center;

    gap: 8px;
}

body.theme-polizei
.police-footer-divider {
    width: 1px;

    height: 42px;

    margin: 0 5px;

    background: #bcc7d3;
}

body.theme-polizei
.police-footer-logo {
    display: block;

    width: 46px;
    height: 46px;

    object-fit: contain;
}

body.theme-polizei
.police-footer-copy {
    display: flex;

    flex-direction: row;

    align-items: center;

    gap: 0;

    white-space: nowrap;
}

body.theme-polizei
.police-footer-copy strong,
body.theme-polizei
.police-footer-copy span {
    color: #082b55;

    font-size: 11px;

    font-weight: 900;
}


/* FOOTER AUCH MIT BINDESTRICH */

body.theme-polizei
.police-footer-copy strong::after {
    content: "-";

    margin: 0 6px;

    color: #082b55;

    font-weight: 900;
}


/* =========================================================
   POLIZEI ARTIKEL
========================================================= */

body.theme-polizei
.article-wrap h1 {
    color: #071b36 !important;
}

body.theme-polizei
.article-lead {
    color: #5d6e82 !important;
}

body.theme-polizei
.article-content {
    color: #24364b !important;
}

body.theme-polizei
.back-link {
    color: #082b55 !important;
}

body.theme-polizei
.article-wrap .tag {
    background: #dceeff;

    color: #082b55;

    border-color: #b7d5ee;
}


/* =========================================================
   POLIZEI GALERIE
========================================================= */

body.theme-polizei
.gallery-stage {
    background: #e9eef4;

    border-color: #cbd5e0;
}

body.theme-polizei
.gallery-dot.active {
    background: #082b55;
}

body.theme-polizei
.gallery-arrow:hover {
    background: #082b55;

    border-color: #082b55;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1250px) {

    .header-inner {
        width: calc(100% - 28px);

        gap: 10px;
    }

    .site-logo {
        width: 62px;
        height: 62px;
    }

    .brand-text strong {
        font-size: 18px;
    }

    .brand-text span {
        font-size: 10px;
    }

    .main-navigation a {
        padding: 9px 8px;

        font-size: 11px;
    }

    body.theme-polizei
    .police-brand-logo {
        width: 50px;

        height: 50px;

        flex-basis: 50px;
    }

    body.theme-polizei
    .police-brand-copy strong,
    body.theme-polizei
    .police-brand-copy span {
        font-size: 12px;
    }

}


/* =========================================================
   KLEINES TABLET
========================================================= */

@media (max-width: 950px) {

    .header-inner {
        flex-wrap: wrap;
    }

    .main-navigation {
        width: 100%;

        margin-left: 0;

        justify-content: flex-start;

        flex-wrap: wrap;
    }

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

    .admin-layout {
        grid-template-columns: 1fr;
    }

    .article-management {
        position: static;
    }

}


/* =========================================================
   HANDY
========================================================= */

@media (max-width: 650px) {

    .header-inner,
    .main-content,
    .breaking-inner,
    .footer-inner,
    .admin-main {
        width: calc(100% - 24px);
    }

    .header-inner {
        padding: 14px 0;
    }

    .site-logo {
        width: 56px;

        height: 56px;
    }

    .brand-text {
        flex-wrap: wrap;

        white-space: normal;
    }

    .main-navigation a {
        min-height: 38px;

        padding: 8px;

        font-size: 10px;
    }

    .all-news-grid {
        grid-template-columns: 1fr;
    }

    .featured-image,
    .featured-placeholder {
        height: 220px;
    }

    .footer-inner {
        flex-direction: column;

        align-items: flex-start;
    }

    .footer-right {
        margin-left: 0;
    }

    .page-heading {
        flex-direction: column;

        align-items: flex-start;
    }

    .editor-grid {
        grid-template-columns: 1fr;
    }

    body.theme-polizei
    .police-brand-addon:not([hidden]) {
        width: 100%;
    }

    body.theme-polizei
    .police-brand-divider {
        display: none;
    }

    body.theme-polizei
    .police-footer-divider {
        display: none;
    }

}

/* =========================================================
   FINAL FIX 2026-08-25
   - Navigation bleibt auf jeder Kategorie exakt an derselben Stelle
   - Polizei bleibt dunkel
   - Rot wird im Polizeibereich durch helleres Blau ersetzt
   - Polizei-Logo bleibt klein und kann die Seite nicht mehr sprengen
========================================================= */

/* Einheitlicher Header auf ALLEN Seiten */
.header-inner {
    position: relative !important;
    width: min(1450px, calc(100% - 40px)) !important;
    min-height: 100px !important;
    margin: 0 auto !important;
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 0 !important;
}

.brand {
    position: relative !important;
    z-index: 5 !important;
    flex: 0 0 auto !important;
}

/* Navigation unabhängig von Kategorie fest rechts verankern */
.main-navigation,
body.theme-polizei .main-navigation {
    position: absolute !important;
    right: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    width: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: nowrap !important;
    gap: 5px !important;
    white-space: nowrap !important;
    z-index: 20 !important;
}

.main-navigation a,
body.theme-polizei .main-navigation a {
    min-height: 42px !important;
    padding: 10px 12px !important;
    font-size: 13px !important;
    border-radius: 7px !important;
    white-space: nowrap !important;
}

/* =========================================================
   POLIZEI BRANDING OBEN – fest, klein, verschiebt NICHTS
========================================================= */
body.theme-polizei .police-brand-addon:not([hidden]),
body.theme-polizei #articlePoliceBrand {
    position: absolute !important;
    left: 335px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    display: flex !important;
    align-items: center !important;
    flex-direction: row !important;
    gap: 10px !important;
    width: auto !important;
    height: auto !important;
    max-width: 360px !important;
    overflow: visible !important;
    white-space: nowrap !important;
    z-index: 10 !important;
}

body.theme-polizei .police-brand-divider {
    display: block !important;
    width: 1px !important;
    min-width: 1px !important;
    height: 54px !important;
    margin: 0 7px 0 0 !important;
    background: #52769b !important;
}

body.theme-polizei img.police-brand-logo,
body.theme-polizei .police-brand-logo,
body.theme-polizei #articlePoliceBrand img {
    display: block !important;
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    max-width: 56px !important;
    min-height: 56px !important;
    max-height: 56px !important;
    flex: 0 0 56px !important;
    object-fit: contain !important;
    object-position: center !important;
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
}

body.theme-polizei .police-brand-copy {
    display: flex !important;
    align-items: center !important;
    flex-direction: row !important;
    gap: 0 !important;
    width: auto !important;
    white-space: nowrap !important;
}

body.theme-polizei .police-brand-copy strong,
body.theme-polizei .police-brand-copy span {
    color: #7fc1ff !important;
    font-size: 15px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    letter-spacing: .25px !important;
    white-space: nowrap !important;
}

body.theme-polizei .police-brand-copy strong::after {
    content: "-" !important;
    margin: 0 7px !important;
    color: #7fc1ff !important;
    font-weight: 900 !important;
}

/* =========================================================
   POLIZEI – DUNKLES THEME MIT HELLBLAU
========================================================= */
body.theme-polizei {
    --bg: #090d12 !important;
    --header: #0d1219 !important;
    --card: #111821 !important;
    --card-hover: #152131 !important;
    --border: #263647 !important;
    --text: #f4f7fb !important;
    --muted: #9eacbd !important;
    --red: #4da3e8 !important;
    --red-dark: #2d79b7 !important;
    background: #090d12 !important;
    color: #f4f7fb !important;
}

body.theme-polizei .site-header {
    background: #0d1219 !important;
    border-bottom: 1px solid #263647 !important;
}

body.theme-polizei .header-inner {
    width: min(1450px, calc(100% - 40px)) !important;
    min-height: 100px !important;
    gap: 0 !important;
}

body.theme-polizei .brand-text strong {
    color: #ffffff !important;
}

body.theme-polizei .brand-text span {
    color: #9eacbd !important;
}

body.theme-polizei .brand-text strong::after {
    color: #617285 !important;
}

/* Navigation im Polizei-Theme */
body.theme-polizei .main-navigation a {
    color: #e8eef5 !important;
    background: transparent !important;
}

body.theme-polizei .main-navigation a:hover {
    color: #ffffff !important;
    background: #182535 !important;
}

body.theme-polizei .main-navigation a.active {
    color: #07131f !important;
    background: #73bdff !important;
}

body.theme-polizei .main-navigation .editor-button {
    color: #e8eef5 !important;
    border-color: #41556d !important;
    background: transparent !important;
}

body.theme-polizei .main-navigation .editor-button:hover {
    color: #07131f !important;
    border-color: #73bdff !important;
    background: #73bdff !important;
}

/* Breaking: Rot -> helles Blau */
body.theme-polizei .breaking-bar {
    background: #5caef0 !important;
    color: #07131f !important;
    border: 0 !important;
}

body.theme-polizei .breaking-label,
body.theme-polizei .breaking-badge {
    background: #2d79b7 !important;
    color: #ffffff !important;
}

body.theme-polizei .breaking-message {
    color: #07131f !important;
    font-weight: 800 !important;
}

/* Hauptbereich */
body.theme-polizei .main-content {
    background: transparent !important;
    color: #f4f7fb !important;
}

body.theme-polizei .section-label {
    color: #73bdff !important;
}

body.theme-polizei .section-header h2,
body.theme-polizei .page-heading h1 {
    color: #ffffff !important;
}

body.theme-polizei .page-heading p,
body.theme-polizei .article-count {
    color: #9eacbd !important;
}

/* Karten */
body.theme-polizei .featured-card {
    background: #111821 !important;
    border-color: #263647 !important;
    box-shadow: 0 6px 20px rgba(0,0,0,.22) !important;
}

body.theme-polizei .featured-card:hover {
    background: #152131 !important;
    border-color: #3c6f9b !important;
    box-shadow: 0 10px 28px rgba(0,0,0,.3) !important;
}

body.theme-polizei .featured-card h3 {
    color: #ffffff !important;
    opacity: 1 !important;
    visibility: visible !important;
}

body.theme-polizei .article-card-excerpt {
    color: #a7b5c6 !important;
}

body.theme-polizei .article-card-meta,
body.theme-polizei .featured-meta {
    color: #8493a6 !important;
}

/* Polizei-Tag: hellblau */
body.theme-polizei .featured-category.category-polizei,
.featured-category.category-polizei {
    background: #73bdff !important;
    color: #07131f !important;
}

/* Empty state */
body.theme-polizei .empty-state {
    background: #0f161f !important;
    border-color: #2a3c50 !important;
}

body.theme-polizei .empty-icon {
    background: #162332 !important;
    color: #73bdff !important;
}

body.theme-polizei .empty-state h2 {
    color: #ffffff !important;
}

body.theme-polizei .empty-state p {
    color: #9eacbd !important;
}

/* =========================================================
   POLIZEI FOOTER – dunkel + Logo klein
========================================================= */
body.theme-polizei .site-footer {
    background: #070b10 !important;
    border-top: 1px solid #263647 !important;
}

body.theme-polizei .footer-inner {
    position: relative !important;
    min-height: 96px !important;
}

body.theme-polizei .footer-brand strong {
    color: #ffffff !important;
}

body.theme-polizei .footer-brand span,
body.theme-polizei .footer-right {
    color: #8291a4 !important;
}

body.theme-polizei .police-footer-brand:not([hidden]),
body.theme-polizei #articlePoliceFooterBrand {
    display: flex !important;
    align-items: center !important;
    flex-direction: row !important;
    gap: 8px !important;
    width: auto !important;
    height: auto !important;
    max-width: 320px !important;
    overflow: visible !important;
}

body.theme-polizei img.police-footer-logo,
body.theme-polizei .police-footer-logo,
body.theme-polizei #articlePoliceFooterBrand img {
    display: block !important;
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    max-width: 42px !important;
    min-height: 42px !important;
    max-height: 42px !important;
    flex: 0 0 42px !important;
    object-fit: contain !important;
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
}

body.theme-polizei .police-footer-divider {
    width: 1px !important;
    min-width: 1px !important;
    height: 38px !important;
    background: #52769b !important;
    margin: 0 5px !important;
}

body.theme-polizei .police-footer-copy {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 0 !important;
    white-space: nowrap !important;
}

body.theme-polizei .police-footer-copy strong,
body.theme-polizei .police-footer-copy span {
    color: #73bdff !important;
    font-size: 11px !important;
    font-weight: 900 !important;
}

body.theme-polizei .police-footer-copy strong::after {
    content: "-" !important;
    margin: 0 6px !important;
    color: #73bdff !important;
}

/* Artikel im Polizei-Theme */
body.theme-polizei .article-wrap h1,
body.theme-polizei #title {
    color: #ffffff !important;
}

body.theme-polizei .article-lead,
body.theme-polizei #excerpt {
    color: #a7b5c6 !important;
}

body.theme-polizei .article-content,
body.theme-polizei #content {
    color: #dce6f0 !important;
}

body.theme-polizei .back-link {
    color: #73bdff !important;
}

body.theme-polizei .article-wrap .tag,
body.theme-polizei .article-category-polizei {
    background: #73bdff !important;
    color: #07131f !important;
    border-color: #73bdff !important;
}

body.theme-polizei .gallery-stage {
    background: #070b10 !important;
    border-color: #263647 !important;
}

body.theme-polizei .gallery-dot {
    background: #43546a !important;
}

body.theme-polizei .gallery-dot.active {
    background: #73bdff !important;
}

body.theme-polizei .gallery-arrow:hover {
    background: #4da3e8 !important;
    border-color: #4da3e8 !important;
}

/* Staatlich bleibt hellrot */
.featured-category.category-staatlich {
    background: #ff6b6b !important;
    color: #ffffff !important;
}

/* =========================================================
   RESPONSIVE – erst bei kleineren Bildschirmen umbrechen
========================================================= */
@media (max-width: 1250px) {
    .header-inner,
    body.theme-polizei .header-inner {
        width: calc(100% - 28px) !important;
        min-height: auto !important;
        padding: 12px 0 !important;
        flex-wrap: wrap !important;
        gap: 12px !important;
    }

    .main-navigation,
    body.theme-polizei .main-navigation {
        position: static !important;
        transform: none !important;
        order: 3 !important;
        width: 100% !important;
        margin: 0 !important;
        justify-content: flex-start !important;
        flex-wrap: wrap !important;
    }

    body.theme-polizei .police-brand-addon:not([hidden]),
    body.theme-polizei #articlePoliceBrand {
        position: static !important;
        transform: none !important;
        order: 2 !important;
        max-width: none !important;
    }
}

/* =========================================================
   FINAL: POLIZEI HEADER – OBERES POLIZEILOGO ENTFERNEN
   Trennstrich bleibt, Text wird sauber mittig ausgerichtet.
   Footer-Polizeilogo bleibt unverändert.
   ========================================================= */

body.theme-polizei .police-brand-logo {
    display: none !important;
}

body.theme-polizei .police-brand-addon {
    display: flex !important;
    align-items: center !important;
    height: 52px !important;
    gap: 18px !important;
}

body.theme-polizei .police-brand-divider {
    display: block !important;
    width: 1px !important;
    height: 42px !important;
    background: #64748b !important;
    flex: 0 0 1px !important;
}

body.theme-polizei .police-brand-copy {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    height: 42px !important;
    gap: 0 !important;
    white-space: nowrap !important;
}

body.theme-polizei .police-brand-copy strong,
body.theme-polizei .police-brand-copy span {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
    font-size: 16px !important;
    font-weight: 900 !important;
    color: #76c5ff !important;
}

body.theme-polizei .police-brand-copy strong::after {
    content: " - " !important;
    margin-left: 5px !important;
    margin-right: 5px !important;
}


/* =========================================================
   FINAL OVERRIDE – POLIZEI
   OBEN: Polizeilogo weg
   UNTEN: Polizeilogo bleibt sichtbar
   ========================================================= */

/* ---------- HEADER: Polizeilogo sicher ausblenden ---------- */

body.theme-polizei .site-header .police-brand-logo,
body.theme-polizei .site-header img.police-brand-logo,
body.theme-polizei .site-header .police-brand-addon img[src*="logo_transparent_background.png"],
body.theme-polizei .site-header #articlePoliceBrand img[src*="logo_transparent_background.png"] {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: 0 !important;
    max-height: 0 !important;
    flex: 0 0 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

/* Header-Branding sauber ausrichten */

body.theme-polizei .site-header .police-brand-addon:not([hidden]),
body.theme-polizei .site-header #articlePoliceBrand {
    display: flex !important;
    align-items: center !important;
    flex-direction: row !important;
    gap: 10px !important;
    width: auto !important;
    height: auto !important;
    max-width: none !important;
    overflow: visible !important;
    white-space: nowrap !important;
}

/* Trennstrich oben */

body.theme-polizei .site-header .police-brand-divider {
    display: block !important;
    width: 1px !important;
    min-width: 1px !important;
    height: 46px !important;
    margin: 0 10px 0 0 !important;
    background: #52769b !important;
    flex: 0 0 1px !important;
}

/* POLIZEI - PRESSEABTEILUNG oben */

body.theme-polizei .site-header .police-brand-copy {
    display: flex !important;
    align-items: center !important;
    flex-direction: row !important;
    gap: 0 !important;
    width: auto !important;
    white-space: nowrap !important;
}

body.theme-polizei .site-header .police-brand-copy strong,
body.theme-polizei .site-header .police-brand-copy span {
    color: #7fc1ff !important;
    font-size: 15px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    letter-spacing: .25px !important;
    white-space: nowrap !important;
}

body.theme-polizei .site-header .police-brand-copy strong::after {
    content: "-" !important;
    margin: 0 7px !important;
    color: #7fc1ff !important;
    font-weight: 900 !important;
}

/* ---------- FOOTER: Polizeilogo MUSS sichtbar bleiben ---------- */

body.theme-polizei .site-footer .police-footer-brand:not([hidden]),
body.theme-polizei .site-footer #articlePoliceFooterBrand {
    display: flex !important;
    align-items: center !important;
    flex-direction: row !important;
    gap: 8px !important;
    width: auto !important;
    height: auto !important;
    max-width: 320px !important;
    overflow: visible !important;
    opacity: 1 !important;
    visibility: visible !important;
}

body.theme-polizei .site-footer .police-footer-logo,
body.theme-polizei .site-footer img.police-footer-logo,
body.theme-polizei .site-footer .police-footer-brand img[src*="logo_transparent_background.png"],
body.theme-polizei .site-footer #articlePoliceFooterBrand img[src*="logo_transparent_background.png"] {
    display: block !important;
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;
    max-width: 42px !important;
    max-height: 42px !important;
    flex: 0 0 42px !important;
    object-fit: contain !important;
    object-position: center !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Footer-Trennstrich */

body.theme-polizei .site-footer .police-footer-divider {
    display: block !important;
    width: 1px !important;
    min-width: 1px !important;
    height: 38px !important;
    margin: 0 5px !important;
    background: #52769b !important;
    flex: 0 0 1px !important;
}

/* POLIZEI - PRESSEABTEILUNG unten */

body.theme-polizei .site-footer .police-footer-copy {
    display: flex !important;
    align-items: center !important;
    flex-direction: row !important;
    gap: 0 !important;
    white-space: nowrap !important;
}

body.theme-polizei .site-footer .police-footer-copy strong,
body.theme-polizei .site-footer .police-footer-copy span {
    color: #73bdff !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
}

body.theme-polizei .site-footer .police-footer-copy strong::after {
    content: "-" !important;
    margin: 0 6px !important;
    color: #73bdff !important;
    font-weight: 900 !important;
}


/* =========================================================
   FINAL OVERRIDE – POLIZEI HEADER
   - oberes Polizeilogo bleibt entfernt
   - Trennstrich + POLIZEI - PRESSEABTEILUNG weiter nach rechts
   - Footer-Polizeilogo bleibt sichtbar
   ========================================================= */

/* Polizei-Zusatz im Header weiter nach rechts */
body.theme-polizei .site-header .police-brand-addon:not([hidden]),
body.theme-polizei .site-header #articlePoliceBrand {
    position: absolute !important;
    left: 385px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;

    display: flex !important;
    align-items: center !important;
    flex-direction: row !important;

    gap: 0 !important;

    width: auto !important;
    height: auto !important;
    max-width: none !important;

    overflow: visible !important;
    white-space: nowrap !important;

    z-index: 10 !important;
}

/* Oberes Polizeilogo sicher ausblenden */
body.theme-polizei .site-header .police-brand-logo,
body.theme-polizei .site-header img.police-brand-logo,
body.theme-polizei .site-header .police-brand-addon img[src*="logo_transparent_background.png"],
body.theme-polizei .site-header #articlePoliceBrand img[src*="logo_transparent_background.png"] {
    display: none !important;

    width: 0 !important;
    height: 0 !important;

    min-width: 0 !important;
    min-height: 0 !important;

    max-width: 0 !important;
    max-height: 0 !important;

    flex: 0 0 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    opacity: 0 !important;
    visibility: hidden !important;
}

/* Trennstrich direkt hinter DEUTSCHES RP */
body.theme-polizei .site-header .police-brand-divider {
    display: block !important;

    width: 1px !important;
    min-width: 1px !important;

    height: 46px !important;

    margin: 0 22px 0 0 !important;

    background: #52769b !important;

    flex: 0 0 1px !important;
}

/* POLIZEI - PRESSEABTEILUNG */
body.theme-polizei .site-header .police-brand-copy {
    display: flex !important;
    flex-direction: row !important;

    align-items: center !important;
    justify-content: flex-start !important;

    gap: 0 !important;

    width: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    white-space: nowrap !important;
}

body.theme-polizei .site-header .police-brand-copy strong,
body.theme-polizei .site-header .police-brand-copy span {
    display: inline-flex !important;
    align-items: center !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #7fc1ff !important;

    font-size: 15px !important;
    font-weight: 900 !important;

    line-height: 1 !important;
    letter-spacing: .25px !important;

    white-space: nowrap !important;
}

body.theme-polizei .site-header .police-brand-copy strong::after {
    content: "-" !important;

    margin-left: 7px !important;
    margin-right: 7px !important;

    color: #7fc1ff !important;

    font-weight: 900 !important;
}

/* Footer-Polizeilogo sichtbar lassen */
body.theme-polizei .site-footer .police-footer-brand:not([hidden]),
body.theme-polizei .site-footer #articlePoliceFooterBrand {
    display: flex !important;
    align-items: center !important;
    flex-direction: row !important;

    gap: 8px !important;

    width: auto !important;
    height: auto !important;
    max-width: 320px !important;

    overflow: visible !important;

    opacity: 1 !important;
    visibility: visible !important;
}

body.theme-polizei .site-footer .police-footer-logo,
body.theme-polizei .site-footer img.police-footer-logo,
body.theme-polizei .site-footer .police-footer-brand img[src*="logo_transparent_background.png"],
body.theme-polizei .site-footer #articlePoliceFooterBrand img[src*="logo_transparent_background.png"] {
    display: block !important;

    width: 42px !important;
    height: 42px !important;

    min-width: 42px !important;
    min-height: 42px !important;

    max-width: 42px !important;
    max-height: 42px !important;

    flex: 0 0 42px !important;

    object-fit: contain !important;
    object-position: center !important;

    margin: 0 !important;
    padding: 0 !important;

    opacity: 1 !important;
    visibility: visible !important;
}
