body {
    font-family: 'Poppins', sans-serif;
    color:#2B2B2B;
}

body main{
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    overflow-x: hidden;
}

#wrapper {
    flex-grow: 1;
}

.row{
    margin: 0;
}
.col-xs-12{
    padding: 0;
}

#category #left-column.col-xs-12{
    padding-right: 16px;
}

#category #content-wrapper.col-xs-12{
    padding-left: 16px;
}

#checkout #wrapper{
    padding-top: 16px;
}
#wrapper {
    padding-top: 150px;
}

#wrapper .breadcrumb{
    padding: 16px 0;
}

#wrapper .breadcrumb li::after{
    margin: 0;
}

.card{
    background-color: transparent;
}

.page-content.page-cms{
    padding: 0;
}

@media (max-width: 768px){
    .h3, .h4, h3, h4{
        font-size: 16px;
        margin-bottom: 1rem;
    }
    #category .col-xs-12, #category #left-column.col-xs-12, #category #content-wrapper.col-xs-12{
        padding: 0;
    }
    #category #left-column #search_filters .facet ul li{
        padding: 10px 16px;
    }
}

@media (max-width: 1199px) {
    .header-bottom.hidden {
        transform: none;
        opacity: 1 ;
        visibility: visible;
    }
    .header-top{
        box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.05)
    }

    #header .header-bottom{
        z-index: 11;
    }

    .custom-category-nav .custom-html-submenu {
        display: none ;
    }
    #wrapper {
        padding-top: 80px
    }
    .page-content.page-cms p, .page-content.page-cms {
        font-size: 14px;
    }
}


#header .header-top {
    padding: 16px 0 8px 0  ;
}

.header-top {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10;
    background-color: #fff;
}

.header-bottom{
    position: fixed;
    width: 100%;
    top: 100px;
    left: 0;
    background-color: #fff;
    z-index: 9;
    transition: transform 0.3s ease-in-out;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.05)
}

.header-bottom.hidden{
    transform: translateY(-100%);
}

.header-top:has(+ .header-bottom.hidden) {
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.05);
    transition: box-shadow 0.3s ease;
}

body::before {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.2);
    z-index: 99;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease-in-out;
}

body.overlay-active::before {
    opacity: 1;
    pointer-events: auto;
}


.container, .container-fluid, #notifications {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 64px;
    padding-right: 64px;
}

@media (min-width: 1400px) {
    body:not(#index):not(#category):not(#search) .container, #notifications {
        max-width: 1400px;
    }
}

@media (min-width: 1920px) {
    #index .container,
    #category .container {
        max-width: 1920px;
    }
}

@media (max-width: 991px) {
    .container, .container-fluid, #notifications {
        padding-left: 32px;
        padding-right: 32px;
    }

}

@media (max-width: 575px) {
    .container, .container-fluid, #notifications {
        padding-left: 16px;
        padding-right: 16px;
    }
    #checkout .container, #checkout .container-fluid{
        padding-left: 8px;
        padding-right: 8px;
    }
}
@media (min-width: 1600px) {
    #category .js-product {
        width: 16.666%;
    }
}

@media (min-width: 2000px) {
    #category .js-product {
        width: 12.5%;
    }
}

#notifications .notification-container:has(*) {
    padding-top: 16px;
}

#wrapper{
    background-color: #fff;
}
#wrapper .container .breadcrumb{
    font-size: 14px;
}

@media (min-width: 1200px) {
    .col-xl-4, .col-xl-5 {
        float: left;
        width: 25%;
    }
}

textarea, .form-control{
    border-radius: 32px;
    padding: 10px 20px;
    background-color: transparent;
    font-size: 14px;
}

.thead-default th, .table-striped tbody tr:nth-of-type(odd){
    background-color: transparent;
}

.table thead th{
    border-bottom: 2px solid #f6f6f6;
}
.table, .thead-default th {
    color: #2B2B2B;
}

.table-bordered, .table-bordered td, .table-bordered th{
    border: 2px solid #f6f6f6;
}
table th,
table td {
    text-align: center;
    vertical-align: middle;
}

h1{
    font-size: 28px;
    letter-spacing: -0.04em;
}
@media (max-width: 768px){
    h1{
        font-size: 20px;
    }
}

ul{
    margin: 0;
}

#manufacturer img{
    border-radius: 16px;
}

label{
    margin: 0;
}

a {
    color: #2B2B2B;
    text-decoration: none;
}

a.text-primary:focus, a.text-primary:hover{
    color: #454545;
}

a:focus, a:hover {
    color: #454545;
    text-decoration: none;
}

#main .page-header{
    text-align: center;
    margin: 0;
    padding: 16px 0;
    color: #2B2B2B;
}

@media(max-width: 768px){
    #main .page-header{
        padding: 8px 0;
    }
}

.page-content.page-cms ul, p{
    color: #2B2B2B;
}

body .btn {
    border-radius: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    padding: 10px 16px;
    font-weight: 600;
    text-transform: none;
    text-align: center;
    text-decoration: none;
    border: 2px solid transparent;
    transition: all 0.15s ease-in-out;
}

body .btn:hover, body .btn:focus {
    text-decoration: none;
}

body .btn-primary,
body .btn[type="submit"],
body button.btn-primary,
body a.btn-primary {
    background-color: #2B2B2B;
    border-color: #2B2B2B;
    color: #fff;
}

body .btn-primary:hover,
body .btn-primary:focus,
body .btn-primary:active,
body .btn-primary.active,
body .btn[type="submit"]:hover,
body .btn[type="submit"]:focus,
body .btn[type="submit"]:active,
body button.btn-primary:hover,
body button.btn-primary:focus,
body button.btn-primary:active,
body button.btn-primary.active,
body a.btn-primary:hover,
body a.btn-primary:focus,
body a.btn-primary:active,
body a.btn-primary.active {
    background-color: #454545 !important;
    border-color: #454545;
    color: #fff;
    box-shadow: none;
    background-image: none;
    outline-offset: 0;
}

body .btn-secondary,
body .btn-tertiary,
body button.btn-secondary,
body a.btn-secondary {
    background-color: transparent;
    border-color: #f6f6f6;
    color: #2B2B2B;
}

body .btn-secondary:hover,
body .btn-secondary:focus,
body .btn-secondary:active,
body .btn-tertiary:hover,
body .btn-tertiary:focus,
body .btn-tertiary:active,
body button.btn-secondary:hover,
body button.btn-secondary:focus,
body button.btn-secondary:active,
body a.btn-secondary:hover,
body a.btn-secondary:focus,
body a.btn-secondary:active {
    background-color: #2B2B2B;
    border-color: #f6f6f6;
    color: #fff;
    box-shadow: none;
    background-image: none;
    transition: 4ms ease-in-out;
}

.btn.disabled, .btn.disabled:hover{
    background-color: #fff;
}

.form-control:disabled{
    background-color: transparent;
}

select.form-control:not([size]):not([multiple]){
    height: auto;
}

.page-footer {
    display: flex;
    flex-wrap: wrap;
}

@media(max-width: 768px){
    .page-footer .account-link span{
        font-size: 14px;
    }
}

/*Homepage photos*/
.homephoto-main {
    overflow: hidden;
    width: 100vw;
    margin-left: calc(50% - 50vw);
}

.home-photos-container {
    width: 70%;
    margin: 0 auto;
    overflow: visible;
    position: relative;
    max-width: 1440px;
}

.home-photo-container {
    box-sizing: border-box;
}

.home-photo-container img{
    width: 100%;
}

.home-photos-container::before,
.home-photos-container::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100vw;
    z-index: 1;
    background: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(2px);
    pointer-events: none;
}

.home-photos-container::before {
    right: 100%;
}

.home-photos-container::after {
    left: 100%;
}

.photo-nav-bar,
.autoplay-indicator,
.link-indicator {
    z-index: 2;
    pointer-events: auto;
}

.photo-nav,
.photo-title {
    pointer-events: auto;
}

@media (max-width: 990px) {
    .home-photos-container {
        width: 100%;
        overflow: hidden;
    }
    .home-photos-container::before,
    .home-photos-container::after {
        display: none;
    }
}

/*Product Flags*/
.product-miniature .product-flags li.product-flag,
.product-flags li.product-flag {
    background-color: rgba(43, 43, 43, 0.8);
    border-radius: 32px;
    text-transform: none;
    font-size: 14px;
    margin: 0;
    text-align: center;
    padding: 8px 16px;
}

.product-flags{
    gap: 4px;
}

@media(max-width: 768px){
    .product-miniature .product-flags li.product-flag, .product-flags li.product-flag{
        font-size: 12px;
        padding: 4px 8px;
    }
}

/*Mobile bottom nav*/
.mobile-bottom-nav {
    display: none;
}

.mobile-bottom-nav.no-shadow {
    box-shadow: none;
}

@media (max-width: 767px) {
    .mobile-bottom-nav {
        display: flex;
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 90;
        background-color: #ffffff;
        box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.05);
        padding: 0 16px;
    }
    #checkout .mobile-bottom-nav{
        display: none;
    }

    .mobile-bottom-nav .nav-item {
        flex-grow: 1;
        flex-basis: 0;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 16px;
        color: #2B2B2B;
        text-decoration: none;
        font-size: 12px;
        text-align: center;
        line-height: 1.3;
    }

    .mobile-bottom-nav .nav-item:hover {
        flex-grow: 1;
        flex-basis: 0;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 16px;
        color: #2B2B2B;
        text-decoration: none;
        font-size: 12px;
        text-align: center;
        line-height: 1.3;
    }

    .mobile-bottom-nav .nav-item .material-icons {
        font-size: 24px;
        margin-bottom: 2px;
    }

    .mobile-bottom-nav .nav-item.active span.material-symbols-outlined{
        background-color: #2B2B2B;
        border-radius: 32px;
        color: #fff;
        padding: 8px 16px;
    }

}

/*Header*/
#header{
    box-shadow: 0 2px 8px 0 rgba(0,0,0,0.05);
    position: relative;
    z-index: 100;
}

.header-top .row {
    display: flex;
    gap:64px;
    align-items: center;
}

.header-top .row:after{
    display: none;
}

#header .header-top>.container>.row:first-of-type{
    margin: 0;
}

.mobile-nav-item{
    padding: 0 15px;
}

.mobile-nav-item .mobile-nav-link{
    font-weight: 600;
    font-size: 18px;
}

.mobile-menu{
    color: #2B2B2B;
}

.mobile-menu .mobile-menu-header{
    padding: 24px 16px;
    border-bottom: 1px solid #f6f6f6;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.05);
}

.mobile-menu .panel-header{
    border-bottom: 1px solid #f6f6f6;
}

.mobile-menu .mobile-menu-close span{
    font-size: 32px;
}

.mobile-menu-header .mobile-menu-close{
    font-size: 32px;
}

.mobile-nav-item-wrapper .mobile-nav-link, .mobile-nav-item .mobile-nav-link {
    padding: 15px 0;
}

.header-top .user-actions-icons-group{
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 16px;
    flex-shrink: 0;
}

.dropdown select{
    background: none;
}
.header-top .language-selector-icon{
    display: none;
}

@media(max-width: 768px ){
    .header-top .user-actions-icons-group {
        display: none;
    }

    .header-top  .language-selector-icon{
        display: block;
        font-size: 32px;
        color: #2B2B2B;
    }

    body#checkout #header .header-top {
        display: none;
    }

    .header-top .user-actions-icons-group{
        gap: 4px;
    }

    /*.header-top .mobile-header-action-block{*/
    /*    display: flex;*/
    /*    flex-direction: row;*/
    /*}*/
}

#header a{
    color:#2B2B2B;
    text-transform: none;
}

#header a:hover{
    color: #454545;
}

#header .top-menu a[data-depth="0"]:hover, a:hover {
    color: #454545;
    text-decoration: none;
}

#header .header-bottom .container{
    display: flex;
    justify-content: center;
}

#header .header-top .logo {
    max-height: 82px;
    width: auto;
    display: block;
    min-width: 40px;
}

#header .custom-category-nav-wrapper .nav-link{
    font-size: 16px;
    color:#2B2B2B;
    font-weight: 600;
}

#header .custom-category-nav .custom-html-submenu{
    border-radius: 0 0 32px 32px;
    box-shadow: 0 8px 8px 0 rgba(0, 0, 0, 0.1);
}

#header .custom-category-nav .nav-items{
    gap: 48px;
}

#header .custom-category-nav-wrapper{
    border: 0;
}

#header .header-nav .cart-preview.active{
    background-color: transparent;
}

#header .mobile{
    display: flex;
    align-items: center;
    padding: 8px;
}

#header .header-nav #_desktop_contact_link{
    display: none;
}

#checkout .header-nav .row{
    display: flex;
    justify-content: center;
    align-items: center;
}

#checkout .header-nav .row #_desktop_logo{
    display: flex;
    justify-content: center;
}


@media (max-width: 1200px) {
    #header .header-top .row .mobile-nav-toggle {
        display: block;
        align-self: center;
        margin-right: 16px;
    }
}

@media (max-width: 1200px) {
    #header .header-top .row {
        gap: 16px;
        margin: 0;
    }

    #header .header-top>.container>.row:first-of-type{
        justify-content: space-between;
    }
}

@media (max-width: 1200px) {
    #checkout .header-nav .row{
        justify-content: center;
    }
    #checkout .header-nav #_desktop_logo,#checkout .header-nav .text-xs-right{
        width: auto;
    }
}
/*Search bar*/
.search-language-block {
    display: flex;
    flex-direction: row;
    flex-grow: 1;
    position: relative;
}


@media(max-width: 768px){
    .search-language-block{
        flex-grow: 0;
        align-items: center;
        gap: 8px;
        position: relative;
    }
    .logo-container{
        position: absolute;
        right: 50%;
        transform: translateX(50%);
        bottom: 2px;
    }
    #header .header-top .container .row{
        position: relative;
        padding: 8px 0;
    }
    #header .header-top .logo {
        max-height: 64px;
    }
}

.settings-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: #ffffff;
    z-index: 1001;
    box-sizing: border-box;
    flex-direction: column;
}

.settings-overlay.active {
    display: flex;
    animation: slideIn 0.3s ease-out;
}

.overlay-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 24px 16px;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.05);
}

.overlay-header #close-settings{
    color: #2B2B2B;
    font-size: 32px;
}

.overlay-title {
    font-size: 20px;
    font-weight: bold;
    color: #2B2B2B;
}

.overlay-content {
    display: flex;
    flex-direction: column;
    gap: 32px;
    padding: 16px;
}

.settings-group {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.settings-label {
    display: block;
    font-size:  18px;
    font-weight: bold;
    color: #2B2B2B;
    padding: 8px 0;
    border-bottom: 2px solid #f6f6f6;
}

.settings-overlay ul.link.hidden-md-up{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.settings-overlay .link.hidden-md-up li{
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0,0.1);
    padding: 8px 16px;
    border-radius: 32px;
    text-align: center;
}

.settings-overlay .link.hidden-md-up li a{
    font-size: 14px;
}

.search-language-block #_desktop_language_selector .link.hidden-md-up li.current a, #_desktop_currency_selector .link.hidden-md-up li.current a{
    font-weight: bold;
    color: #fff;
}

.search-language-block #_desktop_language_selector .link.hidden-md-up li.current, #_desktop_currency_selector .link.hidden-md-up li.current{
    background: #2B2B2B;
    color: #fff;
}

@keyframes slideIn {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

.custom-searchbar-wrapper{
    flex: 1;
}

.custom-searchbar-wrapper form {
    display: flex;
    overflow: hidden;
    width: 100%;
    justify-content: space-between;
    max-width: 520px;
}

.custom-searchbar-wrapper .search-input {
    border: 2px solid #f6f6f6;
    border-right: none;
    border-radius: 32px 0 0 32px;
    padding: 8px 16px;
    outline: none;
    width: 100%;
    min-width: 0;
}

.custom-searchbar-wrapper .search-button {
    background-color: #2B2B2B;
    border: 2px solid #2B2B2B;
    color: #fff;
    border-radius: 0 32px 32px 0;
    padding: 8px 16px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

.custom-searchbar-wrapper .search-overlay-close {
    display: none;
}

.custom-searchbar-wrapper .search-overlay-title {
    display: none;
}

#search #js-product-list-header{
    padding-bottom: 16px;
    text-transform: none;
}

.custom-searchbar-wrapper .search-overlay-header{
    display: none;
}


@media (max-width: 990px) {
    .custom-searchbar-wrapper form .search-input {
        visibility: hidden;
        opacity: 0;
        width: 0;
        height: 0;
        padding: 0;
        border: none;
        pointer-events: none;
    }

    .custom-searchbar-wrapper form{
        justify-content: flex-end;
    }

    .custom-searchbar-wrapper .search-button {
        border-radius: 50%;
        padding: 8px;
        justify-content: center;
    }

    .custom-searchbar-wrapper .search-button span {
        font-size: 24px;
    }

    .hidden-sm-down.signin-text, #header .cart-text{
        display: none;
    }

    .custom-searchbar-wrapper.mobile-search-active {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        background-color: #ffffff;
        z-index: 1000;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        padding: 0;
        animation: slideIn 0.3s ease-out;
        align-items: center;
    }

    .custom-searchbar-wrapper.mobile-search-active .search-overlay-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: 100%;
        padding: 24px 16px;
        box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.05);
        background: #fff;
        box-sizing: border-box;
    }

    .custom-searchbar-wrapper .search-overlay-title {
        display: block;
        font-size: 20px;
        font-weight: bold;
        color: #2B2B2B;
        text-align: left;
        margin: 0;
        width: auto;
    }

    #cart #main .card-block .h1{
        font-size: 32px;
        text-align: center;
    }

    .custom-searchbar-wrapper .search-overlay-close {
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        color: #2B2B2B;
        font-size: 32px;
        padding: 0;
    }

    .custom-searchbar-wrapper.mobile-search-active form {
        display: flex;
        width: 100%;
        padding: 16px;
        box-sizing: border-box;
    }

    .custom-searchbar-wrapper.mobile-search-active .search-input {
        visibility: visible;
        opacity: 1;
        width: 100%;
        height: 50px;
        border-radius: 32px 0 0 32px;
        border: 2px solid #f6f6f6;
        border-right: none;
        padding: 12px 16px;
        font-size: 16px;
        pointer-events: auto
    }

    .custom-searchbar-wrapper.mobile-search-active .search-button {
        border-radius: 0 32px 32px 0;
        width: auto;
        height: 50px;
        padding: 0 20px;
    }
}
/*Cart preview*/
.cart-preview, .icon-wrapper {
    position: relative;
}

.cart-preview a{
    display: flex;
    flex-direction: row;
    align-items: center;
    gap:8px;
    text-decoration: none;
}
.cart-preview .shopping-cart{
    color:#2B2B2B;
}

.cart-preview .cart-text{
    font-size: 16px;
    color:#2B2B2B;
}

.cart-preview .cart-products-count, .icon-wrapper .cart-products-count{
    position: absolute;
    z-index: 1;
    color: #fff;
    background-color: #2B2B2B;
    font-weight: bold;
    border-radius: 16px;
    min-width: 16px;
    height: 16px;
    font-size: 10px;
    padding: 4px;
    line-height: 1;
    bottom: -2px;
    right: -4px;
    display: flex;
    justify-content: center;
}

.cart-summary-line .label, .cart-summary-line .value{
    font-size: 14px;
}

.icon-wrapper .cart-products-count{
    bottom: 3px ;
}

.nav-item.active .icon-wrapper .cart-products-count{
    background-color: #454545;
    border-radius: 32px;
    right: 10px;
    bottom: 6px;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.05);
}

.cart-preview:hover .cart-text,
.cart-preview:hover .shopping-cart{
    color: #454545;
}
.cart-preview:hover .cart-products-count{
    background-color:#454545;
}

/*
  Language, Currency, and User Info)
*/
#_desktop_language_selector .collapse-icons,
#_desktop_user_info .collapse-icons,
#_desktop_currency_selector .collapse-icons {
    display: flex;
    align-items: center;
}

#_desktop_language_selector .collapse-icons span,
#_desktop_user_info .collapse-icons span,
#_desktop_currency_selector .collapse-icons span {
    font-size: 18px;
    line-height: 1;
}

#_desktop_language_selector .collapse-icons .add,
#_desktop_user_info .collapse-icons .add,
#_desktop_currency_selector .collapse-icons .add {
    display: inline-block;
}

#_desktop_language_selector .collapse-icons .remove,
#_desktop_user_info .collapse-icons .remove,
#_desktop_currency_selector .collapse-icons .remove {
    display: none;
}

#_desktop_language_selector .btn-unstyle[aria-expanded="true"] .collapse-icons .add,
#_desktop_user_info .user-info-trigger .account[aria-expanded="true"] .collapse-icons .add, /* <-- ZMIANA W TEJ LINII */
#_desktop_currency_selector .btn-unstyle[aria-expanded="true"] .collapse-icons .add {
    display: none;
}

#_desktop_language_selector .btn-unstyle[aria-expanded="true"] .collapse-icons .remove,
#_desktop_user_info .user-info-trigger .account[aria-expanded="true"] .collapse-icons .remove, /* <-- ZMIANA W TEJ LINII */
#_desktop_currency_selector .btn-unstyle[aria-expanded="true"] .collapse-icons .remove {
    display: inline-block;
}

#_desktop_language_selector .language-selector .dropdown-menu,
#_desktop_currency_selector .currency-selector .dropdown-menu,
.user-info-menu {
    border: 1px solid #ddd;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.05);
    border-radius: 8px;
    background: #fff;
    z-index: 1000;
    padding: 0;
    min-width: 180px;
    position: absolute;
    top: 100%;
    list-style: none;
    right: 0;
    left: auto;
    margin-top: 2px;
}

#_desktop_language_selector .language-selector .dropdown-menu a.dropdown-item,
#_desktop_currency_selector .currency-selector .dropdown-menu a.dropdown-item,
#header .user-info-menu li a {
    display: block;
    padding: 10px 16px;
    color: #2B2B2B;
    text-decoration: none;
    white-space: nowrap;
    border-radius: 0;
    font-size: 14px;
}

#_desktop_language_selector .language-selector .dropdown-menu a.dropdown-item:hover,
#_desktop_currency_selector .currency-selector .dropdown-menu a.dropdown-item:hover,
#header .user-info-menu li a:hover {
    background-color: #2B2B2B;
    color: #fff;
    border-radius: 8px;
}

.search-language-block #_desktop_language_selector .language-selector .dropdown-menu li.current a.dropdown-item,
.search-language-block #_desktop_currency_selector .currency-selector .dropdown-menu li.current a.dropdown-item {
    background-color: transparent;
    color: #2B2B2B;
}

.search-language-block  #_desktop_language_selector .language-selector .dropdown-menu li.current a.dropdown-item:hover,
.search-language-block #_desktop_currency_selector .currency-selector .dropdown-menu li.current a.dropdown-item:hover {
    background-color: #2B2B2B;
    color: #fff;
}


.user-info-dropdown .user-info-menu,
#_desktop_language_selector .language-selector.dropdown .dropdown-menu,
#_desktop_currency_selector .currency-selector.dropdown .dropdown-menu {
    opacity: 0;
    visibility: hidden;
    transform: scaleY(0.9);
    transform-origin: top;
    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0s 0.3s;
    display: block !important;
}

.user-info-dropdown.open .user-info-menu,
#_desktop_language_selector .language-selector.dropdown.open .dropdown-menu,
#_desktop_currency_selector .currency-selector.dropdown.open .dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: scaleY(1);
    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0s 0s;
}

.user-info-dropdown.open,
#_desktop_language_selector .language-selector.dropdown.open button ,
#_desktop_currency_selector .currency-selector.dropdown.open button{
    border: 2px solid rgba(43, 43, 43, 0.5);
}


.user-info-dropdown button:focus,
#_desktop_language_selector .language-selector.dropdown button:focus,
#_desktop_currency_selector .currency-selector.dropdown button:focus {
    outline: none;
}

/*
  Language & Currency Selectors
*/

#_desktop_language_selector .dropdown .btn-unstyle,
#_desktop_currency_selector .dropdown .btn-unstyle {
    display: flex;
    align-items: center;
}

#_desktop_language_selector .language-selector > button.btn-unstyle,
#_desktop_currency_selector .currency-selector > button.btn-unstyle {
    border: 2px solid #f6f6f6;
    padding: 8px 16px;
    border-radius: 32px;
    font-size: 16px;
    color: #2B2B2B;
    background-color: transparent;
    display: flex;
    align-items: center;
    line-height: 1;
    transition: color 0.3s ease;
    gap: 8px;
    cursor: pointer;
}

#_desktop_language_selector .dropdown:hover .expand-more,
#_desktop_language_selector .dropdown:focus .expand-more,
#_desktop_language_selector .btn-unstyle:focus .expand-more,
#_desktop_currency_selector .dropdown:hover .expand-more,
#_desktop_currency_selector .dropdown:focus .expand-more,
#_desktop_currency_selector .btn-unstyle:focus .expand-more {
    color: #2B2B2B;
}

/* General button hover */
#_desktop_language_selector .language-selector > button.btn-unstyle:hover,
#_desktop_currency_selector .currency-selector > button.btn-unstyle:hover {
    color: #454545;
}

/* The 'material-icons' globe is only in the language selector */
#_desktop_language_selector .language-selector > button.btn-unstyle i.material-icons {
    margin-left: 6px;
    color: #2B2B2B;
    transition: color 0.3s ease;
}

#_desktop_language_selector .language-selector > button.btn-unstyle:hover i.material-icons {
    color: #454545;
}

/*
  Customer Sign In (User Info)
*/

.user-info .user-signin-box, .user-info {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
}

.customer-name {
    color: #2B2B2B;
}

.user-info .signin-text {
    font-size: 16px;
    color: #2B2B2B;
}

.user-info .account-icon {
    color: #2B2B2B;
}

.user-info:hover .signin-text,
.user-info:hover .account-icon {
    color: #454545;
}

.user-info-dropdown {
    border: 2px solid #f6f6f6;
    border-radius: 32px;
    position: relative;
    display: inline-block;
    font-size: 14px;
    user-select: none;
}

.account{
    padding: 8px 16px;
    background: none;
    border: none;
    margin: 0;
    cursor: pointer;
    color: #2B2B2B;
    font-family: inherit;
    font-size: inherit;
    display: flex;
    align-items: center;
    gap: 8px;
}

.user-info-menu {
    min-width: 200px;
}

#header .user-info-menu li.logout {
    border-top: 2px solid #f6f6f6;
}


/*Newsletter*/
#blockEmailSubscription_displayFooterAfter {
    background-color:transparent;
    margin: 0;
}

#blockEmailSubscription_displayFooterAfter .subscribe-button{
    background-color: #2B2B2B;
    border: 1px solid #8b8a8a;
    color: #fff;
    border-radius: 32px;
    font-weight: bold;
    font-size: 16px;
    cursor: pointer;
    padding: 8px 16px;
}

#blockEmailSubscription_displayFooterAfter .subscribe-button:hover{
    background-color: #8b8a8a;
}

#blockEmailSubscription_displayFooterAfter .newsletter-form-box{
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap:8px;
}

#blockEmailSubscription_displayFooterAfter #block-newsletter-label{
    font-size: 18px;
    text-transform: uppercase;
    font-weight: bold;
    text-align: center;
    color: #fff;
}

#blockEmailSubscription_displayFooterAfter .input-wrapper{
    display: flex;
    flex-direction: column;
    gap:8px;
}

#blockEmailSubscription_displayFooterAfter .subscribe-input{
    border-radius: 32px;
    padding: 8px 16px;
}

#blockEmailSubscription_displayFooterAfter .newsletter-conditions{
    color:#fff;
    font-size: 12px;
    text-align: center;
}

@media (max-width: 767px) {
    #blockEmailSubscription_displayFooterAfter {
        border: none;
    }
}

/*Footer*/
#footer{
    padding: 0;
}

.footer-container{
    background-color: #2B2B2B;
}

.footer-container .container{
    padding-top: 32px;
}

.footer-container .copyright{
    text-align: center;
    color: #fff;
    padding: 32px;
    font-size: 14px;
}

@media(max-width: 768px){
    .footer-container{
        padding-top: 0;
    }
}

.footer-container .container .custom-footer-container{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: start;
    gap:64px;
}

.footer-container .container:after, .footer-container .row:after{
    display: none;
}

.footer-container .container .custom-footer-container .links,
.footer-container .container .custom-footer-container #blockEmailSubscription_displayFooterAfter,
.footer-container .container.custom-footer-container  .custom-contact-box{
    flex: 1 1 280px;
    padding: 0;
}

@media (max-width: 767px) {
    .custom-footer-container .links ul>li{
        border-bottom: none;
        display: flex;
        padding: 0;
        gap: 4px;
    }
    .custom-footer-container .links ul>li a {
        padding: 10px 0;
        font-weight: 400;
        flex: 1;
    }
    .footer-container .container .custom-footer-container{
        gap: 16px;
    }
    .footer-container{
        padding-bottom: 64px;
    }
}

/*Links list*/
.links .row{
    margin: 0;
}

.links .collapse a,
.links .link-title,
.links .title,
.links #footer_sub_menu_2 li a,
.footer-container .links ul>li a {
    color: #fff;
    text-wrap: nowrap;
    font-size: 14px;
}


.links .collapse li a:hover,  #footer_sub_menu_2 li a:hover, .footer-container .links ul>li a:hover{
    color: #454545;
}

.links .h3{
    color: #fff;
    font-size: 18px;
    text-transform: none;
}

#block_myaccount_infos .myaccount-title a{
    color: #fff;
    text-transform: none !important;
    font-size: 18px;
}

.links .wrapper .title, .links .title{
    border-bottom: 1px solid #454545;
}

.links #footer_sub_menu_2, .footer-container .links ul{
    background-color: transparent;
}

@media (max-width: 768px) {
    .links .title{
        padding: 8px;
    }
    .footer-container .links .h3{
        text-align: center;
        font-size: 18px;
        margin-bottom: 0;
    }
    .footer-container .links ul>li a{
        border-bottom: 1px solid #454545;
    }
}

.navbar-toggler{
    width: auto;
}

/*Main menu*/
.top-menu{
    display: flex;
    justify-content: center;
}

.top-menu .dropdown-item{
    display: flex;
    align-items: center;
    color:#2B2B2B;
}

.top-menu .arrow-icon{
    color:#2B2B2B;
}

/*Featured products*/
.featured-products h2.h2{
    font-size: 36px;
    letter-spacing: -0.04em;
    font-weight: bold;
    text-transform: none;
    text-align: left;
    display: flex;
    align-items: center;
    width: 100%;
    transition: 0.5s ease-in-out;
}

.featured-products h2.h2::after{
    content: '';
    flex-grow: 1;
    height: 2px;
    background-color: #f6f6f6;
    margin-left: 32px;
}

@media (max-width: 768px){
    .featured-products h2.h2{
        font-size: 24px;
        margin: 24px 0;
    }
}

/*Product miniatures*/
.product-miniature {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.product-miniature .product-description {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    padding: 0;
}

.product-miniature .product-title {
    margin: 0;
    font-weight: 400;
    text-align: center;
    line-height: 1.2em;
    height: 2.8em;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
}

.product-miniature .product-title a {
    font-weight: 600;
    font-size: 14px;
    color: #2B2B2B;
}

.product-miniature .product-price-and-shipping {
    display: flex;
    flex-direction: column;
    color: #2B2B2B;
    gap: 8px;
    padding: 8px 0;
    margin-top: auto;
}

.product-miniature .add-to-cart {
    gap: 4px;
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 700;
    padding: 8px 10px;
}

.product-miniature .add-to-cart .material-symbols-outlined {
    font-size: 20px;
}

.product-miniature .product-description:after{
    display: none;
}

@media(max-width: 990px) {
    .product-miniature .add-to-cart .material-symbols-outlined {
        font-size: 16px;
    }
    .product-miniature .add-to-cart{
        padding: 8px;
        font-size: 12px;
    }
    .product-miniature .product-price-and-shipping{
        gap: 4px;
        justify-content: space-between;
        flex: 1;
    }
}

/*Product Page*/
.product-container .product-name{
    font-size: 28px;
    font-weight: 500;
    text-transform: none;
}

.product-container{
    display: flex;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 32px;
    margin: 0;
}

#product #wrapper .container .breadcrumb{
    margin:0;
}

#product .description-container{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 32px;
    margin-top: 16px;
}

#product .accordion-item-native summary{
    padding: 16px 0;
}

#product .accordion-item-native[open] summary {
    border-bottom: 2px solid #f6f6f6;
}

#product .scroll-box-arrows span{
    font-size: 32px;
}

#product .embla-product-gallery {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 4px 30px;
    width: 100%;
}

#product .embla-product-gallery .embla__viewport {
    overflow: hidden;
    width: 100%;
}

#product .embla-product-gallery .embla__container {
    display: flex;
    flex-direction: row;
    user-select: none;
    -webkit-touch-callout: none;
    -moz-user-select: none;
    -ms-user-select: none;
}

#product .embla-product-gallery .embla__slide {
    flex: 0 0 auto;
    margin-right: 10px;
    cursor: pointer;
    position: relative;
    box-sizing: border-box;
}

#product .embla-product-gallery .embla__slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 8px;
    border: 2px solid transparent;
    transition: border-color 0.2s;
}

#product .embla-product-gallery .embla__slide img.selected,
#product .embla-product-gallery .embla__slide img:hover {
    border-color: #2B2B2B;
}

#product .embla-product-gallery .embla__prev,
#product .embla-product-gallery .embla__next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 42px;
    height: 42px;
    color: #2B2B2B;
    background: rgba(255, 255, 255, 0.9);
    border: 2px solid #f6f6f6;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 10;
    transition: opacity 0.2s;
    padding: 0;
    user-select: none;
}

#product .embla-product-gallery .embla__prev { left: 0; }
#product .embla-product-gallery .embla__next { right: 0; }

#product .embla-product-gallery .embla__prev:disabled,
#product .embla-product-gallery .embla__next:disabled {
    opacity: 0;
    cursor: default;
}

#product .embla-product-gallery .embla__prev:focus,
#product .embla-product-gallery .embla__next:focus,
#product .embla-product-gallery .embla__prev:active,
#product .embla-product-gallery .embla__next:active{
    background-color: #2B2B2B;
    color: #fff;
}

#product .embla-product-gallery .embla__slide{
    padding: 0;
    margin: 0;
    min-width: auto;
    max-width: inherit;
}

@media (max-width: 767px) {

    #product .images-container {
        display: flex;
        flex-direction: column;
        width: 100%;
        gap: 8px;
    }

    #product .product-cover {
        width: 100%;
        display: flex;
        justify-content: center;
    }

    #product .product-cover img {
        width: 100%;
        height: auto;
        max-height: 400px;
        object-fit: contain;
        display: block;
    }

    #product .description-container{
        padding: 16px;
    }

    #product .embla-product-gallery {
        width: 100%;
        padding: 8px 0;
    }

    #product .embla-product-gallery .embla__viewport {
        width: 100%;
        overflow: hidden;
    }

    #product .embla-product-gallery .embla__container {
        display: flex;
        flex-direction: row;
        width: auto;
    }

    #product .embla-product-gallery .embla__slide{
        max-width: 100%;
        min-width: 20%;
    }
}

@media (max-width: 768px){
    .product-container{
        flex-direction: column;
        overflow: hidden;
        align-items: center;
        padding: 16px 0;
    }
}

.product-container .product-prices .current-price-value{
    color: #2B2B2B;
    font-size: 32px;
}

.product-container .product-prices .product-price, .product-container .product-prices .current-price{
    margin: 0;
}

.product-container .product-prices .current-price{
    display: flex;
    align-items: center;
    gap: 8px;
}

.product-container .product-right-side{
    display: flex;
    flex-direction: column;
    gap:16px;
}

#product-modal .modal-content .modal-body img.product-cover-modal{
    width: 600px;
    height: 600px;
    border-radius: 8px;
}

#product-modal .modal-content .modal-body{
    margin-left: 0;
    align-items: center;
}

#product-modal .modal-dialog{
    margin: 100px auto;
}

#product-modal figure{
    margin: 0;
}

#main .images-container .js-qv-mask.scroll{
    padding: 0 32px;
}

#product-modal .modal-content .modal-body .arrows .arrow-up, #product-modal .modal-content .modal-body .arrows .arrow-down{
    width: 32px;
    height: 32px;
    font-size: 28px;
    background-color: #fff;
    border:  2px solid #f6f6f6;
    border-radius: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
}

#product-modal .modal-content .modal-body .arrows .arrow-up:hover, #product-modal .modal-content .modal-body .arrows .arrow-down:hover{
    background-color: #2B2B2B;
    color: #fff;
}

#product-modal .modal-content .modal-body .arrows .arrow-up{
    right: 28px;
    top: -4px;
}

#product-modal .modal-content .modal-body .arrows .arrow-down{
    right: 28px;
    bottom: -36px;
}


#product-modal .modal-content .modal-body .arrows{
    color: #2B2B2B;
    user-select: none;
}

#product-modal .modal-content .modal-body .mask{
    max-height: 40rem;
}

#product-modal .modal-content .modal-body .product-images img{
    border-radius: 8px;
}

#product-modal .modal-content .modal-body .product-images img:hover, .product-images>li.thumb-container .thumb.selected{
    border: #2B2B2B 2px solid;
}

#product .scroll-box-arrows i{
    bottom: 42px;
    user-select: none;
    text-align: center;
    border:  2px solid #f6f6f6;
    border-radius: 32px;
    background-color: #fff;
    line-height: normal;
    width: 32px;
    height: 32px;
    display: flex;
    justify-content: center;
    align-items: center;
}


#product .scroll-box-arrows i:hover{
    background-color: #2B2B2B;
    color: #fff;
}

#wrapper .breadcrumb li, .product-images>li.thumb-container{
    user-select: none;
}

.product-container .product-add-to-cart .add-to-cart{
    gap: 16px;
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    border: 2px solid #2B2B2B;
    padding: 8px 16px;
    text-wrap: wrap;
    font-weight: bold;
    max-width: 75%;
}

@media(max-width: 425px){
    .product-container .product-add-to-cart .add-to-cart{
        font-size: 12px;
    }
    .product-container .product-add-to-cart .add-to-cart{
        gap: 4px;
    }
    .product-container .product-add-to-cart .add-to-cart{
        max-width: 100%;
    }

}
@media (max-width: 767px) {
    .product-add-to-cart.js-product-add-to-cart {
        transition: transform 0.3s ease-in-out, opacity 0.3s ease;
    }

    .product-add-to-cart.js-product-add-to-cart.is-sticky {
        position: fixed;
        bottom: 50px;
        left: 0;
        width: 100%;
        background: #fff;
        z-index: 998;
        padding: 16px;
        box-shadow: 0 -4px 5px rgba(0, 0, 0, 0.05);
        transform: translateY(0);
        opacity: 1;
        border-radius: 32px 32px 0 0;
    }

    .is-sticky .product-quantity {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        margin: 0 !important;
    }

    .is-sticky .qty {
        width: 100px !important;
        margin: 0 !important;
    }

    .is-sticky .add {
        flex: 1;
        margin: 0 !important;
        justify-content: center;
    }

    .is-sticky .add-to-cart {
        width: 100% !important;
        height: 48px !important;
        margin: 0 !important;
    }

    .is-sticky #product-availability,
    .is-sticky .product-minimal-quantity {
        display: none !important;
    }
}

@keyframes slideUp {
    from { transform: translateY(100%); }
    to { transform: translateY(0); }
}


.product-container .images-container .product-images>li.thumb-container .thumb.selected,
.product-container .images-container .product-images>li.thumb-container .thumb:hover {
    border: 2px solid #f6f6f6;
    border-radius: 16px;
}

.product-container .images-container .zoom-in-icon{
    color: #fff;
    font-size: 42px;
}

.product-container .images-container .product-cover .layer:hover {
    opacity: 0.6;
    border-radius: 16px;
}

.product-cover .layer{
    background-color: rgba(0, 0, 0, 0.5);
}

.product-container .blockreassurance_product .block-title{
    font-weight: bold;
}

.product-container .product-cover{
    position: relative;
    margin: 0;
}

.product-container .wishlist-button-add,  .product .wishlist-button-add, .products article .wishlist-button-add{
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1;
    background-color: #fff;
    box-shadow: none;
    border: 2px solid #f6f6f6;;
}

.thumbnail-container .wishlist-button-add i{
    color: #2B2B2B;
}

.product-container .control-label{
    font-weight: bold;
    letter-spacing: -0.04em;
    font-size: 16px;
}

@media (max-width: 768px){
    .product-container .product-name{
        font-size: 20px;
    }
    .product-container .product-prices .current-price-value{
        font-size: 24px;
    }
    .product-container .product-right-side{
        gap: 0;
    }
    .product-discounts{
        margin: 0;
    }
    .product-prices{
        margin: 0;
    }
    .product-container .product-prices .product-price, .product-container .product-prices .current-price{
        font-size: 14px;
    }
    .product-container .control-label{
        font-size: 14px;
    }
    .selected-option-display .selected-content .color-name{
        font-size: 14px;
    }
}

.product-container  .wishlist-button-add i {
    color: #2B2B2B;
}

.product-container .add{
    margin: 0;
    width: 100%;
}

.product-container .product-quantity{
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap:16px
}

@media(max-width: 425px){
    .product-container .product-quantity{
        gap: 8px;
    }
}

.product-container .custom-qty-selector{
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #f6f6f6;
    border-radius: 32px;
}

.product-container .custom-qty-selector .qty-max-reached {
    background-color: #f4f4f4;
    color: #ccc;
    cursor: not-allowed;
    border-color: #ddd;
}

.product-container .qty{
    margin: 0;
}

#product #content {
    margin: 0;
}
.tabs{
    padding: 0;
}

/*Product variants*/
.input-radio+span{
    border: 2px solid #f6f6f6;
    border-radius: 32px;
    padding: 4px 16px;
}

.product-variants .product-variants-item ul[id^="group_"] {
    display: flex;
    gap: 8px;
}

.product-variants>.product-variants-item select{
    min-height: 46px;
}

.product-variants>.product-variants-item{
    margin-bottom: 1rem;
    margin-top: 0;
}

.input-radio+span{
    font-size: 16px;
    padding: 8px 10px;
    font-weight: normal;
}

.input-radio:checked+span{
    font-weight: bold;
}

@media(max-width: 768px){
    .product-variants>.product-variants-item select{
        width: 100%;
    }
}

/*Product Color Picker*/
.product-variants>.product-variants-item ul li{
    margin-right: 0;
}

.custom-color-dropdown {
    position: relative;
    border: 2px solid #f6f6f6;
    border-radius: 32px;
    width: 50%;
}

.selected-option-display {
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    user-select: none;
    background: none;
    border: none;
    margin: 0;
    font: inherit;
    color: inherit;
    text-align: left;
    width: 100%;
    padding: 8px 10px;
}

.selected-option-display .navbar-toggler{
    padding: 0;
}


.selected-option-display:focus {
    outline: none;
}

.selected-option-display .collapse-icons {
    display: flex;
    align-items: center;
}
.selected-option-display .collapse-icons span {
    font-size: 18px;
    line-height: 1;
}
.selected-option-display .collapse-icons .add {
    display: inline-block;
}
.selected-option-display .collapse-icons .remove {
    display: none;
}
.selected-option-display[aria-expanded="true"] .collapse-icons .add {
    display: none;
}
.selected-option-display[aria-expanded="true"] .collapse-icons .remove {
    display: inline-block;
}

.selected-option-display .selected-content {
    display: flex;
    align-items: center;
    gap: 8px;
}

.selected-option-display .selected-content .color-name{
    font-weight: bold;
}

.custom-color-dropdown .options-list {
    border: 1px solid #ddd;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.05);
    border-radius: 8px;
    background: #fff;
    z-index: 1000;
    padding: 0;
    min-width: 180px;
    width: 100%;
    position: absolute;
    top: 100%;
    list-style: none;
    right: 0;
    left: auto;
    margin-top: 2px;
    opacity: 0;
    visibility: hidden;
    transform: scaleY(0.9);
    transform-origin: top;
    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0s 0.3s;
    max-height: 250px;
    overflow-y: auto;
}

.custom-color-dropdown.open{
    border: 2px solid rgba(43, 43, 43, 0.5);
}

.custom-color-dropdown.open .options-list {
    opacity: 1;
    visibility: visible;
    transform: scaleY(1);
    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0s 0s;
}

.custom-color-dropdown .option {
    margin: 0;
    padding: 0;
}

.custom-color-dropdown .option label {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    padding: 8px 10px;
    color: #2B2B2B;
    text-decoration: none;
    white-space: nowrap;
    font-size: 14px;
    cursor: pointer;
    border-radius: 8px;
}

.custom-color-dropdown .option label:hover {
    box-shadow: 2px 4px 16px 0 rgba(0, 0, 0, 0.1);
    color: #2B2B2B;
    font-weight: bold;
}

.custom-color-dropdown .color-swatch {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background-size: cover;
    background-position: center;
    flex-shrink: 0;
}

.custom-color-dropdown .input-color-hidden {
    display: none;
}

.custom-color-dropdown .option input:checked + .color-swatch + .color-name {
    font-weight: bold;
}

@media(max-width: 768px){
    .custom-color-dropdown{
        width: 100%;
    }
}

/*page not found*/
#products .page-not-found{
    padding: 0;
    background:none;
}

#pagenotfound #main .page-header{
    margin-bottom: 0;
}

/*#pagenotfound #main .page-content{*/
/*    margin-bottom: 3rem;*/
/*}*/

/*Category Page*/
.block-category{
    min-height: auto;
}
#products .page-not-found{
    max-width: 100%;
}

#category #products .up .btn-secondary{
    color: #2B2B2B;
    width: 100%;
    font-size: 14px;
    padding: 8px 16px;
}

#products{
    display: flex;
    gap: 16px;
    flex-direction: column;
}

#category #products .up .btn-secondary:active, #category #products .up .btn-secondary:hover{
    color: #fff;
}

#js-product-list-header h1{
    letter-spacing: -0.04em;
    text-transform: none;
    font-size: 32px;
    margin-bottom: 1rem;
}

@media(max-width: 768px){
    #js-product-list-header,#js-product-list-header h1{
        font-size: 24px;
    }
    #category #wrapper .container .breadcrumb{
        margin: 0;
    }
    .products-selection .showing, #js-product-list .pagination>div:first-child {
        font-size: 12px;
    }
}

#js-product-list-header .card-block{
    padding: 0 0 16px 0;
    margin: 0;
}

.products-selection {
    display:flex;
    flex-wrap: wrap;
}

#products .products{
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 16px;
}

@media (max-width: 1200px) {
    #products .products {
        grid-template-columns: repeat(4, 1fr);
    }
}
@media (max-width: 990px) {
    #products .products {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media (max-width: 480px) {
    #products .products {
        grid-template-columns: repeat(2, 1fr);
    }
}

#category .js-product, #search .js-product{
    padding: 0;
    width: 100%;
}

.product-miniature .thumbnail-container{
    margin: 0;
    display: flex;
    height: 100%;
    flex-direction: column;
}

/*Sort orders*/
.products-sort-order {
    padding: 0;
    margin: 0;
    width: 100%;
}

a.select-list.js-search-link[href*="product.reference.asc"], a.select-list.js-search-link[href*="product.reference.desc"], .select-list.js-search-link:nth-last-child(2), .select-list.js-search-link:nth-last-child(1) {
    display: none;
}

.products-sort-order .select-title, #category .filter-button button.btn-secondary {
    border-radius: 32px;
    text-align: center;
    display: flex;
    gap: 4px;
    justify-content: center;
    align-items: center;
    white-space: nowrap;
    padding: 10px 16px;
    text-transform: none;
    font-size: 14px;
    font-weight: 700;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border: 0;
}

.products-sort-order  .dropdown-menu a{
    font-size: 14px;
}

.products-sort-order .collapse-icons .add {
    display: inline-block;
}

.products-sort-order .collapse-icons .remove {
    display: none;
}

.products-sort-order .select-title[aria-expanded="true"] .collapse-icons .add {
    display: none;
}

.products-sort-order .select-title[aria-expanded="true"] .collapse-icons .remove {
    display: inline-block;
}

.products-sort-order .collapse-icons {
    position: absolute;
    top: 8px;
    right: 16px;
}

.products-sort-order .select-title {
    position: relative;
    width: 100%;
    max-width: 320px;
}

.sort-by-row {
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: space-between;
}

.products-sort-order .dropdown-menu {
    top: 100%;
    width: 100%;
    max-width: 320px;
    background: #fff;
    border-radius: 8px;
    padding: 0;
    list-style: none;
    margin: 2px 0;
    border: 1px solid #ddd;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.05);
    opacity: 0;
    visibility: hidden;
    transform: scaleY(0.9);
    transform-origin: top;
    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0s 0.3s;
    display: block !important;
}

.products-sort-order.open .dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: scaleY(1);
    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0s 0s;
}

.products-sort-order .select-title:focus {
    outline: none;
}

.products-sort-order.dropdown .dropdown-menu a:hover {
    background-color: #2B2B2B;
    color: #fff;
    border-radius: 8px;
}

.filter-sorting-container {
    width: 100%;
    padding: 0;
}

#category #search_filters_wrapper .btn-secondary.ok {
    color: #fff;
    font-size: 18px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

#category #js-product-list-footer .card .card-block{
    padding: 0;
}

#category #js-product-list-footer .card{
    margin-bottom: 2rem;
}

#category #search_filters .facet .facet-title{
    font-weight: 600;
    font-size: 14px;
}

@media (max-width: 767px) {
    #category .sort-by-row {
        width: 100%;
        flex-direction: column;
        justify-content: stretch;
        gap: 16px;
    }

    #category .products-sort-order, #category .filter-button, #category .filter-sorting-container {
        width: 100%;
    }

    #category .filter-sorting-container{
        padding: 0;
    }

    .products-sort-order .sort-selected-option {
        font-size: 14px;
        font-weight: 700;
    }
    #category .active_filters .filter-block .close{
        font-size: 18px;
    }

    #category #left-column #search_filter_controls button {
        margin: 0;
    }

    .products-selection .sort-by-row .select-title {
        max-width: 100%;
        font-size: 14px;
    }

    #category #search_filter_toggler{
        font-size: 14px;
    }

    #category .products-sort-order.open .dropdown-menu{
        max-width: 100%;
    }

    #category #left-column #search_filter_controls{
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        background: #fff;
        padding: 16px;
        box-shadow: 0 -8px 8px rgba(0, 0, 0, 0.1);
        z-index: 999;
        display: flex;
        gap: 10px;
        border-radius: 20px 20px 0 0;
        margin: 0;
    }

    #search_filters{
        padding-bottom: 90px;
    }

    .clear-all-wrapper,
    #_desktop_search_filters_clear_all {
        display: none !important;
    }

    body.filters-opened .mobile-bottom-nav {
        display: none;
    }

    #search_filter_controls #_mobile_search_filters_clear_all.btn-secondary{
        flex: 1;
        order: 1;
    }

    #search_filter_controls .js-search-filters-clear-all{
        width: 100%;
    }

    #search_filter_controls .btn.ok {
        width: 100%;
        margin: 0;
        height: 48px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    #_mobile_search_filters_clear_all {
        display: none;
    }
}

@media screen and (max-width: 600px) {
    .btn {
        font-size: 16px;
        padding: 8px 14px;
    }
}

/*Search Page*/
#search .products-selection .filter-button .btn-secondary{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    border: none;
    width: 100%;
}

#search .products-selection .sort-by-row{
    display: flex;
    flex-direction: column;
    gap: 16px;
}

#search #left-column{
    padding-right: 16px;
}

#search #content-wrapper{
    padding-left: 16px;
}

#search #search_filters {
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 32px 16px;
    width: 100%;
}



@media(max-width: 768px){
    #search .products-selection .filter-button{
        padding: 0;
        flex: 1;
        width: 100%;
    }
    #search #left-column, #search #content-wrapper{
        padding: 0;
    }
    #search .products-sort-order .dropdown-menu{
        max-width: inherit;
    }
    #search #left-column #search_filters{
        padding: 8px 4px;
    }
    #search #left-column #search_filters .facet .h6{
        font-size: 16px;
        text-transform: none;
        padding: 20px;
        margin: 0;
    }
    #search #search_filter_toggler{
        font-size: 14px;
        font-weight: 700;
    }
    #search #search_filter_controls .btn-primary.ok{
        width: 100%;
    }
    #search #left-column #search_filters .facet ul li{
        padding: 10px 16px;
    }
    #search #search_filters .facet .title{
        align-items: center;
    }
    #search #search_filters .facet{
        padding: 0;
    }
    #search .title.collapsed .add{
        display: inline-block;
    }
    #search .title.collapsed  .remove {
        display: none;
    }

    #search .title:not(.collapsed) .add {
        display: none;
    }
    #search .title:not(.collapsed) .remove {
        display: inline-block;
    }

    #search #search_filters .facet .collapse {
        display: none;
    }

    #search #search_filters .facet .collapse.show,
    #search #search_filters .facet .title:not(.collapsed) + .collapse {
        display: block;
    }

    #search #search_filters .facet .title .collapse-icons{
        padding-top: 0;
    }
}

/*Category tree*/
#left-column .block-categories{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 32px 16px ;
    width: 100%;
}

.block-categories .collapse-icons .add:hover,
.block-categories .collapse-icons .remove:hover,
.block-categories .arrows .arrow-down:hover,
.block-categories .arrows .arrow-right:hover{
    color:#454545;
}

#category-tree-content li[data-depth="0"] > div > .category-sub-menu {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding-left: 8px;
    padding-top: 8px;
}

#category-tree-content .category-sub-menu{
    display: flex;
    flex-direction: column;
    gap:8px;
    margin-top: 0;
    padding: 8px 0;
}

#category-tree-content .category-sub-menu .navbar-toggler span{
    font-size: 28px;
}

#left-column .block-categories .block-categories-title .h6 {
    font-size: 18px;
    font-weight: bold;
    padding: 0;
    margin: 0;
}

#left-column .block-categories .block-categories-title{
    text-align: center;
    position: relative;
}

.block-categories-title .icon-down {
    font-size: 24px;
    display: inline-block;
}

.block-categories-title .icon-up {
    font-size: 24px;
    display: none;
}

.block-categories .category-sub-menu li[data-depth="1"]>a{
    font-size: 16px;
    text-decoration: none;
}



.block-categories .category-sub-menu li[data-depth="0"]>a {
    font-size: 18px;
    text-decoration: none;
}

.block-categories .category-sub-menu li[data-depth="1"] span.arrows.collapse-icons span{
    font-size: 24px;
}


@media (min-width: 768px) {
    #category-tree-content.collapse {
        display: block;
        visibility: visible;
    }
}
@media (max-width: 767px) {
    #left-column .block-categories {
        background-color: #ffffff;
        border-radius: 32px;
        overflow: hidden;
        padding: 0;
    }

    #left-column .block-categories .block-categories-title {
        background-color: #ffffff;
        color: #2B2B2B;
        padding: 12px 16px;
        text-align: left;
        display: flex;
        justify-content: center;
        align-items: center;
        cursor: pointer;
    }
    #left-column #search_filters #_desktop_search_filters_clear_all{
        padding: 0 16px;
    }

    #left-column .block-categories .block-categories-title .h6 {
        color: #2B2B2B;
        font-size: 18px;
        font-weight: bold;
        margin: 0;
    }

    .block-categories .block-categories-title .collapse-icons{
        top: 8px;
        right: 16px;
    }

    .block-categories-title .collapse-icons span{
        font-size: 28px;
    }

    #category-tree-content {
        font-size: 16px;
        padding: 16px;
        position: relative;
        z-index: 1;
    }

    #category-tree-content .category-sub-menu {
        display: flex;
        flex-direction: column;
        gap: 16px;
        list-style: none;
        padding: 0;
    }

    .block-categories .category-sub-menu .collapse.in ul li[data-depth="1"] {
        display: flex;
        flex-direction: column;
        gap: 16px;
    }

    .block-categories .category-sub-menu li[data-depth="1"]>a{
        font-size: 16px;
    }

    .block-categories .category-sub-menu li[data-depth="0"]>a {
        font-size: 18px;
        padding-bottom: 8px;
    }

    .block-categories-title .collapse-icons .add {
        display: inline-block;
    }

    .block-categories-title .collapse-icons .remove {
        display: none;
    }

    .block-categories-title[aria-expanded="true"] .collapse-icons .add {
        display: none;
    }

    .block-categories-title[aria-expanded="true"] .collapse-icons .remove {
        display: inline-block;
    }


    #category-tree-content .category-sub-menu a,
    #category-tree-content .category-sub-menu li > span {
        color: #2B2B2B;
        text-decoration: none;
        font-weight: 500;
        font-size: 16px;
    }



    #category-tree-content .category-sub-menu .has-child > a {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    #category-tree-content .category-sub-menu .navbar-toggler {
        display: flex;
        align-items: center;
        font-size: 20px;
        color: #2B2B2B;
    }
}

/*Filters*/
.active_filters{
    background: none;
    padding: 0;
}

#category #search_filters{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 32px 16px ;
    width: 100%;
}

#category .filter-button{
    width: 100%;
    padding: 0;
}

#category #search_filters_wrapper{
    padding: 0;
}

#category #search_filter_controls{
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.active_filters .active-filter-title{
    color: #2B2B2B;
    font-size: 14px;
}

#search_filters>.h6{
    font-size: 22px;
    font-weight: 600;
}

.active_filters .filter-block{
    border: 2px solid #f6f6f6;
    border-radius: 32px;
    margin-bottom:0;
}

.active_filters .filter-block .close{
    margin: 0;
}

#search_filters .ui-slider .ui-slider-handle{
    border-radius: 32px;
    background-color: #2B2B2B;
}

#search_filters .ui-slider .ui-slider-range{
    background-color: #fff;
    border: 1px solid #f6f6f6;
}

#search_filters .btn-tertiary{
    color: #2B2B2B;
    border: 2px solid #f6f6f6;
    background-color: transparent;
    border-radius: 32px;
    width: 100%;
}

@media (max-width: 767px) {
    #category #left-column #search_filters_wrapper {
        margin: 0;
        padding-bottom: 60px;
    }
    #category #left-column #search_filters{
        box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
        padding: 8px 4px;
    }
    #category #left-column #search_filters .facet{
        border-bottom: none;
    }
    #category #left-column #search_filters .facet .h6{
        font-size: 16px;
        text-transform: none;
    }
    #search_filters>.h6{
        font-size: 18px;
    }
}

/*embla*/
.embla {
    position: relative;
    overflow: hidden;
    width: 100%;
}

.embla__viewport {
    overflow: hidden;
    width: 100%;
}

.embla__container {
    display: flex;
}

.embla__slide {
    position: relative;
    min-width: 16.666%;
    max-width: 16.666%;
    padding: 0 8px;
    user-select: none;
}

.embla__slide .js-product.product{
    height: 100%;
}

@media (min-width: 1600px) {
    .embla__slide {
        min-width: 14.285%;
        max-width: 14.285%;
    }
}

@media (max-width: 1200px) { .embla__slide { min-width: 20%; } }
@media (max-width: 992px) { .embla__slide { min-width: 25%; } }
@media (max-width: 768px) { .embla__slide { min-width: 33.333%; } }
@media (max-width: 480px) { .embla__slide { min-width: 50%; padding: 0 4px} }
@media (max-width: 340px) { .embla__slide { min-width: 100%} }


/*arrows for embla*/
.embla__button {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.9);
    border: 2px solid #f6f6f6;
    color: #2B2B2B;
    font-size: 28px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.1s ease;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;

}
.embla__button span{
    text-align: center;
}

.embla__button:hover {
    background: #2B2B2B;
    color: #fff;
}

.embla__prev {
    left: 0;
}

.embla__next {
    right: 0;
}

.embla__button:disabled {
    opacity: 0.3;
    cursor: not-allowed;
}

@media (max-width: 768px) {
    .embla__prev { left: 5px; }
    .embla__next { right: 5px; }
    .embla__button {
        width: 40px;
        height: 40px;
        font-size: 22px;
    }
}

/*Cart*/
#cart .card-block .h1{
    font-size: 36px;
    text-transform: none;
    letter-spacing: -0.04em;
    font-weight: 600;
    margin: 0;
    padding: 16px 0;
}

#cart .card-block {
    padding: 0;
    margin: 0;
}

#cart .cart-items{
    display: flex;
    gap: 16px;
    flex-direction: column;
}

#cart .cart-grid{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 48px 32px;
    margin: 0;
    display: flex;
    gap: 24px;
    flex-wrap: wrap;
}

#cart .cart-grid .cart-grid-body{
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
}

#cart .cart-grid .cart-grid-body img{
    margin-top: auto;
}

#cart .cart-grid .cart-grid-right{
    padding: 0;
    flex: 1 1 320px;
}

.cart-photo{
    max-width: 66%;
    padding: 10px;
}

@media(max-width: 768px){
    .cart-photo{
        max-width: 100%;
    }
}

#cart .cart-item{
    padding: 16px;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
}

#cart .cart-grid .cart-summary .cart-summary-line{
    margin: 0;
    padding-top: 1rem;
    padding-bottom: 0;
}

#cart .card-block::after, #cart .cart-grid.row::after{
    display: none;
}

#cart .product-line-grid {
    display: flex;
    align-items: stretch;
    gap: 4px;
    flex-direction: row;
}

.card-block.cart-detailed-subtotals+.cart-summary-totals .cart-total{
    border-top:2px solid #f6f6f6;
}

#cart .product-info-box{
    display: flex;
    gap: 8px;
    flex: 1;
    flex-direction: column;
}

.product-line-grid .product-line-grid-body .product-attributes .product-line-info:not(.product-price) {
    border: 2px solid #f6f6f6;
    border-radius: 32px;
    padding: 4px  8px ;
    font-size: 12px;
    display: flex;
    align-items: center;
    gap: 4px;
    user-select: none;
}

.product-line-grid .product-line-grid-body .product-detailed-info{
    display: flex;
    justify-content: space-between;
    gap: 8px
}
.product-line-grid .product-line-grid-body .product-detailed-info .product-line-info .label{
    font-size: 14px;
    font-weight: bold;
}

.cart-grid-right .promo-discounts{
    display: flex;
    flex-direction: column;
    gap: 8px;
}

#checkout #js-checkout-summary .card-block.promo-discounts,
#checkout #js-checkout-summary .card-block.promo-name{
    padding: 0;
}

#checkout #js-checkout-summary .card-block.promo-name:after{
    display: none;
}

#checkout #js-checkout-summary .promo-name .cart-summary-line{
    margin: 0;
}

.product-line-grid .product-line-grid-body .product-detailed-info .product-attributes .product-line-info .label{
    font-size: 12px;
    font-weight: 700;
    color: #2B2B2B;
}
.product-line-grid .product-line-grid-body .product-detailed-info .product-attributes .product-line-info .value{
    font-weight: 700;

    color:#454545;
}

.product-line-grid .product-line-grid-body .product-attributes{
    display: flex;
    gap: 2px;
    flex-wrap: wrap;
}

.product-line-grid .product-line-info .product-attributes .product-line-info>.label{
    font-weight: 600;
    font-size: 14px;
}

#cart .product-line-grid-body {
    margin: 0;
}

#cart .right-side-cart-product{
    display: flex;
    gap: 16px;
    justify-content: space-between;
    flex: 1;
}

#cart .product-line-grid .product-line-grid-right .row{
    display: flex;
    align-items: center;
    justify-content: space-around;
    gap: 8px;
    margin: 0;
    flex: 1;
}

#cart .product-line-grid-right .price{
    text-align: center;
    padding: 0;
    flex: 1;
}

#cart .product-line-grid::after,
#cart .product-line-grid .product-line-grid-right .row:after{
    display: none;
}

#cart .product-line-grid-left {
    flex: 0 0 100px;
}

#cart .product-line-grid-right {
    padding: 0;
    display: flex;
    justify-content: space-between;
}


#cart .product-line-grid .product-image img{
    border-radius: 18px;
}

#cart .product-line-grid .product-price{
    font-size: 16px;
    color:#2B2B2B;
    margin: 0;
}

#cart .product-line-grid .product-price .current-price{
    font-size: 16px;
}

#cart .product-line-grid .product-line-grid-left,
#cart .cart-grid .cart-grid-right,
#cart .cart-grid .cart-grid-body{
    padding: 0;
    margin: 0;
}

#cart .product-line-grid-body {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap:8px;
    padding: 0;
    flex: 1;
}

#cart .product-line-grid .product-price .current-price .price{
    color: #2b2b2b;
}

#cart .cart-grid-body .cart-overview{
    padding:0;
}

#cart .product-line-grid .product-line-info .label:hover{
    color: #454545;
}

#cart .product-line-grid .clearfix::after{
    display: none;
}

#cart .cart-grid-right .checkout .btn-primary{
    padding: 16px 8px ;
}

#cart .cart-grid-right .checkout .btn.btn-primary.disabled{
    background-color: #454545;
    color: #fff;
    border: none;
}

#cart .cart-grid-right .cart-summary,
#cart .cart-grid-right .cart-detailed-totals,
#cart .cart-grid-right,
#cart .cart-grid .cart-summary .cart-detailed-subtotals{
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin:0;
}

.cart-voucher{
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.cart-summary-line{
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.code-label{
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 4px 0;
    font-size: 14px;
}

.promo-container{
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.code-actions{
    display: flex;
    align-items: center;
    gap: 8px;
}

.cart-summary-line::after{
    display: none;
}

.block-promo .promo-name{
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.block-promo.promo-highlighted{
    text-align: left;
    padding: 0;
    font-weight: 500;
    font-size: 14px;
}

.block-promo .promo-code-button{
    text-align: center;
    padding: 0;
}

#cart .card-block.promo-discounts .cart-summary-line,
#cart .promo-name.card-block .cart-summary-line,
#checkout #js-checkout-summary .promo-name .cart-summary-line,
#checkout #js-checkout-summary .js-discount .cart-summary-line{
    border: 2px solid #f6f6f6;
    padding: 0 8px;
    border-radius: 32px;
}

#cart .promo-name.card-block .cart-summary-line{
    border: 2px solid #2b2b2b;
}

#checkout #js-checkout-summary .js-discount .cart-summary-line{
    margin: 0;
}

#cart .card-block.promo-discounts .cart-summary-line.js-click-voucher{
    cursor: pointer;
}

#cart .card-block.promo-discounts .cart-summary-line.js-click-voucher:hover{
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);
}

#cart .card-block.promo-discounts .cart-summary-line .code-label span.material-symbols-outlined,
.block-promo .promo-name .cart-summary-line span.material-symbols-outlined,
#checkout #js-checkout-summary .js-discount .cart-summary-line .code-label .material-symbols-outlined{
    color: #88b577;
    font-size: 24px;
    padding: 4px;
}

#cart .card-block.promo-discounts .cart-summary-line .code-label .discount-value .discount-amount,
#checkout #js-checkout-summary .js-discount .cart-summary-line .code-label .discount-value .discount-amount{
    font-size: 16px;
    color: #88b577;
    font-weight: 700;
}

#cart .card-block.promo-discounts .cart-summary-line .code-label .discount-value,
#checkout #js-checkout-summary .js-discount .cart-summary-line .code-label .discount-value{
    display: flex;
    gap: 8px;
    align-items: center;
}

.cart-grid-right .promo-discounts .cart-summary-line .label:hover .code{
    color: #454545;
}

.product-line-grid-right .cart-line-product-actions .remove-from-cart{
    display: flex;
    margin: 0;
    color: #d13939;
}

#cart .cart-grid-body .cart-overview .no-items{
    padding: 0;
    width: auto;
    font-weight: bold;
}

@media (max-width: 768px){
    #cart .cart-grid {
        padding: 10px;
        gap: 15px;
    }

    #cart .cart-detailed-actions.js-cart-detailed-actions.card-block {
        position: fixed;
        bottom: 70px;
        left: 0;
        width: 100%;
        z-index: 1000;
        background: #fff;
        padding: 8px 10px;
        box-shadow: 0 -4px 5px rgba(0, 0, 0, 0.05);
        border-radius: 32px 32px 0 0;
        border-top: 1px solid #f0f0f0;
        margin-bottom: 0;
    }

    .product-line-grid .product-line-grid-body .product-attributes .product-line-info:not(.product-price),
    .product-line-grid .product-line-grid-body .product-detailed-info .product-attributes .product-line-info .label{
        font-size: 10px;
    }

    #cart .cart-item {
        padding: 16px 8px;
    }

    #cart .cart-grid-body .cart-overview .no-items{
        text-align: center;
        padding: 16px 8px;
    }
    .cart-overview:has(.no-items) {
        display: flex;
        justify-content: center;
    }

    #cart .product-line-grid {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
    }

    #cart .product-line-grid-left {
        flex: 0 0 80px;
        width: 80px;
        max-width: 80px;
        padding-right: 10px;
    }

    #cart .product-line-grid .product-image img {
        width: 100%;
        height: auto;
        border-radius: 8px;
        aspect-ratio: 1/1;
        object-fit: cover;
    }

    #cart .product-line-grid .product-price .current-price .price{
        font-size: 14px;
    }

    #cart .right-side-cart-product {
        flex: 1;
        width: calc(100% - 80px);
        display: flex;
        flex-direction: column;
        padding-left: 0;
        gap: 8px;
    }

    #cart .product-line-grid-body {
        width: 100%;
        flex-direction: column;
        align-items: start;
    }

    .product-line-grid .product-line-grid-body .product-detailed-info .product-line-info .label {
        font-size: 14px;
        font-weight: 600;
        display: block;
        text-align: left;
    }

    .product-line-grid .product-line-grid-body .product-attributes {
        color: #454545;
        flex-wrap: wrap;
        gap: 4px;
    }

    .product-line-grid .product-line-grid-body .product-attributes .product-line-info {
        margin-bottom: 0;
        padding: 2px 8px;
    }

    #cart .product-line-grid-right {
        width: 100%;
        flex: 0 0 100%;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    #cart .product-line-grid-right .row {
        display: flex;
        width: 100%;
        align-items: center;
        margin: 0;
        justify-content: space-between;
    }

    #cart .qty {
        margin: 0;
        padding: 0;
    }

    #cart .input-group.bootstrap-touchspin {
        max-width: 110px;
        height: 42px;
    }

    #cart .product-line-grid-right .product-price {
        font-size: 16px;
        color: #2B2B2B;
        text-align: right;
        flex-grow: 1;
    }

    .product-line-grid-right .cart-line-product-actions .remove-from-cart {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 36px;
        height: 36px;
        border-radius: 50%;
        margin-left: 5px;
    }

    .product-line-grid-right .cart-line-product-actions .remove-from-cart .material-symbols-outlined {
        font-size: 20px;
        float: none;
    }

    #cart .cart-grid-right .checkout .btn-primary {
        width: 100%;
        padding: 14px;
        font-size: 14px;
        box-shadow: 0 4px 10px rgba(0,0,0,0.15);
    }

    #cart .sticky-summary-row{
        display: flex;
        justify-content: space-between;
        padding: 10px;
        font-weight: bold;
    }
}

/*Bootstrap inputs*/
#cart .qty{
    padding: 0;
}

#product .input-group.bootstrap-touchspin{
    max-width: 150px;
}

.input-group.bootstrap-touchspin {
    display: flex;
    align-items: stretch;
    width: auto;
    max-width: 100px;
    border: 2px solid #f6f6f6;
    border-radius: 32px;
    padding: 0;
    overflow: hidden;
}

.input-group.bootstrap-touchspin:focus-within {
    border: 2px solid #2B2B2B;
    border-radius: 32px;
}

.input-group.bootstrap-touchspin .input-group-btn-vertical {
    display: contents;
}

.input-group.bootstrap-touchspin .btn {
    border: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    height: auto;
    width: 42px;
    padding: 0;
    background-color: transparent;
    border-radius: 0;
    position: relative;
}

.input-group.bootstrap-touchspin .btn:hover::before {
    color: #454545;
}

.input-group.bootstrap-touchspin .bootstrap-touchspin-down,
.input-group.bootstrap-touchspin .js-decrease-product-quantity {
    order: 1;
}

.input-group.bootstrap-touchspin .bootstrap-touchspin-up,
.input-group.bootstrap-touchspin .js-increase-product-quantity {
    order: 3;
}

.input-group.bootstrap-touchspin #quantity_wanted,
.input-group.bootstrap-touchspin .form-control.js-cart-line-product-quantity,
.input-group.bootstrap-touchspin input[name="product-quantity-spin"] {
    order: 2;
    text-align: center;
    flex-grow: 1;
    border: none;
    padding: 8px;
    height: auto;
    background: transparent;
    font-size: 14px;
}

.input-group.bootstrap-touchspin #quantity_wanted::-webkit-outer-spin-button,
.input-group.bootstrap-touchspin #quantity_wanted::-webkit-inner-spin-button,
.input-group.bootstrap-touchspin .form-control.js-cart-line-product-quantity::-webkit-outer-spin-button,
.input-group.bootstrap-touchspin .form-control.js-cart-line-product-quantity::-webkit-inner-spin-button,
.input-group.bootstrap-touchspin input[name="product-quantity-spin"]::-webkit-outer-spin-button,
.input-group.bootstrap-touchspin input[name="product-quantity-spin"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.input-group.bootstrap-touchspin .btn i.material-icons {
    display: none;
}

.input-group.bootstrap-touchspin .bootstrap-touchspin-down::before,
.input-group.bootstrap-touchspin .js-decrease-product-quantity::before {
    content: "\2212";
    font-size: 18px;
    font-weight: bold;
    color: #2B2B2B;
    line-height: 1;
}

.input-group.bootstrap-touchspin .bootstrap-touchspin-up::before,
.input-group.bootstrap-touchspin .js-increase-product-quantity::before {
    content: "+";
    font-size: 18px;
    font-weight: bold;
    color: #2B2B2B;
    line-height: 1;
}

.input-group.bootstrap-touchspin .btn {
    border: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    height: auto;
    background-color: transparent;
}

.input-group.bootstrap-touchspin .btn:hover::before {
    color: #454545;
}

#quantity_wanted {
    height: 38px;
    padding-top: 6px;
    padding-bottom: 6px;
}

@media (max-width: 768px){
    #cart .input-group.bootstrap-touchspin{
        max-width: 100px;
    }
    .input-group.bootstrap-touchspin .form-control.js-cart-line-product-quantity, .input-group.bootstrap-touchspin input[name="product-quantity-spin"]{
        font-size: 12px;
    }
}

@media (max-width: 425px){
    #product .input-group.bootstrap-touchspin{
        max-width: 100%;
        width: 100%;
    }
}

/*Forms*/
.page-header{
    text-align: center;
}

.form-group{
    margin-bottom: 0;
}

.form-group input, .form-control-select{
    background-color: transparent;
    border: 2px solid #f6f6f6;
    border-radius: 32px;
    padding-left: 16px;
    color: #2B2B2B;
    font-size: 16px;
}
.form-group.row {
    flex-direction: column;
}

.form-group.row > [class*="col-"]{
    max-width: 100%;
    flex-basis: 100%;
    width: 100%;
    margin-left: 0;
    padding-left: 0;
    padding-right: 0;
}

.form-control-label{
    text-align: left;
    padding-bottom: 4px;
}

.login-form .forgot-password {
    text-align: center;
    width: 100%;
}

.page-customer-account #content{
    padding: 0;
}

.input-group .form-control:not(:last-child){
    border-radius: 32px;
}

[data-action="show-password"] .icon-hide {
    display: none;
}

[data-action="show-password"] .icon-show {
    display: inline-block;
}

.input-group.focus{
    outline: none;
    border:none;
}

.js-parent-focus.input-group {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
}

.js-parent-focus input:focus, .form-control:focus {
    outline: 2px solid #2B2B2B;
    border:2px solid #f6f6f6;
}

.js-parent-focus .btn[data-action="show-password"] {
    margin-left: -60px;
    z-index: 10;
    background: transparent;
    border: none;
    box-shadow: none;
    outline: none;
}

form .custom-form-fields{
    max-width: 480px;
    margin: 0 auto;
    padding: 0;
}

@media(max-width: 768px){
    form .form-control-label{
        font-size: 14px;
    }
}

.page-content.card form .btn[type="submit"]{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}
.page-content.card form .btn[type="submit"].btn-primary{
    flex: 0 0 25%;
}


#checkout .my-2{
    margin-bottom: 0 !important;
    display: flex;
    gap: 16px;
}

#checkout .col-xs-12 {
    padding: 0 16px;
}

#checkout .my-2 .nav-item{
    border: 2px solid #f6f6f6;
    border-radius: 32px;
    padding: 10px;
    margin: 0;
}

body#checkout section.checkout-step .delivery-options .carrier-extra-content, .inpost-shipping-container{
    padding: 0;
    margin: 0;
    background: none;
}

body#checkout section.checkout-step .delivery-options .carrier-extra-content .col-xs-12,
body#checkout section.checkout-step .delivery-options .carrier-extra-content .col-sm-12{
    padding: 0;
}

body#checkout section.checkout-step .delivery-options .carrier-extra-content .col-sm-12:last-child{
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding: 8px 32px 16px;
    gap: 16px;
}

body#checkout #notifications{
    padding: 0 16px;
}
body#checkout section.checkout-step .js-inpost-shipping-locker-errors{
    padding: 0 8px;
}

body#checkout section.checkout-step .delivery-options .carrier-extra-content .inpost-shipping-machine-info{
    border: 2px solid #ffcd00;
    grid-column: 1 / -1;
    border-radius: 24px;
    padding: 8px 16px;
    text-align: center;
    margin: 0 -8px;
}

body#checkout section.checkout-step .delivery-options .form-group.gls-mobile{
    margin-bottom: 1rem;
}

body#checkout section.checkout-step .delivery-options .gls-search{
    background-color: #061aaf;
    border-radius: 32px;
}

body#checkout  .gls-container .row > [class*="col-"]{
    padding: 0;
}

body#checkout section.checkout-step .delivery-options:has(.gls-search-form-toggler[aria-expanded="true"]) .gls-search {
    background-color: #ffffff;
    border: 2px solid #061aaf;
}

body#checkout section.checkout-step .delivery-options .gls-heading{
    background-color: #fff !important;
    border: 2px solid #f6f6f6;
    border-radius: 32px;
    color: #2B2B2B !important;
}
body#checkout section.checkout-step .delivery-options .gls-heading .gls-sub-heading{
    color: #2B2B2B !important;
}

body#checkout section.checkout-step .delivery-options .gls-search-form-toggler{
    color: #fff;
    font-weight: bold;
    font-size: 14px;
    transition: color 0.3s ease;
}

body#checkout section.checkout-step .delivery-options #gls-relay-error{
    margin: 0;
    width: 100%;
}

body#checkout section.checkout-step .delivery-options #gls-relay-error .alert{
    width: 100%;
    padding: 8px;
    margin-top: 0;
}

body#checkout section.checkout-step .delivery-options #gls-relay-error .alert-danger > .alert-text{
    margin: 0;
}

body#checkout section.checkout-step .delivery-options:has(.gls-search-form-toggler[aria-expanded="true"]) #gls-search-form{
    display: flex;
    gap: 8px;
    flex-direction: column;
}

body#checkout section.checkout-step .delivery-options .gls-search-form-toggler[aria-expanded="true"] {
    color: #2B2B2B;
    text-align: center;
}

body#checkout section.checkout-step .delivery-options .gls-container{
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
    margin-bottom: 1rem;
}

body#checkout section.checkout-step .delivery-options .gls-container .row{
    align-self: end;
}

body#checkout section.checkout-step .delivery-options .gls-container #gls-relay-container .row{
    display: flex;
    margin: 0;
    width: 100%;
    justify-content: space-between;
}

body#checkout section.checkout-step .delivery-options .gls-container #gls-relay-container .row .gls-relay-list{
    padding: 0;
    width: 40%;
}

body#checkout section.checkout-step .delivery-options .gls-container #gls-relay-container .row .gls-relay-list .row.show.relay-enable .col-xs-12{
    padding: 0;
}

body#checkout section.checkout-step .delivery-options .gls-container #gls-relay-container .row .gls-relay-list .col-select-relay{
    padding: 0;
}

body#checkout section.checkout-step .delivery-options .gls-container #gls-relay-container .row .offset-xl-2{
    margin: 0;
    width: auto;
}

body#checkout section.checkout-step .delivery-options .gls-container #gls-relay-container .row .gls-relay-map{
    padding: 0;
    flex: 1;
}

body#checkout section.checkout-step .delivery-options .gls-container #gls-relay-container .row .gls-relay-list .card-body{
    padding: 0;
}
body#checkout section.checkout-step .delivery-options .gls-search .form-group input.gls-search-input{
    background-color: #fff;
    border-radius: 32px;
}

body#checkout section.checkout-step .delivery-options .carrier-extra-content .inpost-shipping-machine-info .inpost-shipping-machine-address{
    font-size: 12px;
}

body#checkout section.checkout-step .delivery-options .delivery-option .col-sm-5 ,
body#checkout section.checkout-step .delivery-options .delivery-option .carrier-logo{
    padding: 0;
}

body#checkout section.checkout-step .delivery-options .carrier-extra-content .col-sm-12 .js-inpost-closest-machine{
    display: flex;
    flex-direction: column;
    border: 2px solid #f6f6f6;
    border-radius: 24px;
    padding: 8px;
    margin: -8px;
}

body#checkout section.checkout-step .delivery-options .carrier-extra-content .col-sm-12 .js-inpost-closest-machine .mt-2{
    margin: 0 !important;
}

body#checkout section.checkout-step .delivery-options .carrier-extra-content .col-sm-12 .inpost-shipping-button,
body#checkout section.checkout-step .delivery-options .carrier-extra-content .col-sm-12 .js-select-closest-machine
{
    font-size: 14px;
    width: 100%;
    color: #2B2B2B;
    font-weight: bold;
}

body#checkout section.checkout-step .delivery-options .carrier-extra-content .col-sm-12 .js-inpost-shipping-input{
    order: 1;
}

body#checkout section.checkout-step .delivery-options .carrier-extra-content .col-sm-12 .form-group.mb-0{
    align-self: end;
    order: 2;
    grid-column: 2;
}

body#checkout section.checkout-step .delivery-options .carrier-extra-content .font-weight-bold.mt-2{
    font-size: 11px;
    text-align: center;
}

.delivery-option .col-sm-1 {
    display: none;
}

.inpost-shipping-button:hover, .inpost-shipping-button:focus, .inpost-shipping-button.focus{
    background-color: #dfae00;
    border: 2px solid #dfae00;
}

.js-select-closest-machine:hover, .js-select-closest-machine:focus, .js-select-closest-machine.focus{
    background-color: #bcbcbc;
}

body#checkout section.checkout-step .forgot-password{
    margin: 0;
}

body#checkout section.checkout-step .delivery-options .carrier-extra-content .dpdshipping-pudo-container,
body#checkout section.checkout-step .delivery-options .carrier-extra-content .dpdshipping-pudo-cod-container{
    display: flex;
    justify-content: end;
    padding: 0 32px 16px;
}

body#checkout section.checkout-step .delivery-options .carrier-extra-content .dpdshipping-pudo-container:has(.dpdshipping-pudo-new-point){
    justify-content: end;
}

body#checkout section.checkout-step .delivery-options .carrier-extra-content .dpdshipping-pudo-container .dpdshipping-pudo-selected-point span{
    font-size: 16px;
    font-weight: bold;
}

body#checkout section.checkout-step .delivery-options .carrier-extra-content.dpdshipping-pudo-cod-container span,
body#checkout section.checkout-step .delivery-options .carrier-extra-content .dpdshipping-pudo-cod-selected-point p .dpdshipping-cod-selected-point{
    font-size: 16px;
    font-weight: bold;
}

body#checkout section.checkout-step .delivery-options .carrier-extra-content .dpdshipping-pudo-open-map-btn,
body#checkout section.checkout-step .delivery-options .carrier-extra-content .dpdshipping-pudo-cod-open-map-btn,
body#checkout section.checkout-step .delivery-options .dpdshipping-pudo-change-map-btn,
body#checkout section.checkout-step .delivery-options .dpdshipping-pudo-cod-change-map-btn{
    margin: 0;
    background-color: #dc0032;
    color: #fff;
    font-size: 14px;
    width: 100%;
    font-weight: 700;
}

body#checkout section.checkout-step .dpdshipping-pudo-selected-point{
    flex: 1;
}

body#checkout section.checkout-step .dpdshipping-pudo-selected-point p,
body#checkout section.checkout-step .dpdshipping-pudo-cod-selected-point p{
    display: flex;
    flex-direction: column;
    border: 2px solid #dc0032;
    border-radius: 24px;
    padding: 8px 16px;
    margin-bottom: 8px;
    gap: 16px;
    align-items: center;
    text-align: center;
}

body#checkout section.checkout-step .dpdshipping-pudo-new-point span,
body#checkout section.checkout-step .delivery-options .carrier-extra-content .dpdshipping-pudo-cod-new-point span{
    font-size: 14px;
    font-weight: bold;
}

body#checkout section.checkout-step .delivery-options .dpdshipping-pudo-change-map-btn,
body#checkout section.checkout-step .delivery-options .dpdshipping-pudo-cod-change-map-btn{
    width: 50%;
}

body#checkout section.checkout-step .dpdshipping-pudo-selected-point p .dpdshipping-selected-point{
    font-size: 18px;
}

body#checkout section.checkout-step .modal-dialog{
    margin: 0;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

body#checkout section.checkout-step .delivery-options .carrier-extra-content .dpdshipping-pudo-new-point,
body#checkout section.checkout-step .delivery-options .carrier-extra-content .dpdshipping-pudo-cod-new-point{
    text-align: center;
    padding: 0;
    width: 50%;
}

body#checkout section.checkout-step .delivery-options .carrier-extra-content .dpdshipping-pudo-cod-selected-point{
    flex: 1;
}

@media (max-width: 768px) {
    body#checkout section.checkout-step .dpdshipping-pudo-selected-point p,
    body#checkout section.checkout-step .dpdshipping-pudo-cod-selected-point p{
        gap: 8px;
    }

    body#checkout section.checkout-step .delivery-options .carrier-extra-content .dpdshipping-pudo-container,
    body#checkout section.checkout-step .delivery-options .carrier-extra-content .dpdshipping-pudo-cod-container {
        padding: 16px;
    }

    body#checkout section.checkout-step .delivery-options .carrier-extra-content .dpdshipping-pudo-container:has(.dpdshipping-pudo-new-point){
        justify-content: center;
    }
    body#checkout section.checkout-step .modal-dialog.modal-dpd-xl {
        left: 55%;
        width: 90%;
        max-height: 100%;
    }
    body#checkout section.checkout-step .modal-body{
        padding: 0;
    }
    body#checkout section.checkout-step .delivery-options .carrier-extra-content .dpdshipping-pudo-new-point,
    body#checkout section.checkout-step .delivery-options .carrier-extra-content .dpdshipping-pudo-cod-new-point,
    body#checkout section.checkout-step .delivery-options .carrier-extra-content .dpdshipping-pudo-cod-selected-point{
        flex: 1;
        margin: 0 -8px;
    }
    body#checkout section.checkout-step .dpdshipping-pudo-selected-point p, body#checkout section.checkout-step .dpdshipping-pudo-cod-selected-point p {
        font-size: 12px;
        text-align: center;
    }
    body#checkout section.checkout-step .delivery-options .dpdshipping-pudo-change-map-btn,
    body#checkout section.checkout-step .delivery-options .carrier-extra-content .dpdshipping-pudo-cod-new-point,
    body#checkout section.checkout-step .delivery-options .carrier-extra-content .dpdshipping-pudo-cod-container,
    body#checkout section.checkout-step .delivery-options .dpdshipping-pudo-cod-change-map-btn
    {
        width: 100%;
    }
    body#checkout section.checkout-step .delivery-options .carrier-extra-content .dpdshipping-pudo-container .dpdshipping-pudo-selected-point span,
    body#checkout section.checkout-step .delivery-options .carrier-extra-content .dpdshipping-pudo-cod-selected-point p .dpdshipping-cod-selected-point{
        font-size: 14px;
    }

    body#checkout section.checkout-step .is-checkout-sticky-bar {
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        z-index: 1000;
        background: #fff;
        padding: 16px 16px 32px 16px;
        box-shadow: 0 -8px 20px rgba(0,0,0,0.1);
        border-radius: 32px 32px 0 0;
        display: flex;
        flex-direction: column;
        gap: 8px;
    }

    .sticky-form-context .continue[name="confirmDeliveryOption"],
    .sticky-form-context .sticky-checkout-price-row {
        position: fixed;
        left: 0;
        width: 100%;
        z-index: 9999;
        background: #fff;
    }

    .sticky-form-context .continue[name="confirmDeliveryOption"] {
        bottom: 0;
        height: 60px;
        margin: 0;
        padding-bottom: env(safe-area-inset-bottom);
        border-radius: 0;
    }

    .sticky-checkout-price-row{
        display: flex;
        justify-content: space-between;
        padding: 8px 10px;
        font-weight: bold;
    }

    .js-address-form .is-checkout-sticky-bar:has(.cancel-address) .sticky-checkout-price-row, #delivery-address .sticky-checkout-price-row{
        order: 1;
    }
    body#checkout section.checkout-step .delivery-options .gls-search-form-toggler{
        font-size: 12px;
        text-align: center;
    }
    .gls-container .row, body#checkout section.checkout-step .delivery-options .form-group.gls-mobile{
        margin: 0;
    }
    body#checkout section.checkout-step .delivery-options .gls-container #gls-relay-container > .row {
        flex-direction: column;
    }

    body#checkout section.checkout-step .delivery-options .gls-container,
    body#checkout section.checkout-step .delivery-options .gls-container #gls-relay-container .row .gls-relay-list{
        flex: 1;
        width: 100%;
    }
    body#checkout section.checkout-step .delivery-options .gls-container .row{
        align-items: center;
    }
}

#authentication .form-group, #registration .form-group{
    margin:0;
}

.custom-radio input[type=radio]:checked+span {
    background-color: #2B2B2B;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.custom-checkbox input[type=checkbox]+span, input[type=checkbox]{
    border-radius: 32px;
}


.custom-radio{
    border: 2px solid #f6f6f6;
}

.page-content.card section.form-fields,
.page-content.card form .login-form-fields,
#authentication .form-footer,
#authentication .form-fields,
#registration .form-fields,
#checkout-personal-information-step .form-fields,
#registration .form-footer,
#identity .form-fields,
#identity .form-footer,
#address .form-footer{
    max-width: 420px;
    margin: auto;
}

.forgotten-password .form-fields .form-group{
    margin: 0;
    padding: 8px 0;
}


#identity #main, #address #main{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    max-width: 60%;
    padding: 32px;
    margin: auto;
    margin-bottom: 32px;
}


.form-control-comment{
    padding: 0;
    font-size: 12px;
}

#identity .password-requirements-length,
#identity .password-requirements-score{
    font-size: 14px;
}

#identity .form-fields .form-group .js-input-column .custom-checkbox label em p{
    font-size: 14px;
}

#identity .form-group,
#address .form-group{
    margin: 0;
}

.page-customer-account #content .forgot-password{
    padding: 0;
    margin: 0;
}

#address .page-content.card form .btn[type="submit"]{
    margin-top: 16px;
}

body#checkout section.checkout-step #conditions-to-approve{
    padding-top: 0;
    padding-bottom: 16px;
}

#authentication .js-parent-focus .btn[data-action="show-password"]:focus,
#authentication .js-parent-focus .btn[data-action="show-password"]:active {
    outline: none;
    box-shadow: none;
}

#authentication.page-customer-account #content, #password #content, #registration #main > #content:first-of-type{
    border-radius: 32px;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    padding: 16px;
}

@media(max-width: 575px){
    #identity .page-customer-account #content{
        padding: 0;
    }
    #address #content-wrapper{
        padding: 0;
    }
    #identity #main, #address #main{
        max-width: 100%;
        padding: 16px;
    }
    #authentication #main .page-header{
        padding: 0;
    }
    #authentication .page-content.card form #submit-login{
        font-size: 14px;
    }
    .page-customer-account #content .forgot-password,
    #authentication.page-customer-account #content .no-account{
        font-size: 14px;
    }
}

#password #main{
    display: flex;
    flex-direction: column;
    align-items: center;
}

#password .send-renew-password-link{
    font-size: 12px;
    padding: 0;
}

@media(max-width: 768px){
    #password .send-renew-password-link{
        font-size: 12px;
    }
}

.register-form p{
    color: #2B2B2B;
    font-size: 14px;
}

.register-form p.already-have-account{
    text-align: center;
    margin: 0;
}

.progress{
    background-color: transparent;
}

.progress-bar{
    border-radius: 32px;
    background-color: transparent;
}

/*Checkout process*/
body#checkout section.checkout-step.-complete:first-of-type .step-title{
    padding: 16px;
}

body#checkout .cart-grid-right .card .cart-total{
    padding: 0;
}

body#checkout .cancel-address{
    text-decoration: none;
}

body#checkout a.cancel-address:hover{
    color: #fff;
}

body#checkout section.checkout-step.-current+.checkout-step .step-title{
    border: none;
    padding-top: 16px
}

body#checkout section.checkout-step.-unreachable .step-title {
    opacity: .7;
    border: none;
}

body#checkout section.checkout-step.-unreachable  {
    border: none;
}

body#checkout section.checkout-step{
    border-radius: 32px;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    padding: 0;
    overflow: hidden;
}

body#checkout section.checkout-step .step-number{
    border: none;
}

body#checkout #cart-summary-product-list img{
    border: none;
    width: 5rem;
}

body#checkout #cart-summary-product-list .product-name{
    font-size: 12px;
    font-weight: 600;
}

body#checkout #cart-summary-product-list .media .product-line-info{
    border-radius: 32px;
    border: 2px solid #f6f6f6;
    text-align: start;
    padding: 4px 16px;
    margin-bottom: 2px;
    font-size: 12px;
}

body#checkout #cart-summary-product-list .attributes-list{
    display: flex;
    gap: 4px;
    flex-wrap: wrap;
}

body#checkout .information-block{
    border-radius: 32px;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    padding: 32px 16px;
}

body#checkout #cart-summary-product-list .media .product-line-info .label{
    font-size: 12px;
    font-weight: 600;
}

@media(max-width: 768px){
    body#checkout .information-block{
        margin-bottom: 16px;
    }
    body#checkout #cart-summary-product-list .media .product-line-info .label,
    body#checkout #cart-summary-product-list .media .product-line-info{
        font-size: 10px;
    }
    body#checkout #cart-summary-product-list .media .product-line-info{
        display: flex;
        align-items: center;
        gap: 4px;
    }
}

body#checkout #cart-summary-product-list .product-info{
    display: flex;
    justify-content: space-between;
}


body#checkout section.checkout-step #customer-form{
    margin-top: 0;
}

body#checkout section.checkout-step .content{
    padding: 16px;
}

body#checkout section.checkout-step .step-title {
    border: none;
    background-color: #2B2B2B;
    color: #fff;
    padding: 16px;
    display: flex;
    align-items: center;
    text-transform: none;
    font-size: 20px;
}

body#checkout section.checkout-step .step-title{
    border: none;
}

body#checkout section.checkout-step.-reachable.-current .step-number{
    background-color: #fff;
    color: #2B2B2B;
    font-size: 20px;
}

body#checkout section.checkout-step.-reachable.-complete h1 .step-edit, .done  {
    color: #fff;
}
body#checkout section.checkout-step.-reachable.-complete h1 .text-muted{
    color: #fff !important;
    margin-left: auto;
}

.cart-elements-container{
    display: flex;
    flex-direction: column;
    gap:16px;
}

body#checkout section.checkout-step .address-item{
    opacity: .8;
    background-color: transparent;
    border: 2px solid #fff;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    margin: 0;
    height: 100%;
}

body#checkout section.checkout-step .address-item.selected {
    border: 2px solid rgba(43, 43, 43);
    border-radius: 32px;
    opacity: 1;
}


body#checkout section.checkout-step .address-item .address-footer{
    display: none;
}

body#checkout section.checkout-step .address-item.selected .address-footer{
    display: block;
    border-top: 2px solid #f6f6f6;
}

body#checkout a:hover{
    color:#2B2B2B;
}

body#checkout .custom-footer-container a:hover{
    color: #454545;
}

body#checkout section.checkout-step .form-footer{
    /*display: flex;*/
    /*justify-content: end;*/
    /*align-items: center;*/
    margin: 0;
    max-width: inherit;
}

body#checkout section#checkout-personal-information-step .form-footer{
    margin-left: auto;
}

body#checkout #footer {
    padding: 0;
}

body#checkout section.checkout-step #delivery-addresses{
    display: grid;
    margin: 0;
    padding: 8px 0;
    gap: 16px 32px ;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

body#checkout section.checkout-step #delivery-address{
    margin-top: 0;
}

body#checkout section#checkout-addresses-step .js-address-form form{
    display: flex;
    flex-direction: column;
    gap: 8px;
}

#delivery-address .js-address-form{
    display: flex;
    flex-direction: column;
    padding: 0;
}

body#checkout section.checkout-step .address-item>header {
    min-height: auto;
}

.address-selector p:has(.ps-hidden-by-js) {
    display: none;
}

body#checkout section.checkout-step .add-address{
    border: 2px solid #fff;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    color: #2B2B2B;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0;
    font-size: 18px;
    opacity: .8;
    text-decoration: none;
    align-self: stretch;
    padding: 32px;
}

body#checkout section.checkout-step .add-address:hover, body#checkout section.checkout-step .address-item:hover{
    opacity: 1;
    border: 2px solid #b0b0b0;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1)
}

body#checkout section.checkout-step .address-footer{
    text-align: left;
    padding: 16px 32px;
}

body#checkout section.checkout-step .radio-block {
    width: 100%;
    padding: 16px;
    font-size: 16px;
    color: #2B2B2B;
}

body#checkout section.checkout-step .radio-block .custom-radio{
    display: none;
}

body#checkout section.checkout-step .edit-address, body#checkout section.checkout-step .delete-address{
    color: #2B2B2B;
    margin: 0;
}

body#checkout section.checkout-step .continue.btn{
    width: 30%;
}

body#checkout section.checkout-step #delivery-address .continue.btn{
    width: 100%;
}


body#checkout section.checkout-step.-current .content{
    display: flex;
    flex-direction: column;
}

body#checkout section.checkout-step .address{
    padding: 16px;
    margin: 0;
}

body#checkout  #payment-confirmation{
    align-self: flex-end;
}

body#checkout p, body#checkout #delivery label[for="delivery_message"]{
    padding: 8px 0 ;
    font-size: 14px;
    margin: 0;
}

body#checkout section.checkout-step .delivery-options .delivery-option-container{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    cursor: pointer;
    position: relative;
    border: 2px solid #fff;
    transition: all 0.2s ease;
}

body#checkout section.checkout-step .delivery-options .delivery-option-container:hover {
    border-color: #b0b0b0;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

body#checkout section.checkout-step .delivery-options .delivery-option-container:has(input[name^="delivery_option"]:checked) {
    border: 2px solid #2B2B2B;
    cursor: auto;
}

body#checkout section.checkout-step .delivery-options .delivery-option label>.row{
    cursor: pointer;
}

body#checkout section.checkout-step .delivery-options .inpost-shipping-machine-name{
    font-size: 18px;
    font-weight: bold;
}

body#checkout section.checkout-step .delivery-options .delivery-option{
    background-color: transparent;
    margin: 0;
    cursor: pointer;
    padding: 0;
    display: flex;
    justify-content: space-between;
}

body#checkout section.checkout-step .delivery-options .delivery-option label{
    padding: 32px;
    cursor: pointer;
    flex: 1;
}

body#checkout section.checkout-step .delivery-options{
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 16px 0;
}

#checkout .custom-checkbox label:has(input[required])::before {
    content: "*";
    color: #d13939;
    font-weight: bold;
}

body#checkout section#checkout-addresses-step .form-footer{
    display: flex;
    flex-direction: row;
    gap: 16px;
    justify-content: flex-end;
    max-width: none;
}
body#checkout section#checkout-addresses-step .form-footer:after{
    display: none;
}

body#checkout section#checkout-addresses-step .form-footer .cancel-address,
body#checkout section#checkout-addresses-step .form-footer .continue{
    flex: 0 0 25%;
}

body#checkout .cancel-address{
    margin: 0;
}

body#checkout section.checkout-step .delivery-options .delivery-option label>.row .col-xs-12 .carrier-price{
    font-weight: bold;
}

@media(max-width: 768px){
    body#checkout section.checkout-step .delivery-options .carrier-extra-content .col-sm-12:last-child{
        display: grid;
        grid-template-columns: 1fr 1fr;
        padding: 8px 32px 16px;
    }

    body#checkout section.checkout-step .delivery-options .carrier-extra-content .dpdshipping-pudo-open-map-btn{
        width: 100%;
    }

    body#checkout section.checkout-step .delivery-options .carrier-extra-content .col-sm-12 .form-group.mb-0{
        grid-column: 1;
        margin: 0 -8px;
    }

    body#checkout section.checkout-step .forgot-password a,
    body#checkout section.checkout-step #customer-form .form-control-label,
    body#checkout section.checkout-step p.form-informations span{
        font-size: 14px;
    }

    .form-control-comment{
        font-size: 11px;
    }

    body#checkout .form-group{
        margin: 0;
    }

    body#checkout section.checkout-step .delivery-options .carrier-extra-content .inpost-shipping-container:has(.js-inpost-shipping-input:not([value=""])) .js-inpost-closest-machine {
        display: none;
    }

    body#checkout section.checkout-step .step-title{
        font-size: 16px;
    }
    /*body#checkout section.checkout-step .form-footer{*/
    /*    flex-direction: column-reverse;*/
    /*    flex: 1;*/
    /*}*/
    body#checkout section#checkout-addresses-step .form-footer{
        margin-left: 0;
        flex-direction: column-reverse;
        gap: 8px;
    }

    body#checkout section.checkout-step #delivery-address{
        margin: 0;
    }

    body#checkout .cancel-address, body#checkout section.checkout-step .continue.btn{
        flex: 1;
        width: 100%;
        margin: 0;
    }

    body#checkout section.checkout-step #delivery-addresses{
        margin-bottom: 8px;
    }
    #checkout .btn[type="submit"].center-block, #checkout form .btn[type="submit"].continue{
        width: 100%;
    }
    #checkout .col-xs-12{
        padding: 0;
    }
    #checkout .my-2 .nav-item .nav-link{
        font-size: 14px;
    }
    #checkout .my-2{
        justify-content: start;
        gap: 16px;
        margin-top: 0 !important;
    }

    #checkout #checkout-personal-information-step .cart-grid-body .card-block{
        padding: 1rem 0;
    }
    #checkout .cart-grid-body .card-block{
        padding: 0;
    }
    body#checkout section.checkout-step .delivery-options .carrier-extra-content .col-sm-12:last-child{
        grid-template-columns: 1fr;
        padding: 16px;
    }
    body#checkout section.checkout-step .delivery-options .delivery-option label{
        padding: 16px 24px 8px;
    }

    body#checkout section.checkout-step .delivery-options .delivery-option label .carrier{
        display: flex;
        width: auto;
        flex-direction: column;
        align-items: center;
        flex-wrap: nowrap;
        gap: 8px
    }
    body#checkout section.checkout-step .carrier-name{
        font-size: 12px;
        text-align: center;
    }

    body#checkout section.checkout-step .delivery-options .delivery-option .carrier>.col-xs-12{
        width: auto;
    }

    body#checkout section.checkout-step .delivery-options .delivery-option label>.row .col-xs-12{
        width: auto;
    }

    body#checkout section.checkout-step .delivery-options .delivery-option label>.row{
        justify-content: center;
        flex-direction: column;
        gap: 8px;
    }

    body#checkout section.checkout-step .delivery-options .inpost-shipping-machine-name{
        font-size: 14px;
    }
}

#registration .custom-checkbox label:has(input[required]) span {
    overflow: visible;
    position: relative;
}

#registration .custom-checkbox label:has(input[required]) span::after {
    content: "*";
    color: #d13939;
    font-weight: bold;
    font-size: 18px;
    line-height: 1;
    position: absolute;
    top: 0;
    right: -10px;
}

#identity .custom-checkbox label:has(input[required]) span {
    overflow: visible;
    position: relative;
}

#identity .custom-checkbox label:has(input[required]) span::after {
    content: "*";
    color: #d13939;
    font-weight: bold;
    position: absolute;
    right: -12px;
    top: 0;
}

body#checkout section.checkout-step .payment-options .payment-option{
    padding: 16px;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    cursor: pointer;
    position: relative;
    border: 2px solid transparent;
    transition: all 0.2s ease;
}

body#checkout section.checkout-step .custom-radio input[type=radio]{
    display: none;
}

body#checkout section.checkout-step .payment-options .custom-radio{
    display: none;
}

.payment-option label {
    margin-bottom: 0;
    cursor: pointer;
    width: 100%;
    font-weight: 600;
    color: #333;
}

body#checkout section.checkout-step .payment-options .payment-option:has(input:checked) {
    border-color: #000;
}

body#checkout section.checkout-step .payment-options .payment-option label::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    cursor: pointer;
    border-radius: 32px;
}

body#checkout section.checkout-step .payment-options .payment-option:hover {
    border-color: #aaa;
}

.payment-option:has(input:checked) {
    border: 2px solid #000;
}

body#checkout .additional-information{
    padding: 4px;
    margin: 0;
}

#checkout #js-checkout-summary .card-block {
    padding: 16px 0;
}


#checkout #js-checkout-summary{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 16px;
}

body#checkout .cart-grid-right .card .cart-summary-subtotals-container {
    border-top: 2px solid #f6f6f6;
    border-bottom: 2px solid #f6f6f6;
}

.cart-grid-right .promo-discounts .cart-summary-line .label .code{
    color: #2B2B2B;
}

.has-discount .discount{
    background-color: #E32C2B;
    border-radius: 32px;
    font-size: 14px;
    margin: 0;
}

.product-discount .regular-price{
    margin: 0;
}

.product-prices div{
    margin-bottom: 0;
}

.product-prices{
    margin-top: 0;
}

.product-prices .product-discount{
    display: flex;
    align-items: start;
}

#cart .product-line-grid .product-price, .product-discount{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
}

#cart .product-line-grid .product-price{
    align-items: center;
}

.product-price {
    color: #2B2B2B;
}

.product-flags li.product-flag.discount{
    background-color: #E32C2B;
}

@media(max-width: 768px){
    .has-discount .discount{
        padding: 4px 8px;
    }
    #cart .product-line-grid .product-price.product-line-info{
        align-items: start;
    }
    .product-discount{
        flex-direction: row;
        gap: 8px;
    }
}

/*My account*/
.page-my-account #content .links{
    width: 100%;
    box-sizing: border-box;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 32px;
}

.page-my-account #content .links a span.link-item{
    display: flex;
    flex-direction: column;
    gap: 8px;
    justify-content: center;

}
.page-my-account #content .links a{
    width: 100%;
    box-sizing: border-box;
    text-transform: none;
    color: #2B2B2B;
    padding: 32px;
    box-shadow: 0 2px 8px 0 rgba(0,0,0,0.1);
    border-radius: 32px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    margin:0;
}

.page-my-account #content .links a:hover i{
    color: #2B2B2B;
}

.page-my-account #content .links a:hover, .page-my-account #content .links a:hover i{
    color: #454545;
}

#my-account #main .page-header, #my-account .page-footer {
    padding: 16px;
    display: flex;
    justify-content: center;

}
#my-account #main .page-header h1{
    font-size: 32px;
    letter-spacing: -0.04em;
}

#my-account .logout-button{
    background-color: #2B2B2B;
    color: #fff;
    padding: 16px 32px;
    border-radius: 32px;
    font-weight: bold;
    display: flex;
    align-items: center;
    gap: 16px;
    justify-self: center;
}

#my-account .links .material-symbols-outlined{
    font-size: 32px;
}

@media (max-width: 992px) {
    .page-my-account #content .links {
        grid-template-columns: repeat(3, 1fr);
        gap: 24px;
    }
}

@media (max-width: 768px) {
    .page-my-account #content .links {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }
    #my-account #content.page-content .row{
        margin: 0;
    }
    body#checkout  #payment-confirmation{
        align-self: stretch;
    }
    #my-account .logout-button{
        justify-content: center;
        width: 100%;
    }

    #my-account .logout-button-container{
        flex: 1;
    }
}

@media (max-width: 575px) {
    .page-my-account #content .links {
        grid-template-columns: 1fr;
        gap: 16px;
    }
}

/*Addresses*/
#addresses .address{
    box-shadow: 0 2px 8px 0 rgba(0,0,0,0.1);
    border-radius: 32px;
    border: 2px solid #fff;
    opacity: 1;
    height: 100%;
    box-sizing: border-box;
    cursor: pointer;
}

#addresses a[data-link-action="add-address"]{
    box-shadow: 0 2px 8px 0 rgba(0,0,0,0.1);
    border-radius: 32px;
    color: #2B2B2B;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0;
    padding: 16px 0;
    font-size: 18px;
    opacity: .8;
    text-decoration: none;
    height: 100%;
    font-weight: bold;
    gap: 8px;
}

#addresses .addresses-container .address:hover{
    opacity: 1;
    border: 2px solid #b0b0b0;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1)
}

#addresses .addresses-container > .address-container,
#addresses .addresses-container > .addresses-footer {
    flex-basis: 320px;
    padding: 0;
    margin: 0;
}

#addresses .addresses-container{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px 32px;
}


.page-addresses .address .address-footer {
    display: flex;
    padding: 8px 32px;
    border-top: 2px solid #f6f6f6;
}


.page-addresses .address{
    font-size: 16px;
}

.page-addresses .address .address-body{
    padding: 32px;
}
.page-addresses .address .address-body address{
    font-size: 16px;
    margin: 0;
}

.page-addresses .addresses-footer a span{
    margin: 0;
}


/*Notifications*/
.alert {
    border-radius: 16px;
    box-shadow: 0 2px 8px 0 rgba(0,0,0,0.05)
}

#main .page-content #notifications{
    margin: 0;
}

.alert-warning, .alert-danger{
    background-color:rgba(255, 104, 104, 0.3);
    border-color: #D139394C;
    margin-top: 1rem;
}

.block-promo .promo-code .alert-danger{
    background-color: rgb(209, 57, 57);
    border-color: #D139394C;
}

.block-promo .promo-code .alert-danger::after{
    border-bottom-color: rgb(209, 57, 57);
}

.ps-alert-success{
    display: flex;
    justify-content: center;
    padding: 16px;
}

.ps-alert-success .item, .ps-alert-success .item i svg{
    background-color: #2B2B2B;
    border-radius: 32px;
}

.ps-alert-success .item, .ps-alert-success .item i{
    border-color: #2B2B2B;
    border-radius: 32px;
}

.ps-alert-success .item p{
    border-radius: 0 32px 32px 0;
}

/*Order history*/
#history .order-actions .order-actions-container{
    display: flex;
    flex-direction: column;
    gap:4px;
}

#history #main{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 16px;
    margin-bottom: 32px;
}

#history #main .page-content h6 {
    text-align: center;
    color: #2B2B2B;
    font-weight: 600;
}

#history .order-details{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

#history .order-details > div, #history .order-details a{
    flex: 1;
}

#history .order-details a h3{
    font-size: 14px;
    margin: 0;
}

#history .orders .order .label{
    border-radius: 16px;
    text-align: center;
    font-size: 12px;
    width: 260px;
    font-weight: bold;
    line-height: 1rem;
}

#history .orders{
    display: flex;
    flex-direction: column;
    margin: 0;
    gap: 8px;
}

#history .order{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 16px;
    padding: 16px;
}

#history .order .row{
    display: flex;
    align-items: center;
    margin: 0;
    flex-wrap: wrap;
}

#history .orders .order a h3{
    color: #2B2B2B;
}

@media(max-width: 768px){
    #history #main .page-content h6{
        font-size: 14px;
    }
    #history #main .page-header{
        padding: 8px;
    }
    #history .orders .order .label{
        font-size: 12px;
        width: 100%;
        padding: 8px 16px;
    }
    #history .order-details{
        flex-direction: column;
        align-items: stretch;
        gap: 4px;
    }

    #history .order .row{
        align-items:center;
    }

    #history .action-icons .action-icon a i{
        font-size: 24px;
    }

    #history .action-icons{
        display: flex;
        gap: 32px;
        flex-direction: column;
    }

}

/*Order detail*/
#order-detail #order-infos .order-again-button .button-primary{
    border: 2px solid #f6f6f6;
    padding: 8px 16px;
    border-radius: 32px;
    white-space: nowrap;
}

#order-detail #order-infos .box .row .col-xs-9{
    padding: 0;
    display: flex;
    flex-direction: column;
    font-size: 16px;
    width: auto;
    gap: 8px;
}

#order-detail .inpost-point-address{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    padding: 32px;
    border-radius: 32px;
    white-space: nowrap;
}

.page-order-detail .order-items .order-item .qty .q{
    margin: 0;
    text-align: end;
}

#order-detail .product-attributes, #order-confirmation .product-attributes{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    flex-wrap: wrap;
    gap: 4px;
}

.page-order-detail .order-items .order-item .desc{
    width: auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 8px;
    padding: 0;
    flex: 0 0 50%;
}

#order-detail .attribute, #order-confirmation .attribute{
    border: 2px solid #f6f6f6;
    border-radius: 32px;
    padding:4px 6px ;
    font-size: 12px;
    font-weight: bold;
}

#order-detail .product-total,#order-detail .total-value{
    font-weight: bold;
}

#order-detail #main{
    display: flex;
    flex-direction: column;
    margin-bottom: 32px;
}

#order-detail #order-infos .box .row:after{
    display: none;
}

#order-detail #order-infos .box .row{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0;
    gap: 16px;
}

#order-detail .form-footer{
    margin: 0;
}

#order-detail .table-labeled .label{
    border-radius: 32px;
    padding: 8px;
}

#order-detail #order-infos .box ul li{
    font-size: 16px;
}

#order-detail .form-footer{
    display: flex;
    justify-content: flex-end;
}


#order-detail .addresses{
    display: flex;
    gap:32px;
    margin: 0;
}

#order-detail .addresses .address-box article{
    font-size: 16px;
}

#order-detail .addresses .address-box article h4{
    font-size: 18px;
}

#order-detail .form-footer {
    max-width: 100%;
}

#order-detail .form-group.row{
    margin: 0;
}

#order-detail #order-history h3,#order-detail .box h3{
    text-transform: none;
    font-size: 20px;
}

#order-detail .form-control-select{
    padding: 8px;
}

#order-detail .download-invoice,
#order-detail .order-again-button{
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
}

#order-detail .order-again-button{
    width: 100%;
}

#order-detail .order-actions{
    display: flex;
    gap: 8px;
    flex-direction: column
}

#order-detail .address-box{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;

}

#order-detail .order-message-form,
#order-detail .carrier-box,
#order-detail .products-price-box,
#order-detail #order-history,
#order-detail #order-infos{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 32px;
}

#order-detail .order-message-form form{
    display: flex;
    flex-direction: column;
}

#order-detail .page-content{
    display: flex;
    flex-direction: column;
    gap: 24px;
}

#order-detail .order-items{
    display: flex;
    flex-direction: column;
}


.page-order-detail .order-items .order-item{
    border-bottom: 2px solid #f6f6f6;
    padding: 16px 0;
}

.page-order-detail .order-items .order-item .row{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.page-order-detail .order-items .order-item .qty{
    padding: 0;
}

.page-order-detail .order-items .order-item .qty .price-and-quantity > div {
    flex: 0 0 33.33%;
    max-width: 33.33%;
    white-space: nowrap;
}

#order-detail .order-items .order-item .qty .product-total{
    text-align: right;
}

.page-order-detail .box{
    padding: 0;
    margin: 0;
}

.page-order-detail .box.order-totals{
    display: flex;
    flex-direction: column;
    gap: 8px;
}

#order-detail .address-box{
    padding: 16px 24px;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    flex: 1;
}

#order-detail .quantity{
    display: flex;
    align-items: center;
    gap: 16px;
}

#order-detail .quantity .s, #order-detail .quantity div{
    flex: 1;
    margin: 0;
}

#order-detail .quantity .s select{
    text-align: center;
}

.page-order-detail .order-items .order-item .row div{
    margin: 0;
    padding: 0;
}

.page-order-detail .order-items .order-item .row .content{
    flex: 1;
}

#order-detail .order-items.box{
    padding: 8px 0 !important;
}

#order-detail #order-return-form{
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.page-order-detail #order-history .history-lines .history-line .label{
    border-radius: 32px;
    text-align: center;
    width: 100%;
    max-width: 420px;
    font-weight: bold;
}

.page-order-detail .product-name{
    font-weight: 600;
    font-size: 14px;
}

#order-detail #order-history{
    margin: 0;
}

.page-order-detail #order-history .history-lines .history-line .date{
    text-align: center;
}

.page-order-detail #order-history .history-lines .history-line:last-child{
    border: none
}

.page-order-detail #order-history .history-lines .history-line{
    border: none;
    display: flex;
    flex-direction: column;
}

.page-order-detail #order-history .history-lines .history-line .state{
    flex: 1;
    display: flex;
    justify-content: center;
}

#order-detail #order-history h3, #order-detail .box h3{
    text-align: center;
}

#order-detail .quantity-price-box{
    display: flex;
    justify-content: space-between;
    flex: 1;
    align-items: center;
}

#order-detail .order-message-form form header p{
    text-align: center;
}

#order-detail .order-totals .order-total.row .col-xs-8 ,#order-detail .order-totals .order-total.row .col-xs-4{
    padding: 0;
}


#order-detail .product-row{
    display: flex;
    justify-content: space-between;
}

#order-detail .price-and-quantity{
    display: flex;
    justify-content: space-between;
}

#order-detail .shipping-line ul li{
    font-size: 16px;
}

@media(max-width: 768px){
    #order-detail .box.return-box .form-footer .btn-primary,
    #order-detail .order-message-form.box .form-footer .btn-primary{
        flex: 1;
        font-size: 14px;
    }

    #order-detail .order-message-form form header p{
        font-size: 14px;
    }

    .page-order-detail .box, .page-order-detail .order-items .order-item {
        padding: 0;
        margin: 0;
    }
    .page-order-detail .order-items .order-item .content{
        width: auto;
    }

    .page-order-detail .product-name{
        font-size: 14px;
    }

    #order-detail .order-totals .order-total.row .col-xs-8 ,#order-detail .order-totals .order-total.row .col-xs-4{
        padding: 0;
    }
    #order-detail .order-message-form,
    #order-detail .carrier-box, #order-detail .products-price-box,
    #order-detail #order-history,
    #order-detail #order-infos,
    #order-detail .inpost-point-address{
        padding: 16px;
    }

    .page-order-detail #order-history .history-lines .history-line{
        padding: 8px;
    }

    #order-detail .shipping-line ul li{
        font-size: 14px;
        display: flex;
        justify-content: space-between;
    }

    #order-detail .attribute{
        font-size: 10px;
    }

    #order-detail .price-and-quantity{
        display: flex;
        flex-direction: row;
    }

    #order-detail .order-total div{
        font-size: 14px;
        padding: 0;
    }

    .page-order-detail .order-items .order-item{
        padding: 16px 0;
    }

    #order-detail .price-and-quantity div{
        font-size: 12px;
        padding: 0;
        text-align: center;
    }

    .page-order-detail .order-items .order-item .row{
        align-items: stretch;
        gap: 8px;
        flex-direction: column;
    }

    #order-detail #main{
        gap: 16px;
    }

    #order-detail .addresses .address-box article h4{
        font-size: 14px;
    }

    #order-detail .address-box{
        padding: 16px;
    }

    #order-detail #order-infos .box .row .col-xs-9{
        font-size: 14px;
    }

    #order-detail #main .page-header h1{
        font-size: 20px;
    }

    #order-detail .form-control-select{
        font-size: 12px;
    }

    #order-detail .quantity{
        align-items: start;
    }

    #order-detail .order-actions{
        flex: 1;
    }

    #order-detail .product-row{
        display: flex;
        flex-direction: column;
        gap: 8px;
    }

    .page-order-detail .return-box header p{
        font-size: 14px;
    }

    /*.page-order-detail #order-history .history-lines .history-line .label{*/
    /*    font-size: 12px;*/
    /*}*/

    .page-order-detail .addresses{
        margin: 0;
    }

    #order-detail .download-invoice span{
        font-size: 20px;
    }

    #order-detail .quantity-price-box{
        display: flex;
        flex: 1;
        justify-content: space-between;
        align-items: center;
    }

    #order-detail .product-details{
        flex-direction: column;
        align-items: stretch;
    }

    #order-detail address{
        font-size: 12px;
    }

    #order-detail .quantity{
        flex-direction: column;
        padding: 0;
    }

    #order-detail .desc, #order-detail .qty{
        padding: 0;
    }

    #order-detail .quantity .s{
        width: 100%;
        max-width: 100px;
    }

    #order-detail .addresses .address-box article{
        font-size: 14px;
    }

    #order-detail #order-return-form{
        gap: 16px;
    }

    #order-detail .addresses{
        justify-content: space-between;
        gap: 8px;
    }

    #order-detail #order-history h3, #order-detail .box h3{
        font-size: 16px;
    }

    #main .page-content #notifications{
        display: none;
    }

    #order-detail .products-price-box{
        display: flex;
        flex-direction: column;
        gap: 16px;
        padding: 16px;
    }

    #order-detail .history-lines{
        display: flex;
        gap: 8px;
        flex-direction: column;
    }

}

/*Order Follow*/
#order-follow h6{
    color: #2B2B2B;
}

#order-follow .order-returns {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 32px;
}

#order-follow .order-return {
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 16px;
    background: #ffffff;
}

#order-follow .order-return ul {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
    margin: 0;
}

#order-follow .order-return li {
    flex: 1;
    display: flex;
    flex-direction: column;
    font-size: 14px;
    padding: 0 8px;
}

#order-follow .order-return li strong {
    font-size: 14px;
    color: #454545;
    margin-bottom: 4px;
    font-weight: 600;
}

#order-follow .order-return li a, #order-follow .order-return li span {
    color: #2B2B2B;
    font-weight: 600;
    text-decoration: none;
    font-size: 14px;
}

#order-follow .order-return li a:hover {
    text-decoration: underline;
}

#order-follow #main .page-content h6{
    text-align: center;
}

@media(max-width: 768px){
    #order-follow .order-return ul {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }

    #order-follow .order-return li {
        width: 100%;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        border-bottom: 1px solid #f6f6f6;
        padding-bottom: 8px;
        padding-left: 0;
        padding-right: 0;
    }

    #order-follow .order-return li:last-child {
        border-bottom: none;
        padding-bottom: 0;
    }

}

/*Order slip */
#order-slip h6{
    color: #2B2B2B;
}

#order-follow #content-wrapper{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 16px;
    margin-bottom: 32px;
}

#order-slip #main{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 16px;
    margin-bottom: 32px;
}

#order-slip .credit-slips {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 32px;
}

#order-slip .credit-slip {
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 16px;
    background: #ffffff;
}

#order-slip .credit-slip ul {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
    margin: 0;
}

#order-slip .credit-slip li {
    flex: 1;
    display: flex;
    flex-direction: column;
    font-size: 14px;
    padding: 0 8px;
}

#order-slip .credit-slip li strong {
    font-size: 14px;
    color: #454545;
    margin-bottom: 4px;
    font-weight: 600;
}

#order-slip .credit-slip li a, #order-slip .credit-slip li span {
    color: #2B2B2B;
    font-weight: 600;
    text-decoration: none;
    font-size: 14px;
}

#order-slip .credit-slip li a:hover {
    text-decoration: underline;
}

#order-slip #main .page-content h6{
    text-align: center;
}

@media(max-width: 768px){
    #order-slip .credit-slip ul {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }

    #order-slip .credit-slip li {
        width: 100%;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        border-bottom: 1px solid #f6f6f6;
        padding-bottom: 8px;
        padding-left: 0;
        padding-right: 0;
    }

    #order-slip .credit-slip li:last-child {
        border-bottom: none;
        padding-bottom: 0;
    }

    #order-slip .credit-slip li:last-child a {
        display: block;
        width: 100%;
        text-align: center;
    }
    #order-slip .page-footer a{
        font-size: 10px;
    }
}

/*Wishlist*/
#module-blockwishlist-lists .wishlist-container-header{
    justify-content: center;
    position: relative;
}

#module-blockwishlist-lists #main, #main:has(.wishlist-products-container){
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding:32px;
    margin-bottom: 32px;
}

.wishlist-modal .modal-text{
    font-size: 16px;
    margin: 0;
}
.wishlist-toast.success .wishlist-toast-text{
    text-align: center;
}

.product .wishlist-button-add:active,
.product-cover .wishlist-button-add:active{
    transform: none;
}

.wishlist-add-to .wishlist-add-to-new i{
    color: #2B2B2B;
}

.container .wishlist-toast.success {
    background-color: #88b577;
    border-radius: 32px;
}

.container .wishlist-toast{
    left: 50%;
    margin-left: 360px;
    top: 5rem;
    width: 15%;
}

.wishlist-chooselist .wishlist-list .wishlist-list-item:hover {
    opacity: 0.7;
    background-color: transparent;
}

.wishlist-footer-links>a i {
    margin: 0;
}
.wishlist-footer-links>a, .modal-footer .wishlist-add-to-new a{
    color: #2B2B2B;
}

.wishlist-footer-links{
    padding: 8px;
    display: flex;
    flex-wrap: wrap;
    margin: 0;
}

#module-blockwishlist-lists .wishlist-add-to-new{
    position: absolute;
    right: 0;
    border: 2px solid #f6f6f6;
    border-radius: 32px;
    padding: 8px 16px;
    color: #2B2B2B !important;
}

.wishlist-products-container .sort-by-row{
    justify-content: flex-end;
}

.wishlist-products-container .sort-by-row .sort-by{
    width: 100%;
    text-align: right;
    font-size: 14px;
}

.wishlist-products-container .wishlist-button-add i{
    font-size: 18px;
}

.wishlist-products-container .wishlist-button-add{
    right: 0;
}

.wishlist-products-container .wishlist-product-addtocart{
    font-size: 12px;
}

.wishlist-modal .modal-content {
    border-radius: 32px;
    padding: 16px;
}

.wishlist-modal .modal-body .form-group .form-control {
    border-radius: 32px;
    background: none;
    color: #2B2B2B;
}

.wishlist-products-container .wishlist-button-add{
    background-color: #fff;
    color: #fff;
    border: 2px solid rgba(43, 43, 43, 0.01);
}

.wishlist-products-container .wishlist-button-add i{
    color: #2B2B2B;
}

.wishlist-product-combinations i{
    color: #2B2B2B;
    font-size: 20px;
}

.wishlist-products-container .wishlist-product{
    max-width: 13rem;
}

.wishlist-products-container .wishlist-products-list{
    padding: 16px;
    gap: 16px;
    margin: 0;
}

.wishlist-products-container .wishlist-products-container-header{
    margin: 0;
}

.wishlist-products-container .wishlist-products-container-header h1{
    margin: 0;
}

.wishlist-products-container .wishlist-product-availability{
    display: none;
}


.wishlist-products-container .wishlist-product .wishlist-product-image{
    width: 13rem;
    height: 13rem;
}

.wishlist-products-list .wishlist-products-item{
    margin: 0;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 16px;
}

.wishlist-product .wishlist-product-title{
    margin: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: 500;
    font-size: 14px;
    color: #2B2B2B;
}

.wishlist-product .wishlist-product-combinations{
    padding: 8px 0;
}

.wishlist-product .wishlist-product-price, .wishlist-product .wishlist-product-combinations-text{
    color: #2B2B2B;
    font-size: 14px;
    min-height: auto;
    margin: 0;
}

.wishlist-product .wishlist-product-link:hover img {
    transform: none;
    position: static;
}

.wishlist-product .wishlist-product-image img{
    transition: none;
}

.wishlist-pagination.pagination:empty{
    display: none;
}


@media(max-width: 768px){
    #module-blockwishlist-lists .wishlist-container{
        display: flex;
        flex-direction: column;
        gap: 16px;
    }
    .wishlist-modal .modal-text{
        font-size: 14px;
        margin-bottom: 1rem;
    }


    .wishlist-container .page-content.card.card-block{
        box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    }

    .wishlist-products-container .wishlist-product .wishlist-product-image{
        width: auto;
        height: auto;
        display: flex;
        justify-content: center;
        margin: 0;
    }
    .wishlist-products-container .wishlist-product{
        max-width: 100%;
    }

    .wishlist-products-container .card-block .wishlist-products-list{
        padding: 0;
    }

    .wishlist-products-item{
        display: flex;
        justify-content: center;
    }

    .wishlist-products-container .wishlist-products-item:not(:last-child){
        margin:0;
    }

    .wishlist-products-container .wishlist-products-container-header{
        justify-content: center;
        gap: 16px;
    }

    .wishlist-products-container .page-content.card.card-block{
        border-radius: 32px;
        box-shadow: none;
    }

    .wishlist-products-container .page-content.card p{
        color: #2B2B2B;
    }

    #module-blockwishlist-lists .wishlist-add-to-new{
        position: static;
        width: 100%;
        text-align: center;
    }

    #module-blockwishlist-lists .wishlist-container-header{
        flex-direction: column;
        gap:16px;
        margin: 0;
    }
    .wishlist-modal .modal-footer{
        display: flex;
        flex-direction: column-reverse;
        padding: 16px;
    }

    .wishlist-modal .modal-header h5{
        font-size: 20px;
    }

    .wishlist-modal .modal-footer .btn{
        font-size: 14px;
    }

    .wishlist-footer-links{
        margin: 0;
    }

    .wishlist-footer-links a{
        font-size: 12px;
    }

    #module-blockwishlist-lists #main, #main:has(.wishlist-products-container){
        padding: 32px 16px;
        display: flex;
        flex-direction: column;
        gap: 4px;
        min-height: 60vh;
        justify-content: space-between;
    }

    .wishlist-pagination{
        margin: 0;
    }

    #module-blockwishlist-lists .wishlist-list-item-link{
        padding: 16px;
    }

    #module-blockwishlist-lists .wishlist-list-item-link .wishlist-list-item-right button i{
        font-size: 16px;
    }

    #module-blockwishlist-lists .wishlist-list-item-title{
        font-size: 14px;
    }

    #module-blockwishlist-lists .wishlist-products-container{
        display: flex;
        flex-direction: column;
        gap: 16px;
    }

    #module-blockwishlist-lists #main .wishlist-container .card.page-content{
        border-radius: 32px;
        margin: 0;
    }
    #module-blockwishlist-lists .wishlist-list-item-default{
        border: none;
    }
    .wishlist-product .wishlist-product-bottom {
        flex-wrap: wrap;
    }
    .wishlist-product  .wishlist-button-add {
        position: absolute;
    }
    .wishlist-product .wishlist-product-link {
        display: block;
    }
}

#module-blockwishlist-lists .wishlist-list-item:hover .wishlist-list-item-title{
    color: #454545;
}

.wishlist-products-container .sort-by-row{
    display: flex;
    gap:8px;
}

.wishlist-list-item-default {
    border-bottom: 2px solid #f6f6f6;
}

.wishlist-container .wishlist-list-item-right>button i {
    color: #2B2B2B;
}

/*Gdpr*/
#module-psgdpr-gdpr .psgdprinfo17{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    background-color: transparent;
    color: #2B2B2B;
    padding: 32px;
}

#module-psgdpr-gdpr .page-footer{
    padding: 0 64px;
}

#module-psgdpr-gdpr .psgdpr-buttons{
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    justify-content: flex-end;
    align-items: center;
}
@media(max-width: 768px){
    #module-psgdpr-gdpr .psgdprgetdatabtn17{
        flex: 1;
        font-size: 14px;
    }
    #module-psgdpr-gdpr .page-footer{
        padding: 0;
    }
    #module-psgdpr-gdpr h2{
        font-size: 16px;
    }
    #module-psgdpr-gdpr .psgdprinfo17 p{
        font-size: 14px;
    }
    #module-psgdpr-gdpr .psgdprinfo17{
        padding: 32px 16px;
    }

}

/*Pagination*/
.pagination{
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 0;
}

.custom-pagination {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    list-style: none;
    padding: 0;
}

@media(max-width:768px){
    .footer-container .custom-contact-box .contact-title{
        font-size: 16px;
    }
}

.custom-pagination li {
    margin: 0 5px;
}

.custom-pagination .page-link {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40px;
    height: 40px;
    padding: 0 10px;
    border-radius: 50%;
    text-decoration: none;
    font-size: 16px;
    color: #2B2B2B;
    background-color: transparent;
    border: 2px solid transparent;
    transition: all 0.2s ease-in-out;
}

.custom-pagination li.current .page-link {
    border-color: #f6f6f6;
    color: #2B2B2B;
    background-color: transparent;
    letter-spacing: normal;
    font-size: 16px;
}

.custom-pagination .page-link:not(.pagination-arrow):not(.current):hover {
    background-color: #f6f6f6;
    border-color: #f6f6f6;
}

.custom-pagination .pagination-arrow {
    width: 45px;
    height: 45px;
    border-radius: 50%;
    background-color: #333;
    color: #fff;
    border: none;
}

.custom-pagination .pagination-arrow i {
    font-size: 20px;
}

.custom-pagination .pagination-arrow:not(.disabled):hover {
    background-color: #555;
    cursor: pointer;
}

.custom-pagination .pagination-arrow.disabled {
    opacity: 0.5;
    cursor: not-allowed;
    background-color: #333;
}

.custom-pagination .spacer {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 20px;
    height: 20px;
    font-size: 16px;
    color: #666;
}

.page-list.custom-pagination li:first-child,
.page-list.custom-pagination li:last-child {
    display: inline-block !important;
}

.page-list.custom-pagination li:nth-last-child(2) {
    display: inline-block !important;
}

.page-list.custom-pagination {
    visibility: hidden;

    li {
        display: none;
    }
}
@media (max-width: 767px) {
    .custom-pagination {
        margin: 15px 0;
    }
    .custom-pagination li {
        margin: 0 3px;
    }
    .custom-pagination .page-link,
    .custom-pagination .spacer {
        width: 35px;
        height: 35px;
        font-size: 14px;
    }
    .custom-pagination .pagination-arrow {
        width: 40px;
        height: 40px;
    }
    .custom-pagination .pagination-arrow i {
        font-size: 18px;
    }
}

/*promo-code*/
.block-promo .promo-code{
    padding: 0;
}

.block-promo{
    margin: 0;
}

.block-promo .promo-code form{
    text-align: start;
    width: 100%;
    display: flex;
    justify-content: center;
}

.block-promo .promo-code-button.cancel-promo[aria-expanded=true]{
    margin-top: 4px;
    font-weight: 600;
}

.block-promo .promo-code form[data-link-action="add-voucher"]:focus-within {
    outline: 2px solid #2B2B2B;
    border-radius: 32px;
}
.block-promo .promo-code form[data-link-action="add-voucher"]{
    border: 2px solid #f6f6f6;
    border-radius: 32px;
}

.block-promo .promo-input {
    width: 100%;
    border-radius: 32px 0 0 32px;
    border: none;
    outline: none;
    font-size: 16px;
    height: auto;
}

.block-promo .promo-code-button {
    padding: 0;
}

.block-promo .btn.btn-primary, .block-promo .promo-input+button {
    border: 2px solid #2b2b2b;
    border-radius: 0 32px 32px 0;
    margin: 0;
    font-size: 14px;
    padding: 8px 16px;
}

.block-promo .promo-code-button.cancel-promo, .promo-code-button {
    color: #2B2B2B;
    font-size: 14px;
    text-align: center;
}

.block-promo .promo-name .cart-summary-line .code-actions span{
    color: #7ab16b;
}

.block-promo .promo-name .cart-summary-line .label{
    color: #2B2B2B;
}

.block-promo .promo-name .cart-summary-line .code-actions a span.material-symbols-outlined{
    color: #d13939;
}

.block-promo .promo-name .cart-summary-line .label{
    font-size: 14px;
}

/*Homepage accordion*/
#index h1, h2{
    font-size: 18px;
    letter-spacing: normal;
    padding: 0;
    margin: 0;
}

#index .accordion-item-native, #product .accordion-item-native{
    font-size: 18px;
    transition: 0.5s ease-in-out;
}

#index .accordion-item-native{
    border-bottom: 2px solid #f6f6f6;
}

.accordion-item-native summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap:8px;
    padding: 8px 0;
    cursor: pointer;
    list-style: none;
    font-size: 18px;
    transition: color 0.3s ease;
}

.accordion-item-native summary span{
    font-size: 20px;
    font-weight: bold;
}

.accordion-item-native summary::-webkit-details-marker {
    display: none;
}

.accordion-item-native summary .material-symbols-outlined {
    transition: transform 0.2s ease-in-out;
}

.accordion-item-native[open] summary .material-symbols-outlined {
    transform: rotate(180deg);
}

.accordion-item-native .content {
    padding-top: 16px;
}

.accordion-item-native .content p {
    font-size: 16px;
    margin: 0;
}


@media (max-width: 768px){
    .accordion-item-native{
        font-size: 16px;
    }
    .accordion-item-native summary span{
        font-size: 18px;
    }
    #index .accordion-item-native summary h1, #index .accordion-item-native summary h2 {
        font-size: 16px;
        padding: 0;
        margin: 0;
    }
    #index .accordion-item-native{
        padding: 16px 0;
    }
    .accordion-item-native .content p {
        font-size: 14px;
    }

}

/*Modal*/

@media(max-width: 768px){
    .modal-body{
        padding: 0 16px;
    }
}

/*Block cart modal*/
#blockcart-modal{
    padding: 0;
}
#blockcart-modal .modal-content{
    border-radius: 32px;
    overflow: hidden;
}

#blockcart-modal .modal-header{
    padding: 32px;
    border-bottom:2px solid #f6f6f6;
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
}

#blockcart-modal .modal-body{
    display: flex;
    flex-direction: column;
    align-items: stretch;
}

#blockcart-modal .modal-dialog .product-price{
    font-weight: 700;
    margin: 0;
    padding: 0;
}

#blockcart-modal .modal-dialog .col-md-6 span{
    margin: 0;
}

#blockcart-modal .product-quantity{
    padding: 8px 0;
}

#blockcart-modal .modal-checkout-details{
    padding: 0;
}

#blockcart-modal .modal-header .modal-title{
    font-size: 18px;
    display: flex;
    font-weight: bold;
    align-items: center;
    gap: 16px;
}


#blockcart-modal .product-attributes{
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

#blockcart-modal .attribute{
    border: 2px solid #f6f6f6;
    border-radius: 32px;
    padding:4px 8px ;
    font-size:14px;
    font-weight: bold;
}

#blockcart-modal .attribute-value{
    color: #454545;
}

#blockcart-modal .modal-header:after{
    display: none;
}

#blockcart-modal .modal-header .modal-title span{
    font-size: 28px;
}


.close {
    line-height: inherit;
    text-shadow: none;
}

#blockcart-modal .modal-header button{
    padding: 4px;
}

#blockcart-modal .modal-body .row .product-image{
    width: auto;
}

#blockcart-modal .product-image{
    margin: 0;
}

#blockcart-modal .modal-title i.material-icons, #blockcart-modal .product-name, #blockcart-modal .cart-content p.cart-products-count, #blockcart-modal .product-price{
    color: #2B2B2B;
    font-size: 16px;
}

#blockcart-modal .btn-primary .material-icons{
    margin: 0;
}

#blockcart-modal .cart-content .cart-content-btn .btn{
    flex: 1;
    font-size: 14px;
}

#blockcart-modal .cart-content p.product-total, #blockcart-modal .cart-content .cart-content-btn .btn-secondary{
    background-color: transparent;
    text-transform: none;
}

#blockcart-modal .divide-right{
    border-right: 2px solid #f6f6f6;
}

#blockcart-modal .cart-content .cart-content-btn{
    display: flex;
    justify-content: space-between;
}

#blockcart-modal .cart-content .cart-content-btn .btn-secondary:hover{
    color: #454545;
}

#blockcart-modal .left-side{
    display: flex;
}

#blockcart-modal .product-details{
    flex: 1;
}

#blockcart-modal .cart-content .cart-content-btn a {
    display: flex;
    align-items: center;
}

#blockcart-modal .product-image{
    max-width: 10rem;
}

#blockcart-modal .btn span{
    font-size: 32px;
}

@media (max-width: 768px){
    #blockcart-modal .divide-right{
        border: none;
        padding: 0;
    }
    #blockcart-modal .cart-content-btn{
        display: flex;
        flex-direction: column;
        justify-content: center;
        gap: 8px;
        text-align: center;
    }
    #blockcart-modal .left-side{
        flex-direction: column;
    }

    #blockcart-modal .modal-checkout-details{
        border-top: 2px solid #f6f6f6;
        padding: 16px 0;
    }

    #blockcart-modal .modal-body .divide-right .product-quantity{
        padding: 16px 0.5rem;
    }

    #blockcart-modal .product-details{
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: 4px;
    }

    #blockcart-modal .product-image{
        max-width: 10rem;
    }

    #blockcart-modal .modal-body .divide-right span.attribute{
        font-size:12px;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 4px;
    }

    #blockcart-modal .cart-content .cart-content-btn button {
        margin: 0;
    }
    #blockcart-modal .cart-content .cart-content-btn .btn-secondary{
        padding: 12px;
    }
    #blockcart-modal .product-image {
        padding: 8px;
        margin: auto;
    }
    #blockcart-modal .modal-body{
        padding: 16px 24px 0 24px;
    }
    #blockcart-modal .modal-header{
        padding: 16px;
    }
    #blockcart-modal .cart-content p.product-total{
        padding-bottom: 0;
    }
    #blockcart-modal .cart-content .cart-content-btn .btn{
        margin-bottom: 0;
    }

    #blockcart-modal .product-name{
        font-size: 14px;
        padding: 0;
    }
    #blockcart-modal .btn{
        font-size: 14px;
    }
    #blockcart-modal .product-attributes{
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }

    #blockcart-modal .product-attributes:not(:has(*)) {
        display: none;
    }
    #blockcart-modal .btn span{
        font-size: 28px;
    }
}

@media (max-width: 480px){
    #blockcart-modal .modal-header .modal-title{
        font-size: 16px;
    }
    #blockcart-modal .cart-content p.cart-products-count{
        display: none;
    }
}

/*Order confirmation*/
#content-hook_order_confirmation .icon{
    font-size: 42px;
}

#order-confirmation .col-md-12{
    display: flex;
    flex-direction: column;
    padding: 0;
}

#order-confirmation .account-transformation{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 32px;
}

#order-confirmation .form-footer{
    margin: 0;
}


#order-confirmation .card-block{
    padding: 0;
}

#content-hook_order_confirmation .card-block .card-title{
    display: flex;
    justify-content: center;
    align-items: center;
    text-transform: none;
    gap: 8px;
    font-size: 26px;
    letter-spacing: -0.04em;
    text-align: center;
    padding-bottom: 16px;
    margin: 0;
}

/*#order-confirmation .card-block{*/
/*    padding: 0;*/
/*}*/

#order-confirmation .order-line {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 0 0 16px 0;
    padding: 16px;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 16px;
    background: #fff;
    border-bottom: none;
}

#order-confirmation .order-line .image img {
    border-radius: 18px;
    width: 100%;
    max-width: 120px;
    height: auto;
    object-fit: cover;
}

#order-confirmation .page-order-confirmation #order-items .row h3{
    font-size: 14px;
}

#order-confirmation .row::after{
    display: none;
}

#order-confirmation .order-line .details {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

#order-confirmation .order-line .details span {
    font-size: 14px;
    font-weight: 600;
    color: #2B2B2B;
    line-height: 1.2;
}

#order-confirmation .order-line .qty {
    display: flex;
    align-items: center;
}

#order-confirmation .order-line .qty .row {
    width: 100%;
    display: flex;
    align-items: center;
    margin: 0;
}

#order-confirmation .order-line .qty .row > div {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
}

#order-confirmation .order-line .qty .row .bold {
    font-weight: 700;
    color: #2B2B2B;
}

#order-confirmation .order-line.row{
    display: flex;
    align-items: center;
    justify-content: space-between;
}

#order-confirmation #order-items {
    border:none;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    padding: 32px 16px;
    border-radius: 32px;
}

#order-confirmation .order-confirmation-header{
    display: flex;
    flex-direction: row;
}

#order-confirmation #order-items hr{
    border-top: 2px solid #f6f6f6;
}

#order-confirmation .page-order-confirmation #order-items .table-header{
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 16px;
}

@media (max-width: 990px){
    #order-confirmation .page-order-confirmation #order-items .table-header{
        justify-content: center;
        padding: 0;
    }
    #order-confirmation .page-order-confirmation #order-items .table-header .card-title{
        text-align: center;
        font-size: 20px;
        padding: 16px 0;
    }
    #order-confirmation #order-items{
        margin: 0;
    }
    #order-confirmation .account-transformation .btn.btn-primary{
        width: 100%;
        font-size: 14px;
    }
    #order-confirmation .account-transformation .card-block ul{
        font-size: 14px;
    }
}

#order-confirmation .page-order-confirmation #order-items .row h3{
    text-transform: none;
}

#order-confirmation .page-order-confirmation .order-confirmation-table table tbody{
    display: flex;
    flex-direction: column;

}

#order-confirmation .page-order-confirmation .order-confirmation-table table tr{
    display: flex;
    justify-content: space-between;

}

#order-confirmation .page-order-confirmation #order-items table tr.total-value{
    background-color: transparent;
}

#order-confirmation .page-order-confirmation .order-confirmation-table table tr td {
    font-size: 16px;
}

#order-confirmation .page-order-confirmation #order-details .card-title{
    text-transform: none;
    margin-bottom: 16px;
}

#order-confirmation .order-confirmation-info{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 32px;
    display: flex;
    gap: 16px;
    flex-direction: column;
    justify-content: center;
}

#order-confirmation .order-confirmation-info-header{
    display: flex;
    gap: 16px;
    justify-content: space-between;
    align-items: center;
    font-size: 16px;
}

#order-confirmation .download-invoice{
    align-self: flex-end;
}

#order-confirmation .download-invoice a{
    display: flex;
    align-items: center;
    font-size: 16px;
    text-transform:none ;
    gap: 16px;
}

#order-confirmation .download-invoice a .material-symbols-outlined{
    font-size: 24px;
}

#order-confirmation .order-confirmation-info p{
    font-size: 16px;
    margin: 0;
}

#order-confirmation #ps_cashondelivery-displayOrderConfirmation{
    display: flex;
    flex-direction: column;
    gap:24px;
    width: 100%;
}

#order-confirmation #ps_cashondelivery-displayOrderConfirmation p{
    margin: 0;
}

#order-confirmation .order-confirmation-info .email-confirmation, #order-confirmation #order-details .card-title{
    border-bottom: 2px solid #f6f6f6;
    width: 100%;
    text-align: center;
    padding-bottom: 16px;
}

#order-confirmation .order-confirmation-info .order-confirmation-info-header:has(.download-invoice strong a) .email-confirmation {
    text-align: left;
}

#order-confirmation .order-confirmation-info .email-confirmation{
    font-size: 16px;
}

#order-confirmation #order-details .card-title{
    font-size:24px;
}

#order-confirmation #order-details{
    display: flex;
    flex-direction: column;
    width: 100%;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 32px;
}

#order-confirmation #order-details ul{
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin: 0;
}

#order-confirmation #order-details ul li{
    display: flex;
    gap: 4px;
}

@media (max-width: 768px) {
    #order-confirmation .order-line {
        padding: 16px 12px;
        gap: 12px;
    }
    #order-confirmation .order-confirmation-info .order-confirmation-info-header:has(.download-invoice strong a) .email-confirmation{
        text-align: center;
        font-size: 14px;
    }

    #order-confirmation .order-confirmation-info-header{
        flex-direction: column;
    }

    #order-confirmation #ps_cashondelivery-displayOrderConfirmation{
        gap: 8px;
    }

    #order-confirmation .order-confirmation-info{
        gap: 16px;
    }

    #order-confirmation .order-confirmation-info p{
        font-size: 14px;
        width: 100%;
    }

    #order-confirmation .order-line.row{
        flex-direction: column;
    }

    #order-confirmation #order-details ul li .carrier-info{
        display: flex;
        flex-direction: column;
        align-items: end;
    }

    #order-confirmation #order-details ul li{
        display: flex;
        justify-content: space-between;
        font-size: 14px;
    }
    #order-confirmation #order-details ul li strong{
        text-align: end;
    }

    #order-confirmation #order-details{
        padding: 16px;
    }

    #order-confirmation .order-line .qty {
        margin-top: 8px;
        padding-top: 12px;
        border-top: 1px solid rgba(0, 0, 0, 0.05);
        width: 100%;
        flex: 0 0 100%;
    }

    #order-confirmation .order-line .details span {
        font-size: 13px;
    }
    #order-confirmation .download-invoice a{
        font-size: 14px;
    }

    #order-confirmation .order-line .qty .row .text-xs-left {
        justify-content: flex-start;
    }

    #order-confirmation .order-line .qty .row .text-xs-right {
        justify-content: flex-end;
    }
    #order-confirmation .order-line .details{
        width: 100%;
        margin: 0;
    }
    #content-hook_order_confirmation .card-block .card-title{
        font-size: 20px;
        gap: 0;
        padding: 16px 0;
    }
    #content-hook_order_confirmation .icon {
        display: none;
    }
    #order-confirmation .order-confirmation-info .order-confirmation-info-header .email-confirmation{
        font-size: 16px;
    }
    .page-order-detail .order-items .order-item .desc .name{
        font-size: 12px;
    }

    #order-confirmation #order-details .card-title{
        font-size: 20px;
    }

    #order-confirmation #order-details .card-title, #order-items .card-title{
        border: none;
        margin-bottom: 0;
    }
}

@media (min-width: 769px) {
    #order-confirmation .order-line {
        flex-wrap: nowrap;
    }
}

/*Contact form*/
#contact .form-group.row h1{
    color: #2B2B2B;
}

#contact .form-group{
    margin: 0;
}

#contact .contact-rich{
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

#contact .contact-container{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 32px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

#contact #contactForm{
    display: flex;
    flex-direction: column;
    gap: 8px;
}

#contact .contact-form{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 32px;
}

#contact .form-fields{
    display: flex;
    flex-direction: column;
    gap: 16px;
}

#contact .js-content-wrapper{
    padding: 0;
}

#contact .page-content.card-block#content{
    margin: 0;
    padding: 0;
}

.group-span-filestyle .btn-default{
    background-color: #2B2B2B;
    border-radius: 32px;
}
#contact .input-group .form-control:not(:last-child) {
    border-radius: 32px 0 0 32px ;
}

#contact .group-span-filestyle .buttonText{
    text-transform: none;
    font-size: 12px;
}

#contact .form-group h1{
    text-align: center;
}

#contact #right-column{
    background-color: #2B2B2B;
    border-radius: 32px;
    padding: 32px;
}

#contact .contact-rich .block .data{
    text-align: left;
}

#contact #right-column .contact-rich h4{
    text-transform: none;
    text-align: center;
    font-size: 20px;
}

#contact #right-column .contact-rich h4,
#contact #right-column .contact-rich .block,
#contact .contact-rich .block .data,
#contact .contact-rich .block a {
    color: #fff;
}

#contact #file-upload{
    padding: 0;
    width: 0;
}

#contact #wrapper .container .row:first-of-type {
    margin: 0;
    display: flex;
    gap: 16px;
    align-items: start;
}

.row::after{
    display: none;
}

#contact .icon{
    width: auto;
}

#contact .icon span{
    font-size: 32px;
}

#contact #right-column .contact-rich .block{
    display: grid;
    grid-template-columns: 40px 1fr;
    align-items: center;
    width: 100%;
    gap: 16px;
}

#contact .contact-rich .block a[href^="mailto:"]{
    font-size: 14px;
}

.form-footer{
    max-width: 480px;
    margin: auto;
    padding: 16px 0;
}

@media(max-width: 768px){
    #contact #right-column{
        margin-bottom: 16px;
    }
    #contact #wrapper .container .row:first-of-type{
        flex-direction: column;
    }
    #contact .icon span{
        font-size: 24px;
    }
    #contact .contact-container, #contact #right-column{
        padding: 16px;
    }
    #contact .submit-btn{
        font-size: 14px;
    }
}

/*Delivery and payment*/
.dap-container {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.dap-container .payment .payment-content p,.dap-container .payment .payment-content ul{
    font-size: 16px;
}

.dap-section-title {
    padding-bottom: 16px;
    border-bottom: 2px solid #f6f6f6;
    font-size: 28px;
    font-weight: 600;
    letter-spacing: -0.04em;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.dap-subsection-title {
    font-size: 24px;
    font-weight: 600;
    letter-spacing: -0.04em;
    padding-bottom: 16px;
    margin-bottom: 16px;
}

.dap-headers-row,
.dap-courier-card {
    display: grid;
    grid-template-columns: minmax(200px, 1fr) auto 1fr;
    align-items: center;
}

.dap-headers-row {
    margin-bottom: 8px;
}

.dap-courier-card {
    background-color: #fff;
    border-radius: 32px;
    padding: 12px 16px;
    margin-bottom: 16px;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border: 1px solid rgba(0,0,0,0.02);
    transition: transform 0.2s, box-shadow 0.2s;
    font-weight: bold;
}

.dap-courier-card:hover {
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.12);
}

.dap-grid-header {
    font-weight: bold;
    font-size: 16px;
    padding-bottom: 8px;
    border-bottom: 2px solid #f6f6f6;
    letter-spacing: -0.04em;
}

.dap-logo-cell {
    display: flex;
    align-items: center;
    gap: 24px;
}

.dap-delivery-logo {
    width: 82px;
    height: 82px;
    flex-shrink: 0;
    display: grid;
    place-items: center;
    border-radius: 32px;
    box-shadow: 0 2px 8px 0 rgba(0,0,0,0.1);
}

.dap-align-right {
    text-align: right;
}

.top-padding {
    padding-top: 16px;
}

.dap-align-center {
    text-align: center;
}

.dap-mobile-label {
    display: none;
}

.dap-delivery-logo .dap-icon{
    font-size: 32px;
}

@media (max-width: 768px) {
    .dap-container {
        gap: 16px;
    }


    .dap-section-title {
        font-size: 24px;
        justify-content: center;
    }

    .dap-subsection-title {
        font-size: 20px;
        text-align: center;
        margin: 0;
        border-bottom: 2px solid #f6f6f6;
    }

    .dap-headers-row {
        display: none;
    }

    .dap-courier-card {
        grid-template-columns: 1fr;
        gap: 8px;
        padding: 16px;
        align-items: stretch;
    }

    .dap-logo-cell {
        gap: 16px;
        font-weight: 600;
        margin-bottom: 12px;
        padding-bottom: 12px;
        border-bottom: 1px solid #f6f6f6;
    }

    .dap-delivery-logo {
        width: 60px;
        height: 60px;
        border-radius: 20px;
    }

    .dap-grid-cell {
        padding: 4px 0;
        display: flex;
        justify-content: center;
        gap: 8px;
    }

    .dap-align-right {
        text-align: left;
    }

    .dap-mobile-label {
        display: inline-block;
        font-weight: 500;
        color: #555;
    }
    .free-delivery-label .dap-mobile-label{
        display: none;
    }
}

@media (max-width: 400px) {
    .dap-subsection-title {
        font-size: 18px;
    }

    .dap-delivery-logo {
        width: 50px;
        height: 50px;
        border-radius: 16px;
    }

    .dap-mobile-label {
        display: block;
        min-width: 0;
        font-weight: 600;
        color: #333;
        margin-bottom: 2px;
    }
}

/*Cms pages*/
#cms #content-wrapper{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 32px 64px;
    margin-bottom: 32px;
}

#cms h4, #cms h2{
    border-bottom: 2px solid #f6f6f6;
    padding: 12px 0;
    margin-bottom: 12px;
}

@media (max-width: 768px){
    #cms #content-wrapper {
        padding: 16px;
    }
}

/*Discount Page*/
#discount #content-wrapper{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 32px 64px;
    margin-bottom: 32px;
}

@media (max-width: 768px){
    #discount #content-wrapper {
        padding: 16px;
    }
}

#index .photo-title {
    font-size: 20px;
    color: #2B2B2B;
}

#index .photo-nav-bar{
    background: none;
    backdrop-filter: none;
}

#index .photo-nav{
    background-color: rgb(43, 43, 43);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    padding: 18px;
}

#index .photo-titles-container{
    padding: 8px;
    border-radius: 30px;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    background: rgba(255, 255, 255, 0.25);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}


#index .photo-title.active{
    background-color: rgba(67,67,67,0.2);
    color: #fff;
}

#index .photo-nav-bar{
    backdrop-filter: none;
}

/*Discounts Page*/
#discount .cart-rules {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 32px;
}

#discount .cart-rule {
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 16px;
    background: #ffffff;
}

#discount .cart-rule ul {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
    margin: 0;
}

#discount .cart-rule li {
    flex: 1;
    display: flex;
    flex-direction: column;
    font-size: 14px;
    padding: 0 8px;
    color: #2B2B2B;
    font-weight: 600;
}

#discount .cart-rule li strong {
    font-size: 12px;
    color: #454545;
    margin-bottom: 4px;
    font-weight: 600;
}

@media(max-width: 768px){
    #discount .cart-rule ul {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }

    #discount .cart-rule li {
        width: 100%;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        border-bottom: 1px solid #f6f6f6;
        padding-bottom: 8px;
        padding-left: 0;
        padding-right: 0;
    }

    #discount .cart-rule li:last-child {
        border-bottom: none;
        padding-bottom: 0;
    }
}

/*Order Return*/
#order-return #main{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 32px 48px;
    margin-bottom: 32px;
}

#order-return .page-footer a span{
    font-size: 14px;
}

#order-return .card-block{
    padding: 0;
}

#order-return .card-block p{
    font-size: 14px;
}

#order-return .page-content {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin: 0;
}

#order-return h1 {
    text-align: center;
    color: #2B2B2B;
    font-weight: 600;
    text-transform: none;
}

#order-return .product-row{
    display: flex;
    justify-content: space-around;
}

#order-return .card {
    border: none;
    margin: 0;
}

#order-return .card-block p {
    margin-bottom: 12px;
    line-height: 1.5;
    color: #2B2B2B;
}

#order-return .card-title,
#order-return h3 {
    text-align: center;
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 24px;
    text-transform: none;
}

#order-return tbody td strong{
    font-size: 14px;
}


#order-return table {
    width: 100%;
    margin-top: 16px;
    border-collapse: collapse;
}

#order-return .table-bordered,
#order-return .table-bordered td,
#order-return .table-bordered th {
    border: none;
}

#order-return thead th {
    border-bottom: 2px solid #f6f6f6;
    padding: 16px 8px;
    font-weight: 600;
    color: #454545;
    text-align: left;
}

#order-return tbody td {
    border-bottom: 2px solid #f6f6f6;
    padding: 16px 8px;
    vertical-align: middle;
}

#order-return tbody .product-row td:last-child {
    border-bottom: none;
}

#order-return tbody td strong {
    color: #2B2B2B;
    font-weight: 600;
}

#order-return .customization {
    margin-top: 8px;
    font-size: 13px;
}

#order-return .customization a {
    color: #454545;
    text-decoration: underline;
}

#order-return .card-text a {
    color: #2B2B2B;
    font-weight: 600;
    text-decoration: underline;
}

#order-return tbody tr{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 16px;
}

#order-return .card-text a:hover {
    text-decoration: none;
    opacity: 0.8;
}

@media(max-width: 768px){
    #order-return .card {
        padding: 16px;
        border-radius: 24px;
    }

    #order-return #main{
        padding: 16px;
    }

    #order-return h1 {
        font-size: 20px;
        margin-bottom: 16px;
    }

    #order-return h3,
    #order-return .card-title {
        font-size: 18px;
        margin-bottom: 16px;
    }
    #order-return .product-row td{
        border-bottom: 2px solid #f6f6f6;
    }

    #order-return table th,
    #order-return table td {
        padding: 12px 4px;
        font-size: 14px;
    }

    #order-return .card-text {
        font-size: 14px;
    }

    #order-return .product-row{
        flex-direction: column;
    }
}

/*Facebook social connect*/
#module-facebookpsconnect-account #main .card.card-block{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 32px;
    margin-top: 32px;
}

#fbpsc.authentication{
    padding: 8px 0;
    margin: 0;
}


#module-facebookpsconnect-account .table td{
    border: none;
}

#module-facebookpsconnect-account .page-subheading{
    text-align: center;
    margin-bottom: 2rem;
}

#module-facebookpsconnect-account .table tr td a.btn{
    width: 100%;
    font-size: 14px;
}

#module-facebookpsconnect-account #fbpsc .btn-connect{
    margin: 0 !important;
}

@media (max-width: 768px){
    #module-facebookpsconnect-account .table tr{
        display: flex;
        flex-direction: column;
    }
    #fbpsc .btn-title-connect{
        font-size: 12px;
    }
}

/*Manufacturer Page*/
#manufacturer #main ul .brand{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    min-width: 160px;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

#manufacturer #main{
    padding-bottom: 16px
}

#manufacturer #main ul .brand-infos a{
    font-weight: bold;
}

#manufacturer #main ul .brand-img{
    width: auto;
}

#manufacturer #main ul{
    gap: 8px;
}

#manufacturer #js-product-list-header{
    padding-bottom: 16px;
}

@media(min-width: 1200px) {
    #manufacturer .col-xl-3 {
        width: 100%;
    }
}

@media (min-width: 992px) {
    #manufacturer.col-lg-4, #manufacturer .col-lg-5 {
        width: 100%;
    }
}

@media(max-width: 991px){
    #manufacturer #main ul{
        justify-content: center;
    }
    #manufacturer h1 {
        font-size: 24px;
        text-align: center;
    }
    #manufacturer h1.h2{
        text-align: start;
    }
    #manufacturer .col-lg-4{
        width: 100%;
    }
}

/*Age Verification Popup*/
.age-verification-container{
    border-radius: 32px;
}

.age-verification-container .date-inputs input{
    border: 2px solid #f6f6f6;
}

.age-verification-container #redirect-google {
    background: none;
}
.age-verification-container #redirect-google:hover{
    color: #fff;
    background-color: #454545;
}

.age-verification-content{
    align-items: stretch;
}

.age-verification-overlay{
    background-color: rgba(0, 0, 0, 0.5);
}

.age-warning, .age-error{
    color:rgb(209, 57, 57);
}

.date-inputs input.error{
    border-color: rgb(209, 57, 57);
}

.age-warning .material-symbols-outlined{
    font-size: 28px;
}

.age-disclaimer{
    color: #2B2B2B;
}

.date-inputs input:focus{
    border-color: #2B2B2B;
    box-shadow: none;
}

.age-form{
    gap: 16px;
    flex-wrap: nowrap;
    flex-direction: row-reverse;
}

.error-box{
    border-radius: 32px;
    background-color: rgb(209, 57, 57);
    border-color: #D139394C;
    color: #fff;
    padding: 8px 16px;
}

.error-box .error-text{
    font-size: 14px;
}

@media(max-width: 768px){
    .error-box .error-text{
        font-size: 12px;
    }
}

#checkout-age-error{
    display: flex;
    justify-content: center;
}

#checkout-age-verification h3{
    font-size: 18px;
}

.age-disclaimer{
    margin: 0;
}

.date-inputs input{
    border-radius: 32px;
}

.age-verification-content{
    gap: 16px;
}

.age-verification-content img{
    align-self: center;
}

.age-verification-buttons button{
    flex: 0 0 25%;
}

.checkout-age-verfication-content{
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.age-warning{
    align-self: center;
}

.age-form .btn.btn-primary, .age-verification-container #redirect-google{
    width: 50%;
}

.checkout-age-verfication-content h3{
    margin: 0;
}

#checkout .age-verifaction-container input{
    border-radius: 32px;
    outline: none;
}

#checkout .age-verifaction-container input:focus {
    outline: 2px solid #2B2B2B;
}

@media(max-width: 768px){
    .age-form .btn.btn-primary{
        flex: 1;
        font-size: 14px;
        padding: 12px 16px;
        width: 100%;
    }

    .age-verification-container #redirect-google{
        width: 100%;
    }

    .age-verification-buttons{
        flex-direction: column-reverse;
    }
    .age-verification-buttons button{
        flex: 1;
        font-size: 14px;
    }

    .age-warning{
        font-size: 14px;
        gap: 8px;
        flex-direction: column;
    }
    .age-disclaimer{
        font-size: 14px;
    }
    .age-form{
        flex-direction: column;
    }

    .date-inputs input{
        font-size: 16px;
    }
}

/*Cookie banner*/
#cookie-banner{
    background-color: rgba(255, 255, 255, 0.98);
    box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.05);
    border-radius: 32px 32px 0 0;
    padding: 0;
}

.cookie-banner .btn-primary{
    background-color: #2B2B2B;
    border-radius: 32px;
}

.cookie-banner .btn-outline:hover{
    border: 2px solid #2B2B2B;
}

#cookie-banner .cookie-content p, .cookie-banner .btn-outline{
    color: #2B2B2B;
}

.cookie-banner .btn-outline{
    border: 2px solid #f6f6f6;
    border-radius: 32px;
}

.cookie-banner label{
    color: #2B2B2B;
}

#accept-cookies{
    border-radius: 32px;
    width: 30%;
}

.cookie-content{
    padding: 32px 128px;
    max-width: 100%;
    flex-direction: column;
    gap: 16px;
}

.cookie-content p{
    font-size: 14px;
}

.cookie-text-with-icon{
    display: flex;
    align-items: center;
    gap: 16px;
}

.cookie-banner p{
    color: #2B2B2B;
}

.cookie-content .cookie-text-with-icon span{
    color: #2B2B2B;
    font-size: 64px;
}

.cookie-container{
    background-color: #fff;
    display: flex;
    justify-content: center;
    border-radius: 32px 32px 0 0;
    align-items: center;
    flex-direction: column;
}

@media(max-width: 768px){
    .cookie-content{
        padding: 0;
    }
    .cookie-content{
        padding: 16px;
    }

    .cookie-text-with-icon{
        flex-direction: column;
    }
    .cookie-content .cookie-text-with-icon span{
        font-size: 36px;
    }

    .cookie-content p{
        font-size: 12px;
    }

    .cookie-text-with-icon{
        gap: 8px;
    }

    #accept-cookies{
        width: 100%
    }
    .cookie-buttons{
        flex-direction: column;
    }
}

/*Popup*/
.popup-content{
    border-radius: 32px;
    padding: 32px;
}

.popup-text-content{
    text-align: center;
}

.popup-ok-button{
    box-shadow: none;
    width: 50%;
    font-size: 16px;
}

.popup-body{
    font-size: 16px;
}

.popup-ok-button:hover{
    transform: none;
}

/*COD limiter*/
.codlimiter-alert{
    border: 1px;
    margin: 0;
}

/*Custom Navigation menu*/
.custom-category-nav-wrapper .panel-header .back-button{
    padding: 0;
}

#header .mobile-nav-items{
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 16px 0;
}

#header .mobile-nav-item{
    border: 0;
}

#header .mobile-menu{
    overscroll-behavior: contain;
}

#header .mobile-panel{
    padding: 0;
}

.mobile-menu-header .mobile-menu-title{
    font-size: 20px
}

.custom-category-nav-wrapper .mobile-nav-item-wrapper .mobile-nav-link{
    flex: none;
}

.custom-category-nav-wrapper .mobile-nav-item-wrapper{
    justify-content: space-between;
    border-bottom: 1px solid #f6f6f6;
}

/*Guest Tracking*/
#guest-tracking #guestOrderTrackingForm p{
    text-align: center;
}

#guest-tracking #guestOrderTrackingForm .form-footer, #guest-tracking .page-footer{
    margin-top: 8px;
}

#guest-tracking #guestOrderTrackingForm{
    max-width: 480px;
    margin: auto;
    padding: 32px;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
}

#guest-tracking #guestOrderTrackingForm h1{
    color: #2B2B2B;
    text-align: center;
}

#guest-tracking .page-content.card section.form-fields{
    margin: 0;
    max-width: inherit;
}
@media (max-width: 768px){
    #guest-tracking #guestOrderTrackingForm p{
        font-size: 14px;
    }
    #guest-tracking #guestOrderTrackingForm{
        padding: 16px;
    }
}

/*Stripe payment*/

#module-stripe_official-orderFailure #content-wrapper.js-content-wrapper{
    display: flex;
    justify-content: center;
    align-items: center;
    height: 40vh;
}

#module-stripe_official-orderFailure #content-hook_order_confirmation{
    padding: 32px;
    text-align: center;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    margin: 16px 0;
}

#module-stripe_official-orderFailure  #content-wrapper.js-content-wrapper #content-hook_order_confirmation p{
    color: rgb(209, 57, 57);
    font-size: 16px;
    margin: 0;
    font-weight: 600;
}

#module-stripe_official-orderFailure  #content-wrapper.js-content-wrapper #content-hook_order_confirmation p a{
    font-weight: 700;
    cursor: pointer;
}

@media(max-width: 768px){
    #module-stripe_official-orderFailure #content-wrapper.js-content-wrapper{
        height: 40vh;
    }
}

/*Payment recover*/
#pmr-bar .pmr-btn{
    background-color: #fff;
    color: #2B2B2B;
}

.pmr-btn:hover{
    color: #2B2B2B;
}

#pmr-bar{
    background-color: #2B2B2B;
    border: none;
    position: fixed;
    gap: 8px;
    z-index: 1000;
}

#pmr-bar .pmr-wrap{
    padding: 8px;
    position: relative;
    gap: 4px;
    max-width: none;
}

#pmr-modal .pmr-btn-danger{
    background-color: #fff;
    border-radius: 16px;
}

#pmr-modal .pmr-btn-cancel{
    border-radius: 16px;
}


.pmr-text strong,
.pmr-text a[x-apple-data-detectors],
.pmr-text strong a{
    color: #fff;
    text-decoration: none;
}

#pmr-bar .pmr-text{
    color: #fff;
    font-size: 12px;
}

#pmr-bar .pmr-close{
    color: #fff;
    font-size: 20px;
    position: absolute;
    right: 16px;
}

#pmr-bar .pmr-btn{
    font-size: 12px;
    padding: 4px 8px;
}

@media(max-width: 768px){
    #pmr-bar .pmr-wrap{
        flex-direction: column;
    }
}

/*Guest tracking*/

#guest-tracking #order-infos .order-again-button .button-primary {
    border: 2px solid #f6f6f6;
    padding: 8px 16px;
    border-radius: 32px;
    white-space: nowrap;
}

#guest-tracking #order-infos .box .row .col-xs-9 {
    padding: 0;
    display: flex;
    flex-direction: column;
    font-size: 16px;
    width: auto;
    gap: 8px;
    color: #2B2B2B;
}

#guest-tracking .order-items .order-item .qty .q {
    margin: 0;
}

#guest-tracking .product-attributes,
#order-confirmation .product-attributes {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    flex-wrap: wrap;
    gap: 4px;
}

@media(max-width: 768px){
    #guest-tracking .product-attributes,
    #order-confirmation .product-attributes {
        grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
    }
}

#guest-tracking .order-items .order-item .desc {
    width: auto;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 0;
}

#guest-tracking .attribute,
#order-confirmation .attribute {
    border: 2px solid #f6f6f6;
    border-radius: 32px;
    padding: 4px 6px;
    font-size: 12px;
    font-weight: bold;
}

#guest-tracking .product-total,
#guest-tracking .total-value {
    font-weight: bold;
}

#guest-tracking #main {
    display: flex;
    flex-direction: column;
    margin: 0;
}

#guest-tracking #order-infos .box .row:after {
    display: none;
}

#guest-tracking #order-infos .box .row {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0;
    gap: 16px;
}

#guest-tracking .form-footer {
    margin: 0;
}

#guest-tracking .table-labeled .label {
    border-radius: 32px;
    padding: 8px;
}

#guest-tracking #order-infos .box ul li {
    font-size: 16px;
}

#guest-tracking .addresses {
    display: flex;
    gap: 32px;
    margin: 0;
}

#guest-tracking .addresses .address-box article h4,
#guest-tracking .addresses .address-box article address {
    font-size: 16px;
    color: #2B2B2B;
}

#guest-tracking .addresses .address-box article h4 {
    font-size: 18px;
}

#guest-tracking .form-footer {
    max-width: 100%;
}

#guest-tracking .form-group.row {
    margin: 0;
}

#guest-tracking #order-history h3,
#guest-tracking .box h3 {
    text-transform: none;
    font-size: 20px;
    color: #2B2B2B;
}

#guest-tracking .form-control-select {
    padding: 8px;
}

#guest-tracking .download-invoice {
    display: flex;
    align-items: center;
    gap: 8px;
}

#guest-tracking .order-again-button {
    width: 100%;
}

#guest-tracking .order-actions {
    display: flex;
    gap: 8px;
    flex-direction: column;
}

#guest-tracking .address-box {
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
}

#guest-tracking .order-message-form,
#guest-tracking .carrier-box,
#guest-tracking .products-price-box,
#guest-tracking #order-history,
#guest-tracking #order-infos {
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 32px;
}

#guest-tracking .order-message-form form {
    display: flex;
    flex-direction: column;
}

#guest-tracking .page-content {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin: 0;
}

#guest-tracking .order-items {
    display: flex;
    flex-direction: column;
}

#guest-tracking .order-items .order-item {
    border-bottom: 2px solid #f6f6f6;
    padding: 16px 0;
}

#guest-tracking .order-items .order-item .row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

#guest-tracking .order-items .order-item .qty {
    padding: 0;
}

#guest-tracking .box {
    padding: 0;
    margin: 0;
}

#guest-tracking .address-box {
    padding: 16px 24px;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    flex: 1;
}

#guest-tracking .quantity {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex: 1;
}

#guest-tracking .quantity .s,
#guest-tracking .quantity div {
    flex: 1;
}

#guest-tracking .quantity .s select {
    text-align: center;
}

#guest-tracking .order-items .order-item .row div {
    margin: 0;
    padding: 0;
}

#guest-tracking .order-items.box {
    padding: 8px 0 !important;
}

#guest-tracking #order-return-form {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

#guest-tracking #order-history .history-lines{
    display: flex;
    flex-direction: column;
    gap: 16px;
}

#guest-tracking #order-history .history-lines .history-line .label {
    border-radius: 32px;
    text-align: center;
    width: 100%;
    max-width: 420px;
    font-weight: bold;
    padding: 4px;
    color: #fff;
}

#guest-tracking .text-muted{
    color: #2B2B2B !important;
}

#guest-tracking .account-transformation .form-group input{
    max-width: 50%;
}

#guest-tracking #guestOrderTrackingForm .form-fields{
    display: flex;
    flex-direction: column;
}

#guest-tracking #guestOrderTrackingForm .form-footer{
    display: flex;
    justify-content: center;
}

#guest-tracking  .page-content.card form .btn[type="submit"].btn-primary{
    flex: 1;
    max-width: 480px;
}

#guest-tracking .product-name {
    font-weight: 600;
    font-size: 16px;
}

#guest-tracking #order-history {
    margin: 0;
}

#order-history .history-lines .history-line .date {
    text-align: center;
    font-weight: bold;
    color: #2B2B2B;
}

#order-history .history-lines .history-line {
    display: flex;
    flex-direction: column;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 16px 8px;
    gap: 8px;
    border: 2px solid #fff;
    opacity: 0.6;
    filter: grayscale(60%);
    transition: all 0.3s ease; /
}

#order-history .history-lines .history-line.actual-state{
    opacity: 1;
    filter: grayscale(0%);
}

#order-history .history-lines .history-line .state {
    flex: 0 0 50%;
    display: flex;
    justify-content: center;
}

#order-history .history-lines {
    position: relative;
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 16px;
}

#order-history .history-lines .history-line {
    position: relative;
    width: 100%;
    max-width: 500px;
}

#order-history .history-lines .history-line:last-child {
    margin-bottom: 0;
}

#order-history .history-lines .history-line::after {
    content: '';
    position: absolute;
    left: -28px;
    width: 2px;
    background-color: #e0e0e0;
    z-index: 1;
    bottom: -50px;
    top: 34px;
    height: calc(100% + 8px);
}

#order-history .history-lines .history-line:last-child::after {
    display: none;
}

#order-history .history-lines .history-line::before {
    content: '';
    position: absolute;
    left: -36px;
    width: 18px;
    height: 18px;
    top: 26px;
    border-radius: 50%;
    background-color: #ccc;
    border: 3px solid #fff;
    box-shadow: 0 0 0 2px #ccc;
    z-index: 2;
}

#order-history .history-lines .history-line.actual-state::before {
    background-color: #2B2B2B;
    box-shadow: 0 0 0 2px #2B2B2B;
    transform: scale(1.1);
}

#guest-tracking #order-history h3,
#guest-tracking .box h3 {
    text-align: center;
}

#guest-tracking .quantity-price-box {
    display: flex;
    justify-content: space-between;
    flex: 1;
    align-items: center;
}

#guest-tracking .order-message-form form header p {
    text-align: center;
}

#guest-tracking .order-totals .order-total.row .col-xs-8,
#guest-tracking .order-totals .order-total.row .col-xs-4 {
    padding: 0;
}

#guest-tracking .product-row {
    display: flex;
    justify-content: space-between;
}

#guest-tracking .price-and-quantity {
    display: flex;
    justify-content: space-between;
}

#guest-tracking .shipping-line ul li {
    font-size: 16px;
}

#guest-tracking.page-customer-account #content .order-actions a{
    padding: 10px 16px;
}

#guest-tracking.page-customer-account .pmr-btn--outline:hover{
    color: #454545;
}

#guest-tracking .pmr-order-cta{
    border-radius: 16px;
    padding: 16px 32px;
}

#guest-tracking .products-price-box{
    color: #2B2B2B;
}

#guest-tracking.page-customer-account .pmr-btn--outline{
    padding: 10px 16px;
}

#guest-tracking .pmr-order-cta{
    display: flex;
    justify-content: space-between;
}

#guest-tracking .box:has(h4), #guest-tracking .account-transformation{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 32px;
    color: #2B2B2B;
}

#guest-tracking .product-name{
    color: #2B2B2B;
}

#guest-tracking #order-infos .box{
    box-shadow: none;
}

#guest-tracking .account-transformation{
    display: flex;
    flex-direction: column;
}

#guest-tracking .addresses .address-box .box,
#guest-tracking .order-totals.box,
#guest-tracking .order-items.box{
    box-shadow: none;
    padding: 0;
}

#guest-tracking .order-totals.box{
    display: flex;
    flex-direction: column;
}

#guest-tracking .carrier-box .shipping-lines .shipping-line{
    color: #2B2B2B;
}

@media(max-width: 768px) {
    #guest-tracking .account-transformation h4 {
        font-size: 16px;
        text-align: center;
    }

    #guest-tracking .account-transformation ul{
        font-size: 14px;
    }

    #order-history .history-lines .history-line::after{
        height: calc(100% + 8px);
    }

    #guest-tracking.page-customer-account .pmr-btn--outline{
        justify-content: center;
    }

    #guest-tracking .account-transformation .form-group label{
        font-size: 12px;
    }

    #guest-tracking .account-transformation .form-group input{
        max-width: none;
    }

    #guest-tracking .account-transformation .form-footer{
        display: flex;
    }

    #guest-tracking .account-transformation .form-footer .btn.btn-primary{
        flex: 1;
        font-size: 14px;
    }

    #guest-tracking .pmr-order-cta{
        flex-direction: column;
    }

    #guest-tracking .order-items .order-item {
        padding: 0;
        margin: 0;
    }

    #guest-tracking .order-items .order-item .content {
        width: auto;
    }

    #guest-tracking .box:has(h4){
        padding: 16px;
    }

    #guest-tracking .product-name {
        font-size: 14px;
    }

    #guest-tracking .order-totals .order-total.row .col-xs-8,
    #guest-tracking .order-totals .order-total.row .col-xs-4 {
        padding: 0;
    }

    #guest-tracking .order-message-form,
    #guest-tracking .carrier-box,
    #guest-tracking .products-price-box,
    #guest-tracking #order-history,
    #guest-tracking #order-infos {
        padding: 16px;
    }

    #guest-tracking .shipping-line ul li {
        display: flex;
        justify-content: space-between;
        font-size: 14px;
    }

    #guest-tracking .attribute {
        font-size: 10px;
    }

    #guest-tracking .price-and-quantity {
        display: flex;
        flex-direction: row;
    }

    #guest-tracking .order-total div {
        font-size: 14px;
        padding: 0;
    }

    #guest-tracking .order-items .order-item {
        padding: 16px 0;
    }

    #guest-tracking .price-and-quantity div {
        font-size: 12px;
        padding: 0;
        text-align: center;
    }

    #guest-tracking .order-items .order-item .row {
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
    }

    #guest-tracking .addresses .address-box article h4 {
        font-size: 14px;
    }

    #guest-tracking .address-box, #guest-tracking .pmr-order-cta {
        padding: 16px;
        align-items: stretch;
    }

    #guest-tracking #order-infos .box .row .col-xs-9 {
        font-size: 14px;
    }

    #guest-tracking #main .page-header h1 {
        font-size: 20px;
    }

    #guest-tracking .form-control-select {
        font-size: 12px;
    }

    #guest-tracking .quantity {
        align-items: start;
    }

    #guest-tracking .order-actions {
        flex: 1;
    }

    #guest-tracking .product-row {
        padding: 8px;
        display: flex;
        flex-direction: column;
        gap: 8px;
    }

    #guest-tracking .return-box header p {
        font-size: 14px;
    }

    #order-history .history-lines .history-line .label {
        font-size: 12px;
    }

    #guest-tracking .addresses {
        margin: 0;
    }

    #guest-tracking .download-invoice span {
        font-size: 20px;
    }

    #guest-tracking .quantity-price-box {
        display: flex;
        flex: 1;
        justify-content: space-between;
        align-items: center;
    }

    #guest-tracking .product-details {
        flex-direction: column;
        align-items: stretch;
    }

    #guest-tracking .addresses .address-box article address {
        font-size: 12px;
    }

    #guest-tracking .quantity {
        flex-direction: column;
        padding: 0;
    }

    #guest-tracking .desc,
    #guest-tracking .qty {
        padding: 0;
    }

    #guest-tracking .quantity .s {
        width: 100%;
        max-width: 100px;
    }

    #guest-tracking .order-again-button,
    #guest-tracking .addresses .address-box article,
    #guest-tracking .download-invoice {
        font-size: 14px;
    }

    #guest-tracking #order-history .history-lines .history-line {
        padding: 8px;
    }

    #guest-tracking #order-infos,
    #guest-tracking #order-history {
        padding: 16px;
    }

    #guest-tracking .page-content.card form .btn[type="submit"].btn-primary{
        flex: 1;
    }

    #guest-tracking .addresses {
        justify-content: space-between;
        gap: 8px;
    }

    #guest-tracking #order-history h3,
    #guest-tracking .box h3 {
        font-size: 16px;
    }

    #main .page-content #notifications {
        display: none;
    }

    #guest-tracking .products-price-box {
        display: flex;
        flex-direction: column;
        gap: 16px;
        padding: 16px;
    }

    .history-lines {
        display: flex;
        gap: 8px;
        flex-direction: column;
        padding-left: 30px;
    }
    #guest-tracking .account-transformation{
        padding: 16px;
    }
}

/*minimum cart value*/
.minimum-cart-value-alert{
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px;
    border: 2px solid #2B2B2B;
    margin-bottom: 16px;
    border-radius: 32px;
}
.minimum-cart-value-alert .alert-icon{
    background-color: #2B2B2B;
}

.minimum-cart-value-alert .alert-content h4,
.minimum-cart-value-alert .alert-content p,
.minimum-cart-value-alert .progress-text .current,
.progress-text .separator, .progress-text .target{
    color: #2B2B2B;
}

.minimum-cart-value-alert .progress-bar{
    border: 1px solid #f6f6f6;
}

.minimum-cart-value-alert .progress-fill{
    background: #2B2B2B;
}

@media (max-width: 768px){
    .minimum-cart-value-alert .alert-content h4, .minimum-cart-value-alert .alert-content p{
        text-align: center;
    }
    .minimum-cart-value-alert .alert-content p{
        font-size: 14px;
    }
}

.shipping-methods {
    padding: 16px;
    border-radius: 32px;
    display: flex;
    gap: 16px;
    flex-direction: column;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
}
.shipping-title,
.shipping-item {
    display: grid;
    grid-template-columns: 60px auto 100px;
    align-items: center;
    gap: 16px;
}

.shipping-item img {
    max-width: 48px;
    max-height: 48px;
    border-radius: 16px;
    object-fit: contain;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
}
.shipping-title div {
    font-weight: 700;
    font-size: 14px;
}

.shipping-item div {
    font-size: 14px;
    font-weight: 500;
}

/*Free shipping box*/
#free-shipping-container{
    border: 2px solid #f6f6f6;
    padding: 16px;
    border-radius:32px;
}

.free-shipping-info{
    flex-direction: column;
    gap: 16px;
}

.progress-bar-container {
    width: 100%;
    background-color: #f6f6f6;
    border-radius: 32px;
    height: 8px;
    overflow: visible;
}
.progress-bar-fill {
    background-color: #2b2b2b;
    height: 100%;
    transition: width 0.4s ease-out;
    border-radius: 10px;
}
.shipping-progress-wrapper {
    width: 100%;
    background: #f6f6f6;
    border-radius: 10px;
    height: 8px;
}

.info-block{
    text-align: center;
    font-size: 14px;
}
.info-block b{
    font-size: 16px;
}

#progress-bar{
    background:#2b2b2b;
    height:100%;
    border-radius:10px;
    transition:width .3s ease;
    position: relative;
}

.progress-prices{
    display: flex;
    justify-content: space-between;
    font-size: 14px;
    font-weight: 600;
}

#progress-bar .truck-icon {
    position: absolute;
    right: -24px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 28px;
    line-height: 1;
    z-index: 10;
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 100%;
}

#progress-bar .truck-icon::before {
    content: "";
    position: absolute;
    width: 80%;
    height: 60%;
    background-color: white;
    z-index: -1;
    border-radius: 2px;
}
.free-shipping-achieved .truck-icon{
    color:#88b577;
    font-size: 32px;
}

.fs-achieved-content{
    display: flex;
    align-items: center;
    gap: 24px;
    font-size: 16px;
}

.fs-achieved-content strong{
    text-align: center;
}

.free-shipping-achieved{
    font-size: 14px;
    text-align: center;
    flex-direction: column;
    gap: 8px;
}

@media(max-width: 768px){
    .info-block{
        font-size: 12px;
    }
    .info-block b{
        font-size: 14px;
    }
    .progress-prices{
        font-size: 12px;
    }
}

/*Loyality module*/
#module-myprestaloyalty-default #content-wrapper{
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    padding: 32px 64px;
    margin-bottom: 32px;
    margin-top: 32px;
}
.loyalty-cards-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin: 0 !important;
}

.loyalty-card {
    border-radius: 32px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-shadow: 0 2px 8px rgba(0,0,0,0.10);
    border: 1px solid #f1f1f1;
    padding: 16px 32px;
}

.loyalty-card.header {
    box-shadow: none;
    border: none;
    color: #454545;
    font-weight: 600;
}

.loyalty-card > div {
    flex: 1;
}

.section-subtitle, .loyalty-module h2{
    font-size: 16px;
    font-weight: 700;
}

.loyalty-summary {
    margin-top: 20px;
    padding: 15px;
    text-align: center;
    font-size: 1.1rem;
}

.total-points {
    color: #24b9d7;
    font-size: 1.4rem;
}

.transform-box {
    text-align: center;
    border-radius: 15px;
}

.loyalty-text{
    text-align: start;
    font-size: 14px;
}

.loyalty-cart-text{
    font-size: 14px;
}

#product #loyalty_product, #loyalty_cart{
    border: none;
    display: flex;
    align-items: center;
    border-radius: 24px;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
    padding: 16px;
}

#loyalty_cart{
    gap: 8px;
}

#product #loyalty_product{
    gap: 16px;
}

#loyalty_cart{
    flex-direction: column;
    margin: 0;
}

#loyalty_cart .text-small{
    font-size: 14px;
    padding-top: 8px;
}

#product #loyalty_product .icon,#loyalty_cart .icon {
    color: #C5A059;
}

.status-ready { color: #4cbb6c; font-weight: bold; }
.status-used { color: #999; text-decoration: line-through; }

@media (max-width: 767px) {
    .loyalty-card.item {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }
    .mobile-label {
        display: block;
        font-size: 0.75rem;
        color: #999;
        text-transform: uppercase;
    }
    #module-myprestaloyalty-default #content-wrapper{
        padding: 16px;
    }

    #module-myprestaloyalty-default .loyalty-module .section-subtitle{
        text-align: center;
    }
    #module-myprestaloyalty-default .loyalty-module .loyalty-section a.btn.btn-primary{
        text-wrap: wrap;
        gap: 8px;
        font-size: 14px;
    }
    .loyalty-module h2{
        text-align: center;
    }
    .transform-box{
        padding: 16px 0;
    }
}