/* Variables */

:root {
    --main-black-color: #1F1F1E;
    /* var(--main-black-color) */
    --main-white-color: #FFF;
    /* var(--main-white-color) */
    --main-gray-color: #C4C4C4;
    /* var(--main-gray-color) */
    --main-light-gray-color: #F4F4F1;
    /* var(--main-light-gray-color) */
    --main-light-blue-color: #3676F1;
    /* var(--main-light-blue-color) */
    --main-red-color: rgba(218, 34, 44, 1);
    /* var(--main-blue-color) */

    --main-ease: all 0.6s cubic-bezier(0.5, 1, 0.89, 1);
    /* var(--main-ease) */
    --main-ease-fast: all 0.3s cubic-bezier(0.5, 1, 0.89, 1);
    /* var(--main-ease-fast) */

    /* FONT FAMILIES */
    --anonymous-pro: 'Anonymous Pro', monospace;
    --dm-mono: 'DM Mono', monospace;
    --inter: 'Inter', sans-serif;
    --saint-delafield: 'Mrs Saint Delafield', cursive;
}

/* Font loading optimization to prevent CLS - Apply font-display: swap */
* {
    font-display: swap;
}

/* Ensure consistent font loading to prevent CLS */
h1,
h2,
h3,
h4,
h5,
h6 {
    font-display: swap;
}

p,
span,
div,
a,
li {
    font-display: swap;
}

.custom-logo,
.site-branding img,
#site-logo img {
    width: 147px !important;
    height: 50px !important;
    max-width: 147px !important;
    max-height: 50px !important;
    aspect-ratio: 147/50;
    object-fit: contain;
    background-color: transparent;
    display: block;
    will-change: auto;
    min-width: 147px;
    min-height: 50px;
}

.custom-logo[data-lazy-src],
.custom-logo[data-rocket-lazy],
.custom-logo[loading="lazy"],
.custom-logo[data-lazy-srcset],
.custom-logo[data-lazy-sizes],
.custom-logo.lazyload,
.custom-logo.lazyloading,
.custom-logo.lazyloaded,
#site-logo img[data-lazy-src],
#site-logo img[data-rocket-lazy],
#site-logo img[loading="lazy"],
#site-logo img[data-lazy-srcset],
#site-logo img[data-lazy-sizes],
#site-logo img.lazyload,
#site-logo img.lazyloading,
#site-logo img.lazyloaded {
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
    width: 147px !important;
    height: 50px !important;
    min-width: 147px !important;
    min-height: 50px !important;
    background-image: none !important;
    background-color: transparent !important;
}

.footer-bottom-row-col-2 {
    min-width: 246px;
    min-height: 327px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.footer-bottom-row-col-2 img {
    width: 246px !important;
    height: 327px !important;
    max-width: 246px !important;
    max-height: 327px !important;
    aspect-ratio: 246/327;
    object-fit: contain;
    background-color: transparent;
    display: block;
    min-width: 246px;
    min-height: 327px;
}

.footer-bottom-row-col-2 img[data-lazy-src],
.footer-bottom-row-col-2 img[data-rocket-lazy],
.footer-bottom-row-col-2 img[loading="lazy"],
.footer-bottom-row-col-2 img[data-lazy-srcset],
.footer-bottom-row-col-2 img[data-lazy-sizes],
.footer-bottom-row-col-2 img.lazyload,
.footer-bottom-row-col-2 img.lazyloading,
.footer-bottom-row-col-2 img.lazyloaded {
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
    width: 246px !important;
    height: 327px !important;
    min-width: 246px !important;
    min-height: 327px !important;
    background-image: none !important;
}

.single-product .footer-bottom-row-col-2,
.woocommerce .footer-bottom-row-col-2 {
    min-width: 246px !important;
    min-height: 327px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.homepage-info-section-container {
    min-height: 600px !important;
    background-color: #f5f5f5;
    position: relative;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    will-change: background-image;
    contain: layout style paint;
}

.homepage-info-section-container[data-rocket-lazy-bg*="loaded"] {
    transition: none;
}

.homepage-info-section-item {
    min-height: 200px;
}

.homepage-info-section-item-image {
    min-height: 158px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    padding: 50px 0;
    width: 100%;
    box-sizing: border-box;
}

.homepage-info-section-item-image img {
    width: 58px !important;
    height: 58px !important;
    min-width: 58px;
    min-height: 58px;
    max-width: 58px;
    max-height: 58px;
    aspect-ratio: 1/1;
    object-fit: contain;
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    margin: 0 auto;
    padding: 50px 0;
    filter: invert();
    content-visibility: visible;
}

.homepage-info-section-item-image img[data-lazy-src],
.homepage-info-section-item-image img[data-rocket-lazy],
.homepage-info-section-item-image img[loading="lazy"] {
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
}

.homepage-banner-slide-content .homepage-banner-button-text>div {
    width: 129px !important;
    height: 159px !important;
}

.homepage-banner-slide-content .homepage-banner-button-text svg {
    width: 100% !important;
    height: 100% !important;
    display: block;
}

.homepage-categories-section {
    min-height: 300px;
}

.preloader-image-cover img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    display: block;
}

img[data-lazy-src] {
    aspect-ratio: attr(width) / attr(height);
}

.site-nav {
    min-height: 70px;
}

#primary.site-main,
.site-main {
    min-height: 400px;
    contain: layout;
}

.woocommerce-breadcrumb {
    min-height: 50px;
    display: flex;
    align-items: center;
    border-top: 1px solid var(--main-red-color);
    border-bottom: 1px solid var(--main-red-color);
    padding: 30px 120px;
}

.woocommerce-products-header {
    min-height: 100px;
}

.site-nav-right {
    min-height: 50px;
    min-width: 200px;
    display: flex;
    align-items: baseline;
    justify-content: flex-end;
}

.menu-icon,
.menu-icon-wrapper img,
.menu-img-icon {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    min-height: 30px !important;
    max-width: 30px !important;
    max-height: 30px !important;
    aspect-ratio: 1/1;
    object-fit: contain;
    display: block;
    transition: var(--main-ease);
}

.menu-icon.lazyload,
.menu-icon.lazyloading,
.menu-icon.lazyloaded,
.menu-icon[data-lazy-src],
.menu-icon[data-ll-status] {
    opacity: 1 !important;
    visibility: visible !important;
    width: 30px !important;
    height: 30px !important;
    background-image: none !important;
}

.mobile-nav-categories {
    min-height: 50px;
}

.homepage-info-section-item-image img[data-lazy-original],
.homepage-info-section-item-image img[data-rocket-lazy],
.homepage-info-section-item-image img[data-lazy-src] {
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
    background-image: none !important;
}

.homepage-banner-slider-buttons {
    min-height: 44px !important;
    min-width: 58px !important;
    display: flex;
    gap: 10px;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 3;
    padding-right: 120px;
}

/* Pre-owl-init: show only first slide so banner height is stable before JS runs */
.homepage-banner-slides:not(.owl-loaded) {
    display: block;
}
.homepage-banner-slides:not(.owl-loaded) .homepage-banner-slide:not(:first-child) {
    display: none;
}

.homepage-reviews-section-container {
    margin-top: 50px !important;
    margin-bottom: 100px !important;
}

/* Typography */

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--saint-delafield);
    margin: 0;
    padding: 0;
}

p,
li,
span,
div,
a {
    font-size: 15px;
    font-family: var(--inter);
    margin: 0;
    padding: 0;
}

ul,
li {
    margin: 0;
    list-style: none;
}

.vh-100 {
    height: 100vh;
}

.mh-screen {
    min-height: 100vh;
}

.overflow {
    overflow: hidden;
}

.rel {
    position: relative;
}

.abs {
    position: absolute;
}

.fixed {
    position: fixed;
}

.abs-center {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.z-999 {
    z-index: 999;
}

.z-10 {
    z-index: 10;
}

.grid {
    width: 100%;
    max-width: 1750px;
    margin: 0 auto;
}

.gutter {
    margin: 0 120px;
}

.sm-gutter {
    margin: 0 20px;
}

.display--inline-top {
    display: inline-block;
    vertical-align: top;
}

.display--inline-mid {
    display: inline-block;
    vertical-align: middle;
}

.display--inline-bot {
    display: inline-block;
    vertical-align: bottom;
}

.full-width {
    width: 100%;
}

.block-20 {
    width: 20%;
}

.block-40 {
    width: 40%;
}

.block-50 {
    width: 50%;
}

.block-60 {
    width: 60%;
}

.block-80 {
    width: 80%;
}

/* Scrollbar */

::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: var(--main-light-gray-color);
}

::-webkit-scrollbar-thumb {
    background: var(--main-black-color);
    transition: all .5s linear;
}

::-webkit-scrollbar-thumb:hover {
    background: var(--main-black-color);
}

::selection {
    background: var(--main-red-color);
    /* WebKit/Blink Browsers */
    color: var(--main-white-color);
}

::-moz-selection {
    background: var(--main-red-color);
    /* Gecko Browsers */
    color: var(--main-white-color);
}

/* Colors */

.color-white,
.color-white-all * {
    color: var(--main-white-color);
}

body {
    counter-reset: my-sec-counter;
}

body:has(.site-header.opened-menu),
body:has(.mobile-nav-categories.opened) {
    overflow: hidden;
}

/* PRELOADER */

.preloader {
    z-index: 9999;
    position: fixed;
    top: 0;
    left: 0;
    background: var(--main-white-color);
    min-width: 100vw;
    min-height: 100vh;
    overflow: hidden;
}

.preloader-cover {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.preloader-cover.white {
    background-color: var(--main-white-color);
    opacity: 1;
}

.preloader-cover.black {
    background-color: var(--main-black-color);
    opacity: 0;
}

.preloader-image-cover:nth-child(1) {
    width: 40vw;
    height: 60vh;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.preloader-image-cover:nth-child(2) {
    width: 30vw;
    height: 85vh;
    top: 5%;
    left: 10%;
}

.preloader-image-cover:nth-child(3) {
    width: 20vw;
    height: 45vh;
    top: 50%;
    left: 65%;
}

.preloader-image-cover:nth-child(4) {
    width: 20vw;
    height: 35vh;
    top: 12%;
    left: 56%;
}

.preloader-image-cover:nth-child(5) {
    width: 45vw;
    height: 35vh;
    top: 59%;
    left: 19%;
}

.preloader-image-cover:nth-child(6) {
    width: 15vw;
    height: 30vh;
    top: 11%;
    left: 32%;
}

.preloader-image-cover {
    overflow: hidden;
    position: absolute;
}

.preloader-image-cover img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: auto;
    width: auto;
    max-width: none;
    max-height: none;
    object-fit: cover;
}

@media only screen and (max-width: 768px) {
    .preloader-image-cover img {
        max-width: 100%;
        max-height: 100%;
    }
}

@media only screen and (min-width: 769px) and (max-width: 1440px) {
    .preloader-image-cover img {
        max-width: 120%;
        max-height: 120%;
    }
}

@media only screen and (min-width: 1441px) {
    .preloader-image-cover img {
        max-width: 150%;
        max-height: 150%;
    }
}


/* SMALL PRELOADER */

/* .preloader-content-small {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
}

.preloader #site-logo {
    width: 20vw;
    height: auto;
}

.preloader-percentage {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
    font-size: 25vw;
    opacity: 0.1;
    font-family: var(--dm-mono);
} */

/* HEADER - FOOTER */

/* HEADER */

#masthead {
    position: fixed;
    top: 0;
    z-index: 999;
    width: 100%;
    transition: var(--main-ease);
}

.scrolled {
    transform: translateY(-67px);
    background: rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(10px);
}

.scrolled .site-nav {
    padding: 5px 0;
}

.scrolled .main-navigation ul li a,
.scrolled .menu-item a {
    color: var(--main-black-color);
}

.opened-menu .site-nav,
.opened-menu .site-message {
    background: var(--main-white-color);
    transition: var(--main-ease);
}

.opened-menu .main-navigation ul li a,
.opened-menu .menu-item a,
.page-template-homepage .opened-menu .main-navigation ul li a,
.page-template-homepage .opened-menu .site-message *,
.page-template-homepage .opened-menu .site-message .sc-cls-1,
.page-template-homepage .opened-menu .mini-cart-container a,
.page-template-homepage .opened-menu #site-logo .cls-2 {
    color: var(--main-black-color);
    fill: var(--main-black-color);
}

.page-template-homepage .opened-menu .menu-img {
    filter: invert(100%);
}

/* .scrolled .menu-img { filter: invert(100%) } */

.menu-img {
    height: 22px;
    filter: invert(100%);
}

.page-template-homepage .menu-img {
    filter: none;
    transition: var(--main-ease);
}

.page-template-homepage .scrolled .menu-img {
    filter: invert(100%)
}

.site-message {
    border-bottom: 1px solid var(--main-black-color);
    display: flex;
    justify-content: space-between;
}

.site-message p {
    text-align: center;
    color: var(--main-black-color);
    font-size: 16px;
    text-transform: uppercase;
    font-family: var(--inter);
    padding: 20px 0;
}

.site-message p a {
    color: var(--main-red-color);
    text-decoration: none;
}

.site-message-social {
    display: flex;
    gap: 30px;
    align-items: center;
}

.site-message-social svg {
    width: 40px;
}

.page-template-homepage .site-message {
    border-bottom: 1px solid var(--main-white-color);
}

.page-template-homepage .site-message .sc-cls-1 {
    fill: var(--main-white-color);
}

.page-template-homepage .site-message p {
    color: var(--main-white-color);
}

.site-nav {
    display: grid;
    justify-content: space-between;
    grid-template-columns: auto auto;
    padding: 20px 0;
}

.site-nav-left {
    display: grid;
    grid-template-columns: auto auto;
    align-items: center;
    gap: 100px;
}

.site-branding img {
    width: 176px;
}

.site-title {
    display: none;
}

#site-logo {
    height: 70px;
    transition: var(--main-ease);
}

#site-logo .b {
    fill: var(--main-black-color);
}

.page-template-homepage #site-logo .cls-2 {
    fill: #F9F6EE;
    transition: var(--main-ease);
}

.page-template-homepage .scrolled #site-logo .cls-2 {
    fill: var(--main-black-color);
}

.page-template-homepage:has(.mobile-nav-categories.opened) #site-logo .cls-2 {
    fill: var(--main-black-color);
}

.main-navigation {
    display: flex;
    align-items: center;
    gap: 15px;
}

.main-navigation ul {
    gap: 70px
}

.page-template-homepage .main-navigation ul li a {
    cursor: pointer;
    font-size: 17px;
    font-weight: 600;
    color: var(--main-white-color);
    transition: var(--main-ease);
}

.page-template-homepage .scrolled .main-navigation ul li a {
    color: var(--main-black-color);
}

.main-navigation ul li a,
.mini-cart-container a {
    color: var(--main-black-color);
    font-family: var(--inter);
}

.menu-item a {
    position: relative;
}

.menu-item a::before,
.mini-cart-container a::before,
#menu-mobile-navigation .menu-item a::before {
    content: "";
    position: absolute;
    width: 100%;
    transform: scaleX(0);
    height: 1px;
    background-color: var(--main-red-color);
    bottom: 0;
    left: 0;
    transition: transform 300ms ease-in-out;
    transform-origin: bottom right;
}

.menu-item a:hover::before,
.mini-cart-container a:hover::before {
    transform: scaleX(1);
    transform-origin: bottom left;
}

.menu-ad-right-image {
    position: absolute !important;
    left: 85%;
    top: 35%;
    z-index: 1;
    border: none;
    width: 200px;
}

/* DESKTOP HAMBURGER */

.icon-menu {
    --gap: 5px;
    --height-bar: 2px;
    --pos-y-bar-one: 0;
    --pos-y-bar-three: 0;
    --scale-bar: 1;
    --rotate-bar-one: 0;
    --rotate-bar-three: 0;
    width: 25px;
    display: flex;
    flex-direction: column;
    gap: var(--gap);
    cursor: pointer;
    position: relative;
}

.bar {
    position: relative;
    height: var(--height-bar);
    width: 100%;
    border-radius: .5rem;
    background-color: var(--main-black-color);
}

.home .bar {
    background-color: var(--main-white-color);
}

.opened-menu .bar,
.scrolled .bar {
    background-color: var(--main-black-color);
}

.bar--1 {
    top: var(--pos-y-bar-one);
    transform: rotate(var(--rotate-bar-one));
    transition: top 200ms 100ms, transform 100ms;
}

.bar--2 {
    transform: scaleX(var(--scale-bar));
    transition: transform 150ms 100ms;
}

.bar--3 {
    bottom: var(--pos-y-bar-three);
    transform: rotate(var(--rotate-bar-three));
    transition: bottom 200ms 100ms, transform 100ms;
}

.opened-menu .icon-menu>.bar--1 {
    transition: top 200ms, transform 200ms 100ms;
}

.opened-menu .icon-menu>.bar--3 {
    transition: bottom 200ms, transform 200ms 100ms;
}

.opened-menu .icon-menu {
    --pos-y-bar-one: calc(var(--gap) + var(--height-bar));
    --pos-y-bar-three: calc(var(--gap) + var(--height-bar));
    --scale-bar: 0;
    --rotate-bar-one: 45deg;
    --rotate-bar-three: -45deg;
}

/* MEGA / SUBMENU STYLES */

#primary-menu>li {
    padding: 30px 0;
    position: relative;
}

/* 1st Child */

#primary-menu>li.menu-item-has-children>.sub-menu {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    min-height: 100vh;
    z-index: -1;
    background: var(--main-white-color);
    padding: 215px 20vw 36px 120px;
    text-align: left;
    display: grid;
    gap: 0;
    clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
    transition: all 0.5s cubic-bezier(0.61, 1, 0.88, 1);
    overflow-y: auto;
    overflow-x: hidden;
}

.opened-menu #primary-menu>li.menu-item-has-children>.sub-menu {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
    pointer-events: all;
}

#primary-menu>li.menu-item-has-children>.sub-menu>li:not(li.menu-ad-right-image) {
    display: flex;
    width: 245px;
    padding: 0;
    position: static;
    border-right: 1px solid var(--main-red-color);
    transition: var(--main-ease-fast);
}

#primary-menu>li.menu-item-has-children>.sub-menu>li.show:not(.menu-ad-right-image) {
    background: rgba(218, 34, 44, 0.1);
    border-right: 5px solid var(--main-red-color);
    transition: var(--main-ease-fast);
}

#primary-menu>li.menu-item-has-children>.sub-menu>li.show>a {
    font-weight: 800;
}

#primary-menu>li.menu-item-has-children>.sub-menu>li>.sub-menu {
    height: max-content;
    width: max-content;
    max-width: 65%;
    padding-left: 50px;
    position: absolute;
    top: 215px;
    left: 365px;
    display: none;
    grid-template-columns: repeat(4, 1fr);
}

#primary-menu>li.menu-item-has-children>.sub-menu>li.show>.sub-menu {
    /* display: grid;
    gap: 10% 1%; */
    display: block;
    columns: 4;
    column-gap: 0;
}

#primary-menu>li.menu-item-has-children>.sub-menu>li>.sub-menu>li {
    margin: 0;
    padding-bottom: 20px;
}

#primary-menu>li.menu-item-has-children>.sub-menu>li>.sub-menu li {
    display: block;
    break-inside: avoid-column;
}

#primary-menu>li.menu-item-has-children>.sub-menu>li>.sub-menu li>a {
    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
    align-items: center;
    gap: 10px;
}

#primary-menu>li.menu-item-has-children>.sub-menu>li>.sub-menu>li>a {
    color: var(--main-red-color);
    font-weight: 800;
}

#primary-menu>li.menu-item-has-children>.sub-menu>li>.sub-menu li>.sub-menu {
    display: grid;
    gap: 0;
    padding: 0px 40px;
}

#primary-menu li.menu-item-has-children>.sub-menu>a {
    margin-bottom: 14px;
    display: block;
}

#primary-menu li>.sub-menu li a {
    font-size: 14px;
    line-height: 18px;
}

#primary-menu>li.menu-item-has-children>.sub-menu>li>a {
    color: var(--main-red-color);
    position: relative;
    display: flex;
    width: 100%;
    flex-direction: row-reverse;
    justify-content: flex-end;
    gap: 10px;
    align-items: center;
}

#primary-menu>li.menu-item-has-children>.sub-menu>li.menu-ad-right-image>a {
    justify-content: end;
}

#primary-menu li>.sub-menu>li>ul>li>a {
    color: var(--main-black-color);
    padding-bottom: 3px;
    margin-bottom: 3px;
    font-weight: 400;
    display: block;
    width: fit-content;
    position: relative;
}

#primary-menu>li.menu-item-has-children>.sub-menu>li a::before {
    left: 0;
    transform: scaleX(0);
    transform-origin: left center;
}

#primary-menu>li.menu-item-has-children>.sub-menu>li a:hover::before {
    transform: scaleX(1);
}

#primary-menu>li.menu-item-has-children .menu-img-wrapper {
    /* position: fixed;
	width: auto;
	max-width: calc(30vw - 68px);
	height: auto;
	max-height: calc(100vh - 200px);
	right: 36px;
	pointer-events: none;
	top: 181px;
    z-index: 1;
    opacity: 0;
    visibility: hidden;
    transform: translate3d(0px, 0px, 0px) rotate(1.1841deg) scale(1.0507, 1.0507);
    transition: var(--main-ease);
    overflow: hidden; */
    display: none;
}

#primary-menu li.menu-item-has-children.show>a>.menu-img-wrapper {
    /* clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); */
    /* transform: rotate(0deg) scale(1, 1);
    z-index: 3;
    opacity: 1;
    visibility: inherit; */
}

#primary-menu li.menu-item-has-children>a>.menu-img-wrapper>.menu-img {
    height: auto;
    filter: none;
}

.scrolled #primary-menu li.menu-item-has-children>a>.menu-img-wrapper>.menu-img {
    filter: none;
}

.opened-menu #primary-menu li.menu-item-has-children>a>.menu-img-wrapper>.menu-img {
    filter: none;
}

.site-nav-right {
    display: grid;
    grid-template-columns: auto auto;
    padding-right: 7vw;
    align-items: baseline;
}

#primary-menu .menu-icon {
    height: 30px;
}

.mobile-nav-categories .menu-img-wrapper {
    display: none;
}

.site-nav-right-menu #menu-menu-right {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 32px;
    align-items: center;
}

.home .site-nav-right-menu .menu-icon {
    filter: none;
}

.home .opened-menu .site-nav-right-menu .menu-icon {
    filter: invert();
}

.site-nav-right-menu .menu-icon {
    height: 30px;
    width: 30px;
    min-height: 30px;
    min-width: 30px;
    max-height: 30px;
    max-width: 30px;
    transition: var(--main-ease);
    filter: invert();
    display: block;
    object-fit: contain;
}

.scrolled .site-nav-right-menu .menu-icon {
    filter: invert();
}

.site-nav-right-menu #menu-menu-right li a {
    font-size: 0;
}

.site-nav-right-menu #menu-menu-right li a,
.page-template-homepage .scrolled .site-nav-right-menu #menu-menu-right li a,
.page-template-homepage .scrolled .mini-cart-container a {
    color: var(--main-black-color);
    text-decoration: none;
    transition: var(--main-ease);
}

.page-template-homepage .site-nav-right-menu #menu-menu-right li a,
.page-template-homepage .mini-cart-container a {
    color: var(--main-white-color);
}

.mini-cart-container {
    align-self: anchor-center;
}

.mini-cart-container a {
    position: relative;
    text-decoration: none;
}

.header-cart {
    color: var(--main-black-color);
    padding: 3px;
    border: 1px solid var(--main-black-color);
    border-radius: 5px;
    position: absolute;
    left: calc(100% + 6px);
    top: 50%;
    transform: translateY(-50%);
    line-height: 1;
    transition: var(--main-ease);
}

.home .header-cart {
    color: var(--main-white-color);
    border: 1px solid var(--main-white-color);
}

.home .scrolled .header-cart,
.home .opened-menu .header-cart {
    color: var(--main-black-color);
    border: 1px solid var(--main-black-color);
}

.mobile-nav-categories::-webkit-scrollbar {
    display: none;
}

.mobile-nav-categories {
    height: 100vh;
    width: 100vw;
    overflow: auto;
    background: var(--main-white-color);
    position: fixed;
    top: 0;
    z-index: -1;
    padding: 120px 0 60px 0;
    transition: var(--main-ease-fast);
    transform: translateX(-100vw);
}

.mobile-nav-categories.opened {
    transform: none;
}

.mobile-nav-categories .menu-item-has-children {
    position: relative;
}

.mobile-nav-categories .menu-item-has-children .sub-menu,
.mobile-nav-categories .menu-item-has-children.show .sub-menu .menu-item-has-children .sub-menu {
    display: none;
    opacity: 0;
    visibility: hidden;
    transition: var(--main-ease);
    margin: 0;
    padding: 0 0 20px 0;

}

.mobile-nav-categories .menu-item-has-children.show>a {
    background: rgba(218, 34, 44, 0.1);
    border-top: 2px solid var(--main-red-color);
}

.mobile-nav-categories .mobile-hidden>a {
    display: none !important;
}

.mobile-nav-categories .mobile-hidden::before,
.mobile-nav-categories .mobile-hidden::after {
    display: none;
}

.mobile-nav-categories .menu {
    padding: 0;
    margin: 0;
}

.mobile-nav-categories #menu-menu-1>.menu-item-has-children>.sub-menu {
    display: block !important;
    opacity: 1 !important;
    visibility: visible;
}

.mobile-nav-categories .menu-item-has-children::before {
    content: "";
    position: absolute;
    background-color: var(--main-red-color);
    width: 16px;
    height: 2px;
    right: 11px;
    margin-right: 19px;
    top: 0;
    margin-top: 35px;
    transition: all 0.5s ease-in-out;
}

.mobile-nav-categories .menu-item-has-children.show::before {
    transition: all 0.5s ease-in-out;
    transform: rotate(90deg);
    opacity: 0;
}

.mobile-nav-categories .menu-item-has-children.show::after {
    transition: all 0.5s ease-in-out;
    transform: rotate(90deg);
}

.mobile-nav-categories .menu-item-has-children::after {
    content: "";
    position: absolute;
    background-color: var(--main-red-color);
    width: 2px;
    height: 16px;
    right: 11px;
    margin-right: 26px;
    top: 0;
    margin-top: 28px;
    transition: all 0.5s ease-in-out;
}

.mobile-nav-categories .menu-item-has-children.show .sub-menu,
.mobile-nav-categories .menu-item-has-children.show .sub-menu .menu-item-has-children.show .sub-menu {
    opacity: 1;
    visibility: visible;
    display: inherit;
    pointer-events: auto;
    border-bottom: 2px solid var(--main-red-color);
}

.mobile-nav-categories .menu-item-has-children>a {
    pointer-events: none;
}

.mobile-nav-categories .menu-item-has-children a {
    display: flex;
    flex-direction: row-reverse;
    gap: 10px;
    justify-content: left;
    align-items: center;
}

.mobile-nav-categories .menu-item-has-children .menu-img {
    filter: none;
    height: 30px;
}

.mobile-nav-categories .menu-icon {
    height: 30px;
}

.mobile-nav-categories .menu-item a {
    color: var(--main-black-color);
    text-decoration: none;
    width: 100%;
    padding: 15px 30px;
}

.mobile-nav-categories .menu-item {
    padding: 0;
    /* pointer-events: auto; */
}

.mobile-nav-bottom .mobile-cart {
    position: relative;
}

.mobile-nav-bottom .header-cart {
    position: absolute;
    top: 32%;
    left: 100%;
    color: var(--main-red-color);
    border: 1px solid var(--main-red-color);
}

.mobile-nav-left,
.mobile-nav-right {
    display: none;
}

.mobile-nav-right a {
    font-size: 0;
}

.home .scrolled .mobile-nav-right .menu-img-icon {
    filter: invert();
}

.mobile-nav-right .menu-img-icon {
    height: 40px;
    transition: var(--main-ease);
    filter: invert();
}

.home .mobile-nav-right .menu-img-icon {
    filter: none;
}

.home:has(.mobile-nav-categories.opened) .mobile-nav-right .menu-img-icon {
    filter: invert();
}

.mobile-nav-bottom {
    background: var(--main-white-color);
    position: fixed;
    bottom: 0;
    width: 100%;
    display: flex;
    justify-content: space-around;
    z-index: 999;
    display: none;
    border-top: 1px solid var(--main-red-color);
    padding: 10px 0;
}

.mobile-nav-bottom nav,
.menu-mobile-navigation-container,
#menu-mobile-navigation {
    width: 100%;
}

#menu-mobile-navigation {
    display: flex;
    justify-content: space-around;
    padding: 0;
}

#menu-mobile-navigation .menu-item a {
    font-size: 0;
}

#menu-mobile-navigation .menu-icon {
    height: 30px;
    filter: invert();
}

.hamburger {
    height: 50px;
    width: 50px;
    /* transform: 0.2s; */
    position: relative;
}

.hamburger .checkbox {
    position: absolute;
    opacity: 0;
    height: 100%;
    width: 100%;
    cursor: pointer;
}

.line {
    transition: 0.5s;
    stroke-width: 3px;
    stroke: var(--main-black-color);
}

.page-template-homepage .scrolled .line {
    stroke: var(--main-black-color)
}

.page-template-homepage .line {
    stroke: var(--main-white-color)
}

.lineTop {
    stroke-dasharray: 40 40;
    stroke-dashoffset: 25;
}

.lineBottom {
    stroke-dasharray: 40 40;
    stroke-dashoffset: 60;
}

.lineMid {
    stroke-dasharray: 40 40;
}

.hamburger .checkbox:checked+svg .line {
    stroke: var(--main-red-color);
}

.hamburger .checkbox:checked+svg .lineTop {
    stroke-dashoffset: 0;
    transform-origin: left;
    transform: rotateZ(45deg) translate(-7px, -5px);
}

.hamburger .checkbox:checked+svg .lineMid {
    stroke-dashoffset: 40;
}

.hamburger .checkbox:checked+svg .lineBottom {
    stroke-dashoffset: 0;
    transform-origin: left;
    transform: rotateZ(-45deg) translate(-5px, 5px);
}

/* FOOTER */

.footer-top-row {
    display: grid;
    grid-template-columns: 40% 60%;
    padding: 70px 0;
}

.footer-top-row-newsletter {
    background-color: var(--main-red-color);
    grid-column-start: 2;
    display: grid;
    grid-template-columns: 65% 35%;
    align-items: center;
    padding: 15px 0;
}

.footer-top-row-newsletter h2 {
    color: var(--main-white-color);
    font-family: var(--dm-mono);
    font-size: 3vw;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: -6px;
    margin: 0 auto;
    display: block;
}

#newsletter-popup .mc4wp-form-fields {
    padding: 100px;
    border: 2px solid var(--main-red-color);
}

.newsletter-window {
    display: none;
}

.newsletter-header {
    text-align: center;
    font-size: 27px;
    padding-bottom: 10px;
    font-family: var(--inter);
}

.email-form {
    display: flex;
    justify-content: space-between;
    margin: 5px 0;
}

.email-form input {
    width: 100%;
    padding: 15px;
    font-family: var(--inter);
}

.submit-button input {
    width: 100%;
    background: var(--main-black-color);
    color: var(--main-white-color);
    border: none;
    padding: 15px;
    font-size: 20px;
    transition: var(--main-ease-fast);
    font-family: var(--inter);
}

.submit-button:hover input {
    background: var(--main-red-color);
}

.footer-bottom-row {
    display: grid;
    grid-template-columns: 30% 20% 20% 20% 10%;
}

.footer-bottom-row-col-1 {
    transform: translateY(-50px);
    width: 80%;
}

.footer-bottom-row-col-1 img {
    max-width: 175px;
    padding-bottom: 15px;
}

.footer-bottom-row-col-1>* {
    font-family: var(--inter);
    font-size: 16px;
}

.footer-bottom-row-col-1 a {
    color: var(--main-red-color);
    text-decoration: none;
}

.footer-nav ul li {
    line-height: 40px;
    font-size: 16px;
}

.footer-nav ul li a {
    font-family: var(--inter);
    text-decoration: none;
    color: var(--main-black-color);
}

.footer-nav ul li a:visited {
    color: var(--main-black-color);
}

.footer-bottom-row-col-5 {
    display: grid;
    justify-content: center;
    height: fit-content;
    gap: 30px;
}

/* Social media icons - prevent layout shift */
.footer-bottom-row-col-5 img {
    width: 40px !important;
    height: 40px !important;
    max-width: 40px !important;
    max-height: 40px !important;
    aspect-ratio: 1/1;
    object-fit: contain;
    display: block;
}

.footer-copyright {
    padding: 50px 0;
}

.footer-copyright a {
    color: var(--main-red-color);
    text-decoration: none;
    font-weight: bold;
}

.footer-copyright p {
    font-family: var(--inter);
}

/* HOMEPAGE -> BANNER */

.owl-dots {
    display: none;
}

.homepage-banner-slides.owl-carousel .owl-item img {
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    min-width: 100%;
    min-height: 100%;
    max-width: unset;
    max-height: unset;
    height: auto;
    width: auto;
}

.homepage-banner-slides {
    display: flex;
    width: 100%;
    overflow: hidden;
}

/* Homepage banner slides - ensure consistent aspect ratio */
.homepage-banner-slide {
    display: block;
    overflow: hidden;
    padding-top: 42%;
    position: relative;
    min-height: 400px;
}

/* Banner content button wrapper - stable dimensions */
.homepage-banner-button-text {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 250px;
    min-height: 100px;
    flex-shrink: 0;
    /* Prevent layout shift */
    contain: layout;
}

.homepage-banner-slide img {
    max-height: 800px;
    overflow: hidden;
    width: 1920px !important;
    height: 806px !important;
    aspect-ratio: 1920/806;
    object-fit: cover;
}

.dark-image {
    display: block;
    background-color: rgba(0, 0, 0, 0.4);
    width: 100%;
    height: 100%;
    position: absolute;
    overflow: hidden;
    z-index: 1;
    top: 0;
    left: 0;
}

.homepage-banner-slide-content {
    position: absolute;
    left: 50%;
    right: auto;
    top: 55%;
    transform: translate(-50%, -50%);
    width: 100%;
    max-width: 800px;
    z-index: 2;
    min-height: 400px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 20px;
    box-sizing: border-box;
    /* Prevent layout shift */
    will-change: transform;
}

.homepage-banner-slide-content h2 {
    color: var(--main-red-color);
    font-size: 9vw;
    text-align: center;
    line-height: 1.2;
    font-weight: 400;
    min-height: 120px;
    margin: 0 0 20px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    /* Prevent layout shift */
    contain: layout;
}

.homepage-banner-slide-content p {
    color: var(--main-white-color);
    font-size: 3vw;
    text-align: center;
    min-height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    /* Prevent layout shift */
    contain: layout;
    line-height: 1;
}

.homepage-banner-slide-button {
    color: var(--main-black-color);
    background-color: var(--main-white-color);
    text-decoration: none;
    font-weight: bold;
    padding: 24px 40px;
    letter-spacing: 4px;
    margin: 0 auto;
    display: block;
    width: max-content;
    cursor: pointer;
    transition: var(--main-ease-fast);
}

.homepage-banner-slide-button:hover {
    letter-spacing: 1px;
    padding: 24px 61px;
}

.homepage-banner-button-text svg {
    height: 445px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

.homepage-banner-slide-button:visited {
    color: var(--main-black-color);
}

.homepage-banner-slide-button::after {
    content: "⟶";
    padding-left: 40px;
}

.homepage-banner-slider-buttons {
    position: absolute;
    top: 50%;
    transform: translatey(-50%);
    width: 100%;
    justify-content: space-between;
    display: flex;
    padding: 0 20vw;
    z-index: 111;
    min-height: 44px;
    min-width: 100px;
}

.slider-button {
    padding: 16px 20px;
    border-radius: 50%;
    border: var(--main-black-color) 1px solid;
    background: none;
    display: block;
    transition: var(--main-ease-fast);
    width: 56px;
    height: 56px;
    min-width: 56px;
    min-height: 56px;
    box-sizing: border-box;
}

.slider-button:focus {
    border: var(--main-black-color) 1px solid;
}

.slider-button:hover {
    background: var(--main-black-color);
    border: var(--main-black-color) 1px solid;
}

.slider-button:hover svg path {
    stroke: var(--main-white-color);
}

.owl-nav {
    display: none;
}

/* HOMEPAGE -> CATEGORIES */

.homepage-categories-section {
    padding-bottom: 100px;
}

.homepage-categories-title {
    padding-top: 140px;
    display: flex;
    justify-content: space-between;
}

.homepage-area-title {
    font-size: 72px;
    color: var(--main-red-color);
    line-height: 40px;
    font-weight: 400;
}

.homepage-area-subtitle {
    font-size: 56px;
}

.homepage-categories-slider-buttons {
    display: flex;
    gap: 10px;
}

.homepage-categories-slider .owl-stage-outer {
    padding-top: 100px;
}

.homepage-categories-slide-top {
    padding-top: 155%;
    overflow: hidden;
    transition: var(--main-ease);
}

.homepage-categories-slide:hover .homepage-categories-slide-top {
    transform: translateY(-100px);
}

.homepage-categories-slide-top a {
    color: var(--main-black-color);
}

.homepage-categories-slide-top img {
    width: 100% !important; /* Override inline style="width:auto" to give browser a computable width, preventing unsized-image CLS */
    height: 100% !important; /* Override inline style="height:500px" */
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    object-fit: cover;
}

.homepage-categories-slide-top h2 {
    background-color: var(--main-white-color);
    padding: 16px 24px 16px 24px;
    position: absolute;
    top: 80%;
    line-height: initial;
    text-transform: uppercase;
    font-family: var(--dm-mono);
    transition: var(--main-ease);
    font-size: 14px;
}

.homepage-categories-slide:hover .homepage-categories-slide-top h2 {
    padding: 16px 48px 16px 24px;
}

.categories-slider-title-arrow {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    opacity: 0;
    display: block;
    width: max-content;
}

.homepage-categories-slide:hover .categories-slider-title-arrow {
    opacity: 1;
}

.homepage-categories-slide:hover h2::after {
    display: inline;
}

.homepage-categories-slide-bot {
    position: absolute;
    bottom: 0;
    z-index: -11;
}

.homepage-categories-slide-bot p {
    background-color: var(--main-white-color);
    text-overflow: ellipsis;
    height: 85px;
    text-wrap: pretty;
    font-size: 14px;
    font-family: var(--inter);
    font-weight: 400;
    overflow: hidden;
    display: inline-block;
}

/* HOMEPAGE -> PRODUCTS */

.homepage-products-section-title {
    padding: 100px 0;
}

.homepage-products-section-grid {
    padding-bottom: 50px;
}

/* .woocommerce ul.products li.product {
    position: relative;
    padding: 90px 10px 50px 10px;
} */
.woocommerce ul.products li.product .price {
    position: absolute;
    left: 10px;
    bottom: 10px;
}

.woocommerce ul.products li.product .price del bdi .woocommerce-Price-currencySymbol,
.woocommerce ul.products li.product .price del bdi {
    font-size: 16px;
    color: #000;
}

.woocommerce ul.products li.product .price>.woocommerce-Price-amount>bdi,
.woocommerce ul.products li.product .price>.woocommerce-Price-amount>bdi>span,
.woocommerce ul.products li.product .price ins bdi .woocommerce-Price-currencySymbol,
.woocommerce ul.products li.product .price ins bdi {
    font-weight: 700;
}

.woocommerce ul.products li.product::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    border-top: 1px solid var(--main-black-color);
    border-left: 1px solid var(--main-black-color);
    width: 100%;
    height: 100%;
    transform: scale(0);
    transition: var(--main-ease);
    transform-origin: top left;
    pointer-events: none;
}

.woocommerce ul.products li.product::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    border-bottom: 1px solid var(--main-black-color);
    border-right: 1px solid var(--main-black-color);
    width: 100%;
    height: 100%;
    transform: scale(0);
    transition: var(--main-ease);
    transform-origin: bottom right;
    pointer-events: none;
}

.woocommerce ul.products li.product:hover::before,
.woocommerce ul.products li.product:hover::after {
    transform: scale(1);
}

.product a.woocommerce-LoopProduct-link::before {
    counter-increment: my-sec-counter;
    content: "0" counter(my-sec-counter);
    font-family: var(--dm-mono);
    font-size: 7vw;
    color: var(--main-red-color);
    position: absolute;
    top: -10px;
    mix-blend-mode: multiply;
}

.woocommerce ul.products li.product a>* {
    color: var(--main-black-color);
    font-family: var(--inter);
    font-size: 16px;
    font-weight: 400;
}

.woocommerce ul.products li.product img {
    display: block;
    width: 100%;
}

.woocommerce ul.products li.product {
    width: 100% !important;
    float: none;
    margin-right: 0;
    overflow: hidden;
    margin-bottom: 0;
    position: relative;
    padding: 90px 10px 50px 10px;
}

.woocommerce ul.products li.product a {
    text-decoration: none;
}

.woocommerce ul.products li.product .button {
    transition: var(--main-ease-fast);
    background: var(--main-black-color);
    color: var(--main-white-color);
    text-align: center;
    width: 100%;
    padding: 20px 0px;
    position: absolute;
    top: 0;
    left: 0;
    transform: translateY(-80px);
    text-transform: uppercase;
    letter-spacing: -1px;
}

.woocommerce ul.products li.product:hover .button {
    transform: translateY(0px);
}

.added_to_cart {
    width: 100%;
    display: block;
    background: var(--main-red-color);
    color: var(--main-white-color);
    /* padding: 10px; */
    text-align: center;
    text-transform: uppercase;
    position: absolute;
    left: 0;
    top: 0;
    padding: 20px 10px;
}

.woocommerce ul.products {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    /* gap: 5px; */
}

.home .woocommerce ul.products {
    grid-template-columns: repeat(4, 1fr);
}

/* HOMEPAGE -> INFO */

.homepage-info-section-container {
    background-image: url("/wp-content/uploads/2024/09/brown-living-room.webp");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    background-color: var(--main-white-color);
    position: relative;
}

.homepage-info-section-overlay {
    background: var(--main-black-color);
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    opacity: 0.3;
    width: 100%;
    height: 100%;
    min-width: 100%;
    min-height: 100%;
}

.homepage-info-section-items {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 4vw;
    backdrop-filter: blur(2px);
    padding: 100px 0;
}

.homepage-info-section-item-image img {
    display: block !important;
    margin: 0 auto;
    /* Remove padding from img, add it to container instead */
    padding: 0 !important;
    filter: invert();
    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;
    min-height: 58px !important;
    max-width: 58px;
    max-height: 58px;
    aspect-ratio: 1/1;
    object-fit: contain;
    /* Ensure visibility and prevent CLS */
    opacity: 1 !important;
    visibility: visible !important;
    /* Force the browser to respect dimensions */
    box-sizing: border-box !important;
}

.homepage-info-section-item-image svg {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}

.homepage-info-section-item h2 {
    color: var(--main-white-color);
    font-family: var(--dm-mono);
    font-size: 24px;
    text-transform: uppercase;
}

.homepage-info-section-item p {
    color: var(--main-white-color);
    font-family: var(--dm-mono);
    font-size: 18px;
    text-transform: capitalize;
    opacity: 0.8;
}

/* HOMEPAGE -> THE CONTENT */

.red-outline-btn,
.red-outline-btn a {
    color: var(--main-red-color);
    border: 1px solid var(--main-red-color);
    border-radius: 0;
    background: transparent;
}

.gift-card-title {
    font-family: var(--inter);
    font-size: 2.5rem;
}

/* WOOCOMMERCE */

.woocommerce span.onsale {
    /* background-color: var(--main-red-color); */
    color: var(--main-white-color) !important;
    background: #f9a148;
    padding: 5px;
    font-weight: 400;
    top: 20px;
    position: absolute;
    right: 20px;
    border-radius: 50%;
    height: 58px;
    line-height: 46px;
}

.woocommerce a.button {
    background: none;
    color: var(--main-black-color);
    transition: var(--main-ease-fast);
    padding: 0;
}

.woocommerce a.button:hover {
    background: none;
    color: var(--main-red-color);
    transform: translate(2px, 2px);
}


/* WISHLIST */

.woocommerce ul.products li.product .yith-add-to-wishlist-button-block {
    position: absolute;
    right: 10px;
    bottom: 10px;
}

/* WISHLIST PAGE */

.woocommerce-wishlist .wishlist_view {
    display: block;
    max-height: 100%;
}

.woocommerce-wishlist .wishlist_table thead tr th {
    border-color: var(--main-red-color);
    background: transparent;
}

.woocommerce-wishlist table.wishlist_table thead th {
    border-bottom: 1px solid var(--main-red-color);
    border-top: unset;
}

.woocommerce-wishlist .product-remove a,
.woocommerce-wishlist .product-add-to-cart a,
.woocommerce-wishlist .product-name a {
    text-decoration: none;
    color: var(--main-black-color);
}

.woocommerce-wishlist .product-remove a {
    font-size: 20px;
}

/* SINGLE PRODUCT PAGE */

.single-product #secondary {
    display: none;
}

.single-product-body {
    padding-top: 220px;
}

.single-product-body h1,
.single-product-body h2 {
    font-family: var(--inter);
}

.single-product-body a:visited {
    color: unset;
}

.single-product-body a {
    color: var(--main-black-color);
    text-decoration: none;
}

.single-product-container {
    display: flex;
    justify-content: center;
}

.product .single-product-container a::before,
.woocommerce-product-attributes a::before {
    display: none;
}

.type-product .entry-content {
    border: none;
}

.single-product-gallery {
    width: 50%;
    border-right: 1px solid var(--main-red-color);
    padding: 20px;
}

.pswp-gallery {
    display: flex;
    flex-direction: column;
    gap: 15px;
    min-height: 300px;
    contain: layout;
}

/* Product gallery - prevent layout shift */
.custom-product-gallery {
    min-height: 350px;
    min-width: 100%;
    contain: layout style;
}

.custom-product-gallery .pswp-gallery {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    justify-content: center;
    align-items: center;
    min-height: 300px;
}

.pswp-gallery a {
    display: block;
    width: 100%;
}

.pswp-gallery a img {
    width: 100%;
    height: auto;
    min-height: 150px;
    aspect-ratio: 4/3;
    object-fit: cover;
    display: block;
}

/* Gallery images - prevent layout shift */
.pswp-gallery img[alt="Gallery Image"],
.custom-product-gallery img {
    width: 100% !important;
    min-width: 200px;
    min-height: 150px;
    aspect-ratio: 4/3;
    object-fit: cover;
    background-color: #f5f5f5;
    display: block;
}

/* Override lazy loading for gallery images */
.pswp-gallery img[data-lazy-src],
.pswp-gallery img[data-ll-status],
.pswp-gallery img.lazyload,
.pswp-gallery img.lazyloading,
.pswp-gallery img.lazyloaded,
.custom-product-gallery img[data-lazy-src],
.custom-product-gallery img[data-ll-status],
.custom-product-gallery img.entered {
    opacity: 1 !important;
    visibility: visible !important;
    min-height: 150px !important;
    background-image: none !important;
}

.single-product-content {
    width: 50%;
    padding: 2vh 50px;
    height: auto !important;
}

.single-product-content-info {
    position: sticky;
    top: 150px;
}

.single-product-content-info .woocommerce-product-details__short-description,
.single-product-content-info .price {
    padding-bottom: 30px;
}

.single-product-content-info .product_meta {
    display: flex;
    flex-direction: column;
    font-weight: 600;
    margin-bottom: 20px;
}

.single-product-content-info .stock {
    margin-bottom: 20px;
}

.price * {
    font-size: 25px;
    font-weight: 600;
}

.cart {
    display: flex;
    gap: 20px;
    max-height: 45px;
}

.single-product-content-info .cart .quantity {
    display: flex;
}

.quantity-decrement,
.quantity-increment {
    background: none;
    height: 100%;
    border-radius: 0;
    padding: 12px;
    color: #686D77;
}

.single-product-content-info .cart .input-text {
    line-height: 2;
    text-align: center;
    border-radius: 0px;
    max-width: 60px;
    -moz-appearance: textfield;
}

.single-product-content-info .cart input::-webkit-outer-spin-button,
.single-product-content-info .cart input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.single-product-content-info .woocommerce-message {
    background-color: #0f834d5b;
    padding: 10px;
    margin-bottom: 30px;
}

.single-product-content-info .woocommerce-message a {
    font-weight: 600;
}

.single-product-content-info .product-expected-date {
    width: max-content;
    padding: 5px 10px;
    background: #f9a148;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 5px;
    margin: 10px 0;
}

.single_add_to_cart_button {
    width: max-content;
    background: var(--main-black-color);
    color: var(--main-light-gray-color);
    border-radius: 0px;
    text-transform: uppercase;
}

#btn_tbigr {
    max-height: 60px;
    width: auto;
    height: 60px;
    min-height: 60px;
    display: block;
    object-fit: contain;
}

.single-product-description {
    border-top: 1px solid var(--main-red-color);
    border-bottom: 1px solid var(--main-red-color);
    display: flex;
    justify-content: center;
}

.single-product-description-left {
    border-right: 1px solid var(--main-red-color);
    width: 50%;
    display: grid;
    align-items: center;
}

.single-product-description-left-content {
    padding: 0px 60px;
}

.single-product-description-left-content h2 {
    text-transform: uppercase;
}

.single-product-description-left-content .tabs {
    display: none;
}

.single-product-description-left-content table {
    text-align: left;
}

.woocommerce-tabs .panel h2:first-of-type {
    color: var(--main-red-color);
}

.single-product-description-right {
    width: 50%;
    min-height: 600px;
    position: relative;
    overflow: hidden;
}

.description-right-image {
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    align-items: center;
}

.description-right-image img {
    height: 95%;
    max-width: unset;
    border-radius: 8px;
}

/* .single-product-description-right::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: var(--main-red-color);
    opacity: 0.4;
} */

.single-product-related .related>h2 {
    padding: 40px 120px;
    font-size: 30px;
    text-transform: uppercase;
    font-family: var(--dm-mono);
}

.single-product-related .products li.product,
.suggested-products .products li.product {
    float: none;
    width: 100% !important;
    height: 100%;
    padding: 110px 30px 30px 30px;
    margin: 0;
    border-top: 1px solid var(--main-red-color);
    border-bottom: 1px solid var(--main-red-color);
    border-right: 1px solid var(--main-red-color);
}

.single-product-related .products li.product a img {
    width: auto;
    height: 400px;
}

.single-product-related ul.products {
    gap: 0;
}

.woocommerce-breadcrumb {
    border-top: 1px solid var(--main-red-color);
    border-bottom: 1px solid var(--main-red-color);
    padding: 30px 120px;
}

.woocommerce-breadcrumb * {
    text-transform: uppercase;
    text-decoration: none;
    color: var(--main-black-color);
}

.woocommerce-page div.product div.images {
    float: none;
    width: 100%;
}

.woocommerce div.product div.images .woocommerce-product-gallery__image:nth-child(n+2) {
    width: 100%;
    display: block;
}


/* ARCHIVE PRODUCT PAGE */

.WpfWoofiltersWidget {
    position: sticky;
    top: 150px;
}

.term-description {
    width: 85%;
    margin: 0 auto;
}

.archive-product-container .product a::before {
    display: none;
}

.archive-product-container .product {
    border-bottom: 1px solid rgba(0, 0, 0, .5);
    border-right: 1px solid rgba(0, 0, 0, .5);
}

.archive-product-container .product:nth-child(4n) {
    border-right: none;
}

.woocommerce-products-header__title {
    padding: 0px 120px 50px 120px;
    font-family: var(--dm-mono);
    font-size: 50px;
}

.woocommerce-products-header {
    padding-top: 220px;
    text-align: center;
    text-transform: uppercase;
}

.archive-product-wrapper {
    display: grid;
    grid-template-columns: 400px calc(100% - 400px);
    padding-bottom: 30px;
}

.irs--flat .irs-bar,
.irs--flat .irs-from,
.irs--flat .irs-to {
    background-color: var(--main-red-color) !important;
}

.widget-title {
    padding: 20px 0;
}

.widget-title,
.woof_container_inner h4 {
    font-family: var(--dm-mono);
    text-transform: uppercase;
}

.product-filters {
    grid-column-start: 1;
    grid-column-end: 2;
    grid-row-start: 3;
    border-right: 1px solid var(--main-red-color);
    border-top: 1px solid var(--main-red-color);
    padding: 20px;
}

.woocommerce-notices-wrapper {
    grid-column-start: 1;
    grid-column-end: 3;
    grid-row-start: 2;
}

.woocommerce-result-count {
    width: 100%;
    grid-column: 2 / -1;
    padding: 25px 120px;
    text-transform: uppercase;
    text-align: end;
}

.woocommerce-ordering {
    grid-column: 1 / 2;
    grid-row: 1;
    padding: 25px 120px;
}

.woocommerce-ordering .orderby {
    border: none;
    text-transform: uppercase;
}

.product-content {
    border-top: 1px solid var(--main-red-color);
    grid-column-start: 2;
    grid-column-end: 3;
    grid-row-start: 3;
}

.woocommerce-pagination {
    border: 1px solid var(--main-red-color);
    padding: 30px 0px;
    margin-top: 30px;
    margin-right: 20px;
    grid-column-start: 2;
    grid-column-end: 3;
    grid-row-start: 4;
}

.loading-spinner {
    text-align: center;
    font-size: 14px;
    color: #555;
    margin: 10px 0;
    grid-column-start: 2;
    grid-column-end: 3;
    grid-row-start: 4;
}

.loading-spinner::after {
    content: '';
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-left: 5px;
    border-radius: 50%;
    border: 2px solid #ccc;
    border-top-color: #0071a1;
    animation: spin 0.8s linear infinite;
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

.page-numbers {
    display: flex;
    justify-content: center;
    text-decoration: none;
    color: var(--main-black-color);
    font-weight: 700;
    padding: 0 1px;
    flex-wrap: wrap;
    align-items: center;
}

.page-numbers .current {
    border-radius: 50%;
    padding: 7px 15px;
    border: 1px solid var(--main-red-color);
}

.page-numbers:visited {
    color: var(--main-black-color);
}

.woocommerce-pagination ul li a {
    border-radius: 50%;
    padding: 10px 16px;
    transition: var(--main-ease-fast);
}

.woocommerce-pagination ul li:hover a {
    background-color: var(--main-red-color);
    color: var(--main-white-color);
}

.next .page-numbers {
    padding: 12px 16px;
}

/* SINGLE PAGE */

.entry-header {
    padding-top: 220px;
    position: relative;
    overflow: hidden;
}

.entry-header img {
    position: absolute;
    top: -100%;
    left: 0;
    z-index: -1;
    min-width: 100%;
    min-height: 100%;
    max-width: unset;
    max-height: unset;
    height: auto;
    width: auto;
}

.entry-title,
.entry-header a {
    text-transform: uppercase;
    font-family: var(--dm-mono);
    /* font-size: 45px; */
    font-size: 2.5vw;
    padding: 10px 0 30px;
    font-weight: 400;
    line-height: 1.3;
}

.entry-content {
    margin: 0;
    padding: 40px 0;
    border-top: 1px solid var(--main-red-color);
    border-bottom: 1px solid var(--main-red-color);
}

.entry-content * {
    font-family: var(--inter);
}

.entry-content p {
    margin-bottom: 20px;
}

.entry-content h2 {
    margin-bottom: 10px;
}

.page .widget-area {
    display: none;
}

/* SINGLE POST */
.post {
    margin: 0;
}

.single-post .post .entry-title {
    text-align: center;
    font-family: var(--dm-mono);
    font-size: 48px;
    font-weight: 600;
    text-transform: uppercase;
    padding: 10px 0;
}

.single-post .entry-content {
    padding: 20px 0;
}

.single-post .post .post-thumbnail {
    border-top: 1px solid var(--main-red-color);
    padding-top: 20px;
}

.single-post .post .wp-post-image {
    display: block;
    margin: 0 auto;
    padding: 0px 100px;
    max-height: 700px;
    object-fit: contain;
}

.single-post .post .post-dates,
.post .post-categ {
    width: max-content;
    margin: 10px auto;
}

.single-post .post .post-categ {
    display: none;
}

.single-post .post-dates a,
.post-categ a {
    color: var(--main-red-color);
    text-decoration: none;
}

.single-post .post-gutter {
    margin: 30px 500px;
}

.single-post .post .edit-link {
    padding-left: 20px;
}

.single-post .post-navigation .nav-links {
    border-bottom: 1px solid var(--main-red-color);
    padding: 20px 400px;
}

.single-post .nav-links a {
    color: var(--main-black-color);
    text-decoration: none;
    font-weight: 700;
    transition: var(--main-ease-fast);
}

.single-post .nav-links a:hover {
    color: var(--main-red-color);
}

.single-post .post p {
    font-size: 16px;
}

/* ARCHIVE POST */

.archive-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}

.archive-container .post-cell {
    margin: 0;
    padding: 60px;
    border-bottom: 1px solid var(--main-red-color);
}

.archive-container .post-cell:nth-child(odd) {
    border-right: 1px solid var(--main-red-color);
}

.post-archive .page-header {
    padding-top: 220px;
    padding-bottom: 20px;
    text-align: center;
    border-bottom: 1px solid var(--main-red-color);
}

.post-archive .page-header * {
    font-family: var(--dm-mono);
    font-size: 45px;
    text-transform: uppercase;
}

.post-archive .post-thumb img {
    height: 300px;
    width: auto;
    margin: 0 auto;
    display: block;
}

.post-archive .post-title {
    font-family: var(--dm-mono);
    font-size: 35px;
    padding: 20px 0;
    text-transform: uppercase;
    color: var(--main-black-color);
    text-decoration: none;
    width: max-content;
    margin: 0 auto;
    display: block;
}

.wc-block-components-product-metadata .wc-block-components-product-metadata__description>p {
    display: none;
}

/* CONTACT PAGE */

.contact-subheader {
    font-size: 22px;
    font-family: var(--saint-delafield);
}

.contact-input input {
    border: unset !important;
    border-bottom: 2px solid var(--main-red-color) !important;
}

.wpforms-submit {
    background: none !important;
    border: none !important;
    border-bottom: 2px solid var(--main-red-color) !important;
    text-transform: uppercase !important;
    letter-spacing: 4px !important;
}

.contact-info-header {
    text-transform: uppercase;
    font-family: var(--dm-mono);
    font-size: 40px;
    font-weight: 100;
    letter-spacing: 4px;
}

.contact-info-text a {
    font-size: 20px;
    text-decoration: none;
    color: var(--main-black-color);
    transition: var(--main-ease-fast);
}

.contact-info-text a::before {
    content: "";
    position: absolute;
    width: 100%;
    transform: scaleX(0);
    height: 1px;
    background-color: var(--main-red-color);
    bottom: 0;
    left: 0;
    transition: transform 300ms ease-in-out;
    transform-origin: bottom right;
}

.contact-info-text:hover a::before {
    transform: scaleX(1);
    transform-origin: bottom left;
}

.contact-info-text:hover a {
    color: var(--main-red-color);
}



/* 404 PAGE */

.error-404 {
    padding: 290px 0px 50px 0px;
    text-align: center;
}

.error-404 .page-title {
    font-size: 75px;
    font-family: var(--dm-mono);
    color: var(--main-white-color);
    background: var(--main-red-color);
    padding: 50px;
}

.error-404 .page-content {
    margin: -0.5em 0 0;
}

.error-404 .page-content p {
    font-size: 30px;
    margin: 60px;
}

.error-404 svg {
    position: absolute;
    top: 0;
    left: 0;
    transform: scale(5.5);
    pointer-events: none;
}

.error-404 svg path {
    stroke: var(--main-black-color);
}

.error-404 .homepage-banner-slide-button {
    position: relative;
}

.error-404 .homepage-banner-slide-button::after {
    content: none;
    padding: 0;
}

.error-404 .page-content a {
    font-size: 25px;
    background: var(--main-red-color);
    color: var(--main-white-color);
    border: 10px solid var(--main-white-color);
    padding: 13px;
    transition: var(--main-ease);
    text-decoration: none;
}

.error-404 .products {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.suggested-products ul.products {
    gap: 0;
    text-align: left;
}

.error-404 .homepage-area-title {
    font-family: var(--saint-delafield);
}

.suggested-products {
    text-align: left;
    padding-top: 80px;
}

.suggested-products .woocommerce {
    padding-top: 40px;
}

.suggested-products .product a:nth-child(1)::before {
    left: 10px;
}

/*---------------------
# LOGIN / ACCOUNT PAGE
----------------------*/
.woocommerce-account .entry-content {
    padding: 0;
}

.woocommerce-account .woocommerce>h2 {
    font-size: 44px;
    padding: 10px 20px;
}

.woocommerce-form-login {
    width: 100%;
    max-width: 350px;
    padding: 20px;
    margin: 10px 0;
}

.page-wrapper .woocommerce-form-login input[type=text],
.page-wrapper .woocommerce-form-login input[type=password] {
    width: 100%;
    border: 1px solid #ccc;
    border-radius: 3px;
    padding: 3px;
    background: #ffffff !important;
    color: var(--main-red-color) !important;
    margin: 10px 0 0;
}

.page-wrapper .woocommerce-form-login button {
    display: block;
    background: var(--main-red-color);
    color: #fff;
    margin: 10px 0 0;
    padding: 10px 20px;
    font-size: 18px;
    line-height: 1;
    font-weight: 700;
    border: 1px solid var(--main-red-color);
    transition: var(--main-ease);
}

.page-wrapper .woocommerce-form-login button:hover {
    background: #fff;
    color: var(--main-red-color);
    cursor: pointer;
}

.page-wrapper .woocommerce-form-login .woocommerce-LostPassword {
    margin: 20px 0 0;
}

.page-wrapper .woocommerce-form-login .woocommerce-LostPassword a {
    font-size: 14px;
    font-style: italic;
    font-weight: 700;
}

.woocommerce-checkout ul.woocommerce-error {
    margin: 0 0 40px;
}

ul.woocommerce-error {
    border-radius: 5px;
    padding: 10px;
    list-style-type: none;
    background: var(--main-red-color);
}

ul.woocommerce-error li {
    color: #fff;
}

/* woocommerce account page */
.woocommerce-MyAccount-navigation {
    padding: 80px 0;
}

/* .woocommerce-MyAccount-content{
    border-left: 1px solid var(--main-red-color);
} */
.woocommerce-account .site-main div.woocommerce {
    min-height: 280px;
    position: relative;
}

.woocommerce-account .site-main div.woocommerce .u-columns.col2-set {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
}

.logged-in.woocommerce-account .woocommerce {
    display: grid;
    grid-template-columns: 240px 1fr;
    gap: 40px;
}

.logged-in.woocommerce-account .woocommerce .woocommerce-MyAccount-content {
    background: rgba(151, 161, 180, 0.1);
    padding: 30px;
    border-left: 1px solid var(--main-red-color);
}

.woocommerce-account .site-main div.woocommerce .u-columns.col2-set>div {
    padding: 20px;
    margin-bottom: 10px;
    background: #fff;
}

.woocommerce-account .site-main div.woocommerce label {
    display: block;
    font-size: 18px;
}

.woocommerce-account .site-main div.woocommerce .u-columns.col2-set>div h2 {
    margin: 0 0 10px;
    padding: 0 0 10px;
    border-bottom: 1px solid #000;
}

.logged-in.woocommerce-account .woocommerce .woocommerce-MyAccount-content input[type="text"],
.logged-in.woocommerce-account .woocommerce .woocommerce-MyAccount-content input[type="email"],
.logged-in.woocommerce-account .woocommerce .woocommerce-MyAccount-content input[type="password"],
.logged-in.woocommerce-account .woocommerce .woocommerce-MyAccount-content input[type="tel"],
.logged-in.woocommerce-account .woocommerce .woocommerce-MyAccount-content .select2-container,
.woocommerce-account .site-main div.woocommerce .u-columns.col2-set>div input[type="text"],
.woocommerce-account .site-main div.woocommerce .u-columns.col2-set>div input[type="email"],
.woocommerce-account .site-main div.woocommerce .u-columns.col2-set>div input[type="password"] {
    width: 100%;
    max-width: 500px;
    line-height: 1.7;
    font-size: 18px;
}

.woocommerce-account .site-main div.woocommerce .u-columns.col2-set>div .woocommerce-LostPassword a {
    font-size: 13px;
    transition: all 0.5s cubic-bezier(0.33, 1, 0.68, 1);
}

.woocommerce-account .site-main div.woocommerce .u-columns.col2-set>div .woocommerce-LostPassword a:hover {
    color: var(--main-red-color);
}

.logged-in.woocommerce-account .woocommerce .woocommerce-MyAccount-content button,
.woocommerce-account .site-main div.woocommerce .u-columns.col2-set>div button {
    color: white;
    background: #09091C;
    border: 1px solid #09091C;
    border-radius: 8px;
    font-size: 18px;
    margin: 10px 0 0;
    padding: 10px 20px;
    transition: all 0.5s cubic-bezier(0.33, 1, 0.68, 1);
}

.logged-in.woocommerce-account .woocommerce .woocommerce-MyAccount-content button:hover,
.woocommerce-account .site-main div.woocommerce .u-columns.col2-set>div button:hover {
    color: #09091C;
    background: #97A1B4;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
    font-size: 18px;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-content a,
.logged-in.woocommerce-account .edit {
    color: var(--main-red-color);
    font-weight: 700;
}

.logged-in.woocommerce-account .woocommerce-MyAccount-content a:hover {
    text-decoration: underline;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style-type: none;
    border: none;
    overflow: hidden;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li {
    position: relative;
    z-index: 2;
    padding: 10px 20px;
    margin: 0;
    border-bottom: 1px solid var(--main-red-color);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
    transition: color 0.4s cubic-bezier(0.33, 1, 0.68, 1);
    text-decoration: none;
    color: var(--main-black-color);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background: var(--main-red-color);
    transform-origin: left center;
    transform: scaleX(0);
    transition: transform 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation ul li:hover a {
    color: #fff;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active::before,
.woocommerce-account .woocommerce-MyAccount-navigation ul li:hover::before {
    transform: scaleX(1);
}

.woocommerce-account .woocommerce-info,
.woocommerce-noreviews,
p.no-comments {
    background-color: #fff;
    padding: 5px 10px;
}

.woocommerce-account .woocommerce-Message .woocommerce-Button {
    margin-right: 10px;
    padding-right: 10px;
    border-right: 1px solid #dadada;
}


/* CART PAGE */


@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-loading-mask {
    min-height: 34px;
    pointer-events: none;
    position: relative
}

.wc-block-components-loading-mask .components-spinner {
    left: 50%;
    margin: 0;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%)
}

.wc-block-components-loading-mask .wc-block-components-loading-mask__children {
    opacity: .25
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-error {
    align-items: center;
    color: #757575;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 48px 0;
    padding: 48px 0;
    text-align: center
}

.wc-block-components-error__header {
    color: #646970;
    font-size: 2em;
    margin: 0
}

.wc-block-components-error__image {
    margin: 0 0 24px;
    width: 25%
}

.wc-block-components-error__text {
    color: #8c8f94;
    font-size: 1.25em;
    margin: 1em 0 0;
    max-width: 60ch
}

.wc-block-components-error__message {
    color: #8c8f94;
    font-style: italic;
    margin: 1em auto 0;
    max-width: 60ch
}

.wc-block-error__button {
    margin: 48px 0 0
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-cart .wc-block-components-shipping-calculator {
    white-space: nowrap
}

.wc-block-cart .wc-block-components-address-form .wc-block-components-country-input:first-of-type,
.wc-block-cart .wc-block-components-address-form .wc-block-components-state-input:first-of-type,
.wc-block-cart .wc-block-components-address-form .wc-block-components-text-input:first-of-type {
    margin-top: 0
}

.wc-block-cart .wc-block-components-totals-footer-item,
.wc-block-cart .wc-block-components-totals-taxes {
    margin: 0
}

.wc-block-cart table.wc-block-cart-items,
.wc-block-cart table.wc-block-cart-items td,
.wc-block-cart table.wc-block-cart-items th {
    margin: 0 0 2em
}

.wc-block-cart--is-loading h2 span,
.wc-block-cart--is-loading th span,
.wc-block-mini-cart__drawer.is-loading h2 span,
.wc-block-mini-cart__drawer.is-loading th span {
    background-color: currentColor !important;
    border: 0 !important;
    border-radius: .25rem;
    box-shadow: none;
    color: currentColor !important;
    display: block;
    display: inline-block;
    line-height: 1;
    max-width: 100% !important;
    min-width: 84px;
    opacity: .15;
    outline: 0 !important;
    overflow: hidden !important;
    pointer-events: none;
    position: relative !important;
    width: 100%;
    z-index: 1
}

.wc-block-cart--is-loading h2 span>*,
.wc-block-cart--is-loading th span>*,
.wc-block-mini-cart__drawer.is-loading h2 span>*,
.wc-block-mini-cart__drawer.is-loading th span>* {
    visibility: hidden
}

.wc-block-cart--is-loading h2 span:after,
.wc-block-cart--is-loading th span:after,
.wc-block-mini-cart__drawer.is-loading h2 span:after,
.wc-block-mini-cart__drawer.is-loading th span:after {
    animation: loading__animation 1.5s ease-in-out infinite;
    background-image: linear-gradient(90deg, currentColor, hsla(0, 0%, 96%, .302), currentColor);
    background-repeat: no-repeat;
    content: " ";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transform: translateX(-100%)
}

@media screen and (prefers-reduced-motion:reduce) {

    .wc-block-cart--is-loading h2 span,
    .wc-block-cart--is-loading th span,
    .wc-block-mini-cart__drawer.is-loading h2 span,
    .wc-block-mini-cart__drawer.is-loading th span {
        animation: none
    }
}

.wc-block-cart--is-loading h2 span:before,
.wc-block-cart--is-loading th span:before,
.wc-block-mini-cart__drawer.is-loading h2 span:before,
.wc-block-mini-cart__drawer.is-loading th span:before {
    content: " "
}

.wc-block-cart--is-loading h2 span,
.wc-block-mini-cart__drawer.is-loading h2 span {
    min-width: 33%
}

.wc-block-cart--is-loading .wc-block-components-product-metadata,
.wc-block-cart--is-loading .wc-block-components-product-price,
.wc-block-cart--is-loading .wc-block-components-quantity-selector,
.wc-block-mini-cart__drawer.is-loading .wc-block-components-product-metadata,
.wc-block-mini-cart__drawer.is-loading .wc-block-components-product-price,
.wc-block-mini-cart__drawer.is-loading .wc-block-components-quantity-selector {
    background-color: currentColor !important;
    border: 0 !important;
    border-radius: .25rem;
    box-shadow: none;
    color: currentColor !important;
    display: block;
    line-height: 1;
    max-width: 100% !important;
    opacity: .15;
    outline: 0 !important;
    overflow: hidden !important;
    pointer-events: none;
    position: relative !important;
    width: 100%;
    z-index: 1
}

.wc-block-cart--is-loading .wc-block-components-product-metadata>*,
.wc-block-cart--is-loading .wc-block-components-product-price>*,
.wc-block-cart--is-loading .wc-block-components-quantity-selector>*,
.wc-block-mini-cart__drawer.is-loading .wc-block-components-product-metadata>*,
.wc-block-mini-cart__drawer.is-loading .wc-block-components-product-price>*,
.wc-block-mini-cart__drawer.is-loading .wc-block-components-quantity-selector>* {
    visibility: hidden
}

.wc-block-cart--is-loading .wc-block-components-product-metadata:after,
.wc-block-cart--is-loading .wc-block-components-product-price:after,
.wc-block-cart--is-loading .wc-block-components-quantity-selector:after,
.wc-block-mini-cart__drawer.is-loading .wc-block-components-product-metadata:after,
.wc-block-mini-cart__drawer.is-loading .wc-block-components-product-price:after,
.wc-block-mini-cart__drawer.is-loading .wc-block-components-quantity-selector:after {
    animation: loading__animation 1.5s ease-in-out infinite;
    background-image: linear-gradient(90deg, currentColor, hsla(0, 0%, 96%, .302), currentColor);
    background-repeat: no-repeat;
    content: " ";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transform: translateX(-100%)
}

@media screen and (prefers-reduced-motion:reduce) {

    .wc-block-cart--is-loading .wc-block-components-product-metadata,
    .wc-block-cart--is-loading .wc-block-components-product-price,
    .wc-block-cart--is-loading .wc-block-components-quantity-selector,
    .wc-block-mini-cart__drawer.is-loading .wc-block-components-product-metadata,
    .wc-block-mini-cart__drawer.is-loading .wc-block-components-product-price,
    .wc-block-mini-cart__drawer.is-loading .wc-block-components-quantity-selector {
        animation: none
    }
}

.wc-block-cart--is-loading .wc-block-components-product-name,
.wc-block-mini-cart__drawer.is-loading .wc-block-components-product-name {
    background-color: currentColor !important;
    border: 0 !important;
    border-radius: .25rem;
    box-shadow: none;
    color: currentColor !important;
    display: block;
    display: inline-block;
    line-height: 1;
    max-width: 100% !important;
    min-width: 84px;
    opacity: .15;
    outline: 0 !important;
    overflow: hidden !important;
    pointer-events: none;
    position: relative !important;
    width: 100%;
    z-index: 1
}

.wc-block-cart--is-loading .wc-block-components-product-name>*,
.wc-block-mini-cart__drawer.is-loading .wc-block-components-product-name>* {
    visibility: hidden
}

.wc-block-cart--is-loading .wc-block-components-product-name:after,
.wc-block-mini-cart__drawer.is-loading .wc-block-components-product-name:after {
    animation: loading__animation 1.5s ease-in-out infinite;
    background-image: linear-gradient(90deg, currentColor, hsla(0, 0%, 96%, .302), currentColor);
    background-repeat: no-repeat;
    content: " ";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transform: translateX(-100%)
}

@media screen and (prefers-reduced-motion:reduce) {

    .wc-block-cart--is-loading .wc-block-components-product-name,
    .wc-block-mini-cart__drawer.is-loading .wc-block-components-product-name {
        animation: none
    }
}

.wc-block-cart--is-loading .wc-block-components-product-name:before,
.wc-block-mini-cart__drawer.is-loading .wc-block-components-product-name:before {
    content: " "
}

.wc-block-cart--is-loading .wc-block-components-product-metadata,
.wc-block-mini-cart__drawer.is-loading .wc-block-components-product-metadata {
    margin-top: .25em;
    min-width: 8em
}

.wc-block-cart--is-loading .wc-block-cart-item__remove-link,
.wc-block-mini-cart__drawer.is-loading .wc-block-cart-item__remove-link {
    visibility: hidden
}

.wc-block-cart--is-loading .wc-block-cart-item__image>a,
.wc-block-mini-cart__drawer.is-loading .wc-block-cart-item__image>a {
    background-color: currentColor !important;
    border: 0 !important;
    border-radius: .25rem;
    box-shadow: none;
    color: currentColor !important;
    display: block;
    line-height: 1;
    max-width: 100% !important;
    opacity: .15;
    outline: 0 !important;
    overflow: hidden !important;
    pointer-events: none;
    position: relative !important;
    width: 100%;
    z-index: 1
}

.wc-block-cart--is-loading .wc-block-cart-item__image>a>*,
.wc-block-mini-cart__drawer.is-loading .wc-block-cart-item__image>a>* {
    visibility: hidden
}

.wc-block-cart--is-loading .wc-block-cart-item__image>a:after,
.wc-block-mini-cart__drawer.is-loading .wc-block-cart-item__image>a:after {
    animation: loading__animation 1.5s ease-in-out infinite;
    background-image: linear-gradient(90deg, currentColor, hsla(0, 0%, 96%, .302), currentColor);
    background-repeat: no-repeat;
    content: " ";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transform: translateX(-100%)
}

@media screen and (prefers-reduced-motion:reduce) {

    .wc-block-cart--is-loading .wc-block-cart-item__image>a,
    .wc-block-mini-cart__drawer.is-loading .wc-block-cart-item__image>a {
        animation: none
    }
}

.wc-block-cart--is-loading .wc-block-components-product-price,
.wc-block-mini-cart__drawer.is-loading .wc-block-components-product-price {
    display: block;
    margin-top: .25em;
    max-width: 3em
}

.wc-block-cart--is-loading .wc-block-components-product-price:before,
.wc-block-mini-cart__drawer.is-loading .wc-block-components-product-price:before {
    content: " "
}

.wc-block-cart--is-loading .wc-block-cart__sidebar .components-card,
.wc-block-mini-cart__drawer.is-loading .wc-block-cart__sidebar .components-card {
    background-color: currentColor !important;
    border: 0 !important;
    border-radius: .25rem;
    box-shadow: none;
    color: currentColor !important;
    display: block;
    line-height: 1;
    max-width: 100% !important;
    min-height: 460px;
    opacity: .15;
    outline: 0 !important;
    overflow: hidden !important;
    pointer-events: none;
    position: relative !important;
    width: 100%;
    z-index: 1
}

.wc-block-cart--is-loading .wc-block-cart__sidebar .components-card>*,
.wc-block-mini-cart__drawer.is-loading .wc-block-cart__sidebar .components-card>* {
    visibility: hidden
}

.wc-block-cart--is-loading .wc-block-cart__sidebar .components-card:after,
.wc-block-mini-cart__drawer.is-loading .wc-block-cart__sidebar .components-card:after {
    animation: loading__animation 1.5s ease-in-out infinite;
    background-image: linear-gradient(90deg, currentColor, hsla(0, 0%, 96%, .302), currentColor);
    background-repeat: no-repeat;
    content: " ";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transform: translateX(-100%)
}

@media screen and (prefers-reduced-motion:reduce) {

    .wc-block-cart--is-loading .wc-block-cart__sidebar .components-card,
    .wc-block-mini-cart__drawer.is-loading .wc-block-cart__sidebar .components-card {
        animation: none
    }
}

.wc-block-cart--is-loading .wc-block-cart__sidebar .components-card:before,
.wc-block-mini-cart__drawer.is-loading .wc-block-cart__sidebar .components-card:before {
    content: " "
}

.wc-block-components-sidebar-layout.wc-block-cart--skeleton {
    display: none
}

.is-loading+.wc-block-components-sidebar-layout.wc-block-cart--skeleton {
    display: flex
}

.wc-block-cart-item__total-price-and-sale-badge-wrapper {
    align-items: flex-end;
    display: flex;
    flex-direction: column
}

.wc-block-cart-item__total-price-and-sale-badge-wrapper .wc-block-components-sale-badge {
    margin-top: 4px
}

.is-mobile .wc-block-cart-item__total .wc-block-components-sale-badge,
.is-small .wc-block-cart-item__total .wc-block-components-sale-badge {
    display: none
}

.is-mobile table.wc-block-cart-items,
.is-small table.wc-block-cart-items {
    margin: 0
}

.is-medium.wc-block-cart .wc-block-components-sidebar .wc-block-cart__totals-title,
.is-mobile.wc-block-cart .wc-block-components-sidebar .wc-block-cart__totals-title,
.is-small.wc-block-cart .wc-block-components-sidebar .wc-block-cart__totals-title {
    display: none
}

.is-large.wc-block-cart {
    margin-bottom: 3em
}

.is-large.wc-block-cart .wc-block-components-radio-control__input {
    left: 0;
    margin: 0
}

.is-large.wc-block-cart .wc-block-cart__totals-title {
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    color: inherit;
    display: inline;
    display: block;
    font-family: inherit;
    font-size: inherit;
    font-size: .75em;
    font-style: inherit;
    font-weight: inherit;
    font-weight: 700;
    letter-spacing: inherit;
    line-height: inherit;
    margin: 0;
    padding: .25rem 0;
    text-align: right;
    text-decoration: inherit;
    text-transform: inherit;
    text-transform: uppercase;
    vertical-align: baseline
}

.is-large.wc-block-cart .wc-block-cart__totals-title textarea {
    font-weight: 700
}

.is-large.wc-block-cart .wc-block-components-sidebar .wc-block-components-shipping-calculator,
.is-large.wc-block-cart .wc-block-components-sidebar .wc-block-components-shipping-rates-control__package:not(.wc-block-components-panel) {
    padding-left: 16px;
    padding-right: 16px
}

.is-large.wc-block-cart .wc-block-cart__payment-options {
    padding: 16px 0 0
}

.is-large.wc-block-cart .wc-block-cart__payment-options:empty {
    padding: 0
}

.wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-empty-cart-block {
    display: none
}

.wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-filled-cart-block {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto 16px;
    position: relative
}

.wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-items-block {
    box-sizing: border-box;
    margin: 0;
    min-height: 10em;
    padding-right: 4.5283018868%;
    width: 65%
}

.wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-line-items-block {
    background-color: currentColor !important;
    border: 0 !important;
    border-radius: .25rem;
    box-shadow: none;
    color: currentColor !important;
    display: block;
    line-height: 1;
    max-width: 100% !important;
    min-height: 15em;
    opacity: .15;
    outline: 0 !important;
    overflow: hidden !important;
    pointer-events: none;
    position: relative !important;
    width: 100%;
    z-index: 1
}

.wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-line-items-block>* {
    visibility: hidden
}

.wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-line-items-block:after {
    animation: loading__animation 1.5s ease-in-out infinite;
    background-image: linear-gradient(90deg, currentColor, hsla(0, 0%, 96%, .302), currentColor);
    background-repeat: no-repeat;
    content: " ";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transform: translateX(-100%)
}

@media screen and (prefers-reduced-motion:reduce) {
    .wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-line-items-block {
        animation: none
    }
}

.wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-totals-block {
    box-sizing: border-box;
    margin: 0;
    min-height: 12em;
    padding-left: 2.2641509434%;
    width: 35%
}

.wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-accepted-payment-methods-block,
.wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-express-payment-block,
.wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-order-summary-block,
.wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-proceed-to-checkout-block {
    background-color: currentColor !important;
    border: 0 !important;
    border-radius: .25rem;
    box-shadow: none;
    color: currentColor !important;
    display: block;
    line-height: 1;
    margin: 0 0 1em;
    max-width: 100% !important;
    min-height: 3em;
    opacity: .15;
    outline: 0 !important;
    overflow: hidden !important;
    pointer-events: none;
    position: relative !important;
    width: 100%;
    z-index: 1
}

.wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-accepted-payment-methods-block>*,
.wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-express-payment-block>*,
.wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-order-summary-block>*,
.wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-proceed-to-checkout-block>* {
    visibility: hidden
}

.wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-accepted-payment-methods-block:after,
.wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-express-payment-block:after,
.wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-order-summary-block:after,
.wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-proceed-to-checkout-block:after {
    animation: loading__animation 1.5s ease-in-out infinite;
    background-image: linear-gradient(90deg, currentColor, hsla(0, 0%, 96%, .302), currentColor);
    background-repeat: no-repeat;
    content: " ";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transform: translateX(-100%)
}

@media screen and (prefers-reduced-motion:reduce) {

    .wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-accepted-payment-methods-block,
    .wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-express-payment-block,
    .wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-order-summary-block,
    .wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-proceed-to-checkout-block {
        animation: none
    }
}

.wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-order-summary-block {
    height: 20em
}

@media only screen and (max-width:700px) {
    .wp-block-woocommerce-cart.is-loading {
        padding-top: 16px
    }

    .wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-filled-cart-block {
        flex-direction: column;
        margin: 0 auto 16px
    }

    .wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-items-block,
    .wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-totals-block {
        padding: 0;
        width: 100%
    }
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.with-scroll-to-top__scroll-point {
    position: relative;
    top: -36px
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-sidebar-layout {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto 16px;
    position: relative
}

.wc-block-components-sidebar-layout .wc-block-must-login-prompt {
    display: block
}

.wc-block-components-sidebar-layout .wc-block-components-main {
    box-sizing: border-box;
    margin: 0;
    padding-right: 4.5283018868%;
    width: 65%
}

.wc-block-components-sidebar {
    box-sizing: border-box;
    margin: 0;
    padding-left: 2.2641509434%;
    width: 35%
}

.wc-block-components-sidebar .wc-block-components-panel>h2 {
    border: 0;
    border-radius: 0;
    font-size: 1em;
    margin: 0;
    padding: 0;
    vertical-align: baseline
}

.is-medium.wc-block-components-sidebar-layout,
.is-mobile.wc-block-components-sidebar-layout,
.is-small.wc-block-components-sidebar-layout {
    flex-direction: column;
    margin: 0 auto 16px
}

.is-medium.wc-block-components-sidebar-layout .wc-block-components-main,
.is-medium.wc-block-components-sidebar-layout .wc-block-components-sidebar,
.is-mobile.wc-block-components-sidebar-layout .wc-block-components-main,
.is-mobile.wc-block-components-sidebar-layout .wc-block-components-sidebar,
.is-small.wc-block-components-sidebar-layout .wc-block-components-main,
.is-small.wc-block-components-sidebar-layout .wc-block-components-sidebar {
    padding: 0;
    width: 100%
}

.is-large .wc-block-components-sidebar .wc-block-components-panel,
.is-large .wc-block-components-sidebar .wc-block-components-totals-coupon,
.is-large .wc-block-components-sidebar .wc-block-components-totals-item {
    padding-left: 16px;
    padding-right: 16px
}

.is-large .wc-block-components-sidebar .wc-block-components-panel .wc-block-components-totals-item {
    padding: 0
}

.wc-block-components-sidebar .wc-block-components-panel>h2 {
    font-family: inherit;
    font-size: inherit;
    font-style: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    text-decoration: inherit;
    text-transform: inherit
}

.wc-block-components-sidebar .wc-block-components-panel>h2 .wc-block-components-panel__button {
    font-weight: 400
}

.theme-twentytwenty .wc-block-components-sidebar .wc-block-components-panel>h2 {
    border: 0;
    border-radius: 0;
    font-size: 1.25em;
    margin: 0;
    padding: 0;
    vertical-align: baseline
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-quantity-selector {
    border-radius: 4px;
    box-sizing: content-box;
    display: flex;
    margin: 0 0 20px;
    position: relative;
    width: 107px
}

.wc-block-components-quantity-selector:after {
    border: 1px solid hsla(0, 0%, 7%, .11);
    border-radius: 4px;
    bottom: 0;
    content: "";
    left: 0;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 0
}

.wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input {
    -moz-appearance: textfield;
    appearance: textfield;
    background: transparent;
    border: 0;
    box-shadow: none;
    color: currentColor;
    flex: 1 1 auto;
    font-size: 1em;
    font-weight: 600;
    line-height: 1;
    margin: 0;
    min-width: 40px;
    order: 2;
    padding: .4em 0;
    text-align: center;
    vertical-align: middle
}

.wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input:focus {
    box-shadow: inset 0 0 1px 1px currentColor;
    outline: none
}

.wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input:disabled {
    opacity: .6
}

.wc-block-components-quantity-selector input::-webkit-inner-spin-button,
.wc-block-components-quantity-selector input::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0
}

.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button {
    background: none transparent;
    border: 0;
    box-shadow: none;
    color: currentColor;
    cursor: pointer;
    font-size: .9em;
    font-style: normal;
    font-weight: 400;
    margin: 0;
    min-width: 30px;
    opacity: .6;
    padding: 0;
    text-align: center;
    text-decoration: none
}

.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:focus {
    box-shadow: inset 0 0 1px 1px currentColor;
    outline: none
}

.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:focus,
.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:hover {
    opacity: 1
}

.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:disabled {
    box-shadow: none;
    cursor: default;
    opacity: .6
}

.wc-block-components-quantity-selector>.wc-block-components-quantity-selector__button--minus {
    border-radius: 4px 0 0 4px;
    order: 1
}

.wc-block-components-quantity-selector>.wc-block-components-quantity-selector__button--plus {
    border-radius: 0 4px 4px 0;
    order: 3
}

.theme-twentyseventeen .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:focus,
.theme-twentyseventeen .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:hover {
    background: none transparent
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-product-price--align-left {
    display: block;
    text-align: left
}

.wc-block-components-product-price--align-center {
    display: block;
    text-align: center
}

.wc-block-components-product-price--align-right {
    display: block;
    text-align: right
}

.wc-block-components-product-price {
    display: block
}

.wc-block-components-product-price .wc-block-all-products .wc-block-components-product-price {
    margin-bottom: 12px
}

.wc-block-components-product-price ins {
    text-decoration: none
}

.wc-block-components-product-price__value.is-discounted {
    margin-left: .5em
}

.is-loading .wc-block-components-product-price:before {
    background-color: currentColor !important;
    border: 0 !important;
    border-radius: .25rem;
    box-shadow: none;
    color: currentColor !important;
    content: ".";
    display: block;
    display: inline-block;
    line-height: 1;
    max-width: 100% !important;
    opacity: .15;
    outline: 0 !important;
    overflow: hidden !important;
    pointer-events: none;
    position: relative !important;
    width: 100%;
    width: 5em;
    z-index: 1
}

.is-loading .wc-block-components-product-price:before>* {
    visibility: hidden
}

.is-loading .wc-block-components-product-price:before:after {
    animation: loading__animation 1.5s ease-in-out infinite;
    background-image: linear-gradient(90deg, currentColor, hsla(0, 0%, 96%, .302), currentColor);
    background-repeat: no-repeat;
    content: " ";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transform: translateX(-100%)
}

@media screen and (prefers-reduced-motion:reduce) {
    .is-loading .wc-block-components-product-price:before {
        animation: none
    }
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-product-name {
    font-size: 1em;
    overflow-wrap: anywhere;
    word-break: break-word;
    -ms-word-break: break-all;
    text-decoration: none;
    color: var(--main-black-color);
    font-weight: 700;
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-product-badge {
    /* border: 1px solid;
    border-radius: 4px; */
    display: inline-block;
    /* font-size: .75em; */
    /* font-weight: 600; */
    color: var(--main-red-color);
    opacity: 0.7;
    /* padding: 0 .66em; */
    text-transform: uppercase;
    white-space: nowrap
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-product-details.wc-block-components-product-details {
    list-style: none;
    margin: .5em 0;
    padding: 0
}

.wc-block-components-product-details.wc-block-components-product-details:last-of-type {
    margin-bottom: 0
}

.wc-block-components-product-details.wc-block-components-product-details li {
    margin-left: 0
}

.wc-block-components-product-details__name,
.wc-block-components-product-details__value {
    display: inline-block
}

.is-large:not(.wc-block-checkout) .wc-block-components-product-details__name {
    font-weight: 700
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-product-metadata {
    font-size: .75em
}

.wc-block-components-product-metadata .wc-block-components-product-metadata__description>p,
.wc-block-components-product-metadata .wc-block-components-product-metadata__variation-data {
    margin: .25em 0
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

table.wc-block-cart-items,
table.wc-block-cart-items td,
table.wc-block-cart-items th {
    background: none !important;
    border: 0;
    margin: 0
}

.editor-styles-wrapper table.wc-block-cart-items,
table.wc-block-cart-items {
    width: 100%
}

.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__header,
table.wc-block-cart-items .wc-block-cart-items__header {
    font-size: .75em;
    text-transform: uppercase
}

.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__header .wc-block-cart-items__header-image,
table.wc-block-cart-items .wc-block-cart-items__header .wc-block-cart-items__header-image {
    width: 100px
}

.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__header .wc-block-cart-items__header-product,
table.wc-block-cart-items .wc-block-cart-items__header .wc-block-cart-items__header-product {
    visibility: hidden
}

.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__header .wc-block-cart-items__header-total,
table.wc-block-cart-items .wc-block-cart-items__header .wc-block-cart-items__header-total {
    text-align: right;
    width: 100px
}

.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__header th,
table.wc-block-cart-items .wc-block-cart-items__header th {
    font-weight: 700
}

.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image img,
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image img {
    margin: 0;
    width: 100%
}

.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link,
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link,
.wc-block-components-totals-coupon-link {
    background: transparent;
    border: 0;
    border-radius: 0;
    /* box-shadow: 1px 1px 3px rgba(0,0,0,0.15); */
    color: var(--main-red-color);
    border: 1px solid var(--main-red-color);
    display: inline;
    font-family: inherit;
    font-size: inherit;
    font-size: .75em;
    font-style: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    margin: 0;
    padding: 5px 10px;
    cursor: pointer;
    text-decoration: none;
    text-shadow: none;
    text-transform: inherit;
    text-transform: none;
    vertical-align: baseline;
    white-space: nowrap;
    transition: var(--main-ease-fast);
}

.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link:active,
.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link:focus,
.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link:hover,
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link:active,
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link:focus,
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link:hover,
.wc-block-components-totals-coupon-link:hover,
.wc-block-components-totals-coupon-link:focus {
    background: red
}

.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link:hover,
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link:hover,
.wc-block-components-totals-coupon-link:hover,
.wc-block-components-totals-coupon-link:focus {
    color: white;
    cursor: pointer;
    text-decoration: none
}

.wc-block-components-totals-coupon-link {
    font-size: 20px;
}

.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name,
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name {
    display: block;
    max-width: -moz-max-content;
    max-width: 70%
}

.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total,
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total {
    font-size: 1em;
    line-height: inherit;
    text-align: right
}

.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-metadata,
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-metadata {
    margin-bottom: .75em
}

.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row.is-disabled,
table.wc-block-cart-items .wc-block-cart-items__row.is-disabled {
    opacity: .5;
    pointer-events: none;
    transition: opacity .2s ease
}

.is-medium table.wc-block-cart-items td,
.is-mobile table.wc-block-cart-items td,
.is-small table.wc-block-cart-items td {
    padding: 0
}

.is-medium table.wc-block-cart-items .wc-block-cart-item__remove-link,
.is-medium table.wc-block-cart-items .wc-block-cart-items__header,
.is-mobile table.wc-block-cart-items .wc-block-cart-item__remove-link,
.is-mobile table.wc-block-cart-items .wc-block-cart-items__header,
.is-small table.wc-block-cart-items .wc-block-cart-item__remove-link,
.is-small table.wc-block-cart-items .wc-block-cart-items__header {
    display: none
}

.is-medium table.wc-block-cart-items:not(.wc-block-mini-cart-items):not(:last-child) .wc-block-cart-items__row,
.is-mobile table.wc-block-cart-items:not(.wc-block-mini-cart-items):not(:last-child) .wc-block-cart-items__row,
.is-small table.wc-block-cart-items:not(.wc-block-mini-cart-items):not(:last-child) .wc-block-cart-items__row {
    border-bottom: 1px solid hsla(0, 0%, 7%, .11)
}

.is-medium table.wc-block-cart-items .wc-block-cart-items__row,
.is-mobile table.wc-block-cart-items .wc-block-cart-items__row,
.is-small table.wc-block-cart-items .wc-block-cart-items__row {
    -ms-grid-columns: 80px 132px;
    display: -ms-grid;
    display: grid;
    grid-template-columns: 80px 132px;
    padding: 16px 0
}

.is-medium table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image,
.is-mobile table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image,
.is-small table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image {
    -ms-grid-column: 1;
    grid-column-start: 1;
    -ms-grid-row: 1;
    grid-row-start: 1;
    padding-right: 16px
}

.is-medium table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__product,
.is-mobile table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__product,
.is-small table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__product {
    -ms-grid-column-span: 2;
    -ms-grid-column-align: stretch;
    -ms-grid-column: 2;
    grid-column-end: 4;
    grid-column-start: 2;
    -ms-grid-row: 1;
    grid-row-start: 1;
    justify-self: stretch;
    padding: 0 16px 16px 0
}

.is-medium table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity,
.is-mobile table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity,
.is-small table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity {
    -ms-grid-row-align: end;
    align-self: end;
    -ms-grid-column: 1;
    grid-column-start: 1;
    -ms-grid-row: 2;
    grid-row-start: 2;
    padding-right: 16px;
    padding-top: 16px;
    vertical-align: bottom
}

.is-medium table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total,
.is-mobile table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total,
.is-small table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total {
    -ms-grid-row: 1;
    grid-row-start: 1
}

.is-medium table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total .wc-block-components-formatted-money-amount,
.is-mobile table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total .wc-block-components-formatted-money-amount,
.is-small table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total .wc-block-components-formatted-money-amount {
    display: inline-block
}

.is-large.wc-block-cart {
    margin-bottom: 3em
}

.is-large.wc-block-cart .wc-block-cart-items {
    border-bottom: 1px solid var(--main-red-color);
    border-spacing: 0
}

.is-large.wc-block-cart .wc-block-cart-items th {
    padding: .25rem 16px .25rem 0;
    white-space: nowrap
}

.is-large.wc-block-cart .wc-block-cart-items td {
    border-top: 1px solid var(--main-red-color);
    padding: 30px 0px 30px 10px;
    vertical-align: top
}

.is-large.wc-block-cart .wc-block-cart-items th:last-child {
    padding-right: 0
}

.is-large.wc-block-cart .wc-block-cart-items td:last-child {
    padding-right: 16px
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-cross-sells-block {
    background-color: currentColor !important;
    border: 0 !important;
    border-radius: .25rem;
    box-shadow: none;
    color: currentColor !important;
    display: block;
    line-height: 1;
    margin-top: 2em;
    max-width: 100% !important;
    min-height: 15em;
    opacity: .15;
    outline: 0 !important;
    overflow: hidden !important;
    pointer-events: none;
    position: relative !important;
    width: 100%;
    z-index: 1
}

.wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-cross-sells-block>* {
    visibility: hidden
}

.wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-cross-sells-block:after {
    animation: loading__animation 1.5s ease-in-out infinite;
    background-image: linear-gradient(90deg, currentColor, hsla(0, 0%, 96%, .302), currentColor);
    background-repeat: no-repeat;
    content: " ";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transform: translateX(-100%)
}

@media screen and (prefers-reduced-motion:reduce) {
    .wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-cross-sells-block {
        animation: none
    }
}

.wp-block-woocommerce-cart.is-loading .wp-block-woocommerce-cart-cross-sells-block h3 {
    display: none
}

.wp-block-woocommerce-cart .wp-block-woocommerce-cart-cross-sells-block .cross-sells-product {
    box-sizing: content-box;
    display: inline-block;
    margin-bottom: 2em;
    padding-right: 5%;
    text-align: center;
    vertical-align: top;
    width: 30%
}

.wp-block-woocommerce-cart .wp-block-woocommerce-cart-cross-sells-block .cross-sells-product:nth-child(3n+3) {
    padding-right: 0
}

.wp-block-woocommerce-cart .wp-block-woocommerce-cart-cross-sells-block .cross-sells-product div .wc-block-components-product-name {
    font-weight: 400
}

.wp-block-woocommerce-cart .wp-block-woocommerce-cart-cross-sells-block .cross-sells-product div .wc-block-components-product-price {
    display: block
}

.wp-block-woocommerce-cart .wp-block-woocommerce-cart-cross-sells-block .cross-sells-product .wc-block-components-product-button__button {
    margin-top: 1em
}

.wp-block-woocommerce-cart .wp-block-woocommerce-cart-cross-sells-block .cross-sells-product .wc-block-components-product-add-to-cart {
    justify-content: center
}

.wp-block-woocommerce-cart .wp-block-woocommerce-cart-cross-sells-block .cross-sells-product .wc-block-components-product-add-to-cart .wc-block-components-product-add-to-cart-button:not(.is-link) {
    background-color: #eee;
    color: #333;
    font-weight: 600;
    margin-top: 1em
}

.wp-block-woocommerce-cart .wp-block-woocommerce-cart-cross-sells-block .cross-sells-product .wc-block-components-product-add-to-cart .wc-block-components-product-add-to-cart-button:not(.is-link):focus,
.wp-block-woocommerce-cart .wp-block-woocommerce-cart-cross-sells-block .cross-sells-product .wc-block-components-product-add-to-cart .wc-block-components-product-add-to-cart-button:not(.is-link):hover {
    background-color: #d5d5d5;
    border-color: #d5d5d5;
    color: #333
}

@media(max-width:480px) {
    .wp-block-woocommerce-cart .wp-block-woocommerce-cart-cross-sells-block .cross-sells-product {
        display: block;
        width: 100%
    }
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wp-block-woocommerce-product-sale-badge {
    display: flex;
    flex-direction: column
}

.wc-block-components-product-sale-badge {
    background: #fff;
    border: 1px solid #43454b;
    border-radius: 4px;
    box-sizing: border-box;
    color: #43454b;
    display: inline-block;
    font-size: .875em;
    font-weight: 600;
    padding: .25em .75em;
    position: static;
    text-align: center;
    text-transform: uppercase;
    width: -moz-fit-content;
    width: fit-content;
    z-index: 9
}

.wc-block-components-product-sale-badge--align-left {
    -ms-grid-row-align: auto;
    align-self: auto
}

.wc-block-components-product-sale-badge--align-center {
    -ms-grid-row-align: center;
    align-self: center
}

.wc-block-components-product-sale-badge--align-right {
    align-self: flex-end
}

.wc-block-components-product-sale-badge span {
    background-color: inherit;
    color: inherit
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.editor-styles-wrapper .wc-block-grid__products .wc-block-grid__product .wc-block-components-product-image,
.wc-block-components-product-image {
    display: block;
    position: relative;
    text-decoration: none
}

.editor-styles-wrapper .wc-block-grid__products .wc-block-grid__product .wc-block-components-product-image a,
.wc-block-components-product-image a {
    border: 0;
    border-radius: inherit;
    box-shadow: none;
    outline: 0;
    text-decoration: none
}

.editor-styles-wrapper .wc-block-grid__products .wc-block-grid__product .wc-block-components-product-image img,
.wc-block-components-product-image img {
    border-radius: inherit;
    height: auto;
    vertical-align: middle;
    width: 100%
}

.editor-styles-wrapper .wc-block-grid__products .wc-block-grid__product .wc-block-components-product-image img[hidden],
.wc-block-components-product-image img[hidden] {
    display: none
}

.editor-styles-wrapper .wc-block-grid__products .wc-block-grid__product .wc-block-components-product-image img[alt=""],
.wc-block-components-product-image img[alt=""] {
    border: 1px solid #f2f2f2
}

.editor-styles-wrapper .wc-block-grid__products .wc-block-grid__product .wc-block-components-product-image .wc-block-components-product-sale-badge--align-left,
.wc-block-components-product-image .wc-block-components-product-sale-badge--align-left {
    left: 4px;
    margin: 0;
    position: absolute;
    right: auto;
    top: 4px
}

.editor-styles-wrapper .wc-block-grid__products .wc-block-grid__product .wc-block-components-product-image .wc-block-components-product-sale-badge--align-center,
.wc-block-components-product-image .wc-block-components-product-sale-badge--align-center {
    left: 50%;
    margin: 0;
    position: absolute;
    right: auto;
    top: 4px;
    transform: translateX(-50%)
}

.editor-styles-wrapper .wc-block-grid__products .wc-block-grid__product .wc-block-components-product-image .wc-block-components-product-sale-badge--align-right,
.wc-block-components-product-image .wc-block-components-product-sale-badge--align-right {
    left: auto;
    margin: 0;
    position: absolute;
    right: 4px;
    top: 4px
}

.is-loading .wc-block-components-product-image {
    background-color: currentColor !important;
    border: 0 !important;
    box-shadow: none;
    color: currentColor !important;
    display: block;
    line-height: 1;
    max-width: 100% !important;
    opacity: .15;
    outline: 0 !important;
    overflow: hidden !important;
    pointer-events: none;
    position: relative !important;
    width: 100%;
    width: auto;
    z-index: 1
}

.is-loading .wc-block-components-product-image>* {
    visibility: hidden
}

.is-loading .wc-block-components-product-image:after {
    animation: loading__animation 1.5s ease-in-out infinite;
    background-image: linear-gradient(90deg, currentColor, hsla(0, 0%, 96%, .302), currentColor);
    background-repeat: no-repeat;
    content: " ";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transform: translateX(-100%)
}

@media screen and (prefers-reduced-motion:reduce) {
    .is-loading .wc-block-components-product-image {
        animation: none
    }
}

.wc-block-components-product-image {
    margin: 0 0 12px
}

.wc-block-product-image__tools-panel .components-input-control {
    margin-bottom: 8px
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-product-title {
    display: block;
    font-size: inherit;
    font-weight: 700;
    line-height: 1.5;
    margin-bottom: 12px;
    margin-top: 0;
    padding: 0
}

.wc-block-components-product-title a {
    color: inherit;
    font-size: inherit
}

.is-loading .wc-block-components-product-title:before {
    background-color: currentColor !important;
    border: 0 !important;
    border-radius: .25rem;
    box-shadow: none;
    color: currentColor !important;
    content: ".";
    display: block;
    display: inline-block;
    line-height: 1;
    max-width: 100% !important;
    opacity: .15;
    outline: 0 !important;
    overflow: hidden !important;
    pointer-events: none;
    position: relative !important;
    width: 100%;
    width: 7em;
    z-index: 1
}

.is-loading .wc-block-components-product-title:before>* {
    visibility: hidden
}

.is-loading .wc-block-components-product-title:before:after {
    animation: loading__animation 1.5s ease-in-out infinite;
    background-image: linear-gradient(90deg, currentColor, hsla(0, 0%, 96%, .302), currentColor);
    background-repeat: no-repeat;
    content: " ";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transform: translateX(-100%)
}

@media screen and (prefers-reduced-motion:reduce) {
    .is-loading .wc-block-components-product-title:before {
        animation: none
    }
}

.is-loading .wc-block-grid .wc-block-components-product-title:before {
    width: 10em
}

.wc-block-components-product-title--align-left {
    text-align: left
}

.wc-block-components-product-title--align-center {
    text-align: center
}

.wc-block-components-product-title--align-right {
    text-align: right
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-product-rating-stars {
    display: block;
    line-height: 1
}

.wc-block-components-product-rating-stars__stars {
    display: inline-block;
    font-family: star;
    font-size: 1em;
    font-weight: 400;
    height: 1.618em;
    line-height: 1.618;
    overflow: hidden;
    position: relative;
    text-align: left;
    width: 5.3em
}

.wc-block-components-product-rating-stars__stars:before {
    color: inherit;
    content: "SSSSS";
    left: 0;
    opacity: .5;
    position: absolute;
    right: 0;
    top: 0;
    white-space: nowrap
}

.wc-block-components-product-rating-stars__stars span {
    color: inherit;
    left: 0;
    overflow: hidden;
    padding-top: 1.5em;
    position: absolute;
    right: 0;
    top: 0
}

.wc-block-components-product-rating-stars__stars span:before {
    color: inherit;
    content: "SSSSS";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    white-space: nowrap
}

.wc-block-components-product-rating-stars__link {
    display: inline-block;
    font-size: .875em;
    height: 1.618em;
    text-align: inherit;
    width: 100%
}

.wc-block-all-products .wc-block-components-product-rating-stars {
    margin-bottom: 12px;
    margin-top: 0
}

.wc-block-components-product-rating-stars__norating-container {
    align-items: center;
    display: inline-flex;
    flex-direction: row;
    gap: 8px
}

.wc-block-components-product-rating-stars__norating {
    -webkit-text-stroke: 2px var(--wp--preset--color--black, #000);
    display: inline-block;
    font-family: star;
    font-size: 1em;
    font-weight: 400;
    height: 1.618em;
    line-height: 1.618;
    overflow: hidden;
    position: relative;
    width: 1.5em
}

.wc-block-components-product-rating-stars__norating:before {
    color: transparent;
    content: "S";
    left: 0;
    position: absolute;
    right: 0;
    text-align: center;
    top: 0;
    white-space: nowrap
}

.wp-block-woocommerce-single-product .wc-block-components-product-rating__stars {
    margin: 0
}

.wc-block-all-products .is-loading .wc-block-components-product-rating,
.wp-block-query .is-loading .wc-block-components-product-rating {
    background-color: currentColor !important;
    border: 0 !important;
    border-radius: .25rem;
    box-shadow: none;
    color: currentColor !important;
    display: block;
    line-height: 1;
    max-width: 100% !important;
    opacity: .15;
    outline: 0 !important;
    overflow: hidden !important;
    pointer-events: none;
    position: relative !important;
    width: 100%;
    width: 7em;
    z-index: 1
}

.wc-block-all-products .is-loading .wc-block-components-product-rating>*,
.wp-block-query .is-loading .wc-block-components-product-rating>* {
    visibility: hidden
}

.wc-block-all-products .is-loading .wc-block-components-product-rating:after,
.wp-block-query .is-loading .wc-block-components-product-rating:after {
    animation: loading__animation 1.5s ease-in-out infinite;
    background-image: linear-gradient(90deg, currentColor, hsla(0, 0%, 96%, .302), currentColor);
    background-repeat: no-repeat;
    content: " ";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transform: translateX(-100%)
}

@media screen and (prefers-reduced-motion:reduce) {

    .wc-block-all-products .is-loading .wc-block-components-product-rating,
    .wp-block-query .is-loading .wc-block-components-product-rating {
        animation: none
    }
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wp-block-button.wc-block-components-product-button {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 12px;
    justify-content: center;
    white-space: normal;
    word-break: break-word
}

.wp-block-button.wc-block-components-product-button .wp-block-button__link {
    display: inline-flex;
    font-size: 1em;
    justify-content: center;
    text-align: center;
    white-space: normal;
    word-break: break-word
}

.wp-block-button.wc-block-components-product-button .wp-block-button__link.loading {
    opacity: .25
}

.wp-block-button.wc-block-components-product-button .wp-block-button__link.loading:after {
    animation: spin 2s linear infinite;
    content: "";
    display: inline-block;
    font-family: WooCommerce;
    height: auto;
    margin-left: .5em;
    margin-right: 0;
    width: auto
}

.wp-block-button.wc-block-components-product-button a[hidden] {
    display: none
}

@keyframes slideOut {
    0% {
        transform: translateY(0)
    }

    to {
        transform: translateY(-100%)
    }
}

@keyframes slideIn {
    0% {
        opacity: 0;
        transform: translateY(90%)
    }

    to {
        opacity: 1;
        transform: translate(0)
    }
}

.wp-block-button.wc-block-components-product-button.align-left {
    align-items: flex-start
}

.wp-block-button.wc-block-components-product-button.align-right {
    align-items: flex-end
}

.wp-block-button.wc-block-components-product-button .wc-block-components-product-button__button {
    align-items: center;
    border-style: none;
    display: inline-flex;
    justify-content: center;
    line-height: inherit;
    overflow: hidden;
    white-space: normal;
    word-break: break-word
}

.wp-block-button.wc-block-components-product-button .wc-block-components-product-button__button span.wc-block-slide-out {
    animation: slideOut .1s linear 1 normal forwards
}

.wp-block-button.wc-block-components-product-button .wc-block-components-product-button__button span.wc-block-slide-in {
    animation: slideIn .1s linear 1 normal
}

.wp-block-button.wc-block-components-product-button .wc-block-components-product-button__button--placeholder {
    background-color: currentColor !important;
    border: 0 !important;
    border-radius: .25rem;
    box-shadow: none;
    color: currentColor !important;
    display: block;
    line-height: 1;
    max-width: 100% !important;
    min-height: 3em;
    min-width: 8em;
    opacity: .15;
    outline: 0 !important;
    overflow: hidden !important;
    pointer-events: none;
    position: relative !important;
    width: 100%;
    z-index: 1
}

.wp-block-button.wc-block-components-product-button .wc-block-components-product-button__button--placeholder>* {
    visibility: hidden
}

.wp-block-button.wc-block-components-product-button .wc-block-components-product-button__button--placeholder:after {
    animation: loading__animation 1.5s ease-in-out infinite;
    background-image: linear-gradient(90deg, currentColor, hsla(0, 0%, 96%, .302), currentColor);
    background-repeat: no-repeat;
    content: " ";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transform: translateX(-100%)
}

@media screen and (prefers-reduced-motion:reduce) {
    .wp-block-button.wc-block-components-product-button .wc-block-components-product-button__button--placeholder {
        animation: none
    }
}

.wc-block-all-products .wp-block-button.wc-block-components-product-button {
    margin-bottom: 12px
}

.is-loading .wc-block-components-product-button>.wc-block-components-product-button__button {
    background-color: currentColor !important;
    border: 0 !important;
    border-radius: .25rem;
    box-shadow: none;
    color: currentColor !important;
    display: block;
    line-height: 1;
    max-width: 100% !important;
    min-height: 3em;
    min-width: 8em;
    opacity: .15;
    outline: 0 !important;
    overflow: hidden !important;
    pointer-events: none;
    position: relative !important;
    width: 100%;
    z-index: 1
}

.is-loading .wc-block-components-product-button>.wc-block-components-product-button__button>* {
    visibility: hidden
}

.is-loading .wc-block-components-product-button>.wc-block-components-product-button__button:after {
    animation: loading__animation 1.5s ease-in-out infinite;
    background-image: linear-gradient(90deg, currentColor, hsla(0, 0%, 96%, .302), currentColor);
    background-repeat: no-repeat;
    content: " ";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transform: translateX(-100%)
}

@media screen and (prefers-reduced-motion:reduce) {
    .is-loading .wc-block-components-product-button>.wc-block-components-product-button__button {
        animation: none
    }
}

.theme-twentytwentyone .editor-styles-wrapper .wc-block-components-product-button .wp-block-button__link {
    background-color: var(--button--color-background);
    border-color: var(--button--color-background);
    color: var(--button--color-text)
}

.wp-block-button.is-style-outline .wp-block-button__link {
    border: 2px solid
}

.wp-block-button.is-style-outline .wp-block-button__link:not(.has-text-color) {
    color: currentColor
}

.wp-block-button.is-style-outline .wp-block-button__link:not(.has-background) {
    background-color: transparent;
    background-image: none
}

.wp-block-button.has-custom-width .wp-block-button__link {
    box-sizing: border-box
}

.wp-block-button.wp-block-button__width-25 .wp-block-button__link {
    width: 25%
}

.wp-block-button.wp-block-button__width-50 .wp-block-button__link {
    width: 50%
}

.wp-block-button.wp-block-button__width-75 .wp-block-button__link {
    width: 75%
}

.wp-block-button.wp-block-button__width-100 .wp-block-button__link {
    width: 100%
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.is-medium .wc-block-cart__sidebar,
.is-mobile .wc-block-cart__sidebar,
.is-small .wc-block-cart__sidebar {
    margin-bottom: 24px;
    order: 0
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-express-payment {
    margin: auto;
    position: relative
}

.wc-block-components-express-payment .wc-block-components-express-payment__event-buttons {
    margin: 0;
    overflow: hidden;
    padding: 0;
    text-align: center;
    width: 100%
}

.wc-block-components-express-payment .wc-block-components-express-payment__event-buttons>li {
    margin: 0;
    width: 100%
}

.wc-block-components-express-payment .wc-block-components-express-payment__event-buttons>li>img {
    height: 48px;
    width: 100%
}

.wc-block-components-express-payment--checkout {
    margin-top: 12px
}

.wc-block-components-express-payment--checkout .wc-block-components-express-payment__event-buttons {
    grid-gap: 10px;
    display: -ms-grid;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(calc(33% - 10px), 1fr));
    list-style: none
}

@media(max-width:782px) {
    .wc-block-components-express-payment--checkout .wc-block-components-express-payment__event-buttons {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr
    }
}

.wc-block-components-express-payment--checkout .wc-block-components-express-payment__title-container {
    display: flex;
    flex-direction: row;
    left: 0;
    position: absolute;
    right: 0;
    top: -4px;
    vertical-align: middle
}

.wc-block-components-express-payment--checkout .wc-block-components-express-payment__title-container:before {
    border-left: 1px solid hsla(0, 0%, 7%, .11);
    border-color: hsla(0, 0%, 7%, .11) hsla(0, 0%, 7%, .11) currentcolor;
    border-radius: 4px 0 0 0;
    border-top: 1px solid hsla(0, 0%, 7%, .11);
    content: "";
    display: block;
    height: 3px;
    margin-right: 12px;
    pointer-events: none;
    width: 10px
}

.wc-block-components-express-payment--checkout .wc-block-components-express-payment__title-container:after {
    border-color: currentcolor currentcolor hsla(0, 0%, 7%, .11) hsla(0, 0%, 7%, .11);
    border-radius: 0 4px 0 0;
    border-right: 1px solid hsla(0, 0%, 7%, .11);
    border-top: 1px solid hsla(0, 0%, 7%, .11);
    content: "";
    display: block;
    flex-grow: 1;
    height: 3px;
    margin-left: 12px;
    pointer-events: none
}

.wc-block-components-express-payment--checkout .wc-block-components-express-payment__title {
    flex-grow: 0;
    transform: translateY(-50%)
}

.wc-block-components-express-payment--checkout .wc-block-components-express-payment__content {
    border: 1px solid hsla(0, 0%, 7%, .11);
    border-radius: 0 0 4px 4px;
    border-top: 0;
    padding: 20px 24px 24px
}

.wc-block-components-express-payment--checkout .wc-block-components-express-payment__content>p {
    margin-bottom: 1em
}

.wc-block-components-express-payment--cart .wc-block-components-express-payment__event-buttons>li {
    padding-bottom: 16px;
    text-align: center;
    width: 100%
}

.wc-block-components-express-payment--cart .wc-block-components-express-payment__event-buttons>li:last-child {
    padding-bottom: 0
}

.wc-block-components-express-payment-continue-rule {
    align-items: center;
    display: flex;
    margin: 24px 0;
    padding: 0 24px;
    text-align: center
}

.wc-block-components-express-payment-continue-rule:before {
    margin-right: 10px
}

.wc-block-components-express-payment-continue-rule:after {
    margin-left: 10px
}

.wc-block-components-express-payment-continue-rule:after,
.wc-block-components-express-payment-continue-rule:before {
    border-bottom: 1px solid hsla(0, 0%, 7%, .11);
    content: " ";
    flex: 1
}

.wc-block-components-express-payment-continue-rule--cart {
    margin: 16px 0;
    text-transform: uppercase
}

.theme-twentynineteen .wc-block-components-express-payment__title:before {
    display: none
}

.theme-twentytwenty .wc-block-components-express-payment .wc-block-components-express-payment__title {
    padding-left: 12px;
    padding-right: 12px
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-payment-method-label--with-icon {
    display: inline-block;
    vertical-align: middle
}

.wc-block-components-payment-method-label--with-icon>img,
.wc-block-components-payment-method-label--with-icon>svg {
    margin: -2px 4px 0 0;
    vertical-align: middle
}

.is-mobile .wc-block-components-payment-method-label--with-icon>img,
.is-mobile .wc-block-components-payment-method-label--with-icon>svg,
.is-small .wc-block-components-payment-method-label--with-icon>img,
.is-small .wc-block-components-payment-method-label--with-icon>svg {
    display: none
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-payment-method-icons {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 0 14px
}

.wc-block-components-payment-method-icons .wc-block-components-payment-method-icon {
    display: inline-block;
    height: 24px;
    margin: 0 4px 2px;
    max-height: 24px;
    max-width: 38px;
    padding: 0;
    width: auto
}

.wc-block-components-payment-method-icons--align-left {
    justify-content: flex-start
}

.wc-block-components-payment-method-icons--align-left .wc-block-components-payment-method-icon {
    margin-left: 0;
    margin-right: 8px
}

.wc-block-components-payment-method-icons--align-right {
    justify-content: flex-end
}

.wc-block-components-payment-method-icons--align-right .wc-block-components-payment-method-icon {
    margin-left: 8px;
    margin-right: 0
}

.wc-block-components-payment-method-icons:last-child {
    margin-bottom: 0
}

.is-mobile .wc-block-components-payment-method-icons .wc-block-components-payment-method-icon,
.is-small .wc-block-components-payment-method-icons .wc-block-components-payment-method-icon {
    height: 16px
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-cart__submit {
    margin: 0 0 16px;
    position: relative
}

.wc-block-cart__submit-button {
    box-sizing: border-box;
    margin: 0;
    width: 100%
}

.wc-block-cart .wc-block-cart__submit-container {
    padding: 0
}

@media(min-width:783px) {
    .wc-block-cart .wc-block-cart__submit-container--sticky {
        display: none
    }
}

@media(max-width:782px) {
    .wc-block-cart .wc-block-cart__submit-container--sticky {
        background: #fff;
        bottom: 0;
        box-sizing: border-box;
        left: 0;
        padding: 16px;
        position: fixed;
        width: 100%;
        z-index: 9999
    }

    .wc-block-cart .wc-block-cart__submit-container--sticky:before {
        box-shadow: 0 -10px 20px 10px currentColor;
        color: hsla(0, 0%, 80%, .3);
        content: "";
        height: 100%;
        left: 0;
        position: absolute;
        right: 0;
        top: 0
    }
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-button:not(.is-link) {
    align-items: center;
    display: inline-flex;
    height: auto;
    justify-content: center;
    position: relative;
    text-align: center;
    transition: box-shadow .1s linear
}

.wc-block-components-button:not(.is-link):focus {
    box-shadow: 0 0 0 2px #0675c4;
    box-shadow: inset 0 0 0 1px #fff, 0 0 0 2px #0675c4;
    outline: 3px solid transparent
}

.wc-block-components-button:not(.is-link) .wc-block-components-button__text {
    background-color: #222;
    border-radius: 4px;
    border-style: none;
    box-sizing: border-box;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    font-size: 16px;
    line-height: 1.5;
    margin: 0;
    max-width: none;
    min-height: 44px;
    min-width: 10px;
    outline: none;
    overflow: hidden;
    padding: 9px 20px 8px;
    position: relative;
    text-align: center;
    text-transform: none;
    user-select: none;
    -webkit-user-select: none;
    touch-action: manipulation;
    width: 100%;
    transition: var(--main-ease-fast);
}

.wc-block-components-button:not(.is-link) .wc-block-components-button__text:focus,
.wc-block-components-button:not(.is-link) .wc-block-components-button__text:hover {
    opacity: .75;
}

.wc-block-components-button:not(.is-link) .wc-block-components-button__text>svg {
    fill: currentColor
}

.wc-block-components-button:not(.is-link) .wc-block-components-spinner+.wc-block-components-button__text {
    visibility: hidden
}

.wc-block-components-button:not(.is-link).text {
    color: #1e1e1e
}

.wc-block-components-button:not(.is-link).text:hover {
    opacity: .9
}

.wc-block-components-button:not(.is-link).outlined {
    background: transparent;
    color: currentColor
}

.wc-block-components-button:not(.is-link).outlined:not(:focus) {
    box-shadow: inset 0 0 0 1px currentColor
}

.wc-block-components-button:not(.is-link).outlined:active,
.wc-block-components-button:not(.is-link).outlined:disabled,
.wc-block-components-button:not(.is-link).outlined:focus,
.wc-block-components-button:not(.is-link).outlined:hover {
    background-color: #1e1e1e;
    color: #fff
}

.wc-block-components-button:not(.is-link).outlined:hover {
    background-color: #1e1e1e;
    color: #fff;
    opacity: 1
}

body:not(.woocommerce-block-theme-has-button-styles) .wc-block-components-button:not(.is-link) {
    min-height: 3em
}

body:not(.woocommerce-block-theme-has-button-styles) .wc-block-components-button:not(.is-link):focus {
    box-shadow: 0 0 0 2px #0675c4;
    box-shadow: inset 0 0 0 1px #fff, 0 0 0 2px #0675c4;
    outline: 3px solid transparent
}

body:not(.woocommerce-block-theme-has-button-styles) .wc-block-components-button:not(.is-link).text {
    color: #1e1e1e
}

body:not(.woocommerce-block-theme-has-button-styles) .wc-block-components-button:not(.is-link).text:hover {
    opacity: .9
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-spinner {
    box-sizing: content-box;
    color: inherit;
    font-size: 1.25em;
    height: 100%;
    position: absolute;
    text-align: center;
    width: 100%
}

.wc-block-components-spinner:after {
    animation: spinner__animation 1s linear infinite;
    backface-visibility: hidden;
    border: .2em solid;
    border-left: .2em solid transparent;
    border-radius: 50%;
    box-sizing: border-box;
    content: " ";
    height: 1em;
    left: 50%;
    margin: -.5em 0 0 -.5em;
    position: absolute;
    top: 50%;
    transform: translateZ(0) scale(.5);
    transform-origin: 50% 50%;
    width: 1em
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.editor-styles-wrapper .wc-block-cart__empty-cart__title,
.wc-block-cart__empty-cart__title {
    font-size: 1.5vw;
}

.wc-block-cart__empty-cart__title.with-empty-cart-icon:before {
    background-color: currentColor;
    content: "";
    display: block;
    height: 5em;
    margin: 1em auto;
    mask-image: url(data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAYAAAD0eNT6AAAACXBIWXMAAAAHAAAABwG4IbDbAAAAGXRFWHRTb2Z0d2FyZQB3d3cuaW5rc2NhcGUub3Jnm+48GgAAEz9JREFUeJzt3V2o7fl91/F3JjNpEkYzrSklaUxjjE8pTG/aqlBB40OKowhetCCC3hgrQk0por0SRKvGila90qA3gjeSFNvYaomKKFaZQrRWMz7Eqmnt6TQ10Tw0OUnGiz2b6cycmdn7nP/6P31fL/jfzMV//RZrsT/vs/beswsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbu1VWx8ADuCh6m3Vb6i+tnqserR6zYZn4jlfqD5dfbL66eo/VT9VfXnDM8HuCQB4sYeqb6x+17PXN1av2/RE3Nbnqierf/Ls9WSCAICX8KbqT1X/rXrGdarr49VfrL4uAHjWr6r+bnW37YfKddnrbvV3uvqWDgBDvaH6m9Xn236YXOten6/+evXLA2CUb63+Z9sPkWvb62eq3xcAp/dI9Tfafnhc+7q+v3o4AE7pjdWH235sXPu8/kX1NcEQfg2QKX5l9U+rd2x9EHbtp6p3Vf9943PAxQkAJnhrV+P/q7c+CIfwP7qKgI9tfRC4JAHA2X119WPV27c+CIfyseo3VU9vfRC4lIe2PgBc0GurH8j4c3tvrz5YfcXWB4FLefXWB4ALen/1e7c+BIf11urN1T/c+iAA3Nzvb/ufKned4/q24IT8DABn9LXVv6++auuDcAqfqB7v6n8aBKfhZwA4o7+S8Wc5v6J639aHgKX5BICz+c3Vv8p7m2U9U/2Wrt5bcAq+SHI2/7qrX9+Cpf3LriIATsG3ADiT35rx53K+5dkLTsEfv+BMvmuFx7hb/dfq49UnV3g8Xtlj1VuqX9Plv6Z9d1efBACwE2+rvtTlfhXsP1R/tKsfCGOf3lh9R/WTXe598KXq69Z6QgC8sj/dZb7gf6b6E/m07Ege6erToM92mffEn1zvqQDwSj7S8l/ofyHf8z2y31j9XMu/L358zScBwEt7W5f5l/83rPgcuIxv6Oq1XPr98dY1nwQA9/aHWv4L/B9e8wlwUX+g5d8ff3DVZwDAPb2/Zb+4/9C6x2cFH2rZ98jfWvf4ANzLT7TsF/dvWvf4rOCbW/Y98u/WPT4AL/RQ9bmW+8L+z9Y9Piv65y33PvlM/k+qHJz/EyBH95bqtQvez99+P68fXPBer6/evOD9YHUCgKN728L3+5GF78d+/PDC93v7wveDVQkAju4NC97ri9VTC96PffloV6/xUn7ZgveC1QkAju7RBe/1c9WXF7wf+/Ll6ukF7ycAODQBwNG9fsF7/fyC92KflgyAJeMTVicAOLpXL3ivuwvei31a8jVe8r0HqxMAADCQAACAgQQAAAwkAABgIAEAAAMJAAAYSAAAwEACAAAGEgAAMJAAAICBBAAADCQAAGAgAQAAAwkAABhIAADAQAIAAAYSAAAwkAAAgIEEAAAMJAAAYCABAAADCQAAGEgAAMBAAgAABhIAADCQAACAgQQAAAwkAABgIAEAAAMJAAAYSAAAwEACAAAGEgAAMJAAAICBBAAADCQAAGAgAQAAAwkAABhIAADAQAIAAAYSAAAwkAAAgIEEAAAMJAAAYCABAAADCQAAGEgAAMBAAgAABhIAADCQAACAgQQAAAwkAABgIAEAAAMJAAAY6OGtD3BhX1l9/daH4KLeseC9Hq2+ZcH7sT+PLnivd+T9cnY/Wf2frQ9xKa/a+gAX9kT1Q1sfAoBD+j3Vh7Y+xKX4FgAADCQAAGAgAQAAAwkAABhIAADAQAIAAAYSAAAwkAAAgIEEAAAMJAAAYCABAAADCQAAGEgAAMBAAgAABhIAADCQAACAgQQAAAz08NYHOJjPb30AXuTVLfc+fqb6wkL3Yp9eU71qoXt9sfrSQvdiOV+x9QHYhye6+qK+xHVn5bNzM+9pudf4yZXPzvqebLn3y3tWPjs3c6flXuMnVj77qnwLAAAGEgAAMJAAAICBBAAADCQAAGAgAQAAAwkAABhIAADAQAIAAAYSAAAwkAAAgIEEAAAMJAAAYCABAAADCQAAGEgAAMBAAgAABhIAADCQAACAgQQAAAwkAABgIAEAAAMJAAAYSAAAwEACAAAGEgAAMJAAAICBBABH98xO78U+eb/AswQAR/eJBe/18wvei336hQXv9fSC94LVCQCO7uM7vRf79L8WvJf3C4cmADi6H2+5f7n/6EL3Yb8+vNB9PlF9ZKF7wSYEAEf3peoDC9znU9WPLHAf9u0fVf93gfv8g+qLC9wHNiMAOIM/W332Ae/xl1pmGNi3T1Xve8B7fK768wucBbigJ7r6Sd0lrjsrn53b+ePd/2v7Y9Vr1z8yG3ld9W+7//fLH1v/yNzCnZb7uv/EymdnQQJglu/r9q/rR6s3bXFYNvXm6qlu/375y1scllsRAFQCYKLvqD7dzV7TH6ge2+aY7MBXVj/Yzd4r/6/6I9sck1sSAFQCYKo3VX+tq1/TeuHr+IvVh6rfvtnp2Jvf2dUPB/5iL36/fLz6q9XXbHY6bksA3NDDWx8ALuB/V++tvqv6tdVbqtc/+98/2tUnBHDtR5+9Hq1+fVcB+dmuxv8/dzUEcDoCgDN7pqvv8z619UE4hE9XT259CFiLXwMEgIEEAAAMJAAAYCABAAADCQAAGEgAAMBAAgAABhIAADCQAACAgQQAAAwkAABgIAEAAAMJAAAYSAAAwEACAAAGEgAAMJAAAICBBAAADCQAAGAgAQAAAwkAABhIAADAQAIAAAYSAAAwkAAAgIEEAAAMJAAAYCABAAADCQAAGEgAAMBAAgAABhIAADCQAACAgQQAAAwkAABgIAEAAAMJAAAYSAAAwEACAAAGEgAAMJAAAICBBAAADCQAmOpbq/dufQgu4vHqfdWrtj4I7NnDWx8ANvDu6oPVa6vXVX9h2+OwoMerD1dvrL6qek/15U1PBGziieqZha47K5+dy3h39bme/9p+z6YnYimPV0/3/Nf2/fmkc5o7Lfd1/4mVz86CBAC/1L3GXwScw73GXwTMJACoBADPebnxFwHH9nLjLwLmEQBUAoArNxl/EXBMNxl/ETCLAKASANxu/EXAsdxm/EXAHAKASgBMdz/jLwKO4X7G//r624mAMxMAVAJgsgcZfxGwbw8y/iLg/AQAlQCYaonxFwH7tMT4i4BzEwBUAmCiJcdfBOzLkuMvAs5LAFAJgGkuMf4iYB8uMf4i4JwEAJUAmOSS4y8CtnXJ8RcB5yMAqATAFN/U5cf/+vrulZ4TV9YY/+vre1d6TlyWALghxcsZfKT64ZUe6/vyScBafukf9rm0O9XfW+FxgJX4BGCOR6oPtM6/FJ9JBFzamv/y/9nqnes8LVbgEwAqATCNCDgH48+DEABUAmAiEXBsxp8HJQCoBMBUIuCYjD9LEABUAmAyEXAsxp+lCAAqATCdCDgG48+SBACVAEAE7J3xZ2kCgEoAcEUE7JPx5xIEAJUA4DkiYF+MP5ciAKgEAM8nAvbB+HNJAoBKAPBiImBbxp9LEwBUAoB7EwHbMP6sQQBQCQBemghYl/FnLQKASgDw8kTAOow/axIAVAKAVyYCLsv4szYBQCUAuBkRcBnGny0IACoBwM2JgGUZf7YiAKgEALcjApZh/NmSAKASANyeCHgwxp+tCQAqAcD9EQH3x/izBwKASgBw/0TA7Rh/9kIAUAkAHowIuBnjz54IACoBwIMTAS/P+LM3AoBKALAMEXBvxp89EgBUAoDliIDnM/7slQCgEgAsSwRcMf7smQCgEgAsb3oEGH/2TgBQCQAuY2oEGH+OQABQCQAuZ1oEGH+OQgBQCQAua0oEGH+ORABQCQAu7+wRYPw5GgFAJQBYx1kjwPhzRAKASgCwnrNFgPHnqAQAlQBgXWeJAOPPkQkAKgHA+o4eAcafoxMAVAKAbRw1Aow/ZyAAqAQA2zlaBBh/zkIAUAkAtnWUCDD+nIkAoBIAbG/vEWD8ORsBQCUA2Ie9RoDx54wEAJUAYD/2FgHGn7MSAFQCgH3ZSwQYf85MAFAJAPZn6wgw/pydAKASAOzTVhFg/JlAAFAJAPZr7Qj4/ow/MwiAG3po6wPAUHerb68+uNLjfWf1xhUe5071ruo/rvBYwAMQALCdtSPg0ow/HIgAgG2dJQKMPxyMAIDtHT0CjD8ckACAfThqBBh/OCgBAPtxtAgw/nBgAgD25SgRYPzh4AQA7M/eI8D4wwkIANinvUaA8YeTEACwX3uLAOMPJyIAYN/2EgHGH05GAMD+bR0Bxh9OSADAMWwVAcYfTkoAwHHcrf5c9YUVH/PvZ/zhlAQAHMfj1T+uXrPiY763+p4VHw9YiQCAY3i8+nDr/EnfF/reRACcjgCA/dty/K+JADgZAQD7tofxvyYC4EQEAOzXnsb/mgiAkxAAsE97HP9rIgBOQADA/ux5/K+JADg4AQD7coTxvyYC4MAEAOzHkcb/mgiAgxIAsA9HHP9rIgAOSADA9o48/tdEAByMAIBtnWH8r4kAOBABANtZc/w/v8JjlAiAwxAAsI01x/9O9c2t96eERQCwuSeqZxa67qx8ds7r8erplntvvtz1s9U7n33cR6oPrPS4zyQC2MadlnsPP7Hy2VmQAGBvthr/ayKAsxMAVAKAfdl6/K+JAM5MAFAJAPZjL+N/TQRwVgKASgCwD3sb/2sigDMSAFQCgO3tdfyviQDORgBQCQC2tffxvyYCOBMBQCUA2M5Rxv+aCOAsBACVAGAbRxv/ayKAMxAAVAKA9R11/K+JAI5OAFAJANZ19PG/JgI4MgFAJQBYz1nG/5oI4KgEAJUAYB1nG/9rIoAjEgBUAoDLO+v4XxMBHI0AoBIAXNbZx/+aCOBIBACVAOBypoz/NRHAUQgAKgHAZUwb/2sigCMQAFQCgOVNHf9rIoC9EwBUAoBlTR//ayKAPRMAVAKA5Rj/5xMB7JUAoBIALMP435sIYI8EAJUA4MEZ/5cnAtgbAUAlAHgwxv9mRAB7IgCoBAD3z/jfjghgLwQAlQDg/hj/+yMC2AMBQCUAuD3j/2BEAFsTAFQCgNsx/ssQAWxJAFAJAG7O+C9LBLAVAUAlALgZ438ZIoAtCAAqAcArM/6XJQJYmwCgEgC8POO/DhHAmgQAlQDgpRn/dYkA1iIAqAQA92b8tyECWIMAoBIAvJjx35YI4NIEAJUA4PmM/z6IAC5JAFAJAJ5j/PdFBHApAoBKAHDF+O+TCOASBACVAMD4750IYGkCgEoATGf8j0EEsCQBQCUAJjP+xyICWIoAoBIAUxn/YxIBLEEAUAmAiYz/sYkAHpQAoBIA0xj/cxABPAgBQCUAJjH+5yICuF8CgEoATPHO1hv/n6l+3TpPa7xHqg+2XgR85zpPiwsTADf00NYHgAX8dPWxFR7nTvU7qqdWeCzqbvVtXUXApX22+okVHgdYiU8A5nhD9W+63L8Ofey/nUt/O+Az1W9b7dlwaT4BoBIA01wqAoz/9i4VAcb/fAQAlQCYaOkIMP77sXQEGP9zEgBUAmCqpSLA+O/PUhFg/M9LAFAJgMkeNAKM/349aAQY/3MTAFQCYLr7jQDjv3/3GwHG//wEAJUA4PYRYPyP47YR8JnqXZuclDUJACoBwJWbRoDxP56bRoDxn0MAUAkAnvNKEWD8j+uVIsD4zyIAqAQAz/dSEWD8j++lIsD4zyMAqAQAL/bCCDD+5/HCCDD+MwkAKgHAvV1HgPE/n+sIMP5zCYAbenjrA8AGPlW9u/rq6r9sfBaWdbf69urrq49sfBbYNQHAVJ989uJ87mb84RX5c8AAMJAAAICBBAAADCQAAGAgAQAAAwkAABhIAADAQAIAAAYSAAAwkAAAgIEEAAAMJAAAYCABAAADCQAAGEgAAMBAAgAABhIAADCQAACAgQQAAAwkAABgIAEAAAMJAAAYSAAAwEACAAAGEgAAMJAAAICBBAAADCQAAGAgAQAAAwkAABhIAADAQAIAAAYSAAAwkAAAgIEEAAAMJAAAYCABAAADCQAAGEgAAMBAAgAABhIAADCQAACAgQQAAAwkAABgIAEAAAMJAAAYSAAAwEACAAAGEgAAMJAAAICBBAAADCQAAGAgAQAAAwkAABhIAADAQAIAAAYSAAAwkAAAgIEEAAAMJAAAYCABAAADCQAAGEgAAMBAAgAABhIAADCQAACAgQQAAAwkAABgIAEAAAMJAAAYSAAAwEACAAAGEgAAMJAAAICBBAAADCQAAGAgAQAAAwkAABhIAADAQAIAAAYSAAAwkAAAgIEEAAAMJAAAYCABAAADCQAAGEgAAMBAAgAABhIAADCQAACAgQQAAAz08NYHOJDHqg9tfQgAXtZjWx/gKATAzb2m+t1bHwIAluBbAAAwkAAAgIEEAAAMJAAAYCABAAADCQAAGEgAAMBAAgAABhIAADCQAACAgQQAAAwkAABgIAEAAAMJAAAYSAAAwEACAAAGEgAAMNDDWx/gwp6q/szWhwDgkJ7a+gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwtf8P3vLP6VMQ44YAAAAASUVORK5CYII=);
    mask-position: center;
    mask-repeat: no-repeat;
    mask-size: 5em;
    width: 5em
}

.wp-block-woocommerce-empty-cart-block>.aligncenter {
    margin-left: auto !important;
    margin-right: auto !important
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-totals-coupon .wc-block-components-panel__button {
    margin-top: 0;
    padding-top: 0
}

.wc-block-components-totals-coupon .wc-block-components-panel__content {
    padding-bottom: 0
}

.wc-block-components-totals-coupon__form {
    display: flex;
    margin-bottom: 0;
    width: 100%
}

.wc-block-components-totals-coupon__form .wc-block-components-totals-coupon__input {
    flex-grow: 1;
    margin-bottom: 0;
    margin-top: 0
}

.wc-block-components-totals-coupon__form .wc-block-components-totals-coupon__button {
    flex-shrink: 0;
    height: 3em;
    margin-left: 8px;
    padding-left: 24px;
    padding-right: 24px;
    white-space: nowrap;
    border: none;
    padding: 0;
    background: none
}

.wc-block-components-totals-coupon__form .wc-block-components-totals-coupon__button .wc-block-components-button__text {
    background-color: transparent;
    border: 1px solid var(--main-red-color);
    border-radius: 0;
    color: var(--main-red-color);
    transition: var(--main-ease-fast);
}

.wc-block-components-totals-coupon__form .wc-block-components-totals-coupon__button:hover .wc-block-components-button__text {
    background-color: var(--main-red-color);
    color: var(--main-white-color);
    opacity: 1;
}

.wc-block-components-totals-coupon__form .wc-block-components-totals-coupon__button.no-margin {
    margin: 0
}

.wc-block-components-totals-coupon__content {
    flex-direction: column;
    position: relative
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-totals-discount__coupon-list {
    list-style: none;
    margin: 0;
    padding: 0
}

.wc-block-components-totals-discount .wc-block-components-totals-item__value {
    color: #4ab866
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    font-size: 1.25em
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
    font-weight: 700
}

.wc-block-components-totals-footer-item .wc-block-components-totals-footer-item-tax {
    margin-bottom: 0
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-shipping-calculator-address {
    margin-bottom: 0
}

.wc-block-components-shipping-calculator-address__button {
    margin-top: 1.5em;
    width: 100%
}

.wc-block-components-shipping-calculator {
    padding: .5em 0 .75em
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-select-input {
    margin-top: 16px;
    position: relative
}

.wc-block-components-combobox .wc-block-components-combobox-control,
.wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control {
    border: 0;
    border-radius: 0;
    font-family: inherit;
    font-size: inherit;
    font-style: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    margin: 0;
    padding: 0;
    text-decoration: inherit;
    text-transform: inherit;
    vertical-align: baseline
}

.wc-block-components-combobox .wc-block-components-combobox-control .components-base-control__field,
.wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control .components-base-control__field {
    border: 0;
    border-radius: 0;
    margin: 0;
    padding: 0;
    position: relative;
    vertical-align: baseline
}

.wc-block-components-combobox .wc-block-components-combobox-control .components-combobox-control__suggestions-container,
.wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control .components-combobox-control__suggestions-container {
    border: 0;
    border-radius: 0;
    font-family: inherit;
    font-size: inherit;
    font-style: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    margin: 0;
    padding: 0;
    position: relative;
    text-decoration: inherit;
    text-transform: inherit;
    vertical-align: baseline
}

.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
.wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input {
    background: #fff;
    border: 1px solid #50575e;
    border-radius: 4px;
    box-shadow: none;
    box-sizing: border-box;
    color: #2b2d2f;
    font-family: inherit;
    font-size: inherit;
    font-size: 1em;
    font-style: inherit;
    font-weight: inherit;
    font-weight: 400;
    letter-spacing: inherit;
    line-height: inherit;
    line-height: 1em;
    opacity: 1;
    outline: inherit;
    padding: 1.5em .5em .5em;
    text-align: left;
    text-decoration: inherit;
    text-overflow: ellipsis;
    text-transform: inherit;
    text-transform: none;
    white-space: nowrap;
    width: 100%
}

.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input:focus,
.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input[aria-expanded=true],
.wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input:focus,
.wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input[aria-expanded=true] {
    background-color: #fff;
    box-shadow: 0 0 0 1px #50575e;
    color: #2b2d2f;
    outline: 0
}

.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input[aria-expanded=true],
.wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input[aria-expanded=true] {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0
}

.has-dark-controls .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
.has-dark-controls .wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input {
    background-color: rgba(0, 0, 0, .1);
    border-color: hsla(0, 0%, 100%, .4);
    color: #fff
}

.has-dark-controls .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input:focus,
.has-dark-controls .wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input:focus {
    background-color: rgba(0, 0, 0, .1);
    box-shadow: 0 0 0 1px hsla(0, 0%, 100%, .4);
    color: #fff
}

.wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list,
.wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list {
    background-color: #fff;
    border: 1px solid #50575e;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    border-top: 0;
    color: #2b2d2f;
    margin: 3em 0 0 -1px;
    max-height: 300px;
    min-width: 100%;
    overflow: auto;
    padding: 0;
    position: absolute;
    z-index: 10
}

.has-dark-controls .wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list,
.has-dark-controls .wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list {
    background-color: #1e1e1e;
    color: #fff
}

.wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list .components-form-token-field__suggestion,
.wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list .components-form-token-field__suggestion {
    color: #757575;
    cursor: default;
    font-size: 1em;
    list-style: none;
    margin: 0;
    padding: .25em 16px
}

.wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list .components-form-token-field__suggestion.is-selected,
.wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list .components-form-token-field__suggestion.is-selected {
    background-color: #ddd
}

.has-dark-controls .wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list .components-form-token-field__suggestion.is-selected,
.has-dark-controls .wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list .components-form-token-field__suggestion.is-selected {
    background-color: rgba(0, 0, 0, .4)
}

.wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list .components-form-token-field__suggestion.is-highlighted,
.wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list .components-form-token-field__suggestion:active,
.wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list .components-form-token-field__suggestion:focus,
.wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list .components-form-token-field__suggestion:hover,
.wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list .components-form-token-field__suggestion.is-highlighted,
.wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list .components-form-token-field__suggestion:active,
.wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list .components-form-token-field__suggestion:focus,
.wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control .components-form-token-field__suggestions-list .components-form-token-field__suggestion:hover {
    background-color: #00669e;
    color: #fff
}

.wc-block-components-combobox .wc-block-components-combobox-control label.components-base-control__label,
.wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control label.components-base-control__label {
    color: hsla(0, 0%, 7%, .5);
    font-family: inherit;
    font-size: inherit;
    font-size: 1em;
    font-style: inherit;
    font-weight: inherit;
    left: .5em;
    letter-spacing: inherit;
    line-height: inherit;
    line-height: 1.25;
    margin: 0;
    max-width: calc(100% - 32px);
    overflow: hidden;
    position: absolute;
    text-decoration: inherit;
    text-overflow: ellipsis;
    text-transform: inherit;
    top: 0;
    transform: translateY(1em);
    transform-origin: top left;
    transition: all .2s ease;
    white-space: nowrap;
    z-index: 1
}

.has-dark-controls .wc-block-components-combobox .wc-block-components-combobox-control label.components-base-control__label,
.has-dark-controls .wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control label.components-base-control__label {
    color: hsla(0, 0%, 100%, .6)
}

@media screen and (prefers-reduced-motion:reduce) {

    .wc-block-components-combobox .wc-block-components-combobox-control label.components-base-control__label,
    .wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control label.components-base-control__label {
        transition: none
    }
}

.wc-block-components-combobox .wc-block-components-combobox-control:has(input:-webkit-autofill) label,
.wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control:has(input:-webkit-autofill) label {
    transform: translateY(.5em) scale(.875)
}

.wc-block-components-combobox.is-active .wc-block-components-combobox-control label.components-base-control__label,
.wc-block-components-combobox:focus-within .wc-block-components-combobox-control label.components-base-control__label,
.wc-block-components-form .wc-block-components-combobox.is-active .wc-block-components-combobox-control label.components-base-control__label,
.wc-block-components-form .wc-block-components-combobox:focus-within .wc-block-components-combobox-control label.components-base-control__label {
    transform: translateY(.5em) scale(.875)
}

.wc-block-components-combobox.has-error .wc-block-components-combobox-control label.components-base-control__label,
.wc-block-components-form .wc-block-components-combobox.has-error .wc-block-components-combobox-control label.components-base-control__label {
    color: #cc1818
}

.wc-block-components-combobox.has-error .wc-block-components-combobox-control input.components-combobox-control__input,
.wc-block-components-combobox.has-error .wc-block-components-combobox-control input.components-combobox-control__input:active,
.wc-block-components-combobox.has-error .wc-block-components-combobox-control input.components-combobox-control__input:focus,
.wc-block-components-combobox.has-error .wc-block-components-combobox-control input.components-combobox-control__input:hover,
.wc-block-components-form .wc-block-components-combobox.has-error .wc-block-components-combobox-control input.components-combobox-control__input,
.wc-block-components-form .wc-block-components-combobox.has-error .wc-block-components-combobox-control input.components-combobox-control__input:active,
.wc-block-components-form .wc-block-components-combobox.has-error .wc-block-components-combobox-control input.components-combobox-control__input:focus,
.wc-block-components-form .wc-block-components-combobox.has-error .wc-block-components-combobox-control input.components-combobox-control__input:hover {
    border-color: #cc1818
}

.wc-block-components-combobox.has-error .wc-block-components-combobox-control input.components-combobox-control__input:focus,
.wc-block-components-form .wc-block-components-combobox.has-error .wc-block-components-combobox-control input.components-combobox-control__input:focus {
    box-shadow: 0 0 0 1px #cc1818
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.components-combobox-control {
    width: 100%
}

input.components-combobox-control__input[type=text] {
    border: none;
    box-shadow: none;
    font-size: 16px;
    line-height: inherit;
    margin: 0;
    min-height: auto;
    padding: 2px;
    width: 100%
}

@media(min-width:600px) {
    input.components-combobox-control__input[type=text] {
        font-size: 13px
    }
}

input.components-combobox-control__input[type=text]:focus {
    box-shadow: none;
    outline: none
}

.components-combobox-control__suggestions-container {
    align-items: flex-start;
    border: 1px solid #949494;
    border-radius: 2px;
    box-shadow: 0 0 0 transparent;
    display: flex;
    flex-wrap: wrap;
    font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif;
    font-size: 16px;
    line-height: normal;
    margin: 0 0 8px;
    padding: 4px;
    transition: box-shadow .1s linear;
    width: 100%
}

@media(prefers-reduced-motion:reduce) {
    .components-combobox-control__suggestions-container {
        transition-delay: 0s;
        transition-duration: 0s
    }
}

@media(min-width:600px) {
    .components-combobox-control__suggestions-container {
        font-size: 13px;
        line-height: normal
    }
}

.components-combobox-control__suggestions-container:focus {
    border-color: var(--wp-admin-theme-color);
    box-shadow: 0 0 0 .5px var(--wp-admin-theme-color);
    outline: 2px solid transparent
}

.components-combobox-control__suggestions-container::-webkit-input-placeholder {
    color: rgba(30, 30, 30, .62)
}

.components-combobox-control__suggestions-container::-moz-placeholder {
    color: rgba(30, 30, 30, .62);
    opacity: 1
}

.components-combobox-control__suggestions-container:-ms-input-placeholder {
    color: rgba(30, 30, 30, .62)
}

.components-combobox-control__suggestions-container:focus-within {
    border-color: var(--wp-admin-theme-color);
    box-shadow: 0 0 0 .5px var(--wp-admin-theme-color);
    outline: 2px solid transparent
}

.components-combobox-control__reset.components-button {
    display: flex;
    height: 24px;
    min-width: 24px;
    padding: 0
}

.wc-block-components-country-input {
    margin-top: 16px
}

.wc-block-components-country-input .components-flex {
    width: 100%
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-state-input {
    margin-top: 16px
}

.wc-block-components-state-input .components-flex {
    width: 100%
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-notice-banner {
    align-content: flex-start;
    align-items: stretch;
    background-color: #fff;
    border: 1px solid;
    border-radius: 4px;
    box-sizing: border-box;
    color: #2f2f2f;
    display: flex;
    font-size: .875em;
    font-weight: 400;
    gap: 12px;
    line-height: 1.5;
    margin: 16px 0;
    padding: 16px !important
}

.wc-block-components-notice-banner>.wc-block-components-notice-banner__content {
    -ms-grid-row-align: center;
    align-self: center;
    flex-basis: 100%;
    padding-right: 16px;
    white-space: normal
}

.wc-block-components-notice-banner>.wc-block-components-notice-banner__content:last-child {
    padding-right: 0
}

.wc-block-components-notice-banner>.wc-block-components-notice-banner__content .wc-block-components-notice-banner__summary {
    font-weight: 600;
    margin: 0 0 8px
}

.wc-block-components-notice-banner>.wc-block-components-notice-banner__content ol,
.wc-block-components-notice-banner>.wc-block-components-notice-banner__content ul {
    margin: 0 0 0 24px;
    padding: 0
}

.wc-block-components-notice-banner>.wc-block-components-notice-banner__content ol li:after,
.wc-block-components-notice-banner>.wc-block-components-notice-banner__content ul li:after {
    clear: both;
    content: "";
    display: block
}

.wc-block-components-notice-banner>.wc-block-components-notice-banner__content .wc-forward {
    -moz-appearance: none;
    appearance: none;
    background: transparent !important;
    border: 0;
    color: #2f2f2f !important;
    float: right;
    margin: 0;
    opacity: .6;
    padding: 0 !important;
    text-decoration-line: underline;
    text-underline-position: under
}

.wc-block-components-notice-banner>.wc-block-components-notice-banner__content .wc-forward:active,
.wc-block-components-notice-banner>.wc-block-components-notice-banner__content .wc-forward:focus,
.wc-block-components-notice-banner>.wc-block-components-notice-banner__content .wc-forward:hover {
    opacity: 1
}

.wc-block-components-notice-banner>svg {
    fill: #fff;
    background-color: #2f2f2f;
    border-radius: 50%;
    flex-grow: 0;
    flex-shrink: 0;
    height: 100%;
    padding: 2px
}

.wc-block-components-notice-banner>.wc-block-components-button {
    background: transparent none !important;
    border: 0 !important;
    box-shadow: none !important;
    color: #2f2f2f !important;
    flex: 0 0 16px;
    height: 16px !important;
    margin: 6px 0 0 auto !important;
    min-height: auto !important;
    min-width: 0 !important;
    opacity: .6;
    outline: none !important;
    padding: 0 !important;
    width: 16px !important
}

.wc-block-components-notice-banner>.wc-block-components-button>svg {
    margin: 0 !important
}

.wc-block-components-notice-banner>.wc-block-components-button:active,
.wc-block-components-notice-banner>.wc-block-components-button:focus,
.wc-block-components-notice-banner>.wc-block-components-button:hover {
    opacity: 1
}

.wc-block-components-notice-banner.is-error {
    background-color: #fff0f0;
    border-color: #cc1818
}

.wc-block-components-notice-banner.is-error>svg {
    background-color: #cc1818;
    transform: rotate(180deg)
}

.wc-block-components-notice-banner.is-warning {
    background-color: #fffbf4;
    border-color: #f0b849
}

.wc-block-components-notice-banner.is-warning>svg {
    background-color: #f0b849;
    transform: rotate(180deg)
}

.wc-block-components-notice-banner.is-success {
    background-color: #f4fff7;
    border-color: #4ab866
}

.wc-block-components-notice-banner.is-success>svg {
    background-color: #4ab866
}

.wc-block-components-notice-banner.is-info {
    background-color: #f4f8ff;
    border-color: #007cba
}

.wc-block-components-notice-banner.is-info>svg {
    background-color: #007cba
}

.woocommerce.wc-block-store-notices.alignwide {
    max-width: var(--wp--style--global--wide-size)
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-shipping-rates-control__package {
    border-bottom: 1px solid hsla(0, 0%, 7%, .11);
    margin: 0
}

.wc-block-components-shipping-rates-control__package.wc-block-components-panel {
    margin-bottom: 0
}

.wc-block-components-shipping-rates-control__package .wc-block-components-panel__button {
    margin-bottom: 0;
    margin-top: 0;
    padding-bottom: .75em;
    padding-top: .75em
}

.wc-block-components-shipping-rates-control__package:last-child {
    border-bottom: 0
}

.wc-block-components-shipping-rates-control__package:last-child .wc-block-components-panel__button {
    padding-bottom: 0
}

.wc-block-components-shipping-rates-control__package .wc-block-components-panel__content {
    padding-bottom: .75em
}

.wc-block-components-shipping-rates-control__package .wc-block-components-radio-control,
.wc-block-components-shipping-rates-control__package .wc-block-components-radio-control .wc-block-components-radio-control__option-layout,
.wc-block-components-shipping-rates-control__package .wc-block-components-radio-control__option-layout {
    padding-bottom: 0
}

.wc-block-components-shipping-rates-control__package .wc-block-components-radio-control__label-group {
    font-size: .875em
}

.wc-block-components-shipping-rates-control__package .wc-block-components-radio-control__description-group {
    font-size: .75em
}

.wc-block-components-shipping-rates-control__package--disabled {
    opacity: .5;
    transition: opacity .2s ease
}

.wc-block-components-shipping-rates-control__package-items {
    display: block;
    font-size: .875em;
    list-style: none;
    margin: 0;
    padding: 0
}

.wc-block-components-shipping-rates-control__package-item {
    display: inline-block;
    margin: 0;
    overflow-wrap: anywhere;
    padding: 0;
    word-break: break-word;
    -ms-word-break: break-all
}

.wc-block-components-shipping-rates-control__package-item:not(:last-child):after {
    content: ", ";
    white-space: pre
}

@keyframes spinner__animation {
    0% {
        animation-timing-function: cubic-bezier(.5856, .0703, .4143, .9297);
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes loading__animation {
    to {
        transform: translateX(100%)
    }
}

.wc-block-components-totals-shipping fieldset.wc-block-components-totals-shipping__fieldset {
    background-color: transparent;
    border: 0;
    margin: 0;
    padding: 0
}

.wc-block-components-totals-shipping .wc-block-components-shipping-address {
    display: block;
    margin-top: 16px
}

.wc-block-components-totals-shipping .wc-block-components-totals-shipping__options {
    margin-top: 12px
}

.wc-block-components-totals-shipping .wc-block-components-totals-shipping__options .wc-block-components-radio-control__description,
.wc-block-components-totals-shipping .wc-block-components-totals-shipping__options .wc-block-components-radio-control__label,
.wc-block-components-totals-shipping .wc-block-components-totals-shipping__options .wc-block-components-radio-control__secondary-description,
.wc-block-components-totals-shipping .wc-block-components-totals-shipping__options .wc-block-components-radio-control__secondary-label {
    flex-basis: 100%;
    text-align: left
}

.wc-block-components-totals-shipping .wc-block-components-shipping-rates-control__no-results-notice {
    margin: 0 0 .75em
}

.wc-block-components-totals-shipping .wc-block-components-totals-shipping__change-address__link {
    font-weight: 400;
    color: var(--main-red-color);
    text-decoration: none;
}

.wc-block-components-totals-shipping .wc-block-components-totals-shipping__change-address-button {
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    color: inherit;
    display: inline;
    font-family: inherit;
    font-size: inherit;
    font-style: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    margin: 0;
    padding: 0;
    text-decoration: inherit;
    text-decoration: underline;
    text-shadow: none;
    text-transform: inherit;
    vertical-align: baseline
}

.wc-block-components-totals-shipping .wc-block-components-totals-shipping__change-address-button:active,
.wc-block-components-totals-shipping .wc-block-components-totals-shipping__change-address-button:focus,
.wc-block-components-totals-shipping .wc-block-components-totals-shipping__change-address-button:hover {
    background: transparent
}

.wc-block-components-totals-shipping .wc-block-components-totals-shipping__change-address-button:active,
.wc-block-components-totals-shipping .wc-block-components-totals-shipping__change-address-button:focus,
.wc-block-components-totals-shipping .wc-block-components-totals-shipping__change-address-button:hover {
    opacity: .8
}

.theme-twentytwentyone.theme-twentytwentyone.theme-twentytwentyone .wc-block-components-totals-shipping__change-address-button {
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    color: inherit;
    display: inline;
    font-family: inherit;
    font-size: inherit;
    font-style: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    margin: 0;
    padding: 0;
    text-decoration: inherit;
    text-decoration: underline;
    text-shadow: none;
    text-transform: inherit;
    vertical-align: baseline
}

/* .theme-twentytwentyone.theme-twentytwentyone.theme-twentytwentyone .wc-block-components-totals-shipping__change-address-button:active,
.theme-twentytwentyone.theme-twentytwentyone.theme-twentytwentyone .wc-block-components-totals-shipping__change-address-button:focus,
.theme-twentytwentyone.theme-twentytwentyone.theme-twentytwentyone .wc-block-components-totals-shipping__change-address-button:hover {
    background: transparent
} */

.wc-block-cart__main {
    border-right: 1px solid var(--main-red-color);
}

.woocommerce-page .entry-content {
    background: none;
}

.woocommerce-cart .wp-block-woocommerce-product-new,
.wp-block-woocommerce-empty-cart-block .wp-block-heading:nth-child(3) {
    display: none;
}

/* CHECKOUT PAGE */

/* Custom CSS to style the company name field */
#billing_company_field,
#custom_acf_number_field_field {
    display: none;
}

#billing_invoice_type_field .woocommerce-input-wrapper {
    display: grid;
    grid-template-columns: 10% 90%;
    gap: 15px;
    justify-content: center;
}

#billing_invoice_type_field .woocommerce-input-wrapper input {
    height: 20px;
    align-self: center;
}

.woocommerce-billing-fields__field-wrapper {
    display: grid;
}

#billing_invoice_type_field {
    grid-row-start: 1;
}

#billing_company_field {
    grid-row-start: 2;
}

#custom_acf_number_field_field {
    grid-row-start: 3;
}

.woocommerce-checkout .woocommerce-info {
    background-color: #f9a148;
    color: var(--main-white-color);
    padding: 10px;
    margin-top: 5px;
}

.woocommerce-checkout .woocommerce-info a {
    color: var(--main-white-color);
    font-weight: 600;
    text-decoration: none;
}

.checkout_coupon.woocommerce-form-coupon {
    border-bottom: 1px solid var(--main-red-color);
}

.checkout_coupon.woocommerce-form-coupon p:nth-child(1) {
    margin-top: 20px;
}

.checkout_coupon.woocommerce-form-coupon .button,
#place_order {
    background: var(--main-red-color);
    border-radius: 0;
    color: var(--main-white-color);
    border: 1px solid var(--main-red-color);
    cursor: pointer;
    transition: var(--main-ease-fast);
    padding: 10px;
}

#place_order {
    width: 100%;
}

/* .checkout_coupon.woocommerce-form-coupon .button:hover,
#place_order:hover {
    color: var(--main-white-color);
    background: var(--main-gray-color);
} */

/* .checkout.woocommerce-checkout {
    display: grid;
    grid-template-columns: auto auto;
    column-gap: 60px;
}

#customer_details {
    grid-row-start: 1;
    grid-row-end: 4;
    border-right: 1px solid var(--main-red-color);
    padding: 30px;
}

#order_review_heading {
    grid-column-start: 2;
    grid-row-start: 1;
    grid-row-end: 2;
    padding-top: 30px;
}

.woocommerce-checkout-review-order {
    grid-column-start: 2;
    grid-row-start: 2;
    grid-row-end: 3;
} */

form.woocommerce-checkout {
    --wd-row-gap: 30px;
    --wd-col-gap: 30px;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: var(--wd-row-gap) var(--wd-col-gap)
}

form.woocommerce-checkout>* {
    order: -1;
    flex: 1 1 100%;
    width: 100%
}

form.woocommerce-checkout>:is(.customer-details, .checkout-order-review) {
    order: unset;
    flex: 1 0 0;
    width: auto;
    max-width: 50%
}

:is(.woocommerce-checkout>.checkout-order-review, .woocommerce-order-pay #order_review) {
    position: relative;
    padding: 30px;
    background-color: var(--bgcolor-gray-200)
}

:is(.woocommerce-checkout>.checkout-order-review, .woocommerce-order-pay #order_review):before,
:is(.woocommerce-checkout>.checkout-order-review, .woocommerce-order-pay #order_review):after {
    content: "";
    position: absolute;
    inset-inline: 0;
    height: 10px;
    background-image: radial-gradient(farthest-side, transparent 6px, var(--bgcolor-gray-200) 0);
    background-size: 15px 15px
}

:is(.woocommerce-checkout>.checkout-order-review, .woocommerce-order-pay #order_review):before {
    top: -10px;
    background-position: -2px -6px, 0 0
}

:is(.woocommerce-checkout>.checkout-order-review, .woocommerce-order-pay #order_review):after {
    bottom: -10px;
    background-position: -2px 1px, 0 0
}

.woocommerce-order-pay #order_review {
    margin: 0 auto;
    max-width: 600px
}

#order_review_heading {
    text-align: center;
    text-transform: uppercase
}

.checkout-order-review>.woocommerce-checkout-review-order .wd-table-wrapper {
    overflow-x: auto;
    margin-bottom: 20px;
    padding: 5px 25px;
    border-radius: var(--wd-brd-radius);
    background-color: var(--bgcolor-white);
    box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.05)
}

.wd-builder-off #place_order {
    width: 100%
}

@media (min-width: 769px) {
    .woocommerce-checkout>.customer-details .woocommerce-billing-fields {
        margin-top: 30px
    }
}

@media (max-width: 768.98px) {
    form.woocommerce-checkout>:is(.customer-details, .checkout-order-review) {
        flex-basis: 100%;
        width: 100%;
        max-width: 100%
    }
}

@media (max-width: 576px) {
    :is(.woocommerce-checkout>.checkout-order-review, .woocommerce-order-pay #order_review) {
        padding: 0;
    }
}

@media (min-width: 769px) and (max-width: 1024px) {
    form.woocommerce-checkout>.checkout-order-review {
        flex-grow: 1.2;
        max-width: 60%
    }
}

.woocommerce-checkout .woocommerce-billing-fields h3,
#order_review_heading {
    font-family: var(--inter);
    text-transform: uppercase;
    font-size: 1.5rem;
    padding-bottom: 30px;
}

.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="email"] {
    width: 100%;
}

.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="email"] {
    padding: 10px;
}

.select2-container .select2-selection--single,
.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 46px;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 46px;
}

#billing_first_name_field,
#billing_last_name_field {
    width: 100%;
    margin-right: 0;
}

.woocommerce-billing-fields__field-wrapper {
    display: grid;
}

#billing_company_field,
#billing_address_1_field,
#billing_city_field,
#billing_postcode_field,
#billing_phone_field,
#billing_email_field {
    display: flex;
    flex-direction: column;
}

.woocommerce-checkout-review-order-table {
    display: grid;
    padding: 30px 0;
    border-top: 1px solid var(--main-red-color);
    border-bottom: 1px solid var(--main-red-color);
}

.woocommerce-checkout-review-order-table thead .product-name,
.woocommerce-checkout-review-order-table thead .product-total,
.woocommerce-checkout-review-order-table .cart-subtotal th,
.woocommerce-checkout-review-order-table .woocommerce-shipping-totals th,
.woocommerce-checkout-review-order-table .order-total th {
    font-family: var(--inter);
    font-size: 1rem;
}

.woocommerce-checkout-review-order-table thead tr,
.woocommerce-checkout-review-order-table tbody tr {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.woocommerce-checkout-review-order-table tbody .cart_item {
    padding: 20px 0px;
    gap: 30px;
}

.woocommerce-checkout-review-order-table .cart_item .product-name {
    display: grid;
    grid-template-columns: auto auto auto;
    align-items: center;
    gap: 10px;
}

.woocommerce-checkout-review-order-table .cart_item .product-name .checkout-product-image {
    grid-row: 1;
}

.woocommerce-checkout-review-order-table tfoot .cart-subtotal {
    display: flex;
    justify-content: space-between;
    border: 1px solid var(--main-red-color);
    border-right-style: none;
    border-left-style: none;
    padding: 20px 0;
    font-weight: 600;
    color: var(--main-red-color);
    grid-row-start: 1;
    grid-column-start: 1;
    grid-column-end: 3;
}

.woocommerce-checkout-review-order-table tfoot {
    display: flex;
    flex-direction: column;
}

.woocommerce-checkout-review-order-table .woocommerce-shipping-totals {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 30px 0;
}

.woocommerce-checkout-review-order-table .woocommerce-shipping-totals .woocommerce-shipping-methods li {
    display: flex;
    flex-direction: row-reverse;
    gap: 10px;
}

.woocommerce-checkout-review-order-table .woocommerce-shipping-totals .woocommerce-shipping-methods li input {
    width: 18px;
    height: 18px;
    margin: 0;
    accent-color: var(--main-red-color);
}

.woocommerce-checkout-review-order-table .woocommerce-shipping-totals .woocommerce-shipping-methods li:nth-child(2) {
    margin: 10px 0;
}

.woocommerce-checkout-review-order-table .order-total {
    border-top: 1px solid var(--main-red-color);
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 30px 0 0;
}

.woocommerce-checkout-review-order-table .fee {
	display: flex;
    justify-content: space-between;
    padding: 20px 0;
    border-top: 1px solid var(--main-red-color);
}

/* Payment methods */
#payment {
    margin-top: 14px;
}

#payment .payment_methods {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 14px;
}

#payment .payment_methods>.wc_payment_method {
    position: relative;
    margin: 0;
    padding: 18px;
    background: #fff;
    border: 1px solid #e5e7eb;
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.05);
    transition: all 0.25s ease;
}

#payment .payment_methods>.wc_payment_method:hover {
    border-color: var(--main-red-color);
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
}

/* Selected card */
#payment .payment_methods>.wc_payment_method:has(> input[type="radio"]:checked) {
    border-color: var(--main-red-color);
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.12);
}

/* Radio */
#payment .payment_methods>.wc_payment_method>input[type="radio"] {
    position: absolute;
    top: 22px;
    left: 18px;
    width: 18px;
    height: 18px;
    margin: 0;
    accent-color: var(--main-red-color);
}

/* Label */
#payment .payment_methods>.wc_payment_method>label {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0;
    padding-left: 34px;
    cursor: pointer;
    font-size: 17px;
    line-height: 1.4;
    font-weight: 600;
    color: #1f2937;
}

#payment .payment_methods>.wc_payment_method>input[type="radio"]:checked+label {
    color: var(--main-red-color);
}

/* Main gateway logos (PayPal / VivaWallet logo etc.) */
#payment .payment_methods>.wc_payment_method>label>img {
    height: 24px;
    width: auto;
    max-width: 120px;
    object-fit: contain;
}

/* Viva extra icons row */
#payment .wedoo-viva-icons {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    flex-basis: 100%;
    margin-top: 8px;
}

/* Small icon badges */
#payment .wedoo-viva-icons img {
    display: block;
    height: 45px;
    width: auto;
    max-width: 150px;
    object-fit: contain;
    padding: 0px 5px;
    background: #fff;
}

/* Payment description box */
#payment .payment_methods .payment_box {
    margin: 14px 0 0 34px;
    padding: 14px 0px;
    color: #475569;
    font-size: 14px;
    line-height: 1.65;
}

#payment .payment_methods .payment_box p {
    margin: 0;
}

/* TBI button cleanup */
#payment .payment_methods .payment_box a img#btn_tbigr {
    max-width: 300px;
    width: auto;
    height: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    border-radius: 10px;
    display: block;
}

/* Mobile */
@media (max-width: 767px) {

    #payment .payment_methods>.wc_payment_method>input[type="radio"] {
        top: 19px;
        left: 16px;
    }

    #payment .payment_methods>.wc_payment_method>label {
        padding-left: 30px;
        font-size: 15px;
    }

    #payment .wedoo-viva-icons img {
        height: 55px;
        max-width: 90px;
        padding: 5px 8px;
    }

    #payment .payment_methods .payment_box {
        margin-left: 30px;
        padding: 12px 14px;
    }

    #pwgc-redeem-form {
        flex-direction: column;
    }
}

.form-row.place-order {
    margin-top: 20px;
}

/* ORDER RECEIVED PAGE */

.woocommerce-order-received .entry-content {
    padding: 0;
}

.woocommerce-order {
    border-right: 1px solid var(--main-red-color);
    border-left: 1px solid var(--main-red-color);
}

.woocommerce-thankyou-order-received,
.woocommerce-customer-details {
    padding: 30px 20px;
}

.woocommerce-bacs-bank-details,
.woocommerce-order-details {
    padding: 30px 20px;
    border-bottom: 1px solid var(--main-red-color);
}

.wc-bacs-bank-details-account-name {
    padding-top: 10px;
}

.wc-bacs-bank-details-heading {
    padding-bottom: 20px;
}

.woocommerce-thankyou-order-details {
    padding: 30px 20px;
    border-top: 1px solid var(--main-red-color);
    border-bottom: 1px solid var(--main-red-color);
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: space-between;
}

.woocommerce-table--order-details tr {
    text-align: left;
}

.woocommerce-table--order-details {
    width: 60%;
}

.woocommerce-table__product-name a {
    color: var(--main-red-color);
}

.woocommerce-customer-details address {
    margin: 0;
}

/* RESPONSIVE */
@media only screen and (max-width: 1440px) {
    .gutter {
        margin: 0 50px;
    }

    .woocommerce-breadcrumb {
        padding: 30px 50px;
    }

    /* Header */
    #primary-menu>li.menu-item-has-children>.sub-menu {
        padding: 215px 30vw 36px 36px;
    }

    #primary-menu>li.menu-item-has-children>.sub-menu>li>.sub-menu {
        padding-left: 0px;
        left: 310px;
        max-width: 70%;
    }

    /* Homepage */
    .homepage-banner-slide {
        padding-top: 65%;
    }

    /* Single Product */
    .single-product-related .related>h2 {
        padding: 40px 50px;
    }

    /* Archive Product */
    .product-filters {
        padding: 0px 20px 0 50px;
    }

    /* Footer */
    .footer-top-row {
        grid-template-columns: 30% 70%;
    }

    .footer-top-row-newsletter {
        grid-template-columns: 50% 50%;
    }
}

@media only screen and (max-width: 1024px) {
    .gutter {
        margin: 0 20px;
    }

    .woocommerce-breadcrumb {
        padding: 30px 20px;
    }

    /* Preloader */
    .preloader-image-cover:nth-child(1) {
        width: 40vw;
        height: 60vh;
    }

    .preloader-image-cover:nth-child(2) {
        width: 30vw;
        top: 5%;
        left: 7%;
    }

    .preloader-image-cover:nth-child(3) {
        left: 70%;
    }

    .preloader-image-cover:nth-child(4) {
        width: 25vw;
        top: 10%;
        left: 62%;
    }

    .preloader-image-cover:nth-child(5) {
        width: 40vw;
        height: 30vh;
        top: 65%;
        left: 19%;
    }

    .preloader-image-cover:nth-child(6) {
        width: 20vw;
        height: 30vh;
        top: 10%;
    }

    /* Homepage */
    .homepage-banner-slide {
        padding-top: 95%;
    }

    .homepage-banner-slides.owl-carousel .owl-item img {
        top: 50%;
        transform: translateY(-50%);
        left: 0;
    }

    /* Header */
    .site-nav-left {
        gap: 40px;
    }

    .main-navigation ul {
        gap: 40px;
    }

    .site-message p {
        font-size: 14px;
    }

    .site-message-social svg {
        width: 30px;
    }

    .scrolled .site-nav {
        padding: 20px 0;
        padding-bottom: 10px;
    }

    #site-logo {
        height: 60px;
    }

    #primary-menu>li.menu-item-has-children>.sub-menu,
    .scrolled #primary-menu>li.menu-item-has-children>.sub-menu {
        padding: 215px 4vw 36px 4vw;
    }

    #primary-menu>li.menu-item-has-children>.sub-menu>li.show>.sub-menu {
        columns: 2;
    }

    #primary-menu>li.menu-item-has-children>.sub-menu>li>.sub-menu {
        left: 300px;
        max-width: 60%;
    }

    #primary-menu>li.menu-item-has-children>.sub-menu>li:not(li.menu-ad-right-image) {
        width: 240px;
    }

    #primary-menu>li.menu-item-has-children .menu-img-wrapper,
    #primary-menu li.menu-item-has-children.show>a>.menu-img-wrapper {
        display: none;
    }

    /* Single Product */
    .single-product-content {
        padding: 2vh 1vw;
    }

    .single-product-related .related>h2 {
        padding: 40px 20px;
    }

    .single-product .woocommerce ul.products {
        grid-template-columns: repeat(2, 1fr);
    }

    .single-product .cart {
        flex-direction: column;
        gap: 10px;
    }

    .single-product .single_add_to_cart_button {
        padding: 15px;
    }

    /* Archive Product */
    .product-filters {
        padding: 0px 20px 0 20px;
    }

    .archive-product-wrapper {
        grid-template-columns: 250px calc(100% - 250px);
    }

    .woocommerce ul.products {
        grid-template-columns: repeat(3, 1fr);
    }

    .archive-product-container .product {
        border: unset;
        border-bottom: 1px solid rgba(0, 0, 0, .5);
    }

    .archive-product-container .product:nth-child(3n+2) {
        border-left: 1px solid rgba(0, 0, 0, .5);
        border-right: 1px solid rgba(0, 0, 0, .5);
    }

    /* Single Page */
    .entry-title {
        font-size: 5vw;
    }

    .entry-header img {
        top: -40%;
    }

    /* Footer */
    .footer-top-row-newsletter h2 {
        letter-spacing: -2px;
    }

    .homepage-banner-slide-button {
        padding: 20px 20px;
        letter-spacing: 3px;
    }

    .footer-top-row {
        grid-template-columns: 20% 80%;
    }
}

@media only screen and (max-width: 768px) {

    /* Preloader */
    .preloader-image-cover:nth-child(1) {
        width: 40vw;
        height: 35vh;
    }

    .preloader-image-cover:nth-child(2) {
        width: 30vw;
        top: 0%;
        left: 5%;
    }

    .preloader-image-cover:nth-child(3) {
        width: 39vw;
        height: 24vh;
        top: 60%;
        left: 55%;
    }

    .preloader-image-cover:nth-child(4) {
        width: 33vw;
        left: 60%;
    }

    .preloader-image-cover:nth-child(5) {
        height: 20vh;
        top: 65%;
        left: 10%;
    }

    .preloader-image-cover:nth-child(6) {
        width: 26vw;
        height: 18vh;
        top: 16%;
        left: 28%;
    }

    /* Header */
    .site-message p {
        text-align: left;
    }

    #site-navigation,
    .site-nav-right {
        display: none;
    }

    .mobile-nav-left,
    .mobile-nav-right {
        display: block;
    }

    .site-nav {
        grid-template-columns: auto auto auto;
        align-items: center;
    }

    #masthead {
        display: flex;
        flex-direction: column;
        justify-content: space-around;
    }

    .site-message {
        display: none;
    }

    .site-nav-left {
        gap: 0;
    }

    .scrolled {
        transform: translateY(0);
    }

    .scrolled #site-logo {
        height: 50px;
    }

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

    /* Homepage */
    .homepage-banner-slide {
        padding-top: 135%;
    }

    .homepage-banner-slider-buttons {
        padding: 0px 1vw;
    }

    /* Pre-owl-init: prevent all category slides from stacking vertically on mobile */
    .homepage-categories-slider:not(.owl-loaded) {
        display: flex;
        overflow: hidden;
        flex-wrap: nowrap;
        padding-top: 100px; /* Pre-reserve the padding-top owl adds to .owl-stage-outer on init */
    }
    .homepage-categories-slider:not(.owl-loaded) .homepage-categories-slide {
        flex: 0 0 calc(50% - 12.5px);
        min-width: 0;
    }
    .homepage-categories-slider:not(.owl-loaded) .homepage-categories-slide:nth-child(n+3) {
        display: none;
    }

    .homepage-banner-slide-content h1 {
        font-size: 20vw;
    }

    .homepage-info-section-items {
        grid-template-columns: repeat(2, 1fr);
    }

    .homepage-area-title {
        font-size: 9vw;
    }

    .homepage-area-subtitle {
        font-size: 7vw;
    }

    .slider-button {
        padding: 11px 16px;
    }

    .homepage-categories-slider-buttons {
        gap: 8vw;
    }

    .homepage-info-section-item {
        text-align: center;
    }

    .homepage-info-section-item h2 {
        font-size: 22px;
    }

    .homepage-info-section-item p {
        font-size: 16px;
    }

    .home .woocommerce ul.products {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Product Archive */
    .woocommerce ul.products {
        grid-template-columns: repeat(2, 1fr);
    }

    .woocommerce-products-header__title {
        padding: 0px 20px 50px 20px;
        font-size: 8vw;
    }

    .archive-product-wrapper {
        display: block;
    }

    .archive-product-container .product:nth-child(3n+2) {
        border-right: none;
        border-left: none;
    }

    .archive-product-container .product:nth-child(odd) {
        border-right: 1px solid rgba(0, 0, 0, .5);
    }

    .widget-title {
        display: none;
    }

    .product-filters {
        border-right: none;
        border-top: none;
    }

    .woocommerce-pagination {
        margin-left: 20px;
    }

    /* Single Product */
    .single-product .entry-title {
        font-size: 4vw;
    }

    .single-product .cart {
        max-height: unset;
    }

    .product a:nth-child(1)::before {
        font-size: 13vw;
    }

    /* Single Page */
    .entry-title {
        font-size: 9vw;
    }

    .entry-header img {
        top: 0;
    }

    /* Order Confirmation */
    .woocommerce-table--order-details {
        width: 100%;
    }

    /* Footer */
    .homepage-banner-slide-button {
        padding: 15px 1vw;
        letter-spacing: 0.3vw;
    }

    .homepage-banner-slide-button::after {
        padding-left: 2vw;
    }

    .footer-top-row {
        display: block;
    }

    .footer-top-row-newsletter {
        grid-template-columns: 1fr;
    }

    .footer-top-row-newsletter h2 {
        font-size: 4vw;
    }

    .footer-bottom-row {
        grid-template-columns: repeat(12, 1fr);
        grid-row-gap: 45px;
        align-items: center;
    }

    .footer-bottom-row-col-1 {
        grid-column: 1 / span 7;
        transform: translateY(0px);
    }

    .footer-bottom-row-col-2 {
        grid-column: 8 / span 4;
    }

    .footer-bottom-row-col-3 {
        grid-row-start: 2;
        grid-column: span 4;
    }

    .footer-bottom-row-col-4 {
        grid-row-start: 2;
        grid-column: span 4;
    }

    .footer-bottom-row-col-5 {
        grid-row-start: 2;
        grid-column: span 4;
    }

    .footer-bottom-row-col-2 a {
        margin: 0 auto;
        display: block;
    }

    #newsletter-popup .mc4wp-form-fields {
        padding: 20px;
    }

    .newsletter-header {
        font-size: 20px;
    }

    /* 404 Page */
    .error-404 svg {
        display: none;
    }
}

@media only screen and (max-width: 550px) {

    /* Preloader */
    .preloader #site-logo {
        width: 35vw;
    }

    .preloader-percentage {
        font-size: 35vw;
    }

    .preloader-image-cover:nth-child(1) {
        width: 50vw;
        height: 28vh;
    }

    .preloader-image-cover:nth-child(2) {
        width: 35vw;
    }

    .preloader-image-cover:nth-child(3) {
        width: 39vw;
        height: 24vh;
        top: 60%;
        left: 55%;
    }

    .preloader-image-cover:nth-child(4) {
        width: 33vw;
        left: 60%;
    }

    .preloader-image-cover:nth-child(5) {
        height: 23vh;
        top: 57%;
        left: 8%;
    }

    .preloader-image-cover:nth-child(6) {
        width: 50vw;
        height: 16vh;
        top: 17%;
        left: 24%;
    }

    /* Header */
    .scrolled {
        transform: none;
    }

    .site-message {
        display: none;
    }

    /* Homepage */
    .homepage-banner-slide {
        padding-top: 150%;
    }

    .homepage-banner-slide-content h1 {
        font-size: 23vw;
    }

    .homepage-banner-slide-content p {
        font-size: 6vw;
        padding-bottom: 50px;
    }

    .homepage-area-title {
        font-size: 14vw;
    }

    .homepage-area-subtitle {
        font-size: 8vw;
    }

    .homepage-products-section-title {
        padding: 40px 0;
    }

    .homepage-categories-section {
        padding-bottom: 50px;
    }

    .homepage-banner-slide-button {
        padding: 15px 3vw;
        font-size: 12px;
    }

    .homepage-info-section-items {
        grid-template-columns: repeat(1, 1fr);
        padding: 50px 0;
    }

    .home .woocommerce ul.products {
        grid-template-columns: repeat(1, 1fr);
    }

    /* Product Archive */
    .woocommerce-products-header {
        padding-top: 150px;
    }

    .woocommerce ul.products {
        grid-template-columns: repeat(1, 1fr);
    }

    .archive-product-container .product:nth-child(odd) {
        border-right: none;
    }

    .term-description {
        padding: 0 3vw;
    }

    .woocommerce-ordering {
        grid-column-start: 2;
    }

    .woocommerce-ordering .orderby {
        width: 100%;
    }

    /* Single Product */
    .single-product-description-left-content {
        padding: 0px 20px;
    }

    .single-product-body {
        padding-top: 120px;
    }

    .single-product-container {
        flex-direction: column-reverse;
    }

    .single-product-content {
        width: 100%;
        padding: 2vh 4vw;
    }

    .single-product-content .entry-title {
        font-size: 6vw;
    }

    .single-product-gallery {
        border: none;
        width: 100%;
    }

    .single-product-description {
        display: block;
    }

    .single-product-description-left {
        width: 100%;
        border: none;
    }

    .single-product-description-right {
        display: none;
    }

    .description-right-background {
        height: 500px;
    }

    .product a:nth-child(1)::before {
        font-size: 17vw;
    }

    .description-right-image {
        width: 70%;
    }

    /* Footer */
    .footer-bottom-row-col-1 {
        grid-column: span 12;
    }

    .footer-bottom-row-col-2 {
        grid-row-start: 2;
        grid-column: span 6;
    }

    .footer-bottom-row-col-2 img {
        width: 75%;
    }

    .footer-bottom-row-col-3 {
        grid-row-start: 2;
        grid-column: span 6;
    }

    .footer-bottom-row-col-4 {
        grid-row-start: 3;
        grid-column: span 6;
    }

    .footer-bottom-row-col-5 {
        grid-row-start: 3;
        grid-column: span 6;
    }
}

@media (max-height:830px) {
    #primary-menu>li.menu-item-has-children>.sub-menu {
        column-count: 4;
    }
}

@media (max-height:730px) {
    #primary-menu>li.menu-item-has-children>.sub-menu {
        column-count: 5;
    }
}

@media (max-height:600px) {
    #primary-menu>li.menu-item-has-children>.sub-menu {
        padding: 215px 36px 36px 36px !important;
    }

    #primary-menu li.menu-item-has-children.show>a>.menu-img-wrapper {
        display: none;
    }
}


/* Blog */
.h-news-wrapper {
    padding: 150px 0;
}

.h-news-wrapper h1 {
    margin: 40px auto;
    font-size: 62px;
    font-weight: 600;
    text-align: center;
    font-family: "DM Mono", monospace;
}

.h-news-title {
    margin-bottom: 20px;
}

.news-wrapper {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.h-news-date {
    font-size: 16px;
    line-height: 24px;
    opacity: 0.5;
}

.h-news-item-title {
    font-size: 20px;
    line-height: 28px;
    font-weight: 700;
    color: var(--main-black);
    padding: 0 0 10px;
    margin: 0 0 10px;
    font-style: normal;
    font-family: 'Inter';
    border-bottom: 2px solid var(--main-red-color);
}

.h-news-item-excerpt {
    font-size: 16px;
    line-height: 24px;
    margin: 0 0 30px;
}

.h-news-item-link {
    font-size: 16px;
    line-height: 24px;
    color: var(--main-red-color);
    font-weight: 500;
    text-decoration: underline;
    display: block;
    width: max-content;
    position: absolute;
    left: 30px;
    bottom: 30px;
}

.h-news-item-content {
    padding: 30px;
}

.h-news-item {
    background: var(--main-white);
    border-radius: 8px;
    background: rgba(255, 255, 255, 1);
    box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.25);
    transition: var(--main-easing);
    overflow: hidden;
}

.archive-header {
    display: none;
}

.h-news-item-img img {
    transition: var(--main-easing);
}

.h-news-item:hover img {
    transform: scale(1.02);
}

.h-news-item:hover {
    box-shadow: 0px 1px 4px 0px rgba(0, 0, 0, 0.25);
}

.news-link {
    width: max-content;
    display: block;
    margin: 30px auto 0;
    font-size: 16px;
    line-height: 24px;
    font-weight: 500;
    border-bottom: 1px solid var(--main-red);
    color: var(--main-red);
}