@font-face {
    font-display: swap;
    font-family: Montserrat;
    font-style: normal;
    font-weight: 500;
    src: url('https://cdn02.plentymarkets.com/r1fsldf054st/frontend/assets/fonts/montserrat/montserrat-v25-latin-500.woff2') format('woff2'), url('https://cdn02.plentymarkets.com/r1fsldf054st/frontend/assets/fonts/montserrat/montserrat-v25-latin-500.woff') format('woff')
}

@font-face {
    font-display: swap;
    font-family: Montserrat;
    font-style: normal;
    font-weight: 300;
    src: url('https://cdn02.plentymarkets.com/r1fsldf054st/frontend/assets/fonts/montserrat/montserrat-v25-latin-300.woff2') format('woff2'), url('https://cdn02.plentymarkets.com/r1fsldf054st/frontend/assets/fonts/montserrat/montserrat-v25-latin-300.woff') format('woff')
}

@font-face {
    font-display: swap;
    font-family: Montserrat;
    font-style: normal;
    font-weight: 400;
    src: url('https://cdn02.plentymarkets.com/r1fsldf054st/frontend/assets/fonts/montserrat/montserrat-v25-latin-regular.woff2') format('woff2'), url('https://cdn02.plentymarkets.com/r1fsldf054st/frontend/assets/fonts/montserrat/montserrat-v25-latin-regular.woff') format('woff')
}

@font-face {
    font-display: swap;
    font-family: Montserrat;
    font-style: normal;
    font-weight: 600;
    src: url('https://cdn02.plentymarkets.com/r1fsldf054st/frontend/assets/fonts/montserrat/montserrat-v25-latin-600.woff2') format('woff2'), url('https://cdn02.plentymarkets.com/r1fsldf054st/frontend/assets/fonts/montserrat/montserrat-v25-latin-600.woff') format('woff')
}

@font-face {
    font-display: swap;
    font-family: Montserrat;
    font-style: normal;
    font-weight: 700;
    src: url('https://cdn02.plentymarkets.com/r1fsldf054st/frontend/assets/fonts/montserrat/montserrat-v25-latin-700.woff2') format('woff2'), url('https://cdn02.plentymarkets.com/r1fsldf054st/frontend/assets/fonts/montserrat/montserrat-v25-latin-700.woff') format('woff')
}

@font-face {
    font-display: swap;
    font-family: Montserrat;
    font-style: normal;
    font-weight: 800;
    src: url('https://cdn02.plentymarkets.com/r1fsldf054st/frontend/assets/fonts/montserrat/montserrat-v25-latin-800.woff2') format('woff2'), url('https://cdn02.plentymarkets.com/r1fsldf054st/frontend/assets/fonts/montserrat/montserrat-v25-latin-800.woff') format('woff')
}

:root {
    --os-black: #434748;
    --os-accent: #A1C639;
    --os-accent-light: #E2FF8D;
    --os-accent-dim: #799330;
    --os-mont: #343a40;
    --os-mint: #6ddfcc;
    --os-red: #df6d80;
    --os-light: #f7f7f7;
    --os-grau: #eee;
    --os-dunkelgrau: #a6a6a6
}

*,
::after,
::before {
    margin: 0;
    padding: 0;
    box-sizing: border-box
}

.sidebar-categories,
.widget-navigation-tree,
body {
    color: #000;
    background-color: #fff;
    font-family: Montserrat, sans-serif !important;
    font-size: 1.2rem;
    font-weight: 300;
    line-height: 1.8
}

#vue-app {
    display: flex;
    flex-direction: column;
    min-height: 100vh
}

#page-body {
    flex-grow: 1
}

.bg-os-accent {
    background-color: var(--os-accent) !important
}

.os-cat ul li.active>a>div>span,
.oscontent .h4,
.oscontent h4,
b,
strong {
    font-weight: 500
}

.os-cat li.active>div.expand-nav,
.os-cat ul li.nav-item,
.tooltip,
.touch #thumb-carousel,
.touch .owl-dots {
    display: none
}

.control-wish-list .fa-heart {
    color: var(--os-red)
}

.footer .text-light a:hover,
.kundenvorteile a:hover,
.link-warning a {
    color: var(--os-accent) !important
}

.link-light a {
    color: var(--os-light) !important
}

.availability-5 {
    background-color: var(--os-red)
}

.footer .widget-primary a.text-appearance {
    -webkit-text-decoration-color: var(--os-black) !important;
    text-decoration-color: var(--os-black) !important;
    color: var(--os-black) !important;
    text-decoration: underline !important
}

.search-input {
    font-size: 1.1rem;
    line-height: 1.5;
    font-weight: lighter
}

.normalmenu a.navbar-brand {
    padding: 5px;
    -moz-border-radius: 3px;
    margin: 1rem 0
}

.os-cartboxx {
    border: 1px solid #ccc;
    padding: 3rem;
    border-radius: 5px;
    background-color: #f7f7f7
}

.bg-f4 {
    background-color: #f4f4f4
}

.navbar {
    background-color: var(--os-light) !important;
    padding: .5rem 0 !important
}

.navbar.border-bottom {
    border-bottom: 5px solid var(--os-accent) !important
}

.search-submit {
    color: #303030;
    background-color: var(--os-accent)
}

.search-submit:hover {
    color: #004552
}

.filter-badge,
.filter-collapse .form-check-label,
.sidebar-categories ul li a[href],
.widget-filter-base .form-check-label,
.widget-navigation-tree ul li a[href] {
    color: var(--os-black)
}

.badge {
    box-shadow: none !important
}

.navbar-brand img {
    max-height: 50px !important;
    min-width: 300px;
    margin: 5px
}

.brand-wrapper {
    padding-left: 0 !important
}

.os-cat ul li.active ul li.active>a>div>span::before {
    content: "» "
}

.os-cat ul li.active>a {
    background-color: transparent
}

.os-cat ul li.nav-item.is-open,
.os-cat ul li.nav-item.is-open ul li {
    display: block
}

.os-cat ul li a[href] {
    font-size: unset
}

.widget-filter-base {
    border: 1px solid #eee;
    font-size: 1rem;
    margin-bottom: 1rem !important;
    padding: 0 0 1rem
}

.filter-collapse .form-check-input:checked+label span::before,
.widget-filter-base .form-check-input:checked+label span::before {
    content: "\f14a"
}

.filter-collapse .form-check-input:checked+label,
.widget-filter-base .form-check-input:checked+label {
    color: var(--os-black);
    background: var(--os-accent)
}

.os-cat-header .category-title {
    font-weight: 700
}

.os-cat-header {
    border-top: 1px solid var(--os-grau)
}

.widget-navigation-tree {
    padding-bottom: 2rem
}

.sidebar-categories .category-title,
.widget-navigation-tree .category-title {
    padding: 0 0 1.8rem;
    background: unset;
    font-size: 1.75rem;
    border-bottom: 1px solid var(--os-grau);
    margin-bottom: 1rem;
    text-transform: uppercase;
    font-weight: bolder
}

.filter-badge {
    min-width: 3em;
    padding: .1rem 0;
    font-size: .85rem;
    line-height: unset;
    text-align: center;
    background: var(--os-grau)
}

.bg-appearance .filter-badge {
    color: var(--os-accent) !important;
    background: var(--os-black) !important
}

.breadcrumbs {
    border-bottom: 1px solid transparent
}

.breadcrumb,
.breadcrumbs {
    background-color: var(--secondary);
    border-radius: 0
}

.breadcrumb-item.active {
    color: var(--os-dunkelgrau)
}

.gr1 {
    background-image: linear-gradient(to right, #f9d423 0, #ff4e50 100%)
}

.gr2 {
    background-image: linear-gradient(to right, #fa709a 0, #fee140 100%)
}

.container-max {
    max-width: 1700px
}

@media only screen and (max-width:1920px) {
    .container-max {
        max-width: 1600px
    }
}

.os-header-line {
    font-size: 1.1rem !important
}

.os-header-line .list-group-item {
    padding: 0 .75rem;
    border: none
}

@media (max-width:870px) {
    .os-header-line {
        display: none !important
    }
}

@media (max-width:1200px) {
    .list-unstyled i {
        display: none !important
    }
}

.oscontent a,
.vat a,
label a,
label a:hover {
    text-decoration: underline
}

.footer .text-light a {
    color: #b6b6b6 !important;
    position: relative
}

.kundenvorteile a {
    position: relative
}

.footer .text-light a::before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 1px;
    bottom: 0;
    left: 0;
    background-color: var(--os-accent);
    transform: scaleX(0);
    transform-origin: top left;
    transition: transform .3s
}

.main-navbar-collapsable .mainmenu>li.hover,
.main-navbar-collapsable .mainmenu>li:hover,
.megamenu .collapse {
    background-color: var(--os-mont)
}

.footer .text-light a:hover::before {
    transform: scaleX(1)
}

.footer .text-light {
    color: #ebebeb !important
}

.footer .contact-card i,
.footer .contact-card p {
    margin-top: 0;
    padding: .2rem 0
}

.footer .small {
    font-weight: 300 !important
}

.footer hr {
    border-top: 1px solid #777
}

div.footer {
    overflow-x: unset !important
}

div.container-max.page-content {
    padding-top: 3rem
}

div.single.container-max.page-content {
    padding-top: 0
}

.main-navbar-collapsable .mainmenu>li.hover>ul,
.main-navbar-collapsable .mainmenu>li:hover>ul {
    width: max-content;
    padding: 0
}

.main-navbar-collapsable .mainmenu>li>a {
    padding: 1.5rem;
    font-weight: 400;
    white-space: nowrap
}

.main-navbar-collapsable .ddown>a::after {
    content: "\f107"
}

.megamenu .collapse li {
    padding: 5px 2em
}

.megamenu .level1 a {
    font-weight: 300;
    color: var(--os-light) !important
}

.megamenu .collapse {
    column-rule: 1px solid var(--os-mint)
}

.megamenu .collapse-inner {
    padding-bottom: 0
}

.normalmenu .collapse {
    background: var(--os-mont)
}

.normalmenu .collapse a:hover {
    background: var(--os-accent);
    color: var(--os-black)
}

.normalmenu a {
    padding: 1em 2em
}

.price {
    color: var(--os-black) !important
}

.page-singleitem .title-outer h1,
.single .title-outer h1 {
    line-height: 1.4em
}

.card .h3 {
    text-transform: uppercase
}

.cmp-product-thumb {
    padding: 0;
    background-color: transparent;
    margin-bottom: 0
}

.cmp-product-thumb .price {
    font-size: 1.5rem;
    line-height: 2
}

.cmp-product-thumb .thumb-content {
    display: block;
    width: 100%;
    padding: 2em 0
}

@media only screen and (max-width:1700px) {
    .container-max {
        max-width: 1300px
    }

    .cmp-product-thumb .thumb-image {
        float: none;
        width: 100%
    }
}

.cmp-product-thumb .thumb-title {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    height: 4rem;
    font-weight: 300;
    line-height: unset;
    color: var(--primary);
    text-align: left;
    font-size: 100%
}

.cmp-product-thumb .thumb-meta {
    margin-top: 1.5rem !important
}

.cmp-product-thumb .fa-cart-plus::before {
    content: "+";
    color: #000
}

.cmp-product-thumb .fa-arrow-right::before {
    content: "\f105";
    color: #000
}

.cmp-product-thumb .thumb-image,
.list-controls .list-itemsperpage,
.list-controls .list-sort,
.os-widget-artikelliste .widget-caption,
.paypalSmartButtons.btn.btn-block {
    padding: 0
}

.cmp-product-thumb .add-to-basket-lg-container:hover {
    border-color: transparent var(--os-accent) transparent transparent !important
}

.cmp-product-thumb .add-to-basket-lg-container {
    border-color: transparent var(--os-grau) transparent transparent
}

.cmp-product-thumb .thumb-image .owl-carousel,
.cmp-product-thumb .thumb-image a img,
.cmp-product-thumb .thumb-image>noscript,
.herstellerlogo,
.herstellerlogo picture,
.owl-thumb,
img.owl-lazy {
    mix-blend-mode: multiply
}

.thumb-content div.vat {
    margin-top: .5em
}

.cmp-product-thumb .category-unit-price {
    color: #696969
}

.cmp-product-thumb .prices {
    display: flex;
    flex-wrap: wrap;
    align-content: stretch;
    justify-content: flex-start;
    line-height: 1em
}

@media (max-width:991.98px) {

    .cmp-product-thumb .btn-group,
    .cmp-product-thumb .owl-theme .owl-dots {
        display: none
    }

    .navbar-brand img {
        max-height: 30px !important
    }
}

.page-singleitem .single-carousel a,
.single .single-carousel {
    background-color: var(--secondary)
}

.search-input {
    -webkit-border-radius: 0;
    border-radius: 0
}

input[type=search]::-webkit-input-placeholder {
    font-weight: 300;
    font-size: 1.15rem;
    color: var(--os-black)
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    line-height: unset;
    font-weight: 400
}

#shippingscosts-modal-wrapper .infonavi,
#shippingscosts-modal-wrapper .widget-title-bar,
.os-main-menu-v2 .brand-wrapper {
    display: none !important
}

@media (min-width:576px) {
    .modal-dialog {
        max-width: 1000px
    }
}

.main-navbar-collapsable .mainmenu {
    align-items: center;
    flex-flow: nowrap
}

.widget-image-carousel .widget-inner .widget-caption .h2,
.widget-image-carousel .widget-inner .widget-caption h2 {
    padding: .5rem 1em
}

.basket-list-item .meta-container {
    line-height: 1.2em
}

.tab-content dl,
.tab-content ol,
.tab-content ul {
    padding: 1rem
}

article h3 {
    margin: 2rem 0;
    font-weight: 400
}

.crossprice del,
.oscontent .widget-list a {
    text-decoration: none;
    color: var(--gray)
}

.single .herstellerlogo {
    margin-top: .5rem
}

.single .producer span {
    font-weight: 500;
    padding: .5rem 1rem;
    color: var(--os-black);
    background-color: var(--os-accent)
}

.owl-single-item-nav .owl-single-item-control {
    padding: 0 1rem
}

@media (min-width:768px) {
    .single .nav-tabs .nav-link.active {
        border-bottom: 1px solid transparent
    }

    .single .nav-tabs .nav-link {
        border: 1px solid transparent;
        padding: 2rem 3rem !important
    }
}

.fa-chevron-right::before {
    content: "\f105" !important
}

.fa-chevron-left::before {
    content: "\f104" !important
}

.oscontent .widget-list a:hover {
    text-decoration: underline;
    color: var(--os-black)
}

.oscontent .h2,
.oscontent h2 {
    font-size: 2rem
}

.oscontent .list-unstyled {
    padding-left: 1.3rem;
    list-style: none;
    line-height: 3rem
}

.input-unit {
    border: 1px solid #ccc !important
}

.input-unit .input-unit-label,
.input-unit label {
    font-weight: 300;
    color: #333
}

.form-check-input {
    margin-top: .4rem
}

.oscontent .infonavi a.d-inline-block {
    display: block !important
}

#shippingscosts-modal-wrapper .oscontent .col-xl-9 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100% !important;
    flex: 0 0 100% !important;
    max-width: 100% !important
}

#shippingscosts-modal-wrapper .oscontent .widget-image-box {
    margin-top: 1rem !important
}

.os-top-bar {
    left: unset !important;
    width: auto !important
}

.top-bar-items {
    width: 100%
}

.os-main-menu-v2 .main-navbar-collapsable .mainmenu {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.os-header-v2-row1 .widget-proportional.widget-prop-3-1 {
    padding-bottom: 6rem !important
}

.os-header-v2-row1 .widget-three-col {
    align-items: center
}

.v-s-boxes.images .v-s-box:not(.empty-option) {
    width: 5em;
    height: 4em
}

.os-tech-data li {
    margin-left: 1em
}

.custom-select {
    background-color: #fff !important;
    border: 4px solid #eee;
    font-weight: 300
}

.list-controls .list-controls-inner {
    background: 0 0
}

.list-controls .list-controls-inner .p-2 {
    padding: 0 !important
}

.list-controls .list-controls-inner .btn-link {
    font-weight: 400;
    background-color: var(--os-accent);
    padding: 1rem 2rem;
    text-decoration: none
}

.list-controls .list-controls-inner .btn-link:hover {
    background-color: var(--os-black);
    color: #fff !important
}

.widget-toolbar .filter-collapse>div {
    padding: 2rem;
    background: #fff;
    border: 4px solid #6ddfcc;
    -webkit-box-shadow: 0 5px 30px 0 rgba(0, 0, 0, .2);
    box-shadow: 0 5px 30px 0 rgba(0, 0, 0, .2)
}

.collapse-container .widget {
    margin-top: 0
}

.collapse-container .widget-filter-base {
    border: none
}

@media (max-width:575.98px) {
    .cmp-product-thumb .price {
        font-size: 1.1rem;
        line-height: 1.2
    }

    .widget .widget-inner .widget {
        margin-bottom: .5rem
    }

    .list-controls .list-controls-inner .btn-link {
        width: 100%
    }
}

@media (max-width:767.98px) {
    .widget-toolbar .filter-collapse>div {
        padding: 1rem
    }

    .categoriegrid .widget-grid,
    .categorygrid .widget-grid {
        flex-direction: column-reverse
    }
}

h3 .bg-warning {
    padding: .5rem
}

.os-hero .widget-link {
    margin: 3rem 0
}

.os-hero .widget-inner {
    align-self: center
}

.os-widget-artikelliste .bg-appearance,
.os-widget-artikelliste .bg-appearance a {
    color: var(--os-black) !important;
    background-color: #fff !important
}

.widget-image-box-caption h2 {
    font-size: 1rem !important;
    padding: 0
}

.paypalSmartButtons div {
    margin-left: 0 !important;
    margin-right: 0 !important
}

.paypal-installment-banner-graphical span {
    max-width: unset !important
}

.widget-accordion .card-body p {
    line-height: unset
}

.touch .cookie-bar p {
    font-size: .9em;
    line-height: 1.4em
}

.widget-attribute {
    min-height: 10em
}

.widget-attribute:has(> div:empty) {
    display: none
}

.owl-carousel {
    -ms-touch-action: pan-y;
    touch-action: pan-y
}

.footer .payment-icons img,
.footer .shipping-icons img {
    max-height: 30px;
    width: 50px;
    height: 30px;
    margin: 0 5px 8px 0
}

.footer .footer-logo {
    width: 264px;
    height: 50px
}

.footer .support-icon {
    width: 250px;
    height: 120px
}

.touch .single .widget-item-list .col-12 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%
}

.controls-list i {
    font-size: 1.3rem
}

.widget-step-by-step-navigation .nav-text:hover {
    background-color: var(--os-accent) !important;
    transition: .8s
}

.os-contact-buttons {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 6px 0;
    width: 100%;
    min-width: 0;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    text-align: center;
}

a.os-contact-button {
    transition: background-color 0.2s ease;
}

a.os-contact-button:hover,
a.os-contact-button:focus {
    background-color: #777777 !important;
    color: #ffffff !important;
    text-decoration: none !important;
}


/* =========================================
   Footer
   ========================================= */
.footer .contact-card i,
.footer .contact-card p {
    margin-bottom: 0;
}


/* =========================================
   Carousel-Bilder
   ========================================= */
.single-carousel .owl-item img,
.owl-carousel .owl-item img {
    mix-blend-mode: multiply;
}


/* =========================================
   Artikelattribute
   Abweichung von den externen 10em
   ========================================= */
.widget-attribute {
    min-height: 6em !important;
}


/* =========================================
   Hauptnavigation
   Kompakter als im externen Stylesheet
   ========================================= */
.main-navbar-collapsable .mainmenu > li > a {
    padding: 1rem !important;
}


/* =========================================
   Menü-Button
   ========================================= */
.navbar-toggler {
    font-size: 2rem;
    color: black;
}


/* =========================================
   Verfügbarkeitsanzeige
   ========================================= */
.availability-1,
.availability-2,
.availability-3 {
    background-color: #A1C639 !important;
    color: #000000 !important;
}


/* =========================================
   TOUCH-GERÄTE: TABLETS
   ========================================= */
@media (min-width: 768px) and (max-width: 1599.98px) {

    /* Bisheriges Scrollverhalten zunächst beibehalten */
    body.touch #page-header.sticky-top {
        position: static !important;
        top: auto !important;
    }

    /* Überschreibt die externe Ausblendung bis 870px */
    body.touch .os-header-line {
        display: flex !important;
    }

    body.touch .os-header-line .widget-grid > .widget-inner:first-child .list-group-horizontal {
        display: flex;
        flex-wrap: wrap;
        gap: 0.2rem 0.4rem;
    }

    body.touch .os-header-line .widget-grid > .widget-inner:first-child .list-group-item {
        padding: 0.25rem 0.2rem;
        font-size: 0.75rem;
    }

    body.touch .os-header-line .widget-link a.btn {
        font-size: 0.75rem !important;
        line-height: 1.2;
        padding: 0.25rem 0.4rem !important;
        margin: 0 !important;
        white-space: nowrap;
    }
}


/* =========================================
   GROSSE TOUCH-ANSICHTEN
   ========================================= */
@media (min-width: 992px) and (max-width: 1599.98px) {

    body.touch #mobile-navigation-toggler {
        display: block !important;
        font-size: 2rem !important;
        color: black !important;
    }

    body.touch .main-navbar-collapsable {
        display: none !important;
    }

    /* Überschreibt die externe Logo-Mindestbreite von 300px */
    body.touch .navbar-brand img {
        width: 180px !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;
    }
}


/* =========================================
   TABLETS IM QUERFORMAT
   Normale Navigation neben dem Logo
   ========================================= */
@media (min-width: 992px) and (max-width: 1599.98px) and (orientation: landscape) {

    body.touch #mobile-navigation-toggler {
        display: none !important;
    }

    body.touch .header-fw .row.mx-0.position-relative.d-flex {
        flex-wrap: nowrap !important;
    }

    body.touch .header-fw .row.mx-0.position-relative.d-flex > .brand-wrapper {
        flex: 0 0 200px !important;
        width: 200px !important;
        max-width: 200px !important;
        min-width: 0 !important;
    }

    body.touch .header-fw .row.mx-0.position-relative.d-flex > .main-navbar-collapsable {
        display: block !important;
        flex: 1 1 auto !important;
        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;
    }

    body.touch .main-navbar-collapsable .mainmenu {
        justify-content: flex-end !important;
    }

    body.touch .main-navbar-collapsable .mainmenu > li {
        flex: 0 1 auto !important;
        min-width: 0 !important;
    }

    body.touch .main-navbar-collapsable .mainmenu > li > a {
        padding: 0.3rem !important;
        font-size: 0.78rem !important;
    }

    /* Letzte drei Untermenüs: Kabel, Strom und Marken */
    body.touch .main-navbar-collapsable .mainmenu > li:nth-last-child(-n+3) > ul {
        left: auto !important;
        right: 0 !important;
    }
}


/* =========================================
   SCHMALE QUERFORMAT-ANSICHTEN
   Infozeile auch oberhalb von 870px ausblenden
   ========================================= */
@media (max-height: 500px) and (max-width: 950px) {
    body.touch .os-header-line {
        display: none !important;
    }
}

@media (min-width: 768px) and (max-width: 1599.98px) {
    .os-header-line .os-header-grid {
        align-items: stretch;
        row-gap: 12px;
    }

    .os-header-line .os-header-grid > .widget-inner:first-child,
    .os-header-line .os-header-grid > .widget-inner:last-child {
        flex: 0 0 50%;
        max-width: 50%;
        min-width: 0;
    }

    .os-header-line .os-header-grid > .widget-inner:last-child {
        order: 1;
    }

    .os-header-line .os-header-grid > .widget-inner:last-child > div {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
        align-items: center;
        gap: 0.25rem;
        width: 100%;
        min-width: 0;
    }

    .os-header-line .os-header-grid > .widget-inner:last-child .widget-link {
        float: none !important;
        margin: 0 !important;
        max-width: 100%;
        text-align: right;
    }

    .os-header-line .os-header-grid > .widget-inner:nth-child(2) {
        flex: 0 0 100%;
        max-width: 100%;
        min-width: 0;
        order: 2;
    }

    .os-header-line .os-header-grid > .widget-inner:nth-child(2) > div {
        width: 100%;
        min-width: 0;
    }

    .os-header-line .os-header-grid .widget-code:has(a.os-contact-button) {
        float: none !important;
        width: 100%;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

}

@media (max-width: 767.98px) {
    .header-fw .navbar-brand {
        min-width: 0;
        max-width: calc(100% - 64px);
    }

    .header-fw .navbar-brand img {
        width: 240px;
        min-width: 0;
        max-width: calc(100% - 10px);
        height: auto;
    }
}



/* =========================================
   Aufklappbare Filter & Kategorien
   Klassen fc-ready / fc-cat / is-collapsed
   werden per Script im Code-Widget gesetzt
   ========================================= */
.fc-ready.pt-4 {
    padding-top: .9rem !important;
}

.fc-filter.widget-filter-base {
    padding-bottom: .6rem !important;
}

.fc-ready .title {
    cursor: pointer;
    position: relative;
    padding-right: 2.5rem !important;
    user-select: none;
}

.fc-ready .title::after,
.fc-cat .category-title::after {
    content: "\2212";
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.2em;
    font-weight: 400;
    line-height: 1;
}

.fc-ready.is-collapsed .title::after,
.fc-cat.is-collapsed .category-title::after {
    content: "+";
}

.fc-ready.is-collapsed > :not(.title) {
    display: none !important;
}

/* Mehrere Filter im selben Widget optisch trennen */
.fc-ready + .fc-ready {
    margin-top: calc(1.6rem + 2px) !important;
}

.fc-ready + .fc-ready::before {
    content: "";
    position: absolute;
    left: -1px;
    right: -1px;
    top: calc(-1rem - 2px);
    height: calc(1rem + 2px);
    background: #fff;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
    pointer-events: none;
}

/* Kategorien im Filter-Stil */
.fc-cat.fc-cat {
    border: 1px solid #eee;
    padding: .9rem 0 .95rem !important;
    margin-bottom: 1rem !important;
}

.fc-cat.fc-cat .category-title {
    cursor: pointer;
    position: relative;
    margin: 0 !important;
    border-bottom: 0 !important;
    padding: 0 2.5rem 0 var(--fc-pl, 1.25rem) !important;
    font-size: var(--fc-fs, 1.5rem) !important;
    font-weight: var(--fc-fw, 400) !important;
    line-height: var(--fc-lh, 1.8) !important;
    letter-spacing: var(--fc-ls, normal) !important;
    user-select: none;
}

.fc-cat.fc-cat:not(.is-collapsed) .category-title {
    margin-bottom: .75rem !important;
}

.fc-cat.is-collapsed ul {
    display: none !important;
}

/* Hinweis "x gewählt" im zugeklappten Filter */
.fc-ready.is-collapsed .title[data-fc-count] {
    padding-right: 7.5rem !important;
}

.fc-ready.is-collapsed .title[data-fc-count]::before {
    content: attr(data-fc-count) " gewählt";
    position: absolute;
    right: 2.5rem;
    top: 50%;
    transform: translateY(-50%);
    padding-left: .75rem;
    background: radial-gradient(circle, var(--os-accent) 3px, transparent 3.5px) no-repeat left center / 8px 8px;
    color: var(--os-dunkelgrau);
    font-size: .75rem;
    font-weight: 300;
    line-height: 1;
    letter-spacing: .02em;
    text-transform: none;
    white-space: nowrap;
}