/*
 * Copyright 2026 All Rights Reserved - neofire | Deutschland
 * Simeonscarré 2, 32423 Minden
 */

:root {
    --main-color: #000;
    --main-background: #fff;
    --main-border: 1px solid #ccc;
    --main-hover-color: #000;
    --main-hover-background: #ddd;
    --main-hover-border: 1px solid #ccc;
    --main-button-color: #000;
    --main-button-background: #fff;
    --main-button-border: 1px solid #ccc;
    --main-button-hover-color: #fff;
    --main-button-hover-background: #000;
    --main-button-hover-border: 1px solid #ccc;
    --main-largebutton-color: #fff;
    --main-largebutton-background: #000;
    --main-largebutton-border: 1px solid #000;
    --main-largebutton-hover-color: #fff;
    --main-largebutton-hover-background: #000;
    --main-largebutton-hover-border: 1px solid #000;
    --quickview-color: #000;
    --quickview-background: #fff;
    --quickview-border: 1px solid #ccc;
    --quickview-hover-color: #000;
    --quickview-hover-background: #ddd;
    --quickview-hover-border: 1px solid #ccc;
    --quickview-button-color: #000;
    --quickview-button-background: #fff;
    --quickview-button-border: 1px solid #ccc;
    --quickview-button-hover-color: #fff;
    --quickview-button-hover-background: #000;
    --quickview-button-hover-border: 1px solid #ccc;
    --quickview-largebutton-color: #fff;
    --quickview-largebutton-background: #000;
    --quickview-largebutton-border: 1px solid #000;
    --quickview-largebutton-hover-color: #fff;
    --quickview-largebutton-hover-background: #000;
    --quickview-largebutton-hover-border: 1px solid #000;
    --header-background: #ffffffe6 !important;
    --header-color: #000;
}

.darkmode {
    --main-color: #fff;
    --main-background: #000;
    --main-border: 1px solid #81818157;
    --main-hover-color: #3dffc1;
    --main-hover-background: #ff0000;
    --main-hover-border: #ff0000;
    --main-button-color: #fff;
    --main-button-background: #000;
    --main-button-border: 1px solid #81818157;
    --main-button-hover-color: #3dffc1;
    --main-button-hover-background: #000;
    --main-button-hover-border: 1px solid #3dffc1;
    --main-largebutton-color: #3dffc1;
    --main-largebutton-background: #000;
    --main-largebutton-border: 1px solid #3dffc1;
    --main-largebutton-hover-color: #3dffc1;
    --main-largebutton-hover-background: #000;
    --main-largebutton-hover-border: 1px solid #3dffc1;
    --quickview-color: #000;
    --quickview-background: #fff;
    --quickview-border: 1px solid #ccc;
    --quickview-hover-color: #000;
    --quickview-hover-background: #ddd;
    --quickview-hover-border: 1px solid #ccc;
    --quickview-button-color: #000;
    --quickview-button-background: #fff;
    --quickview-button-border: 1px solid #ccc;
    --quickview-button-hover-color: #fff;
    --quickview-button-hover-background: #000;
    --quickview-button-hover-border: 1px solid #ccc;
    --quickview-largebutton-color: #fff;
    --quickview-largebutton-background: #000;
    --quickview-largebutton-border: 1px solid #000;
    --quickview-largebutton-hover-color: #fff;
    --quickview-largebutton-hover-background: #000;
    --quickview-largebutton-hover-border: 1px solid #000;
    --header-background: #000000e6 !important;
    --header-color: #fff;
}

#all .link:hover .listing-name {
    color: var(--main-hover-color);
}

#all {
    background: var(--main-background);
    font-family: Arial, sans-serif;
    color: var(--main-color);
}

#all h1,
#all h2,
#all h3,
#all h4,
#all h5,
#all h6,
#all .u-body,
#all * {
    font-family: Arial, sans-serif;
}

#all input,
#all select,
#all textarea,
#all button,
#all optgroup,
#all option {
    color: inherit;
}

#all .appointment-calendar,
#all .shipping-appointment-calendar {
    display: none;
}

#all flatpickr-rContainer,
#all .flatpickr-rContainer {
    width: 100%;
    padding: 0px 20px 0px 20px;
}

#all .flatpickr-day {
    max-width: auto;
    height: auto;
}

#all .dayContainer {
    width: 100%;
    min-width: 100%;
}

#all #header {
    position: relative;
    z-index: 999;
}

.allactive #header {
    box-shadow: none !important;
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    width: auto !important;
    top: 0px !important;
    z-index: 999 !important;
}

#all #header {
    transition: box-shadow .18s ease;
}

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
    #all #header {
        background: #ffffff !important;
    }

    #all.large #header,
    .dark #header {
        background: #14131a !important;
    }
}

.allactive #header h1,
.allactive #header h2,
.allactive #header h3,
.allactive #header h4,
.allactive #header h5,
.allactive #header h6,
.allactive #header .u-body,
.allactive #header * {
}

#all #quickview-content h1,
#all #quickview-content h2,
#all #quickview-content h3,
#all #quickview-content h4,
#all #quickview-content h5,
#all #quickview-content h6,
#all #quickview-content .u-body,
#all #quickview-content * {
    color: #000;
}

#all #quickview-content button span,
#all #quickview-content #quickview-close,
#all #quickview-content .property-option.active,
#all #quickview-content .property-option:hover {
    color: #fff;
}

 {
    color: #fff;
}

#all #catOverlay h1,
#all #catOverlay h2,
#all #catOverlay h3,
#all #catOverlay h4,
#all #catOverlay h5,
#all #catOverlay h6,
#all #catOverlay .u-body,
#all #catOverlay * {
    color: #000;
}

#all .cart-content h1,
#all .cart-content h2,
#all .cart-content h3,
#all .cart-content h4,
#all .cart-content h5,
#all .cart-content h6,
#all .cart-content .u-body,
#all .cart-content *,
#all .quickview-window #quickview-close {
    color: #000;
}

#all .flatpickr-day {
    margin: auto;
    width: 100%;
}

#all .dayContainer {
    width: 100%;
    min-width: 100%;
    display: grid;
    grid-template-columns: repeat(7, 1fr);
}

#all .flatpickr-days {
    width: 100%;
}

#all .flatpickr-day.startRange,
#all .flatpickr-day.endRange,
#all .flatpickr-day.selected.inRange,
#all .flatpickr-day.startRange.inRange,
#all .flatpickr-day.endRange.inRange,
#all .flatpickr-day.selected:focus,
#all .flatpickr-day.startRange:focus,
#all .flatpickr-day.endRange:focus,
#all .flatpickr-day.selected:hover,
#all .flatpickr-day.startRange:hover,
#all .flatpickr-day.endRange:hover,
#all .flatpickr-day.selected.prevMonthDay,
#all .flatpickr-day.startRange.prevMonthDay,
#all .flatpickr-day.endRange.prevMonthDay,
#all .flatpickr-day.selected.nextMonthDay,
#all .flatpickr-day.startRange.nextMonthDay,
#all .flatpickr-day.endRange.nextMonthDay {
    background: #000000;
    -webkit-box-shadow: none;
    box-shadow: none;
    color: #fff;
    border-color: #000000;
}

#all .selected {
    color: #fff;
    background: #000;
    border-color: #000;
}

#all .flatpickr-calendar {
    box-shadow: none;
    margin: auto;
    width: 100%;
    scale: 1.1;
    margin-top: 40px;
    margin-bottom: 30px;
}

#all .neofire-lay-cname,
#all .neofire-lay-pname,
#all .neofire-lay-pgtitle {
    margin: 0;
    padding: 0;
}

#all .variant-option {
    cursor: pointer;
}

#all .button_vertrag_widerrufen {
    border: solid 1px #81818157;
}

#all .page_links .link {
    padding: 3px 0;
    border: none;
    border-radius: 0;
}

body.modal-open {
    overflow: hidden;
    position: fixed;
    width: 100%;
}

#loadContent {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 80px;
    font-size: 0;
    height: 100vh;
}

#loadContent::after {
    content: "";
    width: 42px;
    height: 42px;
    border: 4px solid rgba(35, 34, 39, 0.15);
    border-top: 4px solid #232227;
    border-radius: 50%;
    animation: Spin 0.8s linear infinite;
}

@keyframes Spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

#all body {
    margin: 0;
    font-family: Arial;
    background: #fff;
}

#all .link {
    color: inherit;
    text-decoration: none;
    cursor: pointer;
    transition: 0.2s;
}

#all .link:hover {
    color: var(--main-hover-color);
    text-decoration: none;
    cursor: pointer;
    transition: 0.2s;
}

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

#all .agb-error {
    border: 1px solid red;
    padding: 6px;
    border-radius: 6px;
    background: #ffecec;
}

#all a:visited {
    color: inherit;
}

#all a:hover {
    color: inherit;
}

#all a:active {
    color: inherit;
}

#all .listing-text {
    height: 130px;
    text-overflow: ellipsis;
}

#all .listing-name {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

#all .card.neofire-card-std {
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

#all .card.neofire-card-std .description_short_list {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

#all .grid > .card .pricelist {
    margin-top: auto;
}

#all .card .card-row {
    display: flex;
    gap: 10px;
    width: 100%;
}

#all .card .card-col {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-width: 0;
}

#all.darkmode .card,
#all.darkmode .card .listing-name,
#all.darkmode .card .pricelist,
#all.darkmode .card .description_short_list,
#all.darkmode .card .listing-text {
    color: var(--main-color, #ffffff);
}

#all.darkmode .card .shorttext_list,
#all.darkmode .card .base-price,
#all.darkmode .card .baseprice,
#all.darkmode .card .neofire-lay-vat,
#all.darkmode .card .neofire-lay-saleunit {
    color: #b9b9c2;
}

#all .baseprice {
    text-align: right;
}

#all .cart-body .active {
    border-color: #000 !important;
    color: #fff !important;
    background: #000 !important;
}

#all .listing-cart-btn,
.listing-button-btn {
    float: right;
    border: solid 1px #ededed;
    padding: 11px;
    color: #464646;
    border-radius: 4px;
    font-size: 16px;
    width: 100%;
    margin-top: 20px;
    background: #f9f9f9;
    cursor: pointer;
}

#all .product-properties .product-property-row:last-of-type {
    border-bottom: none;
}

#all #topbar {
    height: 80px;
    display: flex;
    align-items: center;
    padding: 0 15px;
    gap: 20px;
    line-height: 1.0;
}

#all #plus,
#all #minus {
    padding: 5px 10px 5px 10px;
    font-size: 20px;
}

#all #qty {
    padding: 10px;
}

#all #quickview-modal #mainPrice {
    color: var(--quickview-hover-color);
    font-size: 32px;
    font-weight: bold;
}

#all #content {
    flex: 1;
    padding: 0 0 20px 0;
    max-width: 1205px;
    margin: 0 auto;
}

#all .property-title {
    font-weight: bold;
    font-size: 17px;
}

#close-cat {
    color: #000;
    border: none;
    background: none;
    font-size: 28px;
    cursor: pointer;
}

#all .close-x {
    margin-left: auto;
    font-size: 28px;
    cursor: pointer;
}

#all .variant-tabs {
    display: flex;
    gap: 8px;
    margin: 15px 0;
    flex-wrap: wrap;
}

#all .variant-tab {
    padding: 8px 12px;
    border: 1px solid #81818157;
    border-radius: 6px;
    text-decoration: none;
    font-size: 14px;
}

#all .variant-tab.property-option,
#all #quickview-modal .variant-tab.property-option {
    width: auto;
}

#all .variant-tab:hover {
    color: var(--main-button-hover-color);
    background: var(--main-button-hover-background);
    border: var(--main-button-hover-border);
}

#all .neofire-eigenschaften {
    margin: 14px 0 4px;
}

#all .neofire-eig-liste {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 4px 18px;
    margin: 0;
    font-size: 14px;
}

#all .neofire-eig-liste dt {
    color: var(--neofire-eig-label, #6b7688);
}

#all .neofire-eig-liste dd {
    margin: 0;
}

#all .variant-tab.variant-out,
#all .variant-tab.variant-out:hover,
#all .variant-tab.variant-out.active,
#all #quickview-modal .variant-tab.variant-out,
#all #quickview-modal .variant-tab.variant-out:hover,
#all #quickview-modal .variant-tab.variant-out.active {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
    background-color: var(--neofire-variant-out-bg, #fbfbfc);
    background-image: linear-gradient(to top right,
        transparent calc(50% - 0.7px),
        var(--neofire-variant-out-line, #c2c8d0) calc(50% - 0.7px),
        var(--neofire-variant-out-line, #c2c8d0) calc(50% + 0.7px),
        transparent calc(50% + 0.7px));
    color: var(--neofire-variant-out-color, #b3bac4);
    border: 1px solid var(--neofire-variant-out-border, #e6e9ee);
}

#all .variant-tab.active {
    color: var(--main-button-hover-color);
    background: var(--main-button-hover-background);
    border: var(--main-button-hover-border);
}

#all .grid {
    padding-top: 0;
    padding-bottom: 20px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
}

#all .card {
    text-decoration: none;
    color: black;
    display: block;
    box-sizing: border-box;
    transition: box-shadow .2s ease, transform .2s ease, color .2s ease, background-color .2s ease, border-color .2s ease;
}

#all .card:not([data-card-box]) {
    padding: 10px;
    border: 1px solid #7979796b;
    border-radius: 8px;
}

#all .grid > .card {
    display: flex;
    flex-direction: column;
}

#all .checkout-grid select {
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 8px;
    font-size: 14px;
    box-sizing: border-box;
    outline: none;
    grid-column: 1 / 3;
}

#all .card:hover {
    transform: translateY(-2px);
}

#all .card:not([data-card-box]):hover {
    box-shadow: 0 2px 10px rgba(0,0,0,0.08);
}

#all #main {
    width: 100%;
}

#all .img {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
}

#all .product-properties {
    margin-top: 35px;
    padding-top: 20px;
}

#all .product-properties h3 {
    margin: 0 0 18px;
    font-size: 22px;
    font-weight: 600;
}

#all .product-property-row {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 30px;
    padding: 10px 0;
    border-bottom: 1px solid #81818157;
}

#all .product-property-name {
    width: 100%;
    font-weight: 600;
}

#all .base-price {
    text-align: inherit;
    letter-spacing: .1px;
}

#all .description_short_list {
    opacity: 0.5;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
}

#all .price_list {
    margin-top: 8px;
    font-weight: bold;
}

#all .property-switch {
    margin: 20px 0;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 10px;
}

#all .property-switch .switch {
    order: 0;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    width: 36px;
    height: 20px;
    min-width: 0;
    margin: 0;
    padding: 0;
    top: 0;
    border: 0;
    border-radius: 999px;
    background: transparent;
}

#all .property-switch .property-title {
    order: 1;
    flex: 0 1 auto;
    cursor: pointer;
    user-select: none;
}

#all .property-switch .switch-slider {
    position: relative;
    inset: auto;
    width: 36px;
    height: 20px;
    flex-shrink: 0;
    background: #e5e7eb;
    border: 0;
    border-radius: 999px;
    transition: .25s;
}

#all .property-switch .switch-slider::before {
    content: "";
    position: absolute;
    left: 2px;
    top: 2px;
    width: 16px;
    height: 16px;
    background: #fff;
    border-radius: 50%;
    transition: .25s;
}

#all .property-switch .switch input:checked + .switch-slider {
    background: #22c55e;
}

#all .property-switch .switch input:checked + .switch-slider::before {
    transform: translateX(16px);
}

#all .property-switch .property-title {
    display: inline-block;
    margin: 0;
    font-weight: 600;
    font-size: 15px;
}

#all .switch {
    position: relative;
    display: inline-block;
    width: 58px;
    height: 32px;
    top: 10px;
}

#all .switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

#all .switch-slider {
    position: absolute;
    inset: 0;
    cursor: pointer;
    background: #e5e7eb;
    border-radius: 999px;
    transition: .25s ease;
}

#all .switch-slider::before {
    content: "";
    position: absolute;
    width: 26px;
    height: 26px;
    left: 3px;
    top: 3px;
    background: #fff;
    border-radius: 50%;
    transition: .25s ease;
}

#all .switch input:checked + .switch-slider {
    background: #22c55e;
}

#all .switch input:checked + .switch-slider::before {
    transform: translateX(26px);
}

#all .product .img {
    height: 350px;
    background: #f9f9f9;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
}

#all .card img {
    width: 100%;
    object-fit: cover;
}

#all .noimage {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    color: #666;
}

#all .img {
    width: 100%;
    padding: 0px;
    border: 1px solid #81818157;
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
}

#all:not(.darkmode) .img {
    border-color: #fff;
}

#all .card img {
    max-width: 100%;
    min-height: 100%;
    width: 100%;
    object-fit: cover;
}

@media (max-width: 1200px) {
    #all .grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 800px) {
    #all .grid {
        grid-template-columns: repeat(2, 1fr);
    }

    #all .product-layout {
        display: flow !important;
    }
}

@media (max-width: 600px) {
    #all .grid {
        grid-template-columns: 1fr;
    }

    #all .card:not([data-card-box]) {
        border: none;
        border-radius: 0px;
        border-bottom: 1px solid #7979796b;
    }

    #all .grid .card:not([data-card-box]):last-child {
        border: none !important;
    }

    #all .card:hover {
        box-shadow: none;
        transform: none;
    }

    #all .grid {
        gap: 5px;
    }
}

#all .cat-overlay {
    position: fixed;
    inset: 0;
    z-index: 9999;
    visibility: hidden;
    transition: opacity 0.25s ease;
}

#all .cat-overlay.active {
    opacity: 1;
    visibility: visible;
}

#all .cat-box {
    width: 320px;
    height: 100%;
    background: #fff;
    overflow: hidden;
    transform: translateX(-100%);
    transition: transform 0.3s ease;
}

#all .cat-overlay.active .cat-box {
    transform: translateX(0);
    margin-left: 0px;
}

@media (max-width: 850px) {
    #all #content {
        flex: 1;
        padding: 0 0 20px 0;
    }

    #all .cat-box {
        width: 100% !important;
    }
}

#all #catOverlay {
    position: fixed;
    inset: 0;
    width: 320px;
    z-index: 9999;
}

#all #catOverlay.active {
}

#all #catStack {
    position: relative;
    height: 100%;
    overflow: hidden;
}

#all .cat-loader {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 44px;
    height: 44px;
    margin: -22px 0 0 -22px;
    border: 3px solid #e6e6e6;
    border-top: 3px solid #111;
    border-radius: 50%;
    animation: catSpin 0.8s linear infinite;
    display: none;
    z-index: 50;
}

@keyframes catSpin {
    to {
        transform: rotate(360deg);
    }
}

#all .category-separator {
    border: solid 1px #ededed;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    min-height: 120px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    padding: 20px;
    margin: 0px 0px 0px 0px;
    position: relative;
    overflow: hidden;
}

#all .category-separator-overlay {
    position: absolute;
    inset: 0;
    background: rgb(255 255 255 / 78%);
}

#all .category-separator-boxtext {
    position: relative;
    z-index: 1;
    color: #000;
    margin: 0;
    font-size: 32px;
}

#all .category-separator-text {
    position: relative;
    z-index: 1;
    padding-top: 20px;
    margin: 0;
    font-size: 32px;
}

#all .cat-level {
    opacity: 1;
    transform: translateX(0);
    animation: catLevelIn .18s ease;
}

@keyframes catLevelIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

#all .cat-level.out {
    opacity: 0;
    transform: translateX(-10px);
}

#all .cat-box {
    width: 320px;
    height: 100%;
    background: #fff;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: calc(var(--neofire-nav-dauer) * 1.5) var(--neofire-nav-kurve);
}

#all .cat-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px;
    border-bottom: 1px solid #eee;
}

#all #catStack {
    flex: 1;
    overflow-y: auto;
}

#all #topbar {
    max-width: 1205px;
    margin: 0 auto;
    padding: 0 20px;
}

#all #topbar[data-neofire-lay-region="header"],
#all #topbar.neofire-designer-creg-header {
    display: block;
    height: auto;
    min-height: 0;
    gap: 0;
    max-width: none;
    margin: 0;
    padding: 0;
    align-items: initial;
    flex-wrap: initial;
}

#all main {
    max-width: 1250px;
    margin: 0 auto;
}

#all .itemlist {
    padding: 0px 0px 14px 0px;
    font-size: 14px;
}

#all .neofire-lay-el:has(> .cat-btn),
#all .neofire-lay-el:has(> * > .cat-btn),
#all .neofire-lay-el:has(> .cart-icon),
#all .neofire-lay-el:has(> * > .cart-icon) {
    display: flex;
    align-items: stretch;
}

#all .cat-btn,
#all .cart-icon {
    align-self: stretch;
    flex: 1 1 auto;
}

#all .cat-btn {
    background: transparent;
    border: 0;
    width: 100%;
    height: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
    box-sizing: border-box;
}

#all .cat-btn svg {
    width: 60%;
    height: 60%;
    max-width: 100%;
    max-height: 100%;
}

#all #topbar .neofire-lay-el:has(> .cat-btn),
#all #topbar .neofire-lay-el:has(.cart-icon),
#all #topbar .neofire-lay-el:has(.neofire-search-lupe) {
    container-type: size;
}

#all #topbar .cat-btn,
#all #topbar .cart-icon,
#all #topbar .neofire-search-lupe {
    width: 100%;
    height: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
}

#all #topbar .cat-btn svg,
#all #topbar .cart-icon svg,
#all #topbar .neofire-search-lupe > svg {
    scale: 1;
    display: block;
}

#all #topbar .cat-btn {
    line-height: 1;
}

#all #topbar .cat-btn svg {
    width: auto;
    height: auto;
}

#all #topbar .neofire-search-field {
    height: 100%;
}

#all #topbar .neofire-search-field input {
    height: 100%;
    box-sizing: border-box;
}

#all .manuimg {
    width: 80px;
    padding: 10px;
    max-height: 80px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0px 0px 15px 0px;
    background: transparent;
}

#all #logo {
    font-weight: bold;
    font-size: 28px;
    white-space: nowrap;
}

#all #topbar #core-search {
    flex: 1 1 auto;
    display: flex;
    justify-content: flex-end;
    position: relative;
}

#all #topbar #floating-cart {
    width: auto;
    flex: 0 0 auto;
    margin-left: 0;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 4px;
}

#all #topbar .neofire-search-field {
    display: flex;
    align-items: center;
    width: 40px;
    max-width: 100%;
    min-height: 40px;
    box-sizing: border-box;
    border: 0;
    border-radius: 20px;
    background: transparent;
    color: var(--main-color);
    overflow: hidden;
    transition: width .34s cubic-bezier(.22,.61,.36,1);
}

#all #topbar .neofire-search-field.open {
    width: 100%;
}

#all #topbar .neofire-search-lupe {
    flex: 0 0 auto;
    height: 100%;
    width: auto;
    padding: 0;
    margin: 0;
    border: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    color: var(--main-color);
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
    box-sizing: border-box;
}

#all #topbar .neofire-search-close {
    display: none;
    flex: 0 0 auto;
    width: 40px;
    height: 40px;
    padding: 0;
    margin: 0;
    border: 0;
    align-items: center;
    justify-content: center;
    background: transparent;
    color: var(--main-color);
    cursor: pointer;
    font-size: 28px;
    line-height: 1;
    -webkit-appearance: none;
    appearance: none;
}

#all #topbar .neofire-search-inner {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    padding: 4px 12px 4px 2px;
    cursor: text;
    opacity: 0;
    transition: opacity .2s ease .06s;
}

#all #topbar .neofire-search-field.open .neofire-search-inner {
    opacity: 1;
}

#all #topbar #core-search-input {
    flex: 1 1 90px;
    min-width: 90px;
    height: 36px;
    box-sizing: border-box;
    border: none;
    border-bottom: solid 1px #dcdcdc !important;
    border-radius: 0px;
    outline: none;
    background: transparent;
    padding: 12px;
    font-size: 15px;
    color: inherit;
    caret-color: var(--main-color);
    -webkit-appearance: none;
    appearance: none;
}

#all #topbar #core-search-input::-webkit-search-decoration,
#all #topbar #core-search-input::-webkit-search-cancel-button {
    -webkit-appearance: none;
}

#all #topbar #core-search-input::placeholder {
    color: var(--main-color);
    opacity: .5;
}

#all #topbar .neofire-filterchip {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    max-width: 100%;
    padding: 9px 5px 9px 9px;
    border-radius: 11px;
    background: #f7f8f9;
    color: #222;
    border: 0.5px solid rgba(0,0,0,0.06);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.4;
}

#all #topbar .neofire-filterchip .neofire-filterchip-txt {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#all #topbar .neofire-filterchip .neofire-filterchip-x {
    width: 18px;
    height: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 0;
    border-radius: 4px;
    background: none;
    color: #000;
    font-size: 15px;
    line-height: 1;
    cursor: pointer;
}

#all #topbar .neofire-filterchip .neofire-filterchip-x:hover {
    background: none;
}

#core-search-dropdown {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 14px;
    line-height: 1.35;
    color: #222;
}

#core-search-dropdown .core-search-item:hover {
    background: var(--core-search-hover, rgb(190 190 190 / 10%));
}

#core-search-dropdown .core-search-item:last-of-type {
    border-bottom: 0 !important;
}

#core-search-dropdown .core-search-all:hover {
    background: rgba(43,108,255,0.06);
}

@media (max-width: 640px) {
    #all #topbar {
        flex-wrap: wrap;
        height: auto;
        padding-top: 10px;
        padding-bottom: 10px;
    }

    #all #topbar.neofire-search-expanded > .cat-btn,
    #all #topbar.neofire-search-expanded > #logo,
    #all #topbar.neofire-search-expanded > #floating-cart {
        display: none !important;
    }

    #all #topbar.neofire-search-expanded #core-search {
        flex-basis: 100%;
        order: 0;
        margin: 0;
    }

    #all #topbar.neofire-search-closing {
        flex-wrap: nowrap;
    }

    #all #topbar.neofire-search-closing > .cat-btn,
    #all #topbar.neofire-search-closing > #logo,
    #all #topbar.neofire-search-closing > #floating-cart {
        visibility: hidden;
    }

    #all #topbar .neofire-search-field.open {
        width: 100%;
    }

    #all #topbar.neofire-search-expanded .neofire-search-close {
        display: inline-flex;
    }

    #all #topbar.neofire-search-expanded,
    #all #topbar.neofire-search-closing {
        position: relative;
    }

    #all #topbar.neofire-search-expanded #core-search,
    #all #topbar.neofire-search-closing #core-search {
        position: absolute;
        inset: 0;
        z-index: 40;
        display: flex;
        align-items: center;
        margin: 0;
        padding: 0 15px;
        box-sizing: border-box;
        background: var(--main-background, #ffffff);
    }

    #all #topbar.neofire-search-expanded #core-search .neofire-search-field,
    #all #topbar.neofire-search-closing #core-search .neofire-search-field {
        flex: 1 1 auto;
    }
}

html.neofire-designer-vp-phone #all #topbar {
    position: relative;
}

html.neofire-designer-vp-phone #all #topbar.neofire-search-expanded > .cat-btn,
html.neofire-designer-vp-phone #all #topbar.neofire-search-expanded > #logo,
html.neofire-designer-vp-phone #all #topbar.neofire-search-expanded > #floating-cart {
    display: none !important;
}

html.neofire-designer-vp-phone #all #topbar.neofire-search-closing {
    flex-wrap: nowrap;
}

html.neofire-designer-vp-phone #all #topbar.neofire-search-closing > .cat-btn,
html.neofire-designer-vp-phone #all #topbar.neofire-search-closing > #logo,
html.neofire-designer-vp-phone #all #topbar.neofire-search-closing > #floating-cart {
    visibility: hidden;
}

html.neofire-designer-vp-phone #all #topbar .neofire-search-field.open {
    width: 100%;
}

html.neofire-designer-vp-phone #all #topbar.neofire-search-expanded .neofire-search-close {
    display: inline-flex;
}

html.neofire-designer-vp-phone #all #topbar.neofire-search-expanded #core-search,
html.neofire-designer-vp-phone #all #topbar.neofire-search-closing #core-search {
    position: absolute;
    inset: 0;
    z-index: 40;
    display: flex;
    align-items: center;
    margin: 0;
    padding: 0 15px;
    box-sizing: border-box;
    background: var(--main-background, #ffffff);
}

html.neofire-designer-vp-phone #all #topbar.neofire-search-expanded #core-search .neofire-search-field,
html.neofire-designer-vp-phone #all #topbar.neofire-search-closing #core-search .neofire-search-field {
    flex: 1 1 auto;
}

#all .cat-box {
    margin-left: -320px;
    width: 320px;
    height: 100%;
    background: #fff;
    overflow: hidden;
}

#all #catStack {
    height: calc(100% - 50px);
}

#all .cat-item {
    padding: 12px;
    border-bottom: 1px solid #eee;
    display: flex;
    justify-content: space-between;
    cursor: pointer;
}

#all .back-btn {
    padding: 12px;
    font-weight: bold;
    border-bottom: 1px solid #ddd;
    cursor: pointer;
    background: #fafafa;
}

:root {
    --neofire-nav-dauer: .28s;
    --neofire-nav-kurve: cubic-bezier(.22, .61, .36, 1);
}

#all a.neofire-link,
#all [data-nav],
#all .cat-btn {
    cursor: pointer;
}

#all .neofire-lay-navlink,
#all .cat-btn {
    position: relative;
}

#all [data-neofire-lay-region="header"] .neofire-lay-navlink::after,
#all [data-neofire-lay-region="menu"] .neofire-lay-navlink::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -3px;
    height: 2px;
    background: currentColor;
    opacity: 1;
    transform: scaleX(0);
    transform-origin: 100% 50%;
    transition: transform var(--neofire-nav-dauer) var(--neofire-nav-kurve),
                opacity   var(--neofire-nav-dauer) var(--neofire-nav-kurve);
    pointer-events: none;
}

#all [data-neofire-lay-region="header"] .neofire-lay-navlink:hover::after,
#all [data-neofire-lay-region="header"] .neofire-lay-navlink:focus-visible::after,
#all [data-neofire-lay-region="menu"] .neofire-lay-navlink:hover::after,
#all [data-neofire-lay-region="menu"] .neofire-lay-navlink:focus-visible::after {
    transform: scaleX(1);
    transform-origin: 0 50%;
}

#all [data-neofire-lay-region="header"] .neofire-lay-navlink.is-current,
#all [data-neofire-lay-region="header"] .neofire-lay-navlink.is-inpath,
#all [data-neofire-lay-region="menu"] .neofire-lay-navlink.is-current,
#all [data-neofire-lay-region="menu"] .neofire-lay-navlink.is-inpath {
    text-decoration: none;
}

#all [data-neofire-lay-region="header"] .neofire-lay-navlink.is-current::after,
#all [data-neofire-lay-region="header"] .neofire-lay-navlink.is-inpath::after,
#all [data-neofire-lay-region="menu"] .neofire-lay-navlink.is-current::after,
#all [data-neofire-lay-region="menu"] .neofire-lay-navlink.is-inpath::after {
    opacity: .55;
    transform: scaleX(1);
    transform-origin: 0 50%;
}

#all [data-neofire-lay-region="header"] .neofire-lay-navlink.is-current:hover::after,
#all [data-neofire-lay-region="header"] .neofire-lay-navlink.is-inpath:hover::after,
#all [data-neofire-lay-region="menu"] .neofire-lay-navlink.is-current:hover::after,
#all [data-neofire-lay-region="menu"] .neofire-lay-navlink.is-inpath:hover::after {
    opacity: 1;
}

#all .cat-item {
    transition: transform var(--neofire-nav-dauer) var(--neofire-nav-kurve),
                background-color var(--neofire-nav-dauer) var(--neofire-nav-kurve);
}

#all .cat-item:hover {
    transform: translateX(5px);
}

#all .back-btn {
    transition: transform var(--neofire-nav-dauer) var(--neofire-nav-kurve);
}

#all .back-btn:hover {
    transform: translateX(5px);
}

@media (prefers-reduced-motion: reduce) {
    #all [data-neofire-lay-region="header"] .neofire-lay-navlink::after,
    #all [data-neofire-lay-region="menu"] .neofire-lay-navlink::after {
        transform: scaleX(1);
        transform-origin: 0 50%;
        opacity: 0;
        transition: opacity .12s ease;
    }

    #all [data-neofire-lay-region="header"] .neofire-lay-navlink:hover::after,
    #all [data-neofire-lay-region="header"] .neofire-lay-navlink:focus-visible::after,
    #all [data-neofire-lay-region="menu"] .neofire-lay-navlink:hover::after,
    #all [data-neofire-lay-region="menu"] .neofire-lay-navlink:focus-visible::after {
        opacity: 1;
    }

    #all [data-neofire-lay-region="header"] .neofire-lay-navlink.is-current::after,
    #all [data-neofire-lay-region="header"] .neofire-lay-navlink.is-inpath::after,
    #all [data-neofire-lay-region="menu"] .neofire-lay-navlink.is-current::after,
    #all [data-neofire-lay-region="menu"] .neofire-lay-navlink.is-inpath::after {
        opacity: .55;
    }

    #all [data-neofire-lay-region="header"] .neofire-lay-navlink.is-current:hover::after,
    #all [data-neofire-lay-region="header"] .neofire-lay-navlink.is-inpath:hover::after,
    #all [data-neofire-lay-region="menu"] .neofire-lay-navlink.is-current:hover::after,
    #all [data-neofire-lay-region="menu"] .neofire-lay-navlink.is-inpath:hover::after {
        opacity: 1;
    }

    #all .cat-item,
    #all .back-btn {
        transition: none;
    }

    #all .cat-item:hover,
    #all .back-btn:hover {
        transform: none;
    }
}

html,
body {
    margin: 0;
}

body {
}

#all .site-footer {
    margin-top: auto;
    padding: 56px 24px 34px;
    border-top: none;
    background: linear-gradient(180deg, #232227, #19181c);
    font-size: 14px;
    color: #c9c9cf;
}

#all .footer-center {
    flex: 0 1 auto;
    padding-top: 0;
    text-align: inherit;
    color: #8b8b93;
    font-size: 12.5px;
    letter-spacing: .01em;
}

#all .footer-inner {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    column-gap: 24px;
    row-gap: 12px;
}

#all .page_links {
    flex: 1 1 100%;
    columns: 4 190px;
    column-gap: 40px;
    margin: 0 0 26px;
    padding-bottom: 26px;
    border-bottom: 1px dashed #3a3a3a;
}

#all .checkout-grid textarea {
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 8px;
    font-size: 14px;
    box-sizing: border-box;
    outline: none;
    resize: vertical;
    min-height: 140px;
}

#all #requestBtn {
    margin-top: 15px;
    width: 100%;
    padding: 15px;
    background: black;
    color: white;
    border: none;
    font-size: 18px;
    cursor: pointer;
    border-radius: 8px;
}

#all .page_links a {
    display: block;
    color: #c9c9cf;
    text-decoration: none;
    font-size: 13.5px;
    font-weight: 400;
    letter-spacing: .01em;
    line-height: 1.45;
    padding: 3px 0;
    margin: 0;
    background: none !important;
    border: none !important;
    border-radius: 0 !important;
    width: auto !important;
    text-align: inherit;
    break-inside: avoid;
    transition: color .15s ease;
}

#all .page_links a:hover {
    color: #ffffff;
    text-decoration: none;
}

#all .page_links a + a::before {
    content: none;
}

#all .footer-bottom {
    flex: 1 1 auto;
    font-size: 13px;
    color: #8b8b93;
    text-align: inherit;
    margin-top: 0;
}

@media (max-width: 750px) {
    #all .page_links {
        columns: 1 !important;
        column-gap: 0;
        text-align: center;
    }

    #all .page_links a {
        text-align: center;
        padding: 5px 0;
    }

    #all .footer-bottom,
    #all .footer-center {
        text-align: center;
        margin-left: 0;
        flex-basis: 100%;
    }
}

#all .footer-inner:has(> .neofire-lay-row > .neofire-lay-col.neofire-region-frame) {
    max-width: none;
    margin: 0;
    padding: 0;
}

#all .site-footer:has(.neofire-region-frame),
#all .site-footer:has(> .footer-inner[data-neofire-lay-region="footer"]) {
    background: none !important;
    padding: 0 !important;
    color: inherit;
}

#all .neofire-lay-col.neofire-region-frame,
#all .neofire-lay-col.neofire-region-inner {
    padding: 0;
}

#all .neofire-lay-col.neofire-region-frame,
#all .neofire-lay-col.neofire-region-inner {
    border-radius: 0;
}

#all .neofire-attribution {
    text-align: center;
}

#all .neofire-attribution a,
#all .neofire-attribution a:hover,
#all .neofire-attribution a:focus,
#all .neofire-attribution a:visited {
    color: inherit !important;
    text-decoration: none !important;
}

#all [data-neofire-lay-region="footer"] h1,
#all [data-neofire-lay-region="footer"] h2,
#all [data-neofire-lay-region="footer"] h3,
#all [data-neofire-lay-region="footer"] h4,
#all [data-neofire-lay-region="footer"] p,
#all [data-neofire-lay-region="footer"] ul,
#all [data-neofire-lay-region="footer"] ol {
    margin: 0;
    padding: 0;
}

#all [data-neofire-lay-region="footer"] ul,
#all [data-neofire-lay-region="footer"] ol {
    list-style: none;
}

#all [data-neofire-lay-region="footer"] .neofire-lay-navlink {
    position: relative;
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    transition: color .16s ease;
}

#all [data-neofire-lay-region="footer"] .neofire-lay-navlink::before {
    content: "›";
    color: var(--neofire-navmark, #555555);
    font-weight: 700;
    position: absolute;
    left: -13px;
    top: 50%;
    opacity: 0;
    transform: translate(-4px, -50%);
    transition: opacity .16s ease, transform .16s ease;
    pointer-events: none;
}

#all [data-neofire-lay-region="footer"] .neofire-lay-el:hover .neofire-lay-navlink,
#all [data-neofire-lay-region="footer"] .neofire-lay-navlink:focus-visible {
    color: #ffffff;
}

#all [data-neofire-lay-region="footer"] .neofire-lay-el:hover .neofire-lay-navlink::before,
#all [data-neofire-lay-region="footer"] .neofire-lay-navlink:focus-visible::before {
    opacity: 1;
    transform: translate(0, -50%);
}

#all [data-neofire-lay-region="footer"] .neofire-lay-navlink.is-current {
    color: #ffffff;
}

#all [data-neofire-lay-region="footer"] .neofire-lay-navlink.is-current::before {
    opacity: 1;
    transform: translate(0, -50%);
}

#all [data-neofire-lay-region="footer"] .footer-phone {
    display: inline-block;
    font-size: 23px;
    font-weight: 700;
    letter-spacing: .01em;
    line-height: 1.15;
    color: #ffffff;
    text-decoration: none;
    transition: color .16s ease;
}

#all [data-neofire-lay-region="footer"] .footer-phone:hover {
    color: #189eff;
}

#all [data-neofire-lay-region="footer"] .footer-hotline-hours {
    font-size: 13.5px;
    font-weight: 600;
    color: #d9d9df;
}

#all [data-neofire-lay-region="footer"] .footer-hotline-note {
    font-size: 12.5px;
    color: #8b8b93;
}

#all [data-neofire-lay-region="footer"] .footer-claim {
    font-size: 13px;
    line-height: 1.55;
    color: #a7a7af;
    max-width: 26ch;
}

#all [data-neofire-lay-region="footer"] .footer-contact-text {
    font-size: 13.5px;
    line-height: 1.6;
    color: #b9b9c0;
    max-width: 30ch;
}

#all [data-neofire-lay-region="footer"] .footer-contact-brand {
    font-size: 14px;
    font-weight: 600;
    color: #f3f3f6;
}

#all [data-neofire-lay-region="footer"] .footer-bottombar {
    border-top: 1px solid rgba(255,255,255,.09);
    display: flex;
    flex-direction: column;
    align-items: center;
}

#all [data-neofire-lay-region="footer"] .footer-bottombar .footer-bottom,
#all [data-neofire-lay-region="footer"] .footer-bottombar .footer-center {
    flex: 0 0 auto;
}

@media (max-width: 750px) {
    #all [data-neofire-lay-region="footer"] .neofire-lay-navlink::before {
        display: none;
    }

    #all [data-neofire-lay-region="footer"] .neofire-lay-el > a,
    #all [data-neofire-lay-region="footer"] .neofire-lay-navlink {
        display: block;
    }

    #all [data-neofire-lay-region="footer"] h1,
    #all [data-neofire-lay-region="footer"] h2,
    #all [data-neofire-lay-region="footer"] h3,
    #all [data-neofire-lay-region="footer"] h4 {
        max-width: 100%;
        box-sizing: border-box;
    }

    #all [data-neofire-lay-region="footer"] .neofire-facc > .neofire-lay-el:not(.neofire-facc-head) {
        display: none !important;
    }

    #all [data-neofire-lay-region="footer"] .neofire-facc.is-open > .neofire-lay-el {
        display: block !important;
    }

    #all [data-neofire-lay-region="footer"] .neofire-facc-head {
        cursor: pointer;
        position: relative;
        user-select: none;
    }

    #all [data-neofire-lay-region="footer"] .neofire-facc-head::after {
        content: '';
        position: absolute;
        right: 4px;
        top: 50%;
        width: 8px;
        height: 8px;
        margin-top: -6px;
        border-right: 2px solid currentColor;
        border-bottom: 2px solid currentColor;
        transform: rotate(45deg);
        opacity: .6;
        transition: transform .18s ease;
    }

    #all [data-neofire-lay-region="footer"] .neofire-facc.is-open > .neofire-facc-head::after {
        transform: rotate(-135deg);
        margin-top: -2px;
    }

    #all [data-neofire-lay-region="footer"] .neofire-facc:not(.is-open) > .neofire-facc-head {
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
    }

    #all [data-neofire-lay-region="footer"] .neofire-facc:not(.is-open) > .neofire-facc-head > * {
        margin-top: 0;
        margin-bottom: 0;
    }

    #all [data-neofire-lay-region="footer"] .neofire-facc {
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    #all [data-neofire-lay-region="footer"] .footer-claim,
    #all [data-neofire-lay-region="footer"] .footer-contact-text {
        max-width: none;
    }
}

@media (max-width: 750px) {
    #all [data-neofire-lay-region="header"] > .neofire-lay-row {
        flex-wrap: nowrap !important;
        align-items: center;
    }

    #all [data-neofire-lay-region="header"] > .neofire-lay-row > .neofire-lay-col {
        min-width: 0 !important;
    }

    #all [data-neofire-lay-region="header"] img {
        max-width: 100%;
        width: auto;
        height: auto;
        max-height: 34px;
        object-fit: contain;
    }
}

html.neofire-designer-vp-phone #all [data-neofire-lay-region="header"] > .neofire-lay-row {
    flex-wrap: nowrap !important;
    align-items: center;
}

html.neofire-designer-vp-phone #all [data-neofire-lay-region="header"] > .neofire-lay-row > .neofire-lay-col {
    min-width: 0 !important;
}

html.neofire-designer-vp-phone #all [data-neofire-lay-region="header"] img {
    max-width: 100%;
    width: auto;
    height: auto;
    max-height: 34px;
    object-fit: contain;
}

@media (max-width: 750px) {
    #all:not(.neofire-dev-served) .neofire-lay-row > .neofire-lay-col {
        flex: 1 1 100% !important;
        max-width: 100% !important;
    }

    #all [data-neofire-lay-region="header"] > .neofire-lay-row > .neofire-lay-col {
        flex: 0 1 auto !important;
        max-width: none !important;
    }
}

html.neofire-designer-vp-phone #all:not(.neofire-dev-served) .neofire-lay-row > .neofire-lay-col {
    flex: 1 1 100% !important;
    max-width: 100% !important;
}

html.neofire-designer-vp-phone #all [data-neofire-lay-region="header"] > .neofire-lay-row > .neofire-lay-col {
    flex: 0 1 auto !important;
    max-width: none !important;
}

#all .neofire-lay-col {
    box-sizing: border-box;
}

#all .neofire-lay-col--fixw {
    box-sizing: content-box;
}

#all [data-neofire-lay-region] .neofire-lay-el[data-lay-type="logo"],
#all [data-neofire-lay-region] .neofire-lay-el[data-lay-type="logo"] > a {
    display: flex !important;
    align-items: center;
}

#all [data-neofire-lay-region] .neofire-lay-el[data-lay-type="logo"] > a {
    height: 100%;
}

#all [data-neofire-lay-region] .neofire-lay-col[data-lay-align="center"] .neofire-lay-el[data-lay-type="logo"] {
    justify-content: center;
}

#all [data-neofire-lay-region] .neofire-lay-col[data-lay-align="right"] .neofire-lay-el[data-lay-type="logo"] {
    justify-content: flex-end;
}

@media (min-width: 1024px) {
    html:not(.neofire-designer-editing) #all .neofire-hide-desktop {
        display: none !important;
    }
}

@media (min-width: 751px) and (max-width: 1023px) {
    html:not(.neofire-designer-editing) #all .neofire-hide-tablet {
        display: none !important;
    }
}

@media (max-width: 750px) {
    html:not(.neofire-designer-editing) #all .neofire-hide-phone {
        display: none !important;
    }
}

@media (min-width: 1024px) {
    html:not(.neofire-designer-editing) #all .neofire-lay-row:not(:has(> .neofire-lay-col:not(.neofire-hide-desktop))) {
        display: none !important;
    }
}

@media (min-width: 751px) and (max-width: 1023px) {
    html:not(.neofire-designer-editing) #all .neofire-lay-row:not(:has(> .neofire-lay-col:not(.neofire-hide-tablet))) {
        display: none !important;
    }
}

@media (max-width: 750px) {
    html:not(.neofire-designer-editing) #all .neofire-lay-row:not(:has(> .neofire-lay-col:not(.neofire-hide-phone))) {
        display: none !important;
    }
}

html.neofire-designer-editing.neofire-designer-vp-desktop #all .neofire-hide-desktop,
html.neofire-designer-editing.neofire-designer-vp-pad #all .neofire-hide-tablet,
html.neofire-designer-editing.neofire-designer-vp-phone #all .neofire-hide-phone {
    position: relative;
    overflow: hidden;
    min-height: 34px !important;
    min-width: 34px !important;
    background-color: rgba(245, 158, 11, .10);
    border-radius: 4px;
}

html.neofire-designer-editing #all [data-neofire-lay-region="header"] .neofire-region-inner > .neofire-lay-row > .neofire-lay-col.neofire-hide-desktop,
html.neofire-designer-editing #all [data-neofire-lay-region="header"] .neofire-region-inner > .neofire-lay-row > .neofire-lay-col.neofire-hide-tablet,
html.neofire-designer-editing #all [data-neofire-lay-region="header"] .neofire-region-inner > .neofire-lay-row > .neofire-lay-col.neofire-hide-phone {
    min-width: 34px !important;
}

html.neofire-designer-editing.neofire-designer-vp-desktop #all .neofire-hide-desktop > *:not(.neofire-designer-chrome),
html.neofire-designer-editing.neofire-designer-vp-pad #all .neofire-hide-tablet > *:not(.neofire-designer-chrome),
html.neofire-designer-editing.neofire-designer-vp-phone #all .neofire-hide-phone > *:not(.neofire-designer-chrome) {
    opacity: .12;
}

html.neofire-designer-editing.neofire-designer-vp-desktop #all .neofire-lay-col.neofire-hide-desktop *:not(.neofire-designer-chrome):not(.neofire-designer-chrome *),
html.neofire-designer-editing.neofire-designer-vp-pad #all .neofire-lay-col.neofire-hide-tablet *:not(.neofire-designer-chrome):not(.neofire-designer-chrome *),
html.neofire-designer-editing.neofire-designer-vp-phone #all .neofire-lay-col.neofire-hide-phone *:not(.neofire-designer-chrome):not(.neofire-designer-chrome *) {
    pointer-events: none !important;
}

html.neofire-designer-editing.neofire-designer-vp-phone #all .neofire-mega[data-mobile="off"] *:not(.neofire-designer-chrome):not(.neofire-designer-chrome *) {
    pointer-events: none !important;
}

html.neofire-designer-editing.neofire-designer-vp-phone #all .neofire-mega[data-mobile="off"] * .neofire-designer-chrome,
html.neofire-designer-editing.neofire-designer-vp-phone #all .neofire-mega[data-mobile="off"] * .neofire-designer-chrome * {
    pointer-events: none !important;
}

html.neofire-designer-editing.neofire-designer-vp-desktop #all .neofire-lay-col.neofire-hide-desktop * .neofire-designer-chrome,
html.neofire-designer-editing.neofire-designer-vp-desktop #all .neofire-lay-col.neofire-hide-desktop * .neofire-designer-chrome *,
html.neofire-designer-editing.neofire-designer-vp-pad #all .neofire-lay-col.neofire-hide-tablet * .neofire-designer-chrome,
html.neofire-designer-editing.neofire-designer-vp-pad #all .neofire-lay-col.neofire-hide-tablet * .neofire-designer-chrome *,
html.neofire-designer-editing.neofire-designer-vp-phone #all .neofire-lay-col.neofire-hide-phone * .neofire-designer-chrome,
html.neofire-designer-editing.neofire-designer-vp-phone #all .neofire-lay-col.neofire-hide-phone * .neofire-designer-chrome * {
    pointer-events: none !important;
}

html.neofire-designer-editing.neofire-designer-vp-desktop #all .neofire-hide-desktop::after,
html.neofire-designer-editing.neofire-designer-vp-pad #all .neofire-hide-tablet::after,
html.neofire-designer-editing.neofire-designer-vp-phone #all .neofire-hide-phone::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2147483002;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 22px 22px;
    pointer-events: none;
}

html.neofire-designer-editing.neofire-designer-vp-desktop #all .neofire-hide-desktop::after {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff9800' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><rect x='2.5' y='4' width='19' height='12.5' rx='1.8'/><path d='M9 20.2h6M12 16.5v3.7'/><path d='M3.5 20.5 L20.5 3.5' stroke-width='2.1'/></svg>");
}

html.neofire-designer-editing.neofire-designer-vp-pad #all .neofire-hide-tablet::after {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff9800' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><rect x='4.5' y='2.5' width='15' height='19' rx='2'/><path d='M11 18.6h2'/><path d='M3.5 20.5 L20.5 3.5' stroke-width='2.1'/></svg>");
}

html.neofire-designer-editing.neofire-designer-vp-phone #all .neofire-hide-phone::after {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff9800' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><rect x='7.5' y='2.5' width='9' height='19' rx='1.8'/><path d='M11 18.6h2'/><path d='M3.5 20.5 L20.5 3.5' stroke-width='2.1'/></svg>");
}

html.neofire-designer-editing.neofire-designer-vp-desktop #all .neofire-hide-desktop .neofire-hide-desktop,
html.neofire-designer-editing.neofire-designer-vp-pad #all .neofire-hide-tablet .neofire-hide-tablet,
html.neofire-designer-editing.neofire-designer-vp-phone #all .neofire-hide-phone .neofire-hide-phone {
    background: none;
}

html.neofire-designer-editing.neofire-designer-vp-desktop #all .neofire-hide-desktop .neofire-hide-desktop > *,
html.neofire-designer-editing.neofire-designer-vp-pad #all .neofire-hide-tablet .neofire-hide-tablet > *,
html.neofire-designer-editing.neofire-designer-vp-phone #all .neofire-hide-phone .neofire-hide-phone > * {
    opacity: 1;
}

html.neofire-designer-editing.neofire-designer-vp-desktop #all .neofire-hide-desktop .neofire-hide-desktop::after,
html.neofire-designer-editing.neofire-designer-vp-pad #all .neofire-hide-tablet .neofire-hide-tablet::after,
html.neofire-designer-editing.neofire-designer-vp-phone #all .neofire-hide-phone .neofire-hide-phone::after {
    display: none;
}

#all .neofire-lay-manulogo img,
#all .manuimg img {
    max-width: 100%;
    height: auto;
    display: block;
}

#all [data-neofire-lay-region="header"] > .neofire-lay-row > .neofire-lay-col {
    display: flex;
    align-items: center;
}

#all [data-neofire-lay-region="header"] .neofire-lay-el {
    display: flex;
    align-items: center;
}

#all [data-neofire-lay-region="header"] a.logo {
    display: flex;
    align-items: center;
}

#all [data-neofire-lay-region="header"] img.neofire-u109 {
    display: block;
}

#all #topbar:has(> .neofire-lay-row > .neofire-lay-col.neofire-region-frame) {
    max-width: none;
    margin: 0;
    padding: 0;
}

#all [data-neofire-lay-region="header"] > .neofire-lay-row > .neofire-lay-col.neofire-region-frame {
    flex: 1 1 100% !important;
    max-width: none !important;
}

#all [data-neofire-lay-region="header"] .neofire-region-frame > .neofire-lay-row {
    flex: 1 1 100%;
    width: 100%;
    align-items: center;
}

#all [data-neofire-lay-region="header"] .neofire-lay-col.neofire-region-frame {
    background: var(--main-background, #ffffff);
}

#all [data-neofire-lay-region="header"] .neofire-region-inner > .neofire-lay-row {
    flex: 1 1 100%;
    width: 100%;
    align-items: center;
    min-height: 48px;
}

#all [data-neofire-lay-region="header"] .neofire-region-inner > .neofire-lay-row > .neofire-lay-col {
    flex: 0 0 auto;
    align-self: center;
}

#all [data-neofire-lay-region="header"] .neofire-region-inner > .neofire-lay-row > .neofire-lay-col:has(#core-search) {
    flex: 1 1 auto;
}

#all [data-neofire-lay-region="header"] .neofire-region-inner > .neofire-lay-row > .neofire-lay-col {
    display: flex;
    align-items: center;
}

#all .neofire-lay-row[data-lay-valign="stretch"] > .neofire-lay-col {
    align-self: stretch;
}

#all .neofire-lay-row[data-lay-valign="top"] > .neofire-lay-col {
    align-self: flex-start;
}

#all .neofire-lay-row[data-lay-valign="middle"] > .neofire-lay-col {
    align-self: center;
}

#all .neofire-lay-row[data-lay-valign="bottom"] > .neofire-lay-col {
    align-self: flex-end;
}

@media (max-width: 750px) {
    #all [data-neofire-lay-region="header"] .neofire-region-inner > .neofire-lay-row {
        flex-wrap: nowrap !important;
        align-items: center;
    }

    #all [data-neofire-lay-region="header"] .neofire-region-inner > .neofire-lay-row > .neofire-lay-col:not(.neofire-lay-col--pct) {
        flex: 0 1 auto !important;
        max-width: none !important;
        min-width: 0 !important;
    }

    #all [data-neofire-lay-region="header"] .neofire-region-inner > .neofire-lay-row > .neofire-lay-col.neofire-lay-col--pct {
        min-width: 0 !important;
    }
}

html.neofire-designer-vp-phone #all [data-neofire-lay-region="header"] .neofire-region-inner > .neofire-lay-row {
    flex-wrap: nowrap !important;
    align-items: center;
}

html.neofire-designer-vp-phone #all [data-neofire-lay-region="header"] .neofire-region-inner > .neofire-lay-row > .neofire-lay-col:not(.neofire-lay-col--pct) {
    flex: 0 1 auto !important;
    max-width: none !important;
    min-width: 0 !important;
}

html.neofire-designer-vp-phone #all [data-neofire-lay-region="header"] .neofire-region-inner > .neofire-lay-row > .neofire-lay-col.neofire-lay-col--pct {
    min-width: 0 !important;
}

#all .neofire-region-frame > .neofire-lay-row {
    width: 100%;
}

#all .neofire-region-inner #content {
    max-width: none;
    margin-left: 0;
    margin-right: 0;
}

#all .neofire-attribution {
    margin: 0;
    width: 100%;
    box-sizing: border-box;
    padding-top: 0;
    border-top: none;
    text-align: center;
    font-size: 12px;
    background: transparent !important;
}

#all .neofire-attribution a {
    color: #c9c9cf;
    text-decoration: none;
    font-weight: 600;
}

#all .neofire-attribution a:hover {
    color: #ffffff;
}

#neofire-attr-error {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483000 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(17,24,39,.94) !important;
    color: #fff !important;
    font: 600 19px/1.55 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    text-align: center !important;
    padding: 24px !important;
    margin: 0 !important;
}

#all .img-contain {
    object-fit: contain !important;
    max-width: 100% !important;
    max-height: 100% !important;
}

#all .img-cover {
    max-width: 100%;
    min-height: 100%;
    width: 100%;
    object-fit: cover;
}

#all .input-error {
    border: 2px solid #dc3545 !important;
    background: #fff5f5 !important;
}

#all #agb_wrapper.input-error {
    border: 2px solid #dc3545;
    background: #fff5f5;
    border-radius: 8px;
    padding: 10px;
}

#all #floating-cart {
    width: 100%;
}

#all .nopointer {
    pointer-events: none;
}

#all #open-cart svg,
#all #open-cart svg * {
    pointer-events: none;
}

#all button span {
    font-size: 20px;
    color: var(--main-largebutton-color);
}

#headercontent {
    height: 80px;
}

#all .cart-icon {
    position: relative;
    float: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: auto;
    min-width: 40px;
    min-height: 40px;
    padding: 0;
    color: var(--header-color);
    cursor: pointer;
    font-size: 24px;
    box-sizing: border-box;
}

#all .cart-icon > svg {
    width: 60%;
    height: 60%;
    max-width: 100%;
    max-height: 100%;
}

#all .cart-icon > span {
    position: absolute;
    pointer-events: none;
    top: 2px;
    right: 2px;
    z-index: 1;
    background: var(--neofire-badge-bg, #e53935);
    color: var(--neofire-badge-color, #fff);
    width: 18px;
    height: 18px;
    border-radius: 50%;
    font-size: 11px;
    display: flex;
    align-items: center;
    justify-content: center;
}

#all #cart-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.5);
    opacity: 0;
    visibility: hidden;
    transition: .3s;
    z-index: 9998;
}

#all #cart-overlay.open {
    opacity: 1;
    visibility: visible;
}

#all .cart-content {
    position: fixed;
    width: min-content;
    top: 0;
    right: -500px;
    bottom: 0;
    height: auto;
    background: #fff;
    transition: right .3s ease;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    overflow: auto;
    box-shadow: -5px 0 20px rgba(0,0,0,.2);
    z-index: 99999;
}

#all .cart-content.open {
    right: 0;
}

#all .cart-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px;
    border-bottom: 1px solid #eee;
    flex-shrink: 0;
    box-sizing: border-box;
}

#all .cart-header h3 {
    margin: 0;
    font-size: 26px;
    font-weight: bold;
}

#all #close-cart {
    color: #000;
    border: none;
    background: none;
    font-size: 28px;
    cursor: pointer;
}

#all .flatpickr-day.today:hover,
#all .flatpickr-day.today:focus {
    color: #fff !important;
}

#all .flatpickr-day {
    margin-bottom: 10px !important;
    border-radius: 4px;
}

#all .nextMonthDay {
    opacity: 0.2;
}

#all .prevMonthDay {
    opacity: 0.2;
}

#all .cart-body {
    padding: 0 20px 20px;
}

#all #cart-body {
    padding: 0 20px 0px;
}

#all .cart-pulse {
    animation: pulse .4s;
}

#all .property-hidden {
    display: none;
}

#all .calendar-day-btn,
#all .group-calendar-day-btn,
#all .group-calendar-slot-btn,
#all .shipping-calendar-day-btn,
#all .shipping-calendar-slot-btn {
    margin: 3px;
    font-size: 16px;
    padding: 8px;
    border: 1px solid #ddd;
    background: #fff;
    color: #000;
    border-radius: 4px;
    cursor: pointer;
}

#all .calendar-slot-btn {
    margin: 3px;
    font-size: 16px;
    padding: 8px;
    border: 1px solid #ddd;
    background: #fff;
    color: #000;
    border-radius: 4px;
    cursor: pointer;
}

#all .shipping-calendar-slots {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
}

#all .show-more-properties {
    width: 100%;
    padding: 10px;
    text-align: center;
    border: 1px dashed #81818157;
    background: #ffffff2e;
    border-radius: 8px;
    cursor: pointer;
    font-size: 14px;
    margin-top: 5px;
    transition: .2s;
}

#all .show-more-properties:hover {
    background: #ffffff57;
}

#all .gallery-main {
    width: 100%;
    max-width: 100%;
    height: 400px;
    overflow: hidden;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
}

#all .gallery-thumbs {
    display: flex;
    gap: 10px;
    margin: 0;
    flex-wrap: wrap;
}

#all .neofire-lay-col[data-lay-align="center"] .gallery-thumbs {
    justify-content: center;
}

#all .neofire-lay-col[data-lay-align="right"] .gallery-thumbs {
    justify-content: flex-end;
}

#all .gallery-thumb {
    width: 100px;
    height: 100px;
    overflow: hidden;
    cursor: pointer;
    transition: 0.2s;
    background: #fff;
}

#all .gallery-thumb.active {
    box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.22);
}

#all .gallery-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#all .buy-row {
    display: flex;
    gap: 15px;
    align-items: center;
}

#all .qty-box {
    flex: 0 0 auto;
}

#all #cartBtn {
    flex: 1;
}

#all .buy-box {
    display: flex;
    align-items: center;
    gap: 15px;
    margin: 20px 0;
}

#all .qty-box {
    display: inline-flex;
    width: max-content;
    max-width: none;
    align-items: center;
    border: 1px solid #e2e5ea;
    border-radius: 12px;
    overflow: hidden;
    background: var(--main-background, #fff);
}

#all #minus,
#all #plus {
    text-align: center;
    flex: 0 0 auto;
    width: 60px;
    height: 52px;
    border: none;
    background: var(--main-background, #fff);
    color: var(--main-color, #1a2736);
    cursor: pointer;
    font-size: 22px;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background .15s ease, color .15s ease;
}

#all #minus {
    border-right: 1px solid #dedede;
}

#all #plus {
    border-left: 1px solid #dedede;
}

#all #minus:hover,
#all #plus:hover {
    background: #dedede;
    color: #000;
}

#all #qty {
    min-width: 52px;
    text-align: center;
    font-size: 17px;
    font-weight: 700;
    color: var(--main-color, #1a2736);
}

#all #cartBtn {
    flex: 1;
    height: 54px;
    color: var(--main-largebutton-color);
    background: var(--main-largebutton-background);
    border: var(--main-largebutton-border);
    border-radius: 4px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    transition: .2s;
}

#all .neofire-lay-el.neofire-el-eigenflaeche #cartBtn,
#all .neofire-lay-el.neofire-el-eigenflaeche #cartBtn:hover {
    background: transparent;
    border: 0;
    border-radius: inherit;
}

#all .neofire-lay-el.neofire-el-eigenflaeche:has(#cartBtn) {
    overflow: hidden;
}

#all #quickview-modal .neofire-lay-el.neofire-el-eigenflaeche #cartBtn,
#all #quickview-modal .neofire-lay-el.neofire-el-eigenflaeche #cartBtn:hover {
    background: transparent;
    border: 0;
    border-radius: inherit;
}

#all #cartBtn:hover {
    color: var(--main-largebutton-hover-color);
    background: var(--main-largebutton-hover-background);
    border: var(--main-largebutton-hover-border);
}

#all #quickview-modal #cartBtn {
    flex: 1;
    height: 54px;
    color: var(--quickview-largebutton-color);
    background: var(--quickview-largebutton-background);
    border: var(--quickview-largebutton-border);
    border-radius: 10px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    transition: .2s;
}

#all #quickview-modal #cartBtn:hover {
    color: var(--quickview-largebutton-hover-color);
    background: var(--quickview-largebutton-hover-background);
    border: var(--quickview-largebutton-hover-border);
}

#all #cartBtn:active {
    transform: translateY(0);
}

#all .checkout-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

#all .product-layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    padding-top: 20px;
}

#all .quickview-window .product-layout {
    grid-template-columns: 0fr 1fr;
    gap: 20px;
    padding-top: 20px;
}

#all .product-image {
    height: 300px;
    background: #eeeeee;
}

#all .price-box {
    border: 1px solid #eee;
    border-radius: 12px;
    padding: 15px;
    background: #fafafa;
    font-size: 14px;
    margin-bottom: 15px;
}

#all .price-box .row {
    display: flex;
    justify-content: space-between;
    margin-bottom: 6px;
}

#all .price-box .total {
    font-size: 18px;
    font-weight: bold;
}

#all .checkout-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

#all .checkout-grid input {
    width: 100%;
    box-sizing: border-box;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 8px;
    font-size: 14px;
    outline: none;
}

#all #diff_shipping {
    width: 20px;
}

#all .full {
    grid-column: 1 / 3;
}

#all #payBtn {
    margin-top: 15px;
    width: 100%;
    padding: 15px;
    background: var(--neofire-paybtn-bg, #000);
    color: var(--neofire-paybtn-color, #fff);
    border: var(--neofire-paybtn-border, none);
    font-size: 18px;
    cursor: pointer;
    border-radius: 4px;
}

#all #payBtn:hover {
    background: var(--neofire-paybtn-hover-bg, var(--neofire-paybtn-bg, #000));
    color: var(--neofire-paybtn-hover-color, var(--neofire-paybtn-color, #fff));
    border: var(--neofire-paybtn-border, none);
}

#all #error {
    color: red;
    margin-top: 10px;
    font-size: 13px;
}

@media (max-width:850px) {
    #all .product-layout {
        grid-template-columns: 1fr;
    }

    #all .product-image {
        width: 100%;
        height: 250px;
    }

    #all .checkout-grid {
        grid-template-columns: 1fr 50%;
    }

    #all .full {
        grid-column: 1/3;
    }
}

#all .property-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 15px;
}

#all .property-tab {
    padding: 10px 14px;
    border: 1px solid #ddd;
    border-radius: 8px;
    cursor: pointer;
    background: #fff;
    transition: 0.2s;
    user-select: none;
}

#all .property-tab:hover {
    border-color: #000;
}

#all .property-tab.active {
    background: #000;
    color: #fff;
    border-color: #000;
}

#all .property-values {
    display: flex;
    flex-wrap: wrap;
    gap: 9px 2%;
    margin-top: 8px;
}

#all .property-values .active {
    color: var(--main-button-hover-color);
    border: var(--main-button-hover-border);
    background: var(--main-button-hover-background);
}

#all .property-option {
    background: var(--main-button-background);
    color: var(--main-button-color);
    border: var(--main-button-border);
    padding: 8px 12px;
    border-radius: 8px;
    cursor: pointer;
    user-select: none;
    width: 49%;
    box-sizing: border-box;
}

#all.darkmode .property-option,
#all.darkmode .property-option:hover,
#all.darkmode .property-option.active {
    border-color: #ffffff;
    color: #ffffff;
}

#all.darkmode .property-option.active {
    background: #ffffff;
    color: #000000;
}

#all .property-option:hover {
    background: var(--main-button-hover-background);
    color: var(--main-button-hover-color);
    border: var(--main-button-hover-border);
    padding: 8px 12px;
    border-radius: 8px;
    cursor: pointer;
    user-select: none;
    width: 49%;
    box-sizing: border-box;
}

#all #quickview-modal .property-option.active {
    background: var(--quickview-button-hover-background);
    color: var(--quickview-button-hover-color);
    border: var(--quickview-button-hover-border);
}

#all #quickview-modal .property-option .price {
    font-size: 12px;
    opacity: 0.8;
    margin-left: 5px;
}

#all #quickview-modal .property-option {
    background: var(--quickview-button-background);
    color: var(--quickview-button-color);
    border: var(--quickview-button-border);
    padding: 8px 12px;
    border-radius: 8px;
    cursor: pointer;
    user-select: none;
    width: 49%;
    box-sizing: border-box;
}

#all #quickview-modal .property-option:hover {
    background: var(--quickview-button-hover-background);
    color: var(--quickview-button-hover-color);
    border: var(--quickview-button-hover-border);
}

#all #quickview-modal .property-option.active {
    background: var(--quickview-button-hover-background);
    color: var(--quickview-button-hover-color);
    border: var(--quickview-button-hover-border);
}

#all #quickview-modal .property-option .price {
    font-size: 12px;
    opacity: 0.8;
    margin-left: 5px;
}

#all .input-error {
    border: 2px solid red !important;
    background: #fff5f5;
}

#all .description_long {
    line-height: 30px;
    font-size: 17px;
    flex: 1;
    padding: 0px 20px 20px 20px;
    max-width: 1205px;
    margin: 0 auto;
}

#all .description_long > *:first-child {
    margin-top: 0;
}

#all .cart-property-group {
    margin-top: 10px;
    border-radius: 4px;
    padding: 4px 8px 4px 8px;
}

#all details summary {
    list-style: none;
}

#all details summary::-webkit-details-marker {
    display: none;
}

#all details summary::before {
    content: "\203A";
    font-weight: 900;
    display: inline-block;
    width: 1em;
    height: 1em;
    line-height: 1em;
    text-align: center;
    margin-right: 5px;
    vertical-align: middle;
    transform-origin: 50% 50%;
    transition: transform .15s ease;
}

#all details[open] summary::before {
    transform: rotate(90deg);
}

#all #quickview-modal {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: none;
}

#all #quickview-modal.open {
    display: block;
}

#all .quickview-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,.5);
}

#all .large .quickview-window {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: min(1200px, 95vw);
    max-height: min(95vh);
    overflow: auto;
    background: #fff;
    border-radius: 20px;
    padding: 0px;
}

#all .small .quickview-window {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: min(600px, 95vw);
    max-height: min(95vh);
    overflow: auto;
    background: #fff;
    border-radius: 20px;
    padding: 0px;
}

#all .small .quickview-window .product-layout {
    grid-template-columns: 0fr 1fr;
    gap: 0px;
}

#all .large .quickview-window .product-layout {
    grid-template-columns: 1fr 1fr;
}

#all .breadcrumb {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

#all .breadcrumb p {
    margin: 0;
}

#all #quickview-close {
    position: absolute;
    right: 15px;
    top: 15px;
    width: 40px;
    height: 40px;
    border-radius: 100%;
    font-size: 29px;
    border: solid 1px #ccc;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding-left: 8px;
}

#all .large .quickview-window h1,
#all .small .quickview-window h1 {
    padding-right: 40px;
}

@keyframes pulse {
    0% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.4);
    }

    100% {
        transform: scale(1);
    }
}

#all .half-description {
    padding: 20px 0px 0px 0px;
}

@media (min-width: 750px) {
    #all .half {
        box-sizing: border-box;
        float: right;
        width: 50%;
    }

    #all .half-description {
        padding: 0px 0px 0px 20px;
    }

    #all .cart-content {
        width: 420px;
    }
}

@media (max-width: 750px) {
    #all .open.cart-content {
        width: 100%;
    }
}

#all #themebutton {
    box-sizing: border-box;
    width: 48%;
    margin-right: 1%;
    border: 1px solid #ccc;
    border-radius: 4px;
    padding: 6px;
    float: left;
}

#all #largeListingThemeButton {
    width: auto;
    margin: 4px 0;
    float: none;
}

.themeButton {
    all: unset;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    padding: 10px 16px;
    border: 1px solid #ccc;
    border-radius: 8px;
    font-size: 15px;
    cursor: pointer;
    color: var(--main-color);
    user-select: none;
    margin: 0;
    height: 44px;
    line-height: 1;
    min-width: 0;
}

.themeButton #themeIcon,
.themeButton #largeListingThemeIcon {
    flex: 0 0 auto;
    width: 22px;
    height: 22px;
    display: inline-flex;
    align-items: center;
}

.theme-buttons {
    display: flex;
    gap: 10px;
    margin-top: 8px;
}

.theme-buttons .themeButton {
    flex: 1 1 0;
    min-width: 0;
    margin: 0;
}

.themeButton:hover {
    background: rgba(0,0,0,0.03);
}

#all #largeListingThemeButton #largeListingThemeIcon:empty,
#all #themeButton #themeIcon:empty {
    display: none;
}

.themeButton svg {
    width: 20px;
    height: 20px;
    display: block;
}

#themeButton:hover {
    opacity: .7;
}

#all .switch {
    background: transparent;
    position: relative;
    display: inline-block;
    width: 48px;
    height: 28px;
    flex-shrink: 0;
    margin-right: 12px;
    width: 100%;
}

#all .switch input {
    opacity: 0;
    width: 0;
    height: 0;
    position: absolute;
}

#all .switch-slider {
    position: absolute;
    inset: 0;
    cursor: pointer;
    background: #d5d5d5;
    border-radius: 999px;
    transition: .25s;
}

#all .switch-slider:before {
    content: "";
    position: absolute;
    width: 22px;
    height: 22px;
    left: 3px;
    top: 3px;
    background: #fff;
    border-radius: 50%;
    transition: .25s;
    box-shadow: 0 2px 6px rgba(0,0,0,.25);
}

#all .switch input:checked + .switch-slider {
    background: #16c15d;
}

#all .switch input:checked + .switch-slider:before {
    transform: translateX(20px);
}

#all .switch {
    display: flex;
    align-items: center;
    gap: 16px;
    border: 2px solid #e8e8e8;
    border-radius: 14px;
    cursor: pointer;
    transition: .25s;
    margin: 12px 0;
}

#all .switch:hover {
    border-color: #000;
}

#all .shipping-method-radio {
    display: none;
}

#all .switch-slider {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: 2px solid #bbb;
    flex-shrink: 0;
    position: relative;
    transition: .25s;
}

#all .shipping-method-radio:checked + .switch-slider:after {
    transform: translate(-50%,-50%) scale(1);
}

#all .shipping-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    gap: 20px;
}

#all .shipping-text {
    flex: 1;
}

#all .shipping-title {
    font-size: 15px;
    font-weight: 600;
    color: #222;
}

#all .shipping-desc {
    margin-top: 4px;
    color: #777;
    font-size: 13px;
}

#all .shipping-price {
    font-size: 18px;
    font-weight: 700;
    white-space: nowrap;
}

#all .switch {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 0px;
    border: none;
    border-radius: 10px;
    cursor: pointer;
    margin-bottom: 10px;
    transition: .2s;
}

#all .switch:hover {
    border-color: #999;
}

#all .switch input {
    opacity: 0;
    width: 0;
    height: 0;
    position: absolute;
}

#all .switch-slider {
    position: relative;
    width: 36px;
    height: 20px;
    flex-shrink: 0;
    background: #e5e7eb;
    border: none;
    border-radius: 999px;
    transition: .25s;
}

#all .switch-slider::before {
    content: "";
    position: absolute;
    left: 2px;
    top: 2px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #fff;
    transition: .25s;
    box-shadow: 0 2px 5px rgba(0,0,0,.2);
}

#all .switch input:checked + .switch-slider {
    background: #22c55e;
}

#all .switch input:checked + .switch-slider::before {
    transform: translateX(16px);
}

#all .shipping-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    gap: 15px;
}

#all .shipping-text {
    flex: 1;
}

#all .shipping-desc {
    margin-top: 2px;
    color: #777;
    font-size: 12px;
}

#all .shipping-price {
    font-size: 18px;
    font-weight: bold;
    white-space: nowrap;
}

#all .shipping-content {
    display: flex;
    align-items: center;
    width: 100%;
}

#all .shipping-text {
    flex: 1;
    min-width: 0;
}

#all .calendar-slot-start,
#all .calendar-slot-end {
    padding-left: 45px;
}

#all .shipping-price {
    margin-left: auto;
    text-align: right;
    white-space: nowrap;
    font-size: 17px;
    font-weight: 700;
}

#all .property-option span {
    color: #cdcdcd;
}

#all .time-select {
    position: relative;
    width: 100%;
}

#all .time-icon {
    position: absolute;
    left: 16px;
    top: 50%;
    width: 22px;
    height: 22px;
    transform: translateY(-50%);
    pointer-events: none;
}

#all .flatpickr-day:hover {
    color: #fff !important;
    background: #000 !important;
}

#all .selected {
    color: #fff !important;
    background: #000 !important;
}

.calendar-time-row {
    display: flex;
    gap: 20px;
}

.calendar-time-col {
    flex: 1;
}

.calendar-time-col label {
    display: block;
    font-size: 14px;
    margin-bottom: 8px;
    font-weight: 600;
}

.calendar-slot-start,
.calendar-slot-end {
    width: 100%;
    height: 42px;
    border: 1px solid #ddd;
    border-radius: 4px;
    padding: 0 10px;
    font-size: 17px;
    font-weight: 600;
    background: #fff;
}

.calendar-available {
    background: #e1ffe3 !important;
    color: #000000 !important;
}

.calendar-closed {
    background: #ebebeb !important;
    color: #000000 !important;
}

.flatpickr-day {
    position: relative;
    z-index: 2;
}

.flatpickr-trans {
    opacity: 0.3;
}

.flatpickr-day.inRange {
    background: #000 !important;
    color: #ffffff !important;
    box-shadow: -20px 0 0 #000, 20px 0 0 #000;
    z-index: 1;
    border: none;
}

.flatpickr-day.startRange,
.flatpickr-day.endRange {
    z-index: 3;
}

.calendar-block-after {
    background: red !important;
    color: #fff !important;
}

.endRange {
    box-shadow: -20px 0 0 #000, 0px 0 0 #000 !important;
}

.inRange {
    box-shadow: -20px 0 0 #000, 0px 0 0 #000 !important;
}

.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover {
    color: rgba(57, 57, 57, 0.3);
    background: #ff000026 !important;
    border-color: transparent;
    cursor: default;
    pointer-events: none;
    cursor: not-allowed;
}

#all .flatpickr-day.startRange,
#all .flatpickr-day.endRange,
#all .flatpickr-day.selected.inRange,
#all .flatpickr-day.startRange.inRange,
#all .flatpickr-day.endRange.inRange,
#all .flatpickr-day.selected:focus,
#all .flatpickr-day.startRange:focus,
#all .flatpickr-day.endRange:focus,
#all .flatpickr-day.selected:hover,
#all .flatpickr-day.startRange:hover,
#all .flatpickr-day.endRange:hover,
#all .flatpickr-day.selected.prevMonthDay,
#all .flatpickr-day.startRange.prevMonthDay,
#all .flatpickr-day.endRange.prevMonthDay,
#all .flatpickr-day.selected.nextMonthDay,
#all .flatpickr-day.startRange.nextMonthDay,
#all .flatpickr-day.endRange.nextMonthDay {
    background: #000000;
    -webkit-box-shadow: none;
    box-shadow: none;
    color: #fff;
    border: none;
}

#all .flatpickr-day {
    margin-bottom: 10px !important;
    border-radius: 4px;
    border: none;
}

#all .flatpickr-day.startRange {
    box-shadow: none !important;
}

input.neofire-fill.neofire-filled {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2322c55e' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    background-size: 16px 16px;
    padding-right: 38px !important;
}

#all .neofire-toggle-input {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

#all .neofire-toggle {
    width: 36px;
    height: 20px;
    border-radius: 999px;
    background: #e5e7eb;
    position: relative;
    transition: .2s;
    flex: 0 0 auto;
    display: inline-block;
}

#all .neofire-toggle::after {
    content: '';
    position: absolute;
    top: 2px;
    left: 2px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 2px 5px rgba(0,0,0,.2);
    transition: .2s;
}

#all .neofire-toggle-input:checked + .neofire-toggle {
    background: #22c55e;
}

#all .neofire-toggle-input:checked + .neofire-toggle::after {
    transform: translateX(16px);
}

#all .neofire-toggle.neofire-toggle-error {
    box-shadow: 0 0 0 2px #fff, 0 0 0 4px #e11d48;
}

#all .input-error {
    border: 2px solid #fff !important;
    background: #fff !important;
    box-shadow: 0 0 0 2px #dc3545 !important;
}

#all select:not([multiple]):not([size]) {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236b7688' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 18px center;
    background-size: 14px 14px;
    padding-right: 42px !important;
}

#all .neofire-block {
    margin: 0 0 22px;
}

#all .neofire-block-text[data-neofire-block-align="center"] {
    text-align: center;
}

#all .neofire-block-text[data-neofire-block-align="right"] {
    text-align: right;
}

#all .neofire-block-text .neofire-block-text-body>*:last-child {
    margin-bottom: 0;
}

#all .neofire-block-image {
    margin: 0 0 22px;
}

#all .neofire-block-image[data-neofire-block-align="center"] {
    text-align: center;
}

#all .neofire-block-image[data-neofire-block-align="right"] {
    text-align: right;
}

#all .neofire-block-image img {
    max-width: 100%;
    width: var(--neofire-block-w,100%);
    height: auto;
    display: inline-block;
}

#all .neofire-block-caption {
    font-size: .9em;
    color: #666;
    margin-top: 6px;
}

#all .neofire-block-caption:empty {
    display: none;
}

#all .neofire-block-cols {
    display: grid;
    gap: var(--neofire-block-gap,24px);
    margin: 0 0 22px;
}

#all .neofire-block-cols-2 {
    grid-template-columns: repeat(2,1fr);
}

#all .neofire-block-cols-3 {
    grid-template-columns: repeat(3,1fr);
}

#all .neofire-block-cols-4 {
    grid-template-columns: repeat(4,1fr);
}

#all .neofire-block-cell {
    min-width: 0;
}

#all .neofire-block-cell>*:last-child {
    margin-bottom: 0;
}

@media (max-width:640px) {
    #all .neofire-block-cols {
        grid-template-columns: 1fr;
    }
}

#all .neofire-block-slider {
    position: relative;
    overflow: hidden;
    margin: 0 0 22px;
}

#all .neofire-block-slider-track {
    display: flex;
    transition: transform .4s ease;
}

#all .neofire-block-slide {
    flex: 0 0 100%;
    min-width: 0;
    margin: 0;
}

#all .neofire-block-slide img {
    width: 100%;
    height: auto;
    display: block;
}

#all .neofire-block-slider-prev,
#all .neofire-block-slider-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    border: 0;
    border-radius: 50%;
    background: rgba(0,0,0,.55);
    color: #fff;
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
    z-index: 2;
}

#all .neofire-block-slider-prev {
    left: 10px;
}

#all .neofire-block-slider-next {
    right: 10px;
}

#all .neofire-block-slider-dots {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 10px;
    display: flex;
    gap: 6px;
    justify-content: center;
    z-index: 2;
}

#all .neofire-block-slider-dots button {
    width: 8px;
    height: 8px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(255,255,255,.6);
    cursor: pointer;
}

#all .neofire-block-slider-dots button.active {
    background: #fff;
}

#all .grid > .card {
    animation: neofireCardIn .5s cubic-bezier(.2,.7,.2,1) both;
}

@keyframes neofireCardIn {
    from {
        opacity: 0;
        transform: translateY(22px);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

#all .grid > .card:nth-child(2) {
    animation-delay: .05s;
}

#all .grid > .card:nth-child(3) {
    animation-delay: .10s;
}

#all .grid > .card:nth-child(4) {
    animation-delay: .15s;
}

#all .grid > .card:nth-child(5) {
    animation-delay: .20s;
}

#all .grid > .card:nth-child(6) {
    animation-delay: .25s;
}

#all .grid > .card:nth-child(7) {
    animation-delay: .30s;
}

#all .grid > .card:nth-child(8) {
    animation-delay: .35s;
}

#all .grid > .card:nth-child(n+9) {
    animation-delay: .40s;
}

@media (prefers-reduced-motion:reduce) {
    #all .grid > .card {
        animation: none;
    }
}

#all .grid > .card {
    box-shadow: none !important;
}

#all .grid > .card:hover {
    box-shadow: none !important;
}

#all #open-cat {
    box-sizing: border-box;
    line-height: 1;
}

.neofire-link {
    text-decoration: none;
    color: inherit;
}

a.view-card {
    display: block;
}

.clear-both {
    clear: both;
}

.neofire-u1.neofire-u1 {
    padding: 12px;
}

.neofire-u2.neofire-u2 {
    scale: 1.2;
}

.neofire-u3.neofire-u3 {
    scale: 1.25;
}

.neofire-u4.neofire-u4 {
    display: none;
    position: fixed;
    left: 16px;
    right: 16px;
    bottom: 16px;
    max-width: 520px;
    margin: 0 auto;
    background: #fff;
    color: #222;
    border: 1px solid #e2e2e2;
    border-radius: 12px;
    box-shadow: 0 12px 34px rgba(0,0,0,.20);
    padding: 18px 20px;
    z-index: 9001;
    font-family: Arial,Helvetica,sans-serif;
    font-size: 14px;
    line-height: 1.5;
}

.neofire-u5.neofire-u5 {
    font-weight: 700;
    margin-bottom: 6px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.neofire-u6.neofire-u6 {
    color: #555;
}

.neofire-u7.neofire-u7 {
    color: #2563eb;
    text-decoration: underline;
}

.neofire-u8.neofire-u8 {
    display: flex;
    gap: 10px;
    margin-top: 14px;
    flex-wrap: wrap;
}

.neofire-u9.neofire-u9 {
    flex: 1;
    min-width: 150px;
    padding: 11px 14px;
    border: none;
    border-radius: 8px;
    background: #000;
    color: #fff;
    font-weight: 600;
    cursor: pointer;
}

.neofire-u10.neofire-u10 {
    flex: 1;
    min-width: 150px;
    padding: 11px 14px;
    border: 1px solid #ccc;
    border-radius: 8px;
    background: #fff;
    color: #222;
    font-weight: 600;
    cursor: pointer;
}

.neofire-u11.neofire-u11 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.neofire-u12.neofire-u12 {
    grid-column: 1 / 3;
    width: 100%;
    box-sizing: border-box;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 8px;
}

.neofire-u13.neofire-u13 {
    margin-top: 15px;
    font-size: 14px;
}

.neofire-u14.neofire-u14 {
    display: flex;
    align-items: center;
    gap: 16px;
    cursor: pointer;
    line-height: 1.35;
}

.neofire-u15.neofire-u15 {
    display: none;
    margin-top: 15px;
}

.neofire-u16.neofire-u16 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.neofire-u17.neofire-u17 {
    margin-top: 15px;
    font-size: 13px;
    color: #555;
    background: #f6f7f9;
    border-radius: 10px;
    padding: 12px 14px;
}

.neofire-u18.neofire-u18 {
    margin-top: 15px;
    font-size: 14px;
}

.neofire-u19.neofire-u19 {
    display: flex;
    align-items: center;
    gap: 16px;
    cursor: pointer;
    line-height: 1.35;
}

.neofire-u20.neofire-u20 {
    display: none;
    margin-top: 12px;
}

.neofire-u21.neofire-u21 {
    font-size: 12px;
    color: #888;
    margin-top: 6px;
}

.neofire-u22.neofire-u22 {
    margin-top: 15px;
}

.neofire-u23.neofire-u23 {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin-bottom: 12px;
}

.neofire-u24.neofire-u24 {
    color: red;
    text-align: center;
    margin-top: 10px;
    font-size: 22px;
}

.neofire-u25.neofire-u25 {
    margin-top: 10px;
    font-size: 12px;
    color: #888;
    text-align: center;
}

.neofire-u26.neofire-u26 {
    margin-top: 15px;
    font-size: 13px;
}

.neofire-u27.neofire-u27 {
    color: inherit;
    text-decoration: underline;
    cursor: pointer;
}

.neofire-u28.neofire-u28 {
    width: 100%;
    margin-top: 15px;
    padding: 15px;
    border: var(--neofire-paybtn-border, none);
    border-radius: 4px;
    background: var(--neofire-paybtn-bg, #000);
    color: var(--neofire-paybtn-color, #fff);
    cursor: pointer;
    font-size: 16px;
    font-weight: bold;
}

.neofire-u29.neofire-u29 {
    display: none;
}

.neofire-u30.neofire-u30 {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.5);
    z-index: 100001;
}

.neofire-u31.neofire-u31 {
    background: #fff;
    max-width: 720px;
    margin: 5vh auto;
    max-height: 88vh;
    overflow: auto;
    border-radius: 12px;
    padding: 24px 26px;
    position: relative;
    box-shadow: 0 20px 60px rgba(0,0,0,.3);
}

.neofire-u32.neofire-u32 {
    margin: 0 0 14px;
}

.neofire-u33.neofire-u33 {
    position: absolute;
    left: -9999px;
    opacity: 0;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

.neofire-u34.neofire-u34 {
    margin-top: 12px;
    font-size: 13px;
}

.neofire-u35.neofire-u35 {
    margin-top: 10px;
    color: green;
}

.neofire-u36.neofire-u36 {
    margin-top: 10px;
    color: red;
}

.neofire-u37.neofire-u37 {
    color: #999;
}

#all .product_price,
.product_price,
.neofire-u38.neofire-u38 {
    font-size: 32px;
    font-weight: bold;
    color: var(--main-hover-color);
    margin: 0px;
}

.neofire-u39.neofire-u39 {
    text-align: right;
    color: #8a8a8a;
    font-size: 14px;
    font-weight: normal;
    line-height: 1.1;
    min-height: 16px;
    margin-bottom: 1px;
}

.neofire-u40.neofire-u40 {
    text-align: inherit;
}

.neofire-u41.neofire-u41 {
    margin-top: 0;
}

.neofire-u42.neofire-u42 {
    display: flex;
    align-items: center;
    gap: 15px;
}

.neofire-u43.neofire-u43 {
    display: flex;
    align-items: center;
    gap: 15px;
    width: 100%;
}

.neofire-u44.neofire-u44 {
    padding: 20px 0;
    color: #666;
}

.neofire-u45.neofire-u45 {
    padding: 6px 0 14px;
    color: #666;
}

.neofire-u46.neofire-u46 {
    font-size: 31px;
    font-weight: bold;
    margin: 7px 0;
    text-align: right;
    width: 100%;
}

.neofire-u47.neofire-u47 {
    margin-top: 10px;
    margin-bottom: 5px;
}

.neofire-u48.neofire-u48 {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
}

.neofire-u49.neofire-u49 {
    margin-top: 20px;
}

.neofire-u50.neofire-u50 {
    padding: 20px 0;
}

.neofire-u51.neofire-u51 {
    max-width: 960px;
    margin: 0 auto 22px;
    width: 100%;
}

.neofire-u52.neofire-u52 {
    display: inline-flex;
    margin: 0;
}

.neofire-u53.neofire-u53 {
    position: absolute;
    top: 10px;
    right: 14px;
}

.neofire-u54.neofire-u54 {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 6px;
}

.neofire-u55.neofire-u55 {
    width: auto;
    padding: 11px 18px;
}

.neofire-u56.neofire-u56 {
    width: auto;
    padding: 11px 18px;
    margin-left: auto;
    display: none;
}

.neofire-u57.neofire-u57 {
    display: none;
    margin-top: 16px;
    width: 100%;
}

.neofire-u58.neofire-u58 {
    width: auto;
    padding: 12px 22px;
}

.neofire-u59.neofire-u59 {
    max-width: 520px;
}

.neofire-u60.neofire-u60 {
    margin: 0;
}

.neofire-u61.neofire-u61 {
    margin-right: 7px;
    vertical-align: -2px;
}

.neofire-u62.neofire-u62 {
    width: auto;
}

.neofire-u63.neofire-u63 {
    margin-bottom: 16px;
}

.neofire-u64.neofire-u64 {
    margin-bottom: 22px;
}

.neofire-u65.neofire-u65 {
    max-width: 440px;
    margin: 0;
}

.neofire-u66.neofire-u66 {
    margin-top: 4px;
    padding-left: 15px;
    color: #666;
    font-size: 13px;
}

.neofire-u67.neofire-u67 {
    padding: 12px;
    border-bottom: 1px solid #e5e5e5;
    vertical-align: top;
}

.neofire-u68.neofire-u68 {
    font-size: 12px;
    color: #888;
}

.neofire-u69.neofire-u69 {
    border-collapse: collapse;
}

.neofire-u70.neofire-u70 {
    padding: 0;
}

.neofire-u71.neofire-u71 {
    border: none;
    border-top: 1px solid #ddd;
}

.neofire-u72.neofire-u72 {
    font-size: 18px;
    font-weight: bold;
}

.neofire-u73.neofire-u73 {
    margin: 0;
    padding: 30px;
    background: #f5f5f5;
    font-family: Arial,Helvetica,sans-serif;
}

.neofire-u74.neofire-u74 {
    background: #fff;
    border: 1px solid #ddd;
}

.neofire-u75.neofire-u75 {
    padding: 30px;
}

.neofire-u76.neofire-u76 {
    max-height: 90px;
}

.neofire-u77.neofire-u77 {
    border-collapse: collapse;
}

.neofire-u78.neofire-u78 {
    text-align: right;
}

.neofire-u79.neofire-u79 {
    border-collapse: collapse;
}

.neofire-u80.neofire-u80 {
    background: #f7f7f7;
}

.neofire-u81.neofire-u81 {
    padding: 30px 30px 0px 30px;
}

.neofire-u82.neofire-u82 {
    background: #fff;
    padding: 30px;
    font-size: 12px;
    color: #777;
}

.neofire-u83.neofire-u83 {
    font-size: 14px;
    color: #666;
    margin-top: 2px;
}

.neofire-u84.neofire-u84 {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.neofire-u85.neofire-u85 {
    font-weight: bold;
    margin-top: 15px;
    margin-right: 30px;
    margin-bottom: 5px;
    font-size: 21px;
    line-height: 30px;
}

.neofire-u86.neofire-u86 {
    font-size: 14px;
    color: #777;
    margin-bottom: 8px;
}

.neofire-u87.neofire-u87 {
    margin-top: 8px;
    padding: 8px;
    font-size: 13px;
}

.neofire-u88.neofire-u88 {
    margin-top: 10px;
}

.neofire-u89.neofire-u89 {
    font-size: 17px;
    font-weight: bold;
    cursor: pointer;
    padding: 5px 0;
}

.neofire-u90.neofire-u90 {
    margin-top: 8px;
}

.neofire-u91.neofire-u91 {
    display: block;
    font-size: 14px;
    margin-bottom: 4px;
}

.neofire-u92.neofire-u92 {
    width: 100%;
    padding: 8px;
    border: 1px solid #ddd;
    border-radius: 6px;
}

.neofire-u93.neofire-u93 {
    display: flex;
    justify-content: space-between;
    margin-top: 10px;
}

.neofire-u94.neofire-u94 {
    display: flex;
    align-items: center;
    width: 100%;
    gap: 6px;
}

.neofire-u95.neofire-u95 {
    color: #8a8a8a;
    font-size: 13px;
}

.neofire-u96.neofire-u96 {
    width: 100%;
    text-align: right;
    font-size: 18px;
    font-weight: bold;
}

.neofire-u97.neofire-u97 {
    text-align: right;
    width: 100%;
    font-weight: normal;
}

.neofire-u98.neofire-u98 {
    display: block;
    font-weight: 600;
    margin-bottom: 4px;
}

.neofire-u99.neofire-u99 {
    margin-top: 10px;
}

.neofire-u100.neofire-u100 {
    padding: 0px;
    border-radius: 6px;
}

.neofire-u101.neofire-u101 {
    padding: 0px;
}

.neofire-u102.neofire-u102 {
    display: none;
}

.neofire-u103.neofire-u103 {
    margin: 20px 0;
}

.neofire-u104.neofire-u104 {
    display: none;
    color: #dc3545;
    font-size: 20px;
    text-align: center;
    font-weight: bold;
    margin: 30px 0;
}

.neofire-u105.neofire-u105 {
    margin-top: 20px;
    font-size: 14px;
    color: #666;
}

.neofire-u106.neofire-u106 {
    display: flex;
    justify-content: space-between;
    margin-bottom: 4px;
    margin-top: 4px;
    text-align: right;
}

.neofire-u107.neofire-u107 {
    color: #b1b1b1;
}

.neofire-u108.neofire-u108 {
    display: flex;
    justify-content: space-between;
    font-size: 24px;
    margin-bottom: 30px;
    font-weight: bold;
    text-align: right;
}

.neofire-u109.neofire-u109 {
    max-height: 60px;
    max-width: 220px;
}

.neofire-u110.neofire-u110 {
    cursor: pointer;
}

.neofire-u111.neofire-u111 {
    display: none;
    align-items: center;
    justify-content: center;
    position: fixed;
    right: 16px;
    bottom: 16px;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    border: 1px solid #e2e2e2;
    background: #fff;
    box-shadow: 0 6px 18px rgba(0,0,0,.18);
    cursor: pointer;
    z-index: 9000;
    padding: 0;
}

.neofire-u112.neofire-u112 {
    width: 100%;
    box-sizing: border-box;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 8px;
}

.neofire-u113.neofire-u113 {
    grid-column: 1 / 3;
    width: 100%;
    box-sizing: border-box;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 8px;
}

.neofire-u114.neofire-u114 {
    width: 100%;
    box-sizing: border-box;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 8px;
}

.neofire-u115.neofire-u115 {
    position: absolute;
    top: 10px;
    right: 14px;
    border: none;
    background: transparent;
    font-size: 28px;
    line-height: 1;
    cursor: pointer;
    color: #333;
}

.neofire-u116.neofire-u116 {
    width: 100%;
    object-fit: cover;
}

.neofire-u117.neofire-u117 {
    text-decoration: none;
}

.neofire-u118.neofire-u118 {
    border: none;
    background: #dc3545 !important;
    color: #fff !important;
    padding: 5px 7px;
    border-radius: 4px;
    cursor: pointer;
    font-size: 12px;
    line-height: 1;
    position: absolute;
    right: 20px;
}

.neofire-u119.neofire-u119 {
    display: flex;
    align-items: center;
    gap: 6px;
}

.neofire-u120.neofire-u120 {
    width: 28px;
    height: 28px;
    border: 1px solid #ddd;
    background: #fff;
    border-radius: 4px;
    cursor: pointer;
    padding: 8px;
    line-height: 1px;
}

.neofire-u121.neofire-u121 {
    width: 100%;
    box-sizing: border-box;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 8px;
}

.neofire-u122.neofire-u122 {
    display: none;
}

.neofire-u123.neofire-u123 {
    margin-top: 10px;
    color: #000;
    display: grid;
    text-align: center;
    gap: 3px;
}

.neofire-u124.neofire-u124 {
    width: 100%;
    padding: 10px;
}

.neofire-u125.neofire-u125 {
    width: 100%;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 6px;
}

.neofire-u126.neofire-u126 {
    margin-top: 10px;
}

.pay-hidden {
    display: none;
}

.pm-item:not(:last-child) {
    border-bottom: 1px solid #e5e5e5;
}

.pm-row {
    display: flex;
    align-items: center;
    gap: 14px;
    cursor: pointer;
    padding: 6px 2px;
    min-height: 48px;
    box-sizing: border-box;
}

.pm-row .pm-switch-input {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

.pm-row .pm-switch {
    width: 36px;
    height: 20px;
    border-radius: 999px;
    background: #e5e7eb;
    position: relative;
    transition: .2s;
    flex: 0 0 auto;
}

.pm-row .pm-switch::after {
    content: '';
    position: absolute;
    top: 2px;
    left: 2px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 2px 5px rgba(0,0,0,.2);
    transition: .2s;
}

.pm-row .pm-switch-input:checked + .pm-switch {
    background: #22c55e;
}

.pm-row .pm-switch-input:checked + .pm-switch::after {
    transform: translateX(16px);
}

.pm-row .pm-logo {
    height: 36px;
    width: 60px;
    object-fit: cover;
    object-position: center;
}

/* Abschnittstitel im Checkout: Zustellung / Zahlarten (nur wenn Eintraege da sind) */
.neofire-checkout-section {
    margin: 24px 0 6px;
}

.neofire-checkout-section + .neofire-u103 {
    margin-top: 6px;
}

.neofire-checkout-section + .payment-method-choose {
    margin-top: 13px;
}

.pm-row .pm-name {
    font-size: 15px;
    font-weight: 600;
    color: inherit;
}

.payment-fragment:not(:empty) {
    padding: 4px 2px 10px;
}

.neofire-customer-wrap {
    --neofire-customer-accent: #111;
    --neofire-customer-accent2: #111;
    font-family: Arial,Helvetica,sans-serif;
    display: flex;
    justify-content: center;
    padding: 0;
    color: #1c1c1c;
}

.neofire-customer-card {
    position: relative;
    width: 100%;
    max-width: 440px;
    background: #fff;
    border: 1px solid #ececec;
    border-radius: 18px;
    box-shadow: 0 24px 70px rgba(0,0,0,.28);
    overflow: hidden;
}

.neofire-customer-card--wide {
    max-width: 820px;
}

.neofire-customer-wrap--page {
    align-items: flex-start;
    padding: 40px 16px 60px;
}

.neofire-customer-wrap--page .neofire-customer-card--wide {
    max-width: 900px;
}

.neofire-customer-acc-nav {
    display: flex;
    gap: 4px;
    flex-wrap: wrap;
    align-items: center;
    padding: 0 30px;
    border-bottom: 1px solid #eee;
}

.neofire-customer-acc-nav a {
    padding: 14px 14px;
    font-size: 14px;
    font-weight: 600;
    color: #777;
    cursor: pointer;
    border-bottom: 2px solid transparent;
    margin-bottom: -1px;
    user-select: none;
}

.neofire-customer-acc-nav a:hover {
    color: #111;
}

.neofire-customer-acc-nav a.active {
    color: #111;
    border-bottom-color: #111;
}

.neofire-customer-acc-nav .neofire-customer-acc-logout {
    margin-left: auto;
    color: #c0392b;
}

.neofire-customer-sec-title {
    margin: 0 0 16px;
    font-size: 17px;
}

.neofire-customer-acc-inline {
    color: var(--main-color);
    font-family: Arial,Helvetica,sans-serif;
    font-size: 15px;
    margin-top: 26px;
}

.neofire-customer-acc-inline h4 {
    font-size: 16px;
    font-weight: 700;
    color: var(--main-color);
}

.neofire-customer-sec-h {
    margin: 0 0 18px;
    font-size: 22px;
    font-weight: 700;
    color: var(--main-color);
}

.neofire-customer-sec-body {
    border-top: 1px solid #e4e7ec;
    padding-top: 16px;
    min-height: 460px;
}

.darkmode .neofire-customer-sec-body {
    border-top-color: #ffffff1f;
}

.neofire-customer-acc-layout {
    display: grid;
    grid-template-columns: 210px 1fr;
    align-items: start;
}

.neofire-customer-acc-side {
    padding-right: 26px;
}

.neofire-customer-acc-main {
    padding-left: 32px;
    border-left: var(--main-border);
    min-width: 0;
}

.neofire-customer-side-nav {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.neofire-customer-side-btn {
    display: block;
    width: 100%;
    text-align: left;
    background: var(--main-button-background);
    color: var(--main-button-color) !important;
    border: var(--main-button-border);
    padding: 8px 12px;
    border-radius: 8px;
    font-size: 15px;
    cursor: pointer;
    user-select: none;
    font-family: inherit;
    box-sizing: border-box;
    transition: .2s;
}

.neofire-customer-side-btn:hover {
    background: var(--main-button-hover-background);
    color: var(--main-button-hover-color) !important;
    border: var(--main-button-hover-border);
}

.neofire-customer-side-btn.active {
    background: var(--main-button-hover-background) !important;
    color: var(--main-button-hover-color) !important;
    border: var(--main-button-hover-border);
}

.neofire-customer-side-logout,
.neofire-customer-side-logout:hover {
    background: none !important;
    border-color: transparent !important;
    opacity: 1;
    font-weight: 400;
    padding: 7px 12px;
    text-decoration: none !important;
    transition: .2s;
    margin-top: 10px;
}

.neofire-customer-side-logout {
    color: var(--main-color) !important;
}

.neofire-customer-side-logout:hover {
    color: var(--main-hover-color) !important;
}

.neofire-customer-acc-intro {
    margin: 0 0 22px;
    font-size: 15px;
    line-height: 1.6;
    color: #444;
}

.neofire-customer-acc-content {
    min-height: 120px;
    min-width: 0;
}

@media (max-width:760px) {
    .neofire-customer-acc-layout {
        grid-template-columns: 1fr;
    }

    .neofire-customer-acc-side {
        padding-right: 0;
    }

    .neofire-customer-acc-main {
        padding-left: 0;
        border-left: none;
        border-top: var(--main-border);
        margin-top: 14px;
        padding-top: 18px;
    }
}

.neofire-customer-tbl-orders .neofire-customer-row-click {
    cursor: pointer;
    transition: background .12s;
}

.neofire-customer-tbl-orders .neofire-customer-row-click:hover {
    background: #f5f5f5;
}

.darkmode .neofire-customer-tbl-orders .neofire-customer-row-click:hover {
    background: #ffffff14;
}

.neofire-customer-cell-arrow {
    text-align: right;
    color: var(--main-color);
    opacity: .35;
    font-size: 20px;
    width: 22px;
}

.neofire-customer-cell-center {
    text-align: center !important;
}

.neofire-customer-cell-right {
    text-align: right !important;
}

.neofire-customer-pg {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 18px;
    flex-wrap: wrap;
    gap: 10px;
}

.neofire-customer-pg-nav {
    display: flex;
    gap: 14px;
    align-items: center;
    font-size: 14px;
    color: var(--main-color) !important;
}

.neofire-customer-pg-info {
    min-width: 96px;
    text-align: center;
}

.neofire-customer-pg-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border: var(--main-border);
    border-radius: 10px;
    background: var(--main-background);
    color: var(--main-color) !important;
    cursor: pointer;
    text-decoration: none;
    transition: .2s;
}

.neofire-customer-pg-arrow:hover {
    background: var(--main-button-hover-background);
    border: var(--main-button-hover-border);
    color: var(--main-button-hover-color) !important;
}

.neofire-customer-pg-arrow--off {
    opacity: .3;
    pointer-events: none;
}

.neofire-customer-pg-limit {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

@media (max-width:640px) {
    .neofire-customer-pg-limit {
        position: static;
        transform: none;
    }
}

.neofire-customer-pg-left {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
    font-size: 14px;
    color: var(--main-color) !important;
}

.neofire-customer-pg-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border: var(--main-button-border);
    background: var(--main-button-background);
    color: var(--main-button-color) !important;
    padding: 9px 14px;
    border-radius: 10px;
    cursor: pointer;
    font-weight: 600;
    font-size: 14px;
    line-height: 1.4;
    text-decoration: none;
    transition: .2s;
}

.neofire-customer-pg-btn:hover {
    background: var(--main-button-hover-background);
    border: var(--main-button-hover-border);
    color: var(--main-button-hover-color) !important;
}

.neofire-customer-pg-sel {
    padding: 9px 12px;
    font-size: 14px;
    border: var(--main-border);
    border-radius: 10px;
    background: var(--main-background);
    color: var(--main-color) !important;
    font-family: inherit;
    transition: .2s;
}

.neofire-customer-pg-sel:focus {
    outline: none;
}

.neofire-customer-pg-sel option {
    background: var(--main-background);
    color: var(--main-color);
}

.neofire-customer-od-top {
    margin-bottom: 16px;
}

.neofire-customer-od-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
}

.neofire-customer-od-nr {
    font-size: 22px;
    font-weight: 700;
    color: var(--main-color);
}

.neofire-customer-od-sums {
    max-width: 360px;
    margin-left: auto;
    margin-bottom: 24px;
}

.neofire-customer-od-sums>div {
    display: flex;
    justify-content: space-between;
    padding: 6px 0;
    font-size: 14px;
    color: var(--main-color);
    opacity: .8;
}

.neofire-customer-od-sums .neofire-customer-od-total {
    border-top: var(--main-border);
    margin-top: 4px;
    padding-top: 10px;
    font-size: 16px;
    color: var(--main-color);
    opacity: 1;
    font-weight: 700;
}

.neofire-customer-od-cols {
    display: flex;
    gap: 34px;
    flex-wrap: wrap;
    margin-bottom: 24px;
}

.neofire-customer-od-addr {
    font-size: 14px;
    line-height: 1.6;
    color: var(--main-color);
    opacity: .85;
}

.neofire-customer-od-addr h4 {
    margin: 0 0 6px;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .03em;
    opacity: .6;
}

.neofire-customer-od-doch {
    margin: 0 0 12px;
    font-size: 15px;
}

.neofire-customer-doc-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.neofire-customer-doc {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    border: var(--main-button-border);
    background: var(--main-button-background);
    border-radius: 10px;
    color: var(--main-button-color) !important;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    transition: .2s;
}

.neofire-customer-doc:hover {
    background: var(--main-button-hover-background);
    color: var(--main-button-hover-color) !important;
    border: var(--main-button-hover-border);
}

.neofire-customer-card--auth {
    max-width: 760px;
}

.neofire-customer-cols {
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.neofire-customer-col {
    padding: 8px 30px 30px;
}

.neofire-customer-col + .neofire-customer-col {
    border-left: 1px solid #ececec;
}

@media (max-width:680px) {
    .neofire-customer-cols {
        grid-template-columns: 1fr;
    }

    .neofire-customer-col {
        padding: 6px 26px 26px;
    }

    .neofire-customer-col + .neofire-customer-col {
        border-left: none;
        border-top: 1px solid #ececec;
        padding-top: 18px;
    }
}

.neofire-customer-head {
    padding: 42px 30px 6px;
}

.neofire-customer-head h2 {
    margin: 0 0 4px;
    font-size: 26px;
    letter-spacing: -.3px;
}

.neofire-customer-head p {
    margin: 0;
    color: #777;
    font-size: 14px;
    line-height: 1.5;
}

.neofire-customer-x {
    position: absolute;
    top: 12px;
    right: 14px;
    border: none;
    background: transparent;
    font-size: 30px;
    line-height: 1;
    color: #999;
    cursor: pointer;
    z-index: 2;
}

.neofire-customer-x:hover {
    color: #333;
}

.neofire-customer-tabs {
    position: relative;
    display: flex;
    margin: 16px 30px 0;
    border-bottom: 1px solid #ececec;
}

.neofire-customer-tab {
    flex: 1;
    background: none;
    border: none;
    padding: 13px 0;
    font-size: 15px;
    font-weight: 700;
    color: #9aa0a6;
    cursor: pointer;
    transition: color .15s;
}

.neofire-customer-tab:hover {
    color: #555;
}

.neofire-customer-tab.active {
    color: #111;
}

.neofire-customer-tab-slider {
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 50%;
    height: 2.5px;
    border-radius: 2px;
    background: var(--neofire-customer-accent2);
    transition: transform .25s ease;
}

.neofire-customer-tabs[data-active="register"] .neofire-customer-tab-slider {
    transform: translateX(100%);
}

.neofire-customer-note--right {
    text-align: right;
}

.neofire-customer-note--left {
    text-align: left;
}

.neofire-customer-backwrap {
    margin: 14px 0 0;
    text-align: left;
}

.neofire-customer-back {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: transparent;
    color: #000;
    border: 0;
    border-radius: 0;
    padding: 4px 0;
    margin: 0;
    font: inherit;
    font-size: 14px;
    font-weight: 600;
    line-height: 1;
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
}

.neofire-customer-back,
.neofire-customer-back span {
    color: #000 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    display: inline !important;
}

.neofire-customer-back {
    display: inline-flex !important;
}

.neofire-customer-back svg {
    width: 16px !important;
    height: 16px !important;
    flex: 0 0 16px;
    display: block !important;
    color: #000 !important;
}

.neofire-customer-back svg path {
    stroke: #000 !important;
    fill: none !important;
}

.neofire-customer-inline .neofire-customer-backwrap {
    margin: 0 0 8px;
}

.checkout-authhead {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 28px 0 12px;
}

.checkout-authhead #cartmiddle {
    margin: 0;
}

#checkout-address-section {
    margin-top: 14px;
}

.checkout-guest-btn {
    -webkit-appearance: none;
    appearance: none;
    display: inline-flex !important;
    align-items: center;
    background: transparent !important;
    color: #888 !important;
    border: 0 !important;
    border-radius: 0;
    padding: 4px 0 !important;
    transition: color .15s;
    margin: 0;
    font: inherit;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    cursor: pointer;
}

.checkout-guest-btn:hover {
    background: transparent !important;
    color: #000 !important;
    text-decoration: none;
}

.neofire-customer-back:hover {
    background: transparent;
    text-decoration: underline;
}

@keyframes neofire-customer-fade {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

.neofire-customer-anim-right,
.neofire-customer-anim-left {
    animation: neofire-customer-fade .2s ease;
}

.neofire-customer-authwrap {
    display: grid;
}

.neofire-customer-authwrap > [data-auth-section] {
    grid-area: 1 / 1;
    min-width: 0;
    visibility: hidden;
}

.neofire-customer-authwrap > [data-auth-section].neofire-customer-active {
    visibility: visible;
}

.neofire-customer-sec-head {
    padding: 20px 0 8px;
}

.neofire-customer-sec-head h2 {
    margin: 0 0 4px;
    font-size: 24px;
    letter-spacing: -.3px;
}

.neofire-customer-sec-head p {
    margin: 0;
    color: #777;
    font-size: 14px;
    line-height: 1.5;
}

.neofire-customer-switcher {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    margin: 18px 30px 0;
    font-size: 14px;
    font-weight: 600;
}

.neofire-customer-switcher .neofire-customer-sw-label {
    color: #9aa0a6;
    transition: .15s;
    user-select: none;
    cursor: pointer;
}

.neofire-customer-switcher .neofire-customer-sw-label.active {
    color: #111;
}

.neofire-customer-switch-input {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

.neofire-customer-switch {
    display: inline-block;
    width: 40px;
    height: 22px;
    border-radius: 999px;
    background: #e5e7eb;
    position: relative;
    transition: .2s;
    flex: 0 0 auto;
    cursor: pointer;
}

.neofire-customer-switch::after {
    content: '';
    position: absolute;
    top: 2px;
    left: 2px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 2px 5px rgba(0,0,0,.25);
    transition: .2s;
}

.neofire-customer-switch-input:checked + .neofire-customer-switch {
    background: #22c55e;
}

.neofire-customer-switch-input:checked + .neofire-customer-switch::after {
    transform: translateX(18px);
}

.neofire-customer-switch.neofire-customer-err {
    background: #fde2e7;
    box-shadow: inset 0 0 0 2px #e11d48;
}

.neofire-customer-privacy {
    display: flex;
    align-items: center;
    gap: 14px;
    font-size: 13px;
    color: #555;
    margin: 2px 0 16px;
    line-height: 1.35;
    cursor: pointer;
}

.neofire-customer-reveal {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: max-height .38s ease,opacity .3s ease .05s;
}

.neofire-customer-reveal.open {
    max-height: 900px;
    opacity: 1;
}

.neofire-customer-reveal-inner {
    padding-top: 0;
}

.neofire-customer-hint {
    font-size: 13.5px;
    color: #555;
    margin-bottom: 14px;
}

.neofire-customer-mailcheck {
    position: absolute;
    right: 12px;
    top: 50%;
    line-height: 0;
    transform: translateY(-50%) scale(.3);
    opacity: 0;
    transition: transform .32s cubic-bezier(.34,1.56,.64,1),opacity .22s ease;
    pointer-events: none;
}

.neofire-customer-mailcheck.show {
    opacity: 1;
    transform: translateY(-50%) scale(1);
}

.neofire-customer-mailcheck svg {
    display: block;
}

.neofire-customer-mailcheck svg path {
    stroke-dasharray: 16;
    stroke-dashoffset: 16;
}

.neofire-customer-mailcheck.show svg path {
    animation: neofire-customer-draw .42s ease forwards .12s;
}

@keyframes neofire-customer-draw {
    to {
        stroke-dashoffset: 0;
    }
}

.neofire-customer-authmail-check {
    position: relative;
}

[data-authmail].neofire-customer-checking {
    background-image: none;
}

.neofire-customer-body {
    padding: 22px 30px 30px;
}

.neofire-customer-wrap form {
    margin: 0;
}

.neofire-customer-field {
    margin-bottom: 14px;
}

.neofire-customer-field label {
    display: block;
    font-size: 12.5px;
    font-weight: 600;
    color: var(--main-color);
    opacity: .75;
    margin-bottom: 6px;
}

.neofire-customer-input {
    width: 100%;
    box-sizing: border-box;
    padding: 13px 14px;
    border: var(--main-border);
    border-radius: 10px;
    font-size: 15px;
    transition: .15s;
    background: var(--main-background);
    color: var(--main-color);
}

.neofire-customer-input:focus {
    outline: none;
    border-color: var(--main-color);
    box-shadow: inset 0 0 0 1px var(--main-color);
}

.neofire-customer-input.neofire-customer-err {
    border-color: #e11d48;
    box-shadow: inset 0 0 0 1px #e11d48;
}

.neofire-customer-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.neofire-customer-pw {
    position: relative;
}

.neofire-customer-pw .neofire-customer-eye {
    position: absolute;
    right: 13px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    color: #999;
    font-size: 15px;
    user-select: none;
}

.neofire-customer-pw .neofire-customer-eye:hover {
    color: #555;
}

.neofire-customer-btn {
    width: 100%;
    padding: 14px;
    border: var(--main-largebutton-border);
    border-radius: 10px;
    background: var(--main-largebutton-background) !important;
    color: var(--main-largebutton-color) !important;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    transition: .2s;
}

.neofire-customer-btn:hover {
    background: var(--main-largebutton-hover-background) !important;
    color: var(--main-largebutton-hover-color) !important;
    border: var(--main-largebutton-hover-border);
}

.neofire-customer-btn[disabled] {
    opacity: .55;
    cursor: default;
}

.neofire-customer-inline .neofire-customer-btn[data-authbtn] {
    background: #fff !important;
    color: #000 !important;
    border: 1px solid #000 !important;
}

.neofire-customer-inline .neofire-customer-btn[data-authbtn]:hover {
    background: #f2f2f2 !important;
    color: #000 !important;
}

.neofire-customer-card .neofire-customer-btn[data-authbtn] {
    background: #000 !important;
    color: #fff !important;
    border: 1px solid #000 !important;
}

.neofire-customer-card .neofire-customer-btn[data-authbtn]:hover {
    background: #222 !important;
    color: #fff !important;
}

.neofire-customer-btn--ghost {
    background: var(--main-button-background) !important;
    color: var(--main-button-color) !important;
    border: var(--main-button-border);
}

.neofire-customer-btn--ghost:hover {
    background: var(--main-button-hover-background) !important;
    color: var(--main-button-hover-color) !important;
    border: var(--main-button-hover-border);
}

.neofire-customer-note {
    margin-top: 16px;
    text-align: center;
    font-size: 13.5px;
    color: var(--main-color);
    opacity: .6;
}

.neofire-customer-link {
    color: var(--main-color);
    cursor: pointer;
    text-decoration: none;
    font-weight: 600;
}

.neofire-customer-link:hover {
    text-decoration: underline;
}

.neofire-customer-msg {
    padding: 12px 14px;
    border-radius: 11px;
    font-size: 13.5px;
    margin-bottom: 16px;
    display: none;
}

.neofire-customer-msg.err {
    display: block;
    background: #fdecec;
    color: #c0392b;
    border: 1px solid #f5c6c6;
}

.neofire-customer-msg.ok {
    display: block;
    background: #eafaf0;
    color: #1e8449;
    border: 1px solid #bfe9cf;
}

.neofire-customer-check {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 13px;
    color: #555;
    margin: 2px 0 16px;
    cursor: pointer;
}

.neofire-customer-check input {
    width: 17px;
    height: 17px;
}

.neofire-customer-acc-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
    padding: 26px 30px;
    border-bottom: 1px solid #f0f0f0;
}

.neofire-customer-acc-hi {
    font-size: 22px;
    font-weight: 700;
    margin: 0;
}

.neofire-customer-acc-sub {
    color: #888;
    font-size: 13.5px;
    margin: 3px 0 0;
}

.neofire-customer-grid2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    padding: 24px 30px;
}

.neofire-customer-panel {
    border: var(--main-border);
    border-radius: 12px;
    padding: 18px;
}

.neofire-customer-panel h3 {
    margin: 0 0 12px;
    font-size: 15px;
}

.neofire-customer-tbl {
    width: 100%;
    border-collapse: collapse;
    font-size: 14.5px;
}

.neofire-customer-tbl th,
.neofire-customer-tbl td {
    text-align: left;
    padding: 11px 10px;
    border-bottom: var(--main-border);
}

.neofire-customer-tbl th:last-child,
.neofire-customer-tbl td:last-child {
    padding-right: 0;
}

.neofire-customer-tbl th {
    color: var(--main-color) !important;
    opacity: .6;
    font-weight: 700;
    font-size: 14px;
    text-transform: none;
    letter-spacing: normal;
}

.neofire-customer-badge {
    display: inline-block;
    padding: 3px 9px;
    border-radius: 999px;
    font-size: 11.5px;
    font-weight: 700;
}

.neofire-customer-badge.paid {
    background: #eafaf0;
    color: #1e8449 !important;
}

.neofire-customer-badge.open {
    background: var(--main-button-background);
    color: var(--main-button-color) !important;
    border: var(--main-button-border);
}

.neofire-customer-addr {
    padding: 14px 0;
    font-size: 13.5px;
    line-height: 1.5;
    position: relative;
}

.neofire-customer-addr + .neofire-customer-addr {
    border-top: var(--main-border);
}

.neofire-customer-addr .neofire-customer-addr-act {
    position: absolute;
    top: 10px;
    right: 12px;
    display: flex;
    gap: 8px;
}

.neofire-customer-addr .neofire-customer-addr-act .neofire-customer-ic {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border: var(--main-button-border);
    background: var(--main-button-background);
    color: var(--main-color) !important;
    border-radius: 8px;
    cursor: pointer;
    font-size: 15px;
    line-height: 1;
    transition: .2s;
}

.neofire-customer-addr .neofire-customer-addr-act .neofire-customer-ic svg {
    fill: currentColor;
}

.neofire-customer-addr .neofire-customer-addr-act .neofire-customer-ic:hover {
    background: var(--main-button-hover-background);
    color: var(--main-button-hover-color) !important;
    border: var(--main-button-hover-border);
}

.neofire-customer-addr .neofire-customer-addr-act .neofire-customer-ic:hover svg {
    fill: var(--main-button-hover-color) !important;
}

.neofire-customer-addr .neofire-customer-addr-act .neofire-customer-ic-del:hover {
    background: #e5484d !important;
    color: #fff !important;
    border-color: #e5484d !important;
}

.neofire-customer-addr .neofire-customer-addr-act .neofire-customer-ic-del:hover svg {
    fill: #fff !important;
}

.neofire-customer-muted {
    color: var(--main-color) !important;
    opacity: .5;
    font-size: 13px;
}

.neofire-customer-legal-modal {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.55);
    z-index: 100002;
}

.neofire-customer-legal-box {
    background: #fff;
    max-width: 720px;
    margin: 5vh auto;
    max-height: 86vh;
    overflow: auto;
    border-radius: 14px;
    padding: 24px 26px;
    position: relative;
    box-shadow: 0 24px 70px rgba(0,0,0,.35);
}

@media (max-width:720px) {
    .neofire-customer-grid2 {
        grid-template-columns: 1fr;
    }

    .neofire-customer-row {
        grid-template-columns: 1fr;
    }
}

.neofire-customer-sec-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 0 0 18px;
}

.neofire-customer-sec-akt {
    min-height: 40px;
}

.neofire-customer-ofil-btn {
    display: inline-flex;
    align-items: center;
    background: var(--main-button-background);
    color: var(--main-button-color) !important;
    border: var(--main-button-border);
    border-radius: 8px;
    padding: 9px 16px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    font-family: inherit;
    transition: .2s;
}

.neofire-customer-ofil-btn:hover,
.neofire-customer-ofil-btn--on {
    background: #111 !important;
    color: #fff !important;
    border: 1px solid #111 !important;
}

.neofire-customer-ofil-btn:hover svg,
.neofire-customer-ofil-btn--on svg {
    fill: #fff;
}

.neofire-customer-ord-body {
    position: relative;
    overflow: hidden;
    border-top: 1px solid #e4e7ec;
    padding-top: 16px;
    min-height: 460px;
}

.darkmode .neofire-customer-ord-body {
    border-top-color: #ffffff1f;
}

.neofire-customer-ord-main {
    transition: margin-right .25s ease;
    min-width: 0;
}

.neofire-customer-ord-body.neofire-customer-fopen .neofire-customer-ord-main {
    margin-right: 280px;
}

.neofire-customer-ofil {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 260px;
    box-sizing: border-box;
    background: #fff;
    border: 0;
    border-left: 1px solid #e4e7ec;
    border-radius: 0;
    padding: 16px 4px 18px 22px;
    overflow-y: auto;
    transform: translateX(115%);
    opacity: 0;
    transition: transform .25s ease,opacity .2s ease;
}

.neofire-customer-ord-body.neofire-customer-fopen .neofire-customer-ofil {
    transform: translateX(0);
    opacity: 1;
}

.neofire-customer-ofil-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 4px;
}

.neofire-customer-ofil-head strong {
    font-size: 16px;
}

.neofire-customer-ofil-x {
    background: none;
    border: 0;
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
    color: #999;
    padding: 0 4px;
}

.neofire-customer-ofil-body label {
    display: block;
    font-size: 13px;
    color: #777;
    margin: 14px 0 5px;
}

.neofire-customer-ofil-foot {
    display: flex;
    gap: 10px;
    margin-top: 18px;
}

.neofire-customer-ofil-foot .neofire-customer-btn {
    flex: 1;
    width: auto;
    padding: 11px 0;
}

@media (max-width:640px) {
    .neofire-customer-ord-body.neofire-customer-fopen .neofire-customer-ord-main {
        margin-right: 0;
    }

    .neofire-customer-ofil {
        position: static;
        width: 100%;
        transform: none;
        opacity: 1;
        margin-top: 14px;
        display: none;
    }

    .neofire-customer-ord-body.neofire-customer-fopen .neofire-customer-ofil {
        display: block;
    }
}

.darkmode .neofire-customer-ofil {
    background: #151515;
    border-color: #ffffff1f;
    color: #eee;
}

.darkmode .neofire-customer-ofil-body label {
    color: #9aa0aa;
}

.checkout {
    display: none;
}

.input-error {
    border: 2px solid #dc3545 !important;
    background: #fff5f5 !important;
}

.flatpickr-calendar {
    background: transparent;
    opacity: 0;
    display: none;
    text-align: center;
    visibility: hidden;
    padding: 0;
    -webkit-animation: none;
    animation: none;
    direction: ltr;
    border: 0;
    font-size: 14px;
    line-height: 24px;
    border-radius: 5px;
    position: absolute;
    width: 307.875px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    background: #fff;
    -webkit-box-shadow: 1px 0 0 #e6e6e6,-1px 0 0 #e6e6e6,0 1px 0 #e6e6e6,0 -1px 0 #e6e6e6,0 3px 13px rgba(0,0,0,0.08);
    box-shadow: 1px 0 0 #e6e6e6,-1px 0 0 #e6e6e6,0 1px 0 #e6e6e6,0 -1px 0 #e6e6e6,0 3px 13px rgba(0,0,0,0.08);
}

.flatpickr-calendar.open,
.flatpickr-calendar.inline {
    opacity: 1;
    max-height: 640px;
    visibility: visible;
}

.flatpickr-calendar.open {
    display: inline-block;
    z-index: 99999;
}

.flatpickr-calendar.animate.open {
    -webkit-animation: fpFadeInDown 300ms cubic-bezier(.23,1,.32,1);
    animation: fpFadeInDown 300ms cubic-bezier(.23,1,.32,1);
}

.flatpickr-calendar.inline {
    display: block;
    position: relative;
    top: 2px;
}

.flatpickr-calendar.static {
    position: absolute;
    top: calc(100% + 2px);
}

.flatpickr-calendar.static.open {
    z-index: 999;
    display: block;
}

.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7) {
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
}

.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1) {
    -webkit-box-shadow: -2px 0 0 #e6e6e6,5px 0 0 #e6e6e6;
    box-shadow: -2px 0 0 #e6e6e6,5px 0 0 #e6e6e6;
}

.flatpickr-calendar .hasWeeks .dayContainer,
.flatpickr-calendar .hasTime .dayContainer {
    border-bottom: 0;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.flatpickr-calendar .hasWeeks .dayContainer {
    border-left: 0;
}

.flatpickr-calendar.hasTime .flatpickr-time {
    height: 40px;
    border-top: 1px solid #e6e6e6;
}

.flatpickr-calendar.noCalendar.hasTime .flatpickr-time {
    height: auto;
}

.flatpickr-calendar:before,
.flatpickr-calendar:after {
    position: absolute;
    display: block;
    pointer-events: none;
    border: solid transparent;
    content: '';
    height: 0;
    width: 0;
    left: 22px;
}

.flatpickr-calendar.rightMost:before,
.flatpickr-calendar.arrowRight:before,
.flatpickr-calendar.rightMost:after,
.flatpickr-calendar.arrowRight:after {
    left: auto;
    right: 22px;
}

.flatpickr-calendar.arrowCenter:before,
.flatpickr-calendar.arrowCenter:after {
    left: 50%;
    right: 50%;
}

.flatpickr-calendar:before {
    border-width: 5px;
    margin: 0 -5px;
}

.flatpickr-calendar:after {
    border-width: 4px;
    margin: 0 -4px;
}

.flatpickr-calendar.arrowTop:before,
.flatpickr-calendar.arrowTop:after {
    bottom: 100%;
}

.flatpickr-calendar.arrowTop:before {
    border-bottom-color: #e6e6e6;
}

.flatpickr-calendar.arrowTop:after {
    border-bottom-color: #fff;
}

.flatpickr-calendar.arrowBottom:before,
.flatpickr-calendar.arrowBottom:after {
    top: 100%;
}

.flatpickr-calendar.arrowBottom:before {
    border-top-color: #e6e6e6;
}

.flatpickr-calendar.arrowBottom:after {
    border-top-color: #fff;
}

.flatpickr-calendar:focus {
    outline: 0;
}

.flatpickr-wrapper {
    position: relative;
    display: inline-block;
}

.flatpickr-months {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.flatpickr-months .flatpickr-month {
    background: transparent;
    color: rgba(0,0,0,0.9);
    fill: rgba(0,0,0,0.9);
    height: 34px;
    line-height: 1;
    text-align: center;
    position: relative;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    overflow: hidden;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.flatpickr-months .flatpickr-prev-month,
.flatpickr-months .flatpickr-next-month {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    text-decoration: none;
    cursor: pointer;
    position: absolute;
    top: 0;
    height: 34px;
    padding: 10px;
    z-index: 3;
    color: rgba(0,0,0,0.9);
    fill: rgba(0,0,0,0.9);
}

.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,
.flatpickr-months .flatpickr-next-month.flatpickr-disabled {
    display: none;
}

.flatpickr-months .flatpickr-prev-month i,
.flatpickr-months .flatpickr-next-month i {
    position: relative;
}

.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,
.flatpickr-months .flatpickr-next-month.flatpickr-prev-month {
    left: 0;
}

.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,
.flatpickr-months .flatpickr-next-month.flatpickr-next-month {
    right: 0;
}

.flatpickr-months .flatpickr-prev-month:hover,
.flatpickr-months .flatpickr-next-month:hover {
    color: #959ea9;
}

.flatpickr-months .flatpickr-prev-month:hover svg,
.flatpickr-months .flatpickr-next-month:hover svg {
    fill: #f64747;
}

.flatpickr-months .flatpickr-prev-month svg,
.flatpickr-months .flatpickr-next-month svg {
    width: 14px;
    height: 14px;
}

.flatpickr-months .flatpickr-prev-month svg path,
.flatpickr-months .flatpickr-next-month svg path {
    -webkit-transition: fill .1s;
    transition: fill .1s;
    fill: inherit;
}

.numInputWrapper {
    position: relative;
    height: auto;
}

.numInputWrapper input,
.numInputWrapper span {
    display: inline-block;
}

.numInputWrapper input {
    width: 100%;
}

.numInputWrapper input::-ms-clear {
    display: none;
}

.numInputWrapper input::-webkit-outer-spin-button,
.numInputWrapper input::-webkit-inner-spin-button {
    margin: 0;
    -webkit-appearance: none;
}

.numInputWrapper span {
    position: absolute;
    right: 0;
    width: 14px;
    padding: 0 4px 0 2px;
    height: 50%;
    line-height: 50%;
    opacity: 0;
    cursor: pointer;
    border: 1px solid rgba(57,57,57,0.15);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.numInputWrapper span:hover {
    background: rgba(0,0,0,0.1);
}

.numInputWrapper span:active {
    background: rgba(0,0,0,0.2);
}

.numInputWrapper span:after {
    display: block;
    content: "";
    position: absolute;
}

.numInputWrapper span.arrowUp {
    top: 0;
    border-bottom: 0;
}

.numInputWrapper span.arrowUp:after {
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-bottom: 4px solid rgba(57,57,57,0.6);
    top: 26%;
}

.numInputWrapper span.arrowDown {
    top: 50%;
}

.numInputWrapper span.arrowDown:after {
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 4px solid rgba(57,57,57,0.6);
    top: 40%;
}

.numInputWrapper span svg {
    width: inherit;
    height: auto;
}

.numInputWrapper span svg path {
    fill: rgba(0,0,0,0.5);
}

.numInputWrapper:hover {
    background: rgba(0,0,0,0.05);
}

.numInputWrapper:hover span {
    opacity: 1;
}

.flatpickr-current-month {
    font-size: 135%;
    line-height: inherit;
    font-weight: 300;
    color: inherit;
    position: absolute;
    width: 75%;
    left: 12.5%;
    padding: 7.48px 0 0 0;
    line-height: 1;
    height: 34px;
    display: inline-block;
    text-align: center;
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
}

.flatpickr-current-month span.cur-month {
    font-family: inherit;
    font-weight: 700;
    color: inherit;
    display: inline-block;
    margin-left: .5ch;
    padding: 0;
}

.flatpickr-current-month span.cur-month:hover {
    background: rgba(0,0,0,0.05);
}

.flatpickr-current-month .numInputWrapper {
    width: 6ch;
    width: 7ch\0;
    display: inline-block;
}

.flatpickr-current-month .numInputWrapper span.arrowUp:after {
    border-bottom-color: rgba(0,0,0,0.9);
}

.flatpickr-current-month .numInputWrapper span.arrowDown:after {
    border-top-color: rgba(0,0,0,0.9);
}

.flatpickr-current-month input.cur-year {
    background: transparent;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: inherit;
    cursor: text;
    padding: 0 0 0 .5ch;
    margin: 0;
    display: inline-block;
    font-size: inherit;
    font-family: inherit;
    font-weight: 300;
    line-height: inherit;
    height: auto;
    border: 0;
    border-radius: 0;
    vertical-align: initial;
    -webkit-appearance: textfield;
    -moz-appearance: textfield;
    appearance: textfield;
}

.flatpickr-current-month input.cur-year:focus {
    outline: 0;
}

.flatpickr-current-month input.cur-year[disabled],
.flatpickr-current-month input.cur-year[disabled]:hover {
    font-size: 100%;
    color: rgba(0,0,0,0.5);
    background: transparent;
    pointer-events: none;
}

.flatpickr-current-month .flatpickr-monthDropdown-months {
    appearance: menulist;
    background: transparent;
    border: none;
    border-radius: 0;
    box-sizing: border-box;
    color: inherit;
    cursor: pointer;
    font-size: inherit;
    font-family: inherit;
    font-weight: 300;
    height: auto;
    line-height: inherit;
    margin: -1px 0 0 0;
    outline: none;
    padding: 0 0 0 .5ch;
    position: relative;
    vertical-align: initial;
    -webkit-box-sizing: border-box;
    -webkit-appearance: menulist;
    -moz-appearance: menulist;
    width: auto;
}

.flatpickr-current-month .flatpickr-monthDropdown-months:focus,
.flatpickr-current-month .flatpickr-monthDropdown-months:active {
    outline: none;
}

.flatpickr-current-month .flatpickr-monthDropdown-months:hover {
    background: rgba(0,0,0,0.05);
}

.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month {
    background-color: transparent;
    outline: none;
    padding: 0;
}

.flatpickr-weekdays {
    background: transparent;
    text-align: center;
    overflow: hidden;
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    height: 28px;
}

.flatpickr-weekdays .flatpickr-weekdaycontainer {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

span.flatpickr-weekday {
    cursor: default;
    font-size: 90%;
    background: transparent;
    color: rgba(0,0,0,0.54);
    line-height: 1;
    margin: 0;
    text-align: center;
    display: block;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    font-weight: bolder;
}

.dayContainer,
.flatpickr-weeks {
    padding: 1px 0 0 0;
}

.flatpickr-days {
    position: relative;
    overflow: hidden;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    width: 307.875px;
}

.flatpickr-days:focus {
    outline: 0;
}

.dayContainer {
    padding: 0;
    outline: 0;
    text-align: left;
    width: 307.875px;
    min-width: 307.875px;
    max-width: 307.875px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-around;
    justify-content: space-around;
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
    opacity: 1;
}

.dayContainer + .dayContainer {
    -webkit-box-shadow: -1px 0 0 #e6e6e6;
    box-shadow: -1px 0 0 #e6e6e6;
}

.flatpickr-day {
    background: none;
    border: 1px solid transparent;
    border-radius: 150px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: #393939;
    cursor: pointer;
    font-weight: 400;
    width: 14.2857143%;
    -webkit-flex-basis: 14.2857143%;
    -ms-flex-preferred-size: 14.2857143%;
    flex-basis: 14.2857143%;
    max-width: 39px;
    height: 39px;
    line-height: 39px;
    margin: 0;
    display: inline-block;
    position: relative;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
}

.flatpickr-day.inRange,
.flatpickr-day.prevMonthDay.inRange,
.flatpickr-day.nextMonthDay.inRange,
.flatpickr-day.today.inRange,
.flatpickr-day.prevMonthDay.today.inRange,
.flatpickr-day.nextMonthDay.today.inRange,
.flatpickr-day:hover,
.flatpickr-day.prevMonthDay:hover,
.flatpickr-day.nextMonthDay:hover,
.flatpickr-day:focus,
.flatpickr-day.prevMonthDay:focus,
.flatpickr-day.nextMonthDay:focus {
    cursor: pointer;
    outline: 0;
    background: #e6e6e6;
    border-color: #e6e6e6;
}

.flatpickr-day.today {
    border-color: #959ea9;
}

.flatpickr-day.today:hover,
.flatpickr-day.today:focus {
    border-color: #959ea9;
    background: #959ea9;
    color: #fff;
}

.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange,
.flatpickr-day.selected.inRange,
.flatpickr-day.startRange.inRange,
.flatpickr-day.endRange.inRange,
.flatpickr-day.selected:focus,
.flatpickr-day.startRange:focus,
.flatpickr-day.endRange:focus,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange:hover,
.flatpickr-day.selected.prevMonthDay,
.flatpickr-day.startRange.prevMonthDay,
.flatpickr-day.endRange.prevMonthDay,
.flatpickr-day.selected.nextMonthDay,
.flatpickr-day.startRange.nextMonthDay,
.flatpickr-day.endRange.nextMonthDay {
    background: #569ff7;
    -webkit-box-shadow: none;
    box-shadow: none;
    color: #fff;
    border-color: #569ff7;
}

.flatpickr-day.selected.startRange,
.flatpickr-day.startRange.startRange,
.flatpickr-day.endRange.startRange {
    border-radius: 50px 0 0 50px;
}

.flatpickr-day.selected.endRange,
.flatpickr-day.startRange.endRange,
.flatpickr-day.endRange.endRange {
    border-radius: 0 50px 50px 0;
}

.flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)),
.flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)),
.flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)) {
    -webkit-box-shadow: -10px 0 0 #569ff7;
    box-shadow: -10px 0 0 #569ff7;
}

.flatpickr-day.selected.startRange.endRange,
.flatpickr-day.startRange.startRange.endRange,
.flatpickr-day.endRange.startRange.endRange {
    border-radius: 50px;
}

.flatpickr-day.inRange {
    border-radius: 0;
    -webkit-box-shadow: -5px 0 0 #e6e6e6,5px 0 0 #e6e6e6;
    box-shadow: -5px 0 0 #e6e6e6,5px 0 0 #e6e6e6;
}

.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover,
.flatpickr-day.prevMonthDay,
.flatpickr-day.nextMonthDay,
.flatpickr-day.notAllowed,
.flatpickr-day.notAllowed.prevMonthDay,
.flatpickr-day.notAllowed.nextMonthDay {
    color: rgba(57,57,57,0.3);
    background: transparent;
    border-color: transparent;
    cursor: default;
}

.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover {
    cursor: not-allowed;
    color: rgba(57,57,57,0.1);
}

.flatpickr-day.week.selected {
    border-radius: 0;
    -webkit-box-shadow: -5px 0 0 #569ff7,5px 0 0 #569ff7;
    box-shadow: -5px 0 0 #569ff7,5px 0 0 #569ff7;
}

.flatpickr-day.hidden {
    visibility: hidden;
}

.rangeMode .flatpickr-day {
    margin-top: 1px;
}

.flatpickr-weekwrapper {
    float: left;
}

.flatpickr-weekwrapper .flatpickr-weeks {
    padding: 0 12px;
    -webkit-box-shadow: 1px 0 0 #e6e6e6;
    box-shadow: 1px 0 0 #e6e6e6;
}

.flatpickr-weekwrapper .flatpickr-weekday {
    float: none;
    width: 100%;
    line-height: 28px;
}

.flatpickr-weekwrapper span.flatpickr-day,
.flatpickr-weekwrapper span.flatpickr-day:hover {
    display: block;
    width: 100%;
    max-width: none;
    color: rgba(57,57,57,0.3);
    background: transparent;
    cursor: default;
    border: none;
}

.flatpickr-innerContainer {
    display: block;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    overflow: hidden;
}

.flatpickr-rContainer {
    display: inline-block;
    padding: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.flatpickr-time {
    text-align: center;
    outline: 0;
    display: block;
    height: 0;
    line-height: 40px;
    max-height: 40px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    overflow: hidden;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.flatpickr-time:after {
    content: "";
    display: table;
    clear: both;
}

.flatpickr-time .numInputWrapper {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    width: 40%;
    height: 40px;
    float: left;
}

.flatpickr-time .numInputWrapper span.arrowUp:after {
    border-bottom-color: #393939;
}

.flatpickr-time .numInputWrapper span.arrowDown:after {
    border-top-color: #393939;
}

.flatpickr-time.hasSeconds .numInputWrapper {
    width: 26%;
}

.flatpickr-time.time24hr .numInputWrapper {
    width: 49%;
}

.flatpickr-time input {
    background: transparent;
    -webkit-box-shadow: none;
    box-shadow: none;
    border: 0;
    border-radius: 0;
    text-align: center;
    margin: 0;
    padding: 0;
    height: inherit;
    line-height: inherit;
    color: #393939;
    font-size: 14px;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-appearance: textfield;
    -moz-appearance: textfield;
    appearance: textfield;
}

.flatpickr-time input.flatpickr-hour {
    font-weight: bold;
}

.flatpickr-time input.flatpickr-minute,
.flatpickr-time input.flatpickr-second {
    font-weight: 400;
}

.flatpickr-time input:focus {
    outline: 0;
    border: 0;
}

.flatpickr-time .flatpickr-time-separator,
.flatpickr-time .flatpickr-am-pm {
    height: inherit;
    float: left;
    line-height: inherit;
    color: #393939;
    font-weight: bold;
    width: 2%;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
}

.flatpickr-time .flatpickr-am-pm {
    outline: 0;
    width: 18%;
    cursor: pointer;
    text-align: center;
    font-weight: 400;
}

.flatpickr-time input:hover,
.flatpickr-time .flatpickr-am-pm:hover,
.flatpickr-time input:focus,
.flatpickr-time .flatpickr-am-pm:focus {
    background: #eee;
}

.flatpickr-input[readonly] {
    cursor: pointer;
}

@-webkit-keyframes fpFadeInDown {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0,-20px,0);
        transform: translate3d(0,-20px,0);
    }

    to {
        opacity: 1;
        -webkit-transform: translate3d(0,0,0);
        transform: translate3d(0,0,0);
    }
}

@keyframes fpFadeInDown {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0,-20px,0);
        transform: translate3d(0,-20px,0);
    }

    to {
        opacity: 1;
        -webkit-transform: translate3d(0,0,0);
        transform: translate3d(0,0,0);
    }
}

#core[data-nav="0"] #open-cat,
#core[data-nav="0"] #catOverlay {
    display: none !important;
}

#core[data-logo="0"] #logo {
    display: none !important;
}

#core[data-search="0"] #core-search {
    display: none !important;
}

#core[data-cart="0"] #open-cart {
    display: none !important;
}

#core[data-account="0"] #neofire-account-btn {
    display: none !important;
}

#core[data-footer="0"] .site-footer {
    display: none !important;
}

#core[data-theme="0"] #themeButton,
#core[data-theme="0"] #largeListingThemeButton {
    display: none !important;
}

#core[data-cookie="0"] #neofire-cookie-banner,
#core[data-cookie="0"] #neofire-cookie-toggle {
    display: none !important;
}

#neofire-cookie-banner {
    background: #ffffff;
    color: #1c1c1c;
    border: 1px solid #e2e2e2;
}

#neofire-cookie-banner .neofire-u5 {
    color: #111111;
}

#neofire-cookie-banner .neofire-u6 {
    color: #4a4a4a;
}

#neofire-cookie-banner .neofire-u7 {
    color: #2563eb;
}

#neofire-cookie-banner .neofire-u9 {
    background: #111111;
    color: #ffffff;
    border: 1px solid #111111;
}

#neofire-cookie-banner .neofire-u10 {
    background: #ffffff;
    color: #1c1c1c;
    border: 1px solid #c9c9c9;
}

#neofire-cookie-toggle {
    background: #ffffff;
    color: #111111;
    border: 1px solid #e2e2e2;
}

.darkmode #neofire-cookie-banner {
    background: #1b1d21;
    color: #f1f1f1;
    border-color: #ffffff2b;
}

.darkmode #neofire-cookie-banner .neofire-u5 {
    color: #ffffff;
}

.darkmode #neofire-cookie-banner .neofire-u6 {
    color: #c8ccd2;
}

.darkmode #neofire-cookie-banner .neofire-u7 {
    color: #7ab8ff;
}

.darkmode #neofire-cookie-banner .neofire-u9 {
    background: #3dffc1;
    color: #04231a;
    border: 1px solid #3dffc1;
}

.darkmode #neofire-cookie-banner .neofire-u10 {
    background: transparent;
    color: #f1f1f1;
    border: 1px solid #ffffff45;
}

.darkmode #neofire-cookie-toggle {
    background: #1b1d21;
    color: #ffffff;
    border-color: #ffffff2b;
}

.darkmode #neofire-cookie-banner .neofire-u5 svg circle:first-child,
.darkmode #neofire-cookie-toggle svg circle:first-child {
    fill: #ffffff;
}

.darkmode #neofire-cookie-banner .neofire-u5 svg circle:not(:first-child),
.darkmode #neofire-cookie-toggle svg circle:not(:first-child) {
    fill: #1b1d21;
}

#all .theme-buttons {
    display: flex !important;
    align-items: stretch !important;
    flex-wrap: nowrap;
    gap: 10px;
}

#all .theme-buttons .themeButton {
    flex: 1 1 0 !important;
    min-width: 0;
    margin: 0 !important;
    vertical-align: top;
    align-self: stretch;
}

#core[data-content="0"] #content {
    display: none !important;
}

#core[data-header="0"] #headercontent,
#core[data-header="0"] #topbar {
    display: none !important;
}

#core[data-fixed="0"] #all.allactive #header,
#core[data-fixed="0"] .allactive #header {
    position: static !important;
    box-shadow: none !important;
}

#core[data-fixed="1"] #headercontent {
    position: sticky !important;
    top: 0 !important;
    z-index: 999 !important;
}

#core[data-footfixed="1"] #footer {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 998;
}

#core[data-footfixed="1"] {
    padding-bottom: var(--neofire-footfix-h, 0px);
}

html.neofire-designer-pal-push #core[data-footfixed="1"] #footer {
    right: 300px;
}

.neofire-lay-saleunit {
    font-size: 14px;
    font-weight: normal;
    line-height: 1.1;
    min-height: 16px;
    margin-bottom: 1px;
}

.neofire-lay-vat {
    font-size: 13px;
    line-height: 1.2;
}

#all .neofire-lay-el .manuimg {
    display: inline-flex;
}

#all .neofire-lay-el .manuimg {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

#all .neofire-lay-el .qty-box {
    display: flex;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
    /* NEOFIRE-QTY-FRAME: Rahmen gehoert zur Mengenbox, nicht zum Layout-Element - bei "keine" (Box versteckt) bleibt so keine leere Linie */
    border: 1px solid #dedede;
    border-radius: 8px;
    background: transparent;
}

#all .neofire-lay-el .qty-box--none {
    display: none !important;
}

#all .neofire-lay-el .qty-box > #minus,
#all .neofire-lay-el .qty-box > #plus,
#all .neofire-lay-el .qty-box > #qty {
    background: transparent;
    color: inherit;
}

#all .neofire-lay-el .qty-box > #minus:hover,
#all .neofire-lay-el .qty-box > #plus:hover {
    background: #dedede;
}

#all .neofire-lay-el .qty-box > #minus {
    border-right: 1px solid #dedede;
}

#all .neofire-lay-el .qty-box > #plus {
    border-left: 1px solid #dedede;
}

#all .neofire-lay-el .qty-box > #qty {
    flex: 1 1 auto;
    min-width: 0;
    text-align: center;
}

#all .neofire-lay-el .qty-box > #minus,
#all .neofire-lay-el .qty-box > #plus,
#all .neofire-lay-el .qty-box > #qty {
    flex: 1 1 0;
    width: auto;
    min-width: 0;
    padding: 0;
}

#all .product_price_tiers,
.product_price_tiers {
    margin-top: 10px;
    text-align: left;
    font-size: 13px;
    color: #666;
    line-height: 1.5;
    clear: both;
}

.product_price_tiers_title {
    font-weight: 600;
    margin-bottom: 2px;
}

#all .neofire-el-logo.hat-dunkel .neofire-logo-dunkel {
    display: none;
}

#all.darkmode .neofire-el-logo.hat-dunkel .neofire-logo-hell {
    display: none;
}

#all.darkmode .neofire-el-logo.hat-dunkel .neofire-logo-dunkel {
    display: inline-block;
}

#all .neofire-el-logo {
    display: block;
    max-width: 100%;
    height: 100%;
    max-height: 100%;
    line-height: 0;
}

#all .neofire-el-logo img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    display: block;
}

#all #topbar .neofire-lay-row {
    align-items: stretch;
}

#all #topbar .neofire-lay-col {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

#all .card .card-row {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    width: 100%;
}

#all .card .card-row > .card-col {
    flex: 1 1 0;
    min-width: 0;
}

#all .neofire-lay-row {
    column-gap: 12px;
}

#all .neofire-lay-el:has(.core-search) {
    display: flex;
    align-items: stretch;
}

#all .core-search {
    display: flex;
    flex: 1 1 auto;
    align-items: stretch;
    height: 100%;
}

#all #topbar .neofire-search-field {
    align-self: stretch;
    height: auto;
}

#all .neofire-lay-more {
    text-align: center;
}

#all .neofire-lay-spin {
    display: block;
    width: 44px;
    height: 44px;
    margin: 18px auto;
    border: 3px solid #e6e6e6;
    border-top: 3px solid #111;
    border-radius: 50%;
    animation: catSpin 0.8s linear infinite;
}

#all .neofire-lay-spin[hidden] {
    display: none;
}

#all .neofire-form {
    display: flex;
    flex-direction: column;
    gap: 14px;
    width: 100%;
}

#all .neofire-form-feld {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

#all .neofire-form-label {
    font-size: 13.5px;
    opacity: .85;
}

#all .neofire-form input,
#all .neofire-form textarea {
    font: inherit;
    color: inherit;
    background: transparent;
    border: 1px solid rgba(128,128,128,.45);
    border-radius: 8px;
    padding: 10px 12px;
    width: 100%;
    box-sizing: border-box;
}

#all .neofire-form textarea {
    resize: vertical;
    min-height: 90px;
}

#all .neofire-form input:focus,
#all .neofire-form textarea:focus {
    outline: 2px solid #189eff;
    outline-offset: 1px;
    border-color: transparent;
}

#all .neofire-form-senden {
    font: inherit;
    font-weight: 600;
    cursor: pointer;
    padding: 11px 22px;
    border: 0;
    border-radius: 8px;
    background: var(--main-color, #111);
    color: var(--main-background, #fff);
    align-self: flex-start;
}

#all .neofire-form-senden[disabled] {
    opacity: .55;
    cursor: default;
}

#all .neofire-form-topf {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

#all .neofire-form-hinweis {
    margin: 0;
    min-height: 1.2em;
    font-size: 14px;
}

#all .neofire-form-hinweis.is-ok {
    color: #12a150;
}

#all .neofire-form-hinweis.is-fehler {
    color: #e5484d;
}

#all .neofire-tabs {
    margin: 24px 0;
}

#all .neofire-tabs-head {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

#all .neofire-tabs-radio {
    position: absolute;
    opacity: 0;
    pointer-events: none;
    width: 0;
    height: 0;
}

#all .neofire-tabs-tab {
    position: relative;
    padding: 10px 16px 12px;
    cursor: pointer;
    font-weight: 600;
    opacity: .6;
    transition: opacity .18s ease;
    user-select: none;
}

#all .neofire-tabs-tab::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 3px;
    background: currentColor;
    transition: opacity .28s cubic-bezier(.22,.61,.36,1);
    opacity: 0;
}

#all .neofire-tabs-tab:hover {
    opacity: .9;
}

#all .neofire-tabs-tab:hover::after {
    opacity: .45;
}

#all .neofire-tabs-radio:checked + .neofire-tabs-tab {
    opacity: 1;
}

#all .neofire-tabs-radio:checked + .neofire-tabs-tab::after {
    opacity: 1;
}

#all .neofire-tabs-ink {
    position: absolute;
    left: 0;
    top: 0;
    bottom: auto;
    width: 0;
    height: 3px;
    background: currentColor;
    opacity: 0;
    pointer-events: none;
    transition: transform .28s cubic-bezier(.22,.61,.36,1),
                width     .28s cubic-bezier(.22,.61,.36,1),
                opacity   .28s cubic-bezier(.22,.61,.36,1);
}

#all .neofire-tabs.has-ink .neofire-tabs-tab::after {
    display: none;
}

#all .neofire-tabs-panel {
    display: none;
}

#all .neofire-tabs-body {
    padding-top: 18px;
}

#all .neofire-tabs-panel {
    animation: neofire-tabs-auf .22s ease both;
}

@keyframes neofire-tabs-auf {
    from {
        opacity: 0;
        transform: translateY(6px);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

#all .neofire-tabs-radio:nth-of-type(1):checked ~ .neofire-tabs-ink {
    --neofire-tab: 1;
}

#all:has(.neofire-tabs-radio[data-tab="desc"]:checked) .neofire-tabs-panel[data-tab="desc"],
#all:has(.neofire-tabs-radio[data-tab="props"]:checked) .neofire-tabs-panel[data-tab="props"],
#all:has(.neofire-tabs-radio[data-tab="manu"]:checked) .neofire-tabs-panel[data-tab="manu"],
#all:has(.neofire-tabs-radio[data-tab="technic"]:checked) .neofire-tabs-panel[data-tab="technic"],
#all:has(.neofire-tabs-radio[data-tab="secure"]:checked) .neofire-tabs-panel[data-tab="secure"],
#all:has(.neofire-tabs-radio[data-tab="reviews"]:checked) .neofire-tabs-panel[data-tab="reviews"] {
    display: block;
}

#all:not(:has(.neofire-tabs-radio)) .neofire-tabs-body > .neofire-tabs-panel:first-child {
    display: block;
}

#all .neofire-lay-proptable {
    width: 100%;
    border-collapse: collapse;
}

#all .neofire-lay-proptable th,
#all .neofire-lay-proptable td {
    text-align: left;
    padding: 7px 10px;
    border-bottom: 1px solid rgba(128,128,128,.18);
    vertical-align: top;
}

#all .neofire-lay-proptable th {
    width: 34%;
    font-weight: 600;
}

#all .neofire-lay-manuinfo {
    font-style: normal;
    line-height: 1.7;
}

#all .neofire-lay-manubox {
    display: flex;
    align-items: flex-start;
    gap: 28px;
    flex-wrap: wrap;
}

#all .neofire-lay-manuside {
    flex: 0 0 auto;
    max-width: 260px;
    text-align: left;
}

#all .neofire-lay-manulogo {
    max-width: 180px;
    margin-bottom: 12px;
}

#all .neofire-lay-manulogo img {
    display: block;
    max-width: 100%;
    height: auto;
}

#all .neofire-lay-manuinfo {
    font-style: normal;
    line-height: 1.6;
}

#all .neofire-lay-manudesc {
    flex: 1 1 320px;
    min-width: 0;
}

@media (max-width: 600px) {
    #all .neofire-lay-manubox {
        gap: 16px;
    }

    #all .neofire-lay-manuside {
        max-width: 100%;
    }

    #all .neofire-lay-manulogo {
        max-width: 120px;
    }
}

@media (max-width: 768px) {
    #all .neofire-tabs-head {
        flex-wrap: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    #all .neofire-tabs-head::-webkit-scrollbar {
        display: none;
    }

    #all .neofire-tabs-tab {
        white-space: nowrap;
        flex: 0 0 auto;
    }
}

#all .neofire-lay-bc.breadcrumb,
#all .breadcrumb {
    max-width: 100%;
}

@media (max-width: 768px) {
    #all .neofire-lay-bc.breadcrumb,
    #all .breadcrumb {
        flex-wrap: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    #all .neofire-lay-bc.breadcrumb::-webkit-scrollbar,
    #all .breadcrumb::-webkit-scrollbar {
        display: none;
    }

    #all .neofire-lay-bc.breadcrumb > *,
    #all .breadcrumb > * {
        white-space: nowrap;
        flex: 0 0 auto;
    }
}

html.neofire-designer-vp-phone #all .neofire-lay-bc.breadcrumb,
html.neofire-designer-vp-phone #all .breadcrumb {
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}

html.neofire-designer-vp-phone #all .neofire-lay-bc.breadcrumb::-webkit-scrollbar,
html.neofire-designer-vp-phone #all .breadcrumb::-webkit-scrollbar {
    display: none;
}

html.neofire-designer-vp-phone #all .neofire-lay-bc.breadcrumb > *,
html.neofire-designer-vp-phone #all .breadcrumb > * {
    white-space: nowrap;
    flex: 0 0 auto;
}

.neofire-lay-row {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    margin: 0;
}

.neofire-lay-col {
    min-width: 0;
    flex: 1 1 100%;
}

@media (min-width:751px) {
    .neofire-lay-col {
        flex: 1 1 auto;
    }

    .neofire-lay-col--auto {
        flex: 1 1 0;
        min-width: 0;
    }
}

@media (max-width:750px) {
    .neofire-lay-col:not(.m-keep) {
        flex: 1 1 100% !important;
        max-width: 100% !important;
    }

    [data-neofire-lay-region] .neofire-lay-col:not(.m-keep):not(.neofire-lay-col--pct) {
        flex: 0 1 auto !important;
        max-width: none !important;
    }

    .neofire-lay-col.m-1-2 {
        flex: 1 1 50% !important;
        max-width: 50% !important;
    }

    .neofire-lay-col.m-1-3 {
        flex: 1 1 33.3333% !important;
        max-width: 33.3333% !important;
    }
}

[data-neofire-lay-region]>.neofire-lay-row {
    flex: 1 1 100%;
    width: 100%;
    min-width: 0;
}

[data-neofire-lay-region="header"]>.neofire-lay-row {
    align-items: center;
    min-height: 48px;
}

[data-neofire-lay-region="header"] .cat-btn,
[data-neofire-lay-region="header"] #neofire-account-btn,
[data-neofire-lay-region="header"] #open-cart {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.neofire-lay-el {
    margin: 0;
    padding: 0;
}

.neofire-lay-img {
    max-width: 100%;
    height: auto;
    display: block;
}

.neofire-lay-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 20px;
    border-radius: 10px;
    font-weight: 600;
    font-size: 14px;
    text-decoration: none;
    transition: .2s;
    box-sizing: border-box;
}

.neofire-lay-btn--primary,
#all .neofire-lay-btn--primary {
    background: var(--main-largebutton-background);
    color: var(--main-largebutton-color);
    border: var(--main-largebutton-border);
}

.neofire-lay-btn--primary:hover,
#all .neofire-lay-btn--primary:hover {
    background: var(--main-largebutton-hover-background);
    color: var(--main-largebutton-hover-color);
    border: var(--main-largebutton-hover-border);
}

.neofire-lay-btn--outline,
#all .neofire-lay-btn--outline {
    background: var(--main-button-background);
    color: var(--main-button-color);
    border: var(--main-button-border);
}

.neofire-lay-btn--outline:hover,
#all .neofire-lay-btn--outline:hover {
    background: var(--main-button-hover-background);
    color: var(--main-button-hover-color);
    border: var(--main-button-hover-border);
}

.neofire-lay-btn--link,
#all .neofire-lay-btn--link {
    background: none;
    border: 0;
    color: var(--main-color);
    text-decoration: underline;
    padding: 10px 0;
}

.neofire-lay-btn--link:hover,
#all .neofire-lay-btn--link:hover {
    color: var(--main-hover-color);
}

.neofire-lay-pag {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

.neofire-lay-pag a,
.neofire-lay-pag span {
    min-width: 40px;
    height: 40px;
    padding: 0;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    transition: .2s;
}

.neofire-lay-pag a,
.neofire-lay-pag span,
#all .neofire-lay-pag a,
#all .neofire-lay-pag span {
    border: var(--main-button-border);
    background: var(--main-button-background);
    color: var(--main-button-color);
}

.neofire-lay-pag a:hover,
#all .neofire-lay-pag a:hover {
    border: var(--main-button-hover-border);
    background: var(--main-button-hover-background);
    color: var(--main-button-hover-color);
}

.neofire-lay-pag .is-now,
#all .neofire-lay-pag .is-now {
    border: var(--main-largebutton-border);
    background: var(--main-largebutton-background);
    color: var(--main-largebutton-color);
}

.neofire-lay-pag .is-off {
    opacity: .35;
}

.neofire-lay-el a.is-current {
    font-weight: 600;
    text-decoration: underline;
}

#all .neofire-lay-col[data-lay-align="right"]>.neofire-lay-el {
    margin-left: auto;
}

#all .neofire-lay-col[data-lay-align="center"]>.neofire-lay-el {
    margin-left: auto;
    margin-right: auto;
}

.neofire-lay-gone {
    grid-template-columns: minmax(0,340px);
}

.neofire-lay-grid {
    display: grid;
}

.neofire-lay-grid img {
    width: 100%;
    display: block;
    object-fit: cover;
    aspect-ratio: 1/1;
}

.neofire-lay-slider {
    position: relative;
    overflow: hidden;
}

.neofire-lay-track {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    height: 100%;
}

.neofire-lay-track::-webkit-scrollbar {
    display: none;
}

.neofire-lay-track>img {
    flex: 0 0 100%;
    width: 100%;
    height: 100%;
    object-fit: cover;
    scroll-snap-align: center;
    display: block;
}

.neofire-lay-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 36px;
    height: 36px;
    border: var(--main-button-border);
    border-radius: 50%;
    background: var(--main-button-background);
    color: var(--main-button-color);
    font-size: 18px;
    line-height: 36px;
    cursor: pointer;
    padding: 0;
}

.neofire-lay-dots {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 10px;
    display: flex;
    justify-content: center;
    gap: 6px;
}

.neofire-lay-dots button {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: 0;
    padding: 0;
    background: rgba(255,255,255,.7);
    cursor: pointer;
}

.neofire-lay-dots button[aria-current="true"] {
    background: #fff;
}

#all #topbar > .cart-icon {
    flex: 0 0 auto;
}

#all #topbar > .cart-icon + .cart-icon {
    margin-left: -14px;
}

#all #topbar.neofire-search-expanded > #neofire-account-btn,
#all #topbar.neofire-search-expanded > #open-cart {
    display: none !important;
}

#all #topbar.neofire-search-closing > #neofire-account-btn,
#all #topbar.neofire-search-closing > #open-cart {
    visibility: hidden;
}

#all .neofire-banner {
    width: 100%;
    box-sizing: border-box;
    padding: 8px 20px;
    text-align: center;
    line-height: 1.4;
}

#all .neofire-banner:empty {
    display: none;
}

@media (max-width: 640px) {
    #all .neofire-banner {
        padding-left: 0;
        padding-right: 0;
    }

    #all .neofire-banner > * {
        max-width: 100%;
        box-sizing: border-box;
    }

    #all .neofire-banner img {
        width: 100%;
        height: auto;
        display: block;
    }
}

@media (max-width: 640px) {
    #all #content {
        margin-top: 12px;
    }
}

html.neofire-designer-vp-phone #all #content {
    margin-top: 12px;
}

@media (max-width: 640px) {
    #all #topbar.neofire-search-expanded .neofire-search-inner {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        width: auto !important;
    }

    #all #topbar.neofire-search-expanded #core-search-input {
        width: 100% !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
    }

    #all #topbar.neofire-search-expanded .neofire-lay-el:has(.core-search),
    #all #topbar.neofire-search-expanded .neofire-lay-col:has(.core-search) {
        width: 100% !important;
        flex: 1 1 auto !important;
    }
}

html.neofire-designer-vp-phone #all #topbar.neofire-search-expanded .neofire-search-inner {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
}

html.neofire-designer-vp-phone #all #topbar.neofire-search-expanded #core-search-input {
    width: 100% !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

html.neofire-designer-vp-phone #all #topbar.neofire-search-expanded .neofire-lay-el:has(.core-search),
html.neofire-designer-vp-phone #all #topbar.neofire-search-expanded .neofire-lay-col:has(.core-search) {
    width: 100% !important;
    flex: 1 1 auto !important;
}

@media (max-width: 640px) {
    #all #topbar.neofire-search-expanded .neofire-search-inner {
        flex-wrap: nowrap !important;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    #all #topbar.neofire-search-expanded .neofire-search-inner::-webkit-scrollbar {
        display: none;
    }

    #all #topbar .cat-btn,
    #all #topbar .neofire-lang {
        max-width: 140px;
        opacity: 1;
        transition: max-width .26s ease, opacity .18s ease, transform .26s ease,
                    margin .26s ease, padding .26s ease;
    }

    #all #topbar.neofire-search-expanded .cat-btn,
    #all #topbar.neofire-search-expanded .neofire-lang {
        max-width: 0 !important;
        opacity: 0 !important;
        transform: scale(.92);
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        overflow: hidden !important;
        pointer-events: none !important;
    }

    #all [data-lay-type="nav_mega"] {
        transition: max-height .3s ease, opacity .2s ease, margin .3s ease;
    }

    #all:has(#topbar.neofire-search-expanded) [data-lay-type="nav_mega"] {
        max-height: 0 !important;
        opacity: 0 !important;
        overflow: hidden !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        pointer-events: none !important;
    }

    #all #topbar .neofire-search-field,
    #all #topbar .neofire-search-inner {
        transition: width .26s ease, flex-basis .26s ease;
    }

    #all #topbar.neofire-search-expanded .neofire-filterchip {
        flex: 0 0 auto;
        max-width: 55vw;
    }

    #all #topbar.neofire-search-expanded #core-search-input {
        width: auto !important;
        flex: 1 0 90px !important;
        min-width: 90px !important;
    }
}

html.neofire-designer-vp-phone #all #topbar.neofire-search-expanded .neofire-search-inner {
    flex-wrap: nowrap !important;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}

html.neofire-designer-vp-phone #all #topbar.neofire-search-expanded .neofire-search-inner::-webkit-scrollbar {
    display: none;
}

html.neofire-designer-vp-phone #all #topbar.neofire-search-expanded .cat-btn,
html.neofire-designer-vp-phone #all #topbar.neofire-search-expanded .neofire-lang {
    max-width: 0 !important;
    opacity: 0 !important;
    overflow: hidden !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    pointer-events: none !important;
}

html.neofire-designer-vp-phone #all:has(#topbar.neofire-search-expanded) [data-lay-type="nav_mega"] {
    max-height: 0 !important;
    opacity: 0 !important;
    overflow: hidden !important;
}

html.neofire-designer-vp-phone #all #topbar.neofire-search-expanded .neofire-filterchip {
    flex: 0 0 auto;
    max-width: 55vw;
}

html.neofire-designer-vp-phone #all #topbar.neofire-search-expanded #core-search-input {
    width: auto !important;
    flex: 1 0 90px !important;
    min-width: 90px !important;
}

html.neofire-designer-vp-phone #all #topbar .neofire-lay-el:has(> .cat-btn),
html.neofire-designer-vp-phone #all #topbar .neofire-lay-el:has(> * > .cat-btn),
html.neofire-designer-vp-phone #all #topbar .neofire-lay-el:has(.core-search),
html.neofire-designer-vp-phone #all #topbar .neofire-lay-el:has(#neofire-account-btn),
html.neofire-designer-vp-phone #all #topbar .neofire-lay-el:has(#open-cart) {
    height: 40px !important;
}

html.neofire-designer-vp-phone #all .cat-btn {
    min-width: 40px !important;
    min-height: 40px !important;
    font-size: 20px !important;
}

html.neofire-designer-vp-phone #all #topbar .neofire-search-lupe > svg {
    max-height: 24px;
}

html.neofire-designer-vp-phone #all #topbar #neofire-account-btn svg,
html.neofire-designer-vp-phone #all #topbar #open-cart svg {
    max-height: 24px;
}

html.neofire-designer-vp-phone #all .neofire-banner {
    padding-left: 0;
    padding-right: 0;
}

html.neofire-designer-vp-phone #all .neofire-banner > * {
    max-width: 100%;
    box-sizing: border-box;
}

html.neofire-designer-vp-phone #all .neofire-banner img {
    width: 100%;
    height: auto;
    display: block;
}

#all .neofire-pay-logos {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    float: right;
}

#all .neofire-pay-logo {
    height: 22px;
    width: auto;
    max-width: 52px;
    object-fit: contain;
    display: block;
}

.neofire-mega {
    position: relative;
}

.neofire-mega-bar {
    position: relative;
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 0;
    justify-content: var(--neofire-mega-just,flex-start);
    overflow-x: auto;
    overflow-y: visible;
    scroll-behavior: smooth;
    scrollbar-width: none;
}

.neofire-mega-bar::-webkit-scrollbar {
    display: none;
}

.neofire-mega-item {
    flex: 0 0 auto;
}

.neofire-mega-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 61;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 50%;
    padding: 0;
    cursor: pointer;
    background: #fff;
    color: #1a2736;
    box-shadow: none;
    display: none;
    align-items: center;
    justify-content: center;
    transition: opacity .18s ease,background .18s ease;
}

.neofire-mega.is-scroll .neofire-mega-arrow {
    display: flex;
}

.neofire-mega-arrow[disabled] {
    opacity: 0;
    pointer-events: none;
}

.neofire-mega-arrow:hover {
    background: #fff;
}

.neofire-mega-arrow svg {
    width: 18px;
    height: 18px;
}

.neofire-mega-aprev {
    left: 0;
}

.neofire-mega-anext {
    right: 0;
}

.neofire-mega.is-drag .neofire-mega-bar a {
    -webkit-user-drag: none;
    user-drag: none;
}

.neofire-mega.is-drag .neofire-mega-bar {
    cursor: grab;
    scroll-behavior: auto;
}

.neofire-mega.is-dragging .neofire-mega-bar {
    cursor: grabbing;
    user-select: none;
}

.neofire-mega-item {
    position: relative;
    list-style: none;
}

.neofire-mega-link {
    display: block;
    position: relative;
    text-decoration: none;
    cursor: pointer;
    color: var(--neofire-mega-col,inherit);
    font-size: var(--neofire-mega-fs,inherit);
    white-space: nowrap;
}

.neofire-mega-link::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: var(--neofire-mega-mh,2px);
    background: currentColor;
    opacity: 0;
    transform: scaleX(0);
    transform-origin: 100% 50%;
    pointer-events: none;
    transition: transform var(--neofire-nav-dauer) var(--neofire-nav-kurve),opacity var(--neofire-nav-dauer) var(--neofire-nav-kurve);
}

.neofire-mega-ink {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0;
    opacity: 0;
    height: var(--neofire-mega-mh,3px);
    background: currentColor;
    list-style: none;
    pointer-events: none;
    will-change: transform,width;
    transition: transform var(--neofire-nav-dauer) var(--neofire-nav-kurve),width var(--neofire-nav-dauer) var(--neofire-nav-kurve),opacity var(--neofire-nav-dauer) var(--neofire-nav-kurve);
}

.neofire-mega-bar.has-ink .neofire-mega-link::after {
    display: none;
}

.neofire-mega-bgimg {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background-position: center;
    background-repeat: no-repeat;
}

.neofire-mega-panel .neofire-lay-col > * {
    position: relative;
    z-index: 2;
}

.neofire-mega-panel[data-imgpos="right"] .neofire-lay-row:has(> .neofire-lay-col .neofire-mn-img),
.neofire-mega-panel[data-imgpos="right"] .neofire-lay-row:has(> .neofire-lay-col .neofire-mn-imglink),
.neofire-mega-panel[data-imgpos="right"] .neofire-lay-row:has(> .neofire-lay-col .neofire-mn-imgph) {
    flex-direction: row-reverse;
}

.neofire-mega-panel {
    position: fixed;
    left: 0;
    z-index: 60;
    text-align: left;
    min-width: 100%;
    box-sizing: border-box;
    min-height: var(--neofire-mega-minh,0);
    background-image: var(--neofire-mega-bg,none);
    background-size: var(--neofire-mega-bgsize,cover);
    background-repeat: var(--neofire-mega-bgrep,no-repeat);
    background-position: var(--neofire-mega-bgpos,center center);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-6px);
    transition: opacity .16s ease .22s,transform .16s ease .22s,visibility 0s linear .38s;
    box-shadow: none;
}

.neofire-mega[data-flow="push"] .neofire-mega-panel {
    position: static;
    display: none;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: none;
    transition: none;
    left: auto;
    width: auto;
    margin-left: 0;
    box-shadow: none;
}

.neofire-mega[data-flow="push"] .neofire-mega-item.is-open>.neofire-mega-panel {
    display: block;
}

.neofire-mega[data-panelw="full"] .neofire-mega-panel {
    left: 0;
    width: 100vw;
}

.neofire-mega[data-flow="push"][data-panelw="full"] .neofire-mega-panel {
    left: auto;
    width: auto;
    margin-left: 0;
}

.neofire-mega.is-zieht .neofire-mega-item:hover>.neofire-mega-panel,
.neofire-mega.is-zieht .neofire-mega-item.is-open>.neofire-mega-panel {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

.neofire-mega[data-flow="overlay"][data-trigger="hover"]:not(.neofire-mega-js) .neofire-mega-item:hover>.neofire-mega-panel,
.neofire-mega[data-flow="overlay"][data-trigger="hover"] .neofire-mega-item:focus-within>.neofire-mega-panel,
.neofire-mega[data-flow="overlay"] .neofire-mega-item.is-open>.neofire-mega-panel {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: none;
    transition: opacity .16s ease .17s,transform .16s ease .17s,visibility 0s linear .17s;
}

@media (prefers-reduced-motion:reduce) {
    .neofire-mega-panel {
        transform: none;
        transition: opacity .01s linear .22s,visibility 0s linear .22s;
    }
}

.neofire-mega[data-trigger="hover"]:not(.neofire-mega-js) .neofire-mega-item:hover>.neofire-mega-link,
.neofire-mega[data-trigger="hover"] .neofire-mega-item:focus-within>.neofire-mega-link,
.neofire-mega .neofire-mega-item.is-open>.neofire-mega-link {
    color: var(--neofire-mega-colact,var(--neofire-mega-col,inherit));
}

.neofire-mega:not(.neofire-mega-js) .neofire-mega-item:hover>.neofire-mega-link::after,
.neofire-mega-item:focus-within>.neofire-mega-link::after,
.neofire-mega .neofire-mega-item.is-open>.neofire-mega-link::after {
    opacity: 1;
    transform: scaleX(1);
    transform-origin: 0 50%;
}

.neofire-mega .neofire-mega-link.is-current,
.neofire-mega .neofire-mega-link.is-inpath,
.neofire-mega .neofire-mn-h.is-current,
.neofire-mega .neofire-mn-h.is-inpath,
.neofire-mega .neofire-mn-s.is-current,
.neofire-mega .neofire-mn-s.is-inpath,
.neofire-mega .neofire-mn-all.is-current,
.neofire-mega .neofire-mn-all.is-inpath {
    text-decoration: none;
    font-weight: inherit;
}

.neofire-mega .neofire-mega-link.is-current::after,
.neofire-mega .neofire-mega-link.is-inpath::after {
    opacity: .55;
    transform: scaleX(1);
    transform-origin: 0 50%;
}

.neofire-mega:not(.neofire-mega-js) .neofire-mega-item:hover>.neofire-mega-link.is-current::after,
.neofire-mega:not(.neofire-mega-js) .neofire-mega-item:hover>.neofire-mega-link.is-inpath::after,
.neofire-mega .neofire-mega-item.is-open>.neofire-mega-link.is-current::after,
.neofire-mega .neofire-mega-item.is-open>.neofire-mega-link.is-inpath::after,
.neofire-mega-item:focus-within>.neofire-mega-link.is-current::after,
.neofire-mega-item:focus-within>.neofire-mega-link.is-inpath::after {
    opacity: 1;
}

@media (hover:none) {
    .neofire-mega .neofire-mega-item:hover>.neofire-mega-panel,
    .neofire-mega[data-flow="overlay"][data-trigger="hover"] .neofire-mega-item:hover>.neofire-mega-panel,
    .neofire-mega[data-trigger="hover"] .neofire-mega-item:focus-within>.neofire-mega-panel {
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }

    .neofire-mega[data-flow="overlay"][data-trigger="hover"] .neofire-mega-item.is-open>.neofire-mega-panel,
    .neofire-mega[data-trigger="hover"] .neofire-mega-item.is-open>.neofire-mega-panel,
    .neofire-mega .neofire-mega-item.is-open>.neofire-mega-panel {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transition: opacity .16s ease .17s,transform .16s ease .17s,visibility 0s linear .17s;
    }
}

.neofire-mn-subs {
    column-gap: var(--neofire-mn-cg,24px);
}

.neofire-mn-grp {
    break-inside: avoid;
    page-break-inside: avoid;
}

.neofire-mn-h,
.neofire-mn-s {
    display: block;
    position: relative;
    z-index: 1;
    text-decoration: none;
    cursor: pointer;
    transition: transform var(--neofire-nav-dauer) var(--neofire-nav-kurve);
}

.neofire-mn-h:hover,
.neofire-mn-s:hover,
.neofire-mn-h:focus-visible,
.neofire-mn-s:focus-visible {
    transform: translateX(5px);
}

#all .neofire-mega .neofire-mn-img {
    display: block;
    width: 100%;
    height: auto;
    max-height: none;
    max-width: 100%;
}

.neofire-mn-all {
    display: inline-block;
    position: relative;
    text-decoration: none;
    font-weight: 600;
}

.neofire-mn-all::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -2px;
    height: 1px;
    background: currentColor;
    transform: scaleX(0);
    transform-origin: 100% 50%;
    opacity: 1;
    pointer-events: none;
    transition: transform var(--neofire-nav-dauer) var(--neofire-nav-kurve),opacity var(--neofire-nav-dauer) var(--neofire-nav-kurve);
}

.neofire-mn-all:hover::after,
.neofire-mn-all:focus-visible::after {
    transform: scaleX(1);
    transform-origin: 0 50%;
}

.neofire-mega .neofire-mn-all.is-current::after,
.neofire-mega .neofire-mn-all.is-inpath::after {
    opacity: .55;
    transform: scaleX(1);
    transform-origin: 0 50%;
}

.neofire-mega .neofire-mn-all.is-current:hover::after,
.neofire-mega .neofire-mn-all.is-inpath:hover::after {
    opacity: 1;
}

.neofire-mega-hg {
    position: fixed;
    inset: 0;
    z-index: 59;
    display: none;
    background: transparent;
}

.neofire-mega-caret {
    display: none;
    float: right;
    transition: transform .15s;
}

.neofire-mega-caret {
    transform: rotate(180deg);
}

.neofire-mega-item.is-open>.neofire-mega-link .neofire-mega-caret {
    transform: none;
}

@media (prefers-reduced-motion:reduce) {
    .neofire-mega-link::after {
        transform: scaleX(1);
        transform-origin: 0 50%;
        transition: opacity .12s ease;
    }

    .neofire-mn-h,
    .neofire-mn-s {
        transition: none;
    }

    .neofire-mn-h:hover,
    .neofire-mn-s:hover,
    .neofire-mn-h:focus-visible,
    .neofire-mn-s:focus-visible {
        transform: none;
    }

    .neofire-mn-all::after {
        transform: scaleX(1);
        transform-origin: 0 50%;
        opacity: 0;
        transition: opacity .12s ease;
    }

    .neofire-mn-all:hover::after,
    .neofire-mn-all:focus-visible::after {
        opacity: 1;
    }

    .neofire-mega .neofire-mega-link.is-current::after,
    .neofire-mega .neofire-mega-link.is-inpath::after,
    .neofire-mega .neofire-mn-all.is-current::after,
    .neofire-mega .neofire-mn-all.is-inpath::after {
        transform: scaleX(1);
        opacity: .55;
    }

    .neofire-mega:not(.neofire-mega-js) .neofire-mega-item:hover>.neofire-mega-link.is-current::after,
    .neofire-mega:not(.neofire-mega-js) .neofire-mega-item:hover>.neofire-mega-link.is-inpath::after,
    .neofire-mega .neofire-mn-all.is-current:hover::after,
    .neofire-mega .neofire-mn-all.is-inpath:hover::after {
        opacity: 1;
    }
}

html.neofire-designer-vp-phone .neofire-mega-bar {
    flex-direction: row;
    flex-wrap: nowrap;
}

html.neofire-designer-vp-phone .neofire-mega-item {
    width: auto;
    flex: 0 0 auto;
}

html.neofire-designer-vp-phone .neofire-mega-link {
    white-space: nowrap;
}

html.neofire-designer-vp-phone .neofire-mega-caret {
    display: inline-block;
}

html.neofire-designer-vp-phone .neofire-mn-subs {
    column-count: 1 !important;
}

html.neofire-designer-vp-phone .neofire-mega[data-mobile="off"] {
    display: block;
    position: relative;
    min-height: 34px;
    min-width: 34px;
    background: rgba(245,158,11,.10);
    border-radius: 4px;
}

html.neofire-designer-vp-phone .neofire-mega[data-mobile="off"]>* {
    opacity: .12;
}

html.neofire-designer-vp-phone .neofire-mega[data-mobile="off"]::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2147483002;
    pointer-events: none;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 22px 22px;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff9800' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'><rect x='7.5' y='2.5' width='9' height='19' rx='1.8'/><path d='M11 18.6h2'/><path d='M3.5 20.5 L20.5 3.5' stroke-width='2.1'/></svg>");
}

html.neofire-designer-vp-phone .neofire-hide-phone .neofire-mega[data-mobile="off"] {
    background: none;
}

html.neofire-designer-vp-phone .neofire-hide-phone .neofire-mega[data-mobile="off"]>* {
    opacity: 1;
}

html.neofire-designer-vp-phone .neofire-hide-phone .neofire-mega[data-mobile="off"]::after {
    display: none;
}

@media (max-width:640px) {
    .neofire-mega-bar {
        flex-direction: row;
        flex-wrap: nowrap;
    }

    .neofire-mega-item {
        width: auto;
        flex: 0 0 auto;
    }

    .neofire-mega-link {
        white-space: nowrap;
    }

    .neofire-mega-caret {
        display: inline-block;
    }

    .neofire-mega[data-mobile="off"] {
        display: none;
    }

    .neofire-mn-subs {
        column-count: 1 !important;
    }
}

#all .neofire-lay-number .neofire-lay-lbl,
#all .neofire-lay-ean .neofire-lay-lbl {
    font-weight: 700;
}

#all .neofire-lang {
    position: relative;
    display: inline-block;
}

#all .neofire-lang-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    height: 50px;
    padding: 0 4px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    box-shadow: none;
    transition: opacity .15s;
}

#all .neofire-lang-btn:hover {
    opacity: .65;
}

#all.darkmode .neofire-lang-btn {
    border: 0;
}

#all.darkmode .neofire-lang-btn:hover {
    opacity: .7;
}

#all .neofire-lang-fahne {
    display: block;
    width: 26px;
    height: 18px;
    border-radius: 2px;
    flex: 0 0 auto;
    box-shadow: none;
    object-fit: cover;
}

#all .neofire-lang-btn span,
#all .neofire-lang-btn .neofire-lang-code,
#all .neofire-lang-btn .neofire-lang-caret {
    color: inherit;
}

#all .neofire-lang-code {
    letter-spacing: .02em;
    font-size: 16px;
    font-weight: 700;
    line-height: 30px;
}

#all .neofire-lang-caret {
    display: block;
    flex: 0 0 auto;
    width: 14px;
    height: 14px;
    opacity: .55;
    transition: transform .18s;
}

#all .neofire-lang.is-open .neofire-lang-caret {
    transform: rotate(180deg);
}

#all .neofire-lang-menu {
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    min-width: 140px;
    padding: 6px;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    background: #fff;
    z-index: 60;
}

#all .neofire-lang-menu--links {
    right: auto;
    left: 0;
}

#all .neofire-lang-menu[hidden] {
    display: none;
}

#all.darkmode .neofire-lang-menu {
    background: #111827;
    border-color: rgba(255,255,255,.14);
}

#all .neofire-lang-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    border-radius: 8px;
    text-decoration: none;
    color: inherit;
    font-size: 13px;
    font-weight: 600;
    white-space: nowrap;
}

#all .neofire-lang-item:hover {
    background: rgba(0,0,0,.05);
}

#all.darkmode .neofire-lang-item:hover {
    background: rgba(255,255,255,.08);
}

#all .neofire-lang-label {
    flex: 1 1 auto;
}

#all .neofire-lang-haken {
    opacity: 0;
    font-size: 13px;
}

#all .neofire-lang-item.is-active .neofire-lang-haken {
    opacity: .75;
}

#all .neofire-lang--reihe {
    display: inline-flex;
    gap: 4px;
}

#all .neofire-lang--reihe .neofire-lang-item {
    padding: 5px 8px;
    border: 1px solid transparent;
}

#all .neofire-lang--reihe .neofire-lang-item.is-active {
    border-color: rgba(0,0,0,.18);
    border-radius: 999px;
}

@media (max-width:750px) {
    #all .neofire-lang-menu {
        right: 0;
        left: auto;
        min-width: 160px;
    }
}

#all .cart-property-switch {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 2px 0 6px;
}

#all .cart-property-switch .switch {
    top: 0;
    margin: 0;
}

#all .cart-property-switch-price {
    font-size: 13px;
    opacity: .75;
}

#all .neofire-stock {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    line-height: 1.4;
}

#all .neofire-stock-punkt {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    flex: 0 0 auto;
    background: #9ca3af;
}

#all .neofire-stock--gruen .neofire-stock-punkt {
    background: #16a34a;
}

#all .neofire-stock--gelb .neofire-stock-punkt {
    background: #f59e0b;
}

#all .neofire-stock--rot .neofire-stock-punkt {
    background: #dc2626;
}

#all .neofire-stock--gruen .neofire-stock-text {
    color: #15803d;
}

#all .neofire-stock--gelb .neofire-stock-text {
    color: #b45309;
}

#all .neofire-stock--rot .neofire-stock-text {
    color: #b91c1c;
}

#all.darkmode .neofire-stock--gruen .neofire-stock-text {
    color: #4ade80;
}

#all.darkmode .neofire-stock--gelb .neofire-stock-text {
    color: #fbbf24;
}

#all.darkmode .neofire-stock--rot .neofire-stock-text {
    color: #f87171;
}

#all .neofire-nl {
    max-width: 360px;
}

#all .neofire-nl-titel {
    font-weight: 700;
    margin: 0 0 6px;
}

#all .neofire-nl-text {
    font-size: 14px;
    opacity: .8;
    margin: 0 0 10px;
}

#all .neofire-nl-form {
    display: flex;
    flex-wrap: wrap;
    column-gap: 8px;
    row-gap: 8px;
    align-items: stretch;
}

#all .neofire-nl-feld {
    flex: 1 1 160px;
    min-width: 0;
    padding: 7px 10px;
    border: 1px solid var(--main-border-color, #d6d9e0);
    border-radius: 8px;
    background: #fff;
    color: inherit;
    font-size: 13px;
}

#all .neofire-nl-feld.neofire-nl-kurz {
    flex: 0 0 90px;
}

#all .neofire-nl-knopf {
    flex: 0 0 auto;
    padding: 7px 16px;
    border-radius: 0 8px 8px 0;
    border: var(--main-button-border, 0);
    background: var(--main-button-color, #111);
    color: var(--main-button-text-color, #fff);
    cursor: pointer;
    font-size: 14px;
}

#all .neofire-nl-recht {
    flex: 1 1 100%;
    font-size: 12px;
    line-height: 1.45;
    opacity: .75;
}

#all .neofire-nl-recht a {
    text-decoration: underline;
}

#all .neofire-nl-hinweis {
    font-size: 12px;
    opacity: .7;
    margin-top: 8px;
}

#all .neofire-pays-titel {
    font-weight: 700;
    margin: 0 0 12px;
    color: inherit;
}

@media (max-width: 640px) {
    #all [data-neofire-lay-region="footer"] .neofire-facc-head[data-lay-type="f_payments"]::after {
        top: 5px;
        margin-top: 0;
    }

    #all [data-neofire-lay-region="footer"] .neofire-facc.is-open > .neofire-facc-head[data-lay-type="f_payments"]::after {
        top: 9px;
        margin-top: 0;
    }

    #all [data-neofire-lay-region="footer"] .neofire-facc:not(.is-open) > .neofire-facc-head .neofire-pays {
        display: none !important;
    }

    #all [data-neofire-lay-region="footer"] .neofire-facc:not(.is-open) > .neofire-facc-head .neofire-pays-titel {
        margin-bottom: 0;
    }
}

#all .neofire-pays {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 14px;
}

#all .neofire-pay {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

#all .neofire-pay-logo {
    height: var(--neofire-pay-h, 28px);
    width: auto;
    max-width: 90px;
    object-fit: contain;
    display: block;
}

#all .neofire-pay-name {
    font-size: 13px;
    opacity: .8;
}

#all .neofire-nl-meldung {
    margin-top: 10px;
    padding: 10px 12px;
    border-radius: 8px;
    font-size: 14px;
}

#all .neofire-nl-meldung.ok {
    background: #f0faf3;
    border: 1px solid #bfe3cb;
    color: #1f7a3d;
}

#all .neofire-nl-meldung.fehler {
    background: #fdecec;
    border: 1px solid #f5b5b5;
    color: #8a1c1c;
}

#all.darkmode .neofire-nl-feld {
    background: #131a26;
    border-color: #2a3446;
}

@media (max-width: 600px) {
    #all .neofire-nl-feld.neofire-nl-kurz {
        flex: 1 1 90px;
    }
}

#all .neofire-nl-wechsel {
    margin-top: 8px;
    padding: 0;
    border: 0;
    background: none;
    color: inherit;
    opacity: .7;
    font-size: 13px;
    text-decoration: underline;
    cursor: pointer;
}

#all .neofire-nl-wechsel:hover {
    opacity: 1;
}

#all .neofire-lay-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 44px;
    padding: 0 22px;
    border-radius: 9px;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: .2s;
    color: var(--main-largebutton-color);
    background: var(--main-largebutton-background);
    border: var(--main-largebutton-border);
}

#all .neofire-lay-btn:hover {
    color: var(--main-largebutton-hover-color);
    background: var(--main-largebutton-hover-background);
    border-color: currentColor;
}

#all.darkmode .neofire-lay-btn {
    color: #fff !important;
    border-color: #fff !important;
}

#all .neofire-bk {
    width: 100%;
    max-width: 100%;
    font-size: 14px;
}

#all .neofire-lay-el:not(:only-child) > .neofire-bk {
    margin-left: 0;
    margin-right: 0;
}

#all .neofire-bk-titel {
    font-weight: 700;
    font-size: 19px;
    line-height: 1.25;
    margin: 0;
    padding: 0 0 12px;
}

#all .neofire-bk-name {
    font-weight: 700;
    font-size: 19px;
    line-height: 1.25;
    margin: 0;
    padding: 0 0 12px;
}

#all .neofire-bk-titel + .neofire-bk-name {
    padding-top: 0;
}

#all .neofire-bk-titel:has(+ .neofire-bk-name) {
    padding-bottom: 4px;
}

#all .neofire-bk-hinweis {
    margin: 0 0 8px;
    font-size: 13px;
    opacity: .65;
}

#all .neofire-bk-kalwahl {
    width: 100%;
    height: 38px;
    margin: 0 0 10px;
    border: 1px solid #ececec;
    border-radius: 9px;
    padding: 0 10px;
    font-size: 14px;
    background: #fff;
    box-sizing: border-box;
}

#all .neofire-bk-eig {
    margin: 0 0 6px;
}

#all .neofire-bk-eig > *:first-child,
#all .neofire-bk-eig > *:first-child > *:first-child {
    margin-top: 0;
}

#all .neofire-bk-eig .property-title {
    font-weight: 600;
    font-size: 13px;
}

#all .neofire-bk-kal {
    max-width: 100%;
    border: 0;
    border-radius: 0;
    padding: 12px 0 16px;
}

.neofire-bk-tag {
    display: none;
}

#all .neofire-bk-kal .flatpickr-calendar {
    box-shadow: none;
    margin: 0;
    width: 100%;
    font-size: 13px;
    animation: none;
    top: 0;
    background: transparent;
}

#all .neofire-bk-kal .flatpickr-months {
    padding: 2px 0 4px;
}

#all .neofire-bk-kal .flatpickr-current-month {
    font-size: 14px;
    font-weight: 600;
    padding: 0;
}

#all .neofire-bk-kal .flatpickr-monthDropdown-months {
    font-size: 14px;
    font-weight: 600;
}

#all .neofire-bk-kal .flatpickr-weekday {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .04em;
    opacity: .55;
}

#all .neofire-bk-kal .flatpickr-calendar,
#all .neofire-bk-kal .flatpickr-innerContainer,
#all .neofire-bk-kal .flatpickr-rContainer,
#all .neofire-bk-kal .flatpickr-weekdays,
#all .neofire-bk-kal .flatpickr-days {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
}

#all .neofire-bk-kal .flatpickr-days {
    height: auto !important;
}

#all .neofire-bk-kal .flatpickr-innerContainer {
    overflow: visible;
}

#all .neofire-bk-kal .flatpickr-rContainer {
    height: auto;
}

#all .neofire-bk-kal .dayContainer {
    width: 100%;
    min-width: 100%;
    max-width: 100%;
    height: auto !important;
    display: grid;
    grid-template-columns: repeat(7,1fr);
    justify-items: center;
    gap: 3px;
    align-content: start;
    padding: 1px;
    box-sizing: border-box;
}

#all .neofire-bk-kal .flatpickr-day {
    width: 32px;
    max-width: 32px;
    height: 32px;
    line-height: 32px;
    margin: 0;
    border: none;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    font-size: 13px;
    flex: 0 0 32px;
}

#all .neofire-bk-kal .flatpickr-weekdaycontainer {
    display: grid;
    grid-template-columns: repeat(7,1fr);
    justify-items: center;
    gap: 3px;
    width: 100%;
}

#all .neofire-bk-kal .flatpickr-weekday {
    width: 32px;
    max-width: 32px;
    flex: 0 0 32px;
}

#all .neofire-bk-kal .calendar-available {
    background: #e1ffe3 !important;
    color: #000 !important;
}

#all .neofire-bk-kal .calendar-closed {
    background: #ebebeb !important;
    color: #000 !important;
}

#all .neofire-bk-kal .flatpickr-day.flatpickr-disabled,
#all .neofire-bk-kal .flatpickr-day.flatpickr-disabled:hover {
    color: rgba(57,57,57,.3);
    background: #ff000021 !important;
    border-color: transparent;
    cursor: not-allowed;
    pointer-events: none;
}

#all .neofire-bk-kal .flatpickr-day.selected,
#all .neofire-bk-kal .flatpickr-day.selected:hover,
#all .neofire-bk-kal .flatpickr-day:hover,
#all .neofire-bk-kal .flatpickr-day.startRange,
#all .neofire-bk-kal .flatpickr-day.endRange {
    background: #111 !important;
    color: #fff !important;
    border-color: #111 !important;
}

#all .neofire-bk-kal .dayContainer {
    column-gap: 0;
}

#all .neofire-bk-kal .flatpickr-weekdaycontainer {
    column-gap: 0;
}

#all .neofire-bk-kal .flatpickr-day.inRange,
#all .neofire-bk-kal .flatpickr-day.startRange,
#all .neofire-bk-kal .flatpickr-day.endRange {
    background: #111 !important;
    color: #fff !important;
    border-color: #111 !important;
    box-shadow: none !important;
    width: 100% !important;
    max-width: none !important;
    flex: 1 1 auto !important;
    border-radius: 0 !important;
}

#all .neofire-bk-kal .flatpickr-day.inRange,
#all .neofire-bk-kal .flatpickr-day.startRange {
    box-shadow: 1px 0 0 0 #111 !important;
}

#all .neofire-bk-kal .dayContainer .flatpickr-day.inRange:nth-child(7n),
#all .neofire-bk-kal .dayContainer .flatpickr-day.startRange:nth-child(7n) {
    box-shadow: none !important;
}

#all .neofire-bk-kal .flatpickr-day.startRange {
    border-radius: 6px 0 0 6px !important;
}

#all .neofire-bk-kal .flatpickr-day.endRange {
    border-radius: 0 6px 6px 0 !important;
}

#all .neofire-bk-kal .flatpickr-day.startRange.endRange {
    border-radius: 6px !important;
    width: 32px !important;
    max-width: 32px !important;
    flex: 0 0 32px !important;
}

#all .neofire-bk-kal .dayContainer .flatpickr-day.inRange:nth-child(7n+1) {
    border-top-left-radius: 6px !important;
    border-bottom-left-radius: 6px !important;
}

#all .neofire-bk-kal .dayContainer .flatpickr-day.inRange:nth-child(7n) {
    border-top-right-radius: 6px !important;
    border-bottom-right-radius: 6px !important;
}

#all .neofire-bk-kal .prevMonthDay,
#all .neofire-bk-kal .nextMonthDay {
    opacity: .25;
}

#all .neofire-bk-kal .flatpickr-months .flatpickr-prev-month,
#all .neofire-bk-kal .flatpickr-months .flatpickr-next-month {
    box-sizing: border-box;
    border: 0;
    background: none;
    border-radius: 0;
    width: 30px;
    height: 30px;
    padding: 8px;
    top: -5px;
    display: flex;
    align-items: center;
    justify-content: center;
}

#all .neofire-bk-kal .flatpickr-months .flatpickr-prev-month:hover,
#all .neofire-bk-kal .flatpickr-months .flatpickr-next-month:hover {
    background: none;
    opacity: .6;
}

#all .neofire-bk-kal .flatpickr-months .flatpickr-prev-month svg,
#all .neofire-bk-kal .flatpickr-months .flatpickr-next-month svg {
    width: 11px;
    height: 11px;
}

#all .neofire-bk-leer {
    font-size: 13px;
    opacity: .65;
    margin-top: 8px;
}

#all .neofire-bk-gewaehlt {
    margin-top: 8px;
    font-size: 13px;
    font-weight: 600;
}

#all .neofire-bk-zeiten {
    margin-top: 10px;
}

#all .neofire-bk .calendar-time-row {
    display: flex;
    gap: 10px;
}

#all .neofire-bk .calendar-time-col {
    flex: 1 1 0;
    min-width: 0;
}

#all .neofire-bk .calendar-time-col label {
    display: block;
    font-size: 12px;
    margin: 0 0 4px;
    font-weight: 600;
    opacity: .7;
}

#all .neofire-bk .time-select {
    position: relative;
    width: 100%;
}

#all .neofire-bk .time-icon {
    position: absolute;
    left: 10px;
    top: 50%;
    width: 16px;
    height: 16px;
    transform: translateY(-50%);
    pointer-events: none;
    opacity: .55;
}

#all .neofire-bk .calendar-slot-start,
#all .neofire-bk .calendar-slot-end {
    width: 100%;
    height: 38px;
    border: 1px solid #ececec;
    border-radius: 9px;
    padding: 0 8px 0 32px;
    font-size: 14px;
    font-weight: 600;
    background: #fff;
    box-sizing: border-box;
    margin: 0;
}

#all .neofire-bk .calendar-slot-end:disabled {
    background: #f6f7f8;
    opacity: 1;
}

#all .neofire-bk-leiste {
    display: flex;
    align-items: stretch;
    gap: 8px;
    margin-top: 12px;
    max-width: calc(100% - 10px);
}

#all .neofire-bk-oeffnen {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: calc(100% - 10px);
    max-width: 100%;
    height: 44px;
    padding: 0 20px;
    border-radius: 9px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: .2s;
    color: var(--main-largebutton-color);
    background: var(--main-largebutton-background);
    border: var(--main-largebutton-border);
}

#all .neofire-bk-oeffnen:hover {
    color: var(--main-largebutton-hover-color);
    background: var(--main-largebutton-hover-background);
    border-color: currentColor;
}

#all .neofire-bk-kopf {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    padding: 0 0 4px;
    margin: 0;
    background: none;
    border: 0;
    text-align: left;
    cursor: pointer;
    color: inherit;
    font: inherit;
}

#all .neofire-bk-kopf .neofire-bk-titel,
#all .neofire-bk-kopf .neofire-bk-name {
    display: block;
    padding: 0;
}

#all .neofire-bk-kopf span {
    color: inherit;
}

#all .neofire-bk-kopf .neofire-bk-name {
    font-weight: 600;
    opacity: .8;
    font-size: 15px;
}

#all .neofire-bk-pfeil {
    flex: 0 0 auto;
    width: 10px;
    height: 10px;
    margin-top: 7px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg);
    opacity: .6;
    transition: transform .18s ease;
}

#all .neofire-bk--klapp.is-open .neofire-bk-pfeil {
    transform: rotate(-135deg);
}

#all .neofire-bk--klapp > .neofire-bk-inhalt {
    display: none;
}

#all .neofire-bk--klapp.is-open > .neofire-bk-inhalt {
    display: block;
    margin-top: 16px;
}

#all .neofire-bk--mini {
    position: relative;
    width: 320px;
    max-width: 100%;
}

#all .neofire-bk--mini > .neofire-bk-inhalt {
    display: none;
}

#all .neofire-bk--mini.is-open > .neofire-bk-inhalt {
    display: block;
    position: absolute;
    z-index: 70;
    top: calc(100% + 8px);
    left: 0;
    width: calc(100% - 10px);
    max-width: calc(100vw - 24px);
    background: #fff;
    border: 1px solid #e4e6ea;
    border-radius: 12px;
    box-shadow: 0 14px 38px rgba(0,0,0,.18);
    padding: 10px;
    box-sizing: border-box;
    max-height: calc(100vh - 24px);
    overflow-y: auto;
}

#all .neofire-bk--mini.is-oben.is-open > .neofire-bk-inhalt {
    top: auto;
    bottom: calc(100% + 8px);
}

#all.darkmode .neofire-bk--mini.is-open > .neofire-bk-inhalt {
    background: #0f1420;
    border-color: #2a2f3a;
    box-shadow: 0 14px 38px rgba(0,0,0,.6);
}

#all .neofire-bk--mini .neofire-bk-kal {
    padding: 10px 0 12px;
}

#all .neofire-bk--mini .neofire-bk-kal .dayContainer {
    row-gap: 2px;
    column-gap: 0;
}

#all .neofire-bk--mini .neofire-bk-kal .flatpickr-day {
    width: 32px;
    max-width: 32px;
    height: 32px;
    line-height: 32px;
    flex: 0 0 32px;
}

#all .neofire-bk--mini .neofire-bk-kal .flatpickr-weekday {
    width: 32px;
    max-width: 32px;
    flex: 0 0 32px;
}

#all .neofire-bk--mini .neofire-bk-kal .flatpickr-weekdaycontainer {
    row-gap: 2px;
    column-gap: 0;
}

#all .neofire-bk--mini .neofire-bk-knopf,
#all.darkmode .neofire-bk--mini .neofire-bk-knopf {
    background: #fff !important;
    color: #111 !important;
    border: 1px solid #e0e3e8 !important;
}

#all .neofire-bk--mini .neofire-bk-knopf:hover,
#all.darkmode .neofire-bk--mini .neofire-bk-knopf:hover {
    background: #f3f4f6 !important;
    color: #111 !important;
    border-color: #d5d9e0 !important;
}

@media (min-width:600px) {
    #all .neofire-lay-row:has(> .neofire-lay-col > .neofire-lay-el:only-child .neofire-bk) {
        flex-wrap: nowrap;
    }

    #all .neofire-lay-col:has(> .neofire-lay-el:only-child .neofire-bk) {
        flex: 0 0 320px;
        max-width: 320px;
        min-width: 320px;
    }

    #all .neofire-lay-row:has(> .neofire-lay-col > .neofire-lay-el:only-child .neofire-bk) > .neofire-lay-col:not(:has(> .neofire-lay-el:only-child .neofire-bk)) {
        flex: 1 1 auto;
        max-width: none;
        min-width: 0;
    }
}

#all .neofire-bk-leiste[hidden] {
    display: none;
}

#all .neofire-bk-menge {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    border: 1px solid #ececec;
    border-radius: 9px;
    overflow: hidden;
}

#all .neofire-bk-menge button {
    width: 32px;
    height: 44px;
    border: 0;
    background: transparent;
    font-size: 17px;
    line-height: 1;
    cursor: pointer;
    color: inherit;
}

#all .neofire-bk-menge button:hover {
    background: #0000000d;
}

#all .neofire-bk-anz {
    min-width: 26px;
    text-align: center;
    font-weight: 600;
    font-size: 14px;
}

#all .neofire-bk-menge--fest button {
    display: none;
}

#all .neofire-bk-menge--fest .neofire-bk-anz {
    padding: 0 14px;
    white-space: nowrap;
}

#all .neofire-bk-knopf {
    flex: 1 1 auto;
    padding: 0 22px;
    height: 44px;
    border-radius: 9px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    color: var(--main-largebutton-color);
    background: var(--main-largebutton-background);
    border: var(--main-largebutton-border);
}

#all .neofire-bk-knopf {
    transition: .2s;
}

#all .neofire-bk-knopf:hover {
    color: var(--main-largebutton-hover-color);
    background: var(--main-largebutton-hover-background);
    border-color: currentColor;
}

#all .neofire-bk-knopf[disabled] {
    opacity: .6;
    cursor: progress;
}

#all.darkmode .neofire-bk-menge,
#all.darkmode .neofire-bk .calendar-slot-start,
#all.darkmode .neofire-bk .calendar-slot-end {
    border-color: #2a2f3a;
}

#all.darkmode .neofire-bk .calendar-slot-start,
#all.darkmode .neofire-bk .calendar-slot-end {
    background: #151a23;
    color: #e8ecf3;
}

#all.darkmode .neofire-bk-kal {
    background: transparent;
}

#all.darkmode .neofire-bk-kal .flatpickr-calendar {
    background: transparent;
    color: #e8ecf3;
}

#all.darkmode .neofire-bk-kal .flatpickr-current-month,
#all.darkmode .neofire-bk-kal .flatpickr-current-month input.cur-year,
#all.darkmode .neofire-bk-kal .flatpickr-monthDropdown-months {
    color: #e8ecf3;
    background: transparent;
}

#all.darkmode .neofire-bk-kal .flatpickr-monthDropdown-months option {
    color: #111;
}

#all.darkmode .neofire-bk-kal .flatpickr-weekday {
    color: #8b95a5;
}

#all.darkmode .neofire-bk-kal .flatpickr-day {
    color: #e8ecf3;
}

#all.darkmode .neofire-bk-kal .calendar-available {
    background: #16351f !important;
    color: #dff5e4 !important;
}

#all.darkmode .neofire-bk-kal .calendar-closed {
    background: #232833 !important;
    color: #c9d1dc !important;
}

#all.darkmode .neofire-bk-kal .flatpickr-day.flatpickr-disabled,
#all.darkmode .neofire-bk-kal .flatpickr-day.flatpickr-disabled:hover {
    background: #3a1f22 !important;
    color: #ffffff40;
}

#all.darkmode .neofire-bk-kal .flatpickr-day.selected,
#all.darkmode .neofire-bk-kal .flatpickr-day.selected:hover,
#all.darkmode .neofire-bk-kal .flatpickr-day:hover,
#all.darkmode .neofire-bk-kal .flatpickr-day.inRange,
#all.darkmode .neofire-bk-kal .flatpickr-day.startRange,
#all.darkmode .neofire-bk-kal .flatpickr-day.endRange {
    background: #e8ecf3 !important;
    color: #111 !important;
    border-color: #e8ecf3 !important;
}

#all.darkmode .neofire-bk-kal .flatpickr-day.inRange,
#all.darkmode .neofire-bk-kal .flatpickr-day.startRange {
    box-shadow: 1px 0 0 0 #e8ecf3 !important;
}

#all.darkmode .neofire-bk-kal .flatpickr-day.endRange {
    box-shadow: none !important;
}

#all.darkmode .neofire-bk-kal .dayContainer .flatpickr-day.inRange:nth-child(7n),
#all.darkmode .neofire-bk-kal .dayContainer .flatpickr-day.startRange:nth-child(7n) {
    box-shadow: none !important;
}

#all.darkmode .neofire-bk-kal .flatpickr-months .flatpickr-prev-month svg,
#all.darkmode .neofire-bk-kal .flatpickr-months .flatpickr-next-month svg {
    fill: #e8ecf3;
}

#all.darkmode .neofire-bk-knopf,
#all.darkmode .neofire-bk-oeffnen {
    color: #fff !important;
    border-color: #fff !important;
}

#all.darkmode .neofire-bk-knopf:hover,
#all.darkmode .neofire-bk-oeffnen:hover {
    color: #fff !important;
    border-color: #fff !important;
    background: #1b1b1b;
}

#all.darkmode .neofire-mega-arrow {
    background: #151a23;
    color: #e8ecf3;
}

#all.darkmode .neofire-mega-arrow:hover {
    background: #1d2431;
}

.neofire-bk-gewaehlt {
    margin-top: 12px;
    font-weight: 600;
}

#all .neofire-gs-feld {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    margin: 10px 0;
}

#all .neofire-gs-code {
    flex: 1 1 140px;
    min-width: 0;
    height: 40px;
    padding: 0 12px;
    border: 1px solid #ececec;
    border-radius: 9px;
    font-size: 14px;
    background: #fff;
    box-sizing: border-box;
}

#all .neofire-gs-los,
#all .neofire-gs-weg {
    flex: 0 0 auto;
    height: 40px;
    padding: 0 16px;
    border-radius: 9px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    color: var(--main-button-color);
    background: var(--main-button-background);
    border: var(--main-button-border);
}

#all .neofire-gs-los:hover,
#all .neofire-gs-weg:hover {
    color: var(--main-button-hover-color);
    background: var(--main-button-hover-background);
}

#all .neofire-gs-fehler {
    flex: 1 1 100%;
    font-size: 13px;
    color: #b91c1c;
}

#all .neofire-gs-zeile {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    font-size: 14px;
    font-weight: 600;
    margin: 4px 0;
}

#all.darkmode .neofire-gs-code {
    background: #151a23;
    color: #e8ecf3;
    border-color: #2a2f3a;
}

#all .neofire-rev {
    font-size: 14px;
}

#all .neofire-rev-titel {
    font-weight: 700;
    font-size: 19px;
    line-height: 1.25;
    margin: 0 0 10px;
}

#all .neofire-rev-liste .neofire-rev-eintrag:first-child {
    border-top: 0;
}

#all .neofire-rev-kopf {
    margin: 0 0 14px;
}

#all .neofire-rev .neofire-customer-pg {
    margin-top: 16px;
}

#all .neofire-rev-leer {
    padding: 18px 0;
    opacity: .65;
}

#all .neofire-rate {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    line-height: 1;
}

#all .neofire-rate-sterne {
    position: relative;
    display: inline-block;
    color: #d9dde3;
    letter-spacing: 2px;
    white-space: nowrap;
}

#all .neofire-rate-voll {
    position: absolute;
    left: 0;
    top: 0;
    overflow: hidden;
    white-space: nowrap;
    color: #f59e0b;
    letter-spacing: 2px;
}

#all .neofire-rate-wert {
    font-size: .62em;
    font-weight: 700;
}

#all .neofire-rate-zahl {
    font-size: .58em;
    opacity: .6;
}

#all.darkmode .neofire-rate-sterne {
    color: #39404c;
}

#all .neofire-rev-kopf {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 14px;
}

#all .neofire-rev-sterne {
    color: #f59e0b;
    letter-spacing: 1px;
    white-space: nowrap;
}

#all .neofire-rev-zahl {
    opacity: .7;
    font-size: 13px;
}

#all .neofire-rev-eintrag {
    padding: 12px 0;
    border-top: 1px solid #ececec;
}

#all .neofire-rev-zeile {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

#all .neofire-rev-autor {
    font-weight: 600;
}

#all .neofire-rev-datum {
    opacity: .55;
    font-size: 12px;
}

#all .neofire-rev-kopfzeile {
    font-weight: 600;
    margin: 4px 0 2px;
}

#all .neofire-rev-text {
    line-height: 1.55;
}

#all .neofire-rev-antwort {
    margin-top: 8px;
    padding: 8px 12px;
    border-radius: 9px;
    background: #f6f7f8;
    font-size: 13px;
}

#all .neofire-rev-auf {
    margin-top: 14px;
    height: 40px;
    padding: 0 18px;
    border-radius: 9px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    color: var(--main-button-color);
    background: var(--main-button-background);
    border: var(--main-button-border);
}

#all .neofire-rev-auf:hover {
    color: var(--main-button-hover-color);
    background: var(--main-button-hover-background);
}

#all .neofire-rev-form {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 12px;
    max-width: 520px;
}

#all .neofire-rev-form[hidden] {
    display: none;
}

#all .neofire-rev-wahl {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

#all .neofire-rev-opt {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
}

#all .neofire-rev-opt span {
    color: #f59e0b;
    letter-spacing: 1px;
}

#all .neofire-rev-form input[type="text"],
#all .neofire-rev-form textarea {
    width: 100%;
    box-sizing: border-box;
    padding: 10px 12px;
    border: 1px solid #ececec;
    border-radius: 9px;
    font-size: 14px;
    font-family: inherit;
    background: #fff;
}

#all .neofire-rev-senden {
    align-self: flex-start;
    height: 40px;
    padding: 0 20px;
    border-radius: 9px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    color: var(--main-largebutton-color);
    background: var(--main-largebutton-background);
    border: var(--main-largebutton-border);
}

#all .neofire-rev-meldung {
    font-size: 13px;
}

#all .neofire-rev-meldung.is-gut {
    color: #15803d;
}

#all .neofire-rev-meldung.is-fehler {
    color: #b91c1c;
}

#all.darkmode .neofire-rev-eintrag {
    border-color: #2a2f3a;
}

#all.darkmode .neofire-rev-antwort {
    background: #151a23;
}

#all.darkmode .neofire-rev-form input[type="text"],
#all.darkmode .neofire-rev-form textarea {
    background: #151a23;
    color: #e8ecf3;
    border-color: #2a2f3a;
}

#all .neofire-customer-rev-zeile > td {
    background: #fafbfc;
    padding: 14px 12px;
}

#all .neofire-customer-rev-form {
    display: flex;
    flex-direction: column;
    gap: 8px;
    max-width: 520px;
}

#all .neofire-customer-rev-form input[type="text"],
#all .neofire-customer-rev-form textarea {
    width: 100%;
    box-sizing: border-box;
    padding: 9px 12px;
    border: 1px solid #ececec;
    border-radius: 9px;
    font-size: 14px;
    font-family: inherit;
    background: #fff;
}

#all .neofire-customer-rev-akt {
    display: flex;
    align-items: center;
    gap: 12px;
}

#all .neofire-customer-rev-meldung {
    font-size: 13px;
}

#all .neofire-customer-rev-meldung.is-gut {
    color: #15803d;
}

#all .neofire-customer-rev-meldung.is-fehler {
    color: #b91c1c;
}

#all .neofire-customer-rev-fertig {
    font-size: 15px;
    color: #f59e0b;
    letter-spacing: 1px;
}

#all .neofire-customer-tbl-revs td:last-child {
    white-space: nowrap;
    text-align: right;
}

#all .neofire-customer-tbl-revs td:last-child .neofire-customer-btn {
    width: auto;
    display: inline-block;
    padding: 6px 14px;
    font-size: 13.5px;
    font-weight: 600;
}

#all .neofire-customer-stars {
    display: inline-flex;
    gap: 5px;
    cursor: pointer;
    font-size: 26px;
    line-height: 1;
    user-select: none;
}

#all .neofire-customer-star {
    color: #d9dde3;
    transition: color .1s;
}

#all .neofire-customer-star.an {
    color: #f59e0b;
}

#all.darkmode .neofire-customer-star {
    color: #39404c;
}

#all .neofire-customer-rev-warte {
    display: block;
    font-size: 12px;
    opacity: .7;
    letter-spacing: 0;
}

#all.darkmode .neofire-customer-rev-zeile > td {
    background: #151a23;
}

#all.darkmode .neofire-customer-rev-form input[type="text"],
#all.darkmode .neofire-customer-rev-form textarea {
    background: #151a23;
    color: #e8ecf3;
    border-color: #2a2f3a;
}

#core:not([data-fixed="0"]) #headercontent {
    height: 0 !important;
}

#core:not([data-fixed="0"]) #content:not(:has(> .neofire-lay-row:first-child > .neofire-lay-col.neofire-breit)) {
    padding-top: var(--neofire-kopf-abstand, 96px);
}

#core:not([data-fixed="0"]) #header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: auto !important;
    z-index: 999 !important;
}

html.neofire-designer-pal-push #core:not([data-fixed="0"]) #header {
    right: 300px !important;
}

#all #cart-overlay.open {
    touch-action: none;
}

#all .cart-body {
    padding-bottom: calc(24px + env(safe-area-inset-bottom,0px));
}

@media (max-width:750px) {
    #all .cart-body {
        padding-bottom: calc(56px + env(safe-area-inset-bottom,0px));
    }

    #all #payBtn {
        padding: 17px;
        font-size: 16px;
    }
}

#all .cart-content.open {
    transform: none !important;
    animation: none !important;
    right: 0 !important;
}

#all .neofire-bk-produkt {
    width: 100%;
    max-width: 100%;
    font-size: 14px;
}

#all .neofire-bk-produkt-start {
    display: inline-block;
    width: auto;
    margin: 0 0 14px;
    padding: .85em 1.6em;
    border: 0;
    border-radius: 14px;
    background: #111;
    color: #fff;
    font-weight: 700;
    font-size: 16px;
    line-height: 1;
    cursor: pointer;
}

#all .neofire-bk-produkt-inhalt {
    width: 100%;
    max-width: 520px;
    background: #fff;
    border-radius: 22px;
    box-shadow: 0 12px 40px rgba(20,30,50,.12);
    padding: 22px 24px;
    box-sizing: border-box;
}

#all .neofire-bk-wz-head {
    display: flex;
    align-items: center;
    gap: 6px;
    min-height: 32px;
    margin: 0 0 14px;
}

#all .neofire-bk-wz-titel {
    flex: 1;
    min-width: 0;
    text-align: center;
    font-weight: 700;
    font-size: 18px;
    line-height: 1.25;
    color: #111;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

#all .neofire-bk-wz-prev,
#all .neofire-bk-wz-next {
    flex: 0 0 auto;
    width: 26px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    background: none;
    color: #111;
    font-size: 26px;
    line-height: 1;
    cursor: pointer;
    padding: 0;
    opacity: .55;
}

#all .neofire-bk-wz-prev:hover,
#all .neofire-bk-wz-next:hover {
    opacity: 1;
}

#all .neofire-bk-wz-head[hidden] {
    display: none;
}

#all .neofire-bk-wz-prev[hidden],
#all .neofire-bk-wz-next[hidden] {
    visibility: hidden;
    display: flex !important;
}

#all .neofire-bk-wz-view,
#all .neofire-bk-pnl-view {
    overflow: hidden;
    transition: height .3s ease;
}

#all .neofire-bk-wz-track,
#all .neofire-bk-pnl-track {
    display: flex;
    align-items: flex-start;
    transition: transform .3s ease;
    will-change: transform;
}

#all .neofire-bk-wz-chooser,
#all .neofire-bk-wz-panels,
#all .neofire-bk-pnl-step {
    flex: 0 0 100%;
    min-width: 100%;
    box-sizing: border-box;
}

#all .neofire-bk-wz-panels > .neofire-bk {
    width: 100%;
}

#all .neofire-bk-wz-panels > .neofire-bk > .neofire-bk-inhalt {
    padding: 0;
}

#all .neofire-bk-wz-panels .neofire-bk-kal {
    padding-left: 0;
    padding-right: 0;
    box-sizing: border-box;
}

#all .neofire-bk-wz-panels .flatpickr-months {
    margin-top: 8px;
}

#all .neofire-bk-wz-panels .flatpickr-prev-month {
    left: 5px;
}

#all .neofire-bk-wz-panels .flatpickr-next-month {
    right: 5px;
}

#all .neofire-bk-wz-panels .neofire-bk-leiste {
    width: 100%;
    max-width: none;
    margin-left: 0;
    margin-right: 0;
    box-sizing: border-box;
}

#all .neofire-bk-wz-panels .neofire-bk-knopf {
    flex: 1 1 auto;
}

#all .neofire-bk-produkt-opts {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

#all .neofire-bk-produkt-opt {
    display: block;
    width: 100%;
    box-sizing: border-box;
    text-align: left;
    margin: 0;
    padding: .7em .9em;
    border: 1px solid #cccccc;
    border-radius: 8px;
    background: #fff;
    color: #111;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.3;
    cursor: pointer;
    transition: border-color .15s,background .15s;
}

#all .neofire-bk-produkt-opt:hover {
    border-color: #111;
}

#all .neofire-bk-produkt-inhalt {
    padding: 16px 14px !important;
}

#all .neofire-bk-kal {
    padding-bottom: 4px !important;
}

#all .neofire-bk-kal .flatpickr-calendar {
    scale: 1 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

#all .neofire-bk-kal .flatpickr-rContainer {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

#all .neofire-bk-kal .flatpickr-day,
#all .neofire-bk-kal .flatpickr-weekday {
    width: 38px !important;
    max-width: 38px !important;
    flex: 0 0 38px !important;
}

#all .neofire-bk-kal .flatpickr-day {
    height: 38px !important;
    line-height: 38px !important;
}

#all .neofire-bk-zeiten {
    margin-top: 2px !important;
}

#all .neofire-bk-produkt-inhalt:not(.neofire-tag-ok) .neofire-bk-zeiten,
#all .neofire-bk-produkt-inhalt:not(.neofire-tag-ok) .neofire-bk-leiste {
    display: none !important;
}

#all .neofire-bk-produkt-inhalt.neofire-tag-ok .neofire-bk-zeiten,
#all .neofire-bk-produkt-inhalt.neofire-tag-ok .neofire-bk-leiste {
    animation: neofireVideomeetFade .3s ease .26s both;
}

@keyframes neofireVideomeetFade {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

#all .neofire-bk-produkt-opt:hover {
    border-color: #cfcfcf !important;
    background: #fafafa !important;
}

#all .neofire-bk-produkt-inhalt.neofire-fade-ready .neofire-bk-wz-track>* {
    transition: opacity .3s ease;
}

#all .neofire-bk-produkt-inhalt.neofire-fade-ready .neofire-bk-wz-track>*:not(.neofire-akt) {
    opacity: 0;
}

#all .neofire-bk-produkt-inhalt.neofire-fade-ready .neofire-bk-pnl-track>* {
    transition: opacity .28s ease;
}

#all .neofire-bk-produkt-inhalt.neofire-fade-ready .neofire-bk-pnl-track>*:not(.neofire-akt) {
    opacity: 0;
}

#core[data-header="0"] .neofire-bk-produkt {
    position: relative;
}

#core[data-header="0"] .neofire-bk-produkt-inhalt {
    position: absolute;
    top: 100%;
    left: 0;
    width: 320px;
    z-index: 99999;
}

#core[data-header="0"] #content {
    padding-top: 0 !important;
}

#core[data-header="0"] .neofire-bk-produkt-inhalt {
    left: 50%;
    transform: translateX(-50%);
}

#core[data-header="0"] .neofire-bk-produkt {
    width: fit-content;
}

#core[data-header="0"] #content {
    padding-bottom: 0 !important;
}

#core[data-header="0"] .neofire-bk-produkt-start {
    margin-bottom: 0 !important;
    display: block;
}

#core[data-header="0"] .neofire-bk-produkt {
    margin-left: auto;
    margin-right: auto;
}

#core[data-header="0"] .neofire-bk-produkt {
    display: block;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
}

#core[data-header="0"] #loadContent {
    height: auto !important;
    min-height: 0 !important;
}

#core[data-header="0"] .neofire-bk-produkt-inhalt {
    top: calc(100% + 14px);
}

#all .neofire-ck-fest {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 14px 0 4px;
    padding: 10px 12px;
    border: 1px solid #e3e3e3;
    border-radius: 8px;
    background: #fafafa;
    font-size: 14px;
    line-height: 1.4;
}

#all .neofire-ck-kal-aendern {
    flex: 0 0 auto;
    margin: 0;
    padding: 5px 10px;
    border: 1px solid #cfcfcf;
    border-radius: 6px;
    background: #fff;
    color: #111;
    font-size: 13px;
    cursor: pointer;
}

#all .neofire-ck-kal-aendern:hover {
    background: #f0f0f0;
}

#all .neofire-ck-kal[hidden] {
    display: none !important;
}

#core[data-header="0"] #cartheader {
    font-size: 20px;
    font-weight: 600;
    text-transform: none;
    letter-spacing: 0;
    line-height: 1.2;
    margin: 0;
    color: #111;
}

#core[data-header="0"] .cart-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

#core[data-header="0"] #cartmiddle,
#core[data-header="0"] .cart-content h3,
#core[data-header="0"] .cart-content h4 {
    font-size: 17px;
    font-weight: 600;
    text-transform: none;
    letter-spacing: 0;
    line-height: 1.3;
    margin: 18px 0 10px;
    color: #111;
}

#all .neofire-ck-fest[hidden] {
    display: none !important;
}

#core[data-header="0"] .neofire-region-frame,
#core[data-header="0"] .neofire-region-inner,
#core[data-header="0"] #main,
#core[data-header="0"] #layout {
    min-height: 0 !important;
}

#core[data-header="0"] .neofire-region-inner {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

#core[data-mode] #themeButton {
    display: none !important;
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) {
    --main-color: #000;
    --main-background: #fff;
    --main-border: 1px solid #ccc;
    --main-hover-color: #000;
    --main-hover-background: #ddd;
    --main-hover-border: 1px solid #ccc;
    --main-button-color: #000;
    --main-button-background: #fff;
    --main-button-border: 1px solid #ccc;
    --main-button-hover-color: #fff;
    --main-button-hover-background: #000;
    --main-button-hover-border: 1px solid #ccc;
    --main-largebutton-color: #fff;
    --main-largebutton-background: #000;
    --main-largebutton-border: 1px solid #000;
    --main-largebutton-hover-color: #fff;
    --main-largebutton-hover-background: #000;
    --main-largebutton-hover-border: 1px solid #000;
    --quickview-color: #000;
    --quickview-background: #fff;
    --quickview-border: 1px solid #ccc;
    --quickview-hover-color: #000;
    --quickview-hover-background: #ddd;
    --quickview-hover-border: 1px solid #ccc;
    --quickview-button-color: #000;
    --quickview-button-background: #fff;
    --quickview-button-border: 1px solid #ccc;
    --quickview-button-hover-color: #fff;
    --quickview-button-hover-background: #000;
    --quickview-button-hover-border: 1px solid #ccc;
    --quickview-largebutton-color: #fff;
    --quickview-largebutton-background: #000;
    --quickview-largebutton-border: 1px solid #000;
    --quickview-largebutton-hover-color: #fff;
    --quickview-largebutton-hover-background: #000;
    --quickview-largebutton-hover-border: 1px solid #000;
    --header-background: #ffffffe6 !important;
    --header-color: #000;
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) {
    background: #fff;
    color: #111;
    border-color: #e6e8ec;
    box-shadow: 0 12px 40px rgba(20,30,50,.12);
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) * {
    color: inherit;
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) .neofire-bk-produkt-opt {
    background: #fff;
    border-color: #d9dde3;
    color: #111;
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) .neofire-bk-produkt-opt:hover {
    border-color: #111 !important;
    background: #f6f7f9 !important;
    color: #111 !important;
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) :is(.neofire-bk-wz-titel,.neofire-bk-wz-prev,.neofire-bk-wz-next) {
    color: #111;
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) .neofire-toggle {
    background: #e5e7eb;
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) .neofire-toggle-input:checked + .neofire-toggle {
    background: #22c55e;
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) :is(.neofire-bk-kalwahl,.neofire-bk .calendar-slot-start,.neofire-bk .calendar-slot-end) {
    background: #fff;
    color: #111;
    border-color: #e0e3e8;
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) .neofire-bk .calendar-slot-end:disabled {
    background: #f6f7f8;
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) .neofire-bk-menge {
    border-color: #e0e3e8;
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) .neofire-bk-menge button:hover {
    background: #0000000d;
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) .neofire-bk-knopf {
    background: #111 !important;
    color: #fff !important;
    border-color: #111 !important;
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) .neofire-bk-knopf:hover {
    background: #333 !important;
    color: #fff !important;
    border-color: #333 !important;
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) .property-option {
    background: var(--main-button-background);
    color: var(--main-button-color);
    border: var(--main-button-border);
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) .property-option:hover,
#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) .property-option.active {
    background: var(--main-button-hover-background);
    color: var(--main-button-hover-color);
    border: var(--main-button-hover-border);
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) .neofire-bk-kal .flatpickr-calendar {
    background: transparent;
    color: #111;
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) .neofire-bk-kal :is(.flatpickr-current-month,.flatpickr-current-month input.cur-year,.flatpickr-monthDropdown-months) {
    color: #111;
    background: transparent;
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) .neofire-bk-kal .flatpickr-weekday {
    color: #8a94a3;
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) .neofire-bk-kal .flatpickr-day {
    color: #1f2937;
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) .neofire-bk-kal .calendar-available {
    background: #e6f6ec !important;
    color: #166534 !important;
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) .neofire-bk-kal .calendar-closed {
    background: #f1f3f5 !important;
    color: #8a94a3 !important;
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) .neofire-bk-kal .flatpickr-day.flatpickr-disabled,
#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) .neofire-bk-kal .flatpickr-day.flatpickr-disabled:hover {
    background: transparent !important;
    color: #c8ced6 !important;
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) .neofire-bk-kal :is(.flatpickr-day.selected,.flatpickr-day.selected:hover,.flatpickr-day:hover,.flatpickr-day.startRange,.flatpickr-day.endRange,.flatpickr-day.inRange) {
    background: #111 !important;
    color: #fff !important;
    border-color: #111 !important;
    box-shadow: none !important;
}

#all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) .neofire-bk-kal .flatpickr-months :is(.flatpickr-prev-month,.flatpickr-next-month) svg {
    fill: #111;
}

#core[data-type] #all,
#core[data-type] #all.darkmode {
    background: transparent !important;
}

#all .neofire-gs-code,
#all.darkmode .neofire-gs-code {
    height: auto;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 8px;
    background: #fff;
    color: #000;
}

#all .neofire-gs-los,
#all .neofire-gs-weg {
    height: auto;
    align-self: stretch;
    border-radius: 8px;
}

#all .neofire-bk:not(.neofire-bk--mini) > .neofire-bk-inhalt,
#all .neofire-bk-produkt-inhalt {
    background: #fff;
    color: #111;
    border-radius: 16px;
    padding: 18px;
    box-shadow: 0 8px 28px rgba(20,30,50,.10);
    box-sizing: border-box;
}

#all .neofire-bk-wz-panels .neofire-bk-inhalt {
    background: transparent;
    box-shadow: none;
    padding: 0;
    border-radius: 0;
}

#all .neofire-bk-kal .flatpickr-day {
    border-radius: 8px;
}

#all .neofire-bk-kal .flatpickr-weekday {
    color: #8a94a3;
    opacity: 1;
}

#all .neofire-bk-kal .calendar-available {
    background: #e6f6ec !important;
    color: #166534 !important;
    font-weight: 600;
}

#all .neofire-bk-kal .calendar-closed {
    background: #f1f3f5 !important;
    color: #8a94a3 !important;
}

#all .neofire-bk-kal .flatpickr-day.flatpickr-disabled,
#all .neofire-bk-kal .flatpickr-day.flatpickr-disabled:hover {
    background: transparent !important;
    color: #c8ced6 !important;
}

#all .neofire-bk-kal :is(.flatpickr-day.selected,.flatpickr-day.selected:hover,.flatpickr-day:hover,.flatpickr-day.startRange,.flatpickr-day.endRange,.flatpickr-day.inRange) {
    background: #111 !important;
    color: #fff !important;
    border-color: #111 !important;
    box-shadow: none !important;
}

#all .neofire-bk-produkt-opt {
    border-color: #d9dde3;
    border-radius: 10px;
}

#all .neofire-bk-produkt-opt:hover {
    border-color: #111 !important;
    background: #f6f7f9 !important;
}

#all .neofire-bk-produkt-inhalt .neofire-bk:not(.neofire-bk--mini) > .neofire-bk-inhalt,
#all.darkmode .neofire-bk-produkt-inhalt .neofire-bk:not(.neofire-bk--mini) > .neofire-bk-inhalt {
    background: transparent;
    box-shadow: none;
    padding: 0;
    border-radius: 0;
    border-color: transparent;
}

#all .neofire-bk .property-group > br:first-child {
    display: none;
}

#all .neofire-bk:not(.neofire-bk--mini) > .neofire-bk-inhalt,
#all.darkmode .neofire-bk:not(.neofire-bk--mini) > .neofire-bk-inhalt {
    box-shadow: none;
}

@keyframes neofireBkZeitenEin {
    0% {
        opacity: 0;
        max-height: 0;
        transform: translateY(-6px);
    }

    60% {
        opacity: .6;
    }

    100% {
        opacity: 1;
        max-height: 220px;
        transform: none;
    }
}

#all .neofire-bk .neofire-bk-zeiten > * {
    animation: neofireBkZeitenEin .42s cubic-bezier(.2,.7,.2,1) both;
    overflow: hidden;
}

@media (prefers-reduced-motion: reduce) {
    #all .neofire-bk .neofire-bk-zeiten > * {
        animation: none;
    }
}

#all .neofire-rating {
    font-size: 15px;
    line-height: 1.6;
    color: inherit;
    margin: 0 0 64px;
}

#all .neofire-rating__heading {
    font-size: 28px;
    line-height: 1.2;
    font-weight: 700;
    margin: 0 0 26px;
}

#all .neofire-rating__grid {
    display: grid;
    grid-template-columns: minmax(240px,300px) minmax(0,1fr);
    gap: 56px;
    align-items: start;
}

#all .neofire-rating__label {
    font-weight: 700;
    font-size: 16px;
    margin: 0 0 6px;
}

#all .neofire-rating__avg {
    display: flex;
    align-items: center;
    gap: 10px;
}

#all .neofire-rating__avg strong {
    font-size: 24px;
    line-height: 1;
}

#all .neofire-rating__count {
    font-size: 13px;
    opacity: .7;
    margin: 6px 0 12px;
}

#all .neofire-rating__stars {
    display: inline-block;
    font-size: 20px;
    line-height: 1;
    letter-spacing: 2px;
    white-space: nowrap;
    background: linear-gradient(90deg,#f5b301 var(--neofire-rating-fill,0%),#d5d9e0 var(--neofire-rating-fill,0%));
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

#all .neofire-rating__criteria {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 4px 18px;
    font-size: 13px;
}

#all .neofire-rating__criteria li {
    display: flex;
    align-items: center;
    gap: 4px;
    margin: 0;
    padding: 0;
}

#all .neofire-rating__mark {
    font-size: 13px;
    line-height: 1;
    opacity: .85;
}

#all .neofire-rating__bars {
    margin: 20px 0 0;
    padding: 20px 0 0;
    border-top: 1px solid rgba(127,127,127,.22);
    display: grid;
    gap: 8px;
}

#all .neofire-rating__bar {
    display: grid;
    grid-template-columns: 18px 62px minmax(0,1fr) 46px;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    cursor: pointer;
    margin: 0;
}

#all .neofire-rating__bar.is-empty {
    opacity: .45;
    cursor: default;
}

#all .neofire-rating__bar input {
    width: 16px;
    height: 16px;
    margin: 0;
    accent-color: #111827;
}

#all .neofire-rating__bar-name {
    display: flex;
    align-items: center;
    gap: 4px;
    font-weight: 600;
    white-space: nowrap;
}

#all .neofire-rating__bar-name small {
    font-weight: 400;
    font-size: 13px;
    opacity: .7;
}

#all .neofire-rating__track {
    display: block;
    height: 6px;
    border-radius: 6px;
    background: rgba(127,127,127,.22);
    overflow: hidden;
}

#all .neofire-rating__track i {
    display: block;
    height: 100%;
    border-radius: 6px;
    background: #f5b301;
}

#all .neofire-rating__pct {
    text-align: right;
    font-size: 13px;
    white-space: nowrap;
}

#all .neofire-rating__write {
    margin: 22px 0 0;
    padding: 22px 0 0;
    border-top: 1px solid rgba(127,127,127,.22);
}

#all .neofire-rating__write h3 {
    font-size: 16px;
    font-weight: 700;
    margin: 0 0 6px;
}

#all .neofire-rating__write p {
    font-size: 14px;
    opacity: .8;
    margin: 0 0 14px;
}

#all .neofire-rating__button {
    display: block;
    width: 100%;
    padding: 11px 16px;
    border: 1px solid rgba(127,127,127,.4);
    border-radius: 8px;
    background: transparent;
    color: inherit;
    font: inherit;
    font-weight: 600;
    cursor: pointer;
    transition: border-color .16s ease,background-color .16s ease;
}

#all .neofire-rating__button:hover {
    border-color: currentColor;
    background: rgba(127,127,127,.08);
}

#all .neofire-rating__button[hidden] {
    display: none;
}

#all .neofire-rating__sort {
    display: flex;
    justify-content: flex-start;
    margin: 0 0 22px;
    font-size: 13px;
}

#all .neofire-rating__sort label {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
}

#all .neofire-rating__sort select {
    min-width: 200px;
    padding: 8px 12px;
    border: 1px solid rgba(127,127,127,.4);
    border-radius: 8px;
    background: transparent;
    color: inherit;
    font: inherit;
}

#all .neofire-rating__entry {
    margin: 0 0 34px;
    padding: 0;
}

#all .neofire-rating__title {
    font-size: 17px;
    line-height: 1.3;
    font-weight: 700;
    margin: 0 0 6px;
}

#all .neofire-rating__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 12px;
    margin: 0 0 10px;
}

#all .neofire-rating__value {
    font-size: 16px;
}

#all .neofire-rating__meta .neofire-rating__stars {
    font-size: 17px;
}

#all .neofire-rating__author {
    font-size: 14px;
}

#all .neofire-rating__date,
#all .neofire-rating__reply-head time {
    font-size: 12px;
    opacity: .65;
}

#all .neofire-rating__text {
    margin: 0 0 10px;
    white-space: normal;
    overflow-wrap: anywhere;
}

#all .neofire-rating__reply {
    margin: 16px 0 0;
    padding: 16px 18px;
    border-radius: 8px;
    background: rgba(127,127,127,.09);
    font-style: italic;
}

#all .neofire-rating__reply-head {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 6px 12px;
    margin: 0 0 8px;
}

#all .neofire-rating__reply.is-clipped:not(.is-open) .neofire-rating__reply-text {
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

#all .neofire-rating__more {
    margin: 8px 0 0;
    padding: 0;
    border: 0;
    background: none;
    color: inherit;
    font: inherit;
    font-style: normal;
    font-weight: 600;
    text-decoration: underline;
    cursor: pointer;
}

#all .neofire-rating__none {
    opacity: .7;
    margin: 0 0 20px;
}

#all .neofire-rating__none[hidden] {
    display: none;
}

#all .neofire-rating__load {
    max-width: 320px;
}

#all .neofire-customer-rev-teil {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 6px;
}

#all .neofire-customer-rev-teil-name {
    min-width: 130px;
    font-size: 14px;
}

#all .neofire-customer-rev-teil .neofire-customer-stars {
    margin: 0;
}

@media (max-width:900px) {
    #all .neofire-rating__grid {
        grid-template-columns: minmax(0,1fr);
        gap: 32px;
    }

    #all .neofire-rating__heading {
        font-size: 23px;
        margin-bottom: 18px;
    }
}

#all .neofire-rating--summary .neofire-rating__side,
#all .neofire-rating--list .neofire-rating__main {
    width: 100%;
    max-width: none;
    min-width: 0;
}

#all .neofire-rating--summary .neofire-rating__side {
    position: static;
}

#core[data-header="0"] #content {
    padding-top: 0 !important;
}

#core #quickview-modal #content,
#all #quickview-modal #content {
    padding-top: 0 !important;
}

#core button:focus:not(:focus-visible),
#core [type="button"]:focus:not(:focus-visible),
#core [type="submit"]:focus:not(:focus-visible),
#core a:focus:not(:focus-visible),
#core [tabindex]:focus:not(:focus-visible) {
    outline: none !important;
}

#core button,
#core a,
#core [role="button"] {
    -webkit-tap-highlight-color: transparent;
}

@media (hover:none) {
    #all .property-option:not(.active):hover {
        background: var(--main-button-background);
        color: var(--main-button-color);
        border: var(--main-button-border);
    }

    #all.darkmode .property-option:not(.active):hover {
        border-color: #ffffff;
        color: #ffffff;
    }

    #all.darkmode :is(.neofire-bk-produkt-inhalt,.neofire-bk-inhalt) .property-option:not(.active):hover {
        background: var(--main-button-background);
        color: var(--main-button-color);
        border: var(--main-button-border);
    }

    #all #quickview-modal .property-option:not(.active):hover {
        background: var(--quickview-button-background);
        color: var(--quickview-button-color);
        border: var(--quickview-button-border);
    }
}

#all .cart-body .shipping-card {
    display: block !important;
    width: 100% !important;
    box-sizing: border-box;
    line-height: inherit;
    vertical-align: baseline;
}

#all .cart-body .shipping-card.active {
    background: transparent !important;
    color: inherit !important;
}

#all .flatpickr-current-month select.flatpickr-monthDropdown-months {
    display: inline-block !important;
    width: auto !important;
    max-width: none;
    vertical-align: initial;
}

#all .flatpickr-current-month input.cur-year {
    display: inline-block !important;
    width: 100% !important;
    border: 0 !important;
    box-shadow: none !important;
    vertical-align: initial;
}

:where(#core[data-neofire-view],#core[data-neofire-embed]) table {
    width: auto;
    margin-bottom: 0;
    font-size: inherit;
}

:where(#core[data-neofire-view],#core[data-neofire-embed]) table td,
:where(#core[data-neofire-view],#core[data-neofire-embed]) table th {
    padding: 1px;
    line-height: inherit;
    vertical-align: inherit;
    border: 0 none;
}

:where(#core[data-neofire-view],#core[data-neofire-embed]) table th {
    font-weight: bold;
}

:where(#core[data-neofire-view],#core[data-neofire-embed]) table caption+thead tr:first-child td,
:where(#core[data-neofire-view],#core[data-neofire-embed]) table caption+thead tr:first-child th,
:where(#core[data-neofire-view],#core[data-neofire-embed]) table colgroup+thead tr:first-child td,
:where(#core[data-neofire-view],#core[data-neofire-embed]) table colgroup+thead tr:first-child th,
:where(#core[data-neofire-view],#core[data-neofire-embed]) table thead:first-child tr:first-child td,
:where(#core[data-neofire-view],#core[data-neofire-embed]) table thead:first-child tr:first-child th {
    border-top: 0 none;
}

:where(#core[data-neofire-view],#core[data-neofire-embed]) table tbody>tr:nth-child(odd)>td,
:where(#core[data-neofire-view],#core[data-neofire-embed]) table tbody>tr:nth-child(odd)>th,
:where(#core[data-neofire-view],#core[data-neofire-embed]) table tbody tr:hover>td,
:where(#core[data-neofire-view],#core[data-neofire-embed]) table tbody tr:hover>th {
    background-color: transparent;
}

:where(#core[data-neofire-view],#core[data-neofire-embed]) table tbody+tbody {
    border-top: 0 none;
}

#core[data-neofire-view] #headercontent,
#core[data-neofire-embed] #headercontent {
    position: sticky !important;
    top: var(--neofire-embed-header-top,0px) !important;
    height: auto !important;
}

#core[data-neofire-view] #header,
#core[data-neofire-embed] #header {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
}

#core[data-neofire-view] #content,
#core[data-neofire-embed] #content {
    padding-top: 0 !important;
}

#core[data-neofire-view][data-fixed="0"] #headercontent,
#core[data-neofire-embed][data-fixed="0"] #headercontent {
    position: static !important;
    top: auto !important;
}

#core[data-mega="0"] .neofire-lay-col:has(> .nav_mega):not(:has(> .neofire-lay-el:not(.nav_mega))) {
    display: none !important;
}

#core[data-neofire-view] #header .neofire-region-frame,
#core[data-neofire-embed] #header .neofire-region-frame {
    position: relative;
    z-index: 0;
}

#core[data-neofire-view] #header .neofire-region-frame::before,
#core[data-neofire-embed] #header .neofire-region-frame::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 100vw;
    transform: translateX(-50%);
    background: inherit;
    z-index: -1;
    pointer-events: none;
}

/* ==== NEOFIRE-STANDARD-DESIGN:START v1 ==== */

#all .neofire-design-titel h1,
#all .neofire-design-titel h2,
#all .neofire-design-titel h3 {
    font-size: inherit;
    line-height: inherit;
    font-weight: 800;
    letter-spacing: -.02em;
    text-transform: uppercase;
    margin: 0;
}

#all .neofire-design-titel h4 {
    font-size: inherit;
    line-height: inherit;
    font-weight: 700;
    text-transform: uppercase;
    margin: 0;
}

#all .neofire-design-topbar .neofire-lay-el span {
    display: inline-block;
    margin: 0 16px;
    letter-spacing: .04em;
    text-transform: uppercase;
}

#all .neofire-design-topbar .neofire-lay-el span::before {
    content: "\2713";
    margin-right: 6px;
    color: #9A9BA0;
}

#all .neofire-design-eyebrow {
    text-transform: uppercase;
    letter-spacing: .16em;
}

#all .neofire-design-btn .neofire-lay-btn {
    border-radius: 999px;
    padding: 14px 28px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    transition: background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease;
}

#all .neofire-design-chips .neofire-lay-btn {
    padding: 9px 18px;
    font-size: 12px;
}

#all .neofire-design-tile {
    overflow: hidden;
}

#all .neofire-design-uspbar .neofire-design-usp+.neofire-design-usp {
    border-left: 1px solid rgba(47,46,51,.22);
    box-shadow: inset 1px 0 0 #FFFFFF;
}

#all .neofire-lay-catcard {
    border: 0;
    border-radius: 16px;
    overflow: hidden;
    background: transparent;
}

#all .neofire-lay-catcard .img {
    min-height: 150px;
    border-radius: 16px;
    overflow: hidden;
}

#all .neofire-lay-catcard .img .noimage {
    display: block;
    height: 150px;
    background: #2F2E33;
}

#all .neofire-lay-catcard:nth-child(3n+2) .img .noimage {
    background: #EEEFEC;
}

#all .neofire-lay-catcard:nth-child(3n) .img .noimage {
    background: #20C9A6;
}

#all .neofire-lay-catcard .listing-name {
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
    font-size: 15px;
    padding: 12px 4px 4px;
    color: #2F2E33;
}

#all .neofire-lay-catcard:hover .img .noimage {
    filter: brightness(1.08);
}

@keyframes neofireDesignLauf {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }
}

#all #topbar .core-search input[type="search"] {
    border-radius: 999px;
    border: 1px solid #E3E4E0;
    background: #F6F6F4;
    color: #2F2E33;
}

@media (max-width:750px) {
    #all .neofire-design-topbar .neofire-lay-el span:nth-child(n+3) {
        display: none;
    }

    #all .neofire-design-hero {
        padding-left: 24px !important;
        padding-right: 24px !important;
    }

    #all .neofire-design-uspbar .neofire-design-usp+.neofire-design-usp {
        border-left: 0;
        box-shadow: inset 0 1px 0 #FFFFFF;
        border-top: 1px solid rgba(47,46,51,.22);
    }

    #all .neofire-design-marquee .neofire-design-marquee-lauf {
        gap: 40px;
        padding-right: 40px;
    }
}

#all .neofire-lay-btn.neofire-lay-btn--outline {
    background: var(--main-button-background);
    color: var(--main-button-color);
    border: var(--main-button-border);
    height: auto;
}

#all .neofire-lay-btn.neofire-lay-btn--outline:hover {
    background: var(--main-button-hover-background);
    color: var(--main-button-hover-color);
    border: var(--main-button-hover-border);
}

#all .neofire-lay-btn.neofire-lay-btn--primary {
    height: auto;
}

#all.darkmode .neofire-lay-btn.neofire-lay-btn--outline {
    color: var(--main-button-color) !important;
    border-color: var(--main-button-border) !important;
}

#all .neofire-design-chips .neofire-lay-btn.neofire-lay-btn--outline {
    border-width: 1.5px;
}

#all .neofire-design-hero .neofire-lay-btn.neofire-lay-btn--outline,
#all .neofire-design-tile .neofire-lay-btn.neofire-lay-btn--outline,
#all .neofire-design-deals .neofire-lay-btn.neofire-lay-btn--outline {
    background: transparent;
    border: 1.5px solid #FFFFFF;
    color: #FFFFFF;
}

#all .neofire-design-hero .neofire-lay-btn.neofire-lay-btn--outline:hover,
#all .neofire-design-tile .neofire-lay-btn.neofire-lay-btn--outline:hover,
#all .neofire-design-deals .neofire-lay-btn.neofire-lay-btn--outline:hover {
    background: rgba(255,255,255,.18);
    border-color: #FFFFFF;
    color: #FFFFFF;
}

#all .neofire-mega-arrow,
#all .neofire-mega-arrow:hover,
#all.darkmode .neofire-mega-arrow {
    background: transparent !important;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    color: #FFFFFF;
}

#all .neofire-mega-panel .neofire-design-mega-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 32px;
    height: 44px;
    border: 0;
    border-radius: 0;
    background: #FFFFFF;
    color: #2F2E33;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 3;
    box-shadow: none;
    font-size: 34px;
    line-height: 1;
    font-weight: 300;
    padding: 0;
    transition: color .2s ease;
}

#all .neofire-mega-panel .neofire-design-mega-arrow:hover {
    color: #20C9A6;
    background: transparent;
}

#all .neofire-mega-panel .neofire-design-mega-prev {
    left: 6px;
}

#all .neofire-mega-panel .neofire-design-mega-next {
    right: 6px;
}

#all .neofire-mega-panel .neofire-design-mega-arrow[disabled] {
    opacity: .25;
    cursor: default;
}

@media (max-width:750px) {
    #all .neofire-mega-panel .neofire-design-mega-arrow {
        display: flex !important;
    }
}

#all .neofire-mega-panel [data-lay-col="cmegasubs"]:only-child {
    max-width: none !important;
    flex: 1 1 100% !important;
    width: 100%;
}

#all .neofire-mega-panel .neofire-mn-subs {
    column-count: auto !important;
    columns: auto !important;
    display: flex;
    gap: 0;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    padding: 6px 0 10px;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

#all .neofire-mega-panel .neofire-mn-subs::-webkit-scrollbar {
    display: none;
}

#all .neofire-mega-panel .neofire-mn-grp {
    flex: 0 0 220px;
    scroll-snap-align: start;
    break-inside: auto;
    background: transparent;
    border: 0;
    border-left: 1px solid #E3E4E0;
    border-radius: 0;
    padding: 4px 20px 8px;
    max-height: 290px;
    overflow: hidden;
    box-shadow: none;
}

#all .neofire-mega-panel .neofire-mn-grp:first-child {
    border-left: 0;
}

#all .neofire-mega-panel .neofire-mn-grp .mi_head {
    display: block;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .06em;
    font-size: 13px;
    color: #2F2E33 !important;
    margin: 0 0 10px;
    padding: 0;
    border: 0;
}

#all .neofire-mega-panel .neofire-mn-grp .mi_head:hover {
    color: #20C9A6 !important;
}

#all .neofire-mega-panel .neofire-mn-grp .mi_sub {
    display: block;
    font-size: 13px;
    line-height: 1.4;
    color: #2F2E33 !important;
    padding: 3px 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    background: none;
}

#all .neofire-mega-panel .neofire-mn-grp .mi_sub:hover {
    color: #20C9A6 !important;
}

#all .neofire-mega-panel .neofire-mn-grp .mi_sub:nth-of-type(n+8) {
    display: none;
}

#all .neofire-mega-panel .neofire-design-mega-wrap {
    position: relative;
}

@media (max-width:750px) {
    #all .neofire-mega-panel .neofire-mn-grp {
        flex-basis: 180px;
    }
}

#all .neofire-mega-bar .neofire-mega-item {
    position: relative;
}

#all .neofire-mega-bar .neofire-mega-item + .neofire-mega-item::before {
    content: "";
    position: absolute;
    left: -16px;
    top: 11px;
    bottom: 11px;
    width: 1px;
    background: #1A191D;
    box-shadow: 1px 0 0 rgba(255,255,255,.16);
    pointer-events: none;
}

#all.darkmode .neofire-mega-bar .neofire-mega-item + .neofire-mega-item::before {
    background: #0E0D10;
    box-shadow: 1px 0 0 rgba(255,255,255,.12);
}

@media (max-width:750px) {
    #all .neofire-mega-bar .neofire-mega-item + .neofire-mega-item::before {
        display: none;
    }
}

#all .neofire-design-tile--hell .neofire-lay-btn.neofire-lay-btn--outline {
    background: transparent;
    border: 1.5px solid #2F2E33;
    color: #2F2E33;
}

#all .neofire-design-tile--hell .neofire-lay-btn.neofire-lay-btn--outline:hover {
    background: rgba(47,46,51,.08);
    border-color: #2F2E33;
    color: #2F2E33;
}

#all .neofire-design-uspbar .neofire-design-usp+.neofire-design-usp {
    border-left-color: rgba(47,46,51,.22);
}

#all .neofire-lay-gslider[data-loop="1"] [data-neofire-pbarwrap] {
    display: none !important;
}

#all .neofire-lay-gslider[data-loop="1"] .neofire-lay-gnav,
#all [data-lay-type="g_catslider"] .neofire-lay-gslider .neofire-lay-gnav {
    top: 50%;
}

#all .neofire-design-hero,
#all .neofire-design-tile,
#all .neofire-design-deals {
    position: relative;
    isolation: isolate;
    overflow: hidden;
}

#all .neofire-design-hero::before,
#all .neofire-design-tile::before,
#all .neofire-design-deals::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    border-radius: inherit;
}

#all .neofire-design-hero::before {
    background: linear-gradient(90deg,rgba(47,46,51,.88) 0%,rgba(47,46,51,.55) 45%,rgba(47,46,51,.15) 100%);
}

#all .neofire-design-tile::before {
    background: linear-gradient(180deg,rgba(47,46,51,0) 30%,rgba(47,46,51,.85) 100%);
}

#all .neofire-design-deals::before {
    background: linear-gradient(90deg,rgba(47,46,51,.85) 0%,rgba(47,46,51,.35) 60%,rgba(47,46,51,.1) 100%);
}

#all .neofire-design-hero > *,
#all .neofire-design-tile > *,
#all .neofire-design-deals > * {
    position: relative;
    z-index: 1;
}

#all .neofire-design-hero {
    min-height: 520px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

#all .neofire-design-tile {
    aspect-ratio: 1/1;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    transition: none;
}

#all .neofire-design-tile .neofire-lay-el:first-child {
    margin-top: auto;
}

@media (max-width:1023px) {
    #all .neofire-design-hero {
        min-height: 420px;
    }
}

@media (max-width:750px) {
    #all .neofire-design-hero {
        min-height: 360px;
    }

    #all .neofire-design-tile {
        aspect-ratio: 4/3;
    }
}

#all .neofire-design-teaser {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    aspect-ratio: 3/2;
    border-radius: 18px;
    color: #FFFFFF;
}

#all .neofire-lay-row > .neofire-design-teaser:nth-child(1):nth-last-child(3),
#all .neofire-lay-row > .neofire-design-teaser:nth-child(2):nth-last-child(2),
#all .neofire-lay-row > .neofire-design-teaser:nth-child(3):nth-last-child(1) {
    aspect-ratio: 1/1;
}

#all .neofire-design-teaser::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background: linear-gradient(180deg,rgba(47,46,51,0) 35%,rgba(47,46,51,.88) 100%);
}

#all .neofire-design-teaser > * {
    position: relative;
    z-index: 1;
}

#all .neofire-design-teaser .neofire-lay-el:first-child {
    margin-top: auto;
}

#all .neofire-design-teaser .neofire-lay-btn.neofire-lay-btn--link {
    color: #FFFFFF;
    text-decoration: none;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    padding: 6px 0 0;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 0;
    background: none;
    height: auto;
}

#all .neofire-design-teaser .neofire-lay-btn.neofire-lay-btn--link::after {
    content: "→";
    font-size: 18px;
    line-height: 1;
    transition: transform .2s ease;
}

#all .neofire-design-teaser:hover .neofire-lay-btn.neofire-lay-btn--link::after {
    transform: translateX(6px);
}

#all .neofire-design-teaser .neofire-lay-btn.neofire-lay-btn--link:hover {
    color: #D5D6D2;
}

@media (max-width:750px) {
    #all .neofire-design-teaser {
        aspect-ratio: 4/3 !important;
    }
}

#all .neofire-lay-gtrack {
    --neofire-gcol: calc((100% - 42px) / 4);
}

@media (max-width:1200px) {
    #all .neofire-lay-gtrack {
        --neofire-gcol: calc((100% - 28px) / 3);
    }
}

@media (max-width:800px) {
    #all .neofire-lay-gtrack {
        --neofire-gcol: calc((100% - 14px) / 2);
    }
}

@media (max-width:600px) {
    #all .neofire-lay-gtrack {
        --neofire-gcol: 100%;
    }
}

#all .neofire-lay-gslider .neofire-lay-gtrack > .card {
    animation: none;
}

#all .neofire-mega-bar .neofire-mega-link.mb_name,
#all .neofire-mega-bar .neofire-mega-link.mb_name.is-current,
#all .neofire-mega-bar .neofire-mega-link.mb_name.is-inpath {
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
}

#all .neofire-lay-catcard .listing-name {
    color: #FFFFFF !important;
}

#all .neofire-lay-catcard:nth-child(3n+2) .listing-name {
    color: #2F2E33 !important;
}

#all .neofire-lay-gslider .neofire-lay-gnav,
#all .neofire-lay-gslider .neofire-lay-gnav:hover,
#all .neofire-lay-gslider .neofire-lay-gnav:active {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    width: 40px;
    height: 40px;
    color: #2F2E33;
    opacity: 1;
    transform: translateY(-50%) scale(1);
}

#all .neofire-lay-gslider .neofire-lay-gnav:hover {
    color: #20C9A6;
}

#all .neofire-lay-gslider .neofire-lay-gnav svg {
    width: 28px;
    height: 28px;
}

#all .neofire-lay-gslider .neofire-lay-gprev {
    left: -48px;
}

#all .neofire-lay-gslider .neofire-lay-gnext {
    right: -48px;
}

@media (max-width:1300px) {
    #all .neofire-lay-gslider .neofire-lay-gprev {
        left: -6px;
    }

    #all .neofire-lay-gslider .neofire-lay-gnext {
        right: -6px;
    }
}

#all .grid .card {
    transition: border-color .15s ease;
}

#all .grid .card:hover,
#all .neofire-lay-gtrack .card:hover {
    border-color: #20C9A6 !important;
}

#all .neofire-design-tile--flat::before {
    display: none;
}

#all .neofire-design-tile--flat {
    aspect-ratio: 4/3;
    border: 1px solid #ECEDEA;
}

#all .neofire-design-tile--flat .neofire-lay-btn.neofire-lay-btn--outline {
    border-color: currentColor;
    color: inherit;
}

#all .neofire-design-tile--flat .neofire-lay-btn.neofire-lay-btn--outline:hover {
    border-color: currentColor;
    color: inherit;
    background: rgba(47,46,51,.06);
}

#all .neofire-mega-panel .neofire-design-mega-spur {
    position: relative;
    height: 4px;
    border-radius: 0;
    background: #ECEDEA;
    margin: 14px 0 2px;
    cursor: pointer;
}

#all .neofire-mega-panel .neofire-design-mega-griff {
    position: absolute;
    top: 0;
    left: 0;
    height: 4px;
    border-radius: 0;
    background: #9A9BA0;
    cursor: grab;
    transition: background .15s ease;
}

#all .neofire-mega-panel .neofire-design-mega-griff:hover,
#all .neofire-mega-panel .neofire-design-mega-spur.is-grab .neofire-design-mega-griff {
    background: #2F2E33;
    cursor: grabbing;
}

#all .neofire-mega-panel .neofire-design-mega-next {
    background: #FFFFFF;
}

#all .neofire-mega-panel .neofire-mn-subs {
    padding-left: 64px;
    padding-right: 64px;
    scroll-padding-left: 64px;
}

#all .neofire-mega-panel .neofire-mn-grp:first-child {
    padding-left: 20px;
}

#all .neofire-mega-panel .neofire-design-mega-wrap::before,
#all .neofire-mega-panel .neofire-design-mega-wrap::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 22px;
    width: 66px;
    background: #FFFFFF;
    z-index: 2;
    pointer-events: none;
}

#all .neofire-mega-panel .neofire-design-mega-wrap::before {
    left: 0;
}

#all .neofire-mega-panel .neofire-design-mega-wrap::after {
    right: 0;
    width: 96px;
    background: linear-gradient(270deg,#FFFFFF 70%,rgba(255,255,255,0));
}

#all .neofire-mega-panel .neofire-design-mega-arrow {
    z-index: 3;
}

#all .neofire-mega-panel [data-lay-col="cmegaframe"] {
    border-radius: 0 !important;
    box-shadow: none;
}

@media (min-width:751px) {
    #all .neofire-mega-panel .neofire-mn-subs {
        overflow-x: hidden;
        scrollbar-width: none;
    }
}

#all .neofire-lay-catcard:nth-child(3n+2):hover .img .noimage {
    filter: brightness(1.025);
}

#all .neofire-mega-panel .neofire-mn-subs {
    cursor: grab;
    user-select: none;
}

#all .neofire-mega-panel .neofire-mn-subs.is-dragging {
    cursor: grabbing;
    scroll-snap-type: none;
}

#all .neofire-mega-panel .neofire-mn-subs.is-dragging a {
    pointer-events: none;
}

#all .grid {
    gap: 14px;
}

#all .neofire-mega-bar .neofire-mega-link {
    position: relative;
    z-index: 2;
    background: transparent !important;
    transition: color .1s ease 0s;
}

#all .neofire-mega-bar .neofire-mega-link::after {
    display: none !important;
}

#all .neofire-mega-bar .neofire-mega-ink {
    z-index: 1;
    height: calc(100% + 14px);
    bottom: 0;
    background: #EEEFEC;
    border-radius: 10px 10px 0 0;
    box-sizing: content-box;
    padding: 0 14px;
    margin-left: -14px;
    transition: none;
}

#all .neofire-mega-bar .neofire-mega-ink.is-fade {
    animation: neofireDesignKarteAuf .16s ease;
}

@keyframes neofireDesignKarteAuf {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

#all .neofire-mega-bar .neofire-mega-link.mb_name {
    color: #FFFFFF !important;
}

#all .neofire-mega-bar .neofire-mega-item.is-karte > a.neofire-mega-link.mb_name,
#all .neofire-mega-bar .neofire-mega-item.is-karte > a.neofire-mega-link.mb_name:hover,
#all .neofire-mega-bar .neofire-mega-item.is-karte > a.neofire-mega-link.mb_name.is-current {
    color: #2F2E33 !important;
}

#all .neofire-mega-bar .neofire-mega-item:has(> .is-current) + .neofire-mega-item::before,
#all .neofire-mega-bar .neofire-mega-item:hover + .neofire-mega-item::before {
    opacity: 0;
}

#all [data-neofire-lay-region="header"] .nav_mega {
    position: relative;
    z-index: 6;
}

#all [data-neofire-lay-region="header"] [data-lay-col="cmsqj3hwn3"] {
    overflow: visible;
}

#all .neofire-mega-bar .neofire-mega-ink {
    bottom: -14px;
}

@media (min-width:1024px) {
    #all .neofire-mega,
    #all .neofire-mega-bar {
        overflow: visible !important;
    }
}

#all .neofire-mega-panel .neofire-design-mega-arrow,
#all .neofire-mega-panel .neofire-design-mega-arrow:hover {
    width: 40px;
    height: 40px;
    background: transparent !important;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    color: #2F2E33;
    font-size: 0;
    line-height: 0;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

#all .neofire-mega-panel .neofire-design-mega-arrow:hover {
    color: #20C9A6;
}

#all .neofire-mega-panel .neofire-design-mega-arrow svg {
    width: 28px;
    height: 28px;
}

#all .neofire-mega-panel .neofire-design-mega-arrow[disabled] {
    opacity: .25;
}

#all .neofire-lay-gslider .neofire-lay-gnav.neofire-lay-gnav.neofire-lay-gnav,
#all .neofire-mega-panel .neofire-design-mega-arrow.neofire-design-mega-arrow.neofire-design-mega-arrow {
    color: #2F2E33 !important;
}

#all .neofire-lay-gslider .neofire-lay-gnav.neofire-lay-gnav.neofire-lay-gnav:hover,
#all .neofire-mega-panel .neofire-design-mega-arrow.neofire-design-mega-arrow.neofire-design-mega-arrow:hover {
    color: #20C9A6 !important;
}

#all .neofire-lay-gslider .neofire-lay-gnav svg,
#all .neofire-mega-panel .neofire-design-mega-arrow svg {
    stroke: currentColor;
}

#all .neofire-mega-bar .neofire-mega-link.mb_name.is-current::before {
    content: "";
    position: absolute;
    left: -14px;
    right: -14px;
    top: 0;
    bottom: -14px;
    background: #EEEFEC;
    border-radius: 10px 10px 0 0;
    z-index: -1;
    display: block !important;
}

#all .neofire-mega-bar .neofire-mega-item > a.neofire-mega-link.mb_name.is-current.is-current,
#all .neofire-mega-bar .neofire-mega-item > a.neofire-mega-link.mb_name.is-current.is-current:hover {
    color: #2F2E33 !important;
}

#all .neofire-mega-bar .neofire-mega-ink.is-park {
    opacity: 0 !important;
}

#all .neofire-design-flat::before {
    display: none !important;
}

#all .neofire-design-flat .neofire-lay-btn.neofire-lay-btn--outline {
    border-color: currentColor;
    color: inherit;
    background: transparent;
}

#all .neofire-design-flat .neofire-lay-btn.neofire-lay-btn--outline:hover {
    border-color: currentColor;
    color: inherit;
    background: rgba(0,0,0,.06);
}

#all .neofire-design-flat .neofire-lay-btn.neofire-lay-btn--link {
    color: inherit;
}

@media (min-width:0px) {
    #all .neofire-mega-panel .neofire-mn-subs {
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
        overscroll-behavior-x: contain;
    }

    #all .neofire-mega-panel .neofire-mn-subs::-webkit-scrollbar {
        display: none !important;
        width: 0;
        height: 0;
    }
}

#all .neofire-mega-bar .neofire-mega-item > a.neofire-mega-link.mb_name.is-current.is-current.is-current.is-current,
#all .neofire-mega-bar .neofire-mega-item > a.neofire-mega-link.mb_name.is-current.is-current.is-current.is-current:hover,
#all .neofire-mega-bar .neofire-mega-item > a.neofire-mega-link.mb_name.is-inpath.is-inpath.is-inpath.is-inpath,
#all .neofire-mega-bar .neofire-mega-item > a.neofire-mega-link.mb_name.is-inpath.is-inpath.is-inpath.is-inpath:hover,
#all .neofire-mega-bar .neofire-mega-item.is-karte > a.neofire-mega-link.mb_name.mb_name.mb_name.mb_name,
#all .neofire-mega-bar .neofire-mega-item.is-karte > a.neofire-mega-link.mb_name.mb_name.mb_name.mb_name:hover {
    color: #2F2E33 !important;
    transition: none !important;
}

#all .neofire-mega-bar .neofire-mega-link.mb_name {
    transition: none !important;
}

@media (min-width:0px) {
    #all .neofire-mega-panel .neofire-mn-subs {
        min-height: 238px;
        align-items: stretch;
    }

    #all .neofire-mega-panel .neofire-mn-subs > .neofire-mn-grp {
        align-self: stretch;
    }
}

@media (min-width:0px) {
    #all .neofire-mega-panel [data-lay-col="cmegaframe"],
    #all .neofire-mega-panel [data-lay-col="cmegainner"],
    #all .neofire-mega-panel [data-lay-col="cmegasubs"] {
        justify-content: flex-start !important;
    }
}

@media (max-width:1023px) {
    #all .neofire-mega-bar .neofire-mega-caret {
        display: none !important;
    }
}

#all .neofire-design-flat {
    background-image: none !important;
}

#all .neofire-lay-catcard:not(.neofire-design-subcats .neofire-lay-catcard) {
    position: relative;
}

#all .neofire-lay-catcard:not(.neofire-design-subcats .neofire-lay-catcard) .listing-name {
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 16px;
    padding: 0;
    color: #FFFFFF !important;
    font-size: 16px;
}

#all .neofire-lay-catcard:not(.neofire-design-subcats .neofire-lay-catcard):nth-child(3n+2) .listing-name {
    color: #2F2E33 !important;
}

@media (max-width:1023px) {
    #all .neofire-mega-bar .neofire-mega-ink {
        display: none !important;
    }

    #all .neofire-mega-link.mb_name {
        margin-right: 20px !important;
    }

    #all [data-lay-col="cmsqj3hwn3"] {
        padding-top: 8px !important;
        padding-bottom: 0 !important;
    }
}

@media (max-width:767px) {
    #all .neofire-design-topbar .neofire-lay-el,
    #all .neofire-design-topbar span {
        line-height: 18px !important;
    }

    #all .neofire-design-hero {
        padding: 40px 24px !important;
    }

    #all .neofire-design-hero .heading h1 {
        font-size: 44px !important;
        line-height: 1.08 !important;
    }

    #all .neofire-design-hero *:has(> .neofire-lay-btn) {
        display: block !important;
        width: 100% !important;
        margin-right: 0 !important;
    }

    #all .neofire-design-hero .neofire-lay-btn {
        display: flex !important;
        width: 100%;
        justify-content: center;
        align-items: center;
        box-sizing: border-box;
        min-height: 48px;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    #all .neofire-design-tile--flat > .neofire-lay-el:first-child,
    #all .neofire-design-teaser > .neofire-lay-el:first-child {
        margin-top: 0 !important;
    }

    #all .neofire-design-tile--flat,
    #all .neofire-design-teaser {
        aspect-ratio: auto !important;
        min-height: 0 !important;
        padding: 28px 24px !important;
    }

    #all .neofire-lay-row:has(> .neofire-design-tile--flat),
    #all .neofire-lay-row:has(> .neofire-design-teaser) {
        row-gap: 20px !important;
    }

    #all .neofire-design-deals {
        padding: 40px 28px !important;
    }

    #all .neofire-design-deals .heading h2 {
        font-size: 40px !important;
        line-height: 1.05 !important;
    }

    #all .neofire-design-deals .neofire-lay-btn {
        white-space: nowrap;
    }

    #all .heading h2 {
        font-size: 30px !important;
        line-height: 1.1 !important;
    }

    #all .neofire-design-usp {
        padding: 16px 20px !important;
    }

    #all .neofire-nl-form {
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
    }

    #all .neofire-nl-form .neofire-nl-feld {
        width: 100% !important;
        flex: 1 1 auto !important;
        box-sizing: border-box;
    }

    #all .neofire-nl-form .neofire-nl-knopf {
        width: 100% !important;
        justify-content: center;
    }

    #all .neofire-lay-col:not(:has(*))[style*="height:64px"],
    #all .neofire-lay-col:not(:has(*))[style*="height:56px"],
    #all .neofire-lay-col:not(:has(*))[style*="height:48px"] {
        height: 40px !important;
    }
}

@media (min-width:1024px) {
    #all .neofire-mega-bar .neofire-mega-ink {
        background: linear-gradient(180deg,#FFFFFF 0%,#EEEFEC 100%) !important;
    }

    #all .neofire-mega-bar .neofire-mega-link.mb_name.is-current::before {
        background: linear-gradient(180deg,#FFFFFF 0%,#EEEFEC 100%) !important;
    }
}

@media (max-width:767px) {
    #all .neofire-design-topbar .neofire-lay-el > div {
        position: relative;
        height: 20px;
        overflow: hidden;
        text-align: center;
    }

    #all .neofire-design-topbar .neofire-lay-el > div > span {
        display: block !important;
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        line-height: 20px !important;
        opacity: 0;
        transition: opacity .45s ease;
        margin: 0 !important;
        white-space: nowrap;
    }

    #all .neofire-design-topbar .neofire-lay-el > div > span.is-on {
        opacity: 1;
    }

    #all .neofire-design-topbar .neofire-lay-el > div > span:first-child:not(.is-on):not(.is-off) {
        opacity: 1;
    }
}

#all .neofire-lay-gslider .neofire-lay-gnav.neofire-lay-gnav.neofire-lay-gnav {
    touch-action: manipulation !important;
    -webkit-tap-highlight-color: transparent;
    z-index: 6 !important;
    pointer-events: auto !important;
    cursor: pointer;
}

@media (max-width:1023px) {
    #all .neofire-mega-bar .neofire-mega-link.mb_name.is-current::before {
        display: block !important;
        bottom: 0 !important;
        left: -12px;
        right: -12px;
    }

    #all .neofire-mega-bar {
        padding: 0 34px !important;
        scroll-padding: 0 34px;
    }

    #all .neofire-mega-arrow,
    #all .neofire-mega.is-scroll .neofire-mega-arrow {
        display: flex !important;
        position: absolute;
        top: 0 !important;
        bottom: 0;
        height: auto !important;
        width: 34px !important;
        transform: none !important;
        border-radius: 0 !important;
        background: #2F2E33 !important;
        color: #FFFFFF !important;
        align-items: center;
        justify-content: center;
        z-index: 61;
        opacity: 1;
        box-shadow: none;
    }

    #all .neofire-mega-arrow.neofire-mega-aprev {
        left: 0;
        border-right: 1px solid rgba(255,255,255,.12);
    }

    #all .neofire-mega-arrow.neofire-mega-anext {
        right: 0;
        border-left: 1px solid rgba(255,255,255,.12);
    }

    #all .neofire-mega-arrow[disabled] {
        opacity: .35 !important;
        pointer-events: none;
    }

    #all .neofire-mega-arrow svg {
        width: 20px !important;
        height: 20px !important;
    }

    #all .neofire-mega::after {
        display: none;
    }

    #all [data-neofire-lay-region="header"] .neofire-region-frame {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    #all [data-lay-col="cmsqj3hwn3"] {
        border-width: 0 !important;
    }

    #all .neofire-mega-bar .neofire-mega-item.is-open > a.neofire-mega-link.mb_name::before {
        content: "";
        position: absolute;
        left: -12px;
        right: -12px;
        top: 0;
        bottom: 0;
        background: linear-gradient(180deg,#FFFFFF 0%,#EEEFEC 100%);
        border-radius: 10px 10px 0 0;
        z-index: -1;
        display: block;
    }

    #all .neofire-mega-bar .neofire-mega-item.is-open > a.neofire-mega-link.mb_name.mb_name.mb_name.mb_name.mb_name.mb_name {
        color: #2F2E33 !important;
    }

    #all .neofire-mega-panel {
        max-height: calc(100vh - 120px);
        overflow-y: auto;
    }
}

@media (max-width:1023px) {
    #all .neofire-design-topbar {
        background: #FFFFFF !important;
        border: 0 !important;
    }

    #all .neofire-design-topbar .neofire-lay-el,
    #all .neofire-design-topbar span {
        color: #2F2E33 !important;
        font-weight: 800;
        letter-spacing: .04em;
    }

    #all .neofire-design-topbar .neofire-lay-el > div {
        height: 22px;
    }

    #all .neofire-design-topbar .neofire-lay-el > div > span {
        line-height: 22px !important;
        font-size: 13px !important;
    }
}

#all .neofire-mega-bar .neofire-mega-link.mb_name.is-inpath::before {
    content: "";
    position: absolute;
    left: -14px;
    right: -14px;
    top: 0;
    bottom: -14px;
    background: linear-gradient(180deg,#FFFFFF 0%,#EEEFEC 100%);
    border-radius: 10px 10px 0 0;
    z-index: -1;
    display: block !important;
}

#all .neofire-mega-bar .neofire-mega-ink:not(.is-live) {
    opacity: 0 !important;
}

@media (max-width:1023px) {
    #all .neofire-mega-bar .neofire-mega-link.mb_name.is-inpath::before {
        bottom: 0 !important;
        left: -12px;
        right: -12px;
    }
}

@media (max-width:767px) {
    #all .neofire-el-logo img {
        height: 40px !important;
        width: auto !important;
        max-width: none;
    }
}

@media (max-width:1023px) {
    #all .neofire-mega-panel .neofire-design-mega-arrow.neofire-design-mega-arrow {
        display: flex !important;
    }

    #all .neofire-mega-panel .neofire-design-mega-wrap::before,
    #all .neofire-mega-panel .neofire-design-mega-wrap::after {
        display: none !important;
        content: none !important;
    }

    #all .neofire-mega-panel .neofire-mn-subs {
        padding: 0 !important;
        scroll-snap-type: x mandatory;
        scroll-padding: 0;
        gap: 0 !important;
        column-gap: 0 !important;
    }

    #all .neofire-mega-panel .neofire-mn-grp {
        flex: 0 0 100% !important;
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;
        scroll-snap-align: start;
        border-left: 0 !important;
        border-right: 0 !important;
        padding: 4px 52px 12px 52px !important;
        box-sizing: border-box;
    }
}

@media (max-width:1360px) {
    #all .neofire-lay-gslider .neofire-lay-gnav.neofire-lay-gnav.neofire-lay-gnav,
    #all .neofire-lay-gnav.neofire-lay-gnav.neofire-lay-gnav.neofire-lay-gnav {
        width: 20px !important;
        height: 44px !important;
        background: transparent !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        color: #2F2E33 !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        margin: 0 !important;
        padding: 0 !important;
        opacity: 1;
    }

    #all .neofire-lay-gslider .neofire-lay-gprev.neofire-lay-gprev.neofire-lay-gprev {
        left: -20px !important;
        right: auto !important;
    }

    #all .neofire-lay-gslider .neofire-lay-gnext.neofire-lay-gnext.neofire-lay-gnext {
        right: -20px !important;
        left: auto !important;
    }

    #all .neofire-lay-gslider .neofire-lay-gnav.neofire-lay-gnav.neofire-lay-gnav svg {
        width: 18px !important;
        height: 18px !important;
    }

    #all .neofire-lay-gslider .neofire-lay-gnav.neofire-lay-gnav.neofire-lay-gnav:hover,
    #all .neofire-lay-gnav.neofire-lay-gnav.neofire-lay-gnav.neofire-lay-gnav:hover {
        background: transparent !important;
        color: #20C9A6 !important;
    }
}

@media (max-width:767px) {
    #all [data-lay-col="c_content_inner"] {
        padding-top: 0 !important;
    }

    #all [data-lay-col="c_content_inner"]:not(:has(.neofire-design-hero)) > :first-child {
        margin-top: 20px !important;
    }
}

@media (max-width:767px) {
    #all .neofire-lay-el:has(> .qty-box) {
        width: 100% !important;
        max-width: none !important;
    }

    #all .qty-box {
        display: flex !important;
        width: 100% !important;
        max-width: none !important;
    }

    #all .qty-box #minus,
    #all .qty-box #plus {
        flex: 0 0 60px !important;
    }

    #all .qty-box #qty {
        flex: 1 1 auto !important;
        text-align: center;
        display: flex;
        align-items: center;
        justify-content: center;
    }
}

#all .gallery-thumbs {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden;
    gap: 10px !important;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    padding: 4px 4px 4px 4px;
    scroll-padding-left: 4px;
    position: relative;
    min-width: 0;
}

#all .gallery-thumbs::-webkit-scrollbar {
    display: none;
}

#all .gallery-thumbs .gallery-thumb {
    flex: 0 0 100px !important;
    width: 100px !important;
    scroll-snap-align: start;
    margin: 0 !important;
}

#all .neofire-design-gal-wrap {
    display: grid;
    grid-template-columns: 44px minmax(0,1fr) 44px;
    align-items: center;
    position: relative;
}

#all .neofire-design-gal-wrap > .gallery-thumbs {
    grid-column: 2;
    grid-row: 1;
}

#all .neofire-design-gal-arrow {
    grid-row: 1;
    position: static;
    transform: none;
    width: 44px;
    height: 44px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: #2F2E33;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    cursor: pointer;
    transition: color .15s ease,opacity .15s ease;
}

#all .neofire-design-gal-prev {
    grid-column: 1;
    justify-self: start;
}

#all .neofire-design-gal-next {
    grid-column: 3;
    justify-self: end;
}

#all .neofire-design-gal-arrow svg {
    width: 34px;
    height: 34px;
    stroke: currentColor;
    stroke-width: 3;
    fill: none;
    stroke-linecap: butt;
    stroke-linejoin: miter;
}

#all .neofire-design-gal-arrow:hover {
    color: #20C9A6;
}

#all .neofire-design-gal-arrow[disabled] {
    opacity: .22;
    cursor: default;
    color: #2F2E33;
}

#all .neofire-design-gal-spur {
    grid-column: 2;
    grid-row: 2;
    position: relative;
    height: 14px;
    margin: 8px 0 0;
    cursor: pointer;
    touch-action: none;
}

#all .neofire-design-gal-spur::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 5px;
    height: 4px;
    background: #ECEDEA;
}

#all .neofire-design-gal-griff {
    position: absolute;
    left: 0;
    top: 5px;
    height: 4px;
    border-radius: 0;
    background: #9A9BA0;
    width: 30%;
    cursor: grab;
    transition: background .15s ease;
    touch-action: none;
}

#all .neofire-design-gal-griff::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -8px;
    bottom: -8px;
}

#all .neofire-design-gal-griff:hover,
#all .neofire-design-gal-spur.is-dragging .neofire-design-gal-griff {
    background: #2F2E33;
}

#all .neofire-design-gal-spur.is-dragging .neofire-design-gal-griff {
    cursor: grabbing;
}

@media (max-width:767px) {
    #all .neofire-design-gal-wrap {
        grid-template-columns: 30px minmax(0,1fr) 30px;
    }

    #all .neofire-design-gal-arrow {
        width: 30px;
        height: 44px;
    }

    #all .neofire-design-gal-arrow svg {
        width: 26px;
        height: 26px;
    }
}

#all .gallery-thumbs .gallery-thumb,
#all .neofire-gallery .gallery-main {
    position: relative;
}

#all .gallery-thumb.is-loading img {
    opacity: 0;
}

#all .gallery-thumb img,
#all .gallery-main #mainImage {
    transition: opacity .2s ease;
}

#all .gallery-main.is-loading #mainImage {
    opacity: .35;
}

#all .gallery-thumb.is-loading::before,
#all .gallery-main.is-loading::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 26px;
    height: 26px;
    margin: -13px 0 0 -13px;
    border: 3px solid #ECEDEA;
    border-top-color: #2F2E33;
    border-radius: 50%;
    animation: neofireGalleryRing .7s linear infinite;
    z-index: 2;
    pointer-events: none;
    box-sizing: border-box;
}

#all .gallery-main.is-loading::before {
    width: 44px;
    height: 44px;
    margin: -22px 0 0 -22px;
    border-width: 4px;
}

@keyframes neofireGalleryRing {
    to {
        transform: rotate(360deg);
    }
}

@media (prefers-reduced-motion:reduce) {
    #all .gallery-thumb.is-loading::before,
    #all .gallery-main.is-loading::before {
        animation-duration: 1.6s;
    }
}

#all .product_image_thumbs > .gallery-thumbs {
    margin-left: 44px !important;
    margin-right: 44px !important;
    margin-bottom: 22px !important;
}

#all .neofire-design-gal-wrap.is-static .neofire-design-gal-arrow,
#all .neofire-design-gal-wrap.is-static .neofire-design-gal-spur {
    visibility: hidden;
}

@media (max-width:767px) {
    #all .product_image_thumbs > .gallery-thumbs {
        margin-left: 30px !important;
        margin-right: 30px !important;
    }
}

@media (max-width:767px) {
    #all .neofire-lay-gslider .neofire-lay-gnav.neofire-lay-gnav.neofire-lay-gnav,
    #all .neofire-lay-gnav.neofire-lay-gnav.neofire-lay-gnav.neofire-lay-gnav {
        width: 32px !important;
        height: 48px !important;
        background: #FFFFFF !important;
        border: 1px solid #D5D6D2 !important;
    }

    #all .neofire-lay-gslider .neofire-lay-gprev.neofire-lay-gprev.neofire-lay-gprev {
        left: 0 !important;
        border-radius: 0 10px 10px 0 !important;
    }

    #all .neofire-lay-gslider .neofire-lay-gnext.neofire-lay-gnext.neofire-lay-gnext {
        right: 0 !important;
        border-radius: 10px 0 0 10px !important;
    }

    #all .neofire-lay-gslider .neofire-lay-gnav.neofire-lay-gnav.neofire-lay-gnav svg {
        width: 20px !important;
        height: 20px !important;
    }

    #all .neofire-lay-gslider .neofire-lay-gnav.neofire-lay-gnav.neofire-lay-gnav:hover {
        background: #FFFFFF !important;
        border-color: #20C9A6 !important;
    }
}

#all .neofire-design-topbar {
    background: #FFFFFF !important;
    border: 0 !important;
}

#all .neofire-design-topbar .neofire-lay-el,
#all .neofire-design-topbar span {
    color: #2F2E33 !important;
    font-weight: 800;
}

@media (min-width:751px) {
    #all .neofire-lay-row:has(> .neofire-product-reviews-side) {
        align-items: flex-start !important;
    }

    #all .neofire-lay-col.neofire-product-reviews-side {
        position: sticky !important;
        top: 20px !important;
        align-self: flex-start !important;
        padding-right: 48px !important;
        box-sizing: border-box !important;
    }
}

@media (max-width:750px) {
    #all .neofire-lay-col.neofire-product-reviews-side {
        order: 2 !important;
        margin-top: 32px !important;
    }
}

#all .neofire-product-reviews-side .neofire-rating,
#all .neofire-product-reviews .neofire-rating {
    margin-top: 40px !important;
}

#all .neofire-lay-proptable,
#all .neofire-lay-proptable tr,
#all .neofire-lay-proptable tr > * {
    border: 0 !important;
}

#all .neofire-lay-proptable tr:nth-child(even) > * {
    background: rgba(128,128,128,.06) !important;
}

#all .neofire-rating__button {
    height: auto !important;
    min-height: 44px !important;
    padding: 10px 16px !important;
    line-height: 22px !important;
    margin-top: 14px !important;
    color: var(--main-button-color,#2f2e33) !important;
    background: var(--main-button-background,#ffffff) !important;
    border: 1px solid var(--main-button-color,#2f2e33) !important;
    transition: background-color .16s ease,color .16s ease,border-color .16s ease !important;
}

#all .neofire-rating__button:hover,
#all .neofire-rating__button:focus-visible {
    color: var(--main-button-hover-color,#ffffff) !important;
    background: var(--main-button-hover-background,#2f2e33) !important;
    border-color: var(--main-button-hover-background,#2f2e33) !important;
}

#all .neofire-rating__button[hidden] {
    display: none !important;
}

#all .neofire-product-reviews-side .neofire-rating__heading {
    font-size: 23px !important;
    line-height: 28px !important;
    margin: 0 0 18px !important;
}

#all .product_tabs_nav .neofire-tabs {
    margin-top: 0 !important;
}

#all .product_tabs_nav .neofire-tabs-tab {
    font-size: 23px !important;
    font-weight: 700 !important;
    line-height: 28px !important;
    padding: 0 0 12px !important;
    margin: 0 32px 0 0 !important;
}

#all .neofire-product-manufacturer-title {
    line-height: 28px !important;
}

#all .neofire-product-manufacturer-title h3 {
    font-size: 23px !important;
    line-height: 28px !important;
    margin: 0 !important;
}

@media (max-width:750px) {
    #all .product_tabs_nav .neofire-tabs-tab,
    #all .neofire-product-manufacturer-title h3,
    #all .neofire-product-reviews .neofire-rating__heading,
    #all .neofire-product-reviews-side .neofire-rating__heading {
        font-size: 20px !important;
        line-height: 26px !important;
    }

    #all .product_tabs_nav .neofire-tabs-tab {
        margin-right: 22px !important;
    }
}

#all .neofire-product-reviews-side .neofire-rating__grid,
#all .neofire-product-reviews .neofire-rating__grid {
    grid-template-columns: minmax(0,1fr) !important;
    gap: 32px !important;
}

#all .product_review_list {
    margin-top: 48px !important;
}

#all .product_review_list .neofire-rating__heading {
    font-size: 23px !important;
    line-height: 28px !important;
    margin: 0 0 18px !important;
}

#core[data-mega="0"] .neofire-s1-h-rsvgrau {
    display: none !important;
}

/* ==== NEOFIRE-STANDARD-DESIGN:ENDE ==== */

#all .neofire-attribution {
    padding-bottom: 28px !important;
}

#header:not(:has([data-lay-type="nav_mega"])) .neofire-design-graustreifen {
    display: none !important;
}
/* ==== NEOFIRE-MEGA-SLIDE:START v1 (24.09.2026) – Ausklappen wie sport-onlineshop: Fläche fest unter dem Balken, rollt herunter (clip-path), blendet sauber aus ==== */
#all .neofire-mega-panel{transform:translateZ(0) !important;will-change:clip-path,opacity;backface-visibility:hidden;clip-path:inset(0 0 100% 0);transition:opacity .2s ease, clip-path 0s linear .22s, visibility 0s linear .22s !important}
#all .neofire-mega .neofire-mega-item.is-open>.neofire-mega-panel,
#all .neofire-mega .neofire-mega-item:focus-within>.neofire-mega-panel{clip-path:inset(0 0 0 0) !important;transition:opacity .2s ease, clip-path .3s cubic-bezier(.22,.61,.36,1), visibility 0s !important}
@media (prefers-reduced-motion: reduce){ #all .neofire-mega-panel{clip-path:none !important;transition:opacity .12s !important} }
/* ==== NEOFIRE-MEGA-SLIDE:ENDE ==== */

/* ==== NEOFIRE-MEGA-KLICK-KARTE v1 (29.09.): Beim Klick auf einen Menuepunkt schliesst das Mega-Menue sofort (is-open weg),
   der Punkt behaelt aber die dunkle Schrift der Karte (is-karte), bis die neue Seite da ist -> dunkle Schrift auf dunkler Leiste
   = "schwarze Flaeche". Die Karte haengt jetzt am is-karte-Punkt selbst (gleiche Optik wie der geoeffnete Reiter). ==== */
#all .neofire-mega-bar .neofire-mega-item.is-karte > a.neofire-mega-link.mb_name::before{content:"" !important;position:absolute;left:-12px;right:-12px;top:0;bottom:0;background:linear-gradient(180deg,#FFFFFF 0%,#EEEFEC 100%);border-radius:10px 10px 0 0;z-index:-1;display:block !important}
/* ==== ENDE NEOFIRE-MEGA-KLICK-KARTE ==== */

/* ==== NEOFIRE-MEGA-STANDARD v3 (29.09.): Mega-Menue wie sport-onlineshop.de – weisse Ausklappflaeche unter der Leiste, feste Karteikarte
   am angefahrenen Punkt (kein gleitender Ink), aktiver Punkt grau (#eeefec = Farbe des Streifens darunter) und im Hintergrund mit feinem grauem Rand, offene Karte
   sofort 14px breit, dunkle Schrift solange offen, keine Trennstriche neben Karten, keine weisse Linie unter der Leiste. ==== */
#all:not(.darkmode) [data-lay-col="cmegaframe"]{background:transparent !important;border-bottom:1px solid #e3e4e0 !important}
#all:not(.darkmode) .neofire-mega-panel{background:linear-gradient(180deg, #ffffff 0%, #ffffff 22%, rgba(255,255,255,.93) 100%) !important}
#all:not(.darkmode) .neofire-mega-panel .neofire-design-mega-wrap::before{background:transparent !important}
#all:not(.darkmode) .neofire-design-mega-wrap::after{background:linear-gradient(270deg,#ffffff 70%,rgba(255,255,255,0)) !important}
/* Reiter-Logik: gleitenden Ink-Reiter abschalten (folgte dem Hover unabhaengig vom Aufklappen) */
#all .neofire-mega-bar .neofire-mega-ink{display:none !important}
/* Grauer Streifen (unterer Rand) wird WEISS solange ein Flyout offen ist -> kein graues Aufblitzen beim Herunterrollen. Ruhezustand bleibt grau. */
#all #topbar:has(.neofire-mega-bar .neofire-mega-item.is-open > .neofire-mega-panel) [class*="csvgrau"]{background:#ffffff !important}
/* Hover-Unterstrich der Balken-Links weg (Reiter-Highlight ersetzt ihn) */
#all .neofire-mega-bar .neofire-mega-link.mb_name::after{display:none !important}
/* Angefahrener Punkt MIT Flyout: weisser Karteireiter, verbindet mit der Flaeche */
#all .neofire-mega-bar .neofire-mega-item.is-open > .neofire-mega-link{position:relative}
#all .neofire-mega-bar .neofire-mega-item.is-open:has(> .neofire-mega-panel) > .neofire-mega-link::before{content:"";position:absolute;left:-14px;right:-14px;top:0;bottom:-14px;background:#fff;border-radius:10px 10px 0 0;z-index:-1;display:block}
/* Mobile: offene Kategorie MIT Unterkategorien = solid WEISS (ueberschreibt den weiss->grau Verlauf des Kern-CSS, der auf dem iPhone grau wirkte) */
#all .neofire-mega-bar .neofire-mega-item.is-open:has(> .neofire-mega-panel) > a.neofire-mega-link.mb_name::before{background:#ffffff !important;background-image:none !important}
/* Angefahrener Punkt OHNE Flyout (z.B. DEALS): Reiter in der Farbe des unteren grauen Streifens (#eeefec) -> keine Linie */
#all .neofire-mega-bar .neofire-mega-item.is-open:not(:has(> .neofire-mega-panel)) > .neofire-mega-link::before{content:"";position:absolute;left:-14px;right:-14px;top:0;bottom:-3px;background:#eeefec;border-radius:10px 10px 0 0;z-index:-1;display:block}
/* Aktiver (is-current) Reiter OHNE Flyout (DEALS): gleiche Farbe wie der untere Streifen (#eeefec), endet an der Linie (bottom:0) - identisch zum Hover, damit beim Anfahren kein Strich an der Unterkante entsteht */
#all .neofire-mega-bar .neofire-mega-item:not(:has(> .neofire-mega-panel)) .neofire-mega-link.mb_name.is-current::before{background:#eeefec !important;background-image:none !important;bottom:-3px !important;left:-14px !important;right:-14px !important;top:0 !important;border-radius:10px 10px 0 0 !important}
/* Aktiver (is-current) Reiter: im Ruhezustand grau, angefahren weiss */
#all .neofire-mega-bar .neofire-mega-item .neofire-mega-link.mb_name.is-current::before{background:#eeefec !important;background-image:none !important}
#all .neofire-mega-bar .neofire-mega-item.is-open:has(> .neofire-mega-panel) .neofire-mega-link.mb_name.is-current::before{background:#ffffff !important;background-image:none !important}
/* Oberkategorien etwas größer */
#all .neofire-mega-bar .neofire-mega-link.mb_name{font-size:17px !important}
/* Untergruppen-Überschriften: normal geschrieben und größer */
#all .neofire-mega-panel .neofire-mn-grp .mi_head{text-transform:none !important;letter-spacing:normal !important;font-size:15.5px !important}
/* "Alles anzeigen" bleibt schwarz (kein Türkis beim Hover) */
#all .neofire-mega-panel a.neofire-mn-all,
#all .neofire-mega-panel a.neofire-mn-all:hover,
#all .neofire-mega-panel a.neofire-mn-all:focus,
#all .neofire-mega-panel a.neofire-mn-all:active{color:#2f2e33 !important;-webkit-text-fill-color:#2f2e33 !important}
#all .neofire-mega-bar .neofire-mega-link.is-current::before{transition:box-shadow 0s !important}
/* Panel fest unter dem Balken verankert (kein Aufwärts-Transform -> klappt nicht über die Buttons) */
#all .neofire-mega-panel{transform:translateZ(0) !important;will-change:clip-path,opacity;backface-visibility:hidden;clip-path:inset(0 0 100% 0);transition:opacity .2s ease, clip-path 0s linear .22s, visibility 0s linear .22s !important}
/* Öffnen: flüssiges Herunterfahren unter den Buttons */
#all .neofire-mega .neofire-mega-item.is-open>.neofire-mega-panel,
#all .neofire-mega .neofire-mega-item:focus-within>.neofire-mega-panel{clip-path:inset(0 0 0 0) !important;transition:opacity .2s ease, clip-path .3s cubic-bezier(.22,.61,.36,1), visibility 0s !important}
@media (prefers-reduced-motion: reduce){ #all .neofire-mega-panel{clip-path:none !important;transition:opacity .12s !important} }
#all .neofire-mega-bar .neofire-mega-item.is-open > a.neofire-mega-link.mb_name.mb_name.mb_name.mb_name.mb_name.mb_name,
#all .neofire-mega-bar .neofire-mega-item.is-open > a.neofire-mega-link.mb_name.mb_name.mb_name.mb_name.mb_name.mb_name [data-card-atom]{color:#2F2E33 !important}
#all .neofire-mega-bar:has(.neofire-mega-item.is-open > .neofire-mega-panel) .neofire-mega-item:not(.is-open):has(> .neofire-mega-panel)>.neofire-mega-link.is-current::before{box-shadow:inset 0 0 0 1px #d5d6d2 !important;background:#eeefec !important;background-image:none !important;top:0 !important;bottom:0 !important;left:-14px !important;right:-14px !important;transition:none !important}
#all .neofire-mega-bar .neofire-mega-item.is-open::before,
#all .neofire-mega-bar .neofire-mega-item:has(> a.neofire-mega-link.is-current)::before{opacity:0 !important}
#all .neofire-mega-bar .neofire-mega-item.is-open > .neofire-mega-link::before,
#all .neofire-mega-bar .neofire-mega-item.is-open > a.neofire-mega-link.mb_name::before{left:-14px !important;right:-14px !important}
/* aktiver Punkt: dieselbe Breite in Ruhe, offen und im Hintergrund – wird beim Wegfahren nicht kleiner */
#all .neofire-mega-bar .neofire-mega-item .neofire-mega-link.mb_name.is-current::before{left:-14px !important;right:-14px !important}
/* v2 (02.10.): jede Karte der Leiste gleich breit (14px) – is-karte, is-inpath und die Ersatzregel vor dem Skript hatten 12px;
   beim Klick auf den aktuellen Punkt nimmt das Skript is-current kurz weg -> Karte sprang 14/12/14 (Nutzer: „wird breiter, dünner“). */
#all .neofire-mega-bar .neofire-mega-item > a.neofire-mega-link.mb_name::before{left:-14px !important;right:-14px !important}
/* v3 (02.10.): Karte weiss genau dann, wenn das Menue offen ist: is-open oder per Tastatur (:focus-visible) - die beiden Wege,
   auf denen das Menue am Desktop aufgeht. Mausklick schliesst und nimmt den Fokus (Skript NEOFIRE-MEGA-KLICK-ZU), dann grau.
   (Nutzer: „weiss, obwohl noch nicht aufgeklappt“ / „Menue bleibt offen und Button grau“). */
#all .neofire-mega[data-flow="overlay"] .neofire-mega-bar .neofire-mega-item:has(:focus-visible):has(> .neofire-mega-panel) > a.neofire-mega-link.mb_name.mb_name.mb_name::before{background:#fff !important;background-image:none !important;box-shadow:none !important}
/* v4 (02.10.): Fokus oeffnet das Menue nur noch per Tastatur (:focus-visible). Beim Mausklick setzt Chrome den Fokus schon beim
   Herunterdruecken -> :focus-within fuhr das Menue aus, der Klick schloss es wieder (Nutzer: „will ausfahren und schliesst wieder“). */
#all .neofire-mega .neofire-mega-bar .neofire-mega-item:focus-within:not(.is-open):not(:has(:focus-visible)) > .neofire-mega-panel{opacity:0 !important;visibility:hidden !important;pointer-events:none !important;clip-path:inset(0 0 100% 0) !important;transition:none !important}
@media (min-width:1024px){#all:not(.darkmode) [data-lay-col="cmsqj3hwn3"]:has(.neofire-mega-bar){border-bottom-color:#eeefec !important}}
/* ==== ENDE NEOFIRE-MEGA-STANDARD ==== */
/* NEOFIRE-SCROLLBAR-STABIL: Platz der Bildlaufleiste immer reservieren - sonst rueckt die zentrierte Seite (Titel, Kurztext,
   Artikel) seitlich hin und her, sobald die Leiste beim Laden, beim Seitenwechsel oder beim Sperren (Menue, Warenkorb)
   kommt oder geht. Nur bei klassischen Bildlaufleisten sichtbar (Windows, Mac mit Maus). */
html{scrollbar-gutter:stable}

/* NEOFIRE-KOPF-PLATZHALTER-AUTO: Im Modus "Kopf scrollt mit" (data-fixed="0") steht #header im Fluss innerhalb von
   #headercontent - der Platzhalter muss so hoch sein wie der Kopf. Die Vorgabe height:80px liess Titel, Kurztext und
   Artikel zuerst unter dem Kopf verschwinden, bis das Skript die echte Hoehe (z. B. 197px) setzte und alles nach unten
   sprang. Setzt das Skript spaeter seine Pixelhoehe (Inline-Stil), ist es derselbe Wert. */
#core[data-fixed="0"] #headercontent{height:auto}

/* NEOFIRE-FILTER-RASTER-SOFORT: Die Filter-Dropdowns standen zuerst 220px breit (flex) und sprangen, sobald das Filter-Skript
   (mirrorGrid, Klasse is-grid) die Spalten des Produktrasters uebernahm, auf Kartenbreite. Gleiche Spalten wie #all .grid
   (4/3/2/1) und derselbe Spaltenabstand gleich per CSS - das Skript setzt spaeter nur dieselben Werte. */
#all #content .neofire-filter--dropdown{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:14px;row-gap:12px;align-items:start}
#all #content .neofire-filter--dropdown .neofire-filter-dd{min-width:0;max-width:none;width:100%;flex:none}
@media (max-width:1200px){#all #content .neofire-filter--dropdown{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:800px){#all #content .neofire-filter--dropdown{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){#all #content .neofire-filter--dropdown{grid-template-columns:minmax(0,1fr)}}

/* NEOFIRE-KARTEN-OHNE-HOCHGLEITEN: Die Produktkarten glitten beim Erscheinen 22px von unten hoch (neofireCardIn) - wirkte wie
   Zucken. Nur noch sanft einblenden, ohne Bewegung (Dauer und Staffelung bleiben). */
@keyframes neofireCardFade{from{opacity:0}to{opacity:1}}
#all .grid > .card{animation-name:neofireCardFade}

/* NEOFIRE-MENUE-OHNE-ZUCKEN: Vor dem Menue-Skript (trackState) standen die Pfeile hell und innen, danach am Fensterrand und
   gedimmt; die aktive Registerkarte bekam erst mit is-karte ihren Ueberstand und wuchs nach links. Jetzt: Pfeile erst sichtbar,
   wenn das Skript sie platziert hat (Inline-Stil); solange noch keine is-karte gesetzt ist, sieht die aktuelle Seite (is-current)
   genau wie is-karte aus (Regeln 1:1 aus den is-karte-Regeln abgeleitet). */
#all .neofire-mega-arrow:not([style]){visibility:hidden}
#all .neofire-mega-bar:not(:has(.is-karte)) .neofire-mega-item:has(> a.is-current, > a.is-inpath) > a.neofire-mega-link.mb_name,
#all .neofire-mega-bar:not(:has(.is-karte)) .neofire-mega-item:has(> a.is-current, > a.is-inpath) > a.neofire-mega-link.mb_name:hover,
#all .neofire-mega-bar:not(:has(.is-karte)) .neofire-mega-item:has(> a.is-current, > a.is-inpath) > a.neofire-mega-link.mb_name.is-current{color: #2F2E33 !important;}
#all .neofire-mega-bar:not(:has(.is-karte)) .neofire-mega-item:has(> a.is-current, > a.is-inpath) > a.neofire-mega-link.mb_name.mb_name.mb_name.mb_name,
#all .neofire-mega-bar:not(:has(.is-karte)) .neofire-mega-item:has(> a.is-current, > a.is-inpath) > a.neofire-mega-link.mb_name.mb_name.mb_name.mb_name:hover{color: #2F2E33 !important; transition: none !important;}
#all .neofire-mega-bar:not(:has(.is-karte)) .neofire-mega-item:has(> a.is-current, > a.is-inpath) > a.neofire-mega-link.mb_name,
#all .neofire-mega-bar:not(:has(.is-karte)) .neofire-mega-item:has(> a.is-current, > a.is-inpath) > a.neofire-mega-link.mb_name:hover,
#all .neofire-mega-bar:not(:has(.is-karte)) .neofire-mega-item:has(> a.is-current, > a.is-inpath) > a.neofire-mega-link.mb_name.is-current{color:#2F2E33 !important}
#all .neofire-mega-bar:not(:has(.is-karte)) .neofire-mega-item:has(> a.is-current, > a.is-inpath) > a.neofire-mega-link.mb_name.mb_name.mb_name.mb_name,
#all .neofire-mega-bar:not(:has(.is-karte)) .neofire-mega-item:has(> a.is-current, > a.is-inpath) > a.neofire-mega-link.mb_name.mb_name.mb_name.mb_name:hover{color:#2F2E33 !important;transition:none !important}
#all .neofire-mega-bar:not(:has(.is-karte)) .neofire-mega-item:has(> a.is-current, > a.is-inpath) > a.neofire-mega-link.mb_name::before{content:"" !important;position:absolute;left:-12px;right:-12px;top:0;bottom:0;background:linear-gradient(180deg,#FFFFFF 0%,#EEEFEC 100%);border-radius:10px 10px 0 0;z-index:-1;display:block !important}

/* NEOFIRE-MEGA-LEER-OHNE-STREIFEN: Ohne Mega-Menue (keine Punkte fuer den Shop -> Spalte entfaellt) auch den grauen
   Streifen darunter weglassen - sonst bleibt eine Linie stehen. */
#all #header:not(:has(.neofire-mega-bar)) .neofire-lay-row:has(> .neofire-sv-graustreifen){display:none}

/* NEOFIRE-RECHTSTEXT-LIGHTBOX: AGB/Datenschutz an der Kasse - Titel und X stehen fest, nur der Text scrollt (vorher
   scrollte das X mit weg); eingebettete Seiten-Container der Rechtstexte (.container-max/.row/.col-*, bis 1230px breit)
   passen sich der Lightbox an statt seitlich zu scrollen. */
#legal-modal .neofire-u31{display:flex;flex-direction:column;overflow:hidden}
#legal-modal #legal-modal-title{flex:0 0 auto;padding-right:40px}
#legal-modal #legal-modal-body{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;overflow-wrap:anywhere}
#legal-modal #legal-modal-body .container-max,#legal-modal #legal-modal-body .container,#legal-modal #legal-modal-body .row,#legal-modal #legal-modal-body [class*="col-"]{width:auto !important;max-width:100% !important;min-width:0 !important;margin-left:0 !important;margin-right:0 !important;padding-left:0 !important;padding-right:0 !important;flex:0 0 100% !important}
#legal-modal #legal-modal-body img,#legal-modal #legal-modal-body table{max-width:100% !important;height:auto}

/* NEOFIRE-VIEWPORT-GUARD: Barrierefreiheit - Zoomen erlaubt, iOS-Felder 16px, Fokusrahmen (vorher inline in jeder Seite, 01.10.2026) */
/* Zoomen erlaubt; manipulation verhindert nur den Doppeltipp-Zoom (keine Tipp-Verzoegerung), Pinch-Zoom geht. */
html,
body {
    touch-action: manipulation;
}

/* iOS zoomt beim Antippen in Eingabefelder unter 16px Schrift hinein (vorher durch maximum-scale=1 verhindert). */
@supports (-webkit-touch-callout: none) {
    input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
    select,
    textarea {
        font-size: max(16px, 1em);
    }
}

#neofire-account-btn:focus-visible,
#open-cart:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 3px;
}

/* NEOFIRE-COOKIE-ELEMENT: Cookie-Hinweis-Element (Details-Liste mit Diensten, Symbole 36px) auch im Shop gestaltet - die Regeln standen nur in der Einbau-CSS von core.js, im Shop kam das Symbol riesig (01.10.2026) */
.neofire-cookie-embed .neofire-cookie-more{background:none;border:0;padding:0;margin:8px 0 0 0;font:inherit;font-weight:600;color:inherit;text-decoration:underline;cursor:pointer;display:block;text-align:left}
.neofire-cookie-embed .neofire-cookie-services{display:none;margin:12px 0 4px 0;padding:2px 0;border-top:1px solid rgba(128,128,128,.3);border-bottom:1px solid rgba(128,128,128,.3);max-height:46vh;overflow:auto}
.neofire-cookie-embed .neofire-cookie-services.is-open{display:block}
.neofire-cookie-embed .neofire-cookie-row{display:flex;align-items:center;gap:12px;padding:10px 0;text-align:left}
.neofire-cookie-embed .neofire-cookie-row + .neofire-cookie-row{border-top:1px solid rgba(128,128,128,.18)}
.neofire-cookie-embed .neofire-cookie-icon{flex:0 0 auto;width:36px;height:36px;box-sizing:border-box;border:1px solid rgba(128,128,128,.35);border-radius:9px;object-fit:contain;background:#fff}
.neofire-cookie-embed .neofire-cookie-body{flex:1 1 auto;min-width:0}
.neofire-cookie-embed .neofire-cookie-name{display:block;font-weight:600;line-height:1.3}
.neofire-cookie-embed .neofire-cookie-text{display:block;opacity:.75;font-size:.92em;line-height:1.45}
.neofire-cookie-embed .neofire-cookie-switch{flex:0 0 auto;position:relative;display:inline-block;width:36px;height:20px;margin:0;cursor:pointer}
.neofire-cookie-embed .neofire-cookie-switch input{position:absolute;opacity:0;width:0;height:0;margin:0}
.neofire-cookie-embed .neofire-cookie-slider{position:absolute;left:0;top:0;width:36px;height:20px;border-radius:999px;background:#e5e7eb;transition:.25s}
.neofire-cookie-embed .neofire-cookie-slider::before{content:"";position:absolute;left:2px;top:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 2px 5px rgba(0,0,0,.2);transition:.25s}
.neofire-cookie-embed .neofire-cookie-switch input:checked + .neofire-cookie-slider{background:#22c55e}
.neofire-cookie-embed .neofire-cookie-switch input:checked + .neofire-cookie-slider::before{transform:translateX(16px)}
.neofire-cookie-embed .neofire-cookie-switch input:disabled + .neofire-cookie-slider{opacity:.55;cursor:default}
.neofire-cookie-embed .neofire-cookie-privacy{display:block;margin:8px 0 2px;font-size:.92em}
.neofire-cookie-embed .neofire-cookie-save{display:none}.neofire-cookie-embed .neofire-cookie-services.is-open ~ .neofire-u8 .neofire-cookie-save{display:inline-block}
