:root,
[data-bs-theme="light"] {
    /* --bs-glacial: #5c99aa;
    --bs-glacial-rgb: 92, 153, 170; */
    --bs-rust: #000000;
    --bs-rust-rgb: 0, 0, 0;
    --bs-champagne-gold: #e5ce98;
    --bs-champagne-gold-rgb: 229, 206, 152;
    --bs-gold: #d7b56d;
    --bs-gold-rgb: 215, 181, 109;
    --bs-warning: #f59e0b;
    --bs-warning-rgb: 245, 158, 11;

    --bs-primary: var(--bs-gold);
    --bs-primary-rgb: var(--bs-gold-rgb);
    --bs-secondary: var(--bs-black);
    --bs-secondary-rgb: var(--bs-black-rgb);
    --bs-supplementary-color: var(--bs-champagne-gold);
    --bs-supplementary-rgb: var(--bs-champagne-gold-rgb);
    --bs-gradient-horizon: linear-gradient(90deg, var(--bs-primary) 0, var(--bs-supplementary-color) 55%, #f2e6c4 100%);

    --bs-primary-text-emphasis: var(--bs-primary);
    --bs-link-hover-color: var(--bs-primary);
    --bs-link-hover-color-rgb: var(--bs-primary-rgb);
    

    .dropdown-menu {
        --bs-dropdown-link-active-bg: var(--bs-primary);
    }

    .breadcrumb {
        --bs-breadcrumb-padding-y: 0.25rem;
    }   
}

:root {
    --bs-link-color: var(--bs-primary);
    --bs-link-color-rgb: var(--bs-primary-rgb);

    --bs-body-font-size-s-sm: 0.75rem;
    --bs-body-font-size-x-sm: 0.813rem;
    --bs-body-font-size-x-m: 1rem;
    --bs-body-font-size-l: 1.65rem;
}

/* BUTTON */
.btn {
    --bs-btn-border-radius: var(--bs-border-radius-lg);
}
.btn-primary {
    --bs-btn-color: var(--bs-light);
    --bs-btn-bg: var(--bs-primary);
    --bs-btn-border-color: var(--bs-primary);
    --bs-btn-hover-color: var(--bs-light);
    --bs-btn-hover-bg: color-mix(in srgb, var(--bs-btn-bg), black 15%);
    --bs-btn-hover-border-color: var(--bs-primary);
    --bs-btn-focus-shadow-rgb: 48, 128, 247;
    --bs-btn-active-color: var(--bs-light);
    --bs-btn-active-bg: color-mix(in srgb, var(--bs-btn-bg), black 15%);
    --bs-btn-active-border-color: color-mix(in srgb, var(--bs-btn-bg), black 15%);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: var(--bs-light);
    --bs-btn-disabled-bg: var(--bs-primary);
    --bs-btn-disabled-border-color: var(--bs-primary);
}
.btn-secondary {
    --bs-btn-color: var(--bs-light);
    --bs-btn-bg: var(--bs-secondary);
    --bs-btn-border-color: var(--bs-secondary);
    --bs-btn-hover-color: var(--bs-light);
    --bs-btn-hover-bg: var(--bs-secondary);
    --bs-btn-hover-border-color: var(--bs-secondary);
    --bs-btn-focus-shadow-rgb: 130, 138, 145;
    --bs-btn-active-color: var(--bs-light);
    --bs-btn-active-bg: var(--bs-secondary);
    --bs-btn-active-border-color: var(--bs-secondary);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: var(--bs-light);
    --bs-btn-disabled-bg: var(--bs-secondary);
    --bs-btn-disabled-border-color: var(--bs-secondary);
}
.btn-outline-primary {
    --bs-btn-color: var(--bs-primary);
    --bs-btn-border-color: var(--bs-primary);
    --bs-btn-hover-color: var(--bs-light);
    --bs-btn-hover-bg: var(--bs-primary);
    --bs-btn-hover-border-color: var(--bs-primary);
    --bs-btn-focus-shadow-rgb: 48, 128, 247;
    --bs-btn-active-color: var(--bs-light);
    --bs-btn-active-bg: var(--bs-primary);
    --bs-btn-active-border-color: var(--bs-primary);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: transparent;
    --bs-btn-disabled-border-color: var(--bs-primary);
    --bs-gradient: none;
}
.btn-outline-tertiary {
    --bs-btn-color: var(--bs-dark);
    --bs-btn-bg: var(--bs-light);
}
.alert-info {
    --bs-alert-color: var(--bs-light);
    --bs-alert-bg: var(--bs-primary);
    --bs-alert-border-color: var(--bs-primary);
    --bs-alert-link-color: var(--bs-body-bg);
}
/**********/

/* CONTAINER */
@media (min-width: 576px) {
    .container {
        max-width: 767px;
    }
}
@media (min-width: 768px) {
    .container {
        max-width: 992px;
    }
}
@media (min-width: 992px) {
    .container {
        max-width: 1200px;
    }
}
@media (min-width: 1200px) {
    .container {
        max-width: 1400px;
    }
}
@media (min-width: 1400px) {
    .container,
    .container-md {
        max-width: 1672px;
    }
}
/*************/

/* GENERAL */
.product__reference {
    display: flex;
    align-items: center;
    font-size: var(--bs-body-font-size-sm);
}
.product__reference-content {
    /* background: var(--bs-primary); */
    border-radius: var(--bs-border-radius-lg);
    padding: 2px 6px;
    color: var(--bs-black);
}
.page-index .page:not(body) {
    padding-bottom: 0rem;
}
/***********/

/* BACK TO TOP */
#back-top {
    display: none;
    text-align: center;
    position: fixed;
    cursor: pointer;
    right: 20px;
    bottom: 80px;
    z-index: 99;
}
#back-top a {
    width: 40px;
    height: 40px;
    background: var(--bs-primary);
    color: var(--bs-white);
    font-size: 16px;
    line-height: 35px;
    border-radius: 50%;
    border: 1px solid var(--bs-light);
}
/***************/

/* PAGINATION */
.products__pagination {
    margin-top: 2rem;
}
.pagination__container,
.pagination__nav,
.pagination__nav > nav,
.pagination {
    width: 100%;
}
.pagination__container {
    justify-content: center;
}
.pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    margin: 0;
    padding: 0;
}
.pagination .page-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    min-width: 2rem;
    height: 2rem;
    padding: 0 0.75rem;
    border: 0;
    border-radius: 50rem;
    background: transparent;
    color: var(--bs-primary);
    font-size: var(--bs-body-font-size-x-sm);
    font-weight: 600;
    line-height: 1;
    transition: background-color 0.2s ease, color 0.2s ease;
}
.pagination .page-link:hover,
.pagination .page-link:focus-visible {
    background: var(--bs-primary);
    color: var(--bs-white);
    box-shadow: none;
}
.pagination .page-item.active .page-link {
    background: var(--bs-gradient-horizon);
    color: var(--bs-white);
}
.pagination .page-item.disabled .page-link {
    background: transparent;
    color: var(--bs-secondary-color);
}
.pagination .page-link .material-icons {
    font-size: 1.25rem;
}
/* previous / next pills pinned to the edges, page numbers centered */
.pagination .page-link.previous,
.pagination .page-link.next {
    padding-inline: 1rem;
    border: 1px solid rgba(var(--bs-primary-rgb), 0.15);
}
.pagination .page-link.previous:hover,
.pagination .page-link.next:hover {
    border-color: var(--bs-primary);
}
/* prev/next slots are always rendered (empty when not available) so the numbers stay centered */
.pagination .pagination__prev,
.pagination .pagination__next {
    flex: 1 1 0;
    display: flex;
}
.pagination .pagination__prev {
    justify-content: flex-start;
}
.pagination .pagination__next {
    justify-content: flex-end;
}
@media (max-width: 575px) {
    .pagination {
        gap: 0.25rem;
    }
    .pagination .page-link {
        min-width: 2.25rem;
        height: 2.25rem;
        padding-inline: 0.5rem;
    }
}
#js-product-list-top {
    scroll-margin-top: 1rem;
}
/**************/

/* BREADCRUMB */
.breadcrumb__wrapper {
    background-color: var(--bs-body-bg);
}
.breadcrumb {
    --bs-breadcrumb-padding-y: 0.5rem;
    font-size: 12px;
}
.cms-id-6 .breadcrumb__wrapper{
    display:none;
}
@media (min-width: 768px) {
    .breadcrumb__wrapper {
        margin-bottom: 0rem;
    }
}
/**************/

/* FOOTER */
.footer__main {
    /* background: linear-gradient(
        120deg, 
        var(--bs-primary) 0%, 
        var(--bs-primary) 42%, 
        var(--bs-supplementary-color) 74%, 
        #f2e6c4 100%) */
    background: linear-gradient(90deg, var(--bs-primary) 0, var(--bs-supplementary-color) 55%, #f2e6c4 100%);
}
.footer__main {
    padding-block: 0;
}
/**********/

/* HEADER */
.header-banner {
    background: var(--bs-gradient-horizon);
}
.header-bottom .navbar-brand {
    max-width: 300px;
}
#header .header-bottom {
    border:0;
    position:relative;
    z-index:1000;
}
#header .header-bottom-search {
    background: var(--bs-secondary);
}
#header .header-bottom-menu {
    background: var(--bs-primary);
}
#header .header-bottom .navbar-brand {
    max-height: 110px;
}
#header .header-bottom .header-bottom__logo .logo {
    width: auto;
    max-width: 400px;
    height: 50px;
    max-height: 110px;
}
#header .header-bottom__row {
    justify-content: space-between;
    flex-wrap: nowrap;
}
#header .header-bottom__row .left {
    display:flex;
}
#header .header-bottom__row .left,
#header .header-bottom__row .middle,
#header .header-bottom__row .right {
    width: auto;
}
#header .header-bottom__row .middle,
#header .header-bottom__row .right {
    display:flex;
    align-items:center;
    justify-content:center;
}
#header .header-bottom__row .middle {
    width: 44%;
    max-width: 800px;
}
#header .header-bottom__row .right {
    gap:15px;
    position: relative;
}
#header .scroll_heading .ets_mm_megamenu_content {
    box-shadow: 0px 7px 12px 0 rgba(0, 0, 0, 0.1);
}
/* header right: contact | sign in | wishlist | cart */
#header .header-contact {
    flex-direction: column;
    align-items: flex-end;
    padding-right: 1rem;
    border-right: 1px solid #e1e1e1;
    line-height: 1.2;
    text-align: end;
    white-space: nowrap;
}
#header .header-contact__label {
    font-size: 11px;
    color: var(--bs-secondary-color);
}
#header .header-contact__phone {
    font-size: 1rem;
    font-weight: 700;
    color: var(--bs-supplementary-color);
}
#header .header-contact__email {
    font-size: 11px;
    color: var(--bs-supplementary-color);
    text-decoration: none;
}
#header .header-contact a:hover {
    color: var(--bs-primary);
}
@media (min-width: 768px) {
    #header .header-bottom__row .right > .header-contact { order: 0; }
    #header .header-bottom__row .right > #_desktop_ps_customersignin { order: 1; }
    #header .header-bottom__row .right > #wishlist-link { order: 2; }
    #header .header-bottom__row .right > #_desktop_ps_shoppingcart { order: 3; }

    #_desktop_ps_customersignin .header-block__action-btn {
        display: flex;
        align-items: center;
        gap: 0.5rem;
        padding: 0.5rem 1.2rem;
        border-radius: 50rem;
        background: var(--bs-gradient-horizon);
        color: var(--bs-white);
        font-weight: 600;
        text-decoration: none;
        white-space: nowrap;
        transition: transform 0.2s ease, box-shadow 0.2s ease;
        font-size: var(--bs-body-font-size-x-sm);
    }
    #_desktop_ps_customersignin .header-block__action-btn:hover,
    #_desktop_ps_customersignin .header-block__action-btn[aria-expanded="true"] {
        color: var(--bs-white);
        transform: translateY(-1px);
        box-shadow: 0 12px 28px -10px rgba(var(--bs-primary-rgb), 0.45);
    }
    #_desktop_ps_customersignin .header-block__icon,
    #_desktop_ps_customersignin .header-block__title {
        color: inherit;
        margin: 0;
    }

    #_desktop_ps_shoppingcart .header-block__action-btn {
        position: relative;
        display: grid;
        place-items: center;
        width: 2.5rem;
        height: 2.5rem;
        padding: 0;
        border: 1px solid #ebebeb;
        border-radius: 50%;
        color: var(--bs-secondary);
        transition: border-color 0.2s ease;
    }
    #_desktop_ps_shoppingcart a.header-block__action-btn:hover {
        border-color: var(--bs-primary);
    }
    #_desktop_ps_shoppingcart .header-block__icon {
        font-size: 1.25rem;
    }
    #_desktop_ps_shoppingcart .header-block__title {
        display: none !important;
    }
    #_desktop_ps_shoppingcart .header-block__badge {
        position: absolute;
        top: -4px;
        right: -4px;
        height: 1.1rem;
        min-width: 1.1rem;
        font-size: 0.625rem;
        background: var(--bs-primary);
        color: var(--bs-light);
    }
}
@media (min-width: 768px) and (max-width: 991px) {
    /* tight space: sign in collapses to a gradient circle */
    #_desktop_ps_customersignin .header-block__action-btn {
        width: 2.5rem;
        height: 2.5rem;
        padding: 0;
        justify-content: center;
    }
}

#header .header-bottom #wishlist-link {
    color:var(--bs-dark);
}
#header .header-bottom #wishlist-link:hover .link-item {
    border-color: var(--bs-primary);
}
#header .header-bottom #wishlist-link .link-item {
    position:relative;
    display:grid;
    place-items: center;
    width: 2.5rem;
    height: 2.5rem;
    border: 1px solid #ebebeb;
    border-radius: 50%;
    padding: 0;
    transition: border-color 0.2s ease;
}
#header .header-bottom #wishlist-link .link-item .link-item-text {
    display: flex;
    flex-direction: column;
    color: var(--bs-primary);
    font-weight: bold;
    font-size: var(--bs-body-font-size-x-sm);
}
#header .header-bottom #wishlist-link .link-item .content {
  display:none;
}
#header #wishlist-link svg {
    width:auto;
    height:20px;
}
#header .cart-summary__value {
    font-size: var(--bs-body-font-size-x-sm);
    font-weight: 700;
    margin-left: 15px;
}
.header-block__action-btn {
    color: var(--bs-dark);
    border: 0;
    background: none;
    cursor: pointer;
}
.header-bottom__container {
    display: flex;
    flex-direction: column;
}
#header #wishlist-link .material-icons {
    color: var(--bs-primary);
    font-size: 18px;
}
#header #wishlist-link .header-block__badge {
    display:none;
}
@media (min-width: 1200px) {
    #header .header-bottom {
        padding: 20px 20px;
    }
}
@media (min-width: 768px) {
    #header.js-sticky-header {
        position: relative;
        top: auto;
        transform: none;
    }
    .header-bottom__logo {
        display:none;
    }
}
@media (max-width: 991px) {
    #header .header-bottom #wishlist-link .link-item .link-item-text {
        display:none;
    }
    #header .header-bottom #wishlist-link .link-item {
        gap: 0px;
    }
    #header #wishlist-link .header-block__badge {
        display:flex;
        top: -2px;
    }
}
@media (max-width: 1399px) {
    #header .header-bottom__row .right {
        gap: 5px;
    }
    #header .header-bottom #wishlist-link .link-item .link-item-text {
        font-size: var(--bs-body-font-size-s-sm);
    }
}
@media (min-width: 768px) and (max-width:1199px) {
    #header .header-bottom {
        padding: 12px 15px;
    }
    #header .header-bottom .navbar-brand .logo {
        height: 40px;
    }
    #header .header-bottom__row {
        flex-wrap:nowrap;
        position: relative;
    }
    #ps_searchbar {
        width:80%;
    }
    #header .header-bottom__row .middle {
        width:60%;
        justify-content: start;
    }
    #header .header-bottom .right {
        padding:0px;
    }
    #header:has(.ybc-menu-toggle.opened) .header-bottom {
        z-index: 1;
    }
}
@media (max-width:1199px) {
    #header .header-bottom__row .middle {
        order: 0;
        padding: 0;
    }
    #header .header-bottom .right {
        display:none;
    }
}
@media (max-width:767px) {
    #_desktop_ps_contactinfo,
    #_desktop_ps_customersignin,
    #_desktop_ps_shoppingcart {
        display:none !important;
    }
    #header .header-block__icon {
        font-size: 1.5rem;
    }
    /* menu toggle | logo (centered on the page) | wishlist + search */
    #header .header-bottom__row .header-bottom__logo {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
    }
    #header .header-bottom__row .middle {
        width: auto;
    }
    #header .header-bottom .right {
        display: flex;
    }
    #header .header-bottom .right > #_mobile_ps_customersignin,
    #header .header-bottom .right > #_mobile_ps_shoppingcart {
        display: none !important;
    }
    #header .header-bottom {
        z-index:1;
    }
    #header:has(.ps-searchbar__offcanvas.show, .ps-searchbar__offcanvas.showing) .header-bottom {
        z-index: 1050;
    }
    #header .header-bottom__row {
        flex-wrap: nowrap;
        position:relative;
        min-height: 50px;
    }
    #header .header-bottom .header-bottom__logo .logo {
        height: 30px;
    }
    #header .cart-summary__value {
        display: none;
    }
    #header .header-bottom__row .right {
        gap:4px;
        padding:0;
    }
    /* plain icons (no circles) */
    #header .header-bottom #wishlist-link .link-item {
        width: 1.55rem;
        height: 1.55rem;
        border: 0;
    }
    #header .ps-searchbar--mobile-clone .header-block__action-btn {
        display: grid;
        place-items: center;
        width: 1.35rem;
        height: 1.35rem;
        padding: 0;
        fill: var(--bs-primary);
    }
    #header .ps-searchbar--mobile-clone svg {
        width: 18px;
        height: 18px;
    }

    .ets_mm_megamenu.hook-default {
        margin-top: 0px;
        padding: 0;
    }
    #header .layout_layout1 .ets_mm_megamenu_content {
        border:0;
    }
    #header .header-bottom__row .middle {
        justify-content:start;
    }
    #header #wishlist-link .material-icons {
        font-size: 21px;
    }
}
@media (max-width: 440px) {
    #header .header-bottom__row .right {
        gap: 4px;
    }
    #header #wishlist-link .material-icons {
        font-size: 20px;
    }
    .header-block__action-btn svg {
        height: 16px;
        width: auto;
    }
}
/**********/

/* MENU */
#header .header-bottom-menu .menu-content {
    display: flex;
}
#header .ets_mm_megamenu_content {
    background: var(--bs-primary);
}
.layout_layout1 .ets_mm_megamenu_content {
    border-bottom: 0px solid var(--bs-light);
    border-top: 0px solid var(--bs-light);
}
#header .layout_layout1 .mm_menus_li {
    border:0px;
}
.layout_layout1 .ets_mm_block_content ul li a::before {
    content:none;
}
#header .layout_layout1:not(.ybc_vertical_menu):not(.click_open_submenu) .mm_menus_li:hover > a {
    background:none !important;
}
#header .layout_layout1:not(.click_open_submenu) .mm_menus_li:hover > a:before {
    opacity:0;
}
.ybc-menu-toggle {
    color:var(--bs-black);
}
.ybc-menu-toggle .icon-bar {
    background:var(--bs-black);
}
.ets_mm_block > .h4 {
    border-bottom: 0;
    display: block;
}
#header .ets_mm_megamenu_content_content .mm_menus_ul {
    width: auto;
}
#header .ets_mm_megamenu_content_content .mm_menus_li:after {
    width:50px;
}
@media (min-width: 1200px) {
    #header .mm_menu_content_title {
        min-height: 25px;
        margin-block: 5px;
    }
}
@media (min-width: 1200px) and (max-width:1399px) {
    .mm_menu_content_title {
        padding: 0 10px;
    }
}
@media (min-width: 768px) and (max-width:1199px) {
    .ybc-menu-toggle {
        color: var(--bs-light);
    }
    .ybc-menu-toggle .icon-bar {
        background: var(--bs-light);
    }
}
@media (max-width:1199px) {
    /* the module's toggle stays here (the panel is its next sibling and its
       :before is the backdrop) but takes no space: .header-menu-toggle in the
       header left column clicks it */
    #header .ets_mm_megamenu .ybc-menu-toggle {
        display: block;
        position: absolute;
        width: 0;
        height: 0;
        padding: 0;
        overflow: visible;
        font-size: 0;
    }
    #header .ets_mm_megamenu .ybc-menu-toggle > * {
        display: none;
    }
    /* the menu bar is left empty (list lives in the slide-out panel) */
    #header .header-bottom-menu,
    #header .ets_mm_megamenu_content,
    #header .ets_mm_megamenu .container {
        background: none;
        border: 0;
        min-height: 0;
    }
    #header .ets_mm_megamenu.hook-default {
        margin: 0;
        padding: 0;
    }
    #header .scroll_heading .ets_mm_megamenu_content {
        box-shadow: none;
    }
    #header .header-bottom__row .left {
        align-items: center;
        gap: 12px;
    }
}

/* tablet menu button (header left, before the logo) */
.header-menu-toggle {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 4px;
    flex: 0 0 auto;
    width: 2.5rem;
    height: 2.5rem;
    padding: 0;
    border: 1px solid #ebebeb;
    border-radius: 50%;
    background: none;
    cursor: pointer;
    transition: border-color 0.2s ease;
}
.header-menu-toggle:hover,
.header-menu-toggle[aria-expanded="true"] {
    border-color: var(--bs-primary);
}
.header-menu-toggle__bar {
    display: block;
    width: 18px;
    height: 2px;
    border-radius: 1px;
    background: var(--bs-primary);
}
/* mobile: bars + "MENU" label, no circle */
@media (max-width: 767px) {
    .header-menu-toggle {
        width: auto;
        height: auto;
        gap: 3px;
        padding: 4px 0;
        border: 0;
        border-radius: 0;
    }
    .header-menu-toggle__label {
        margin-top: 1px;
        font-size: 9px;
        font-weight: 700;
        line-height: 1;
        letter-spacing: 0.05em;
        text-transform: uppercase;
        color: var(--bs-primary);
    }
}
@media (max-width: 767px) {
    .ets_mm_megamenu .container {
        background-color: transparent;
    }
    #header .ybc-menu-toggle {
        color: var(--bs-light);
    }
    #header .ybc-menu-toggle .icon-bar {
        background: var(--bs-light);
    }
}

/* MOBILE MENU PANEL */
/* .mm_menu_panel wraps close bar + menu list (see ets_megamenu menu-html.tpl
   override). On desktop it has no box of its own. Below 1200px it becomes the
   floating slide-out panel instead of .mm_menus_ul, opened via the toggle's
   "opened" class (toggle is its previous sibling). On tablet the menu is also
   forced into the module's collapsed "changestatus" mode (see custom.js). */
.mm_menu_panel {
    display: contents;
}
.menu_bottom {
    display: none;
}
@media (max-width: 1199px) {
    .ets_mm_megamenu .mm_menu_panel {
        display: flex;
        flex-direction: column;
        position: fixed;
        top: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        max-width: 280px;
        z-index: 10001;
        background: var(--bs-white);
        opacity: 0.6;
        transform: translateX(-100%);
        transition: all 0.35s ease 0s;
        visibility: hidden;
    }
    .ets_mm_megamenu .ybc-menu-toggle.opened + .mm_menu_panel {
        opacity: 1;
        transform: translateX(0);
        visibility: visible;
    }
    .ets_mm_megamenu .mm_menu_panel .close_menu {
        flex: 0 0 auto;
        padding: 10px 15px;
    }
    .ets_mm_megamenu .mm_menu_panel .mm_menus_ul {
        flex: 1 1 auto;
        min-height: 0;
        overflow-y: auto;
        position: relative;
        top: auto;
        bottom: auto;
        left: auto;
        max-width: none;
        z-index: auto;
        opacity: 1;
        transform: none;
        transition: none;
        visibility: visible;
    }
}

/*******/

/* PRODUCT MINIATURES */
:root {
    --bs-miniature-title-lines: 2;
}

.product__reference {
    display: flex;
    align-items: center;
    font-size: var(--bs-body-font-size-x-sm);
}
.product-miniature__infos {
    gap: 0rem;
}
.product-miniature__title {
    font-weight:bold;
    height: calc(var(--bs-miniature-title-lines) * var(--bs-body-font-size) * var(--bs-body-line-height));
    overflow: hidden;
}
.product-miniature__prices {
    gap: 0.5rem;
}
.product-miniature__price {
    font-weight: 900;
    font-size: 28px;
}
.product-miniature__discount-price {
    font-size: 22px;
}
.product-miniature__add,
.product-miniature__details {
    width: 100%;
    border-radius: var(--bs-border-radius-lg);
}
.product-miniature__add svg {
    width: 20px;
    height: 24px;
}
.product-miniature__add-text {
    display: inline !important;
}
.product-miniature {
    border: 1px solid var(--bs-gray-300);
    border-radius: var(--bs-border-radius-lg);
}
.product-miniature__bottom .product__availability-status {
    display:flex;
    font-size: var(--bs-body-font-size-x-sm);
    align-items: center;
    font-weight:bold;
    min-height: 40px;
    gap: 3px;
}
.product-miniature__infos-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap:0.3rem;
}
.product-miniature__bottom .product__availability-status .material-icons {
    font-size: 18px;
}
.product-flags .badge.discount {
    background-color: var(--bs-supplementary-color);
    border: 1px solid var(--bs-supplementary-color);
    color: var(--bs-light);
}
.product-flags .badge:not(.discount).out_of_stock {
    border: 1px solid RGBA(var(--bs-danger-rgb));
}
.product-flags .badge:not(.discount).out_of_stock {
    background-color: RGBA(var(--bs-danger-rgb));
}
.product-miniature__top {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}
.product-miniature__bottom {
    padding: 1rem;
}
@media (max-width: 767px) {
    .product-miniature__add-text,
    .product-miniature__details {
        font-size: var(--bs-body-font-size-x-sm);
    }
}
@media (min-width: 1200px) {
    .layout-left-column .products {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 1rem;
    }
}
.product-miniature__top {
    overflow: hidden;
    border-radius: var(--bs-border-radius-lg) var(--bs-border-radius-lg) 0 0;
    isolation: isolate;
}
.product-miniature__image-container {
    overflow: hidden;
}
@media (hover: hover) and (pointer: fine) and (min-width: 992px) {
    .product-miniature__image {
        transform: scale(1);
        transform-origin: center;
        transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
        will-change: transform;
    }
    .product-miniature__inner:hover .product-miniature__image {
        transform: scale(1.08);
    }
}
/* second image on hover: hidden (and not lazy-loaded) on touch devices */
.product-miniature__image-container {
    isolation: isolate;
}
.product-miniature__image-hover {
    display: none;
}
@media (hover: hover) and (pointer: fine) {
    .product-miniature__image-hover {
        display: block;
        position: absolute;
        inset: 0;
        z-index: 1;
        overflow: hidden;
        background-color: var(--bs-body-bg);
        opacity: 0;
        clip-path: inset(0 0 0 100%);
        pointer-events: none;
        transition:
            opacity 0.45s ease,
            clip-path 0.7s cubic-bezier(0.22, 1, 0.36, 1);
    }
    .product-miniature__image-hover img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transform: scale(1.18);
        transform-origin: center;
        transition: transform 0.8s cubic-bezier(0.22, 1, 0.36, 1);
    }
    .product-miniature__inner:hover .product-miniature__image-hover {
        opacity: 1;
        clip-path: inset(0 0 0 0);
    }
    .product-miniature__inner:hover .product-miniature__image-hover img {
        transform: scale(1.08);
    }
}
@media (prefers-reduced-motion: reduce) {
    .product-miniature__image,
    .product-miniature__image-hover,
    .product-miniature__image-hover img {
        transition: none !important;
    }
}
@media (hover: hover) {
    .product-miniature:hover {
        border: 1px solid var(--bs-gray-500);
    }
}
/**********************/

/* CATEGORIES */
.page-category,
.page-category .breadcrumb__wrapper {
    background-color: #f4f4f8;
}
/**************/

/* SEARCH */
#_desktop_ps_searchbar #ps_searchbar {
    color: var(--bs-light);
    border: 1px solid #dddddd;
    border-radius: 25px;
    background-color: var(--bs-primary-light);
    transition: 0.3s;
    display: flex;
    align-items: center;
    gap: 20px;
    min-width: 40%;
}
#_desktop_ps_searchbar #ps_searchbar .form-control,
#_mobile_ps_searchbar #ps_searchbar .form-control {
    border:none;
}
#_desktop_ps_searchbar #ps_searchbar form input {
    background-color: #eeeeee;
    font-size: var(--bs-body-font-size-x-m);
    color: var(--bs-primary);
    border-radius: 25px;
}
#_desktop_ps_searchbar #ps_searchbar form input::placeholder {
  color:var(--bs-primary);
  opacity:0.7;
}
#_desktop_ps_searchbar #ps_searchbar form .icon-container,
#_mobile_ps_searchbar #ps_searchbar form .icon-container {
    position: absolute;
    fill: var(--bs-white);
    background: var(--bs-secondary);
    right: 10px;
    top: 4px;
    border-radius: 50%;
}
#_mobile_ps_searchbar #ps_searchbar form .icon-container {
    top: 1px;
}
#_desktop_ps_searchbar #ps_searchbar form svg {
    fill: var(--bs-light);
    width: auto;
    height: 35px;
    padding: 10px;
}
#_mobile_ps_searchbar #ps_searchbar form svg {
    height: 26px;
    padding: 7px;
}
#_desktop_ps_searchbar .ps-searchbar__clear,
#_mobile_ps_searchbar .ps-searchbar__clear {
    right: 4rem;
}
#_desktop_ps_searchbar #ps_searchbar form .ps-searchbar__clear i {
    color: var(--bs-primary);
    background: none;
    border-radius: 0;
    width: 23px;
    height: 23px;
    padding: 0px;
}
#_mobile_ps_searchbar #ps_searchbar form .ps-searchbar__clear i {
    color: var(--bs-dark);
}
#_desktop_ps_searchbar #ps_searchbar form .ps-searchbar__clear:hover,
#_mobile_ps_searchbar #ps_searchbar form .ps-searchbar__clear:hover {
    background:none;
}
#_desktop_ps_searchbar #ps_searchbar form .ps-searchbar__clear,
#_mobile_ps_searchbar #ps_searchbar form .ps-searchbar__clear {
    border:none;
}
#header #_desktop_ps_searchbar {
    justify-content: center;
}
#header #_desktop_ps_searchbar,
#header #ps_searchbar .ps-searchbar__form {
    width:100%;
}
#header #ps_searchbar {
    width:100%;
}
.header-search-collapse {
    display: none;
    position: absolute;
    top: 100%;
    right: 0;
    width: 320px;
    max-width: 90vw;
    padding: 10px;
    background: var(--bs-white);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
    border-radius: var(--bs-border-radius-lg);
    z-index: 1001;
}
.header-search-collapse.show {
    display: block;
}
.header-search-collapse #_desktop_ps_searchbar #ps_searchbar {
    min-width: 100%;
}
#_mobile_ps_searchbar #ps_searchbar {
    min-width: 100%;
}
.form-control:focus {
    box-shadow: none;
}
.ps-searchbar__dropdown {
    max-width: 100%;
}
.ps-searchbar__input {
    padding-block: 0.6rem;
    padding-inline: 1.5rem;
}
@media (max-width: 991px) {
    .ps-searchbar__input {
        padding-inline: 3rem 2rem;
    }
}
@media (max-width:767px) {
    #_mobile_ps_searchbar #ps_searchbar {
        border-radius: 25px;
        transition: 0.3s;
        display: flex;
        align-items: center;
        gap: 20px;
        min-width: 40%;
        background-color: var(--bs-light);
        border: 1px solid var(--bs-primary);
    }
    #_mobile_ps_searchbar #ps_searchbar form input::placeholder {
        color:var(--bs-dark);
        opacity:0.7;
    }
    #_mobile_ps_searchbar #ps_searchbar form input {
        background-color: transparent !important;
        font-size: var(--bs-body-font-size-x-m);
        color: var(--bs-dark);
    }
    .ps-searchbar__input {
        padding-block: 0.2rem;
        padding-inline: 2rem 2rem;
    }
    .ps-searchbar {
        margin-block: 0.3rem;
    }

    /* full page search (offcanvas opened by the header search icon): white
       backdrop over the page, results listed in the page under the field */
    .ps-searchbar__offcanvas .offcanvas-header {
        padding: 0.5rem 15px;
    }
    /* Bootstrap appends the backdrop to the offcanvas' parent */
    .header-bottom__container > .offcanvas-backdrop {
        background-color: var(--bs-white);
    }
    .header-bottom__container > .offcanvas-backdrop.show {
        opacity: 1;
    }
    .ps-searchbar__offcanvas .ps-searchbar__close {
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0 0 0 0.5rem !important;
        color: var(--bs-dark);
        text-decoration: none;
    }
    .ps-searchbar__offcanvas .ps-searchbar__close i {
        font-size: 1.75rem;
    }
    #_mobile_ps_searchbar .ps-searchbar__dropdown {
        top: 100%;
        left: 0;
        right: 0;
        width: 100%;
        max-width: none;
        height: calc(100dvh - 100%);
        border: 0;
        border-top: 1px solid var(--bs-border-color);
        border-radius: 0;
        box-shadow: none;
        background-color: var(--bs-white);
    }
    #_mobile_ps_searchbar .ps-searchbar__results {
        max-height: 100%;
        height: 100%;
        overflow-y: auto;
        padding: 1rem 15px;
        gap: 0.75rem;
        align-content: start;
    }
    #_mobile_ps_searchbar .ps-searchbar__result-link {
        border-bottom: 1px solid var(--bs-border-color);
        border-radius: 0;
        padding-bottom: 0.75rem;
    }
    #_mobile_ps_searchbar .ps-searchbar__result-link:last-child {
        border-bottom: 0;
    }

    #header .header-bottom__row-search {
        width: 100%;
        position: relative;
    }
    #header .header-bottom__row-search #_mobile_ps_searchbar,
    #header .header-bottom__row-search #ps_searchbar {
        width: 100%;
    }
    #header .header-bottom__row-search .ps-searchbar__dropdown {
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        width: 100%;
        z-index: 1002;
        background-color: var(--bs-white);
        box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
        border-radius: var(--bs-border-radius-lg);
    }
    .offcanvas-header #ps_searchbar .icon-container {
        DISPLAY:NONE;
    }
}
@media (min-width: 1200px) and (max-width: 1399px) {
    #header #ps_searchbar {
        width:60%;
    }
}
@media (max-width:1199px) and (min-width: 768px) {
    .header-search-collapse {
        max-width: 270px;
    }
}
/**********/

/* CUSTOMER SIGN-IN */
.ps-customersignin .header-block__text {
    display: flex;
    flex-direction: column;
    font-weight: bold;
    font-size: var(--bs-body-font-size-x-sm);
}
.ps-customersignin svg {
    width:auto;
    height:18px;
}
#_mobile_ps_customersignin .header-block__action-btn svg {
    width: auto;
}
.ps-customersignin .header-block__action-btn {
    color: var(--bs-primary);
}
@media (max-width: 991px) {
    .ps-customersignin .header-block__text {
        display:none;
    }
}
@media (max-width: 1199px) {
    .ps-customersignin .header-block__title {
        display:none;
    }
}
@media (max-width: 1399px) {
    .ps-customersignin svg {
        height: 25px;
    }
    .ps-customersignin .header-block__text {
        font-size: var(--bs-body-font-size-s-sm);
    }
}
@media (min-width: 768px) {
    .ps-customersignin .header-block__action-btn {
        padding: 0.0rem 0rem;
        margin-block: 0.15rem;
        line-height: 1;
    }
    .ps-customersignin svg {
        fill:var(--bs-white);
    }
}
@media (max-width: 767px) {
    #header .header-bottom .ps-customersignin {
        display:none;
    }
}
@media (max-width: 440px) {
    .ps-customersignin svg {
        height: 20px;
    }
}
/********************/ 

/* FILTERS */
.ps-facetedsearch .accordion-header {
    padding-right: 1.5rem;
}
.noUi-handle {
    background: var(--bs-secondary);
}
.ps-facetedsearch .form-check-input {
    border-color: var(--bs-secondary);
}
.ps-facetedsearch .form-check-input:checked {
    background-color: var(--bs-primary);
}
.ps-facetedsearch .accordion .accordion-item .search-filters__form-label,
.search-filters__slider-values {
    font-size: var(--bs-body-font-size-x-m);
}
.products__selection .products__sort-dropdown {
    position:relative;
}
.products__selection .products__sort-dropdown .dropdown-menu {
    width: 100%;
}
#category #search-filters .accordion-collapse {
    display: block !important;
}
#category #search-filters .accordion-button {
    pointer-events: none;
}
#category #search-filters .accordion-button::after {
    display: none;
}
#category #search-filters .search-filters__magnitude {
    visibility:hidden;
}
/* 768px+: filters sit in the left column (below that they move to the offcanvas) */
@media (min-width: 768px) {
    .page-category #search-filters {
        background: #fff;
        border: 1px solid #13235014;
        padding: 1.5rem 1.25rem;
        box-shadow: 0 18px 50px -34px #13235038;
        border-radius: var(--bs-border-radius-lg);
    }
}
@media (max-width: 1299px) {
    .ps-facetedsearch .accordion .accordion-item > button {
        font-size: var(--bs-body-font-size-x-m);
    }
    .ps-facetedsearch .accordion .accordion-item .search-filters__form-label {
        font-size: var(--bs-body-font-size-x-sm);
    }
    .search-filters__slider-values {
        font-size: var(--bs-body-font-size-x-sm);
    }
}
/***********/

/* SUBCATEGORY */
.subcategory__link:hover {
    background-color: var(--bs-link-hover-color);
    color: var(--bs-light);
}
.subcategory__link,
.products__selection,
.products__sort-dropdown-button,
.products__sort-dropdown .dropdown-item {
    font-size: var(--bs-body-font-size-x-m);
}
.products__sort-dropdown .dropdown-item {
    text-wrap: wrap;
}
@media (max-width:1199px) {
    .subcategory__link,
    .products__selection,
    .products__sort-dropdown-button,
    .products__sort-dropdown .dropdown-item {
        font-size: var(--bs-body-font-size-x-sm);
    }
}
/***************/

/* PRODUCTS TOP (sort bar + grid/list view) */
.products__view {
    display: none;
}
@media (min-width: 768px) {
    #js-product-list-top {
        position: sticky;
        top: 1rem;
        z-index: 30;
    }
    #js-product-list-top .products__selection {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: space-between;
        gap: 1rem;
        margin-bottom: 2rem;
        padding: 0.75rem 1.25rem;
        background: rgba(255, 255, 255, 0.85);
        -webkit-backdrop-filter: blur(12px);
        backdrop-filter: blur(12px);
        border: 1px solid rgba(var(--bs-primary-rgb), 0.1);
        border-radius: 1rem;
        box-shadow: 0 8px 28px -12px rgba(var(--bs-primary-rgb), 0.12);
    }
    /* order: sort | count | view */
    #js-product-list-top .products__sort {
        order: 1;
        flex-wrap: nowrap;
        gap: 0.75rem;
    }
    #js-product-list-top .products__count {
        order: 2;
        font-size: var(--bs-body-font-size-x-sm);
        color: rgba(var(--bs-primary-rgb), 0.6);
    }
    /* small uppercase labels */
    #js-product-list-top .products__sort-label,
    #js-product-list-top .products__view-label {
        font-size: 10px;
        font-weight: 700;
        letter-spacing: 0.22em;
        text-transform: uppercase;
        color: rgba(var(--bs-primary-rgb), 0.55);
    }
    /* sort dropdown as plain text + caret */
    #js-product-list-top .products__sort-dropdown {
        flex-grow: 0;
    }
    #js-product-list-top .products__sort-dropdown-button {
        gap: 0.5rem;
        width: auto;
        padding: 0.375rem 0.75rem;
        border: 0;
        border-radius: 50rem;
        background: transparent;
        color: var(--bs-primary);
        font-size: var(--bs-body-font-size-x-sm);
        font-weight: 600;
    }
    #js-product-list-top .products__sort-dropdown-button:hover,
    #js-product-list-top .products__sort-dropdown-button[aria-expanded="true"] {
        background: rgba(var(--bs-primary-rgb), 0.04);
    }
    #js-product-list-top .products__sort-dropdown .dropdown-menu {
        min-width: 350px;
        border: 1px solid rgba(var(--bs-primary-rgb), 0.1);
        border-radius: var(--bs-border-radius-lg);
        box-shadow: 0 18px 50px -20px rgba(var(--bs-primary-rgb), 0.3);
        font-size: var(--bs-body-font-size-x-sm);
    }
}
@media (min-width: 768px) and (max-width: 1199px) {
    #js-product-list-top .products__sort-dropdown .dropdown-menu {
        min-width: 280px;
    }
}
/* grid / list switch: desktop only */
@media (min-width: 1200px) {
    #js-product-list-top .products__view {
        order: 3;
        display: flex;
        align-items: center;
        gap: 0.75rem;
    }
    /* grid / list pill switch */
    .products__view-toggle {
        display: flex;
        align-items: center;
        gap: 0.25rem;
        padding: 0.25rem;
        background: rgba(var(--bs-primary-rgb), 0.04);
        border-radius: 50rem;
    }
    .products__view-btn {
        display: inline-flex;
        align-items: center;
        gap: 0.375rem;
        padding: 0.375rem 0.875rem;
        border: 0;
        border-radius: 50rem;
        background: transparent;
        color: rgba(var(--bs-primary-rgb), 0.6);
        font-size: var(--bs-body-font-size-s-sm);
        font-weight: 600;
        line-height: 1.2;
        cursor: pointer;
        transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
    }
    .products__view-btn svg {
        width: 14px;
        height: 14px;
    }
    .products__view-btn:hover {
        color: var(--bs-primary);
        background: rgba(var(--bs-primary-rgb), 0.06);
    }
    /* active state follows the #products class, so it survives ajax refreshes */
    #products:not(.products--list) .products__view-btn[data-view="grid"],
    #products.products--list .products__view-btn[data-view="list"] {
        background: var(--bs-gradient-horizon);
        color: var(--bs-white);
        box-shadow: 0 6px 16px -8px rgba(var(--bs-primary-rgb), 0.5);
    }
    /* list view */
    #products.products--list .products {
        grid-template-columns: minmax(0, 1fr);
        gap: 1rem;
    }
    #products.products--list .product-miniature__inner {
        flex-direction: row;
    }
    #products.products--list .product-miniature__top {
        flex: 0 0 240px;
        border-radius: var(--bs-border-radius-lg) 0 0 var(--bs-border-radius-lg);
    }
    #products.products--list .product-miniature__bottom {
        flex-direction: row;
        align-items: center;
        gap: 2rem;
        padding: 1.25rem 1.5rem;
    }
    #products.products--list .product-miniature__infos {
        flex: 1 1 auto;
        min-width: 0;
        gap: 0.5rem;
    }
    #products.products--list .product-miniature__infos .product-miniature__infos-top {
        align-items: flex-start;
        flex-direction: column-reverse;
    }
    #products.products--list .product-miniature__title {
        height: auto;
        font-size: 1.125rem;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        line-clamp: 2;
        -webkit-box-orient: vertical;
    }
    #products.products--list .product-miniature__actions {
        flex: 0 0 220px;
        margin-top: 0;
    }
}
/*********************************************/

/* WISHLIST */
.products article .wishlist-button-add {
    display:none;
}
@media (max-width: 767px) {
    #header #wishlist-link .header-block__badge {
        right: -6px;
    }
    #header #wishlist-link {
        padding: 0.2rem 0.4rem;
    }
}
@media (min-width: 768px) and (max-width: 1199px) {
    #header .header-bottom #wishlist-link {
        display:none;
    }
}
/************/

/* PRODUCT PAGE */
.page-product .product__cover-link img {
    max-height: 650px;
    object-fit: contain;
    border: 1px solid var(--bs-gray-300);
    border-radius: var(--bs-border-radius-lg);
}
.page-product .carousel-control-next-icon,
.page-product .carousel-control-prev-icon {
    border-radius: 50%;
}
.page-product .details__list {
    background-color: transparent;
}
.page-product .product__prices {
    margin-block-start: 1rem;
}
.page-product .product__price {
    font-size: 2rem;
    font-weight: 900;
}
.page-product #notifications .btn-close {
    filter: brightness(0) invert(1);
}
.page-product .product__thumbnails .focus-ring:focus {
    box-shadow: none;
}
.page-product .product__thumbnails-list {
    -webkit-user-select: none;
    user-select: none;
}
.page-product .product__thumbnail {
    display: block;
    width: 100%;
}
.page-product .product__thumbnail-image {
    -webkit-user-drag: none;
}
.page-product .product__thumbnails-list {
    display: flex;
    flex-wrap: nowrap;
    gap: 0.75rem;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: thin;
    cursor: grab;
}
.page-product .product__thumbnails-list.js-thumbs-dragging {
    cursor: grabbing;
    scroll-behavior: auto;
}
.page-product .product__thumbnails-item {
    flex: 0 0 calc(25% - 0.5625rem);
}
.product__right .product__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.page-product .product__header-left {
  flex: 1 1 auto;
  min-width: 0;
}
.page-product .product__header .detail__right {
  flex: 0 0 auto;
}
.page-product .product__category {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 0.75rem;
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--bs-supplementary-color);
  text-decoration: none;
}
.page-product .product__category::before {
  content: "";
  width: 2rem;
  height: 1px;
  background-color: currentColor;
}
.page-product .product__category:hover {
  opacity: 0.75;
}
.product__right .product__header .detail__right img {
  max-width: 70px;
}
@media (max-width:440px) {
  .page-product .product__header-left {
    width: 100%;
  }
}
@media (min-width: 992px) {
    .page-product .product__thumbnails-item {
        flex: 0 0 calc(20% - 0.6rem);
    }
}
/************************************/

/* PRODUCT PAGE - IMAGES LIGHTBOX (Fancybox) */
.page-product .product__cover-link {
    display: block;
    cursor: zoom-in;
}
/* "html" prefix: fancybox.css loads after this file and resets these vars */
html .fancybox__container {
    --fancybox-zIndex: 11000;
    --fancybox-color: #000;
    --fancybox-hover-color: #000;
    --fancybox-bg: #fff;
    --f-spinner-color-1: rgba(0, 0, 0, 0.1);
    --f-spinner-color-2: #bbb;
    color: #000;
}
.fancybox__container .fancybox__toolbar {
    --f-button-bg: #fff;
    --f-button-svg-filter: none;
    text-shadow: none;
}
.fancybox__container .is-modern .f-thumbs__slide {
    width: auto;
    transform: none !important;
}
.fancybox__container .is-modern .f-thumbs__slide__button {
    clip-path: none !important;
    --clip-path: none !important;
    border: 1px solid #000;
    border-radius: 5px;
}
.fancybox__container .is-modern.is-resting .f-thumbs__slide__button {
    transition: clip-path .33s ease;
}
.fancybox__container .is-nav-selected .f-thumbs__slide__button {
    border-color: var(--bs-primary);
}
.fancybox__container .f-thumbs__slide__img {
    padding: 5px;
    background: #fff;
}
/**********************************************/

/* PRODUCT PAGE - TABS (description / details / data sheet, under add to cart) */
.page-product .product__tabs {
    margin-top: 2.5rem;
}
.page-product .product__tabs-nav {
    flex-wrap: nowrap;
    gap: 2.5rem;
    margin: 0 0 1.5rem;
    padding: 0;
    border-bottom: 1px solid #e1e1e1;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
}
.page-product .product__tabs-nav::-webkit-scrollbar {
    display: none;
}
.page-product .product__tabs-link {
    padding: 0 0 .25rem;
    border: 0;
    border-bottom: 5px solid transparent;
    border-radius: 0;
    background: none;
    color: #a1a1a1;
    font-weight: 700;
    white-space: nowrap;
    transition: color .2s, border-color .2s;
}
.page-product .product__tabs-link:hover,
.page-product .product__tabs-link:focus {
    color: var(--bs-primary);
}
.page-product .product__tabs-link.active {
    color: var(--bs-primary);
    border-bottom-color: var(--bs-primary);
}
.page-product .product__tab-pane {
    display: none;
    color: #707070;
    font-size: .875rem;
}
.page-product .product__tab-pane.active {
    display: block;
}
.page-product .product__tab-pane:focus-visible {
    outline: none;
}
/* Only the reassurance block is left at the bottom -> full width */
@media (min-width: 992px) {
    .page-product .product__bottom {
        grid-template-columns: minmax(0, 1fr);
    }
}
@media (max-width: 1199px) {
    .page-product .product__tabs-nav {
        gap: 1.5rem;
    }
}
@media (max-width: 767px) {
    .page-product .product__tabs {
        margin-top: 2rem;
    }
    .page-product .product__tabs-nav {
        gap: 1rem;
        margin-bottom: 1rem;
    }
    .page-product .product__tabs-link {
        padding-bottom: .125rem;
        border-bottom-width: 4px;
        font-size: .9375rem;
    }
}
/******************************/

/* SHOPPING CART */
.ps-shoppingcart .header-block__action-btn svg,
.page-product .product__add-to-cart svg {
    width:auto;
    height:18px;
}
/*****************/

/* ELEMENTOR */
.layout-full-width .products.elementor-element {
    grid-template-columns: repeat(1, minmax(0, 1fr));
}
.nd-hero-slider .nd-hero-swiper,
.elementor-element-1fad5ab > .elementor-column-wrap,
.elementor-element-116441d .elementor-column-wrap,
.elementor-element-3b01a23 > .elementor-column-wrap,
.elementor-element-1fad5ab .elementor-background-overlay  {
    border-radius: 20px;
}
.elementor-element-71600a2 > .elementor-column-wrap {
    border-radius: 20px;
}
.product-slider-section .elementor-top-column > .elementor-column-wrap {
    background: linear-gradient(165deg, #f7f9fc 0%, #eef3f9 55%, #e6eef7 100%);
}
.elementor-column-wrap:has(.hover-icon) .hover-icon {
    opacity: 0;
    visibility: hidden;
    transform: translateY(15px);
    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s ease;
}
.elementor-column-wrap:has(.hover-icon):hover .hover-icon {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
.custom-gd .elementor-background-overlay,
.custom-gd .nd-cat-slider-card-overlay {
    background: linear-gradient(15deg, rgba(15,30,66,.94) 0%, rgba(30,74,102,.60) 36%, rgba(58,122,140,.14) 66%, rgba(58,122,140,0) 100%) !important;
}
.bg-zoom {
    overflow: hidden;
    border-radius: 20px;
}
.bg-zoom .elementor-column-wrap {
    transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
.bg-zoom:hover .elementor-column-wrap {
    transform: scale(1.05);
}
.bg-zoom .elementor-widget-wrap {
    transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
.bg-zoom:hover .elementor-widget-wrap {
    transform: scale(0.95238);
}
.custom-underline .nd-cat-slider-card-content .nd-cat-slider-card-title {
  display: inline-block;
  position: relative;
}
.custom-underline .nd-cat-slider-card-content .nd-cat-slider-card-title::after  {
  content: '';
  position: absolute;
  left: 0;
  bottom: -4px;
  width: 50px;
  height: 2px;
  background-color: currentColor;
  transform: scaleX(0.6);
  transform-origin: left;
  transition: transform 0.3s ease-in-out;
}
.custom-underline:hover .nd-cat-slider-card-content .nd-cat-slider-card-title::after {
  transform: scaleX(1);
}

/* OPENING HOURS DROPDOWN (CE button with class "ek-hours" + HTML widget with ul.ek-hours-menu) */
.ek-hours {
    position: relative;
    z-index: 1001;
}
.ek-hours .elementor-widget-container {
    position: relative;
}
.ek-hours-menu {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 240px;
    width: max-content;
    margin: 1px 0 0;
    padding: 0;
    list-style: none;
    background: var(--bs-primary);
    border-radius: 6px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, .25);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-6px);
    transition: opacity .2s, transform .2s, visibility .2s;
}
.ek-hours.is-open .ek-hours-menu {
    opacity: 1;
    visibility: visible;
    transform: none;
}
.ek-hours-menu li {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    padding: 10px 16px;
    font-size: 12px;
    color: var(--bs-black);
    border-bottom: 1px solid rgba(255, 255, 255, .12);
}
.ek-hours-menu li:last-child {
    border-bottom: 0;
}
.ek-hours-menu li span:last-child {
    opacity: .8;
    white-space: nowrap;
}
.ek-hours .elementor-button-icon i {
    display: inline-block;
    transition: transform .2s;
}
.ek-hours.is-open .elementor-button-icon i {
    transform: rotate(180deg);
}
/********************/

/* BUTTON ARROW (CE button with class "ek-btn-arrow" -> extra arrow badge on the right) */
.ek-btn-arrow .elementor-button-content-wrapper {
    display: flex;
    align-items: center;
}
.ek-btn-arrow .elementor-button-content-wrapper::after {
    content: "";
    order: 99;
    flex: none;
    width: 2rem;
    height: 2rem;
    margin-left: 12px;
    border-radius: 9999px;
    background: rgba(19, 35, 80, .1) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23132350' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / 14px no-repeat;
    transition: transform .3s cubic-bezier(.4, 0, .2, 1), background-color .3s;
}
.ek-btn-arrow .elementor-button:hover .elementor-button-content-wrapper::after {
    background-color: rgba(255, 255, 255, .15);
    transform: translateX(4px);
    filter: brightness(0) invert(1);
}
/********************/

/*************/

/* MODULE PRODUCT LISTS: GRID / SLIDER (set per module in $list_layout, see custom.js) */
.js-module-products-list {
    position: relative;
    --swiper-pagination-color: var(--bs-primary);
}
.module-products__list.is-grid .products {
    display: grid;
    grid-template-columns: repeat(var(--module-products-items), minmax(0, 1fr));
}
.module-products__list.is-slider .module-products__viewport {
    overflow: hidden;
    /* Card heights are fractional and the clip edge gets rounded down,
       cutting off the cards' 1px bottom border */
    padding-bottom: 1px;
}
.module-products__list.is-slider .products {
    display: flex;
    gap: 0;
    box-sizing: content-box;
    transition-property: transform;
    will-change: transform;
}
/* Equal height cards */
.module-products__list.is-slider .product-miniature {
    flex-shrink: 0;
    height: auto;
}
.module-products__nav,
.module-products__pagination {
    display: none;
}
.module-products__list.is-slider .module-products__nav {
    position: absolute;
    top: 35%;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    padding: 0;
    border: 1px solid var(--bs-gray-300);
    border-radius: 50%;
    background-color: var(--bs-body-bg);
    color: var(--bs-dark);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
    transform: translateY(-50%);
    transition: opacity 0.2s, background-color 0.2s, border-color 0.2s, color 0.2s;
}
.module-products__list.is-slider .module-products__nav:hover {
    border-color: var(--bs-primary);
    background-color: var(--bs-primary);
    color: var(--bs-white);
}
.module-products__nav--prev {
    left: 0.5rem;
}
.module-products__nav--next {
    right: 0.5rem;
}
/* Hidden at the start/end of the list */
.module-products__list.is-slider .module-products__nav:disabled {
    opacity: 0;
    pointer-events: none;
}
.module-products__list.is-slider .module-products__pagination {
    display: flex;
    justify-content: center;
    margin-top: 1rem;
}
/* All products fit in view: no arrows/dots */
.module-products__list.is-slider .swiper-button-lock,
.module-products__list.is-slider .swiper-pagination-lock {
    display: none;
}
/* Mobile: swipe + dots only */
@media (max-width: 767px) {
    .module-products__list.is-slider .module-products__nav {
        display: none;
    }
}
/**********/

/* PRODUCT PAGE: CATEGORY PRODUCTS (eyebrow + title in a soft panel, miniatures untouched) */
.page-product .ps-categoryproducts {
    margin: 3rem 0;
    padding: 3.5rem 2.5rem 3rem;
    border-radius: 2rem;
    background: linear-gradient(180deg, #f7f9fc 0%, #e9eef5 100%);
}
.page-product .ps-categoryproducts__header {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 2.5rem;
    text-align: center;
}
.page-product .ps-categoryproducts__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.24em;
    text-transform: uppercase;
    color: var(--bs-rust);
}
.page-product .ps-categoryproducts__eyebrow::before,
.page-product .ps-categoryproducts__eyebrow::after {
    content: "";
    width: 2rem;
    height: 1px;
    background-color: currentColor;
}
.page-product .ps-categoryproducts .section-title {
    margin: 0;
    font-size: clamp(1.75rem, 1.2rem + 1.6vw, 2.5rem);
    font-weight: 700;
    line-height: 1.15;
    color: var(--bs-primary);
}
@media (max-width: 767px) {
    .page-product .ps-categoryproducts {
        margin: 2rem 0;
        padding: 2.5rem 1rem 1.5rem;
        border-radius: 1.25rem;
    }
    .page-product .ps-categoryproducts__header {
        margin-bottom: 1.5rem;
    }
}
/**********/

/* CART */
.page-cart .breadcrumb {
    display: none;
}
.page-cart .cart-grid {
    margin-top: 2rem;
}
.page-cart .product-line__content-right {
    justify-content: center;
}
.page-cart .product-line {
    align-items: center;
}
.page-cart .cart-summary__actions .btn {
    font-weight: bold;
    font-size: 18px;
}
.page-cart .cart-summary__total {
    border-block: 0;
}
.page-cart .cart-summary__line,
.page-cart .cart-summary__total {
    padding: 0rem;
}
.page-cart .product-line__content-left {
    gap: 0;
}
.page-cart .product-line__price {
    margin-top: 0.5rem;
    font-weight: bold;
}
.page-cart .product__manufacturer {
    font-size: var(--bs-body-font-size-x-sm);
}
.page-cart #notifications .alert {
    margin-top: 1rem;
}
.page-cart .product-line__actions {
    font-size: var(--bs-body-font-size-x-m)
}
@media (min-width: 768px) {
    .page-cart .cart-grid__content {
        margin-block-end: 1rem;
    }
    .page-cart .cart-summary__line--bold .cart-summary__label,
    .page-cart .cart-summary__line--bold .cart-summary__value {
        font-weight: bold;
        font-size: 20px;
    }
}
@media (min-width: 576px) {
    .page-cart .product-line__content {
        row-gap: 0rem;
    }
}
@media (max-width: 767px) {
    .page-cart .product-line__title {
        font-size:var(--bs-body-font-size-x-m);
    }
}
/* Cart product-line */
.page-cart .product-line__item--reference {
    color: var(--bs-secondary-color);
    font-size: var(--bs-body-font-size-s-sm);
}
.page-cart .product-line__item--info {
    font-size: var(--bs-body-font-size-s-sm);
}
.page-cart .product-line__item--reference .label {
    margin: 0;
}
/* .page-cart .product-line__remove-icon {
    display: none;
} */
/* .page-cart .product-line__qty-select {
    display: none;
} */

/* All widths: card, quantity dropdown, trash button */
.page-cart .cart__overview > hr {
    display: none;
}
.page-cart .cart__item,
.page-cart .cart__item:last-child {
    background: #fff;
    border: 1px solid var(--bs-border-color);
    border-radius: 0.5rem;
    padding: 1rem 1.25rem;
    margin-block-end: 1rem;
}
.page-cart .product-line__content-left {
    margin-block-end: 0;
}
.page-cart .product-line__title {
    font-weight: 500;
}
.page-cart .product-line__quantity-button:has(.quantity-button__group) {
    display: none;
}
.page-cart .product-line__qty-select {
    display: block;
    width: 4.25rem;
    height: 2.5rem;
    padding: 0.25rem 2rem 0.25rem 0.75rem;
    background-position: right 0.6rem center;
    border-color: var(--bs-border-color);
    border-radius: 0.375rem;
    font-size: 0.9375rem;
    cursor: pointer;
}
.page-cart .product-line__qty-select:focus {
    border-color: var(--bs-primary);
    box-shadow: none;
}
.page-cart .product-line__price {
    margin-top: 0;
    text-align: right;
    font-size: 1.125rem;
}
/* Price with the discount (regular price + badge) below it */
.page-cart .product-line__prices {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.25rem;
}
.page-cart .product-line__discount {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 0.375rem;
    white-space: nowrap;
}
.page-cart .product-line__discount .product-line__item-regular-price {
    font-size: var(--bs-body-font-size-x-sm);
}
.page-cart .product-line__actions {
    grid-column: auto;
    justify-content: center;
}
.page-cart .product-line__remove {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border: 1px solid var(--bs-border-color);
    border-radius: 0.375rem;
    color: var(--bs-body-color);
    text-decoration: none;
}
.page-cart .product-line__remove:hover {
    color: var(--bs-primary);
    border-color: var(--bs-primary);
}
.page-cart .product-line__remove-icon {
    display: inline-block;
    font-size: 1.25rem;
}
.page-cart .product-line__remove-text {
    display: none;
}

/* Desktop: everything on one row */
@media (min-width: 1200px) {
    .page-cart .product-line {
        align-items: center;
        gap: 1.25rem;
    }
    .page-cart .product-line__content {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto auto;
        align-items: center;
        gap: 1.5rem;
    }
    .page-cart .product-line__content-right {
        flex-direction: row;
        align-items: center;
        justify-content: flex-end;
        gap: 1.5rem;
        margin-block-end: 0;
    }
    .page-cart .product-line__prices {
        min-width: 6.5rem;
    }
}

/* Tablet & mobile: image + info on top, quantity / price / trash below */
@media (max-width: 1199px) {
    .page-cart .product-line {
        display: grid;
        grid-template-columns: auto minmax(0, 1fr) auto;
        grid-template-areas:
            "image info info"
            "controls controls actions";
        align-items: center;
        gap: 1rem;
    }
    .page-cart .product-line__image {
        grid-area: image;
        align-self: start;
    }
    .page-cart .product-line__content {
        display: contents;
    }
    .page-cart .product-line__content-left {
        grid-area: info;
    }
    .page-cart .product-line__content-right {
        grid-area: controls;
        flex-direction: row;
        align-items: center;
        justify-content: flex-start;
        gap: 1rem;
        margin-block-end: 0;
    }
    .page-cart .product-line__prices {
        margin-inline-start: auto;
    }
    .page-cart .product-line__actions {
        grid-area: actions;
    }
}

@media (max-width: 767px) {
    .page-cart .cart__item,
    .page-cart .cart__item:last-child {
        padding: 0.75rem 1rem;
    }
    .page-cart .product-line {
        gap: 0.75rem;
    }
    .page-cart .product-line__img {
        width: 4.5rem;
    }
    .page-cart .product-line__price {
        font-size: 1rem;
    }
}

/* Cart aside / order summary */
.cart-voucher__accordion-icon {
    font-size: 1.25rem;
}
/* @media (min-width: 992px) { */
    .page-cart .cart-grid__aside-wrapper {
        background: #fff;
        border: 1px solid var(--bs-border-color);
        border-radius: 0.5rem;
        padding: 2rem 1.5rem 1.5rem;
    }
    .page-cart .cart-grid__aside-wrapper > h2 {
        font-weight: bold;
        margin-block-end: 1.5rem;
    }
    .page-cart .cart-grid__aside-wrapper > hr {
        display: none;
    }

    /* Voucher */
    .page-cart .cart-summary__voucher {
        margin-block-end: 1.5rem;
        padding-block-end: 1.5rem;
        border-block-end: 1px solid var(--bs-border-color);
    }
    .page-cart .cart-voucher__list {
        margin-block-end: 0.75rem;
        padding-block-end: 0.75rem;
    }
    .page-cart .cart-voucher__accordion {
        border: 1px solid var(--bs-border-color);
        border-radius: 0.375rem;
        margin-block-end: 0;
        padding-block-end: 0;
    }
    .page-cart .cart-voucher__accordion-item {
        background: transparent;
    }
    .page-cart .cart-voucher__accordion-button,
    .page-cart .cart-voucher__accordion-button:not(.collapsed) {
        gap: 0.5rem;
        padding: 0.75rem 1rem;
        background: transparent;
        color: var(--bs-primary);
        font-size: 0.9375rem;
        font-weight: 500;
        box-shadow: none;
        border-radius: 0.375rem;
    }
    .page-cart .cart-voucher__accordion .accordion-body {
        padding: 0 1rem 1rem;
    }
    .page-cart .cart-voucher__form .form-control {
        height: 2.75rem;
    }
    .page-cart .cart-voucher__form .btn {
        flex-shrink: 0;
        height: 2.75rem;
        background: #fff;
        color: var(--bs-primary);
        border: 1px solid var(--bs-primary);
    }
    .page-cart .cart-voucher__form .btn:hover {
        background: var(--bs-primary);
        color: #fff;
    }
    .page-cart .cart-voucher__highlight {
        border-block-end: 0;
        padding-block-end: 0;
    }

    /* Subtotals */
    .page-cart .cart-summary__subtotals {
        margin-block-end: 1.5rem;
        padding-block-end: 1.5rem;
        border-block-end: 1px solid var(--bs-border-color);
    }
    .page-cart .cart-summary__subtotals .cart-summary__line {
        padding-block: 0.25rem;
    }
    .page-cart .cart-summary__subtotals .cart-summary__label {
        color: var(--bs-secondary-color);
    }
    .page-cart .cart-summary__subtotals .cart-summary__value {
        font-weight: bold;
    }

    /* Total */
    .page-cart .cart-summary__total {
        margin-block-end: 1.5rem;
    }
    .page-cart .cart-summary__total .cart-summary__line--bold .cart-summary__label {
        font-size: 1.125rem;
        font-weight: 500;
    }
    .page-cart .cart-summary__total .cart-summary__line--bold .cart-summary__value {
        font-size: 1.5rem;
        font-weight: 700;
    }

    /* Checkout button */
    .page-cart .cart-summary__actions {
        padding-block-start: 0;
    }
    .page-cart .cart-summary__actions .btn {
        padding-block: 0.75rem;
    }
/* } */

/* Tablet: narrow aside next to the products (992-1199) */
@media (min-width: 992px) and (max-width: 1199px) {
    .page-cart .cart-grid__aside-wrapper {
        padding: 1.5rem 1.25rem 1.25rem;
    }
    .page-cart .cart-grid__aside-wrapper > h2 {
        font-size: 1.375rem;
    }
    .page-cart .cart-voucher__accordion-button,
    .page-cart .cart-voucher__accordion-button:not(.collapsed) {
        padding: 0.75rem;
    }
    .page-cart .cart-voucher__accordion .accordion-body {
        padding: 0 0.75rem 0.75rem;
    }
    .page-cart .cart-summary__total .cart-summary__line--bold .cart-summary__value {
        font-size: 1.375rem;
    }
}

/* Tablet & mobile: aside is full width below the products */
@media (max-width: 991px) {
    .page-cart .cart-grid__aside {
        margin-block-start: 1rem;
    }
}

@media (max-width: 767px) {
    .page-cart .cart-grid__aside-wrapper {
        padding: 1.25rem 1rem 1rem;
    }
    .page-cart .cart-grid__aside-wrapper > h2 {
        font-size: 1.25rem;
        margin-block-end: 1rem;
    }
    .page-cart .cart-summary__voucher,
    .page-cart .cart-summary__subtotals {
        margin-block-end: 1rem;
        padding-block-end: 1rem;
    }
    .page-cart .cart-voucher__accordion-button,
    .page-cart .cart-voucher__accordion-button:not(.collapsed) {
        padding: 0.75rem;
    }
    .page-cart .cart-voucher__accordion .accordion-body {
        padding: 0 0.75rem 0.75rem;
    }
    .page-cart .cart-summary__total {
        margin-block-end: 1rem;
    }
    .page-cart .cart-summary__total .cart-summary__line--bold .cart-summary__label {
        font-size: 1rem;
    }
    .page-cart .cart-summary__total .cart-summary__line--bold .cart-summary__value {
        font-size: 1.25rem;
    }
    .page-cart .cart-summary__actions .btn {
        font-size: 1rem;
    }
}
/********/

/* CHECKOUT */
body.layout-content-only .nd-msn,
body.layout-content-only .nd-msn-spacer {
    display: none !important;
}
#checkout .breadcrumb__wrapper .breadcrumb {
  display:none;
}
#checkout #wrapper {
  font-family: var(--bs-body-font-family);
}
#thecheckout-cart-summary .inner-area {
  background: white;
}
#checkout #thecheckout-account .inner-wrapper,
#checkout #thecheckout-address-invoice .inner-wrapper,
#checkout #thecheckout-address-delivery .inner-wrapper,
.checkout-block .inner-wrapper .delivery-options,
.checkout-block .inner-wrapper .payment-options,
.checkout-block .cart-inner-wrapper .cart-grid,
.left-block {
  padding:1rem;
  background:white;
  border-radius:var(--bs-border-radius-lg);
  /* border: 1px solid var(--bs-primary); */
  border:none;
  margin-bottom: 10px;
}
.left-block {
  padding: 0;
}
.checkout-block .inner-wrapper .delivery-options,
.checkout-block .inner-wrapper .payment-options,
#checkout .checkout-block .cart-inner-wrapper .cart-grid,
#checkout .checkout-block .card.cart-container,
#checkout .checkout-block .card.cart-summary,
#checkout .checkout-block input.cart-line-product-quantity {
  background:var(--bs-light);
}
.block-header.shopping-cart-header {
  border-top: 0px !important;
}
.checkout-block .cart-item:last-child {
  border-bottom: 0px !important;
}
.checkout-block .card.cart-summary {
  border-bottom: 0px !important;
}
.checkout-block .cart-item:not(:last-child)
 {
  margin-bottom: 10px;
  padding-bottom: 10px;
}
.checkout-block .cart-summary-line .value {
  font-size: 14px;
}
.cart-summary-line
 {
  margin-bottom: 5px;
}
.checkout-block[class*='num-'] .block-header:before {
  border: 0px !important;
  font-size: 26px !important;
  display: inline-block !important;
  line-height:1 !important;
  margin: 0px 10px 0px 0px !important;
  width:20px !important;
  height:30px !important;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
}
div#tc-payment-confirmation :is(.dm_reviews, .dm_zbozi, .dm_heureka, .terms-and-conditions, .shaim_heureka_checkbox, .shaim_zbozi_checkbox) {
  justify-content: left !important;
}
.cart-voucher > p > a.promo-code-button.collapsed {
  background: #efefef !important;
}
#checkout .btn.active {
  color: var(--bs-light);
  background-color:var(--bs-primary);
  border: var(--bs-primary);
}
#checkout .btn.active:hover {
  background-color: color-mix(in srgb, var(--bs-primary), var(--bs-dark) 15%);
}
#checkout .checkout-block {
  padding: 0px 3px !important;
}
#checkout-payment-step .payment-logo img {
  max-height: 30px;
}
#checkout-payment-step .payment-options .additional-information {
    font-size: var(--bs-body-font-size-x-sm);
}
.using-material-icons .custom-radio {
    width: 20px !important;
    height: 20px !important;
}
#checkout .product-line-image img {
    width: 65%;
    height: auto;
    border-radius: var(--bs-border-radius-lg);
    border: 1px solid #aaaaaa;
}
body.compact-cart #tc-container .cart-item .product-line {
    min-height: 85px !important;
}
#checkout .cart-voucher .js-discount .code {
    border-bottom: 2px solid var(--bs-primary);
}
#checkout .block-promo .promo-input-button .promo-input {
    border-style: solid;
    border-color: var(--bs-primary);
}
#checkout .block-promo .promo-input-button .promo-input + button {
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
}
@media (min-width: 1200px) {
    #checkout .block-header {
        padding: 0px 0px 20px 0px;
    }
    #checkout .checkout-block .inner-area {
        padding-top: 0px;
    }
}
@media (max-width: 767px) {
  #checkout #thecheckout-cart-summary .cart-item {
    border-bottom: 0;
  }
  #checkout #thecheckout-cart-summary .cart-container {
    padding:0;
  }
}
@media (min-width: 768px) {
  .form-group, .account_creation.shaim_gdpr_checkbox {
    padding-left: 0px !important;
  }
}
/************/