/* HyaWow 1.0.8 — targeted Milano presentation on NOVA 5.8.1.
   Brand gold: supplied letterhead DOCX #D8B866. Do not paste old Milano CSS here. */
:root {
    --hyawow-gold: #d8b866;
    --hyawow-gold-dark: #755716;
    --hyawow-ink: #222;
    --hyawow-copy: #434343;
    --hyawow-line: #e6e6e6;
}
body { background: #fff; color: var(--hyawow-copy); letter-spacing: .3px; }
h1, h2, h3, .h1, .h2, .h3, .prata { font-family: 'Hyawow Prata', Georgia, serif; font-weight: 400; letter-spacing: .7px; }
h1, .h1 { line-height: 1.2; }
.navbar-brand { max-width: 100%; }
.navbar-brand .hyawow-logo { display: block; width: 210px; max-width: 100%; height: auto; object-fit: contain; }
#header-top-bar, #jtl-nav-wrapper { background: #222; color: #fff; }
#header-top-bar { border-bottom: 0; }
#header-top-bar > .container-fluid, #header-top-bar > .container { justify-content: flex-start; }
#header-top-bar .topbar-main { margin-left: 0; margin-right: auto; }
#header-top-bar .topbar-main .nav-item { padding-top: .25rem; padding-bottom: .25rem; }
#header-top-bar .topbar-main .currency-dropdown, #header-top-bar .topbar-main .language-dropdown { order: 2; }
.hyawow-support { text-align: center; margin-top: .65rem; font-size: .8125rem; }
.hyawow-support a { color: #c9c9c9 !important; text-decoration: none; }
.hyawow-support a:hover, .hyawow-support a:focus { color: var(--hyawow-gold) !important; }
#jtl-nav-wrapper .nav-link { font-weight: 400; }
#jtl-nav-wrapper .nav-link:hover, #jtl-nav-wrapper .nav-link:focus { color: var(--hyawow-gold); }
#jtl-nav-wrapper .dropdown-menu { color: var(--hyawow-copy); background: #fff; }
#jtl-nav-wrapper .dropdown-menu a:not(.btn) { color: var(--hyawow-copy); }
#jtl-nav-wrapper .dropdown-menu a:not(.btn):hover { color: var(--hyawow-gold-dark); }
#jtl-nav-wrapper .dropdown-menu .dropdown-item.active { background: var(--hyawow-gold); color: #111; }
#jtl-nav-wrapper .dropdown-menu .form-control { background: #fff; color: var(--hyawow-copy); }
/* 1.0.7: the account dropdown footer stays dark, unlike its white body. */
#jtl-nav-wrapper .account-icon-dropdown .dropdown-footer {
    background: var(--hyawow-ink);
    color: #f5f5f5;
}
#jtl-nav-wrapper .account-icon-dropdown .dropdown-footer a:not(.btn) {
    color: var(--hyawow-gold);
    text-decoration: underline;
}
#jtl-nav-wrapper .account-icon-dropdown .dropdown-footer a:not(.btn):hover,
#jtl-nav-wrapper .account-icon-dropdown .dropdown-footer a:not(.btn):focus {
    color: #fff;
}
#jtl-nav-wrapper .account-icon-dropdown .dropdown-footer a:focus-visible {
    outline: 2px solid var(--hyawow-gold);
    outline-offset: 3px;
}
/* Light dropdown surfaces must not inherit the dark header's white text. */
#jtl-nav-wrapper .dropdown-menu .table,
#jtl-nav-wrapper .dropdown-menu .cart-dropdown-total-item,
#jtl-nav-wrapper .dropdown-menu .cart-dropdown-shipping-notice { color: var(--hyawow-copy); }
#jtl-nav-wrapper .dropdown-menu .btn-outline-primary {
    color: var(--hyawow-gold-dark);
    background-color: #fff;
    border-color: var(--hyawow-gold-dark);
}
#jtl-nav-wrapper .dropdown-menu .btn-outline-primary:hover,
#jtl-nav-wrapper .dropdown-menu .btn-outline-primary:focus,
#jtl-nav-wrapper .dropdown-menu .btn-outline-primary:active {
    color: #111;
    background-color: var(--hyawow-gold);
    border-color: var(--hyawow-gold);
}
#jtl-nav-wrapper .dropdown-menu .btn:focus-visible { outline-color: var(--hyawow-gold-dark); }
#jtl-nav-wrapper .main-search-wrapper .form-control { border-color: #777; color: #fff; }
#jtl-nav-wrapper .main-search-wrapper .form-control::placeholder { color: #c9c9c9; opacity: 1; }
#jtl-nav-wrapper .btn-search { color: #fff; }
#jtl-nav-wrapper .btn-search:hover { color: var(--hyawow-gold); }
.btn-primary { background: var(--hyawow-gold); border-color: var(--hyawow-gold); color: #111; }
.btn-primary:hover, .btn-primary:focus, .btn-primary:not(:disabled):not(.disabled):active { background: #c6a24e; border-color: #c6a24e; color: #111; }
.btn-outline-primary { color: var(--hyawow-gold-dark); border-color: var(--hyawow-gold-dark); }
.btn-outline-primary:hover, .btn-outline-primary:focus { color: #111; background: var(--hyawow-gold); border-color: var(--hyawow-gold); }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, [tabindex]:focus-visible { outline: 2px solid var(--hyawow-gold-dark); outline-offset: 3px; }
#jtl-nav-wrapper a:focus-visible, #jtl-nav-wrapper button:focus-visible, #header-top-bar a:focus-visible { outline-color: var(--hyawow-gold); }
/* NOVA's invisible validation submit is not an additional add-to-cart button. */
.btn-hidden-default { display: none !important; }
.product-detail .product-headline:empty { display: none; }
.hyawow-product-heading .product-title { margin: 0 0 .35rem; font-size: 1.75rem; }
.hyawow-product-meta { display: flex; flex-wrap: wrap; gap: .4rem 1.2rem; align-items: center; font-size: .8125rem; }
.hyawow-product-meta .rating-wrapper { margin: 0; }
.hyawow-manufacturer-logo { max-width: 120px; max-height: 22px; width: auto; height: auto; }
.product-detail .product-info .price { font-family: 'Hyawow Prata', Georgia, serif; }
.hyawow-share { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 1.5rem; }
.hyawow-share .btn { min-width: 44px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
.productbox-column .productbox-title, .productbox-column .price_wrapper, .productbox-column .rating { text-align: center; }
.productbox-title { line-height: 1.5; }
.productbox .productbox-title a { text-decoration: none; }
.productbox-column .productbox-inner { border: 1px solid transparent; }
.productbox-column:hover .productbox-inner { border-color: var(--hyawow-line); }
.productbox .price { font-weight: 600; }
.productlist-filter-headline, .box-normal .box-header { font-family: 'Hyawow Prata', Georgia, serif; }
.hyawow-category-description { overflow-wrap: anywhere; }
.hyawow-category-description img { max-width: 100%; height: auto; }
#header-boxes { margin-top: 1rem; margin-bottom: 1rem; }
#footer { background: var(--hyawow-ink); color: #c9c9c9; padding-top: 0; margin-top: 0; overflow-wrap: anywhere; }
#footer a:not(.btn), #footer .productlist-filter-headline, #footer .box-normal .box-header { color: #e5e5e5; }
#footer h3, #footer .h3 { color: #e5e5e5; }
#footer a:not(.btn):hover, #footer a:not(.btn):focus { color: var(--hyawow-gold); }
#footer .newsletter-footer { background: transparent; color: #c9c9c9; text-align: center; padding: 2rem 1rem; margin-bottom: 3rem; }
#footer .newsletter-footer > [class*='col-'] { flex: 0 0 100%; max-width: 100%; }
#footer .newsletter-footer .h2 { color: #fff; text-transform: uppercase; font-size: clamp(1.5rem, 3vw, 2.5rem); }
#footer .newsletter-footer .info { max-width: 760px; margin: 0 auto 1rem; }
#footer .newsletter-footer a { color: var(--hyawow-gold); }
#footer .newsletter-footer form { max-width: 720px; margin: 0 auto; }
#footer .newsletter-footer .btn { background: var(--hyawow-gold); border-color: var(--hyawow-gold); color: #111; }
#footer .withdrawal-link-wrapper .btn { color: #fff; border-color: #c9c9c9; white-space: normal; }
#footer .withdrawal-link-wrapper .btn:hover { background: var(--hyawow-gold); border-color: var(--hyawow-gold); color: #111; }
#footer .footnote-vat { text-align: center; }
#copyright { background: #191919; color: #c9c9c9; }
/* Keep CMS utility classes that were used with Milano. */
.white, .white a { color: #fff; }
.white-bg { background: #fff; }
.textcenter { text-align: center; }
.highlight { color: var(--hyawow-gold-dark); }
.special-nav-btn > a, .bs24-nav-btn > a { background: var(--hyawow-gold); color: #111 !important; }
.hyawow-optional-state-hidden, #hyawow-options, #product-info .product-info-content[hidden] { display: none !important; }
#product-info[role='button'] { cursor: pointer; }
@media (min-width: 992px) {
    #jtl-nav-wrapper .hide-navbar > .navbar { padding-top: .75rem; padding-bottom: 1rem; }
    #jtl-nav-wrapper .nav-logo-wrapper { text-align: center; }
    #jtl-nav-wrapper .toggler-logo-wrapper { justify-content: center; }
    #jtl-nav-wrapper .main-search-wrapper { flex: 1 1 0; }
    #jtl-nav-wrapper .main-search-wrapper .search-wrapper { max-width: 260px; }
    #jtl-nav-wrapper .nav-icons-wrapper { flex: 1 1 0; }
    #jtl-nav-wrapper .nav-icons-wrapper > .nav-icons { justify-content: flex-end; }
    #jtl-nav-wrapper .nav-logo-wrapper { flex: 0 0 auto; }
    .product-detail > .product-info { flex: 0 0 58.333333%; max-width: 58.333333%; }
}
@media (max-width: 991.98px) {
    .navbar-brand .hyawow-logo { width: 160px; max-width: 38vw; height: auto; }
    #jtl-nav-wrapper .navbar-brand { margin-right: .5rem; }
    #mainNavigation .nav-mobile-body { max-height: calc(100vh - 5rem); max-height: calc(100dvh - 5rem); overflow-y: auto; overflow-x: hidden; overscroll-behavior: contain; }
    #mainNavigation, #mainNavigation .nav-mobile-header { background: #fff; color: var(--hyawow-copy); }
    #mainNavigation .navbar-toggler, #mainNavigation .navbar-toggler-icon { color: var(--hyawow-copy); }
    #mainNavigation .navbar-toggler { min-width: 44px; min-height: 44px; }
    #mainNavigation .navbar-toggler:focus-visible { outline: 2px solid var(--hyawow-gold-dark); outline-offset: 2px; }
    #mainNavigation a:not(.btn) { color: var(--hyawow-copy); }
    #mainNavigation a:not(.btn):hover { color: var(--hyawow-gold-dark); }
    .hyawow-product-heading .product-title { font-size: clamp(1.35rem, 4.5vw, 1.875rem); }
    .hyawow-product-meta { gap: .5rem 1rem; }
    #footer .newsletter-footer { margin-left: 0; margin-right: 0; }
}
@media (max-width: 575.98px) {
    .form-control, .custom-select { font-size: 16px; }
    .hyawow-product-meta { flex-direction: column; align-items: flex-start; }
    #footer .newsletter-email-wrapper .input-group { flex-wrap: wrap; }
    #footer .newsletter-email-wrapper .form-control { flex: 1 1 100%; width: 100%; }
    #footer .newsletter-email-wrapper .input-group-append { width: 100%; margin-left: 0; margin-top: .5rem; }
    #footer .newsletter-email-wrapper .btn { width: 100%; }
    .hyawow-category-description table { display: block; overflow-x: auto; max-width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
    .productbox, .productbox *, .btn { transition: none !important; animation: none !important; }
}

/* 1.0.1: live comparison with the previous design. Native NOVA markup/JS stays in place. */
/* A link is a flex child in NOVA's Splide slide; without a width it can shrink
   to the intrinsic image width, leaving white gaps in mobile OPC banners. */
.slider-wrapper .splide:not(.splide--thumbs) .splide__slide > a {
    display: block;
    width: 100%;
    flex: 0 0 auto;
}
.slider-wrapper .slider-pause-btn { min-width: 36px; min-height: 36px; }
.navbar-brand .hyawow-logo { mix-blend-mode: lighten; }
#header-top-bar .topbar-main.nav-dividers > .nav-item { border-right: 0; }
#jtl-nav-wrapper .nav-link { font-weight: 400; }
#jtl-nav-wrapper .navbar-brand { margin-right: 0; }
/* Active underline belongs to ::before; ::after is NOVA's disclosure arrow. */
#jtl-nav-wrapper .navbar-nav > .nav-item > .nav-link::before { border-bottom-width: 2px; }
.hyawow-product-meta { gap: .35rem 1rem; font-size: .75rem; }
.hyawow-product-heading hr { margin: .9rem 0; }
.productbox .price, .product-wrapper .price { font-family: 'Hyawow Poppins', sans-serif; font-weight: 400; }
.productbox-column .productbox-title { margin-top: .5rem; }
.productbox-column .productbox-title a { font-weight: 400; }
.opc-Divider.hr-sect { font-family: 'Hyawow Poppins', sans-serif; font-weight: 400; text-transform: uppercase; }
.slick-slider-other-container > .hr-sect.h2 { font-size: clamp(1.65rem, 3vw, 2.5rem); text-transform: uppercase; text-align: center; }
.productlist-filter-headline { text-transform: uppercase; font-size: 1rem; font-weight: 400; }
#footer > .container { max-width: none; }
#footer .newsletter-footer { padding: 2rem 1rem; margin-bottom: 1.5rem; }
#footer .newsletter-footer .form-control { background: #fff; color: #434343; }
#footer .newsletter-footer .form-control::placeholder { color: #666; }
#footer .newsletter-footer a:focus-visible { outline-color: var(--hyawow-gold); }

/* Optional wide editorial/catalogue layout; checkout/account containers are
   deliberately excluded. Page numbers are JTL's stable PAGE_* constants. */
body[data-page='18']
#hyawow-options[data-content-width='fluid'] ~ #main-wrapper :is(#content, #result-wrapper) > .container {
    max-width: none;
    padding-left: 2rem;
    padding-right: 2rem;
}
body:not(.is-checkout) #content-wrapper > .breadcrumb-container {
    max-width: none;
    background: #f5f6f8;
}
body:not(.is-checkout) .breadcrumb-wrapper { border: 0; margin-bottom: 1.75rem; padding-top: .65rem; padding-bottom: .65rem; }
body:not(.is-checkout) #content-wrapper:not(.has-left-sidebar) { padding-top: 0; }
.blog-overview .blog-overview-main { align-items: center; }
.blog-details img, .link-content img { max-width: 100%; height: auto; }

@media (min-width: 992px) {
    #header-top-bar { min-height: 44px; }
    #header-top-bar .topbar-main .nav-item { padding-top: 0; padding-bottom: 0; }
    #header-top-bar .topbar-main .nav-link { padding-top: .7rem; padding-bottom: .7rem; }
    #jtl-nav-wrapper .hide-navbar > .navbar { position: relative; padding-top: 0; padding-bottom: .5rem; }
    #jtl-nav-wrapper .navbar-brand { padding-top: .25rem; padding-bottom: .25rem; }
    body:not(.is-checkout) #jtl-nav-wrapper .nav-logo-wrapper { margin-left: auto !important; margin-right: auto !important; }
    body:not(.is-checkout) #jtl-nav-wrapper .main-search-wrapper { position: absolute; right: 15rem; top: -2.4rem; width: 11rem; padding: 0; z-index: 1022; }
    body:not(.is-checkout) #jtl-nav-wrapper .main-search-wrapper .search-wrapper { width: 100%; max-width: none; }
    body:not(.is-checkout) #jtl-nav-wrapper .main-search-wrapper .form-control { height: 34px; padding-top: .25rem; padding-bottom: .25rem; background: transparent; border-color: #666; }
    body:not(.is-checkout) #jtl-nav-wrapper .main-search-wrapper .input-group-append .btn { padding: .25rem .6rem; min-width: 34px; border-color: #666; }
    body:not(.is-checkout) #jtl-nav-wrapper .nav-icons-wrapper { position: absolute; top: -2.65rem; right: .5rem; width: auto; padding: 0; z-index: 1022; }
    body:not(.is-checkout) #jtl-nav-wrapper #shop-nav > .nav-item > .nav-link { padding-top: .6rem; padding-bottom: .6rem; }
    .hyawow-support { margin-top: .3rem; }
    #jtl-nav-wrapper #mainNavigation .nav-link { padding-top: 1rem; padding-bottom: 1rem; }
    #jtl-nav-wrapper #mainNavigation .nav-mobile-body > .navbar-nav > .nav-item > .nav-link { padding: 1rem; line-height: 24px; }
    #jtl-nav-wrapper #mainNavigation { margin-right: 0; }
    #sidepanel_left { padding-right: 1rem; border-right: 1px solid #eee; }
    #sidepanel_left .box-categories .nav .nav { background: #fff; }
    #sidepanel_left .box-categories .nav-link { padding-top: .45rem; padding-bottom: .45rem; }
    #sidepanel_left .box-categories .snippets-categories-nav-link-child { border-bottom: 1px dashed #e6e6e6; }
    .productlist-page-nav { margin-top: 1rem; padding: .75rem 1.25rem; }
}
@media (max-width: 991.98px) {
    #jtl-nav-wrapper .nav-logo-wrapper { display: block; flex: 0 0 100%; max-width: 100%; text-align: center; }
    #jtl-nav-wrapper .toggler-logo-wrapper { position: relative; display: flex; float: none; width: 100%; justify-content: center; }
    #jtl-nav-wrapper .toggler-logo-wrapper .logo-wrapper { float: none; }
    #jtl-nav-wrapper #burger-menu { position: absolute; left: 0; top: 50%; transform: translateY(-50%); }
    .navbar-brand .hyawow-logo { width: 180px; max-width: 55vw; }
    .hyawow-support { margin-top: .1rem; margin-bottom: .6rem; font-size: .75rem; }
    #jtl-nav-wrapper .nav-icons-wrapper { margin-left: auto; margin-right: auto; }
    .hyawow-product-heading .product-title { font-size: clamp(1.35rem, 4.5vw, 1.75rem); }
    body[data-page='18']
    #hyawow-options[data-content-width='fluid'] ~ #main-wrapper :is(#content, #result-wrapper) > .container { padding-left: 1rem; padding-right: 1rem; }
    .blog-overview select { max-width: 100%; }
}

/* 1.0.2: verified font metrics and targeted navigation/layout refinements. */
#mainNavigation { font-family: 'Hyawow Poppins', sans-serif; font-size: .875rem; }
#header-top-bar .nav-dividers .nav-item::after { border-right: 0; }
#sidepanel_left .productlist-filter-headline { letter-spacing: .7px; border-bottom: 0; }
#sidepanel_left .box-categories .nav-panel > .nav > .active > .nav-link {
    border-bottom-width: 1px;
    border-bottom-color: var(--hyawow-line);
    font-weight: 400;
}
#sidepanel_left .box-categories .nav-panel .nav .nav .active > .nav-link { font-weight: 600; }
#footer .productlist-filter-headline, #footer .box-normal .box-header {
    font-family: 'Hyawow Prata', Georgia, serif;
    font-size: .9375rem;
    font-weight: 400;
    letter-spacing: .5px;
}
.product-detail .product-info .price { font-size: 1.75rem; line-height: 1.2; letter-spacing: .7px; }
/* Keep the native breadcrumb children, but align the category strip to the edge. */
body:not(.is-checkout) #content-wrapper.has-left-sidebar > .breadcrumb-container {
    width: auto;
    margin-left: -1rem;
    margin-right: -1rem;
}
body:not(.is-checkout) #content-wrapper.has-left-sidebar { padding-top: 0; }
@media (min-width: 992px) {
    #mainNavigation .dropdown-menu .dropdown-item, #mainNavigation .dropdown-menu .nav-link {
        font-family: 'Hyawow Poppins', sans-serif;
        font-size: .875rem;
        line-height: 1.5;
    }
}

/* NOVA uses serif accent headings inside the megamenu; the previous design
   used the same local Poppins semibold as other navigation headings. */
#mainNavigation .submenu-headline-toplevel {
    font-family: 'Hyawow Poppins', sans-serif;
    font-size: .875rem;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: .3px;
    border-bottom: 0;
}
@media (min-width: 992px) {
    #mainNavigation .subcategory-wrapper { max-width: none; padding-left: 2rem; padding-right: 2rem; }
    #mainNavigation .subcategory-wrapper > .row { margin-left: -1rem; margin-right: -1rem; }
    #mainNavigation .subcategory-wrapper > .row > .nav-item-lg-m {
        flex: 0 0 25%;
        max-width: 25%;
        padding-left: 1rem;
        padding-right: 1rem;
        margin-top: 1rem;
        margin-bottom: 1rem;
    }
    #mainNavigation .submenu-headline-toplevel { margin-bottom: .5rem; }
}
@media (min-width: 1200px) {
    #mainNavigation .subcategory-wrapper > .row > .nav-item-lg-m { flex-basis: 16.666667%; max-width: 16.666667%; }
}

/* 1.0.3: independent template announcement and native new-product stream. */
.hyawow-attention-bar {
    padding: .5rem 0;
    font-size: .875rem;
    line-height: 1.5;
    text-align: center;
    overflow-wrap: anywhere;
}
.hyawow-attention-bar.alert-danger { background: #f8d7da; color: #721c24; }
.hyawow-attention-bar.alert-default { background: #f5f6f8; color: #434343; }
.hyawow-attention-bar.alert-highlight { background: #d8b866; color: #222; }
.product-slider-NeuImSortiment .slick-slider-other-container { max-width: none; }
.product-slider-NeuImSortiment .hr-sect a { font-weight: 400; }
.product-slider-NeuImSortiment .product-wrapper > a { text-decoration: none; }
.product-slider-NeuImSortiment .product-wrapper > a:hover .item-slider-desc,
.product-slider-NeuImSortiment .product-wrapper > a:focus-visible .item-slider-desc { text-decoration: underline; }

/* Retain the former image scale inside the larger cards without reducing
   NOVA's source image resolution, lazy loading or responsive picture markup. */
.product-slider-NeuImSortiment .square-image img {
    max-width: min(100%, 216px);
    max-height: min(100%, 216px);
}

/* NOVA records card heights on load/resize. Let these simple linked cards
   grow naturally so captions and base prices cannot be clipped on rotation. */
.product-slider-NeuImSortiment .product-wrapper { height: auto !important; }

/* 1.0.4: product-page recommendations and the footer transition.
   Keep native card data, prices, slider behaviour and Trusted Shops content. */
.recommendations .hr-sect.h2 {
    font-size: clamp(1.65rem, 3vw, 2.5rem);
    line-height: 1.2;
    text-transform: uppercase;
    text-align: center;
}
.recommendations .product-wrapper { height: auto !important; }
.recommendations .product-wrapper > a { text-decoration: none; }
.recommendations .product-wrapper > a:hover .item-slider-desc,
.recommendations .product-wrapper > a:focus-visible .item-slider-desc { text-decoration: underline; }
.recommendations .square-image img {
    max-width: min(100%, 216px);
    max-height: min(100%, 216px);
}
/* Contain the native widget margin so it stays on the dark footer background.
   No changes to Trusted Shops markup, shadow content or review behaviour. */
#footer { display: flow-root; }
#footer .newsletter-footer.hyawow-newsletter {
    padding: 6rem 2rem 3rem;
    margin-bottom: 0;
}
#footer .hyawow-newsletter .newsletter-footer-heading { margin: .5rem 0; }
#footer .hyawow-newsletter form {
    width: 58.333333%;
    max-width: none;
    padding: 0 1rem;
    margin: 0 auto;
}
#footer .hyawow-newsletter .newsletter-email-wrapper { margin-bottom: 1rem; }
#footer .hyawow-newsletter .form-control {
    height: 48px;
    padding: .75rem 1.5rem;
    background: #464646;
    border-color: #666;
    color: #fff;
}
#footer .hyawow-newsletter .form-control::placeholder { color: #c7c7c7; opacity: 1; }
#footer .hyawow-newsletter .form-control:focus { border-color: var(--hyawow-gold); }
#footer .hyawow-newsletter .btn {
    min-height: 48px;
    font-weight: 400;
    background: #fff;
    border-color: #fff;
    color: #111;
}
#footer .hyawow-newsletter .btn:hover,
#footer .hyawow-newsletter .btn:focus-visible {
    background: var(--hyawow-gold);
    border-color: var(--hyawow-gold);
    color: #111;
}
#footer .hyawow-newsletter .info {
    max-width: none;
    margin: 0 auto 1rem;
    font-size: .75rem;
    line-height: 1.5;
}
#footer .hyawow-newsletter-divider { margin: 1rem -1rem; }
#footer .hyawow-newsletter-divider ~ #footer-boxes {
    margin: 5rem 1rem 0;
    padding-top: 0;
}
@media (max-width: 991.98px) {
    #footer .newsletter-footer.hyawow-newsletter { padding: 3rem 1rem 2rem; }
    #footer .hyawow-newsletter form { width: 100%; max-width: 720px; padding: 0; }
    #footer .hyawow-newsletter .newsletter-footer-heading { margin-bottom: 1rem; }
    #footer .hyawow-newsletter-divider ~ #footer-boxes { margin-top: 2rem; }
}

#footer .scroll-to-top { background: #111; color: #fff; }
#footer .scroll-to-top:hover, #footer .scroll-to-top:focus-visible { background: var(--hyawow-gold); color: #111; }

/* 1.0.5: homepage details, measured against the existing storefront.
   Milano bounds the desktop category navigation to a centred container.
   Keep NOVA's native horizontal scrolling for longer translated menus;
   do not centre overflowing flex items (the first links would be clipped). */
@media (min-width: 992px) {
    #jtl-nav-wrapper .menu-center-center.menu-multiple-rows-scroll {
        max-width: 960px;
        margin-left: auto;
        margin-right: auto;
    }
}
@media (min-width: 1180px) {
    #jtl-nav-wrapper .menu-center-center.menu-multiple-rows-scroll { max-width: 1100px; }
}
@media (min-width: 1300px) {
    #jtl-nav-wrapper .menu-center-center.menu-multiple-rows-scroll { max-width: 1250px; }
}
@media (min-width: 1440px) {
    #jtl-nav-wrapper .menu-center-center.menu-multiple-rows-scroll { max-width: 1440px; }
}

/* Homepage OPC bestseller cards use product-wrapper, not productbox-inner.
   Reserve the border at rest so hovering or keyboard focus cannot shift it. */
body[data-page='18'] .opc-ProductStream-slider .product-wrapper-product {
    border: 1px solid transparent;
    transition: border-color .3s;
    height: auto !important;
}
body[data-page='18'] .opc-ProductStream-slider .product-wrapper-product:hover,
body[data-page='18'] .opc-ProductStream-slider .product-wrapper-product:focus-within {
    border-color: #b3b3b3;
}

/* Permanent outlines around the three editorial category product boxes. */
body[data-page='18'] .opc-ProductStream-box-slider > .card.box-slider {
    border-color: var(--hyawow-line);
}
/* The native box slider keeps an inline height from its initial viewport.
   Allow names/prices to remain visible after rotation or desktop resizing. */
body[data-page='18'] .opc-ProductStream-box-slider .product-wrapper-product {
    height: auto !important;
}
@media (prefers-reduced-motion: reduce) {
    body[data-page='18'] .opc-ProductStream-slider .product-wrapper-product { transition: none; }
}

/* Public content pages share Milano's readable frame. Home banners remain
   full-width; checkout, account and basket layouts are deliberately excluded. */
:root { --hyawow-content-max: 100%; }
@media (min-width: 768px) { :root { --hyawow-content-max: 768px; } }
@media (min-width: 992px) { :root { --hyawow-content-max: 960px; } }
@media (min-width: 1180px) { :root { --hyawow-content-max: 1100px; } }
@media (min-width: 1300px) { :root { --hyawow-content-max: 1250px; } }
@media (min-width: 1440px) { :root { --hyawow-content-max: 1440px; } }
body:is([data-page='1'], [data-page='5'], [data-page='7'], [data-page='19'], [data-page='20'], [data-page='21'], [data-page='25'], [data-page='27'], [data-page='29'], [data-page='30'], [data-page='31'], [data-page='36'], [data-page='40'], [data-page='41'], [data-page='42'], [data-page='43'], [data-page='45'])
#main-wrapper #content {
    width: 100%;
    max-width: var(--hyawow-content-max);
    margin-left: auto;
    margin-right: auto;
    padding-left: 1rem;
    padding-right: 1rem;
    overflow-wrap: anywhere;
}
body:is([data-page='1'], [data-page='5'], [data-page='7'], [data-page='19'], [data-page='20'], [data-page='21'], [data-page='25'], [data-page='27'], [data-page='29'], [data-page='30'], [data-page='31'], [data-page='36'], [data-page='40'], [data-page='41'], [data-page='42'], [data-page='43'], [data-page='45'])
#hyawow-options[data-content-width='fluid'] ~ #main-wrapper :is(#content, #result-wrapper) > .container {
    max-width: 100%;
    padding-left: 1rem;
    padding-right: 1rem;
}
body:not(.is-checkout) #content-wrapper:not(.has-left-sidebar) > .breadcrumb-container {
    padding-left: 0;
    padding-right: 0;
}
body:not(.is-checkout) #content-wrapper:not(.has-left-sidebar) > .breadcrumb-container > .breadcrumb-wrapper {
    max-width: var(--hyawow-content-max);
    margin-left: auto;
    margin-right: auto;
    padding-left: 1rem;
    padding-right: 1rem;
}
/* Keep the normal gallery fitted to its column even when responsive image
   candidates have different intrinsic sizes. Native fullscreen/zoom is exempt. */
body[data-page='1'] #image_wrapper:not(.fullscreen) #gallery .product-image {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
/* 1.0.6: the compact secure-checkout header needs its own logo sizing.
   A full-size shop logo otherwise overflows NOVA's fixed checkout height. */
body.is-checkout #jtl-nav-wrapper,
body.is-checkout #jtl-nav-wrapper .navbar {
    height: auto;
    min-height: 4rem;
}
body.is-checkout #jtl-nav-wrapper .navbar {
    flex-wrap: nowrap;
    justify-content: flex-start !important;
    padding-top: .5rem;
    padding-bottom: .5rem;
}
body.is-checkout #jtl-nav-wrapper .nav-logo-wrapper {
    flex: 0 0 auto;
    width: auto;
    max-width: 50%;
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: left;
}
body.is-checkout #jtl-nav-wrapper .toggler-logo-wrapper {
    position: static;
    float: none;
    width: auto;
    justify-content: flex-start;
}
body.is-checkout #jtl-nav-wrapper .logo-wrapper { float: none; }
body.is-checkout #jtl-nav-wrapper .navbar-brand {
    display: block;
    padding: 0;
    margin: 0;
}
body.is-checkout #jtl-nav-wrapper .hyawow-logo {
    width: 150px;
    max-width: 38vw;
    height: auto;
    max-height: 56px;
}
body.is-checkout #jtl-nav-wrapper .secure-checkout-icon {
    flex: 1 1 auto;
    min-width: 0;
    margin-left: 0;
    color: #fff;
    font-size: .75rem;
}
.hyawow-account-notice {
    margin: 0 0 1.5rem;
    padding: 1rem 1.25rem;
    border: 1px solid var(--hyawow-gold);
    border-left-width: 4px;
    background: #faf7ef;
    color: var(--hyawow-copy);
    font-size: .875rem;
    line-height: 1.6;
    overflow-wrap: anywhere;
}
.hyawow-account-notice strong { display: block; margin-bottom: .35rem; }
.hyawow-account-notice p { margin: 0; }
@media (min-width: 992px) {
    #jtl-nav-wrapper.hyawow-sticky-menu { top: var(--hyawow-sticky-offset, 0px); }
    body[data-page='1'] #product-offer { margin-left: 0; margin-right: 0; }
    body[data-page='1'] #product-offer > .hyawow-product-heading { padding-left: 0; padding-right: 0; }
    body[data-page='1'] #product-offer > .product-info { padding-right: 0; }
    body[data-page='1'] #product-offer .info-essential { margin-top: 0; }
}

/* 1.0.8: preserve the existing net/gross plugin's detail row outside NOVA's
   replaceable .price node. Do not change native prices, taxes or basket data. */
#product-offer .hyawow-secondary-price {
    font-family: 'Hyawow Poppins', sans-serif;
    font-size: .875rem;
    line-height: 1.5;
    margin-top: -.6rem;
    margin-bottom: .65rem;
    color: var(--hyawow-copy);
}
#product-offer .hyawow-secondary-price[hidden] { display: none !important; }
/* The migrated About-us OPC block has an inline -150px bottom margin.
   Keep the full content in normal flow, contain child margins/floats, and
   reserve breathing room before the asynchronously loaded reviews below.
   No fixed heights, clipping, or changes to the Trusted Shops widget. */
#hyawow-options[data-about-page='Y'] ~ #main-wrapper > .opc-Container {
    display: flow-root;
    margin-bottom: 0 !important;
    padding-bottom: clamp(1.5rem, 3vw, 3rem);
}
.hyawow-box-toggle {
    width: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    text-align: inherit;
    font: inherit;
}
#footer .hyawow-box-toggle { color: #e5e5e5; }
#footer .hyawow-box-toggle:hover, #footer .hyawow-box-toggle:focus { color: var(--hyawow-gold); }
@media (max-width: 991.98px) {
    .hyawow-mobile-search-row { display: flex; align-items: center; gap: .75rem; }
    .hyawow-mobile-search-row > .search-wrapper { flex: 1 1 0; min-width: 0; }
    .hyawow-mobile-menu-toggle {
        display: flex;
        align-items: center;
        justify-content: center;
        flex: 0 0 44px;
        width: 44px;
        height: 44px;
        padding: 0;
        color: #fff;
        border: 0;
        background: transparent;
        font-size: 1.25rem;
    }
    .hyawow-mobile-menu-toggle:hover, .hyawow-mobile-menu-toggle:focus { color: var(--hyawow-gold); }
    .hyawow-mobile-menu-toggle:focus-visible { outline-color: var(--hyawow-gold); }
    /* The off-canvas menu has its own close/back controls at the same edge. */
    .hyawow-mobile-search:has(.hyawow-mobile-menu-toggle[aria-expanded='true']) { visibility: hidden; }
}
@media (max-width: 767.98px) {
    /* The fixed top button must never intercept a footer accordion tap. */
    #footer.hyawow-footer-links-visible .scroll-to-top {
        visibility: hidden;
        opacity: 0;
        pointer-events: none;
        transition: none;
    }
    #footer-boxes .box-normal-link[data-toggle='collapse'] {
        min-height: 44px;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
}
