/*
 * ATS JTL Template v0.2.6
 * CSS-only polish on top of NOVA clear.
 * Core palette:
 * #6693c1 Hauptblau, #a4c2e3 Hellblau, #f2f8ff sehr heller Hintergrund
 */
:root {
    --ats-primary: #6693c1;
    --ats-primary-dark: #4f7faa;
    --ats-secondary: #a4c2e3;
    --ats-bg-soft: #f2f8ff;
    --ats-text: #2f4255;
    --ats-muted: #6f8397;
    --ats-border: rgba(102, 147, 193, 0.24);
    --ats-card: #ffffff;
    --ats-checkout: #117e61;
    --ats-radius: 0.5rem;
    --ats-shadow: 0 0.25rem 1rem rgba(39, 63, 87, 0.08);
}

html,
body {
    background: var(--ats-bg-soft);
    color: var(--ats-text);
}

body {
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

main,
#content-wrapper,
#content {
    background: transparent;
}

.container,
.container-fluid-xl,
#content .container {
    max-width: 1320px;
}

/* Links and buttons */
a,
.btn-link {
    color: var(--ats-primary-dark);
}

a:hover,
.btn-link:hover {
    color: var(--ats-primary);
}

.btn,
button,
.form-control,
.custom-select,
.input-group-text {
    border-radius: 0.35rem;
}

.btn-primary,
button.btn-primary,
input.btn-primary,
.productbox .btn-primary {
    background-color: var(--ats-primary);
    border-color: var(--ats-primary);
    color: #fff;
}

.btn-primary:hover,
button.btn-primary:hover,
input.btn-primary:hover,
.productbox .btn-primary:hover {
    background-color: var(--ats-primary-dark);
    border-color: var(--ats-primary-dark);
    color: #fff;
}

.btn-success,
.checkout-button,
#checkout-shipping-payment .btn-success,
.cart-dropdown-buttons .btn-success {
    background-color: var(--ats-checkout);
    border-color: var(--ats-checkout);
    color: #fff;
}

/* Header: keep NOVA mechanics, only polish colors and spacing. */
#header-top-bar,
.header-top-bar {
    background-color: #ffffff;
    border-bottom: 1px solid var(--ats-border);
    color: var(--ats-primary-dark);
}

#header-top-bar a,
.header-top-bar a {
    color: var(--ats-primary-dark);
}

#header-middle,
.header-main,
header .header-main,
#shop-nav,
.header-shop-nav {
    background-color: var(--ats-secondary);
    border-bottom: 1px solid rgba(255, 255, 255, 0.35);
}

#header-middle .container,
.header-main .container,
#shop-nav .container {
    min-height: 72px;
}

#logo,
#logo a,
.navbar-brand {
    display: flex;
    align-items: center;
}

#logo img,
.navbar-brand img,
.header-logo img {
    max-height: 54px;
    width: auto;
}

#search,
.search-wrapper,
#search form,
.header-search-wrapper {
    max-width: 520px;
}

#search .form-control,
.header-search-wrapper .form-control,
.search-wrapper .form-control {
    border-color: transparent;
    background-color: rgba(102, 147, 193, 0.88);
    color: #fff;
    min-height: 42px;
}

#search .form-control::placeholder,
.header-search-wrapper .form-control::placeholder,
.search-wrapper .form-control::placeholder {
    color: rgba(255, 255, 255, 0.9);
}

#search .btn,
.header-search-wrapper .btn,
.search-wrapper .btn {
    min-height: 42px;
}

#mainNavigation,
.main-navigation,
.navbar,
.navbar-nav,
#navbarResponsive {
    background-color: var(--ats-primary);
}

#mainNavigation .nav-link,
.main-navigation .nav-link,
.navbar .nav-link,
.navbar-nav .nav-link {
    color: #ffffff;
    font-weight: 700;
    letter-spacing: 0.01em;
}

#mainNavigation .nav-link:hover,
.main-navigation .nav-link:hover,
.navbar .nav-link:hover,
.navbar-nav .nav-link:hover,
#mainNavigation .show > .nav-link,
.navbar-nav .show > .nav-link {
    background-color: rgba(255, 255, 255, 0.12);
    color: #ffffff;
}

.dropdown-menu,
.megamenu,
.megamenu-wrapper {
    border: 0;
    border-radius: 0 0 var(--ats-radius) var(--ats-radius);
    box-shadow: var(--ats-shadow);
}

/* Cards / product lists */
.card,
.productbox,
.box,
.panel,
.opc-Portlet,
.opc-portlet,
.newsbox,
.blog-item {
    border-radius: var(--ats-radius);
}

.card,
.productbox,
.newsbox,
.blog-item {
    background: var(--ats-card);
    border: 1px solid var(--ats-border);
}

.productbox {
    overflow: hidden;
    transition: box-shadow 0.18s ease, transform 0.18s ease;
}

.productbox:hover {
    box-shadow: var(--ats-shadow);
    transform: translateY(-1px);
}

.productbox-title,
.productbox-title a,
.productbox .title,
.productbox .title a {
    color: var(--ats-primary-dark);
    font-weight: 700;
}

.price,
.productbox-price,
.productbox .price_wrapper,
.price_wrapper {
    color: var(--ats-primary-dark);
    font-weight: 700;
}

.badge-primary,
.badge-success,
.ribbon,
.ribbon-1,
.productbox-ribbon {
    border-radius: 0;
}

.badge-primary,
.ribbon-primary {
    background-color: var(--ats-primary);
}

/* Content and OPC-like sections */
.opc-Container,
.opc-container,
.cms-page,
#content > .container {
    color: var(--ats-text);
}

.opc-TextImage,
.opc-ProductStream,
.opc-ContentBoxes,
.opc-Accordion,
.opc-Portlet {
    margin-top: 2rem;
    margin-bottom: 2rem;
}

.bg-primary,
.ats-section-blue {
    background-color: var(--ats-primary) !important;
    color: #ffffff;
}

.bg-secondary,
.ats-section-lightblue {
    background-color: var(--ats-secondary) !important;
}

h1, .h1,
h2, .h2,
h3, .h3 {
    color: var(--ats-primary-dark);
    font-weight: 700;
}

/* Product detail / cart */
.product-info,
.product-detail,
.cart-items,
.basket-items,
.checkout-shipping-form {
    background-color: transparent;
}

.alert-success {
    background-color: #dff3df;
    border-color: #c7eac7;
    color: #285d28;
}

/* Footer */
#footer,
footer.footer,
.footer {
    background-color: var(--ats-primary);
    color: #ffffff;
}

#footer a,
footer.footer a,
.footer a {
    color: #ffffff;
}

#footer .container,
footer.footer .container {
    padding-top: 2.25rem;
    padding-bottom: 2.25rem;
}

#copyright,
.copyright,
.footer-copyright {
    background-color: #2f4255;
    color: #ffffff;
}

#copyright a,
.copyright a,
.footer-copyright a {
    color: #ffffff;
}

/* Mobile: prevent overly tiny header; keep NOVA behaviour. */
@media (max-width: 767.98px) {
    #header-middle .container,
    .header-main .container,
    #shop-nav .container {
        min-height: 56px;
    }

    #logo img,
    .navbar-brand img,
    .header-logo img {
        max-height: 34px;
    }

    .productbox {
        margin-bottom: 1rem;
    }
}

/*
 * ATS JTL Template v0.3.1
 * Header/Footer/Menu Foundation.
 * Ziel: deutlich weniger NOVA-Look, bessere ATS-Aquashop-Headerlogik,
 * vorbereitete Flaggen-Sprachauswahl und responsive Offcanvas-/Mega-Menü-Optik.
 */
:root {
    --ats-header-top-height: 38px;
    --ats-header-main-height: 112px;
    --ats-header-menu-height: 52px;
    --ats-container: 1320px;
}

body.ats-menu-open,
html.ats-menu-open {
    overflow-x: hidden;
}

/* ===== ATS Header Foundation ===== */
#jtl-nav-wrapper {
    background: var(--ats-secondary);
    box-shadow: 0 0.15rem 0.75rem rgba(29, 58, 88, 0.10);
    z-index: 1030;
}

#jtl-nav-wrapper::before,
#jtl-nav-wrapper::after,
#jtl-nav-wrapper .navbar::before,
#jtl-nav-wrapper .navbar::after {
    border: 0 !important;
    box-shadow: none !important;
}

#header-top-bar.topbar-wrapper {
    min-height: var(--ats-header-top-height);
    background: #ffffff;
    border-bottom: 1px solid rgba(102, 147, 193, .22);
    font-size: .875rem;
}

#header-top-bar .container,
#header-top-bar .container-fluid,
#header-top-bar .container-fluid-xl {
    max-width: var(--ats-container);
    min-height: var(--ats-header-top-height);
    align-items: center;
}

#header-top-bar .topbar-note {
    margin-right: auto;
}

#header-top-bar .topbar-note .nav-link,
#header-top-bar .topbar-note .nav-item,
#header-top-bar .topbar-main .nav-link {
    color: var(--ats-primary-dark);
    font-weight: 700;
}

#header-top-bar .topbar-note .nav-link::before,
#header-top-bar #topbarNote::before {
    content: "\f0e0";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-right: .35rem;
}

#header-top-bar .topbar-main {
    margin-left: auto;
    gap: 1.15rem;
}

#header-top-bar .topbar-main .nav-link {
    padding: .25rem 0;
    border: 0;
}

#header-top-bar .topbar-main .dropdown-menu {
    border-radius: .35rem;
}

#jtl-nav-wrapper .hide-navbar {
    background: var(--ats-secondary);
    min-height: var(--ats-header-main-height);
    display: flex;
    align-items: center;
}

#jtl-nav-wrapper .hide-navbar > .navbar,
#jtl-nav-wrapper .hide-navbar > nav.navbar {
    width: 100%;
    max-width: var(--ats-container);
    margin: 0 auto;
    background: transparent !important;
    min-height: var(--ats-header-main-height);
    padding-top: .75rem;
    padding-bottom: .75rem;
}

#jtl-nav-wrapper .nav-logo-wrapper {
    min-width: 260px;
}

#jtl-nav-wrapper .navbar-brand {
    padding: 0;
    margin: 0;
}

#jtl-nav-wrapper .navbar-brand img,
#jtl-nav-wrapper #logo img,
#jtl-nav-wrapper .header-logo img {
    max-height: 58px;
    filter: drop-shadow(0 2px 4px rgba(43, 78, 112, 0.22));
}

#jtl-nav-wrapper .main-search-wrapper {
    flex: 1 1 520px;
    max-width: 560px;
    margin: 0 auto;
}

#jtl-nav-wrapper #search,
#jtl-nav-wrapper #search .search-wrapper,
#jtl-nav-wrapper #search form,
#jtl-nav-wrapper .main-search-wrapper .search-wrapper,
#jtl-nav-wrapper .main-search-wrapper form {
    width: 100%;
}

#jtl-nav-wrapper #search .input-group,
#jtl-nav-wrapper .main-search-wrapper .input-group {
    border-radius: 999px;
    overflow: hidden;
    background: rgba(102,147,193,.98);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
}

#jtl-nav-wrapper #search .form-control,
#jtl-nav-wrapper .main-search-wrapper .form-control {
    height: 48px;
    border: 0 !important;
    background: transparent !important;
    color: #fff;
    padding-left: 1.4rem;
    box-shadow: none !important;
}

#jtl-nav-wrapper #search .form-control::placeholder,
#jtl-nav-wrapper .main-search-wrapper .form-control::placeholder {
    color: rgba(255,255,255,.94);
    font-weight: 600;
}

#jtl-nav-wrapper #search .btn,
#jtl-nav-wrapper .main-search-wrapper .btn {
    height: 48px;
    width: 56px;
    border: 0 !important;
    background: transparent !important;
    color: #fff !important;
    box-shadow: none !important;
    font-size: 1.1rem;
}

#jtl-nav-wrapper .nav-icons-wrapper,
#jtl-nav-wrapper .nav-icons {
    min-width: 260px;
    justify-content: flex-end;
    align-items: center;
    gap: .45rem;
}

#jtl-nav-wrapper .nav-icons .nav-link,
#jtl-nav-wrapper .nav-icons .cart-icon-dropdown,
#jtl-nav-wrapper .nav-icons .btn,
#jtl-nav-wrapper .nav-icons .dropdown-toggle {
    color: #ffffff !important;
    font-weight: 800;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

#jtl-nav-wrapper .nav-icons i,
#jtl-nav-wrapper .nav-icons .fas,
#jtl-nav-wrapper .nav-icons .far {
    color: #ffffff;
    font-size: 1.35rem;
}

#jtl-nav-wrapper .nav-icons .badge,
#jtl-nav-wrapper .cart-icon-dropdown .badge {
    background: var(--ats-primary) !important;
    color: #fff !important;
}

/* Flag-based language selector preparation. */
#jtl-nav-wrapper .language-dropdown.ats-language-selector > .nav-link,
#jtl-nav-wrapper .language-dropdown.ats-language-selector > .dropdown-toggle {
    display: inline-flex;
    align-items: center;
    gap: .25rem;
    min-width: 54px;
    justify-content: center;
}

#jtl-nav-wrapper .language-dropdown.ats-language-selector > .nav-link::before,
#jtl-nav-wrapper .language-dropdown.ats-language-selector > .dropdown-toggle::before {
    content: "🇩🇪";
    font-size: 1.05rem;
    line-height: 1;
}

#jtl-nav-wrapper .language-dropdown .dropdown-menu .link-lang[data-iso*="en"]::before,
#jtl-nav-wrapper .language-dropdown .dropdown-menu .link-lang[href*="/en"]::before {
    content: "🇬🇧";
    margin-right: .45rem;
}

#jtl-nav-wrapper .language-dropdown .dropdown-menu .link-lang[data-iso*="de"]::before,
#jtl-nav-wrapper .language-dropdown .dropdown-menu .link-lang[href*="/de"]::before {
    content: "🇩🇪";
    margin-right: .45rem;
}

/* Category/menu bar */
#jtl-nav-wrapper .menu-center-center,
#jtl-nav-wrapper .menu-multiple-rows-scroll,
#jtl-nav-wrapper .menu-multiple-rows-multiple,
#jtl-nav-wrapper .menu-center-left,
#jtl-nav-wrapper .menu-center-space-between {
    background: var(--ats-primary);
    border-top: 1px solid rgba(255,255,255,.38);
    min-height: var(--ats-header-menu-height);
}

#jtl-nav-wrapper .menu-center-center > .navbar,
#jtl-nav-wrapper .menu-multiple-rows-scroll > .navbar,
#jtl-nav-wrapper .menu-multiple-rows-multiple > .navbar,
#jtl-nav-wrapper .menu-center-left > .navbar,
#jtl-nav-wrapper .menu-center-space-between > .navbar {
    max-width: var(--ats-container);
    margin: 0 auto;
    min-height: var(--ats-header-menu-height);
    padding: 0;
    background: transparent !important;
}

#mainNavigation {
    background: transparent !important;
}

#mainNavigation .nav-scrollbar-inner {
    min-height: var(--ats-header-menu-height);
    align-items: stretch;
    justify-content: center;
    gap: 0;
}

#mainNavigation .nav-scrollbar-item > .nav-link,
#mainNavigation .nav-item > .nav-link {
    color: #ffffff !important;
    font-weight: 800;
    padding: 1.05rem 1.85rem;
    min-height: var(--ats-header-menu-height);
    display: flex;
    align-items: center;
    border: 0 !important;
    text-shadow: 0 1px 1px rgba(0,0,0,.08);
}

#mainNavigation .nav-scrollbar-item > .nav-link:hover,
#mainNavigation .nav-item.show > .nav-link,
#mainNavigation .nav-item.active > .nav-link {
    background: rgba(255,255,255,.10) !important;
    color: #fff !important;
}

#mainNavigation .dropdown-toggle::after {
    margin-left: .45rem;
    opacity: .85;
}

#mainNavigation .dropdown-full .dropdown-menu,
#mainNavigation .dropdown-menu {
    background: var(--ats-secondary);
    border: 0;
    border-radius: 0 0 .35rem .35rem;
    box-shadow: 0 0.55rem 1.05rem rgba(45,77,109,.20);
    color: #fff;
}

#mainNavigation .dropdown-full .dropdown-body {
    max-width: var(--ats-container);
    margin: 0 auto;
    padding: 1rem 1rem 1.6rem;
}

#mainNavigation .subcategory-wrapper {
    max-width: var(--ats-container);
}

#mainNavigation .submenu-headline,
#mainNavigation .submenu-headline-toplevel,
#mainNavigation .dropdown-menu .nav-link,
#mainNavigation .dropdown-menu a {
    color: #ffffff !important;
    font-weight: 800;
    line-height: 1.35;
}

#mainNavigation .submenu-headline-image,
#mainNavigation .dropdown-menu img {
    border-radius: 0;
    box-shadow: 0 1px 3px rgba(36,67,97,.18);
}

#mainNavigation .dropdown-menu .nav-item-lg-m {
    margin-bottom: 1.35rem;
}

/* Mobile/tablet header and offcanvas. */
@media (max-width: 991.98px) {
    :root {
        --ats-header-top-height: 40px;
        --ats-header-main-height: 54px;
    }

    #header-top-bar.topbar-wrapper {
        display: flex !important;
        min-height: var(--ats-header-top-height);
    }

    #header-top-bar .container,
    #header-top-bar .container-fluid,
    #header-top-bar .container-fluid-xl {
        padding-left: .75rem;
        padding-right: .75rem;
        font-size: .8rem;
    }

    #header-top-bar .topbar-main {
        gap: .7rem;
        flex-wrap: wrap;
        justify-content: flex-end;
    }

    #header-top-bar .topbar-main .nav-link {
        font-size: .78rem;
        white-space: nowrap;
    }

    #jtl-nav-wrapper .hide-navbar {
        min-height: var(--ats-header-main-height);
    }

    #jtl-nav-wrapper .hide-navbar > .navbar,
    #jtl-nav-wrapper .hide-navbar > nav.navbar {
        min-height: var(--ats-header-main-height);
        padding: 0 .45rem;
        display: grid;
        grid-template-columns: auto 1fr auto;
        gap: .4rem;
        align-items: center;
    }

    #jtl-nav-wrapper .navbar-toggler {
        color: #ffffff !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        width: 44px;
        height: 44px;
    }

    #jtl-nav-wrapper .nav-logo-wrapper {
        min-width: 0;
        justify-content: center;
        text-align: center;
    }

    #jtl-nav-wrapper .navbar-brand img,
    #jtl-nav-wrapper #logo img,
    #jtl-nav-wrapper .header-logo img {
        max-height: 33px;
    }

    #jtl-nav-wrapper .main-search-wrapper {
        display: none !important;
    }

    #jtl-nav-wrapper .nav-icons-wrapper,
    #jtl-nav-wrapper .nav-icons {
        min-width: 0;
        gap: .15rem;
    }

    #jtl-nav-wrapper .language-dropdown.ats-language-selector {
        display: none !important;
    }

    .search-form-wrapper-fixed,
    .fixed-search {
        background: var(--ats-secondary) !important;
        padding: .55rem .8rem .8rem;
        box-shadow: 0 .35rem .8rem rgba(45,77,109,.12);
    }

    .search-form-wrapper-fixed .input-group,
    .fixed-search .input-group {
        background: var(--ats-primary);
        border-radius: 999px;
        overflow: hidden;
    }

    .search-form-wrapper-fixed input,
    .fixed-search input,
    .search-form-wrapper-fixed .form-control,
    .fixed-search .form-control {
        height: 46px;
        background: transparent !important;
        border: 0 !important;
        color: #fff;
        box-shadow: none !important;
    }

    .search-form-wrapper-fixed .form-control::placeholder,
    .fixed-search .form-control::placeholder {
        color: rgba(255,255,255,.95);
    }

    .search-form-wrapper-fixed .btn,
    .fixed-search .btn {
        background: transparent !important;
        border: 0 !important;
        color: #fff !important;
        width: 54px;
    }

    #mainNavigation.collapse,
    #mainNavigation.collapsing,
    #mainNavigation.show {
        position: fixed;
        top: 0;
        left: 0;
        bottom: 0;
        width: min(86vw, 620px);
        height: 100vh;
        z-index: 1080;
        overflow-y: auto;
        overflow-x: hidden;
        background: #ffffff !important;
        box-shadow: 1rem 0 2rem rgba(0,0,0,.24);
    }

    #mainNavigation:not(.show):not(.collapsing) {
        display: none !important;
    }

    #mainNavigation .nav-mobile-header {
        background: var(--ats-primary);
        color: #fff;
        min-height: 58px;
        padding: .4rem .85rem;
        display: block !important;
    }

    #mainNavigation .nav-mobile-header .navbar-toggler,
    #mainNavigation .nav-mobile-header .nav-offcanvas-title,
    #mainNavigation .nav-mobile-header a {
        color: #ffffff !important;
        font-weight: 800;
    }

    #mainNavigation .nav-mobile-header .navbar-toggler-icon,
    #jtl-nav-wrapper .navbar-toggler-icon {
        filter: brightness(0) invert(1);
    }

    #mainNavigation .nav-mobile-header-hr {
        display: none;
    }

    #mainNavigation .nav-mobile-body {
        padding: 1.3rem 1.4rem 2.5rem;
        background: #ffffff;
        color: var(--ats-text);
        min-height: calc(100vh - 58px);
    }

    #mainNavigation .nav-scrollbar-inner {
        display: block !important;
        min-height: auto;
    }

    #mainNavigation .nav-scrollbar-item,
    #mainNavigation .nav-item {
        display: block;
        width: 100%;
        margin: 0 0 .65rem;
    }

    #mainNavigation .nav-scrollbar-item > .nav-link,
    #mainNavigation .nav-item > .nav-link {
        color: var(--ats-text) !important;
        min-height: 42px;
        padding: .75rem 0;
        font-size: 1rem;
        text-shadow: none;
        background: transparent !important;
    }

    #mainNavigation .dropdown-menu {
        position: static !important;
        width: 100% !important;
        transform: none !important;
        box-shadow: none;
        border-radius: 0;
        background: #ffffff !important;
        color: var(--ats-text);
        padding: 0;
        margin: 0;
    }

    #mainNavigation .dropdown-full .dropdown-body {
        max-width: none;
        padding: .75rem 0 1.5rem;
    }

    #mainNavigation .dropdown-menu .container,
    #mainNavigation .dropdown-menu .container-fluid,
    #mainNavigation .dropdown-menu .row {
        margin-left: 0;
        margin-right: 0;
        padding-left: 0;
        padding-right: 0;
    }

    #mainNavigation .dropdown-menu .nav-item-lg-m {
        width: 100%;
        max-width: 100%;
        flex: 0 0 100%;
        margin-bottom: 1.35rem;
        padding-left: 0;
        padding-right: 0;
    }

    #mainNavigation .dropdown-menu img,
    #mainNavigation .submenu-headline-image {
        width: 100%;
        max-width: 100%;
        height: auto;
        display: block;
        margin-bottom: .55rem;
    }

    #mainNavigation .dropdown-menu .nav-link,
    #mainNavigation .dropdown-menu a,
    #mainNavigation .submenu-headline,
    #mainNavigation .submenu-headline-toplevel {
        color: var(--ats-primary-dark) !important;
        font-weight: 800;
    }
}

@media (max-width: 575.98px) {
    #mainNavigation.collapse,
    #mainNavigation.collapsing,
    #mainNavigation.show {
        width: min(88vw, 420px);
    }

    #header-top-bar .topbar-main .nav-link {
        font-size: .74rem;
    }

    #header-top-bar .topbar-note {
        max-width: 120px;
        overflow-wrap: anywhere;
        line-height: 1.15;
    }

    #jtl-nav-wrapper .navbar-brand img,
    #jtl-nav-wrapper #logo img,
    #jtl-nav-wrapper .header-logo img {
        max-height: 28px;
    }
}

/* ===== Footer Foundation ===== */
#footer,
footer.footer,
.footer {
    background: linear-gradient(180deg, var(--ats-primary) 0%, #5f8fbd 100%);
    color: #ffffff;
    border-top: 1px solid rgba(255,255,255,.22);
}

#footer .container,
footer.footer .container,
#footer .container-fluid,
footer.footer .container-fluid {
    max-width: var(--ats-container);
}

#footer .box-linkgroup,
#footer .box,
footer.footer .box,
#footer .card,
footer.footer .card {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

#footer h4,
#footer .box-normal-linkgroup h4,
#footer .box-title,
footer.footer h4,
footer.footer .box-title {
    color: #ffffff;
    font-weight: 900;
    font-size: 1rem;
    margin-bottom: 1rem;
}

#footer a,
footer.footer a {
    color: #ffffff !important;
    font-weight: 700;
}

#footer a:hover,
footer.footer a:hover {
    color: var(--ats-bg-soft) !important;
    text-decoration: underline;
}

#footer .btn,
footer.footer .btn {
    background: #ffffff;
    color: var(--ats-primary-dark) !important;
    border-color: #ffffff;
    box-shadow: 0 .2rem .7rem rgba(31,57,83,.16);
}

#footer .footnote-vat {
    background: rgba(242,248,255,.92);
    color: var(--ats-text);
    padding: .65rem 1rem;
    text-align: center;
    margin-top: 1.25rem;
}

#footer .footnote-vat a {
    color: var(--ats-primary-dark) !important;
}

#copyright,
.copyright,
.footer-copyright {
    background: #2f4255 !important;
    color: #ffffff;
    font-size: .82rem;
}

#copyright .container,
.copyright .container,
.footer-copyright .container {
    max-width: var(--ats-container);
}

/* Legal/content pages: marker-only foundation until a dedicated plugin/page-profile controls this. */
body.ats-legal-page #content,
body[class*="agb"] #content,
body[class*="datenschutz"] #content,
body[class*="impressum"] #content,
body[class*="widerruf"] #content {
    max-width: 980px;
    margin-left: auto;
    margin-right: auto;
    background: #ffffff;
    border: 1px solid var(--ats-border);
    border-radius: .45rem;
    padding: 2rem;
}

/*
 * ATS JTL Template v0.3.1
 * Structural Header Foundation: eigener ATS-Header statt reiner NOVA-Settings-Optik.
 */
#jtl-nav-wrapper.ats-header-wrapper {
    background: var(--ats-secondary) !important;
    box-shadow: 0 .2rem .9rem rgba(38, 69, 101, .10);
    border: 0 !important;
}

#jtl-nav-wrapper.ats-header-wrapper .ats-topbar {
    background: var(--ats-bg-soft) !important;
    color: var(--ats-primary-dark);
    min-height: 40px;
    border-bottom: 1px solid rgba(102, 147, 193, .20);
}

#jtl-nav-wrapper.ats-header-wrapper .ats-topbar-inner {
    max-width: var(--ats-container);
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

#jtl-nav-wrapper.ats-header-wrapper .ats-topbar-left,
#jtl-nav-wrapper.ats-header-wrapper .ats-topbar-right {
    display: flex;
    align-items: center;
    gap: 1.15rem;
}

#jtl-nav-wrapper.ats-header-wrapper .ats-topbar-email,
#jtl-nav-wrapper.ats-header-wrapper .ats-topbar-link {
    color: var(--ats-primary-dark) !important;
    font-weight: 700;
    font-size: .9rem;
    text-decoration: none;
}

#jtl-nav-wrapper.ats-header-wrapper .ats-topbar-email .fas {
    margin-right: .35rem;
}

#jtl-nav-wrapper.ats-header-wrapper .ats-header-main {
    background: var(--ats-secondary) !important;
    min-height: 112px;
    display: flex;
    align-items: center;
}

#jtl-nav-wrapper.ats-header-wrapper .ats-header-main-inner {
    max-width: var(--ats-container);
    display: grid;
    grid-template-columns: minmax(250px, 1fr) minmax(360px, 560px) minmax(260px, 1fr);
    align-items: center;
    gap: 2rem;
    min-height: 112px;
    padding-top: 1rem;
    padding-bottom: 1rem;
}

#jtl-nav-wrapper.ats-header-wrapper .ats-header-logo,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-logo .toggler-logo-wrapper,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-logo #logo {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

#jtl-nav-wrapper.ats-header-wrapper .ats-header-logo .navbar-toggler {
    display: none !important;
}

#jtl-nav-wrapper.ats-header-wrapper .ats-header-logo img,
#jtl-nav-wrapper.ats-header-wrapper .navbar-brand img,
#jtl-nav-wrapper.ats-header-wrapper #shop-logo {
    width: auto !important;
    max-width: 320px !important;
    max-height: 58px !important;
    height: auto !important;
    opacity: 1 !important;
    filter: drop-shadow(0 2px 4px rgba(43, 78, 112, .22));
}

#jtl-nav-wrapper.ats-header-wrapper .ats-header-search {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 560px;
    margin: 0 auto;
}

#jtl-nav-wrapper.ats-header-wrapper .ats-header-search #search,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-search .search-wrapper,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-search form,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-search .form-icon,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-search .input-group {
    width: 100%;
}

#jtl-nav-wrapper.ats-header-wrapper .ats-header-search .input-group,
#jtl-nav-wrapper.ats-header-wrapper .ats-mobile-search-row .input-group {
    background: var(--ats-primary) !important;
    border-radius: 999px;
    overflow: hidden;
    border: 0 !important;
}

#jtl-nav-wrapper.ats-header-wrapper .ats-header-search .form-control,
#jtl-nav-wrapper.ats-header-wrapper .ats-mobile-search-row .form-control,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-search .tt-hint {
    height: 50px;
    background: transparent !important;
    color: #fff !important;
    border: 0 !important;
    box-shadow: none !important;
    padding-left: 1.35rem;
}

#jtl-nav-wrapper.ats-header-wrapper .ats-header-search .form-control::placeholder,
#jtl-nav-wrapper.ats-header-wrapper .ats-mobile-search-row .form-control::placeholder {
    color: rgba(255,255,255,.95);
    font-weight: 600;
}

#jtl-nav-wrapper.ats-header-wrapper .ats-header-search .btn,
#jtl-nav-wrapper.ats-header-wrapper .ats-mobile-search-row .btn {
    width: 58px;
    height: 50px;
    color: #fff !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

#jtl-nav-wrapper.ats-header-wrapper .ats-header-icons,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-icons .nav-icons {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .55rem;
    min-width: 0;
}

#jtl-nav-wrapper.ats-header-wrapper .ats-header-icons .nav-link,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-icons .dropdown-toggle,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-icons .cart-icon-dropdown-price {
    color: #fff !important;
    font-weight: 800;
    text-decoration: none;
}

#jtl-nav-wrapper.ats-header-wrapper .ats-header-icons .fas,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-icons .far {
    color: #fff !important;
    font-size: 1.42rem;
}

#jtl-nav-wrapper.ats-header-wrapper .ats-header-icons .language-dropdown > .nav-link::before,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-icons .language-dropdown > .dropdown-toggle::before {
    content: "🇩🇪";
    margin-right: .25rem;
    font-size: 1rem;
}

#jtl-nav-wrapper.ats-header-wrapper .ats-header-icons .language-dropdown .dropdown-menu .link-lang[data-iso="eng"]::before,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-icons .language-dropdown .dropdown-menu .link-lang[hreflang="en"]::before {
    content: "🇬🇧";
    margin-right: .45rem;
}

#jtl-nav-wrapper.ats-header-wrapper .ats-header-icons .language-dropdown .dropdown-menu .link-lang[data-iso="ger"]::before,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-icons .language-dropdown .dropdown-menu .link-lang[hreflang="de"]::before {
    content: "🇩🇪";
    margin-right: .45rem;
}

#jtl-nav-wrapper.ats-header-wrapper .ats-header-menu {
    background: var(--ats-primary) !important;
    border-top: 1px solid rgba(255,255,255,.38);
    min-height: 56px;
}

#jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar {
    max-width: var(--ats-container);
    min-height: 56px;
    margin: 0 auto;
    padding: 0;
    background: transparent !important;
}

#jtl-nav-wrapper.ats-header-wrapper #mainNavigation {
    background: transparent !important;
}

#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-scrollbar-inner {
    min-height: 56px;
    justify-content: flex-start;
    align-items: stretch;
}

#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-item > .nav-link,
#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-scrollbar-item > .nav-link {
    color: #fff !important;
    min-height: 56px;
    padding: 1.05rem 2rem;
    font-weight: 800;
    display: flex;
    align-items: center;
}

#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .dropdown-full .dropdown-menu,
#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .dropdown-menu {
    background: var(--ats-secondary) !important;
    border: 0 !important;
    border-radius: 0 0 .45rem .45rem;
    color: #fff;
    box-shadow: 0 .65rem 1.25rem rgba(36, 69, 103, .22);
}

#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .dropdown-full .dropdown-body,
#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .submenu-wrapper,
#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .subcategory-wrapper {
    max-width: var(--ats-container);
    margin: 0 auto;
}

#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .dropdown-menu a,
#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .submenu-headline,
#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .submenu-headline-toplevel {
    color: #fff !important;
    font-weight: 800;
}

/* Mobile/tablet: ATS Offcanvas closer to target screenshots. */
@media (max-width: 991.98px) {
    #jtl-nav-wrapper.ats-header-wrapper .ats-topbar {
        min-height: 42px;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-topbar-inner {
        min-height: 42px;
        padding-left: .65rem;
        padding-right: .65rem;
        font-size: .78rem;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-topbar-right {
        gap: .75rem;
        flex-wrap: wrap;
        justify-content: flex-end;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-topbar-email,
    #jtl-nav-wrapper.ats-header-wrapper .ats-topbar-link {
        font-size: .78rem;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-topbar-email span:last-child {
        max-width: 125px;
        overflow-wrap: anywhere;
        line-height: 1.15;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-header-main {
        min-height: 58px;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-header-main-inner {
        min-height: 58px;
        grid-template-columns: auto 1fr auto;
        gap: .45rem;
        padding: 0 .55rem;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-header-mobile-left {
        display: flex !important;
        align-items: center;
        gap: .35rem;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-mobile-trigger,
    #jtl-nav-wrapper.ats-header-wrapper .ats-mobile-search-toggle {
        width: 42px;
        height: 42px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        border: 0 !important;
        background: transparent !important;
        color: #fff !important;
        font-size: 1.45rem;
        text-decoration: none;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-header-logo,
    #jtl-nav-wrapper.ats-header-wrapper .ats-header-logo .toggler-logo-wrapper,
    #jtl-nav-wrapper.ats-header-wrapper .ats-header-logo #logo {
        justify-content: center;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-header-logo img,
    #jtl-nav-wrapper.ats-header-wrapper #shop-logo {
        max-width: 260px !important;
        max-height: 36px !important;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-header-icons .nav-icons {
        gap: .05rem;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-header-icons .language-dropdown,
    #jtl-nav-wrapper.ats-header-wrapper .ats-header-icons #shop-nav-compare,
    #jtl-nav-wrapper.ats-header-wrapper .ats-header-icons #shop-nav-wish {
        display: none !important;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-header-icons .cart-icon-dropdown-price {
        display: none !important;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-header-menu {
        min-height: 0;
        border: 0;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-mobile-search-row {
        background: var(--ats-secondary) !important;
        padding: .45rem .7rem .7rem;
        align-items: center;
        gap: .55rem;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-mobile-search-row:not(.d-none) {
        display: flex !important;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-mobile-search-close {
        color: #fff !important;
        font-size: 1.45rem;
        text-decoration: none;
        width: 36px;
        display: inline-flex;
        justify-content: center;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-mobile-search-form {
        flex: 1;
    }
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation.collapse,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation.collapsing,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation.show {
        position: fixed;
        top: 0;
        left: 0;
        bottom: 0;
        width: min(86vw, 620px);
        height: 100vh;
        z-index: 1080;
        overflow-y: auto;
        overflow-x: hidden;
        background: #fff !important;
        box-shadow: 1rem 0 2rem rgba(0,0,0,.28);
    }
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation:not(.show):not(.collapsing) {
        display: none !important;
    }
    #jtl-nav-wrapper.ats-header-wrapper .nav-mobile-header {
        display: block !important;
        background: var(--ats-primary) !important;
        color: #fff;
        min-height: 62px;
        padding: 0;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-mobile-menu-head {
        min-height: 62px;
        padding: .45rem .85rem;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-mobile-menu-logo img {
        max-width: 230px;
        max-height: 42px;
        object-fit: contain;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-mobile-menu-close {
        color: #fff !important;
        font-size: 1.6rem;
        border: 0 !important;
        background: transparent !important;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-mobile-menu-back {
        background: var(--ats-primary);
        color: #fff !important;
        min-height: 52px;
        padding: .75rem 1rem;
        font-weight: 800;
        text-decoration: none;
    }
    #jtl-nav-wrapper.ats-header-wrapper .nav-mobile-body {
        background: #fff;
        color: var(--ats-text);
        min-height: calc(100vh - 62px);
        padding: 1.2rem 1.45rem 2rem;
    }
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-scrollbar-inner,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-item,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-scrollbar-item {
        display: block !important;
        width: 100%;
    }
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-item > .nav-link,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-scrollbar-item > .nav-link {
        color: var(--ats-text) !important;
        padding: .82rem 0;
        min-height: 46px;
        font-size: 1rem;
        text-shadow: none;
        background: transparent !important;
    }
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .dropdown-menu {
        position: static !important;
        transform: none !important;
        width: 100% !important;
        background: #fff !important;
        box-shadow: none;
        border-radius: 0;
        padding: 0;
        color: var(--ats-text);
    }
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .dropdown-menu .nav-item-lg-m,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .dropdown-menu .col {
        width: 100%;
        max-width: 100%;
        flex: 0 0 100%;
    }
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .dropdown-menu img,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .submenu-headline-image {
        width: 100%;
        height: auto;
        display: block;
        margin-bottom: .55rem;
    }
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .dropdown-menu a,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .submenu-headline,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .submenu-headline-toplevel {
        color: var(--ats-primary-dark) !important;
        font-weight: 800;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-mobile-menu-footer {
        margin-top: auto;
        padding-top: 2rem;
        display: flex;
        justify-content: space-around;
        align-items: center;
        gap: 1rem;
        color: var(--ats-primary-dark);
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-mobile-menu-footer a,
    #jtl-nav-wrapper.ats-header-wrapper .ats-mobile-menu-footer .nav-link {
        color: var(--ats-primary-dark) !important;
        font-size: 1.25rem;
        text-decoration: none;
    }
}

@media (max-width: 575.98px) {
    #jtl-nav-wrapper.ats-header-wrapper .ats-topbar-inner {
        align-items: flex-start;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-topbar-right {
        max-width: 255px;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-header-logo img,
    #jtl-nav-wrapper.ats-header-wrapper #shop-logo {
        max-width: 190px !important;
        max-height: 31px !important;
    }
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation.collapse,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation.collapsing,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation.show {
        width: min(92vw, 420px);
    }
}

/* Footer polish v0.3.1: keeps NOVA content, makes the area closer to ATS target. */
#footer {
    background: var(--ats-primary) !important;
    color: #fff !important;
    margin-top: 3rem;
}
#footer .container,
#footer .container-fluid-xl {
    max-width: var(--ats-container);
}
#footer #footer-boxes,
#footer .withdrawal-link-wrapper,
#footer .footer-social-media {
    justify-content: center;
}
#footer a { color: #fff !important; font-weight: 700; }
#footer .btn,
#footer .btn-outline-primary,
#footer .btn-secondary {
    background: #fff !important;
    border-color: #fff !important;
    color: var(--ats-primary-dark) !important;
    box-shadow: 0 .25rem .75rem rgba(42,70,97,.18);
}
#footer .footer-social-media .btn,
#footer .btn-icon-secondary {
    background: transparent !important;
    color: #fff !important;
    box-shadow: none;
    font-size: 1.45rem;
}
#copyright {
    background: #2f4255 !important;
    color: #fff !important;
    font-size: .85rem;
}


/* ATS JTL Template v0.3.2 - Header search/layout stabilization */
#jtl-nav-wrapper.ats-header-wrapper {
    background: var(--ats-secondary) !important;
    box-shadow: 0 .15rem .45rem rgba(42,70,97,.08);
}
#jtl-nav-wrapper.ats-header-wrapper .ats-topbar {
    min-height: 38px;
    background: #fff !important;
}
#jtl-nav-wrapper.ats-header-wrapper .ats-topbar-inner {
    max-width: 1440px;
    margin: 0 auto;
    min-height: 38px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}
#jtl-nav-wrapper.ats-header-wrapper .ats-header-main {
    background: var(--ats-secondary) !important;
}
#jtl-nav-wrapper.ats-header-wrapper .ats-header-main-inner {
    max-width: 1440px;
    margin: 0 auto;
    min-height: 118px;
    display: grid !important;
    grid-template-columns: minmax(270px, 360px) minmax(380px, 620px) minmax(230px, 330px);
    align-items: center;
    justify-content: center;
    column-gap: 3.2rem;
}
#jtl-nav-wrapper.ats-header-wrapper .ats-header-logo {
    display: flex !important;
    justify-content: flex-start;
    align-items: center;
}
#jtl-nav-wrapper.ats-header-wrapper .ats-header-logo img,
#jtl-nav-wrapper.ats-header-wrapper #shop-logo {
    max-width: 330px !important;
    max-height: 62px !important;
    object-fit: contain;
}
#jtl-nav-wrapper.ats-header-wrapper .ats-header-search {
    width: 100%;
    max-width: 620px;
    display: flex !important;
}
#jtl-nav-wrapper.ats-header-wrapper .ats-header-search .nav-item,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-search form,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-search .input-group,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-search .search-wrapper,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-search .form-group {
    width: 100%;
    max-width: 100%;
}
#jtl-nav-wrapper.ats-header-wrapper .ats-header-search input.form-control,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-search .form-control {
    min-height: 50px;
    border-radius: 999px 0 0 999px !important;
    border: 0 !important;
    background: rgba(102,147,193,.98) !important;
    color: #fff !important;
    font-weight: 700;
    padding-left: 1.35rem;
}
#jtl-nav-wrapper.ats-header-wrapper .ats-header-search .btn,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-search button {
    min-height: 50px;
    border-radius: 0 999px 999px 0 !important;
    border: 0 !important;
    background: rgba(102,147,193,.98) !important;
    color: #fff !important;
    font-size: 1.15rem;
    padding-left: 1.05rem;
    padding-right: 1.25rem;
}
#jtl-nav-wrapper.ats-header-wrapper .ats-header-icons {
    display: flex !important;
    justify-content: flex-end;
    align-items: center;
    min-width: 0;
}
#jtl-nav-wrapper.ats-header-wrapper .ats-header-icons .nav-icons {
    display: flex !important;
    align-items: center;
    justify-content: flex-end;
    gap: .65rem;
    width: 100%;
}
#jtl-nav-wrapper.ats-header-wrapper .ats-header-icons .nav-icons > li,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-icons .nav-icons > .nav-item {
    flex: 0 0 auto;
}
/* hard guard against duplicated NOVA search in nav icon slot */
#jtl-nav-wrapper.ats-header-wrapper .ats-header-icons .main-search-wrapper,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-icons .search-form-wrapper,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-icons [id*="search"]:not(.ats-language-selector) {
    max-width: 0 !important;
}
#jtl-nav-wrapper.ats-header-wrapper .ats-header-icons li:has(.search-wrapper),
#jtl-nav-wrapper.ats-header-wrapper .ats-header-icons li:has(form[action*="Suche"]),
#jtl-nav-wrapper.ats-header-wrapper .ats-header-icons li:has(input[name="qs"]) {
    display: none !important;
}
#jtl-nav-wrapper.ats-header-wrapper .ats-header-menu {
    background: var(--ats-primary) !important;
    min-height: 58px;
}
#jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar {
    max-width: 1440px;
    margin: 0 auto;
    min-height: 58px;
}
#jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar .nav-link {
    min-height: 58px;
    padding: 0 2.05rem !important;
    display: flex;
    align-items: center;
    color: #fff !important;
    font-weight: 800;
    text-shadow: none !important;
}
#jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar .nav-link:hover,
#jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar .show > .nav-link {
    background: rgba(79,127,170,.55) !important;
    color: #fff !important;
}
#jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar .dropdown-menu {
    background: var(--ats-secondary) !important;
    color: #fff !important;
    border: 0 !important;
    border-radius: 0 0 .3rem .3rem;
    box-shadow: 0 .35rem 1rem rgba(42,70,97,.2);
}
#jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar .dropdown-menu a,
#jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar .dropdown-menu .nav-link,
#jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar .dropdown-menu .submenu-headline,
#jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar .dropdown-menu .submenu-headline-toplevel {
    color: #fff !important;
    font-weight: 800;
}

@media (max-width: 991.98px) {
    #jtl-nav-wrapper.ats-header-wrapper .ats-header-main-inner {
        max-width: 100%;
        min-height: 56px;
        display: grid !important;
        grid-template-columns: auto 1fr auto;
        column-gap: .5rem;
        padding: 0 .6rem;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-header-logo {
        justify-content: center;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-header-logo img,
    #jtl-nav-wrapper.ats-header-wrapper #shop-logo {
        max-width: 245px !important;
        max-height: 36px !important;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-header-search {
        display: none !important;
    }
    #jtl-nav-wrapper.ats-header-wrapper .ats-header-icons .language-dropdown,
    #jtl-nav-wrapper.ats-header-wrapper .ats-header-icons #shop-nav-wish,
    #jtl-nav-wrapper.ats-header-wrapper .ats-header-icons #shop-nav-compare {
        display: none !important;
    }
}

@media (max-width: 575.98px) {
    #jtl-nav-wrapper.ats-header-wrapper .ats-header-logo img,
    #jtl-nav-wrapper.ats-header-wrapper #shop-logo {
        max-width: 170px !important;
        max-height: 30px !important;
    }
}


/*
 * ATS JTL Template v0.3.3
 * Menü-/Hover-Polish nach ATS-Aquashop-Vorlage:
 * - keine gelbe NOVA Active-Line
 * - keine dunklen Hover-/Backdrop-Flächen bei Desktop-Menüs
 * - ruhige ATS-Blautöne für Navigation und Mega-Menü
 */
:root {
    --ats-menu-bg: #6693c1;
    --ats-menu-hover: #5f8fbd;
    --ats-menu-active: #5a89b7;
    --ats-mega-bg: #a4c2e3;
    --ats-mega-bg-soft: #b6cfe9;
    --ats-mega-link: #ffffff;
    --ats-mega-link-dark: #2f5f8f;
}

/* Harte NOVA-Reste in der Hauptnavigation neutralisieren. */
#jtl-nav-wrapper.ats-header-wrapper #mainNavigation,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-menu,
#jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar,
#jtl-nav-wrapper.ats-header-wrapper .nav-scrollbar-inner,
#jtl-nav-wrapper.ats-header-wrapper .nav-scrollbar-item,
#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-item,
#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-link {
    border-color: transparent !important;
    outline-color: transparent !important;
    box-shadow: none !important;
    background-image: none !important;
}

#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-link::before,
#jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar .nav-link::before {
    display: none !important;
    content: none !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* Falls NOVA/Tab-Navigation eine gelbe Linie per ::after erzeugt, nur die Linie entfernen;
   die Dropdown-Carets bleiben als FontAwesome-Inhalt erhalten. */
#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-link::after,
#jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar .nav-link::after {
    border-color: transparent !important;
    background: transparent !important;
    box-shadow: none !important;
}

#jtl-nav-wrapper.ats-header-wrapper .ats-header-menu,
#jtl-nav-wrapper.ats-header-wrapper .menu-center-center,
#jtl-nav-wrapper.ats-header-wrapper .menu-multiple-rows-scroll,
#jtl-nav-wrapper.ats-header-wrapper .menu-multiple-rows-multiple,
#jtl-nav-wrapper.ats-header-wrapper .menu-center-left,
#jtl-nav-wrapper.ats-header-wrapper .menu-center-space-between {
    background: var(--ats-menu-bg) !important;
    border-top: 1px solid rgba(255,255,255,.44) !important;
    border-bottom: 0 !important;
}

#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-scrollbar-inner {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-item > .nav-link,
#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-scrollbar-item > .nav-link,
#jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar .nav-link {
    background: transparent !important;
    color: #ffffff !important;
    min-height: 56px !important;
    padding: 0 2.05rem !important;
    margin: 0 !important;
    font-weight: 800 !important;
    text-shadow: none !important;
    transition: background-color .16s ease, color .16s ease;
}

#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-item > .nav-link:hover,
#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-item.show > .nav-link,
#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-item.active > .nav-link,
#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-scrollbar-item > .nav-link:hover,
#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-scrollbar-item.show > .nav-link,
#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-scrollbar-item.active > .nav-link,
#jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar .show > .nav-link,
#jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar .nav-link:hover {
    background: var(--ats-menu-hover) !important;
    color: #ffffff !important;
    border: 0 !important;
    box-shadow: inset 0 -1px 0 rgba(255,255,255,.16) !important;
}

#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-item.show > .nav-link,
#jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-scrollbar-item.show > .nav-link,
#jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar .show > .nav-link {
    background: var(--ats-menu-active) !important;
}

/* Desktop-Mega-Menü: hell/blau statt dunkles NOVA-Overlay. */
@media (min-width: 992px) {
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .dropdown-menu,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .dropdown-full .dropdown-menu,
    #jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar .dropdown-menu,
    #jtl-nav-wrapper.ats-header-wrapper .dropdown-menu.megamenu,
    #jtl-nav-wrapper.ats-header-wrapper .megamenu,
    #jtl-nav-wrapper.ats-header-wrapper .megamenu-wrapper {
        background: var(--ats-mega-bg) !important;
        color: #ffffff !important;
        border: 0 !important;
        border-radius: 0 0 .35rem .35rem !important;
        box-shadow: 0 .35rem .75rem rgba(58, 94, 130, .18) !important;
        opacity: 1 !important;
        filter: none !important;
    }

    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .dropdown-full .dropdown-body,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .dropdown-body,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .subcategory-wrapper,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .submenu-wrapper {
        max-width: 1320px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding: 1.15rem 1rem 1.65rem !important;
        background: transparent !important;
    }

    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .dropdown-menu a,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .dropdown-menu .nav-link,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .submenu-headline,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .submenu-headline-toplevel,
    #jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar .dropdown-menu a,
    #jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar .dropdown-menu .nav-link {
        color: var(--ats-mega-link) !important;
        background: transparent !important;
        text-decoration: none !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .dropdown-menu a:hover,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .dropdown-menu .nav-link:hover,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .submenu-headline:hover,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .submenu-headline-toplevel:hover {
        color: #ffffff !important;
        background: rgba(255,255,255,.12) !important;
        text-decoration: none !important;
        box-shadow: none !important;
    }

    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .dropdown-menu img,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .submenu-headline-image {
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        transition: transform .16s ease, opacity .16s ease;
    }

    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .dropdown-menu a:hover img,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .submenu-headline:hover .submenu-headline-image {
        transform: translateY(-1px);
        opacity: .96;
    }

    /* Keine Abdunklung der Seite bei Desktop-Mega-Menüs. */
    body.ats-desktop-nav-open > .modal-backdrop,
    body.ats-desktop-nav-open > .dropdown-backdrop,
    body.ats-desktop-nav-open > .megamenu-backdrop,
    body.ats-desktop-nav-open > .navbar-backdrop,
    body.ats-desktop-nav-open > .offcanvas-backdrop,
    body.ats-desktop-nav-open > [class*="backdrop"] {
        opacity: 0 !important;
        background: transparent !important;
        pointer-events: none !important;
        display: none !important;
    }

    body.ats-desktop-nav-open #content-wrapper,
    body.ats-desktop-nav-open main,
    body.ats-desktop-nav-open #content,
    body.ats-desktop-nav-open .page-wrapper,
    body.ats-desktop-nav-open .opc-Container,
    body.ats-desktop-nav-open .opc-container {
        filter: none !important;
        opacity: 1 !important;
    }
}

/* Topbar/Header an ATS-Aquashop-Vorlage weiter angleichen. */
#jtl-nav-wrapper.ats-header-wrapper .ats-topbar {
    background: #f2f8ff !important;
    border-bottom: 1px solid rgba(255,255,255,.75) !important;
}
#jtl-nav-wrapper.ats-header-wrapper .ats-topbar-link,
#jtl-nav-wrapper.ats-header-wrapper .ats-topbar-email {
    color: var(--ats-primary-dark) !important;
    font-weight: 800 !important;
}
#jtl-nav-wrapper.ats-header-wrapper .ats-header-main {
    background: #a4c2e3 !important;
}
#jtl-nav-wrapper.ats-header-wrapper .ats-header-main-inner {
    max-width: 1320px !important;
}
#jtl-nav-wrapper.ats-header-wrapper .ats-header-search .input-group,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-search input.form-control,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-search .form-control,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-search .btn,
#jtl-nav-wrapper.ats-header-wrapper .ats-header-search button {
    background: #6693c1 !important;
}

/* Mobile bleibt weiß/ruhig; keine gelben Zustände. */
@media (max-width: 991.98px) {
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-link,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-item > .nav-link,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-scrollbar-item > .nav-link {
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
        color: var(--ats-text) !important;
    }
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-link:hover,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-item.show > .nav-link,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-scrollbar-item.show > .nav-link {
        background: #f2f8ff !important;
        color: var(--ats-primary-dark) !important;
    }
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .dropdown-menu {
        background: #ffffff !important;
        box-shadow: none !important;
    }
}


/*
 * ATS JTL Template v0.3.4
 * Navigation Row Fix nach Testfeedback:
 * - störende obere Linie der Menüleiste vollständig entfernen
 * - verschachtelte NOVA-Menüzeilen auf eine saubere Höhe normieren
 * - aktiver/geöffneter Menüpunkt füllt die komplette Menüleistenhöhe
 * - Desktop-Backdrop/Overlay bei geöffneten Menüs konsequent unterdrücken
 */
@media (min-width: 992px) {
    :root {
        --ats-header-menu-height: 52px;
        --ats-menu-bg: #6693c1;
        --ats-menu-hover: #5f8fbd;
        --ats-menu-active: #5a89b7;
    }

    #jtl-nav-wrapper.ats-header-wrapper .ats-header-menu,
    #jtl-nav-wrapper.ats-header-wrapper .menu-center-center,
    #jtl-nav-wrapper.ats-header-wrapper .menu-multiple-rows-scroll,
    #jtl-nav-wrapper.ats-header-wrapper .menu-multiple-rows-multiple,
    #jtl-nav-wrapper.ats-header-wrapper .menu-center-left,
    #jtl-nav-wrapper.ats-header-wrapper .menu-center-space-between {
        height: var(--ats-header-menu-height) !important;
        min-height: var(--ats-header-menu-height) !important;
        max-height: var(--ats-header-menu-height) !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        background: var(--ats-menu-bg) !important;
        border-top: 0 !important;
        border-bottom: 0 !important;
        box-shadow: none !important;
        overflow: visible !important;
    }

    #jtl-nav-wrapper.ats-header-wrapper .ats-header-menu > .navbar,
    #jtl-nav-wrapper.ats-header-wrapper .menu-center-center > .navbar,
    #jtl-nav-wrapper.ats-header-wrapper .menu-multiple-rows-scroll > .navbar,
    #jtl-nav-wrapper.ats-header-wrapper .menu-multiple-rows-multiple > .navbar,
    #jtl-nav-wrapper.ats-header-wrapper .menu-center-left > .navbar,
    #jtl-nav-wrapper.ats-header-wrapper .menu-center-space-between > .navbar,
    #jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar {
        height: var(--ats-header-menu-height) !important;
        min-height: var(--ats-header-menu-height) !important;
        max-height: var(--ats-header-menu-height) !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        align-items: stretch !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
        overflow: visible !important;
    }

    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation.collapse,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation.navbar-collapse {
        height: var(--ats-header-menu-height) !important;
        min-height: var(--ats-header-menu-height) !important;
        max-height: var(--ats-header-menu-height) !important;
        flex-basis: auto !important;
        flex-grow: 0 !important;
        align-items: stretch !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
        overflow: visible !important;
    }

    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-scrollbar-inner,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .navbar-nav,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-scrollbar-item,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-item {
        height: var(--ats-header-menu-height) !important;
        min-height: var(--ats-header-menu-height) !important;
        max-height: var(--ats-header-menu-height) !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        align-items: stretch !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-scrollbar-inner {
        display: flex !important;
        overflow: visible !important;
    }

    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-item > .nav-link,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-scrollbar-item > .nav-link,
    #jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar .nav-link {
        height: var(--ats-header-menu-height) !important;
        min-height: var(--ats-header-menu-height) !important;
        max-height: var(--ats-header-menu-height) !important;
        padding: 0 2.05rem !important;
        margin: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
        line-height: 1.1 !important;
    }

    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-item > .nav-link:hover,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-scrollbar-item > .nav-link:hover,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-item.active > .nav-link,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-scrollbar-item.active > .nav-link {
        background: var(--ats-menu-hover) !important;
        box-shadow: none !important;
    }

    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-item.show > .nav-link,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-scrollbar-item.show > .nav-link,
    #jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar .show > .nav-link {
        height: var(--ats-header-menu-height) !important;
        min-height: var(--ats-header-menu-height) !important;
        max-height: var(--ats-header-menu-height) !important;
        background: var(--ats-menu-active) !important;
        box-shadow: none !important;
    }

    /* Keine gelben/alten NOVA-Markierungen an Ober- oder Unterkante. */
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-link::before,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .nav-link::after,
    #jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar .nav-link::before,
    #jtl-nav-wrapper.ats-header-wrapper .ats-category-navbar .nav-link::after {
        background: transparent !important;
        border-color: transparent !important;
        box-shadow: none !important;
    }

    /* Der geöffnete Desktop-Menüzustand darf den Seiteninhalt nicht abdunkeln. */
    body.ats-desktop-nav-open [class*="backdrop"],
    body.ats-desktop-nav-open .modal-backdrop,
    body.ats-desktop-nav-open .dropdown-backdrop,
    body.ats-desktop-nav-open .offcanvas-backdrop,
    body.ats-desktop-nav-open .megamenu-backdrop,
    body.ats-desktop-nav-open .navbar-backdrop,
    body.ats-desktop-nav-open::before,
    body.ats-desktop-nav-open::after,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation::before,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation::after,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .dropdown-full::before,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .dropdown-full::after,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .dropdown-menu::before,
    #jtl-nav-wrapper.ats-header-wrapper #mainNavigation .dropdown-menu::after {
        opacity: 0 !important;
        background: transparent !important;
        pointer-events: none !important;
        display: none !important;
        filter: none !important;
    }

    body.ats-desktop-nav-open main,
    body.ats-desktop-nav-open #content-wrapper,
    body.ats-desktop-nav-open .page-wrapper,
    body.ats-desktop-nav-open #main-wrapper,
    body.ats-desktop-nav-open .opc,
    body.ats-desktop-nav-open .content-wrapper {
        opacity: 1 !important;
        filter: none !important;
    }
}
