:root {
    --primary-teal: #55C5D1;
    --dark-teal:#489aa6;
    --dark-gray: #333333;
    --light-bg: #EDEDED;
    --white: #ffffff;
    --gray:#AEAEB2;
    --light-gray: #eeee;

    --border-radius-main: 5px;
    --gap-standard: 32px;
}

body {
    font-family: "Manrope", sans-serif;
}

p{
    color: var(--dark-gray);
}

a:focus{
    color: var(--primary-teal);
}

a.text-primary:focus, a.text-primary:hover{
    color: var(--dark-teal) !important;
}

#footer .text-sm-center a, .footer-container li a:hover,
#header .header-nav .cart-preview.active span.material-symbols-outlined,
#header .header-nav .user-info a .material-symbols-outlined{
    color: var(--primary-teal);
}

#header .header-nav .cart-preview.active span.material-symbols-outlined,
#header .header-nav .user-info a .material-symbols-outlined{
    font-size: 32px;
}

.container {
    width: 100%;
    max-width: 1400px;
    padding: 0 32px;
}

@media(max-width: 768px){
    .container {
        padding: 0 16px;
    }
}

.page-footer a{
    color: var(--primary-teal);
}

.text-primary{
    color: var(----primary-teal) !important;
}

body#checkout .footer-container li a{
    color: var(--dark-gray);
}

.btn-primary{
    background-color: var(--primary-teal);
    border-radius: var(--border-radius-main);
    padding: 4px 8px;
}

.btn.disabled, .product-actions .add-to-cart.btn:disabled{
    background-color: var(--dark-teal);
}

.btn-primary:focus, .btn-primary:hover,
.btn-primary.active.focus, .btn-primary.active:focus,
.btn-primary.active:hover,
.btn-primary:active.focus,
.btn-primary:active:focus,
.btn-primary:active:hover,
.open>.btn-primary.dropdown-toggle.focus,
.open>.btn-primary.dropdown-toggle:focus,
.open>.btn-primary.dropdown-toggle:hover{
    background-color: var(--dark-teal);
    outline: none;
}

body#checkout a:hover{
    color: var(--dark-teal);
}

body#checkout a{
    color: var(--primary-teal);
}

body#checkout #header a{
    color: var(--dark-gray);
}

.btn-primary .material-icons{
    margin: 0;
}

#header .container.main-header {
    display: flex;
    gap: var(--gap-standard);
    align-items: center;
}

#header {
    position: sticky;
    box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    width: 100%;
    top:0;
}

#header a:hover,
#header .top-menu a[data-depth="0"]:hover,
a:hover {
    color: var(--primary-teal);
}

#wrapper {
    background-color: var(--white);
}

#search_widget form input {
    border-radius: var(--border-radius-main);
    background-color: var(--light-bg);
}

#search_widget form i {
    color: var(--primary-teal);
}

#header .header-top .position-static {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0;
}

#header #_desktop_logo {
    padding: 0;
}

#header .header-top a[data-depth="0"],
#header a {
    color: var(--dark-gray);
}

#header a{
    display: flex;
    align-items: center;
    gap: 4px;
}

#header .material-icons {
    color: var(--primary-teal);
}

#header .header-nav {
    border: none;
    padding-top: 16px;
    max-height: inherit;
    user-select: none;
}

#header .header-container {
    display: flex;
    flex-direction: column;
    flex: 1;
    gap: 16px;
}

#header .container.main {
    display: flex;
    align-items: center;
    gap: var(--gap-standard);
}

#header #search_widget {
    width: 100%;
}

#header .search-box, #header .header-nav .right-nav{
    padding: 0;
    align-items: center;
}

#header .actions-box {
    display: flex;
    justify-content: space-between;
    flex: 1;
    align-items: center;
}

.featured-products .products-section-title.text-uppercase {
    text-align: start;
    font-size: 28px;
    text-transform: none !important;
    font-weight: 700;
    border-bottom: 1px solid var(--primary-teal);
    padding-bottom: 12px;
    margin: 2rem 0;
}

@media(max-width: 768px){
    .featured-products .products-section-title.text-uppercase{
        font-size: 24px;
    }
}

.footer-container .h3 {
    border-bottom: 1px solid var(--primary-teal);
    padding-bottom: 8px;
}

#footer,
#blockEmailSubscription_displayFooterBefore {
    background-color: var(--dark-gray);
    display: flex;
    flex-direction: column;
}

#wrapper .breadcrumb li a{
    font-size: 14px;
}

#blockEmailSubscription_displayFooterBefore{
    padding-bottom: 32px;
    display: flex;
    margin: 0;
    width: 100%;
    max-width: 100%;
    align-self: stretch;
}

.footer-container {
    background-color: var(--white);
}

#footer .block_newsletter #block-newsletter-label,
.block_newsletter form .row .col-xs-12:last-of-type p {
    color: var(--white);
}

.block_newsletter form input[type=email] {
    border-radius: var(--border-radius-main);
}

.block_newsletter form .row .col-xs-12:first-of-type .btn-primary:first-of-type {
    border-radius: var(--border-radius-main);
    background-color: var(--primary-teal);
}

.carousel .carousel-inner {
    height: 100%;
}

.carousel .carousel-control .icon-next:hover i,
.carousel .carousel-control .icon-prev:hover i,
.dropdown:hover .expand-more,
.page-my-account #content .links a:hover i,
.search-widget form button[type=submit] .search:hover, .top-menu .sub-menu a:hover{
    color: var(--primary-teal);
}

.homeslider-container.single-slide-no-arrows .rslides_nav,
.carousel .carousel-control .icon-next i,
.carousel .carousel-control .icon-prev i{
    display: none;
}

.homeslider-container.single-slide-no-arrows .rslides_tabs {
    display: none;
}

@media(max-width: 991px){
    .carousel{
        background-color: transparent;
        padding: 0;
    }
}

#header .custom-category-nav-wrapper{
    border: none;
}

#header .header-top, #header .header-top .container{
    padding: 0;
}

#header .header-top>.container>.row:first-of-type{
    margin: 0;
}

#header .header-nav .user-info a,
#header #_desktop_cart .cart-preview .header a span.hidden-sm-down,
#header #_desktop_cart .cart-preview .header a span.cart-products-count{
    font-weight: 700;
}

#header .header-nav .user-info {
    margin: 0;
    display: flex;
    gap: 16px;
    align-items: center;
}

#header .header-nav-link{
    display: flex;
    align-items: center;
    gap: 4px;
    font-weight: bold;
}
#header .search-box, #header .header-nav .right-nav{
    gap: 16px;
}

#header .header-nav-link span{
    color: var(--primary-teal);
}

#search_widget form input{
    padding: 8px 20px 10px 40px;
}

#header .custom-category-nav .submenu{
    box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.10);
    border-radius: var(--border-radius-main);
    left: -4%;
    top: 90%;
    gap: 8px 20px;
}

#header .nav-link{
    display: flex;
    align-items: center;
    gap: 4px;
    text-transform: none;
    font-size: 18px;
    font-weight: 700;
}


#footer .footer-container .row{
    display: flex;
    flex: 1;
    gap: 32px;
}

#footer .footer-container .row.copyright{
    justify-content: center;
}


#footer .footer-container .row .links .wrapper{
    width: 100%;
}

.block-contact, .footer-container li a{
    color: var(--dark-gray);
}

#footer .footer-container .container{
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.footer-container .h3{
    text-wrap: nowrap;
}

#footer .links .collapse{
    display: flex;
    flex-direction: column;
}

#footer #block_myaccount_infos .account-list li a{
    font-weight: 500;
}

.product-miniature .product-title a{
    color: var(--dark-gray);
    font-weight: 600;
    font-size: 14px;
}

.product-miniature .product-title{
    text-align: start;
}

.product-miniature .price-add-to-cart{
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
}

#category .product-miniature .price-add-to-cart{
    gap: 8px;
}

.col-xl-3 {
    width: 20%;
    padding: 0 8px 0 0;
    transition: width 0.3s ease-in-out;
}

@media (max-width: 1199px) {
    .col-xl-3 {
        width: 25%;
        padding: 0 8px 0 0;
    }
}

@media (max-width: 991px) {
    .col-xl-3 {
        width: 33.3333%;
        padding: 0 6px 0 0;
    }
}

@media (max-width: 767px) {
    .col-xl-3 {
        width: 50%;
        padding: 0 4px;
    }
}

@media (max-width: 479px) {
    .col-xl-3 {
        width: 100%;
        padding: 0 4px;
    }
}


@media (max-width: 767px) {
    #footer .footer-container .row{
        gap: 16px;
    }

    #footer .footer-container .row.copyright p{
        text-align: center;
    }
    .links .navbar-toggler{
        width: auto;
    }
}

.clearfix::after{
    display: none;
}

.product-miniature .product-flags li.product-flag{
    border-radius: var(--border-radius-main);
    background-color: var(--primary-teal);
}

.product-miniature .product-flags li.product-flag.new{
    background-color: var(--primary-teal);
    text-transform: none;
}

.product-miniature .product-flags li.product-flag.out_of_stock{
    background-color: var(--dark-gray);
    text-transform: none;
}

.product-miniature .thumbnail-container{
    margin: 0;
    width: 100%;
}

#products .all-product-link, .featured-products .all-product-link, .product-accessories .all-product-link, #header .header-nav .cart-preview.active a{
    color: var(--dark-gray);
    font-size: 18px;
    margin: 0;
}

#products .all-product-link:hover, .featured-products .all-product-link:hover, .product-accessories .all-product-link:hover, #header .header-nav .cart-preview.active a:hover{
    color: var(--dark-teal);
}

.featured-products .all-product-link{
    align-self: end;
    font-weight: 700;
}

.product-miniature .thumbnail-container .product-thumbnail img{
    border-radius: var(--border-radius-main);
}


#header .header-nav .cart-preview.active a:hover{
    color: var(--primary-teal);
}

#header .header-nav .cart-preview.active{
    background-color: transparent;
    padding: 0;
    display: flex;
    align-items: center;
}

.products article .wishlist-button-add{
    background-color: transparent;
    box-shadow: none;
}

.products article .wishlist-button-add i{
    color: var(--primary-teal);
    font-size: 28px;
}
.product-miniature .thumbnail-container:focus .product-description::after, .product-miniature .thumbnail-container:hover .product-description::after {
    display: none;
}

.product-flags li.product-flag.discount, .has-discount .discount{
    background-color: #3bb86e;
    border-radius: var(--border-radius-main);
}
.has-discount.product-price{
    color: #3bb86e;
}

.has-discount.product-price .current-price-value{
    font-size: 20px;
}

#footer .block_newsletter #block-newsletter-label {
    font-size: 16px;
    width: 40%;
}

#footer .block_newsletter .newsletter-container{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    max-width: 1400px;
    width: 100%;
    margin: 0 auto;
    flex-wrap: wrap;
}

#footer .block_newsletter #block-newsletter-text{
    font-size: 24px;
    text-transform: uppercase;
    color: var(--white);
    font-weight: 700;
}

@media(max-width: 992px){
    #footer .block_newsletter #block-newsletter-label{
        width: 30%;
    }


}

@media(max-width: 768px){
    #footer .block_newsletter #block-newsletter-text{
        font-size: 20px;
    }
    .products-selection .showing{
        padding-left: 0;
        font-size: 14px;
    }
    .product-miniature .product-flags li.product-flag.new,
    .product-miniature .product-flags li.product-flag.out_of_stock{
        font-size: 12px;
    }
}

#footer .block_newsletter .newsletter-form {
    flex: 1;
}

.block_newsletter .button-input {
    width: 100%;
    display: flex;
}

.block_newsletter .input-wrapper {
    flex: 1;
}

.block_newsletter input[type=email] {
    width: 100%;
}
#footer .block_newsletter .newsletter-form{
    width: 100%;
    padding: 0;
}

#footer .block_newsletter .newsletter-container .col-md-5 ,#footer .block_newsletter .newsletter-container .col-xs-12{
    width: 100%;
    padding: 0;
    margin: 0;
}

#footer .block_newsletter .newsletter-container .newsletter-icon{
    font-size: 48px;
    color: var(--white);
}

#footer .block_newsletter .newsletter-form .button-input{
    display: flex;
    gap: 8px;
    flex-direction: row-reverse;
}

.required-asterisk {
    color: #ff0000;
    margin-right:1px;
    font-weight: bold;
}
.forgotten-password .form-fields label.required{
    width: 100%;
    text-align: start;
    padding: 0;
    margin-left: 32px;
}

.send-renew-password-link{
    padding: 0;
}

.forgotten-password .form-fields .email{
    display: flex;
    flex-direction: column;
    align-items: center;
}

.forgotten-password .form-fields .center-email-fields button{
    width: 100%;
    max-width: 400px;
}

.forgotten-password .form-fields .center-email-fields{
    flex-direction: column;
    align-items: center;
    gap: 16px;
}

.custom-checkbox {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 10px;
}

.custom-checkbox label {
    display: block;
    position: relative;
    padding-left: 30px;
    line-height: 1.4;
}

.custom-checkbox input[type="checkbox"] + span {
    position: absolute;
    left: 0;
    top: 2px;
    margin: 0;
}

body#checkout .custom-checkbox span {
    position: static;
}
body#checkout .custom-checkbox>label{
    padding: 0;
}

@media(max-width: 768px){
    #footer .block_newsletter .newsletter-container{
        gap: 8px;
        justify-content: center;
    }

    .forgotten-password .form-fields .email{
        padding: 0;
    }

    #footer .links .navbar-toggler span{
        color: var(--primary-teal);
    }
    #footer .block_newsletter #block-newsletter-label{
        width: 100%;
        text-align: center;
        font-size: 14px;
    }
    #footer .block_newsletter .newsletter-form .button-input{
        flex-direction: column-reverse;
    }
    #footer .footer-container .row{
        flex-wrap: wrap;
        gap: 8px;
    }
    .footer-container .links ul{
        background-color: transparent;
    }
    #footer .footer-container .collapse:not(.in):not(.show){
        display: none;
    }
    #footer{
        padding: 0;
    }
    .links .title{
        border: none;
    }
    .footer-container .links .h3 .title{
        display: flex;
        justify-content: space-between;

    }

    .footer-container .links .h3{
        font-size: 14px;
    }
    .footer-container #block_myaccount_infos{
        width: 100%;
    }
    #footer .block_newsletter .newsletter-container .newsletter-icon{
        font-size: 32px;
    }
}

#header .header-top>.container{
    position: inherit;
}

#header .header-top>.container .row .header-top-right{
    position: relative;
}

.accordion-item-native summary h1, .accordion-item-native summary h2{
    font-size: 18px;
}

@media(max-width: 768px){
    .accordion-item-native summary h1, .accordion-item-native summary h2{
        font-size: 16px;
    }
}

.accordion-container{
    padding: 16px 0;
}

#product h1{
    text-transform: none;
    font-size: 28px;
}
@media(max-width: 768px){
    #product h1{
        font-size: 24px;
        text-align: start;
    }
}

.product-flags li.product-flag{
    border-radius: var(--border-radius-main);
    background-color: var(--primary-teal);
}

#product .product-quantity .qty{
    border: 1px solid var(--primary-teal);
    border-radius: var(--border-radius-main);
}

.product-actions .add-to-cart{
    border-radius: var(--border-radius-main);
    background-color: var(--primary-teal) ;
    text-transform: none;
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 700;
    padding: 8px 32px;
}

.qty .input-group.bootstrap-touchspin {
    width: 80px;
    height: 44px;
    border: 1px solid var(--primary-teal) ;
    border-radius:  var(--border-radius-main);
    background-color: #fff;
    display: flex;
    align-items: center;
    padding: 0;
    box-shadow: none;
    overflow: hidden;
}

.qty #quantity_wanted {
    height: 100%;
    width: 100%;
    border: none;
    box-shadow: none;
    background: transparent;
    color: #333333;
    font-weight: 600;
    font-size: 16px;
    padding-left: 15px;
    text-align: left;
}

.qty #quantity_wanted::-webkit-inner-spin-button,
.qty #quantity_wanted::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.qty .input-group-btn-vertical {
    display: flex;
    flex-direction: column;
    width: 30px;
    height: 100%;
    border-left: none;
    position: static
}

.qty .btn-touchspin {
    flex: 1;
    background: transparent;
    border: none;
    padding: 0;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.qty .btn-touchspin:hover i {
    color: var(--primary-teal);
}

.qty .btn-touchspin i {
    font-size: 18px;
    color: var(--primary-teal);
    line-height: 1;
    font-weight: bold;
}

.input-group-btn-vertical .btn:hover{
    background-color: transparent;
}

.product-prices div{
    margin: 0;
}

#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;
}

.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;
}

.block_newsletter form input[type=email]:focus{
    border: 2px var(--primary-teal) solid;
}

@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;
        text-align: start;
        margin: 0;
    }
    #index .accordion-item-native{
        padding: 16px 0;
    }
    .accordion-item-native .content p {
        font-size: 14px;
    }
    .accordion-item-native summary{
        padding: 0;
    }
}

#header .header-nav #menu-icon .material-icons{
    line-height: inherit;
}

@media (max-width: 991px) {

    #header .header-container {
        gap: 0;
    }

    .hidden-sm-down {
        display: none;
    }

    #header .header-nav .mobile {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        margin: 0;
        gap: 16px;
    }
    #header .header-nav .cart-preview.active{
        margin: 0;
    }

    #header .top-logo {
        flex-grow: 1;
        text-align: center;
        padding: 0;
    }

    #header .top-logo img {
        max-height: 50px;
        width: auto;
        margin: 0 auto;
    }

    #menu-icon, #_mobile_user_info, #_mobile_cart {
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0;
    }

    #_mobile_user_info .user-info a,
    #_mobile_cart .blockcart a {
        padding: 12px;
    }

    #header .search-box {
        width: 100%;
        padding: 10px 15px;
    }

    #search_widget form {
        width: 100%;
    }

}

#product #add-to-cart-or-refresh{
    display: flex;
    flex-direction: column;
}

#product .wishlist-button-add{
    position: absolute;
    right: 0;
    box-shadow: none;
    background-color: transparent;
    z-index: 100;
}

#product .wishlist-button-add i{
    color:var(--primary-teal);
    font-size: 28px;
}

#product .product-prices .current-price .current-price-value{
    font-size: 24px;
    font-weight: 700;
    color: var(--primary-teal);
}

#product .tabs{
    margin: 0;
    padding:0;
}

@media(max-width: 768px){
    #product .tabs{
        padding: 0;
    }

    #product .page-footer{
        margin: 0;
    }
}
.tabs .nav-tabs .nav-link.active, .tabs .nav-tabs .nav-link:hover{
    border-bottom: none;
    color:  var(--primary-teal);
    background-color: transparent;
    font-size: 18px;
    font-weight: 800;
    padding: 16px 0;
}

.tabs .nav-tabs{
    border-bottom: 1px solid var(--primary-teal);
}

#product .product-cover{
    margin: 0;
}

.product-cover .layer{
    background: rgba(0, 0, 0, .2);
}

#main .images-container .js-qv-mask .product-images{
    margin: 0;
}

#product #content{
    max-width: inherit;
    width: 100%;
    margin: 0;
    padding: 0;
}


#product .product-discounts{
    margin: 0;
}

.product-cover .layer .zoom-in{
    color: var(--primary-teal);
}

.product-images>li.thumb-container .thumb.selected, .product-images>li.thumb-container .thumb:hover{
    border: 1px solid var(--primary-teal);
    border-radius: var(--border-radius-main);
}

#product .product-info{
    display: flex;
    flex-direction: column;
    gap:16px;
}
@media(max-width: 768px){
    #product .product-info{
        gap: 16px;
    }
    .product-actions .add-to-cart{
        width: 100%;
        text-align: center;
        justify-content: center;
    }
    #product .product-quantity .add{
        flex: 1;
    }
}

#product .product-quantity .add, .product-quantity .qty, .social-sharing{
    margin: 0;
}

#product .product-quantity{
    display: flex;
    gap: 8px;
}

#product .page-content .images-container {
    display: flex;
    flex-direction: row-reverse;
    gap: 8px;
}
#main .images-container .js-qv-mask{
    overflow: visible;
}

#product-comments-list-header{
    padding: 0;
}

.product-delivery-info {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 16px 0;
    border-radius: var(--border-radius-main);
}

.info-item {
    display: flex;
    align-items: center;
    gap: 8px;
}

.info-item .material-symbols-outlined {
    color: var(--primary-teal);
    font-size: 36px;
}

.info-item p {
    margin: 0;
    color: var(--dark-gray);
    font-size: 16px;
    line-height: 1.2;
}

.info-item p strong {
    font-weight: 700;
}

#product .product-cover img{
    border-radius: var(--border-radius-main);;
}

@media (max-width: 768px) {
    .product-delivery-info {
        padding: 0;
    }
    #product .page-content .images-container{
        flex-direction: column;
    }
}

#product-comments-list-header .comments-nb{
    color: var(--primary-teal);
}

#product .social-sharing{
    font-weight: 700;
}

#product .photo-container{
    width: 45%;
}

@media(max-width: 768px){
    #product .photo-container{
        width: 100%;
    }
    #product #main{
        display: flex;
        flex-direction: column;
        gap: 16px;
    }
}

.card-block.checkout .btn-primary{
    padding: 12px 16px;
    text-transform: none;
    color: #fff;
}
.input-group .form-control:not(:first-child):not(:last-child){
    border: none;
    text-align: center;
}

.card-block.cart-detailed-subtotals+.cart-summary-totals .cart-total{
    border-top: 1px solid var(--primary-teal);
}


#cart .collapse-button:hover{
    color: var(--dark-teal);
}

#cart .collapse-button:focus{
    text-decoration: none;
}

.separator{
    border-color: var(--primary-teal);
}

.cart-grid-body .card-block h1{
    text-transform: none;
    font-weight: 700;
    font-size: 28px;
}

.cart-item-main-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 0;
    border-bottom: 1px solid var(--primary-teal);
    gap: 15px;
}

.product-line-grid-left { width: 80px; }
.product-line-grid-body { flex: 2; }
.product-unit-price-col { width: 100px; text-align: right; font-weight: 600; }
.product-qty-col { width: 100px; display: flex; justify-content: center; }
.product-total-price-col { width: 120px; text-align: right; color: var(--dark-gray); }
.product-remove-col { width: 40px; text-align: right; }

.product-qty-col .bootstrap-touchspin {
    margin: 0;
    height: 40px;
}

.product-name-link {
    font-weight: 700;
    color: var(--dark-gray);
    text-decoration: none;
}

.product-remove-col i {
    font-size: 22px;
    color: var(--dark-gray);
}

#cart #main .cart-grid{
    border: 1px solid var(--primary-teal);
    border-radius: var(--border-radius-main);
    padding: 64px 32px;
}

#cart #wrapper{
    padding: 32px 0;
}

@media (max-width: 767px) {
    .cart-item-main-row {
        flex-wrap: wrap;
        align-items: flex-start;
    }
    #products .products, .featured-products .products{
        justify-content: start;
    }
    .product-unit-price-col { display: none; }
    .product-line-grid-body { flex: 1 1 60%; }

    #cart #main .cart-grid{
        border: 0;
        padding: 0;
        margin: 0;
    }
    #cart #main .cart-grid .cart-grid-right{
        padding: 0;
    }
    .cart-grid-body .card-block, .cart-grid-body{
        padding: 0;
    }

    #checkout-payment-step .custom-checkbox-label .condition-text{
        text-align: start;
    }

    .card{
        display: flex;
        flex-direction: column;
        gap: 16px;
    }
    #cart #wrapper{
        padding: 8px 0
    }

    #wrapper{
        padding: 16px 0;
    }
}
@media (max-width: 767px) {
    .cart-item-main-row {
        display: grid;
        grid-template-columns: 80px auto 1fr auto;
        grid-template-rows: auto auto;
        gap: 8px;
        align-items: center;
        padding: 10px 0;
    }

    .product-line-grid-left {
        grid-column: 1;
        grid-row: 1 / span 2;
        display: flex;
        justify-content: center;
        align-items: flex-start;
    }

    .product-line-grid-body {
        grid-column: 2 / span 3;
        grid-row: 1;
        margin-bottom: 5px;
        font-size: 14px;
    }

    .product-qty-col {
        grid-column: 2;
        grid-row: 2;
        width: auto;
        margin: 0;
        display: flex;
        justify-content: flex-start;
    }

    .product-total-price-col {
        grid-column: 3;
        grid-row: 2;
        text-align: right;
        padding-right: 5px;
        width: auto;
    }

    .product-remove-col {
        grid-column: 4;
        grid-row: 2;
        text-align: right;
    }

    .product-unit-price-col {
        display: none;
    }

    .product-qty-col .bootstrap-touchspin {
        width: 90px;
    }
    .product-qty-col .form-control {
        width: 30px;
    }
}

.mobile-menu-title, .mobile-menu-close span{
    color: var(--primary-teal);
}

.mobile-nav-toggle .burger-icon, .mobile-nav-toggle .burger-icon:before, .mobile-nav-toggle .burger-icon:after{
    background-color: var(--primary-teal);
}

.custom-category-nav-wrapper .mobile-nav-item-wrapper .mobile-arrow{
    border-color: var(--primary-teal);
}

.custom-category-nav-wrapper  .mobile-nav-link{
    font-weight: 700;
    font-size: 16px;
}

.custom-category-nav-wrapper .mobile-nav-item.category{
    padding-right: 16px;
}

.custom-category-nav-wrapper .mobile-nav-item .mobile-nav-link{
    font-size: 18px;
}

.custom-category-nav-wrapper .back-button,.custom-category-nav-wrapper  .mobile-arrow-left{
    color: var(--primary-teal);
}

#blockcart-modal .cart-content .cart-content-btn .btn{
    text-transform: none;
}

#blockcart-modal .cart-content .cart-content-btn .btn{
    border-radius: var(--border-radius-main);
}

#blockcart-modal .modal-content {
    border-radius: var(--border-radius-main);
    border: none;
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}

#blockcart-modal .modal-header {
    border-bottom: 1px solid var(--primary-teal);
    border-radius: var(--border-radius-main);
    padding: 20px;
    align-items: center;
    display: flex;
    justify-content: space-between;
}

#blockcart-modal .modal-body{
    border-radius: var(--border-radius-main);
}

#blockcart-modal .modal-title {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--dark-gray);
    font-weight: 700;
}

#blockcart-modal .modal-title .material-symbols-outlined {
    color: var(--primary-teal);
    font-size: 24px;
}

.modal-product-line {
    display: flex;
    gap: 30px;
    padding: 10px;
}

.modal-product-info {
    flex: 1;
    display: flex;
    gap: 20px;
    border-right: 1px solid #f1f1f1;
    padding-right: 20px;
}

.modal-img-wrapper img {
    width: 100px;
    height: auto;
    border-radius: var(--border-radius-main);
}

.modal-info-details .product-name {
    font-weight: 700;
    margin-bottom: 5px;
    font-size: 16px;
}

.modal-attributes {
    font-size: 13px;
    color: #777;
    margin-bottom: 5px;
}

.modal-info-details .product-price {
    font-weight: 700;
    color: var(--primary-teal);
    font-size: 18px;
    margin-top: 10px;
}

.modal-cart-summary {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.summary-line {
    display: flex;
    justify-content: space-between;
    margin-bottom: 8px;
    font-size: 14px;
}

.total-line {
    border-top: 1px solid var(--primary-teal);
    padding-top: 10px;
    margin-top: 10px;
    font-weight: 800;
    font-size: 16px;
}

#blockcart-modal .modal-dialog{
    display: flex;
    justify-content: center;
}

.cart-content-btn {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 20px;
}

.cart-content-btn .btn {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
    height: 45px;
    border-radius: var(--border-radius-main);
    text-transform: none;
    font-weight: 700;
}

#blockcart-modal .product-name{
    color: var(--dark-gray);
}

.cart-content-btn .btn-primary {
    background-color: var(--primary-teal);
    border: none;
}

.cart-content-btn .btn-outline-secondary {
    background: transparent;
    border: 1px solid var(--primary-teal);;
    color: var(--dark-gray);
}

.modal-header::after{
    display: none;
}

@media (max-width: 767px) {
    .modal-product-line {
        flex-direction: column;
        gap: 20px;
    }
    #blockcart-modal .product-name, #blockcart-modal .product-name, #blockcart-modal .product-price{
        padding: 0;
        font-size: 16px;
    }
    .modal-product-info {
        border-right: none;
        border-bottom: 1px solid var(--primary-teal);
        padding-right: 0;
        padding-bottom: 20px;
    }
    #blockcart-modal .modal-body{
        padding: 1rem;
    }
}

.block-category{
    min-height: inherit;
    margin: 0;
}

.brands-sort .select-title, .products-sort-order .select-title, .suppliers-sort .select-title{
    border: 1px solid var(--primary-teal);
    border-radius: var(--border-radius-main);
    max-width: 100%;
    display: flex;
    justify-content: space-between;
}

.brands-sort .dropdown-menu, .products-sort-order .dropdown-menu, .suppliers-sort .dropdown-menu{
    background-color: #fff;
}

.brands-sort .select-list:hover, .products-sort-order .select-list:hover, .suppliers-sort .select-list:hover{
    background-color: var(--primary-teal);
}

.brands-sort .dropdown-menu, .products-sort-order .dropdown-menu, .suppliers-sort .dropdown-menu{
    width: 100%;
    border-radius: var(--border-radius-main);
    padding: 0;
}

.products-sort-order .dropdown-menu a:not([href]):not([tabindex]):hover{
    color: #fff;
}

.products-selection .sort-by{
    padding: 0;
    margin: 0;
    text-wrap: nowrap;
}


.products-selection .sort-by-row .select-title{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    max-width: 300px;
}

#cart .collapse-button{
    color: var(--primary-teal);
    font-weight: 700;
    text-align: start;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 16px;
    margin: 0;
}

.block-promo .promo-name .voucher-value{
    display: flex;
    align-items: center;
    gap: 8px;
}

.block-promo .promo-name .voucher-value .remove-voucher{
    display: flex;
    align-items: center;
}

.block-promo .cart-voucher{
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.block-promo .promo-code-button .collapse-button{
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    font-weight: 700;
}

.cart-grid-right .promo-discounts{
    padding: 0;
}

body#checkout .cart-grid-right .card .cart-total{
    padding-bottom: 0;
}

.block-promo .promo-code-button.cancel-promo[aria-expanded=true]{
    margin: 0;
}

.block-promo .promo-code-button.with-discounts{
    padding:  10px 20px;
}

.block-promo{
    margin: 0;
    padding: 8px 0;
}

#js-product-list-top{
    display: flex;
    margin: 0;
    flex-direction: column;
    padding: 8px 0;
    gap: 4px;
}

#js-product-list-top:empty{
    padding: 0;
}

.products-selection .sort-by-row, .products-sort-order{
    display: flex;
    justify-content: end;
    padding: 0;
    width: auto;
}

.products-selection .total-products, .products-selection h1{
    padding: 0;
}

.title-sort .h2{
    font-size: 28px;
    text-transform: none;
    border-bottom: 1px solid var(--primary-teal);
    padding-bottom: 4px;
    flex: 1;
}

.title-sort .h2:empty {
    display: none;
}

.title-sort .h2:blank {
    display: none;
}

@media (min-width: 1200px) {
    .col-xl-4, .col-xl-5 {
        float: left;
        width: 25%;
    }
}

#left-column{
    border: 1px solid var(--primary-teal);
    border-radius: var(--border-radius-main);
}

.block-categories .h6, #search_filters>.h6{
    color: var(--primary-teal);
    font-weight: 700;
    font-size: 20px;
}

.block-categories .collapse-icons .add, .block-categories .collapse-icons .remove{
    color: var(--primary-teal);
}

#search_filters, #search_filters_brands, #search_filters_suppliers{
    border-top: 1px solid var(--gray);
}

.custom-checkbox input[type=checkbox]+span{
    border-radius: 50%;
    border: 1px solid var(--gray);
}

.custom-checkbox input[type=checkbox]:checked+span .checkbox-checked{
    color: var(--primary-teal);
}

#search_filters .ui-widget-header{
    background-color: transparent;
}

#search_filters .ui-slider .ui-slider-handle{
    border-radius: 50%;
    width: 20px;
    background-color: var(--primary-teal);
    border: none;
}

@media(max-width: 768px){
    #search_filters .ui-slider .ui-slider-handle{
        margin: 0;
    }

    .block-categories .h6{
        margin-bottom: 1rem;
    }


    .block-categories .category-sub-menu .category-sub-link{
        font-size: 16px;
    }
    .block-categories .category-sub-menu li[data-depth="1"]{
        margin-bottom: 1rem;
    }

    #category #left-column #search_filters_wrapper,
    #category #left-column #search_filter_controls button{
        margin: 0;
        color: var(--dark-gray);
    }

    #category #left-column #search_filter_controls button{
        padding: 12px 8px;
        display: flex;
        flex-direction: row-reverse;
        align-items: center;
        justify-content: center;
        gap: 8px;
        font-weight: 600;
        text-transform: inherit;
        font-size: 16px;
    }

    #category #left-column #search_filter_controls{
        display: flex;
        flex-direction: column;
        gap: 16px;
    }

    .block-categories .category-sub-menu{
        margin: 0;
    }
    .block-categories .category-sub-menu li[data-depth="0"]>a{
        margin-bottom: 8px;
        font-size: 18px;
    }

}
#search_filters .facet .facet-label{
    display: flex;
    align-items: center;
    gap: 8px;
}
#search_filters .facet .facet-label .custom-checkbox{
    top: auto;
    margin: 0;
}
#search_filters .custom-checkbox input[type=checkbox]{
    position: static;
}

#search_filters .facet .facet-label a{
    margin: 0;
}

#search_filters .btn-tertiary.js-search-filters-clear-all{
    display: flex;
    align-items: center;
    gap: 8px;
    background: none;
    color: var(--dark-gray);
    padding: 0;
    border: 0;
}

#search_filters .btn-tertiary.js-search-filters-clear-all:hover{
    border: none;
    color: var(--primary-teal);
    cursor: pointer;
    outline: none;
}

.product-miniature .product-title {
    margin: 0;
    font-weight: 400;
    text-align: start;
    line-height: 1.2em;
    height: 2.8em;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
}

.active_filters{
    background-color: transparent;
    padding: 0;
}

.active_filters .active-filter-title{
    color: var(--primary-teal);
}

#category #content-wrapper, #new-products  #content-wrapper{
    padding-left: 32px;
}

#products .up .btn-secondary, #products .up .btn-tertiary{
    background-color: #fff;
    border: 1px solid var(--primary-teal);
    border-radius: var(--border-radius-main);
    color: var(--dark-gray);
}

.active_filters .filter-block{
    border: 1px solid var(--primary-teal);
    border-radius: var(--border-radius-main);
    font-weight: 600;
}

.title-sort{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: 0;
    gap: 32px;
}

@media(max-width: 768px){
    .title-sort{
        flex-direction: column;
    }
    #category #left-column #search_filters .facet .h6{
        padding-left: 0;
        text-transform: none;
    }
    .active_filters{
        display: flex;
        flex-direction: column;
    }
}

.sort-text{
    display: flex;
    gap: 4px;
    text-wrap: nowrap;
}

#wrapper{
    padding-bottom: 32px;
    min-height: 60vh;
}

@media(max-width: 768px){
    #index #wrapper{
        padding: 0;
    }
}

.help-block{
    width: 100%;
    max-width: 400px;
    text-align: center;
    margin-top: 0;
    margin: auto;
}

.pagination {
    width: 100%;
    display: flex;
    justify-content: end;
}

.pagination-wrapper {
    padding: 0;
}

.pagination-wrapper:has(*) {
    padding: 32px 0;
}

.pagination .page-list {
    display: flex;
    align-items: center;
    gap: 16px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.pagination .page-list li {
    display: flex;
    align-items: center;
}

.pagination .page-list li a {
    text-decoration: none;
    color: var(--dark-gray);
    font-size: 18px;
    font-weight: 500;
    transition: color 0.2s ease;
    display: flex;
    align-items: center;
}

.pagination .page-list li.current a {
    color: var(--primary-teal);
}

.pagination .page-list li a:hover {
    color: var(--primary-teal);
}

.pagination .page-list li a i {
    font-size: 28px;
    color: var(--dark-gray);
}

.pagination .page-list li a.disabled i {
    color: #ccc;
    cursor: not-allowed;
}

.pagination .spacer {
    font-size: 22px;
    color: var(--dark-gray);
}

.pagination .col-md-4 {
    display: none;
}
.block-categories .collapse-icons{
    width: auto;
}


@media (max-width: 768px) {
    .pagination .page-list {
        gap: 32px;
    }
    .pagination .page-list li a {
        font-size: 18px;
    }
    .brands-sort .select-title, .products-sort-order .select-title, .suppliers-sort .select-title{
        width: 100%;
    }
    .title-sort .h2{
        border: none;
        font-size: 22px;
    }
    .title-sort{
        gap: 4px;
    }

    .sort-text{
        text-wrap: wrap;
    }
    .products-selection .filter-button{
        width: 100%;
        padding: 0;
    }
    #js-product-list-top{
        gap: 16px;
    }
    #search_filter_toggler{
        background-color: transparent;
        border: 1px solid var(--primary-teal);
        border-radius: var(--border-radius-main);
        width: 100%;
    }
    .product-prices{
        margin: 0;
    }
    .footer-container .links ul>li{
        margin: 0;
    }
    #left-column #search_filter_controls button{
        border: 1px solid var(--primary-teal);
        border-radius: var(--border-radius-main);
        width: 100%;
        background-color: transparent;
        margin: 0;
    }
    #left-column #search_filters_wrapper{
        display: flex;
        flex-direction: column;
        margin: 0;
    }
    #category .row, #new-products .row{
        margin: 0;
    }

    #search_filters .ui-slider {
        margin-right: 16px !important;
    }
    .block-categories{
        padding: 16px;
        border: 1px solid var(--primary-teal);
        border-radius: var(--border-radius-main);
    }
    #category #content-wrapper, #new-products #content-wrapper{
        padding: 0;
    }

    #category #js-product-list-top .col-lg-7,
    #new-products #js-product-list-top .col-lg-7{
        padding: 0;
    }
    #left-column{
        border: 0;
        padding: 0;
    }
    #left-column{
        display: flex;
        flex-direction: column;
        gap: 16px
    }

    #left-column #search_filters .facet{
        border: 0;
        border-bottom: 1px solid var(--primary-teal);
    }
    #left-column #search_filters{
        border: none;
        padding: 16px 0;
    }
    #left-column #search_filters .facet .navbar-toggler .material-icons{
        color: var(--primary-teal);
    }
    #left-column #search_filters .facet ul li{
        border-top: 0;
    }
    .col-xs-12.js-product{
        width: 50%;
    }
}

#pagenotfound .page-not-found, #products .page-not-found{
    margin: 0;
    display: flex;
    flex-direction: column;
}

#js-product-list .products.row {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 16px;
    margin: 0;
}

#js-product-list .products.row .product {
    width: 100%;
    max-width: none;
    padding: 0;
    margin: 0;
}

#js-product-list .products.row::before,
#js-product-list .products.row::after {
    display: none;
}

@media(max-width: 768px){
    #js-product-list .products.row {
        grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    }
    .product-miniature .product-price-and-shipping{
        text-align: start;
    }
    #pagenotfound .page-not-found, #products .page-not-found{
        padding: 16px 0;
    }
}

body#checkout section.checkout-step .step-title{
    border-bottom: 1px solid var(--primary-teal);
}

body#checkout section.checkout-step.-reachable.-current .step-number{
    background-color: var(--primary-teal);
}

body#checkout .cart-grid-right .card .cart-summary-subtotals-container{
    border-top: 1px solid var(--primary-teal);
    border-bottom: 1px solid var(--primary-teal);
}

body#checkout .nav-item .nav-separator{
    color: var(--primary-teal);
}

.form-control{
    background-color: #fff;
    border: 1px solid var(--primary-teal);
    border-radius: var(--border-radius-main);
}

.form-control:focus{
    outline: 1px solid var(--primary-teal);
}

#delivery-address .form-group.row {
    display: flex;
    flex-direction: column;
    margin: 0;
}

.custom-radio input[type=radio]:checked + span{
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.input-group .input-group-btn>.btn[data-action=show-password]{
    background-color: var(--primary-teal);
    text-transform: none;
    font-size: 14px;
    padding: 0 16px;
    border-radius: 0 var(--border-radius-main) var(--border-radius-main)  0;
}

body#checkout section.checkout-step.-current+.checkout-step .step-title{
    border-top: 1px solid var(--primary-teal);
}

body#checkout section.checkout-step .step-number{
    border: 1px solid var(--primary-teal);
    color: var(--dark-gray);
}

body#checkout section.checkout-step.-current+.checkout-step .step-title{
    color: var(--dark-gray);
}

body#checkout  .continue.btn-primary{
    padding: 12px 32px;
    text-transform: none;
}

body#checkout section.checkout-step .form-footer {
    display: flex;
    justify-content: end;
    align-self: end;
    gap: 8px;
}

.footer-container{
    box-shadow: 0 -2px 4px -1px rgba(0, 0, 0, 0.06);
}

body#checkout #footer{
    padding: 0;
}

body#checkout section.checkout-step .forgot-password{
    margin-left: 13rem;
}

@media(max-width: 768px){
    body#checkout  .continue.btn-primary{
        width: 100%;
        justify-content: center;
    }
    body#checkout section.checkout-step .form-footer{
        width: 100%;
        padding: 16px 0;
    }
}


.form-group.row {
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 440px;
    width: 100%;
    margin: 0;
}

body#checkout section.checkout-step #delivery-address .form-control-label{
    padding: 0;
    width: 100%;
}

body#checkout section.checkout-step #customer-form .form-control-label,
body#checkout section.checkout-step #login-form .form-control-label{
    padding: 0;
}

body#checkout .js-input-column{
    width: 100%;
}

body#checkout section.checkout-step #customer-form, body#checkout .login-form{
    display: flex;
    flex-direction: column;
    align-items: center;
}

@media(max-width: 768px){
    body#checkout section.checkout-step #customer-form, body#checkout .login-form{
        margin: 0;
    }
    body#checkout .js-input-column{
        padding: 0;
    }
    body#checkout section.checkout-step #login-form{
        margin-left: 0;
    }
}

body#checkout section.checkout-step#checkout-personal-information-step .forgot-password{
    margin: 0;
}

body#checkout .form-control-comment{
    padding-left: 0;
}

.input-group.focus{
    outline: 1px solid var(--primary-teal);
}

.input-group{
    max-width: 400px;
}

.custom-checkbox .required{
    color: crimson;
}

body#checkout section.checkout-step .address-item.selected{
    border-radius: var(--border-radius-main);
    outline: 1px solid var(--primary-teal);
    border: 1px solid var(--primary-teal);
}

#header .header-nav .blockcart{
    background-color: transparent;
    color: var(--dark-gray);
    font-weight: 700;
    margin: 0;
    display: flex;
    align-items: center;
}


#header .header-nav .cart-preview .shopping-cart{
    color: var(--primary-teal);
    font-size: 32px;
}

body#checkout section.checkout-step .address-item>header{
    margin: 0;
    min-height: auto;
}

body#checkout .form-fields{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.done{
    color: var(--primary-teal);
}

body#checkout section.checkout-step.-reachable.-complete h1 .step-edit{
    color: var(--dark-gray);
    font-size: 14px;
}

.btn.disabled, .btn.disabled:hover{
    background-color: var(--gray);
}

body#checkout section.checkout-step #delivery-addresses {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
}

body#checkout .js-address-form{
    padding: 16px 0;
}

body#checkout .js-address-form form{
    display: flex;
    flex-direction: column;
}

body#checkout section.checkout-step .address-item {
    background: #fff;
    border: 1px solid var(--light-gray);
    border-radius: var(--border-radius-main);
    padding: 16px;
    cursor: pointer;
    position: relative;
    margin: 0;
}

body#checkout section.checkout-step.-current .content{
    padding: 0;
}

body#checkout section.checkout-step .address-item.selected {
    border-color: var(--primary-teal);
}

body#checkout section.checkout-step .address-item:hover {
    border-color: var(--primary-teal);
}

.js-address-form h2.h4 {
    font-weight: 700;
    color: var(--dark-gray);
    border-bottom: 1px solid var(--primary-teal);
    padding-bottom: 8px;
    font-size: 18px;
    text-transform: none;
}

body#checkout section.checkout-step .add-address a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--primary-teal);
    font-weight: 600;
    text-decoration: none;
    transition: opacity 0.2s;
}

.js-address-form .btn-primary.continue {
    background-color: var(--primary-teal);
    border: none;
    border-radius: var(--border-radius-main);
    padding: 12px 32px;
    font-weight: 700;
    text-transform: none;
    font-size: 16px;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
    transition: transform 0.2s, background-color 0.2s;
}

.js-address-error {
    border-radius: var(--border-radius-main);
    font-size: 14px;
    border: none;
    background-color: #fff1f0;
    color: #f5222d;
}

body#checkout section.checkout-step #delivery-address{
    margin: 0;
}

@media (max-width: 767px) {
    .address-item {
        flex: 1 1 100%;
    }
    #header .header-nav .blockcart{
        margin: 0;
        height: auto;
        padding: 0;
    }
    #header .cart-user{
        display: flex;
        gap: 16px;
        align-items: center;
    }
    body#checkout section.checkout-step#checkout-personal-information-step .forgot-password{
        padding: 8px 0;
    }
}

.forgot-password a{
    color: var(--primary-teal);
}
body#checkout section.checkout-step .edit-address,
body#checkout section.checkout-step .delete-address{
    color: var(--primary-teal);
    font-size: 14px;
}

body#checkout section.checkout-step hr {
    border-color: var(--primary-teal);
}

body#checkout section.checkout-step .radio-block{
    width: 100%;
    padding: 16px 8px ;
}

body#checkout #checkout-addresses-step .custom-radio{
    display: none;
}

body#checkout section.checkout-step .address{
    margin: 0;
}

body#checkout .cancel-address{
    color: var(--dark-gray);
    order: -1;
    text-decoration: none;
    padding: 12px 24px;
    border: 1px solid var(--primary-teal);
    margin: 0;
    border-radius: var(--border-radius-main);
}

body#checkout section.checkout-step .delivery-options .delivery-option{
    background: none;
}

#js-delivery .delivery-options{
    display: flex;
    flex-direction: column;
    padding: 16px 0;
}

body#checkout #js-delivery .form-fields{
    align-items: stretch;
}

#checkout-delivery-step{
    display: flex;
    flex-direction: column;
}

#js-delivery .delivery-option-row {
    background: #ffffff;
    border: 2px solid var(--light-bg);
    border-radius: var(--border-radius-main);
    transition: border-color 0.2s ease, background-color 0.2s ease;
    position: relative;
    margin: 0;
}

#js-delivery .delivery-option-row .carrier-selection-indicator {
    display: flex;
    align-items: center;
    color: var(--primary-teal);
    opacity: 0;
    transition: opacity 0.2s ease;
}

#js-delivery .delivery-option-row:has(input:checked) {
    border-color: var(--primary-teal);
    background-color: rgba(85, 197, 209, 0.03);
}

#js-delivery .delivery-option-row:has(input:checked) .carrier-selection-indicator {
    opacity: 1;
}

#js-delivery .delivery-option-row:not(:has(input:checked)) {
    border-color: var(--light-gray);
    background-color: #ffffff;
}

#js-delivery .delivery-option-row:not(:has(input:checked)) .carrier-selection-indicator {
    opacity: 0;
}

#js-delivery .delivery-option-label {
    display: block;
    width: 100%;
    margin: 0;
    padding: 15px 20px;
    cursor: pointer;
}

#js-delivery .hidden-carrier-input {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
    pointer-events: none;
}

#js-delivery .carrier-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

#js-delivery .carrier-info {
    display: flex;
    align-items: center;
    gap: 15px;
    flex: 1;
}

#js-delivery .carrier-logo img {
    max-width: 60px;
    height: auto;
    border-radius: 4px;
    display: block;
}

#js-delivery .carrier-name-container {
    display: flex;
    flex-direction: column;
}

#js-delivery .carrier-name {
    font-weight: 700;
    color: var(--dark-gray);
    margin: 0;
    line-height: 1.2;
}

#js-delivery .carrier-delay {
    font-size: 13px;
    color: #888888;
    margin: 0;
}

#js-delivery .carrier-price-container {
    min-width: 80px;
    text-align: right;
}

#js-delivery .carrier-price {
    font-weight: 700;
    color: var(--dark-gray);
    font-size: 16px;
    margin: 0;
}

#header .header-nav .blockcart .header{
    margin: 0;
    display: flex;
    align-items: center;
    gap: 4px;
}

#js-delivery .carrier-selection-indicator .material-symbols-outlined {
    font-size: 28px;
}

#js-delivery .custom-option-check {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    font-weight: 500;
    margin: 0;
}

#js-delivery .custom-option-check input[type="checkbox"] {
    accent-color: var(--primary-teal);
    width: 18px;
    height: 18px;
    cursor: pointer;
    margin: 0;
}

#js-delivery .gift-message-area {
    margin-top: 10px;
    padding: 15px;
    background: #ffffff;
    border: 1px solid var(--gray);
    border-radius: var(--border-radius-main);
}

#js-delivery button.continue[name="confirmDeliveryOption"] {
    background-color: var(--primary-teal);
    border: none;
    border-radius: var(--border-radius-main);
    padding: 12px 40px;
    font-weight: 700;
    text-transform: none;
    transition: background-color 0.2s;
}

#js-delivery button.continue[name="confirmDeliveryOption"]:hover {
    background-color: var(--dark-teal);
}


body#checkout #hook-display-after-carrier{
    margin: 0;
}

body#checkout section.checkout-step.-current .content, body#checkout section.checkout-step.-current.-reachable.-complete .content {
    padding: 16px 0;
    display: flex;
    flex-direction: column;
}
@media (max-width: 767px) {
    #js-delivery .carrier-content {
        flex-wrap: wrap;
        gap: 8px;
    }

    #js-delivery .carrier-info {
        flex: 1 1 100%;
    }

    #js-delivery .carrier-price-container {
        flex-grow: 1;
        text-align: left;
    }

    #js-delivery .carrier-selection-indicator {
        margin-left: auto;
    }

    body#checkout section.checkout-step.-unreachable .step-title{
        display: flex;
        align-items: center;
    }

}

#checkout-payment-step .payment-options {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 16px 0;
}

#checkout-payment-step .payment-option-row {
    background: #ffffff;
    border: 2px solid var(--light-bg);
    border-radius: var(--border-radius-main);
    transition: all 0.2s ease;
    position: relative;
}

#checkout-payment-step .payment-option-label {
    display: block;
    width: 100%;
    margin: 0;
    padding: 15px 20px;
    cursor: pointer;
}

#checkout-payment-step .payment-option-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

#checkout-payment-step .hidden-payment-input {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

#checkout-payment-step .payment-info {
    display: flex;
    align-items: center;
    gap: 15px;
}

#checkout-payment-step .payment-logo {
    max-height: 35px;
    width: auto;
    border-radius: 4px;
}

#checkout-payment-step .payment-name {
    font-weight: 700;
    color: var(--dark-gray);
    font-size: 15px;
}

#checkout-payment-step .payment-indicator {
    opacity: 0;
    color: var(--primary-teal);
    transition: opacity 0.2s ease;
}

#checkout-payment-step .payment-option-row:has(input:checked) {
    border-color: var(--primary-teal);
}

#checkout-payment-step .payment-option-row:has(input:checked) .payment-indicator {
    opacity: 1;
}

#checkout-payment-step .additional-info-box {
    padding: 16px;
    border: 2px solid var(--light-bg);
    border-top: none;
    font-size: 13px;
    margin-bottom: 10px;
    border-radius: 0 0 var(--border-radius-main) var(--border-radius-main);
}

#checkout-payment-step .terms-conditions-box {
    padding: 16px 0;
    border-radius: var(--border-radius-main);
}

#checkout-payment-step .terms-conditions-box ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

#checkout-payment-step .custom-checkbox-label {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    cursor: pointer;
    font-size: 14px;
    line-height: 1.4;
}

#checkout-payment-step .custom-checkbox-label input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin-top: 2px;
}

@media(max-width: 768px){
    #checkout-payment-step .custom-checkbox-label{
        gap: 8px;
    }
}

#checkout-payment-step .continue-btn {
    background-color: var(--primary-teal);
    border: none;
    border-radius: var(--border-radius-main);
    padding: 12px 16px;
    font-weight: 700;
    display: block;
    font-size: 18px;
    text-transform: none;
    margin-left: auto;
    color: #fff;
}

#checkout-payment-step .continue-btn:hover:not(.disabled) {
    background-color: var(--dark-teal);
}


body#checkout section.checkout-step.-complete .step-title, body#checkout section.checkout-step.-current .step-title{
    text-transform: none;
    font-size: 20px;
}

body#checkout section.checkout-step.-complete .step-title{
    display: flex;
    justify-content: space-between;
}

body#checkout section.checkout-step .payment-options label{
    display: block;
}

#content-hook_order_confirmation.confirmation-card {
    background: #ffffff;
    border: none;
    text-align: center;
    padding-bottom: 30px;
}

.confirmation-header {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 16px;
    padding: 8px 0;
}

.confirmation-header .success-icon {
    font-size: 48px;
    color: var(--primary-teal);
    animation: scaleIn 0.5s ease;
}

.confirmation-header .card-title {
    color: var(--dark-gray);
    font-weight: 800;
    margin: 0;
    text-transform: none;
    font-size: 24px;
    line-height: 1.2;
}

#order-confirmation .card.transformation-card .form-footer button{
    text-transform: none;
    padding: 10px 16px;
}

.confirmation-text {
    font-size: 16px;
    color: #666;
    max-width: 600px;
    margin: 0 auto;
    line-height: 1.5;
}

.form-control{
    max-width: 400px;
}

.download-invoice {
    color: var(--primary-teal);
    font-weight: 700;
    text-decoration: none;
    border-bottom: 1px solid transparent;
    transition: border-color 0.2s;
}

.download-invoice:hover {
    border-color: var(--primary-teal);
}

#order-details {
    padding-top: 30px;
    margin-top: 20px;
    border-top: 1px solid var(--primary-teal);
    border-bottom: 1px solid var(--primary-teal);
}

#order-details .card-title {
    font-size: 18px;
    font-weight: 700;
    padding-bottom: 16px;
    text-transform: none;
    color: var(--dark-gray);
    margin: 0;
}

.order-details-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

.order-details-list li {
    border-radius: var(--border-radius-main);
    flex: 1 1 calc(33.33% - 20px);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    border: 1px solid transparent;
    transition: all 0.2s ease;
}

.order-details-list .label {
    font-size: 14px;
    text-transform: none;
    color: #888;
    font-weight: 600;
}

.order-details-list .value {
    font-size: 16px;
    font-weight: 700;
    color: var(--dark-gray);
}

#order-items {
    border: none;
    padding: 0;
}

.confirmation-table-header {
    border-bottom: 2px solid var(--primary-teal);
    padding: 15px 20px;
    margin: 0;
    border-radius: var(--border-radius-main) var(--border-radius-main) 0 0;
}

.confirmation-table-header .card-title {
    font-size: 14px;
    font-weight: 700;
    color: var(--dark-gray);
    margin: 0;
    text-transform: none;
}

.order-line {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px;
    border-bottom: 1px solid var(--primary-teal);
    margin: 0;
}

.product-details-col {
    display: flex;
    align-items: center;
    gap: 16px;
}

.product-image img {
    width: 70px;
    height: auto;
    border-radius: var(--border-radius-main);
    border: 1px solid var(--light-gray);
}

.product-name {
    font-weight: 700;
    color: var(--dark-gray);
    font-size: 14px;
    line-height: 1.3;
}

.product-price-col,
.product-qty-col,
.product-total-col {
    font-size: 15px;
    color: var(--dark-gray);
    text-align: center;
}

.product-total-col {
    text-align: right;
}

.product-total-col .bold {
    font-weight: 700;
}

.confirmation-totals-wrapper {
    padding: 18px 0;
    display: flex;
    justify-content: flex-end;
    background: #fff;
    border-radius: 0 0 var(--border-radius-main) var(--border-radius-main);
}

.confirmation-totals {
    width: 100%;
    max-width: 600px;
    border-collapse: collapse;
}

.confirmation-totals tr td {
    padding: 4px 0;
    text-align: right;
    font-size: 14px;
    color: var(--dark-gray);
}

.confirmation-totals tr td:first-child {
    text-align: left;
    font-weight: 600;
    color: var(--dark-gray);
}

.confirmation-totals table .total-value td,
.confirmation-totals .total-value td {
    font-size: 20px;
    font-weight: 800;
    color: var(--dark-gray);
    padding-top: 15px;
    padding-bottom: 0;
    border-top: 1px solid var(--light-gray);
    display: table-cell;
}

.confirmation-totals table .total-value td.value,
.confirmation-totals .total-value td.value {
    color: var(--primary-teal);
}

#order-items table tr.total-value {
    background: none;
}

#order-items table tr.total-value td span{
    color:var(--primary-teal);
}

.payment-return-wrapper {
    border: 2px solid var(--primary-teal);
    border-radius: var(--border-radius-main);
    padding: 24px;
    margin-top: 30px;
}

.featured-products {
    padding: 30px 0;
    display: flex;
    flex-direction: column;
}

#order-confirmation .container{
    max-width: 1300px;
}

#order-confirmation .row.order-line::after{
    display: none;
}

#order-confirmation .total-products{
    padding: 0;
    text-align: end;
}

body#checkout section.checkout-step.-current+.checkout-step .step-title,
body#checkout section.checkout-step.-unreachable .step-title {
    text-transform: none;
    font-size: 20px;
}

#order-confirmation .card-block.header {
    border: 1px solid var(--primary-teal);
    border-radius:var(--border-radius-main);
    padding: 8px 16px;
}

@media (max-width: 767px) {
    .confirmation-header .success-icon {
        font-size: 48px;
    }

    #order-items{
        margin: 0;
    }

    .step-title-box{
        display: flex;
        gap: 8px;
        align-items: center;
    }

    body#checkout section.checkout-step.-reachable.-complete h1 .done{
        width: 33px;
    }

    body#checkout section.checkout-step.-reachable.-complete h1 .done,
    body#checkout section.checkout-step.-reachable.-current .step-number{
        margin: 0;
    }

    #order-confirmation .container .row{
        margin: 0;
    }

    #order-confirmation .container #content-wrapper{
        padding: 0;
    }

    #order-confirmation .container #content-wrapper .page-order-confirmation .row .col-md-12{
        padding: 0;
    }
    #main .page-content{
        margin: 0;
    }

    #order-confirmation .footer-container .links{
        padding: 0;
    }

    .confirmation-header .card-title,
    #order-confirmation p {
        font-size: 14px;
    }

    #order-confirmation ul{
        margin: 0;
    }

    #order-confirmation p.h2.products-section-title{
        font-size: 20px;
    }

    #order-confirmation .container #content-wrapper .page-order-confirmation .row .col-md-12#order-details{
        padding: 16px 0;
    }

    body#checkout section.checkout-step .add-address{
        display: flex;
        justify-content: center;
        margin-bottom: 16px;
    }

    #content-hook_order_confirmation.confirmation-card {
        margin: 0;
        padding: 0;
    }

    #wrapper .breadcrumb ol, .list-group{
        font-size: 14px;
    }



    #content-hook_order_confirmation section p{
        font-size: 12px;
    }

    .order-details-list li {
        flex: 1 1 100%;
        padding: 0;
    }

    .order-line {
        flex-wrap: wrap;
        padding: 16px 0;
        gap: 16px;
    }

    .product-details-col {
        width: 100%;
        margin-bottom: 8px;
        padding: 0;
    }

    #order-details .card-title{
        border: none;
    }

    .product-price-col,
    .product-qty-col,
    .product-total-col {
        flex: 1;
        display: flex;
        flex-direction: column;
        font-size: 14px;
        padding: 0;
        width: 100%;
    }

    .mobile-label {
        display: block;
        font-size: 12px;
        margin-bottom: 4px;
        font-weight: 700;
    }

    .confirmation-header{
        flex-direction: column;
    }

    .confirmation-totals-wrapper {
        padding: 15px 0;
    }

    #order-items table tr td {
        font-size: 14px;
        padding: 8px 0;
    }
    #order-confirmation h4{
        font-size: 14px;
    }
    #order-confirmation ul{
        font-size: 14px;
    }
    form .form-control-label{
        font-size: 14px;
    }
    #order-confirmation .card.transformation-card .form-footer button{
        width: 100%;
    }

}

.featured-products {
    padding: 16px 0;
}

.alert-danger{
    background: #ffe3e3;
    border-radius: var(--border-radius-main);
}

#authentication .login-form{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

#authentication .login-form .js-input-column, #registration .js-input-column{
    width: 100%;
    padding: 0;
}

#authentication form .form-control-label,  #registration form .form-control-label{
    padding: 0;
    text-align: start;
}

#authentication h1, #registration h1{
    text-align: center;
}

#authentication .login-form{
    margin: 0;
}

#authentication #login-form{
    width: 100%;
    max-width: 400px;
}

#authentication .form-footer #submit-login{
    width: 100%;
    padding: 8px 16px;
}

.page-customer-account #content .forgot-password{
    margin: 0;
}

.page-customer-account #content .no-account{
    padding: 8px;
}

#registration .page-content.card{
    display: flex;
    justify-content: center;
    padding: 0 16px
}

@media(max-width: 768px){
    #registration .register-form p{
        text-align: center;
    }
    body#checkout section.checkout-step .payment-options label{
        text-align: start;
    }

    #registration .page-content.card{
        padding: 0;
    }

    #registration .register-form .password-requirements  p{
        text-align: start;
    }
}

.ps-alert-success .item, .ps-alert-success .item i svg{
    background-color: var(--primary-teal);
}

.ps-alert-success .item, .ps-alert-success .item i{
    border-color: var(--primary-teal);
}

#registration #customer-form{
    max-width: 400px;
}

#registration .form-control-submit{
    width: 100%;
    padding: 8px 16px;
}

#order-items table tr td{
    font-size: 16px;
}

#header .clearfix{
    display: none;
}

body#my-account #content .my-account-links a {
    text-decoration: none;
    display: block;
    border: none;
    background: transparent;
    margin-bottom: 16px;
}

body#my-account #content .link-item {
    border: 2px solid var(--light-gray);
    border-radius: var(--border-radius-main);
    padding: 32px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16px;
    height: 100%;
    min-height: 160px;
    transition: all 0.2s ease-in-out;
    cursor: pointer;
    width: 100%;
    box-shadow: none;
}

body#my-account #content .link-item .material-symbols-outlined {
    font-size: 40px;
    color: var(--primary-teal);
    transition: transform 0.2s ease;
    margin: 0;
    line-height: 1;
}

body#my-account #content .link-item .link-text {
    font-size: 16px;
    font-weight: 700;
    color: var(--dark-gray);
    text-align: center;
    text-transform: none;
    margin: 0;
    line-height: 1.5;
}

body#my-account #content .link-item:hover {
    border-color: var(--primary-teal);
}

body#my-account .page-footer .btn-logout {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    font-weight: 600;
    transition: all 0.2s;
    font-size: 16px;
    border: 1px solid var(--primary-teal);
    border-radius: var(--border-radius-main);
    background: transparent;
}


body#my-account .page-footer .btn-logout .material-symbols-outlined {
    font-size: 20px;
}

body#my-account .page-footer .text-center{
    display: flex;
    justify-content: center;
}

#identity .form-group .js-input-column{
    width: 100%;
}

#identity form .form-control-label, #address form .form-control-label{
    text-align: start;
    padding: 0;
}

#identity h1, #address h1{
    text-align: center;
}

.progress-bar, .progress{
    border-radius: var(--border-radius-main);
}

#identity .js-customer-form{
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
}

#address .form-group .js-input-column{
    width: 100%;
    display: flex;
    flex-direction: column;
    padding: 0;
}
#address .form-control{
    max-width: inherit;
}

#address .js-address-form .form-fields{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

#identity .form-footer{
    display: flex;
    justify-content: center;
    align-items: center;
    flex: 1;
    width: 100%;
    max-width: 420px;
    margin-bottom: 16px;
}

#identity #main .page-content, #address #main .page-content{
    padding: 0;
}

#identity .btn-primary.form-control-submit{
    width: 100%;
    padding: 8px 16px;
}

#address .form-footer{
    padding: 16px 0;
    display: flex;
    justify-content: center;
}

#address .btn-primary.form-control-submit{
    width: 100%;
    max-width: 440px;
    padding: 8px 16px;
}

.alert-info{
    border: 1px solid var(--primary-teal);
    border-radius: var(--border-radius-main);
    background: none;
    color: var(--dark-gray);
    display: flex;
    align-items: center;
    gap: 8px;
}

#category #main{
    display: flex;
    flex-direction: column;
}

#main .page-content h6{
    color: var(--dark-gray);
}

#main .page-content{
    padding: 16px 0;
}

@media (max-width: 767px) {
    body#my-account #content .link-item {
        padding: 20px 16px;
        flex-direction: row;
        justify-content: flex-start;
        text-align: left;
        gap: 16px;
        min-height: auto;
    }

    #module-psgdpr-gdpr #main .page-content{
        padding: 0;
    }

    #identity .form-group.row .js-input-column{
        padding: 0;
    }


    #module-psgdpr-gdpr a{
        color: var(--primary-teal);
    }

    #main .page-content{
        margin: 0;
    }

    #main .page-content h6{
        text-align: center;
    }

    h1{
        text-align: center;
    }

    #index h1{
        text-align: start;
    }
    body#my-account .row  .links.my-account-links > div:has(#wishlist-link){
        flex-wrap: wrap;
        gap: 0;
    }

    #main .wishlist-products-container .card.page-content{
        box-shadow: none;
    }

    body#my-account #content .link-item .material-symbols-outlined {
        font-size: 28px;
    }

    body#my-account #content .link-item .link-text {
        font-size: 16px;
    }
    body#my-account #content .links a[id*="wishlist"] .link-item,
    body#my-account #content .links a[id*="psgdpr"] .link-item {
        flex-direction: row;
        justify-content: flex-start;
        padding: 20px 16px;
        min-height: auto;
        text-align: left;
    }

    body#my-account #content .links .link-item i.material-icons {
        font-size: 28px;
    }
}

.psgdprinfo17{
    background: none;
    border: 1px solid var(--primary-teal);
    border-radius: var(--border-radius-main);
}

#module-psgdpr-gdpr #exportDataToCsv,
#module-psgdpr-gdpr #exportDataToPdf{
    padding: 8px 16px;
    color: var(--white);
}

#module-psgdpr-gdpr h2{
    color: var(--primary-teal);
    margin-bottom: 8px;
}


@media(max-width: 768px){
    #exportDataToCsv, #exportDataToPdf{
        width: 100%;
    }

    #index #main .page-footer{
        margin: 0;
    }

    #module-psgdpr-gdpr h2{
        text-align: center;
    }

    .psgdprinfo17{
        display: flex;
        flex-direction: column;
        gap: 16px;
        justify-content: center;
        align-items: center;
    }

}

body#addresses article.address {
    background: #ffffff;
    border: 2px solid var(--light-gray);
    border-radius: var(--border-radius-main);
    padding: 24px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: all 0.2s ease-in-out;
    margin-bottom: 24px;
}

body#addresses article.address .address-header h4 {
    font-size: 16px;
    font-weight: 700;
    color: var(--primary-teal);
    text-transform: uppercase;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 8px;
}

body#addresses article.address .address-body address {
    font-style: normal;
    color: var(--dark-gray);
    line-height: 1.6;
    font-size: 14px;
    margin-bottom: 16px;
}

body#addresses article.address .address-footer {
    border-top: 1px solid var(--light-gray);
    padding-top: 16px;
    display: flex;
    gap: 16px;
    align-items: center;
}

body#addresses article.address .address-footer a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 600;
    color: var(--gray);
    text-decoration: none;
    transition: color 0.2s;
}

body#addresses article.address .address-footer a:hover {
    color: var(--primary-teal);
}

body#addresses article.address .address-footer a[data-link-action="delete-address"]:hover {
    color: #d9534f;
}

body#addresses article.address:hover {
    border-color: var(--primary-teal);
}

body#addresses .addresses-footer {
    margin: 0;
    text-align: center;
    display: flex;
    justify-content: center;
}

body#addresses .addresses-footer a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    background-color: var(--primary-teal);
    color: #ffffff;
    padding: 16px;
    border-radius: var(--border-radius-main);
    font-weight: 700;
    text-transform: none;
    text-decoration: none;
    transition: background-color 0.2s ease, transform 0.2s ease;
}


body#addresses .addresses-footer a .material-symbols-outlined {
    font-size: 24px;
    margin: 0;
}

.page-addresses .addresses-footer a span{
    margin: 0;
}

@media (max-width: 767px) {
    body#addresses article.address {
        margin-bottom: 16px;
    }

    body#addresses .addresses-footer a {
        width: 100%;
        padding: 8px 16px;
    }
}

body#module-blockwishlist-lists .wishlist-container {
    padding: 24px 0;
}


body#module-blockwishlist-lists .wishlist-list-item {
    background: #ffffff;
    border: 1px solid var(--light-gray);
    border-radius: var(--border-radius-main);
    transition: all 0.2s ease;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

body#module-blockwishlist-lists .wishlist-list{
    display: flex;
    flex-direction: column;
    gap: 16px;
}

body#module-blockwishlist-lists .wishlist-list-item:hover {
    border-color: var(--primary-teal);
}

body#module-blockwishlist-lists .wishlist-list-item-title {
    font-size: 18px;
    font-weight: 700;
    color: var(--dark-gray);
    margin-bottom: 8px;
    text-decoration: none;
}

body#module-blockwishlist-lists .wishlist-list-item-link {
    text-decoration: none;
    display: flex;
}

body#module-blockwishlist-lists .wishlist-list-item-count {
    font-size: 14px;
    color: var(--gray);
    margin-bottom: 16px;
    font-weight: 500;
}

body#module-blockwishlist-lists .wishlist-add-to-new {
    border: 1px solid var(--light-gray);
    border-radius: var(--border-radius-main);
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    padding: 8px 16px;
    cursor: pointer;
    transition: all 0.2s ease;
    color: var(--dark-gray);
    font-weight: 700;
}

body#module-blockwishlist-lists .wishlist-add-to-new:hover {
    border-color: var(--primary-teal);
    color: var(--primary-teal);
    background: #ffffff;
}

body#module-blockwishlist-lists .wishlist-add-to-new .material-icons,
body#module-blockwishlist-lists .wishlist-add-to-new .material-symbols-outlined {
    font-size: 32px;
    color: var(--primary-teal);
}

body#module-blockwishlist-lists .wishlist-footer-links {
    display: flex;
    gap: 16px;
    margin-top: 32px;
    flex-wrap: wrap;
}

body#module-blockwishlist-lists .wishlist-footer-links a{
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

body#module-blockwishlist-lists .wishlist-footer-links a span.material-symbols-outlined {
    font-size: 20px;
}

@media (max-width: 767px) {
    body#module-blockwishlist-lists .wishlist-footer-links {
        flex-direction: row;
        gap: 0;
    }

    body#module-blockwishlist-lists .wishlist-footer-links a {
        justify-content: center;
    }
    body#module-blockwishlist-lists .wishlist-container-header{
        flex-direction: column;
        gap: 8px;
    }

    body#module-blockwishlist-lists .wishlist-container .card.page-content{
        box-shadow: none;
    }
    body#module-blockwishlist-lists .wishlist-add-to-new{
        width: 100%;
    }
}

.wishlist-modal .modal-footer .btn.modal-cancel{
    background: none;
    border: 1px solid var(--primary-teal);
    border-radius: var(--border-radius-main);
}

.wishlist-add-to .modal-footer{
    display: flex;
    justify-content: center;
}

.wishlist-modal .modal-footer .btn{
    padding: 8px 16px ;
    margin: 0;
}

.wishlist-modal .modal-body .form-group .form-control{
    border-radius: var(--border-radius-main);
}

.wishlist-list-container .wishlist-list-item-right .dropdown-menu{
    border-radius: var(--border-radius-main);
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
}

.wishlist-list-item-right .dropdown-menu>button{
    transition: none;
}

.wishlist-list-container .wishlist-list-item-right .dropdown-menu>button:hover{
    background-color: var(--primary-teal);
    color: #fff;
}

.wishlist-list .wishlist-list-item:hover p{
    color: var(--primary-teal);
}

.wishlist-add-to .modal-body .wishlist-list .wishlist-list-item:hover{
    background: none;
}

.footer-container .wishlist-toast.success{
    background-color: #fff;
    border: 1px solid var(--primary-teal);
    color: var(--dark-gray);
}

.footer-container  .wishlist-toast.success .wishlist-toast-text{
    color: var(--dark-gray);
}

.footer-container .wishlist-toast{
    right: 13rem;
}

.wishlist-products-container .sort-by-row{
    gap: 8px;
}

.wishlist-products-list .wishlist-products-item{
    margin: 0;
}

.modal-footer .wishlist-add-to-new i{
    color: var(--primary-teal);
}

.wishlist-product-bottom .wishlist-button-add{
    background:none;
    box-shadow: none;
    color: var(--primary-teal);
}

.wishlist-product-bottom .wishlist-button-add i, .product-remove-col i{
    color: #d9534f;
}

.wishlist-product .wishlist-product-link:hover img{
    transform: none;
}

.wishlist-products-container .wishlist-products-list{
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.wishlist-product .wishlist-product-image img{
    transform: none;
    position: static;
}

.wishlist-product .wishlist-product-image{
    border-radius: var(--border-radius-main);
}

.wishlist-product-combinations .wishlist-product-combinations a:hover{
    color: var(--dark-teal);
}

.wishlist-product-right .wishlist-product-title{
    color: var(--dark-gray);
    font-weight: 600;
}

.wishlist-product-right .wishlist-product-combinations a{
    color: var(--dark-gray);
}

.wishlist-product-right .wishlist-product-combinations a:hover{
    color: var(--dark-teal);
}

.wishlist-products-list .wishlist-products-item .wishlist-product{
    max-width: inherit;
}

@media(max-width: 768px){
    .wishlist-modal .modal-footer{
        display: flex;
        justify-content: space-between;
    }
    .wishlist-modal .modal-footer::after{
        display: none;
    }
    .footer-container .wishlist-toast.success{
        right: 1.25rem
    }
}

body#history .history-intro {
    margin-bottom: 24px;
    color: #666666;
}

body#history .order-history-wrapper {
    background: #ffffff;
    border-radius: var(--border-radius-main);
    overflow: hidden;
}

body#history table.table {
    margin-bottom: 0;
    width: 100%;
    border: none;
}

body#history table.table thead th {
    background: #fff;
    border: 1px solid var(--light-gray);
    color: var(--dark-gray);
    font-weight: 700;
    text-transform: uppercase;
    font-size: 12px;
    padding: 16px;
    vertical-align: middle;
}

.table-striped tbody tr:nth-of-type(odd){
    background-color: transparent;
}

body#history table.table tbody tr td,
body#history table.table tbody tr th {
    padding: 16px;
    vertical-align: middle;
    border-top: 1px solid var(--light-gray);
    color: var(--dark-gray);
    font-size: 14px;
}

body#history .order-ref {
    font-weight: 700;
    color: var(--primary-teal);
}

body#history .order-total {
    font-weight: 700;
}

body#history .label-pill {
    padding: 6px 12px;
    border-radius: var(--border-radius-main);
    font-size: 12px;
    font-weight: 600;
    display: block;
    text-align: start;
}

body#history .link-invoice {
    color: var(--dark-gray);
    transition: color 0.2s;
}

body#history .link-invoice:hover {
    color: var(--primary-teal);
}

body#history .order-actions {
    display: flex;
    gap: 12px;
    justify-content: center;
}

body#history .btn-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: transparent;
    color: #888888;
    transition: all 0.2s;
    border: 1px solid transparent;
}

body#history .btn-action .material-symbols-outlined,
body#history .link-invoice .material-symbols-outlined {
    font-size: 20px;
}

body#history .order-card {
    background: #ffffff;
    border: 2px solid var(--light-gray);
    border-radius: var(--border-radius-main);
    margin-bottom: 16px;
    overflow: hidden;
}

body#history .order-card-header {
    padding: 16px;
    border-bottom: 1px solid var(--light-gray);
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
}

body#history .label-pill{
    color: #fff;
}

body#history .ref-date {
    display: flex;
    flex-direction: column;
}

body#history .ref-link {
    font-weight: 800;
    color: var(--primary-teal);
    font-size: 16px;
    text-decoration: none;
    margin-bottom: 4px;
}

body#history .date {
    font-size: 12px;
    color: #888888;
}

body#history .order-card-body {
    padding: 16px;
}

body#history .total-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-weight: 600;
}

body#history .total-value {
    font-size: 18px;
    font-weight: 700;
    color: var(--dark-gray);
}

body#history .order-card-footer {
    display: flex;
    border-top: 1px solid var(--light-gray);
}

body#history .btn-mobile-action {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px;
    font-size: 14px;
    font-weight: 600;
    color: var(--dark-gray);
    text-decoration: none;
}

body#history .btn-mobile-action:first-child {
    border-right: 1px solid var(--light-gray);
}


body#history .btn-mobile-action .material-symbols-outlined {
    font-size: 18px;
}

#history .orders .order a h3, body#checkout #order-summary-content a .step-edit,
body#history .date,
body#history .total{
    color: var(--dark-gray);
}

#history #main .page-header{
    margin: 0;
}

body#order-detail .order-card,
body#guest-tracking .order-card{
    background: #ffffff;
    border: 2px solid var(--light-gray);
    border-radius: var(--border-radius-main);
    padding: 24px;
    margin-bottom: 24px;
    overflow: hidden;
}

body#order-detail .order-ref-title,
body#guest-tracking .order-ref-title
{
    color: var(--primary-teal);
    font-weight: 800;
    margin: 0 0 8px 0;
    font-size: 20px;
}

body#order-detail .order-date,
body#guest-tracking .order-date{
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--dark-gray);
    font-size: 14px;
    margin: 0;
}

body#order-detail .order-date .material-symbols-outlined,
body#guest-tracking .order-date .material-symbols-outlined{
    font-size: 18px;
}

body#order-detail .btn-reorder,
body#guest-tracking .btn-reorder{
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background-color: var(--primary-teal);
    color: #ffffff;
    padding: 12px 24px;
    border-radius: var(--border-radius-main);
    font-weight: 700;
    text-decoration: none;
    transition: all 0.2s;
}

body#order-detail .btn-reorder:hover,
body#guest-tracking .btn-reorder:hover{
    background-color: var(--dark-teal);
    color: #ffffff;
}

body#order-detail .order-meta-list,
body#guest-tracking .order-meta-list{
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}

body#order-detail .order-meta-list li,
body#guest-tracking .order-meta-list li{
    display: flex;
    align-items: center;
    gap: 16px;
    flex: 1 1 250px;
    padding: 16px;
    border: 1px solid var(--light-gray);
    border-radius: var(--border-radius-main);
}

body#order-detail .order-meta-list li .icon-wrapper,
body#guest-tracking .order-meta-list li .icon-wrapper{
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--primary-teal);
}

body#order-detail .order-meta-list li .meta-content,
body#guest-tracking .order-meta-list li .meta-content{
    display: flex;
    flex-direction: column;
}

body#order-detail .order-meta-list li strong,
body#guest-tracking .order-meta-list li strong{
    font-size: 12px;
    text-transform: uppercase;
    color: var(--dark-gray);
}

body#order-detail .order-meta-list li span,
body#guest-tracking .order-meta-list li span{
    font-weight: 600;
    color: var(--primary-teal);
}

body#order-detail .download-invoice-link,
body#guest-tracking .download-invoice-link{
    display: flex;
    align-items: center;
    gap: 16px;
    text-decoration: none;
    width: 100%;
}

body#order-detail section#order-history h3,
body#guest-tracking section#order-history h3{
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 12px;
    color: var(--dark-gray);
}

body#order-detail section#order-history h3 .material-symbols-outlined,
body#guest-tracking section#order-history h3 .material-symbols-outlined{
    color: var(--primary-teal);
}

body#order-detail table.table,
body#guest-tracking table.table{
    margin: 0;
    width: 100%;
    border: 0;
}

body#order-detail table.table thead th,
body#guest-tracking table.table thead th{
    border-bottom: 2px solid var(--light-gray);
    border-top: none;
    color: var(--dark-gray);
    background: none;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 12px;
    padding: 16px;
}

body#order-detail table.table tbody td,
body#guest-tracking table.table tbody td{
    padding: 16px;
    vertical-align: middle;
    border-top: 1px solid var(--light-gray);
    color: var(--dark-gray);
}

body#order-detail .address-card,
body#guest-tracking .address-card{
    height: 100%;
}

body#order-detail .address-card h4,
body#guest-tracking .address-card h4{
    font-size: 16px;
    font-weight: 700;
    color: var(--primary-teal);
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    gap: 8px;
    text-transform: uppercase;
}

body#order-detail .address-card address,
body#guest-tracking .address-card address{
    font-style: normal;
    line-height: 1.6;
    color: var(--dark-gray);
    margin: 0;
}

body#order-detail .order-products-wrapper,
body#guest-tracking .order-products-wrapper{
    padding: 0;
}

.page-order-detail .order-items .order-item .desc .ref{
    display: none;
}

@media (max-width: 767px) {
    body#order-detail .order-meta-list li,
    body#guest-tracking .order-meta-list li{
        flex: 1 1 100%;
    }

    body#order-detail .order-ref-title,
    body#guest-tracking .order-ref-title{
        font-size: 16px;
    }

    body#order-detail .history-lines .history-line,
    body#guest-tracking .history-lines .history-line{
        padding: 16px 0;
        border-bottom: 1px solid var(--light-gray);
    }
    body#order-detail .btn-reorder,
    body#guest-tracking .btn-reorder{
        padding: 8px 16px;
    }
}

body#order-detail .order-products-wrapper,
body#guest-tracking .order-products-wrapper{
    background: #ffffff;
    border-radius: var(--border-radius-main);
    overflow: hidden;
    margin-bottom: 24px;
}

body#order-detail table.order-products-table,
body#guest-tracking table.order-products-table{
    width: 100%;
    margin: 0;
    border: none;
}

body#order-detail table.order-products-table thead th,
body#guest-tracking table.order-products-table thead th{
    color: var(--dark-gray);
    font-weight: 700;
    text-transform: uppercase;
    font-size: 12px;
    padding: 16px;
    border-top: none;
}

body#order-detail table.order-products-table tbody td,
body#guest-tracking table.order-products-table tbody td{
    padding:  16px;
    border-top: 1px solid var(--light-gray);
    color: var(--dark-gray);
}

body#order-detail .product-cell,
body#guest-tracking .product-cell{
    width: 50%;
}

body#order-detail .product-line-info,
body#guest-tracking .product-line-info{
    display: flex;
    align-items: center;
    gap: 16px;
}

body#order-detail .product-image-container img,
body#guest-tracking .product-image-container img{
    width: 60px;
    height: auto;
    border-radius: var(--border-radius-main);
    border: 1px solid var(--light-gray);
}

body#order-detail .product-details,
body#guest-tracking .product-details{
    display: flex;
    flex-direction: column;
}

body#order-detail .product-name,
body#guest-tracking .product-name{
    font-weight: 700;
    color: var(--dark-gray);
    text-decoration: none;
    font-size: 14px;
    margin-bottom: 4px;
}

body#order-detail .product-ref,
body#guest-tracking .product-ref {
    font-size: 12px;
    color: #888888;
}

body#order-detail .download-link,
body#guest-tracking .download-link{
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 12px;
    color: var(--primary-teal);
    margin-top: 4px;
    text-decoration: none;
}

body#order-detail .download-link .material-symbols-outlined,
body#guest-tracking .download-link .material-symbols-outlined{
    font-size: 16px;
}

body#order-detail .qty-cell,
body#order-detail .price-cell,
body#order-detail .total-cell,
body#guest-tracking .qty-cell,
body#guest-tracking .price-cell,
body#guest-tracking .total-cell{
    font-size: 14px;
}

body#order-detail .total-cell,
body#guest-tracking .total-cell{
    font-weight: 700;
}

body#order-detail table.order-products-table tfoot td,
body#guest-tracking table.order-products-table tfoot td{
    padding: 12px 16px;
    text-align: right;
    border-top: 1px solid var(--light-gray);
    color: var(--dark-gray);
}

body#order-detail table.order-products-table tfoot .total-row td,
body#guest-tracking table.order-products-table tfoot .total-row td{
    font-size: 18px;
    font-weight: 800;
    color: var(--primary-teal);
    padding-top: 20px;
}

body#order-detail table.order-products-table tfoot .total-row td:first-child,
body#guest-tracking table.order-products-table tfoot .total-row td:first-child {
    color: var(--dark-gray);
    font-size: 16px;
}

body#order-detail .order-item-card,
body#guest-tracking .order-item-card{
    background: #ffffff;
    border-radius: var(--border-radius-main);
    padding: 16px;
}

body#order-detail .item-header,
body#guest-tracking .item-header{
    display: flex;
    gap: 12px;
    border-bottom: 1px solid var(--light-gray);
    padding-bottom: 12px;
    margin-bottom: 12px;
}

body#order-detail .item-image img,
body#guest-tracking .item-image img{
    width: 60px;
    height: auto;
    border-radius: var(--border-radius-main);
}

body#order-detail .item-info .name,
body#guest-tracking .item-info .name{
    font-weight: 700;
    color: var(--dark-gray);
    font-size: 14px;
    margin-bottom: 4px;
}

body#order-detail .item-info .ref,
body#guest-tracking .item-info .ref{
    font-size: 12px;
    color: #888888;
}

body#order-detail .item-row,
body#guest-tracking .item-row{
    display: flex;
    justify-content: space-between;
    margin-bottom: 8px;
    font-size: 14px;
    color: var(--dark-gray);
}

body#order-detail .item-row.total,
body#guest-tracking .item-row.total{
    font-weight: 700;
    color: var(--primary-teal);
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid var(--light-gray);
}

body#order-detail .order-totals-mobile,
body#guest-tracking .order-totals-mobile{
    background: #ffffff;
    padding: 0 16px;
    margin: 0;
}

body#order-detail .total-line,
body#guest-tracking .total-line{
    display: flex;
    justify-content: space-between;
    margin-bottom: 8px;
    font-size: 14px;
    color: var(--dark-gray);
}

body#order-detail .total-line.final,
body#guest-tracking .total-line.final{
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid var(--light-gray);
    font-weight: 800;
    font-size: 18px;
}

body#order-detail .total-line.final .value,
body#guest-tracking .total-line.final .value{
    color: var(--primary-teal);
}

body#order-detail .checkbox-cell,
body#guest-tracking .checkbox-cell{
    width: 40px;
    text-align: center;
    vertical-align: middle;
}

body#order-detail input[type="checkbox"],
body#guest-tracking input[type="checkbox"]{
    width: 18px;
    height: 18px;
    accent-color: var(--primary-teal);
    cursor: pointer;
}

body#order-detail .select-qty-wrapper,
body#guest-tracking .select-qty-wrapper{
    margin-top: 8px;
}

body#order-detail .form-control-select,
body#guest-tracking .form-control-select{
    border: 1px solid var(--light-gray);
    border-radius: 4px;
    padding: 4px 8px;
    font-size: 13px;
    color: var(--dark-gray);
    width: 60px;
    outline: none;
}

body#order-detail .form-control-select:focus,
body#guest-tracking .form-control-select:focus{
    border-color: var(--primary-teal);
}

body#order-detail .return-message-box,
body#guest-tracking .return-message-box{
    background: #ffffff;
    border: 2px solid var(--light-gray);
    border-radius: var(--border-radius-main);
    padding: 32px;
    margin-top: 32px;
}

body#order-detail .return-message-box header h3,
body#guest-tracking .return-message-box header h3{
    font-size: 18px;
    font-weight: 700;
    color: var(--dark-gray);
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}

body#order-detail .return-message-box header h3 .material-symbols-outlined,
body#guest-tracking .return-message-box header h3 .material-symbols-outlined{
    color: var(--primary-teal);
}

body#order-detail .return-message-box header p,
body#guest-tracking .return-message-box header p{
    color: #666;
    font-size: 14px;
    margin-bottom: 24px;
}

body#order-detail .return-message-box textarea.form-control,
body#guest-tracking .return-message-box textarea.form-control{
    border: 1px solid var(--light-gray);
    border-radius: var(--border-radius-main);
    padding: 16px;
    font-size: 14px;
    min-height: 120px;
    resize: vertical;
    width: 100%;
    transition: border-color 0.2s;
}

body#order-detail .return-message-box textarea.form-control:focus,
body#guest-tracking .return-message-box textarea.form-control:focus{
    border-color: var(--primary-teal);
    background: #ffffff;
    outline: none;
}

body#order-detail .return-message-box .form-footer,
body#guest-tracking  .return-message-box .form-footer{
    margin-top: 24px;
    text-align: right;
}

body#order-detail .btn-submit-return,
body#guest-tracking .btn-submit-retur{
    background-color: var(--primary-teal);
    color: #ffffff;
    padding: 12px 32px;
    border-radius: var(--border-radius-main);
    font-weight: 700;
    border: none;
}

@media (max-width: 767px) {
    body#order-detail .order-item-card.return-item .item-header,
    body#guest-tracking .order-item-card.return-item .item-header{
        align-items: center;
    }

    body#order-detail .checkbox-wrapper,
    body#guest-tracking .checkbox-wrapper{
        margin-right: 12px;
    }

    body#order-detail .qty-logic,
    body#guest-tracking .qty-logic{
        display: flex;
        align-items: center;
        gap: 8px;
        justify-content: flex-end;
    }

    body#order-detail .order-card .shipping-lines .shipping-line ul li,
    body#guest-tracking .order-card .shipping-lines .shipping-line ul li{
        display: flex;
        justify-content: space-between;
    }
    body#order-detail .order-card .shipping-lines .shipping-line ul,
    body#guest-tracking .order-card .shipping-lines .shipping-line ul
    {
        display: flex;
        flex-direction: column;
        gap: 8px;
        margin: 0;
    }
}
body#order-slip .page-intro {
    margin-bottom: 24px;
    text-align: center;
}

body#order-slip .credit-slips-table-wrapper {
    background: #ffffff;
    border: 2px solid var(--light-gray);
    border-radius: var(--border-radius-main);
    overflow: hidden;
    margin-bottom: 24px;
}

body#order-slip table.credit-slips-table {
    width: 100%;
    margin: 0;
    border: none;
}

body#order-slip table.credit-slips-table thead th {
    color: var(--dark-gray);
    font-weight: 700;
    text-transform: uppercase;
    font-size: 12px;
    padding: 16px;
    border-bottom: 2px solid var(--light-gray);
    border-top: none;
    vertical-align: middle;
}

body#order-slip table.credit-slips-table tbody td {
    padding: 16px;
    vertical-align: middle;
    border-top: 1px solid var(--light-gray);
    color: var(--dark-gray);
    font-size: 14px;
}

body#order-slip .order-link {
    font-weight: 700;
    color: var(--primary-teal);
    text-decoration: none;
}

body#order-slip .slip-number {
    font-family: monospace;
    font-weight: 600;
    color: var(--dark-gray);
    font-size: 15px;
}

body#order-slip .btn-download-slip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--primary-teal);
    border: 1px solid var(--primary-teal);
    padding: 6px 12px;
    border-radius: var(--border-radius-main);
    font-weight: 600;
    font-size: 13px;
    text-decoration: none;
    transition: all 0.2s;
}

body#order-slip .btn-download-slip:hover {
    background-color: var(--primary-teal);
    color: #ffffff;
}

body#order-slip .btn-download-slip .material-symbols-outlined {
    font-size: 18px;
}

body#order-slip .credit-slip-card {
    background: #ffffff;
    border: 2px solid var(--light-gray);
    border-radius: var(--border-radius-main);
    margin-bottom: 16px;
    overflow: hidden;
}

body#order-slip .card-header {
    background:none;
    padding: 12px 16px;
    border-bottom: 1px solid var(--light-gray);
    display: flex;
    justify-content: space-between;
    align-items: center;
}

body#order-slip .card-header .slip-number {
    color: var(--dark-gray);
    font-weight: 700;
}

body#order-slip .card-header .date {
    font-size: 14px;
}

body#order-slip .card-body {
    padding: 16px;
}

body#order-slip .info-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

body#order-slip .info-row .label {
    font-size: 13px;
    color: #666666;
}

body#order-slip .info-row .value-link {
    font-weight: 700;
    color: var(--primary-teal);
    text-decoration: none;
}

body#order-slip .card-footer {
    border-top: 1px solid var(--light-gray);
    padding: 0;
}

body#order-slip .btn-mobile-download {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    padding: 12px;
    color: var(--dark-gray);
    font-weight: 600;
    text-decoration: none;
    background: #ffffff;
    transition: background 0.2s;
}

body#order-slip .btn-mobile-download:hover {
    background: #f9f9f9;
    color: var(--primary-teal);
}

body#order-slip .btn-mobile-download .material-symbols-outlined {
    font-size: 20px;
}
body#order-follow .page-intro {
    color: #666666;
    margin-bottom: 24px;
}

body#order-follow .returns-table-wrapper {
    background: #ffffff;
    border: 2px solid var(--light-gray);
    border-radius: var(--border-radius-main);
    overflow: hidden;
    margin-bottom: 24px;
}

body#order-follow table.returns-table {
    width: 100%;
    margin: 0;
    border: none;
}

body#order-follow table.returns-table thead th {
    color: var(--dark-gray);
    font-weight: 700;
    text-transform: uppercase;
    font-size: 12px;
    padding: 16px;
    border-bottom: 2px solid var(--light-gray);
    border-top: none;
    vertical-align: middle;
}

body#order-follow table.returns-table tbody td {
    padding: 16px;
    vertical-align: middle;
    border-top: 1px solid var(--light-gray);
    color: var(--dark-gray);
    font-size: 14px;
}

body#order-follow table.returns-table tbody tr:hover {
    background-color: rgba(85, 197, 209, 0.03);
}

body#order-follow .return-number a {
    font-weight: 700;
    color: var(--dark-gray);
    text-decoration: underline;
}

body#order-follow .order-link {
    font-weight: 600;
    color: var(--primary-teal);
    text-decoration: none;
}

body#order-follow .status-badge {
    background-color: var(--primary-teal);
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    color: #fff;
}

body#order-follow .btn-print-return {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--primary-teal);
    padding: 6px 12px;
    border-radius: var(--border-radius-main);
    font-weight: 600;
    font-size: 13px;
    text-decoration: none;
    transition: all 0.2s;
}

body#order-follow .btn-print-return:hover {
    background-color: var(--primary-teal);
    color: #ffffff;
}

body#order-follow .btn-print-return .material-symbols-outlined {
    font-size: 18px;
}

/* Mobile Cards */
body#order-follow .return-card {
    background: #ffffff;
    border: 2px solid var(--light-gray);
    border-radius: var(--border-radius-main);
    margin-bottom: 16px;
    overflow: hidden;
}

body#order-follow .card-header {
    background-color: #fff;
    padding: 12px 16px;
    border-bottom: 1px solid var(--light-gray);
    display: flex;
    justify-content: space-between;
    align-items: center;
}

body#order-follow .card-header .return-link {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 700;
    color: var(--dark-gray);
    text-decoration: none;
}

body#order-follow .card-header .return-link .material-symbols-outlined {
    font-size: 20px;
    color: var(--primary-teal);
}

body#order-follow .card-header .date {
    font-size: 12px;
    color: #888888;
}

body#order-follow .card-body {
    padding: 16px;
}

body#order-follow .info-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
}

body#order-follow .info-row:last-child {
    margin-bottom: 0;
}

body#order-follow .info-row .label {
    font-size: 13px;
    color: #666666;
}

body#order-follow .info-row .value-link {
    font-weight: 700;
    color: var(--primary-teal);
    text-decoration: none;
}

body#order-follow .info-row .status-text {
    font-weight: 600;
    background: var(--primary-teal);
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 12px;
    color: #fff;
}

.card-header::after{
    display: none;
}

body#order-follow .card-footer {
    border-top: 1px solid var(--light-gray);
    padding: 0;
}

body#order-follow .btn-mobile-print {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    padding: 12px;
    color: var(--dark-gray);
    font-weight: 600;
    text-decoration: none;
    background: #ffffff;
    transition: background 0.2s;
}

body#order-follow .btn-mobile-print:hover {
    background: #f9f9f9;
    color: var(--primary-teal);
}

body#order-follow .btn-mobile-print .material-symbols-outlined {
    font-size: 20px;
}

body#order-return .order-card {
    background: #ffffff;
    border: 2px solid var(--light-gray);
    border-radius: var(--border-radius-main);
    padding: 32px;
    margin-bottom: 24px;
}

body#order-return .order-ref-title {
    display: flex;
    align-items: center;
    gap: 12px;
    color: var(--primary-teal);
    font-weight: 800;
    margin: 0 0 8px 0;
    font-size: 20px;
}

body#order-return .return-status-box {
    border-radius: var(--border-radius-main);
}

body#order-return .status-text {
    font-size: 16px;
    font-weight: 600;
    color: var(--dark-gray);
    margin-bottom: 12px;
}

body#order-return .status-text .label {
    background: var(--primary-teal);
    color: #ffffff;
    padding: 4px 12px;
    border-radius: var(--border-radius-main);
}

body#order-return #notifications .alert{
    background: none;
    border: 1px solid var(--primary-teal);
    font-weight: 700;
    border-radius: var(--border-radius-main);
}

body#order-return .return-deadline {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: #666666;
}

body#order-return .section-title {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 16px;
    color: var(--dark-gray);
}

body#order-return .return-products-table {
    width: 100%;
    border-collapse: collapse;
}

body#order-return .return-products-table thead th {
    background: transparent;
    border-bottom: 2px solid var(--light-gray);
    padding: 12px;
    font-size: 12px;
    text-transform: uppercase;
}

body#order-return .return-products-table tbody td {
    padding: 16px 12px;
    border-bottom: 1px solid var(--light-gray);
}

body#order-return .qty-val {
    font-size: 16px;
    color: var(--dark-gray);
}

body#order-return .reminder-card .card-title {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--dark-gray);
    font-weight: 700;
    margin-bottom: 16px;
}

body#order-return .action-box {
    margin: 24px 0;
    padding: 24px;
    border: 1px dashed var(--light-gray);
    border-radius: var(--border-radius-main);
    text-align: center;
}

body#order-return .btn-download-form {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--primary-teal);
    color: #ffffff;
    padding: 12px 24px;
    border-radius: var(--border-radius-main);
    font-weight: 700;
    text-decoration: none;
    transition: all 0.2s;
}

body#order-return .btn-download-form:hover {
    filter: brightness(0.9);
    color: #ffffff;
}

body#order-return .contact-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--primary-teal);
    font-weight: 600;
    margin-top: 16px;
    text-decoration: none;
}

body#order-return .order-date{
    display: flex;
    gap: 8px;
    align-items: center;
}

@media (max-width: 767px) {
    body#order-return .order-card {
        padding: 20px;
    }

    body#order-return .return-deadline{
        font-size: 12px;
    }
    body#order-return .status-text{
        display: flex;
        flex-direction: column;
        gap: 8px;
    }

    body#order-return .status-text .label{
        text-align: center;
    }

    body#order-return .order-card-header-main{
        display: flex;
        flex-direction: column;
        gap: 8px;
    }

    body#order-return .return-products-table tbody td.qty-val{
        text-align: center;
    }
}

body#discount .discount-table-wrapper {
    background: #ffffff;
    border: 2px solid var(--light-gray);
    border-radius: var(--border-radius-main);
    overflow: hidden;
    margin-bottom: 24px;
}

body#discount table.discount-table {
    width: 100%;
    margin: 0;
    border: none;
}

body#discount table.discount-table thead th {
    color: var(--dark-gray);
    font-weight: 700;
    text-transform: uppercase;
    font-size: 12px;
    padding: 16px;
    border-bottom: 2px solid var(--light-gray);
    border-top: none;
    vertical-align: middle;
}

body#discount table.discount-table tbody td,
body#discount table.discount-table tbody th {
    padding: 16px;
    vertical-align: middle;
    border-top: 1px solid var(--light-gray);
    color: var(--dark-gray);
    font-size: 14px;
}

body#discount .voucher-code {
    color: var(--primary-teal);
    border: 1px solid var(--primary-teal);
    padding: 6px 12px;
    border-radius: 4px;
    font-family: monospace;
    font-weight: 700;
    font-size: 14px;
    display: inline-block;
}

body#discount .discount-card {
    background: #ffffff;
    border: 2px solid var(--light-gray);
    border-radius: var(--border-radius-main);
    margin-bottom: 16px;
    overflow: hidden;
}

body#discount .card-header {
    padding: 12px 16px;
    border-bottom: 1px solid var(--light-gray);
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #fff;
}

body#discount .card-header .code-wrapper {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--primary-teal);
}

body#discount .card-header .code-wrapper .material-symbols-outlined {
    font-size: 20px;
}

body#discount .card-header .date {
    font-size: 12px;
    color: #888888;
}

body#discount .card-body {
    padding: 16px;
}

body#discount .card-body .name {
    font-weight: 700;
    color: var(--dark-gray);
    margin-bottom: 16px;
    font-size: 15px;
    text-align: center;
}

body#discount .details-grid {
    display: flex;
    gap: 12px;
    justify-content: space-between;
}

body#discount .detail-item {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

body#discount .detail-item .label {
    font-size: 11px;
    text-transform: uppercase;
    color: var(--gray)
}

body#discount .detail-item .value {
    font-size: 14px;
    font-weight: 600;
    color: var(--dark-gray);
}

body#discount .detail-item .value.teal {
    color: var(--primary-teal);
    font-weight: 800;
}

body#discount .alert {
    display: flex;
    align-items: center;
    gap: 12px;
}

.block-promo .promo-input{
    width: 100%;
    border-radius: var(--border-radius-main);
    border: 1px solid var(--primary-teal);
    margin: 0;
}

.block-promo .promo-input:focus-visible{
    outline: 1px solid var(--dark-teal);
}

.block-promo .promo-input+button{
    position: absolute;
    right: 0;
    height: 100%;
    text-transform: capitalize;
    margin: 0;
    border: 0;
    padding: 8px 16px;
    background: var(--primary-teal);
}

.block-promo .promo-code-button{
    padding-bottom: 4px;
}

.block-promo .promo-input+button:hover{
    background-color: var(--dark-teal);
}

.block-promo .promo-code .alert-danger{
    background: none;
    border: 1px solid #d9534f;
    color:  #d9534f;
    margin: 0;
}

.block-promo .promo-code .alert-danger::after{
    display: none;
}

.block-promo .promo-input+button span{
    color: #fff;
}

.block-promo .promo-code form{
    position: relative;
}

.block-promo .cart-summary-line .name{
    color: var(--dark-gray);
}

.block-promo .cart-summary-line{
    border: 1px dashed var(--primary-teal);
    border-radius: var(--border-radius-main);
    padding: 8px 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    color: var(--primary-teal);
    font-weight: 700;
    cursor: pointer;
}

.block-promo .cart-summary-line.active{
    border: 2px solid var(--primary-teal);
}
.block-promo .cart-summary-line.active:hover{
    outline: none;
    border: 2px solid var(--primary-teal);
}

.block-promo .cart-summary-line .offer-left{
    display: flex;
    justify-content: space-between;
    flex: 1;
    align-items: center;
}

.block-promo .cart-summary-line .code-icon{
    display: flex;
    align-items: center;
    gap: 8px;
}

.block-promo .cart-summary-line:hover{
    border: 1px solid var(--primary-teal);
    outline: 1px solid var(--primary-teal);
}

.block-promo .input-group{
    outline: none;
    max-width: inherit;
}

.block-promo .promo-name .cart-summary-line .voucher-value span{
    color: #3bb86e;
}

.cart-grid-right .promo-discounts .cart-summary-line .label{
    display: flex;
    gap: 4px;
    align-items: center;
    justify-content: center;
    flex: 1;
    color: var(--primary-teal)
}

.block-promo .promo-name .cart-summary-line span{
    color: var(--primary-teal);
}

.block-promo .promo-name .cart-summary-line .voucher-value .remove-voucher span{
    color: var(--dark-gray);
}

.cart-summary-line::after{
    display: none;
}

.block-promo .promo-name .cart-summary-line .label{
    display: flex;
    align-items: center;
    gap: 8px;
}

.block-promo .promo-name{
    padding: 0 20px;
}

.block-promo .promo-code{
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.block-promo.promo-highlighted{
    font-weight: 700;
    font-size: 16px;
    text-align: start;
    padding: 0;
    color: var(--dark-gray);
}

.block-promo .actual-promo{
    display: flex;
    gap: 8px;
    flex-direction: column;
}

.promo-code .promo-error{
    display: flex;
    gap: 8px;
}

.cart-grid-right .promo-discounts .cart-summary-line .offer-left .code{
    color: var(--primary-teal);
    font-weight: 700;
}

.cart-grid-right .cart-detailed-totals{
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.cart-grid-right .card-block{
    padding: 0;
}

.cart.cart-summary{
    padding: 0 20px;
}

@media (max-width: 1200px){
    .custom-category-nav-wrapper .custom-category-nav .nav-items.desktop-nav{
        display: flex
    }
}

@media (max-width: 991px){
    #header .container.main-header{
        display: flex;
        padding: 10px 15px;
    }
    #header .header-container{
        gap: 4px;
        align-items: stretch;
    }
    #header .search-box{
        padding: 0;
    }
    #header .header-nav .user-info .logged{
        display: block !important;
    }
}

@media(max-width: 768px){
    #header .container.main-header {
        display: block;
    }
    .custom-category-nav-wrapper .custom-category-nav .nav-items.desktop-nav{
        display: none
    }
    #my-account #main .page-content{
        padding: 0;
    }

    #order-return #main .page-content{
        padding: 0;
    }

    #header .header-nav .mobile{
        gap: 16px;
    }

    #header .header-nav .user-info .account{
        margin: 0;
        padding: 0;
    }
    #_mobile_cart .blockcart a{
        padding: 0;
    }
}

.mobile-search-trigger {
    float: left;
    cursor: pointer;
    color: var(--dark-gray);
    transition: color 0.2s;
    z-index: 100;
    position: relative;
    display: flex;
}

.mobile-search-trigger .material-symbols-outlined {
    font-size: 32px;
    color: var(--primary-teal);
}

.mobile-search-trigger.active {
    color: var(--primary-teal);
}

#mobile-search-bar-container {
    display: none;
    background: #ffffff;
    padding: 16px;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    z-index: 99;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
}

#mobile-search-bar-container form {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    margin: 0;
    border-radius: var(--border-radius-main
    );
}

#mobile-search-bar-container input[type="text"] {
    width: 100%;
    padding: 12px 48px 12px 20px;
    border-radius: var(--border-radius-main);
    font-size: 16px;
    outline: none;
    background-color: var(--light-gray);
    height: 36px;
    border: none;
}

#mobile-search-bar-container input[type="text"]:focus {
    outline: 1px solid var(--primary-teal);
    background: #ffffff;
}

#mobile-search-bar-container form i.search,
#mobile-search-bar-container form button[type="submit"] {
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--primary-teal);
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
}

#mobile-search-bar-container .ui-autocomplete-input {
    margin: 0;
}

#mobile-search-bar-container form .clear,
#mobile-search-bar-container form i.clear {
    display: none;
}

#cms #main .page-header{
    border-bottom: 2px solid var(--primary-teal);
}

#contact .form-group.row .col-md-6, #contact .form-group.row .col-md-9{
    width: 100%;
    padding: 0;
}

#contact form .form-control-label{
    text-align: start;
    text-wrap: nowrap;
    padding: 0;
}

.group-span-filestyle .btn-default{
    background-color: var(--primary-teal);
    border-radius:  var(--border-radius-main);
}

#contact #left-column{
    padding: 16px;
    margin-top: 16px;
}

.contact-form h3, .contact-rich h4{
    color:  var(--dark-gray);
    font-size: 20px;
}

.contact-form{
    padding: 0;
}

#contact .btn-primary.send{
    width: 100%;
    max-width: 400px;
    padding: 8px 12px;
}

#contact .form-fields{
    display: flex;
    flex-direction: column;
    gap: 16px;
}

#contact  .contact-form h3{
    margin: 0;
}

#contact .contact-container{
    display: flex;
    gap: 32px;
}

#contact .contact-rich .icon span{
    font-size: 32px;
    color: var(--primary-teal);
}

#contact .contact-rich .block .icon{
    width: auto;
    padding: 8px;
}

.contact-rich h4 {
    text-align: center;
}

#contact #content-wrapper{
    padding-left: 32px;
}

#contact hr{
    border-top: 1px solid var(--primary-teal);
}

@media(max-width: 768px){
    #contact #content-wrapper{
        padding: 0 16px;
    }
    #contact #left-column{
        margin: 0;
        padding: 0 16px;
    }
    .contact-rich h4{
        text-align: start;
    }
}

.delivery-hero {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 20px;
    margin-bottom: 40px;
}

.delivery-hero .hero-item {
    display: flex;
    align-items: center;
    gap: 16px;
    background: #ffffff;
    padding: 24px;
    border-radius: var(--border-radius-main);
    border: 1px solid var(--light-gray);
}

.delivery-hero .hero-item .icon {
    font-size: 36px;
    color: var(--primary-teal);
    padding: 12px;
    border-radius: 50%;
}

.delivery-hero .hero-item h3 {
    margin: 0 0 4px 0;
    font-size: 16px;
    font-weight: 700;
}

.delivery-hero .hero-item p {
    margin: 0;
    font-size: 14px;
    color: #666;
}


.process-info-box h4 {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 0;
    margin-bottom: 12px;
    color: var(--primary-teal);
    font-weight: 700;
}

.process-info-box p {
    margin-bottom: 8px;
    line-height: 1.6;
}

.process-info-box .small-note {
    font-size: 13px;
    color: var(--gray);
    margin-top: 12px;
    font-style: italic;
}

.section-title {
    text-align: center;
    font-size: 24px;
    font-weight: 800;
    margin-bottom: 32px;
    color: var(--dark-gray);
    position: relative;
    display: inline-block;
    width: 100%;
}

.delivery-methods-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 24px;
}

.delivery-card {
    background: #ffffff;
    border: 2px solid var(--light-gray);
    border-radius: var(--border-radius-main);
    padding: 24px;
    transition: transform 0.2s, border-color 0.2s;
    display: flex;
    flex-direction: column;
}


.delivery-card .card-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-bottom: 16px;
    background-color: #fff;
    gap: 8px;
}

.delivery-card .card-header .material-symbols-outlined {
    font-size: 40px;
    color: var(--primary-teal);
}

.delivery-card .card-header h4 {
    margin: 0;
    font-size: 16px;
    font-weight: 700;
}

.delivery-card .payment-type {
    font-size: 12px;
    text-transform: uppercase;
    color: var(--primary-teal);
    padding: 4px 10px;
    border-radius: 20px;
    font-weight: 700;
}

.delivery-card .price {
    text-align: center;
    font-size: 18px;
    font-weight: 800;
    color: var(--primary-teal);
    padding-bottom: 20px;
}

.delivery-card .details-list {
    list-style: none;
    padding: 0;
    margin: 0;
    font-size: 14px;
}

.delivery-card .details-list li {
    display: flex;
    justify-content: space-between;
    margin-bottom: 8px;
    color: var(--dark-gray);
}

.delivery-card .details-list li strong {
    color: var(--dark-gray);
}

.delivery-contact-box {
    text-align: center;
    color: var(--dark-grey);
    padding: 32px 16px;
    border-radius: var(--border-radius-main);
}

.delivery-contact-box h4 {
    color: var(--dark-grey);
    margin-top: 0;
    font-size: 20px;
}

.delivery-contact-box .contact-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--primary-teal);
    color: #fff;
    padding: 12px 24px;
    border-radius:var(--border-radius-main);
    text-decoration: none;
    font-weight: 700;
}

.delivery-contact-box .contact-btn:hover {
    background: var(--dark-teal);
}

@media (max-width: 767px) {
    .delivery-hero {
        grid-template-columns: 1fr;
    }

    .delivery-card {
        padding: 20px;
    }
}

.payments-minimal-container .section-heading {
    font-size: 22px;
    font-weight: 700;
    margin: 0 0 16px 0;
    color: var(--dark-gray);
}

.payments-minimal-container .intro-text {
    font-size: 15px;
    color: #666;
    margin-bottom: 16px;
    max-width: 90%;
}

.payments-minimal-container .security-note {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 16px;
}

.payments-minimal-container .security-note .material-symbols-outlined {
    font-size: 18px;
}

.payments-minimal-container{
    display: flex;
    gap: 16px;
    flex-direction: column;
}

.payment-methods-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.payment-item {
    display: flex;
    align-items: flex-start;
    gap: 20px;
}

.payment-item .icon-wrapper {
    flex-shrink: 0;
    padding-top: 4px;
}

.payment-item .icon-wrapper .material-symbols-outlined {
    font-size: 28px;
    color: var(--primary-teal);
}

.payment-item .content {
    flex: 1;
}

.payment-item .method-name {
    margin: 0 0 4px 0;
    font-size: 16px;
    font-weight: 700;
    color: var(--dark-gray);
}

.payment-item .method-desc {
    margin: 0;
    font-size: 14px;
    color: #666;
}

.payments-minimal-container .separator {
    height: 1px;
    background: #eee;
    margin: 48px 0;
    width: 100px;
}

@media (max-width: 767px) {
    .payments-minimal-container .intro-text {
        max-width: 100%;
    }

    .payment-item {
        gap: 16px;
    }
    .payments-minimal-container .section-heading{
        text-align: center;
        font-size: 18px;
        margin: 0;
    }
}

.policy-section h2 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 16px;
    color: var(--dark-gray);
}

.policy-section p {
    margin-bottom: 16px;
    color: var(--dark-gray);
    font-size: 15px;
}

.policy-section strong {
    color: var(--dark-gray);
    font-weight: 600;
}

.policy-section ol,
.policy-section ul {
    margin: 16px 0 24px 20px;
    padding: 0;
}

.policy-section li {
    margin-bottom: 8px;
    font-size: 15px;
    padding-left: 8px;
}

.policy-section .note {
    font-size: 14px;
    font-style: italic;
}


.policy-section .seller-details {
    margin-top: 24px;
    font-size: 14px;
}

.privacy-minimal-container .page-title {
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 48px;
    color: var(--dark-gray);
}

.privacy-section {
    margin-bottom: 40px;
}

.privacy-section h2 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 16px;
    color: var(--dark-gray);
}

.privacy-section .company-details {
    color: var(--dark-gray);
}


.privacy-section li {
    margin-bottom: 12px;
    font-size: 15px;
    padding-left: 8px;
}

.privacy-section strong {
    color: var(--dark-gray);
    font-weight: 600;
}

.privacy-section .highlight-link {
    color: var(--primary-teal);
    text-decoration: none;
    font-weight: 600;
    font-size: 16px;
    transition: color 0.2s;
}

.privacy-section .big-mail {
    font-size: 18px;
}

@media (max-width: 767px) {
    .privacy-minimal-container .page-title {
        font-size: 24px;
        margin-bottom: 32px;
    }
}

.terms-section h2 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 16px;
    color: var(--dark-gray);
}


.terms-section .contact-details {
    margin-bottom: 24px;
}

.terms-section .contact-details p {
    margin-bottom: 4px;
}

.terms-section .definitions-list li {
    font-size: 15px;
    padding-left: 8px;
}

.terms-section strong {
    color: var(--dark-gray);
    font-weight: 600;
}

.terms-section .highlight-link {
    color: var(--primary-teal);
    text-decoration: none;
    font-weight: 600;
}

.terms-section .highlight-link:hover {
    text-decoration: underline;
}

@media (max-width: 767px) {
    .terms-minimal-container .page-title {
        font-size: 24px;
    }
}

.about-minimal-container .page-title {
    font-size: 24px;
    font-weight: 700;
    color: var(--dark-gray);
}

.about-minimal-container .brand-name {
    color: var(--primary-teal);
    font-weight: 800;
}

.about-minimal-container strong {
    color: var(--dark-gray);
    font-weight: 600;
}

@media (max-width: 767px) {
    .about-minimal-container .page-title {
        font-size: 24px;
        margin-bottom: 32px;
    }

    .about-minimal-container .about-content p {
        font-size: 15px;
        text-align: left;
    }
}

#guest-tracking .form-group .col-md-6{
    width: 100%;
    padding: 0;
}

#guest-tracking form .form-control-label{
    text-align: start;
    text-wrap: nowrap;
    padding: 0;
}

#guest-tracking #guestOrderTrackingForm{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}

#guest-tracking .form-fields{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

#guest-tracking .form-control{
    max-width: inherit;
}

#guest-tracking .form-footer{
    width: 100%;
    max-width: 440px;
}

#guest-tracking .form-footer .btn-primary{
    width: 100%;
    padding: 8px 12px;
}

#guest-tracking .page-header h1{
    text-align: center;
}

#guest-tracking .page-header{
    margin: 0;
}

.align-end{
    text-align: end;
}

.align-center{
    text-align: center;
}

#password h1, #password .send-renew-password-link {
    text-align: center;
}


.form-validation-error{
    color: #d9534f;
    font-size: 14px;
}

.input-group .js-parent-focus{
    display: flex;
    width: 100%;
}

.input-group .js-parent-focus {
    flex-wrap: wrap;
}

.input-group .js-parent-focus > input.form-control {
    flex: 1 1 auto;
    width: 1%;
}

.input-group .js-parent-focus .form-validation-error {
    width: 100%;
    flex-basis: 100%;
    order: 10;
}

@media(max-width: 991px ){
    .footer-container .hidden-sm-down.h3{
        display: block;
    }

    .footer-container .col-md-6.links{
        width: 100%;
    }
    #category .footer-container .col-md-6.links{
        padding: 0;
    }
}

#product-modal .modal-content .modal-body .product-cover-modal, .product-cover img{
    border-radius: var(--border-radius-main);
}

#product-modal .modal-content .modal-body .image-caption{
    display: none;
}

#product-modal .modal-content .modal-body .product-images img:hover{
    border: 3px solid var(--primary-teal);
}

#product-modal .modal-content .modal-body{
    margin-left: -25%;
}

.custom-category-nav-wrapper .custom-category-nav .subcategory-column{
    min-width: auto;
}


.custom-category-nav-wrapper .custom-category-nav .subcategory-column .subcategory-title{
    font-size: 16px;
}

.custom-popup .btn.btn-primary{
    width: 100%;
    padding: 8px 12px;
    max-width: 400px;
}

.custom-popup .btn.btn-primary:hover{
    transform: none;
}

.custom-popup .popup-text-content{
    text-align: center;
    font-size: 16px;
}

.custom-popup .popup-content{
    border-radius: var(--border-radius-main);
}

.ui-autocomplete.searchbar-autocomplete{
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    border-radius: var(--border-radius-main);
}

.ui-autocomplete.searchbar-autocomplete li a .product{
    font-size: 16px;
}

.carrier-extra-content .inpost-shipping-container{
    background: none;
    margin: 0;
}

@media(max-width: 768px){
    .carrier-extra-content .inpost-shipping-container .row{
        margin: 0;
    }
}


ul.js-inpost-shipping-locker-errors {
    padding-left: 0;
    list-style: none;
    margin-bottom: 16px;
}

ul.js-inpost-shipping-locker-errors .alert-danger,
.inpost-shipping-customer-change-form .help-block .alert-danger {
    background: transparent;
    border: none;
    color: #d9534f;
    padding: 0;
    margin-top: 4px;
    margin-bottom: 8px;
    font-size: 13px;
    font-weight: 600;
    box-shadow: none;
}

.btn.inpost-shipping-button:hover, .btn.inpost-shipping-button:focus, .btn.inpost-shipping-button.focus{
    background-color: #dfb404;
    transition: none;
}

.inpost-shipping-customer-change-form .help-block{
    margin: 0;
    text-align: start;
}

.inpost-shipping-machine-info {
    border: 1px solid var(--light-gray, #eeeeee);
    border-left: 4px solid var(--primary-teal);
    padding: 16px;
    border-radius: var(--border-radius-main, 4px);
    margin-bottom: 16px;
}

.inpost-shipping-machine-name {
    font-weight: 700;
    color: var(--dark-gray);
    margin-bottom: 4px;
    font-size: 15px;
}


.carrier-extra-content .inpost-shipping-container .row .col-sm-6.col-md-5.offset-md-7.offset-sm-6{
    margin:0 16px ;
    padding: 0;
}

.carrier-extra-content .inpost-shipping-container .col-sm-12{
    display: flex;
}

@media(max-width: 768px){
    .carrier-extra-content .inpost-shipping-container .row .col-sm-6.col-md-5.offset-md-7.offset-sm-6{
        margin:0;
    }
    .inpost-shipping-container .col-sm-6{
        padding: 0;
    }
    .carrier-extra-content .inpost-shipping-container .col-sm-12{
        padding: 0;
    }
}

.inpost-shipping-container{
    padding: 0;
}

.inpost-shipping-machine-address {
    font-size: 13px;
    color: #666666;
    margin: 0;
}

.inpost-shipping-button,
.js-inpost-shipping-customer-form-save-button {
    display: inline-block;
    background-color: var(--primary-teal);
    color: #ffffff !important;
    padding: 10px 24px;
    border-radius: var(--border-radius-main, 4px);
    font-weight: 700;
    text-align: center;
    cursor: pointer;
    transition: background-color 0.2s, transform 0.2s;
    border: none;
    font-size: 14px;
    text-decoration: none;
}

.inpost-shipping-button:hover,
.js-inpost-shipping-customer-form-save-button:hover {
    background-color: var(--dark-teal, #45aeb9);
    color: #ffffff;
    transform: translateY(-1px);
}

.js-inpost-closest-machine {
    background: #ffffff;
    border: 1px solid var(--light-gray, #eeeeee);
    padding: 16px;
    border-radius: var(--border-radius-main, 4px);
    margin-top: 16px;
}

.js-inpost-closest-machine .font-weight-bold {
    font-size: 13px;
    color: #666666;
    margin-bottom: 12px;
}

body#checkout section.checkout-step .delivery-options .carrier-extra-content .col-12.col-xs-12{
    padding: 0;
}

.js-select-closest-machine {
    background-color: #f1f1f1;
    color: var(--dark-gray);
    border: 1px solid #dddddd;
    padding: 8px 16px;
    border-radius: var(--border-radius-main, 4px);
    font-weight: 600;
    font-size: 13px;
    transition: all 0.2s;
}

.js-select-closest-machine:hover {
    background-color: #e2e2e2;
    color: #000000;
}

.inpost-shipping-machine-customer-info {
    background: #ffffff;
    border: 1px solid var(--light-gray, #eeeeee);
    padding: 16px;
    border-radius: var(--border-radius-main, 4px);
    margin-bottom: 16px;
}

.inpost-shipping-subheader {
    font-weight: 700;
    color: var(--dark-gray);
    margin-bottom: 12px;
    border-bottom: 1px solid var(--light-gray, #eeeeee);
    padding-bottom: 8px;
    font-size: 14px;
}

.inpost-shipping-customer {
    font-size: 13px;
    margin-bottom: 6px;
    display: flex;
    justify-content: space-between;
}

.inpost-shipping-label {
    color: #888888;
}

.js-inpost-shipping-customer-info-email,
.js-inpost-shipping-customer-info-phone {
    font-weight: 700;
    color: var(--dark-gray);
}

.inpost-shipping-customer-change-wrapper {
    margin-top: 12px;
    margin-bottom: 0;
    text-align: right;
}

.inpost-shipping-customer-change {
    color: var(--primary-teal);
    font-weight: 600;
    font-size: 13px;
    cursor: pointer;
    text-decoration: underline;
    transition: color 0.2s;
}

.inpost-shipping-customer-change:hover {
    color: var(--dark-teal, #45aeb9);
}

.inpost-shipping-customer-change-form {
    padding: 20px;
    border-radius: var(--border-radius-main, 4px);
    border: 1px solid var(--light-gray);
    margin-top: 16px;
    margin-bottom: 24px;
    width: 50%;
}

@media(max-width: 768px){
    .inpost-shipping-customer-change-form{
        width: 100%;
    }
}

.inpost-shipping-customer-change-form .form-group {
    margin-bottom: 16px;
}

.inpost-shipping-customer-change-form .form-control {
    border: 1px solid #dddddd;
    border-radius: 4px;
    padding: 10px 16px;
    box-shadow: none;
    height: auto;
    font-size: 14px;
    background-color: #ffffff;
    color: var(--dark-gray);
    transition: border-color 0.2s;
}

.inpost-shipping-customer-change-form .form-control:focus {
    border-color: var(--primary-teal);
    outline: none;
}

.form-group.has-error .form-control {
    border-color: #d9534f;
    background-color: #fffaf9;
}

.inpost-shipping-customer-change-form .help-block ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

label[for="paytech_payment_method"] {
    display: none !important;
}

#checkout .payment-option-wrapper{
    display: flex;
    flex-direction: column;
    gap: 8px
}

@media (max-width: 768px) {
    #search_filters .facet .collapse:not(.show):not(.in) {
        display: none !important;
    }

    #search_filters .facet .title.collapsed .collapse-icons .add {
        display: block !important;
    }
    #search_filters .facet .title.collapsed .collapse-icons .remove {
        display: none !important;
    }
    #search_filters .facet .title:not(.collapsed) .collapse-icons .add {
        display: none !important;
    }
    #search_filters .facet .title:not(.collapsed) .collapse-icons .remove {
        display: block !important;
    }
    #search_filters .facet .title .collapse-icons{
        padding: 0 8px;
    }
    #category #left-column #search_filters .facet ul li{
        padding: 16px 0;
    }
    .panel-header .panel-title{
        font-weight: 700;
        color: var(--dark-gray);
    }
    .product-miniature .price-add-to-cart{
        flex-direction: column;
        gap: 8px;
    }
}


.input-group-qty{
    display: flex;
    border: 1px solid var(--primary-teal);
    border-radius: var(--border-radius-main);
    flex: 1;
}

.input-group-qty button{
    background: none;
    border: none;
    outline: none;
    cursor: pointer;
    transition: all 0.2s ease-in-out;;
    padding: 8px 10px;
    font-size: 22px;
}

.input-group-qty .form-control{
    background: none;
    border: none;
    border-left: 1px solid var(--primary-teal);
    border-right: 1px solid var(--primary-teal);
    text-align: center;
    border-radius: 0;
    color: var(--dark-gray);
    font-weight: 700;
    padding: 0;
}

.qty-and-button-wrapper{
    display: flex;
    gap: 8px;
}


.input-group-qty button:hover{
    color: var(--primary-teal);
}

.input-group-qty button:disabled{
    cursor: not-allowed;
}

.product-add-to-cart{
    flex: 1;
}