/* ==========================================================================
   1. SCHRIFTART – PT Sans (lokal gehostet, DSGVO-konform)
   ========================================================================== */
@font-face {
    font-family: 'PT Sans';
    font-style: normal;
    font-weight: 400;
    src: local('PT Sans'), local('PTSans-Regular'),
        url('font/pt-sans-v9-latin/pt-sans-v9-latin-regular.woff2') format('woff2'),
        url('font/pt-sans-v9-latin/pt-sans-v9-latin-regular.woff') format('woff');
    font-display: swap;
}

@font-face {
    font-family: 'PT Sans';
    font-style: italic;
    font-weight: 400;
    src: local('PT Sans Italic'), local('PTSans-Italic'),
        url('font/pt-sans-v9-latin/pt-sans-v9-latin-italic.woff2') format('woff2'),
        url('font/pt-sans-v9-latin/pt-sans-v9-latin-italic.woff') format('woff');
    font-display: swap;
}

@font-face {
    font-family: 'PT Sans';
    font-style: normal;
    font-weight: 700;
    src: local('PT Sans Bold'), local('PTSans-Bold'),
        url('font/pt-sans-v9-latin/pt-sans-v9-latin-700.woff2') format('woff2'),
        url('font/pt-sans-v9-latin/pt-sans-v9-latin-700.woff') format('woff');
    font-display: swap;
}

@font-face {
    font-family: 'PT Sans';
    font-style: italic;
    font-weight: 700;
    src: local('PT Sans Bold Italic'), local('PTSans-BoldItalic'),
        url('font/pt-sans-v9-latin/pt-sans-v9-latin-700italic.woff2') format('woff2'),
        url('font/pt-sans-v9-latin/pt-sans-v9-latin-700italic.woff') format('woff');
    font-display: swap;
}


/* ==========================================================================
   2. BASIS-ELEMENTE (body, links, headings)
   ========================================================================== */
body {
    font-family: 'PT Sans', sans-serif;
}

/* Link-Farbe */
a {
    color: #B00F15;
}

h1 {
    font-size: 1.8rem;
    margin: 0px 0px 15px 0px;
    letter-spacing: 2px;
    text-transform: normal;
    color: #B00F15;
}

h2,
.h2 {
    font-size: 1.3rem;
    color: #444;
    margin-bottom: 0.5rem;
}

.h2-mb {
    margin-bottom: 0.5rem;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'PT Sans', sans-serif;
}

/* Weiße H5 nur innerhalb der dunklen bg-red-Box (in bg-gray bliebe sie sonst
   auf hellem Hintergrund unleserlich) */
.bg-red h5 {
    color: #fff;
}


/* ==========================================================================
   3. NAVIGATION & LOGO
   ========================================================================== */
.navbar-light .navbar-nav .nav-link {
    color: #B00F15;
}

.dropdown-item:hover,
.dropdown-item:focus {
    color: #fff;
    background-color: #B00F15;
}

/* Logo Größe – Basis (großer Viewport) */
.navbar-brand img {
    max-width: 22rem !important;
    height: auto !important;
    max-height: none !important;
}

/* Logo Größe – Tablet-Bereich, wenn die Navigation umbricht
   PLATZHALTER-WERT, bitte live im Browser testen und anpassen 
@media (min-width: 992px) and (max-width: 1180px) {
    .navbar-brand img {
        max-width: 16rem !important;
    }
} */

/* Logo Größe – sehr kleine Smartphones, damit das Hamburger-Menü
   nicht nach rechts aus dem sichtbaren Bereich gedrückt wird
   getestet, passt */
@media (max-width: 414px) {
    .navbar-brand img {
        max-width: 12rem !important;
    }
}

/* Burger-Menü erzwingen zwischen 992–1199px, da die Hauptnavigation
   in diesem Bereich nicht in eine Zeile passt */
@media (min-width: 992px) and (max-width: 1199.98px) {

    /* Hauptnavigation (Unsere Angebote / Informationen / ...) ausblenden */
    .d-none.d-lg-flex.align-items-end {
        display: none !important;
    }

    /* Burger-Button stattdessen wieder einblenden */
    .navbar-toggler.d-lg-none {
        display: inline-block !important;
    }
}

/* Abstand zwischen Hauptspalte und rechter Spalte, wenn sie auf
   schmaleren Viewports untereinander statt nebeneinander stehen */
@media (max-width: 991.98px) {

    .col-sidebar.page-content,
    .col-menu.page-content {
        margin-top: 1rem;
    }
}

/* Seitennavigation (Sidebar-Menü links) */
.nav-pills .nav-link.active,
.nav-pills .show>.nav-link {
    color: #666;
    font-weight: bold;
    /* background-color: #B00F15; */
    background-color: #fff;
    border: 0px solid #B00F15;
    border-bottom: 1px dashed #ccc;
}

.nav-sidebar .nav-link {
    border-bottom: 1px dashed #ccc;
}

.nav-sidebar .active {
    border-bottom: 0px dashed #000;
}


/* ==========================================================================
   4. LAYOUT / SPALTEN / FOOTER
   ========================================================================== */

/* Schatten aus – scheint nur bei festem Header zu funktionieren */
.layout-boxed .fake-shadow {
    box-shadow: 0 0 0px !important;
    -webkit-box-shadow: 0 0 0px !important;
}

/* Footer-Hintergrund im Boxed-Layout */
.layout-boxed .page-footer::before {
    background-color: #fff;
}

.page-main {
    margin-top: 2rem;
}

.page-footer {
    margin-top: 2rem;
}

/* Spaltenbreiten 3-Spalten-Layout */
@media (min-width: 992px) {
    .col-sidebar.page-content {
        width: 23%;
    }

    .col-menu.page-content {
        width: 18.6667%;
    }
}

/* Abweichende Spaltenbreite für das 2-Spalten-Layout "layout-2Columns2" */
@media (min-width: 992px) {
    body.layout-2Columns2 .col-menu.page-content {
        width: 22%;
    }
}


/* ==========================================================================
   5. HERO
   ========================================================================== */
.hero--padding .hero-content {
    padding: 1rem 1rem;
}

.hero--size-small .hero-content {
    min-height: 0rem;
}


/* ==========================================================================
   6. CONTENT-BOXEN & TEXT-AUSZEICHNUNGEN
   ========================================================================== */
.label-default {
    color: #B00F15;
    background-color: #fff;
    font-size: 100%;
    text-transform: uppercase;
}

p.style1 {
    clear: both;
    display: block;
    text-align: right;
    background: #fff;
    color: #828387;
    font-size: 1.2em;
    padding-right: 0.5rem;
}

.bg-red {
    display: block;
    background: #B00F15;
    border: 1px solid #B00F15;
    border-radius: 4px;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05);
    color: #fff;
    hyphens: auto;
    padding: 1rem 1rem 1rem 1rem !important;
    margin-bottom: 1rem !important;
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
}

.bg-red p {
    padding-left: 0px;
    padding-right: 0px;
    font-size: 90%;
}

.bg-gray {
    display: block;
    background: #eee;
    border: 1px solid #ccc;
    border-radius: 4px;
    -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05);
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05);
    color: #444;
    hyphens: auto;
    padding: 1rem 1rem 1rem 1rem !important;
    margin-bottom: 1rem !important;
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
}

.bg-gray p {
    padding-left: 0px;
    padding-right: 0px;
    font-size: 90%;
}

/* ==========================================================================
   7. LISTEN
   ========================================================================== */
.col-main li {
    list-style-type: circle;
    margin-left: 0px;
    margin-bottom: 10px;
    padding: 0px 0px 0px 15px;
}


/* ==========================================================================
   8. ICONS
   ========================================================================== */
.ce-icon-color-secondary {
    fill: #fff;
    border-color: #fff;
    color: #fff;
}

/* PDF-Icon statt Standard-External-Link-Icon bei PDF-Downloads */
.page-main a[href$=".pdf" i][target="_blank"]:not(.no-icon)::before {
    --t3b-icon: "\f11a";
}