/*------------------------------------------------------------------
[Table of contents]
  01. Root
-------------------------------------------------------------------*/
/*------------------------------------ 
    01 - Root
------------------------------------*/
:root {
    --theme-width: 1520px;
    --theme-gutter: 36px;
    --theme-screen-padding: 40px;
    --theme-radius-sm: 12px;
    --theme-radius-base: 16px;
    --theme-radius-lg: 20px;
    --theme-radius-xl: 56px;
    --theme-logo-height-mobile: 30px;
    --theme-logo-height-desktop: 34px;
    --theme-body-font: Inter, sans-serif;
    --theme-body-font-size: 16px;
    --theme-body-font-weight: 400;
    --theme-body-letter-spacing: -0.01em;
    --theme-body-line-height: 1.5;
    --theme-body-text-align: left;
    --theme-heading-font: Inter, sans-serif;
    --theme-heading-font-weight: 500;
    --theme-heading-letter-spacing: -0.025em;
    --theme-heading-line-height: 1.5;
    --theme-text-3xs: 11px;
    --theme-text-2xs: 12px;
    --theme-text-xs: 13px;
    --theme-text-sm: 14px;
    --theme-text-md: 15px;
    --theme-text-base: 16px;
    --theme-text-lg: 18px;
    --theme-text-xl: 20px;
    --theme-text-2xl: 24px;
    --theme-text-3xl: 30px;
    --theme-text-4xl: 36px;
    --theme-text-5xl: 48px;
    --theme-text-6xl: 56px;
    --theme-text-7xl: 64px;
    --theme-text-8xl: 72px;
    --theme-text-9xl: 80px;
    --theme-text-10xl: 96px;
    --theme-title-sm: 28px;
    --theme-title-base: 36px;
    --theme-title-lg: 48px;
    --theme-title-xl: 56px;
    --theme-title-2xl: 66px;
    --theme-title-3xl: 86px;
    --theme-title-4xl: 96px;
    --theme-announcement-font-size: 13px;
    --theme-announcement-font-weight: 500;
    --theme-announcement-height-mobile: 40px;
    --theme-announcement-height-desktop: 50px;
    --theme-announcement-gap: 16px;
    --theme-header-height-mobile: 56px;
    --theme-header-height-desktop: 106px;
    --theme-header-column-gap: 40px;
    --theme-header-action-icon-size: 28px;
    --theme-header-action-label-size: 15px;
    --theme-menu-font: Inter, sans-serif;
    --theme-menu-font-size: 18px;
    --theme-menu-font-weight: 500;
    --theme-menu-letter-spacing: -0.025em;
    --theme-menu-gap: 28px;
    --theme-sub-menu-font-size: 16px;
    --theme-sub-menu-font-weight: 400;
    --theme-sub-menu-letter-spacing: -0.025em;
    --theme-sub-menu-padding: 36px;
    --theme-sub-menu-link-padding: 4px;
    --theme-button-font: Inter, sans-serif;
    --theme-button-font-size: 15px;
    --theme-button-font-size-mobile: 13px;
    --theme-button-font-weight: 600;
    --theme-button-letter-spacing: -0.02em;
    --theme-button-height: 54px;
    --theme-button-height-mobile: 44px;
    --theme-button-padding: 32px;
    --theme-button-padding-mobile: 22px;
    --theme-input-font: Inter, sans-serif;
    --theme-input-font-size: 14px;
    --theme-input-font-size-mobile: 13px;
    --theme-input-font-weight: 500;
    --theme-input-letter-spacing: -0.02em;
    --theme-input-height: 52px;
    --theme-input-height-mobile: 44px;
    --theme-input-padding: 14px;
    --theme-input-padding-mobile: 12px;
    --theme-input-border-radius: 8px;
    --theme-product-name-font: Inter, sans-serif;
    --theme-product-name-font-size-mobile: 15px;
    --theme-product-name-font-size: 18px;
    --theme-product-name-line-height: 1.55;
    --theme-product-name-weight: 600;
    --theme-product-name-letter-spacing: -0.02rem;
    --theme-product-name-line: 2;
    --theme-product-price-font: Inter, sans-serif;
    --theme-product-price-font-size: 15px;
    --theme-product-price-weight: 400;
    --theme-product-price-letter-spacing: -0.02rem;
    --theme-footer-font-size: 14px;
    --theme-transition-nav-time: 0.5s;
    --theme-transition-nav: cubic-bezier(0.3, 1, 0.3, 1);
    --theme-transition-primary: cubic-bezier(0.7, 0, 0.3, 1);
    --color-white: #fff;
    --color-white-rgb: 255, 255, 255;
    --color-black: #000;
    --color-black-rgb: 0, 0, 0;
    --color-body-background: #fff;
    --color-body-foreground: #212529;
    --color-overlay-background-opacity: 0.4;
    --color-overlay-background-rgb: 0, 0, 0;
    --color-gray-50: #fafafa;
    --color-gray-100: #f4f4f5;
    --color-gray-200: #e4e4e7;
    --color-gray-300: #d4d4d8;
    --color-gray-400: #a1a1aa;
    --color-gray-500: #71717a;
    --color-gray-600: #52525b;
    --color-gray-700: #3f3f46;
    --color-gray-800: #27272a;
    --color-gray-900: #18181b;
    --color-gray-950: #09090b;
    --color-red: #e11d48;
    --color-red-light: #fff1f2;
    --color-red-rgb: 225, 29, 72;
    --color-green: #16a34a;
    --color-green-light: #f0fdf4;
    --color-green-rgb: 34, 197, 94;
    --color-orange: #f97316;
    --color-orange-light: #fff7ed;
    --color-orange-rgb: 249, 115, 22;
    --color-yellow: #facc15;
    --color-yellow-rgb: 250, 204, 21;
    --color-blue: #3b82f6;
    --color-blue-light: #eff6ff;
    --color-blue-rgb: 59, 130, 246;
    --color-primary-background: #18181b;
    --color-primary-background-rgb: 24, 24, 27;
    --color-primary-foreground: #fff;
    --color-primary-foreground-rgb: 255, 255, 255;
    --color-secondary-background: #d4d4d8;
    --color-secondary-background-rgb: 212, 212, 212;
    --color-secondary-foreground: #18181b;
    --color-secondary-foreground-rgb: 24, 24, 27;
    --color-announcement-background: #09090b;
    --color-announcement-foreground: #FFF;
    --color-header-background: #fff;
    --color-header-foreground: #212529;
    --color-sub-menu-background: #fff;
    --color-sub-menu-foreground: #212529;
    --color-product-background: #f4f4f5;
    --color-footer-background: #09090b;
    --color-footer-foreground: #a1a1aa;
    --color-footer-link: #fff;
    --color-footer-border: #27272a;
    --color-payment-card-background: #fff;
}

/*------------------------------------ 
    02 - Clearfix
------------------------------------*/
/* --- Bootstrap clearfix --- */
:root, [data-bs-theme=light] {
    --bs-breakpoint-lg: 1024px;
}

/* --- Default border clearfix --- */
*, :after, :before {
    border: 0 solid #e5e7eb;
}

/* --- Body clearfix --- */
body {
    font-family: var(--theme-body-font);
    font-size: var(--theme-body-font-size);
    font-weight: var(--theme-body-font-weight);
    line-height: var(--theme-body-line-height);
    letter-spacing: var(--theme-body-letter-spacing);
    text-align: var(--theme-body-text-align);
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overscroll-behavior-y: contain;
}
body.content-rounded::before {
    content: "";
    position: absolute;
    top: 0;
    width: 100%;
    height: var(--theme-radius-sm);
    background-color: var(--color-body-foreground);
    z-index: -1;
}
@media screen and (min-width: 1024.02px) {
    body.content-rounded::before {
        height: var(--theme-radius-xl);
    }
}
body.content-rounded .page-content {
    padding-top: 0.125rem;
}
body.content-rounded .main-content {
    position: relative;
    background-color: var(--color-body-background);
    border-bottom-left-radius: var(--theme-radius-sm);
    border-bottom-right-radius: var(--theme-radius-sm);
}
@media screen and (min-width: 1024.02px) {
    body.content-rounded .main-content {
        border-bottom-left-radius: var(--theme-radius-xl);
        border-bottom-right-radius: var(--theme-radius-xl);
    }
}
body.content-rounded .main-content::after {
    content: "";
    position: absolute;
    bottom: 0;
    width: 100%;
    height: var(--theme-radius-sm);
    background-color: var(--color-footer-background);
    z-index: -1;
}
@media screen and (min-width: 1024.02px) {
    body.content-rounded .main-content::after {
        height: var(--theme-radius-xl);
    }
}
body.content-rounded:has(.site-announcement-bar)::before {
    background-color: var(--color-announcement-background);
    top: var(--theme-announcement-height-mobile);
}
@media screen and (min-width: 1024.02px) {
    body.content-rounded:has(.site-announcement-bar)::before {
        top: var(--theme-announcement-height-desktop);
    }
}
body.content-rounded:has(.site-announcement-bar) .page-content {
    padding-top: 0;
    border-top-left-radius: var(--theme-radius-sm);
    border-top-right-radius: var(--theme-radius-sm);
}
@media screen and (min-width: 1024.02px) {
    body.content-rounded:has(.site-announcement-bar) .page-content {
        border-top-left-radius: var(--theme-radius-xl);
        border-top-right-radius: var(--theme-radius-xl);
    }
}

/* --- Image clearfix --- */
img {
    max-width: 100%;
    height: auto;
    image-rendering: -webkit-optimize-contrast;
}

/* --- Heading clearfix --- */
h1, h2, h3, h4, h5, h6 {
    font-family: var(--theme-heading-font);
    font-weight: var(--theme-heading-font-weight);
    letter-spacing: var(--theme-heading-letter-spacing);
    line-height: var(--theme-heading-line-height);
}

/* --- Page content clearfix --- */
.page-content {
    position: relative;
    overflow: hidden;
}

/* --- Main content clearfix --- */
.main-content {
    position: relative;
    min-height: 100vh;
    background-color: var(--color-body-background);
    padding-bottom: 2.5rem;
}
@media screen and (min-width: 1024.02px) {
    .main-content {
        padding-bottom: 3.75rem;
    }
}

/* --- Container clearfix --- */
.container {
    max-width: var(--theme-width);
    margin: 0 auto;
}
@media screen and (min-width: 1024.02px) {
    .container {
        --bs-gutter-x: var(--theme-gutter);
        padding-left: var(--theme-screen-padding);
        padding-right: var(--theme-screen-padding);
    }
}
@media screen and (min-width: 1600.02px) {
    .container.wide {
        max-width: 100%;
        padding-left: calc(var(--theme-screen-padding) * 3);
        padding-right: calc(var(--theme-screen-padding) * 3);
    }
}

/* --- Row clearfix --- */
@media screen and (min-width: 1024.02px) {
    .row {
        --bs-gutter-x: var(--theme-gutter);
    }
}
.row.gap-y-10 {
    row-gap: 0.625rem;
}
.row.gap-y-20 {
    row-gap: 1.25rem;
}
.row.gap-y-30 {
    row-gap: 1.875rem;
}
.row.row-seperate .col-12:nth-child(1) {
    border-bottom: 0.0625rem solid var(--color-gray-300);
}
@media screen and (min-width: 1024.02px) {
    .row.row-seperate .col-12:nth-child(1) {
        position: relative;
        border-bottom: none;
    }
    .row.row-seperate .col-12:nth-child(1)::after {
        content: "";
        display: block;
        position: absolute;
        height: 100%;
        width: 0.0625rem;
        right: 0;
        top: 0;
        background-color: var(--color-gray-300);
    }
}
@media screen and (min-width: 1024.02px) {
    .row.content-wrapper:not(.full-width):not(.flex-row-reverse) .primary-column {
        padding-right: 3.5rem;
    }
}
@media screen and (min-width: 1024.02px) {
    .row.content-wrapper:not(.full-width):not(.flex-row-reverse) .secondary-column {
        padding-left: 3.5rem;
    }
}
@media screen and (min-width: 1024.02px) {
    .row.content-wrapper:not(.full-width).flex-row-reverse .primary-column {
        padding-left: 3.5rem;
    }
}
@media screen and (min-width: 1024.02px) {
    .row.content-wrapper:not(.full-width).flex-row-reverse .secondary-column {
        padding-right: 3.5rem;
    }
}

/*------------------------------------ 
    03 - Global
------------------------------------*/
@-webkit-keyframes dot-keyframes {
    0% {
        -webkit-transform: scale(0.5);
        transform: scale(0.5);
    }
    25% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    75% {
        -webkit-transform: scale(0.5);
        transform: scale(0.5);
    }
    100% {
        -webkit-transform: scale(0.5);
        transform: scale(0.5);
    }
}
@keyframes dot-keyframes {
    0% {
        -webkit-transform: scale(0.5);
        transform: scale(0.5);
    }
    25% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    75% {
        -webkit-transform: scale(0.5);
        transform: scale(0.5);
    }
    100% {
        -webkit-transform: scale(0.5);
        transform: scale(0.5);
    }
}
@-webkit-keyframes rotate {
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
@keyframes rotate {
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
@-webkit-keyframes marquee-left {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
    }
}
@keyframes marquee-left {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    100% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
    }
}
@-webkit-keyframes marquee-right {
    0% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
    }
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}
@keyframes marquee-right {
    0% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
    }
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}
@-webkit-keyframes marquee-top {
    0% {
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);
    }
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}
@keyframes marquee-top {
    0% {
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);
    }
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}
@-webkit-keyframes marquee-bottom {
    0% {
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);
    }
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}
@keyframes marquee-bottom {
    0% {
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);
    }
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}
svg .fill {
    fill: var(--color-gray-200);
}

.site-brand {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}
.site-brand a {
    position: relative;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: currentColor;
    text-decoration: none;
}
.site-brand a .site-brand-text {
    font-size: 1.875rem;
    font-weight: 600;
}
.site-brand a img {
    height: var(--theme-logo-height-mobile);
}
@media screen and (min-width: 1024.02px) {
    .site-brand a img {
        height: var(--theme-logo-height-desktop);
    }
}
.site-brand a img.transparent {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
}

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

.reversed-link {
    --transform-origin-start: left;
    --transform-origin-end: right;
    --reversed-link-gap: min(100%, 1.45em);
    background: -webkit-gradient(linear,  from(currentColor), to(currentColor)) 0 var(--reversed-link-gap)/0 1px no-repeat;
    background: linear-gradient(to var(--transform-origin-start), currentColor, currentColor) 0 var(--reversed-link-gap)/0 1px no-repeat;
    background-position-x: var(--transform-origin-end);
    -webkit-transition: background-size 0.5s cubic-bezier(0.3, 1, 0.3, 1);
    transition: background-size 0.5s cubic-bezier(0.3, 1, 0.3, 1);
}
.reversed-link:hover {
    background-size: 100% 1px;
    background-position-x: var(--transform-origin-start);
}

.underlined-link {
    --underline-offset: 0.25rem;
    text-decoration: underline;
    text-underline-offset: var(--underline-offset);
    text-decoration-thickness: 0.0625rem;
    text-decoration-color: transparent;
    -webkit-transition: text-decoration-color 0.3s ease-in-out;
    transition: text-decoration-color 0.3s ease-in-out;
}
.underlined-link:hover {
    text-decoration-color: currentColor;
}

/* --- Site loaders styles --- */
.site-loader {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}
.site-loader.dots-animation {
    gap: 0.125rem;
}

.loader-dot {
    display: block;
    width: 0.3125rem;
    height: 0.3125rem;
    background-color: var(--color-primary-background);
    border-radius: 0.375rem;
    -webkit-transform: scale(0.5);
    transform: scale(0.5);
    -webkit-animation: dot-keyframes 1.2s infinite ease-in-out;
    animation: dot-keyframes 1.2s infinite ease-in-out;
}
.loader-dot:nth-of-type(2) {
    -webkit-animation-delay: 0.2s;
    animation-delay: 0.2s;
}
.loader-dot:nth-of-type(3) {
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s;
}
.loader-dot:nth-of-type(4) {
    -webkit-animation-delay: 0.4s;
    animation-delay: 0.4s;
}
.loader-dot:nth-of-type(5) {
    -webkit-animation-delay: 0.5s;
    animation-delay: 0.5s;
}

.loader-default::after {
    content: "";
    position: absolute;
    width: 2.25rem;
    height: 2.25rem;
    border: 1px solid transparent;
    border-left-color: var(--color-gray-900);
    border-radius: 50%;
    vertical-align: middle;
    -webkit-animation: rotate 450ms infinite linear;
    animation: rotate 450ms infinite linear;
}

/* Site close button */
.site-close {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}
.site-close a {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 1.375rem;
    width: 2.25rem;
    height: 2.25rem;
    color: currentColor;
    border: 0.0625rem solid var(--color-gray-300);
    border-radius: 50%;
}
@media screen and (min-width: 1024.02px) {
    .site-close a {
        width: 2.625rem;
        height: 2.625rem;
    }
}
.site-close a svg {
    width: 1.375rem;
    height: 1.375rem;
    -webkit-transition: -webkit-transform 0.45s cubic-bezier(0.42, 0, 0.58, 1);
    transition: -webkit-transform 0.45s cubic-bezier(0.42, 0, 0.58, 1);
    transition: transform 0.45s cubic-bezier(0.42, 0, 0.58, 1);
    transition: transform 0.45s cubic-bezier(0.42, 0, 0.58, 1), -webkit-transform 0.45s cubic-bezier(0.42, 0, 0.58, 1);
}
.site-close a i {
    line-height: 1;
    -webkit-transition: -webkit-transform 0.45s cubic-bezier(0.42, 0, 0.58, 1);
    transition: -webkit-transform 0.45s cubic-bezier(0.42, 0, 0.58, 1);
    transition: transform 0.45s cubic-bezier(0.42, 0, 0.58, 1);
    transition: transform 0.45s cubic-bezier(0.42, 0, 0.58, 1), -webkit-transform 0.45s cubic-bezier(0.42, 0, 0.58, 1);
}
.site-close a i::before {
    margin: 0;
}
.site-close a:hover svg, .site-close a:hover i {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

/* Cart empty */
.site-empty-content {
    text-align: center;
}
.site-empty-content svg {
    width: auto;
    height: 4.125rem;
    margin-bottom: 1.5rem;
}
.site-empty-content .entry-title {
    font-size: var(--theme-text-2xl);
    font-weight: 500;
}
.site-empty-content .entry-description {
    font-size: 0.875rem;
    color: var(--color-gray-600);
    margin-bottom: 1.875rem;
}
@media screen and (min-width: 1024.02px) {
    .site-empty-content .entry-description {
        font-size: 0.9375rem;
    }
}

/* Custom backgrounds */
.custom-background {
    background-color: var(--custom-background);
}
.custom-color {
    color: var(--custom-color);
}
.custom-gradient {
    background: -webkit-gradient(linear, from(var(--grandient-start-color)), to(var(--grandient-end-color)));
    background: linear-gradient(to var(--grandient-direction), var(--grandient-start-color), var(--grandient-end-color));
}

.site-search-form {
    width: 100%;
}
.site-search-form .search-form {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.site-search-form .site-search-result {
    display: none;
}

.image-overlay::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.image-overlay.dark::before {
    background-color: rgba(var(--color-overlay-background-rgb), var(--overlay-opacity));
}
.image-overlay.light::before {
    background-color: rgba(255, 255, 255, 0.1);
}

.section-padding {
    padding-top: var(--padding-top-mobile, 0);
    padding-bottom: var(--padding-bottom-mobile, 0);
}
@media screen and (min-width: 768.02px) {
    .section-padding {
        padding-top: var(--padding-top-tablet, 0);
        padding-bottom: var(--padding-bottom-tablet, 0);
    }
}
@media screen and (min-width: 1024.02px) {
    .section-padding {
        padding-top: var(--padding-top-desktop, 0);
        padding-bottom: var(--padding-bottom-desktop, 0);
    }
}

.max-width {
    max-width: var(--max-width-mobile);
}
@media screen and (min-width: 768.02px) {
    .max-width {
        max-width: var(--max-width-tablet);
    }
}
@media screen and (min-width: 1024.02px) {
    .max-width {
        max-width: var(--max-width-desktop);
    }
}

.highlighted-text {
    -webkit-background-clip: text;
    background-clip: content-box;
}
.highlighted-text.with-gradient {
    background: -webkit-gradient(linear, left top, left bottom, from(var(--gradient-angle)), color-stop(var(--gradient-start)), to(var(--gradient-end)));
    background: linear-gradient(var(--gradient-angle), var(--gradient-start), var(--gradient-end));
    background-repeat: no-repeat;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.highlighted-text.with-image {
    background-image: var(--image-url);
    background-repeat: no-repeat;
    color: transparent;
}

.site-module-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 0.375rem;
    margin-bottom: 1.5rem;
}
@media screen and (min-width: 1024.02px) {
    .site-module-header {
        gap: 2.625rem;
        margin-bottom: 2.375rem;
    }
    .site-module-header.flex-column {
        gap: 1rem;
        margin-bottom: 4.125rem;
    }
}
@media screen and (min-width: 1024.02px) and (min-width: 1024.02px) {
    .site-module-header.flex-column .entry-title {
        font-size: 3rem;
    }
}
.site-module-header .entry-title {
    font-size: 1.625rem;
    font-weight: 500;
    margin-bottom: 0;
}
@media screen and (min-width: 1024.02px) {
    .site-module-header .entry-title {
        font-size: 2.5rem;
    }
}
.site-module-header .entry-description {
    font-size: 0.9375rem;
    opacity: 0.75;
}
@media screen and (min-width: 1024.02px) {
    .site-module-header .entry-description {
        font-size: 1.125rem;
    }
}
.site-module-header .entry-description p {
    margin-bottom: 0;
}
.site-module-header .site-module-tabs ul {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 0.375rem;
    list-style: none;
    margin: 0;
    padding: 0;
}
.site-module-header .site-module-tabs ul li a {
    color: currentColor;
    text-decoration: none;
    -webkit-transition: all 0.1s cubic-bezier(0.42, 0, 0.58, 1);
    transition: all 0.1s cubic-bezier(0.42, 0, 0.58, 1);
}
.site-module-header .site-module-tabs.style-1 ul {
    gap: 0;
}
@media screen and (min-width: 768.02px) {
    .site-module-header .site-module-tabs.style-1 ul {
        top: 0.125rem;
    }
}
.site-module-header .site-module-tabs.style-1 ul li {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: var(--theme-text-md);
}
@media screen and (min-width: 768.02px) {
    .site-module-header .site-module-tabs.style-1 ul li {
        font-size: var(--theme-text-lg);
    }
}
@media screen and (min-width: 1024.02px) {
    .site-module-header .site-module-tabs.style-1 ul li {
        font-size: 1.375rem;
    }
}
.site-module-header .site-module-tabs.style-1 ul li::after {
    content: "/";
    margin: 0 0.375rem;
    color: var(--color-gray-300);
}
@media screen and (min-width: 768.02px) {
    .site-module-header .site-module-tabs.style-1 ul li::after {
        margin: 0 0.5rem;
    }
}
@media screen and (min-width: 1024.02px) {
    .site-module-header .site-module-tabs.style-1 ul li::after {
        margin: 0 0.75rem;
    }
}
.site-module-header .site-module-tabs.style-1 ul li:last-child::after {
    display: none;
}
.site-module-header .site-module-tabs.style-1 ul li a {
    font-weight: 500;
    color: var(--color-gray-400);
}
.site-module-header .site-module-tabs.style-1 ul li a:hover {
    color: var(--color-gray-600);
}
.site-module-header .site-module-tabs.style-1 ul li a.active {
    color: var(--color-black);
}
@media screen and (min-width: 1024.02px) {
    .site-module-header .site-module-tabs.style-2 ul {
        gap: 0.5rem;
    }
}
.site-module-header .site-module-tabs.style-2 ul li {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}
.site-module-header .site-module-tabs.style-2 ul li a {
    font-size: var(--theme-text-sm);
    font-weight: 500;
    padding: 0.5rem 1rem;
    background-color: var(--color-gray-100);
    border-radius: 62.4375rem;
}
@media screen and (min-width: 1024.02px) {
    .site-module-header .site-module-tabs.style-2 ul li a {
        font-size: var(--theme-text-base);
        padding: 0.875rem 1.5rem;
    }
}
.site-module-header .site-module-tabs.style-2 ul li a:hover {
    background-color: var(--color-gray-200);
}
.site-module-header .site-module-tabs.style-2 ul li a.active {
    background-color: var(--color-black);
    color: var(--color-white);
}
.site-module-header .site-module-tabs.style-2.bordered ul li a {
    background-color: transparent;
    border: 0.0625rem solid var(--color-gray-300);
}
.site-module-header .site-module-tabs.style-2.bordered ul li a:hover {
    background-color: var(--color-gray-100);
    border-color: transparent;
}
.site-module-header .site-module-tabs.style-2.bordered ul li a.active {
    background-color: var(--color-black);
    color: var(--color-white);
    border-color: transparent;
}

/* Marquee effect */
.animation-marquee {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    gap: var(--marquee-gap-mobile);
    max-width: none;
    white-space: nowrap;
    overflow: hidden;
    pointer-events: none;
}
@media screen and (min-width: 1024.02px) {
    .animation-marquee {
        pointer-events: auto;
        gap: var(--marquee-gap-desktop);
    }
}
.animation-marquee > * {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    -webkit-animation: marquee-left var(--marquee-speed, 20s) linear infinite;
    animation: marquee-left var(--marquee-speed, 20s) linear infinite;
    will-change: transform;
}
@media screen and (min-width: 1024.02px) {
    .animation-marquee > * {
        gap: var(--marquee-gap-desktop);
    }
}
.animation-marquee > * .marquee-item {
    position: relative;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-left: var(--marquee-gap-mobile);
}
.animation-marquee:not(.hover-running):hover > * {
    -webkit-animation-play-state: paused;
    animation-play-state: paused;
}
.animation-marquee.hover-running:hover > * {
    -webkit-animation-play-state: running;
    animation-play-state: running;
}
.animation-marquee.direction-right > * {
    -webkit-animation: marquee-right var(--marquee-speed, 20s) linear infinite;
    animation: marquee-right var(--marquee-speed, 20s) linear infinite;
}

.site-logos .site-logos-item img {
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    max-height: var(--logo-mobile-height);
}
@media screen and (min-width: 1024.02px) {
    .site-logos .site-logos-item img {
        max-height: var(--logo-desktop-height);
    }
}

.site-copyright {
    font-size: var(--theme-text-sm);
}
.site-copyright p {
    margin-bottom: 0;
}
.site-copyright p a {
    font-weight: 600;
    color: currentColor;
    text-decoration: none;
}

.white-tooltip {
    --bs-tooltip-bg: var(--color-body-background);
    --bs-tooltip-color: var(--color-body-foreground);
    --bs-tooltip-opacity: 1;
    --bs-tooltip-padding-x: 0.625rem;
    --bs-tooltip-padding-y: 0.3125rem;
    --bs-tooltip-arrow-width: 1rem;
    --bs-tooltip-arrow-height: 0.5rem;
}
.white-tooltip .tooltip-arrow::before {
    border-right-color: var(--bs-tooltip-bg) !important;
}
.white-tooltip .tooltip-arrow::after {
    content: "";
    position: absolute;
    border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;
    border-color: transparent;
    border-style: solid;
    border-right-color: var(--color-gray-200);
    z-index: -1;
}
.white-tooltip .tooltip-inner {
    -webkit-box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    outline: 0.0625rem solid var(--color-gray-200);
}

.custom-height {
    height: var(--custom-height-mobile);
}
@media screen and (min-width: 768.02px) {
    .custom-height {
        height: var(--custom-height-tablet);
    }
}
@media screen and (min-width: 1024.02px) {
    .custom-height {
        height: var(--custom-height-desktop);
    }
}

.custom-image {
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.custom-image img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

.entry-video-background video, .entry-video-background iframe {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.site-image-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0.75rem;
}
.site-image-content .entry-media {
    position: relative;
    overflow: hidden;
    border-radius: var(--theme-radius-sm);
}
@media screen and (min-width: 1024.02px) {
    .site-image-content .entry-media {
        border-radius: var(--theme-radius-base);
    }
}

.site-page-header {
    text-align: center;
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
    margin-bottom: 1.25rem;
}
@media screen and (min-width: 1024.02px) {
    .site-page-header {
        padding-top: 7.5rem;
        padding-bottom: 7.5rem;
        margin-bottom: 3rem;
    }
}
.site-page-header .entry-title {
    font-size: 2rem;
    font-weight: 600;
    line-height: 1.1;
}
@media screen and (min-width: 1024.02px) {
    .site-page-header .entry-title {
        font-size: 4.125rem;
    }
}
.site-page-header .entry-description {
    font-size: 0.875rem;
    opacity: 0.75;
}
@media screen and (min-width: 1024.02px) {
    .site-page-header .entry-description {
        font-size: 1.125rem;
    }
}
.site-page-header.style-1 {
    background: -webkit-gradient(linear, left top, right top, from(rgb(255, 255, 255)), color-stop(50%, rgb(238, 238, 238)), to(rgb(255, 255, 255)));
    background: linear-gradient(90deg, rgb(255, 255, 255) 0%, rgb(238, 238, 238) 50%, rgb(255, 255, 255) 100%);
}

/* --- Global pagination styles --- */
.site-pagination, .woocommerce-pagination, .pagination-wrap {
    margin-top: 2.25rem;
}
@media screen and (min-width: 576.02px) {
    .site-pagination, .woocommerce-pagination, .pagination-wrap {
        margin-top: 4.125rem;
    }
}
.site-pagination ul, .woocommerce-pagination ul, .pagination-wrap ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 0.25rem;
    list-style: none;
    margin: 0;
    padding: 0;
}
.site-pagination ul li a, .woocommerce-pagination ul li a, .pagination-wrap ul li a {
    text-decoration: none;
    color: currentColor;
    -webkit-transition: all 0.15s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: all 0.15s cubic-bezier(0.25, 0.1, 0.25, 1);
}
.site-pagination ul li > *, .woocommerce-pagination ul li > *, .pagination-wrap ul li > * {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 0.8125rem;
    font-weight: 600;
    line-height: 1rem;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
}
@media screen and (min-width: 768.02px) {
    .site-pagination ul li > *, .woocommerce-pagination ul li > *, .pagination-wrap ul li > * {
        font-size: 0.875rem;
        width: 2.625rem;
        height: 2.625rem;
    }
}
.site-pagination ul li > *:not(.current):hover, .site-pagination ul li > *:not(.prev):hover, .site-pagination ul li > *:not(.next):hover, .site-pagination ul li > *:not(.dots):hover, .woocommerce-pagination ul li > *:not(.current):hover, .woocommerce-pagination ul li > *:not(.prev):hover, .woocommerce-pagination ul li > *:not(.next):hover, .woocommerce-pagination ul li > *:not(.dots):hover, .pagination-wrap ul li > *:not(.current):hover, .pagination-wrap ul li > *:not(.prev):hover, .pagination-wrap ul li > *:not(.next):hover, .pagination-wrap ul li > *:not(.dots):hover {
    background-color: var(--color-gray-100);
}
.site-pagination ul li > *.dots, .woocommerce-pagination ul li > *.dots, .pagination-wrap ul li > *.dots {
    font-size: 1rem;
    line-height: 1rem;
    background-color: transparent !important;
}
.site-pagination ul li > *.prev, .site-pagination ul li > *.next, .woocommerce-pagination ul li > *.prev, .woocommerce-pagination ul li > *.next, .pagination-wrap ul li > *.prev, .pagination-wrap ul li > *.next {
    font-size: 1.25rem;
    background-color: transparent !important;
    width: auto;
}
.site-pagination ul li > *.current, .woocommerce-pagination ul li > *.current, .pagination-wrap ul li > *.current {
    color: var(--color-white);
    background-color: var(--color-black) !important;
}

.section-margin {
    margin-top: 2.5rem;
}
@media screen and (min-width: 1024.02px) {
    .section-margin {
        margin-top: 3.75rem;
    }
}

@media screen and (min-width: 1024.02px) {
    .mobile-only {
        display: none !important;
    }
}

@media screen and (max-width: 1023.98px) {
    .desktop-only {
        display: none !important;
    }
}

/* --- Contact details styles --- */
.contact-details {
    margin-top: 1.625rem;
    margin-bottom: 1.625rem;
}
@media screen and (min-width: 1024.02px) {
    .contact-details {
        margin-top: 2.875rem;
        margin-bottom: 2.875rem;
    }
}
.contact-details ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 1.25rem;
    list-style: none;
    margin: 0;
    padding: 0;
}
.contact-details ul li {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 1rem;
}
.contact-details ul li .map-icon {
    font-size: 1.25rem;
}
.contact-details ul li .contact-info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}
.contact-details ul li .contact-info span {
    font-size: 0.75rem;
    color: var(--color-gray-500);
}
.contact-details ul li .contact-info h4 {
    font-size: 1.125rem;
    font-weight: 600;
}
.contact-details ul li .contact-info p {
    font-size: 0.875rem;
}
.contact-details ul li .contact-info a {
    font-size: 0.875rem;
    font-weight: 500;
    color: currentColor;
    text-decoration: none;
}
.contact-details ul li .contact-info a + a {
    margin-top: 0.25rem;
}

.contact-form-wrapper .wpcf7-form .col-12 {
    margin-bottom: 0.875rem;
}
.contact-form-wrapper .wpcf7-form label {
    display: block;
    font-size: 0.8125rem;
    margin-bottom: 0.25rem;
}
.contact-form-wrapper .wpcf7-form .wpcf7-submit {
    line-height: 1;
    color: var(--color-white);
    background-color: var(--color-black);
}

.content-not-found {
    padding: 40px 0;
}
@media screen and (min-width: 1024.02px) {
    .content-not-found {
        padding: 220px 0 7.5rem;
    }
}
.content-not-found .entry-title {
    font-size: 10rem;
}
@media screen and (min-width: 1024.02px) {
    .content-not-found .entry-title {
        font-size: 15rem;
    }
}
.content-not-found .entry-teaser {
    margin-bottom: 2rem;
}

.site-quickview {
    position: relative;
    max-width: 64rem;
    background-color: var(--color-white);
    margin-left: auto;
    margin-right: auto;
    padding: 1.25rem;
    border-radius: var(--theme-radius-base);
}
@media screen and (min-width: 768.02px) {
    .site-quickview {
        padding: 2.5rem;
    }
}
.site-quickview .mfp-close {
    font-size: 1.5rem;
    padding: 0;
    background-color: transparent !important;
}
@media screen and (min-width: 1024.02px) {
    .site-quickview .single-product-wrapper .product_title {
        font-size: 1.875rem;
    }
}

/*------------------------------------ 
    03 - Typography
------------------------------------*/
.font-thin {
    font-weight: 100;
}

.font-extralight {
    font-weight: 200;
}

.font-light {
    font-weight: 300;
}

.font-normal {
    font-weight: 400;
}

.font-medium {
    font-weight: 500;
}

.font-semibold {
    font-weight: 600;
}

.font-bold {
    font-weight: 700;
}

.font-extrabold {
    font-weight: 800;
}

.font-black {
    font-weight: 900;
}

.tracking-tighter {
    letter-spacing: -0.05em;
}

.tracking-tight {
    letter-spacing: -0.025em;
}

.tracking-normal {
    letter-spacing: 0em;
}

.tracking-wide {
    letter-spacing: 0.025em;
}

.tracking-wider {
    letter-spacing: 0.05em;
}

.tracking-widest {
    letter-spacing: 0.1em;
}

.leading-3 {
    line-height: 0.75rem;
}

.leading-4 {
    line-height: 1rem;
}

.leading-5 {
    line-height: 1.25rem;
}

.leading-6 {
    line-height: 1.5rem;
}

.leading-7 {
    line-height: 1.75rem;
}

.leading-8 {
    line-height: 2rem;
}

.leading-9 {
    line-height: 2.25rem;
}

.leading-10 {
    line-height: 2.5rem;
}

.leading-none {
    line-height: 1.1;
}

.leading-tight {
    line-height: 1.25;
}

.leading-snug {
    line-height: 1.375;
}

.leading-normal {
    line-height: 1.5;
}

.leading-relaxed {
    line-height: 1.625;
}

.leading-loose {
    line-height: 2;
}

.uppercase {
    text-transform: uppercase;
}

.capitalize {
    text-transform: capitalize;
}

.lowercase {
    text-transform: lowercase;
}

/* Title default font sizes */
.title-2xs {
    font-size: clamp(1rem, 0.8397435897rem + 0.8547008547vw, 1.25rem);
}

.title-xs {
    font-size: clamp(1.25rem, 1.0897435897rem + 0.8547008547vw, 1.5rem);
}

.title-sm {
    font-size: clamp(1.25rem, 1.0096153846rem + 1.2820512821vw, 1.625rem);
}

.title-md {
    font-size: clamp(1.375rem, 0.9743589744rem + 2.1367521368vw, 2rem);
}

.title-lg {
    font-size: clamp(1.5rem, 1.1892265193rem + 1.6574585635vw, 2.25rem);
}

.title-xl {
    font-size: clamp(1.5rem, 1.033839779rem + 2.4861878453vw, 2.625rem);
}

.title-2xl {
    font-size: clamp(1.625rem, 1.0552486188rem + 3.0386740331vw, 3rem);
}

.title-3xl {
    font-size: clamp(1.875rem, 1.3333333333rem + 2.8888888889vw, 3.5rem);
}

.title-4xl {
    font-size: clamp(2rem, 1.2916666667rem + 3.7777777778vw, 4.125rem);
}

.title-5xl {
    font-size: clamp(2rem, 1.1666666667rem + 4.4444444444vw, 4.5rem);
}

.title-6xl {
    font-size: clamp(2.125rem, 1.0416666667rem + 5.7777777778vw, 5.375rem);
}

.title-7xl {
    font-size: clamp(2.25rem, 1rem + 6.6666666667vw, 6rem);
}

.title-8xl {
    font-size: clamp(2.25rem, 0.5833333333rem + 8.8888888889vw, 7.25rem);
}

.title-9xl {
    font-size: clamp(2.25rem, 0.375rem + 10vw, 7.875rem);
}

/* Subtitle default font sizes */
.subtitle-xs {
    font-size: var(--theme-text-2xs);
}

.subtitle-sm {
    font-size: clamp(0.75rem, 0.6095505618rem + 0.7490636704vw, 0.875rem);
}

.subtitle-md {
    font-size: clamp(0.8125rem, 0.6720505618rem + 0.7490636704vw, 0.9375rem);
}

.subtitle-base {
    font-size: clamp(0.8125rem, 0.6018258427rem + 1.1235955056vw, 1rem);
}

.subtitle-lg {
    font-size: clamp(0.875rem, 0.5941011236rem + 1.4981273408vw, 1.125rem);
}

.subtitle-xl {
    font-size: clamp(0.9375rem, 0.5863764045rem + 1.872659176vw, 1.25rem);
}

.subtitle-2xl {
    font-size: clamp(1.125rem, 0.7036516854rem + 2.2471910112vw, 1.5rem);
}

/* Description default font sizes */
.description-xs {
    font-size: var(--theme-text-xs);
}

.description-sm {
    font-size: var(--theme-text-sm);
}

.description-md {
    font-size: clamp(0.8125rem, 0.6720505618rem + 0.7490636704vw, 0.9375rem);
}

.description-base {
    font-size: clamp(0.8125rem, 0.6018258427rem + 1.1235955056vw, 1rem);
}

.description-lg {
    font-size: clamp(0.8125rem, 0.6121794872rem + 1.0683760684vw, 1.125rem);
}

.description-xl {
    font-size: clamp(0.9375rem, 0.7371794872rem + 1.0683760684vw, 1.25rem);
}

.description-2xl {
    font-size: clamp(0.9375rem, 0.6570512821rem + 1.4957264957vw, 1.375rem);
}

.description-3xl {
    font-size: clamp(1rem, 0.6794871795rem + 1.7094017094vw, 1.5rem);
}

/*------------------------------------ 
    03 - Form
------------------------------------*/
/* Form Input */
input[type=color], input[type=date], input[type=datetime-local], input[type=datetime], input[type=email], input[type=month], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=time], input[type=url], input[type=week], textarea, select, .form-control, .form-select {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-family: var(--theme-input-font);
    font-size: var(--theme-input-font-size-mobile);
    font-weight: var(--theme-input-font-weight);
    letter-spacing: var(--theme-input-letter-spacing);
    line-height: 1;
    padding-left: 0;
    padding-right: 0;
    width: 100%;
}
@media screen and (min-width: 768.02px) {
    input[type=color], input[type=date], input[type=datetime-local], input[type=datetime], input[type=email], input[type=month], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=time], input[type=url], input[type=week], textarea, select, .form-control, .form-select {
        font-size: var(--theme-input-font-size);
    }
}
input[type=color]::-webkit-input-placeholder, input[type=date]::-webkit-input-placeholder, input[type=datetime-local]::-webkit-input-placeholder, input[type=datetime]::-webkit-input-placeholder, input[type=email]::-webkit-input-placeholder, input[type=month]::-webkit-input-placeholder, input[type=number]::-webkit-input-placeholder, input[type=password]::-webkit-input-placeholder, input[type=search]::-webkit-input-placeholder, input[type=tel]::-webkit-input-placeholder, input[type=text]::-webkit-input-placeholder, input[type=time]::-webkit-input-placeholder, input[type=url]::-webkit-input-placeholder, input[type=week]::-webkit-input-placeholder, textarea::-webkit-input-placeholder, select::-webkit-input-placeholder, .form-control::-webkit-input-placeholder, .form-select::-webkit-input-placeholder {
    font-weight: 400;
}
input[type=color]::-moz-placeholder, input[type=date]::-moz-placeholder, input[type=datetime-local]::-moz-placeholder, input[type=datetime]::-moz-placeholder, input[type=email]::-moz-placeholder, input[type=month]::-moz-placeholder, input[type=number]::-moz-placeholder, input[type=password]::-moz-placeholder, input[type=search]::-moz-placeholder, input[type=tel]::-moz-placeholder, input[type=text]::-moz-placeholder, input[type=time]::-moz-placeholder, input[type=url]::-moz-placeholder, input[type=week]::-moz-placeholder, textarea::-moz-placeholder, select::-moz-placeholder, .form-control::-moz-placeholder, .form-select::-moz-placeholder {
    font-weight: 400;
}
input[type=color]:-ms-input-placeholder, input[type=date]:-ms-input-placeholder, input[type=datetime-local]:-ms-input-placeholder, input[type=datetime]:-ms-input-placeholder, input[type=email]:-ms-input-placeholder, input[type=month]:-ms-input-placeholder, input[type=number]:-ms-input-placeholder, input[type=password]:-ms-input-placeholder, input[type=search]:-ms-input-placeholder, input[type=tel]:-ms-input-placeholder, input[type=text]:-ms-input-placeholder, input[type=time]:-ms-input-placeholder, input[type=url]:-ms-input-placeholder, input[type=week]:-ms-input-placeholder, textarea:-ms-input-placeholder, select:-ms-input-placeholder, .form-control:-ms-input-placeholder, .form-select:-ms-input-placeholder {
    font-weight: 400;
}
input[type=color]::-ms-input-placeholder, input[type=date]::-ms-input-placeholder, input[type=datetime-local]::-ms-input-placeholder, input[type=datetime]::-ms-input-placeholder, input[type=email]::-ms-input-placeholder, input[type=month]::-ms-input-placeholder, input[type=number]::-ms-input-placeholder, input[type=password]::-ms-input-placeholder, input[type=search]::-ms-input-placeholder, input[type=tel]::-ms-input-placeholder, input[type=text]::-ms-input-placeholder, input[type=time]::-ms-input-placeholder, input[type=url]::-ms-input-placeholder, input[type=week]::-ms-input-placeholder, textarea::-ms-input-placeholder, select::-ms-input-placeholder, .form-control::-ms-input-placeholder, .form-select::-ms-input-placeholder {
    font-weight: 400;
}
input[type=color]::placeholder, input[type=date]::placeholder, input[type=datetime-local]::placeholder, input[type=datetime]::placeholder, input[type=email]::placeholder, input[type=month]::placeholder, input[type=number]::placeholder, input[type=password]::placeholder, input[type=search]::placeholder, input[type=tel]::placeholder, input[type=text]::placeholder, input[type=time]::placeholder, input[type=url]::placeholder, input[type=week]::placeholder, textarea::placeholder, select::placeholder, .form-control::placeholder, .form-select::placeholder {
    font-weight: 400;
}
input[type=color]:not(.no-style), input[type=date]:not(.no-style), input[type=datetime-local]:not(.no-style), input[type=datetime]:not(.no-style), input[type=email]:not(.no-style), input[type=month]:not(.no-style), input[type=number]:not(.no-style), input[type=password]:not(.no-style), input[type=search]:not(.no-style), input[type=tel]:not(.no-style), input[type=text]:not(.no-style), input[type=time]:not(.no-style), input[type=url]:not(.no-style), input[type=week]:not(.no-style), textarea:not(.no-style), select:not(.no-style), .form-control:not(.no-style), .form-select:not(.no-style) {
    border-radius: var(--theme-radius-sm);
    height: var(--theme-input-height-mobile);
    padding-left: var(--theme-input-padding-mobile);
    padding-right: var(--theme-input-padding-mobile);
    border: 0.0625rem solid var(--color-gray-300);
}
@media screen and (min-width: 768.02px) {
    input[type=color]:not(.no-style), input[type=date]:not(.no-style), input[type=datetime-local]:not(.no-style), input[type=datetime]:not(.no-style), input[type=email]:not(.no-style), input[type=month]:not(.no-style), input[type=number]:not(.no-style), input[type=password]:not(.no-style), input[type=search]:not(.no-style), input[type=tel]:not(.no-style), input[type=text]:not(.no-style), input[type=time]:not(.no-style), input[type=url]:not(.no-style), input[type=week]:not(.no-style), textarea:not(.no-style), select:not(.no-style), .form-control:not(.no-style), .form-select:not(.no-style) {
        height: var(--theme-input-height);
        padding-left: var(--theme-input-padding);
        padding-right: var(--theme-input-padding);
        border-radius: var(--theme-radius-base);
    }
}
input[type=color].no-style, input[type=date].no-style, input[type=datetime-local].no-style, input[type=datetime].no-style, input[type=email].no-style, input[type=month].no-style, input[type=number].no-style, input[type=password].no-style, input[type=search].no-style, input[type=tel].no-style, input[type=text].no-style, input[type=time].no-style, input[type=url].no-style, input[type=week].no-style, textarea.no-style, select.no-style, .form-control.no-style, .form-select.no-style {
    border: none;
    background-color: transparent;
    outline: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

textarea {
    padding-top: 1rem;
    min-height: 7.875rem;
}

select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background: transparent;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='lucide lucide-chevron-down'><path d='m6 9 6 6 6-6'/></svg>");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    padding-right: 2.5rem !important;
    cursor: pointer;
}

/* Form Button */
button:not(.slick-arrow), .button, input[type=submit], .submit, .btn, .single_add_to_cart_button, .single_buy_now_button {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-family: var(--theme-button-font);
    font-size: var(--theme-button-font-size-mobile);
    font-weight: var(--theme-button-font-weight);
    letter-spacing: var(--theme-button-letter-spacing);
    line-height: 1;
    padding-top: 0;
    padding-bottom: 0;
    gap: 0.375rem;
    outline: 1px solid transparent;
    -webkit-transition: all 0.1s ease-in-out;
    transition: all 0.1s ease-in-out;
}
@media screen and (min-width: 768.02px) {
    button:not(.slick-arrow), .button, input[type=submit], .submit, .btn, .single_add_to_cart_button, .single_buy_now_button {
        font-size: var(--theme-button-font-size);
    }
}
button:not(.slick-arrow):not(.no-style):not(.btn-link), .button:not(.no-style):not(.btn-link), input[type=submit]:not(.no-style):not(.btn-link), .submit:not(.no-style):not(.btn-link), .btn:not(.no-style):not(.btn-link), .single_add_to_cart_button:not(.no-style):not(.btn-link), .single_buy_now_button:not(.no-style):not(.btn-link) {
    border-radius: var(--theme-radius-sm);
    padding-left: var(--theme-button-padding-mobile);
    padding-right: var(--theme-button-padding-mobile);
    height: var(--theme-button-height-mobile);
}
@media screen and (min-width: 768.02px) {
    button:not(.slick-arrow):not(.no-style):not(.btn-link), .button:not(.no-style):not(.btn-link), input[type=submit]:not(.no-style):not(.btn-link), .submit:not(.no-style):not(.btn-link), .btn:not(.no-style):not(.btn-link), .single_add_to_cart_button:not(.no-style):not(.btn-link), .single_buy_now_button:not(.no-style):not(.btn-link) {
        height: var(--theme-button-height);
        padding-left: var(--theme-button-padding);
        padding-right: var(--theme-button-padding);
        border-radius: var(--theme-radius-base);
    }
}
button:not(.slick-arrow):not(.no-style):not(.btn-link).btn-small, .button:not(.no-style):not(.btn-link).btn-small, input[type=submit]:not(.no-style):not(.btn-link).btn-small, .submit:not(.no-style):not(.btn-link).btn-small, .btn:not(.no-style):not(.btn-link).btn-small, .single_add_to_cart_button:not(.no-style):not(.btn-link).btn-small, .single_buy_now_button:not(.no-style):not(.btn-link).btn-small {
    font-size: var(--theme-button-font-size-mobile);
    height: var(--theme-button-height-mobile);
    padding-left: var(--theme-button-padding-mobile);
    padding-right: var(--theme-button-padding-mobile);
}
button:not(.slick-arrow):not(.no-style):not(.btn-link).btn-icon, .button:not(.no-style):not(.btn-link).btn-icon, input[type=submit]:not(.no-style):not(.btn-link).btn-icon, .submit:not(.no-style):not(.btn-link).btn-icon, .btn:not(.no-style):not(.btn-link).btn-icon, .single_add_to_cart_button:not(.no-style):not(.btn-link).btn-icon, .single_buy_now_button:not(.no-style):not(.btn-link).btn-icon {
    font-size: 1.125rem;
    width: var(--theme-button-height-mobile);
    height: var(--theme-button-height-mobile);
    gap: 0;
    padding-left: 0;
    padding-right: 0;
}
@media screen and (min-width: 768.02px) {
    button:not(.slick-arrow):not(.no-style):not(.btn-link).btn-icon, .button:not(.no-style):not(.btn-link).btn-icon, input[type=submit]:not(.no-style):not(.btn-link).btn-icon, .submit:not(.no-style):not(.btn-link).btn-icon, .btn:not(.no-style):not(.btn-link).btn-icon, .single_add_to_cart_button:not(.no-style):not(.btn-link).btn-icon, .single_buy_now_button:not(.no-style):not(.btn-link).btn-icon {
        width: var(--theme-button-height);
        height: var(--theme-button-height);
    }
    button:not(.slick-arrow):not(.no-style):not(.btn-link).btn-icon.btn-small, .button:not(.no-style):not(.btn-link).btn-icon.btn-small, input[type=submit]:not(.no-style):not(.btn-link).btn-icon.btn-small, .submit:not(.no-style):not(.btn-link).btn-icon.btn-small, .btn:not(.no-style):not(.btn-link).btn-icon.btn-small, .single_add_to_cart_button:not(.no-style):not(.btn-link).btn-icon.btn-small, .single_buy_now_button:not(.no-style):not(.btn-link).btn-icon.btn-small {
        width: var(--theme-button-height-mobile);
        height: var(--theme-button-height-mobile);
    }
}
button:not(.slick-arrow):not(.no-style):not(.btn-link).btn-rounded, .button:not(.no-style):not(.btn-link).btn-rounded, input[type=submit]:not(.no-style):not(.btn-link).btn-rounded, .submit:not(.no-style):not(.btn-link).btn-rounded, .btn:not(.no-style):not(.btn-link).btn-rounded, .single_add_to_cart_button:not(.no-style):not(.btn-link).btn-rounded, .single_buy_now_button:not(.no-style):not(.btn-link).btn-rounded {
    border-radius: 62.4375rem;
}
button:not(.slick-arrow):not(.no-style):not(.btn-link).btn-gray, .button:not(.no-style):not(.btn-link).btn-gray, input[type=submit]:not(.no-style):not(.btn-link).btn-gray, .submit:not(.no-style):not(.btn-link).btn-gray, .btn:not(.no-style):not(.btn-link).btn-gray, .single_add_to_cart_button:not(.no-style):not(.btn-link).btn-gray, .single_buy_now_button:not(.no-style):not(.btn-link).btn-gray {
    color: var(--color-black);
    background-color: var(--color-gray-200);
}
button:not(.slick-arrow):not(.no-style):not(.btn-link).btn-gray:hover, .button:not(.no-style):not(.btn-link).btn-gray:hover, input[type=submit]:not(.no-style):not(.btn-link).btn-gray:hover, .submit:not(.no-style):not(.btn-link).btn-gray:hover, .btn:not(.no-style):not(.btn-link).btn-gray:hover, .single_add_to_cart_button:not(.no-style):not(.btn-link).btn-gray:hover, .single_buy_now_button:not(.no-style):not(.btn-link).btn-gray:hover {
    background-color: var(--color-gray-300);
}
button:not(.slick-arrow):not(.no-style):not(.btn-link).btn-primary, .button:not(.no-style):not(.btn-link).btn-primary, input[type=submit]:not(.no-style):not(.btn-link).btn-primary, .submit:not(.no-style):not(.btn-link).btn-primary, .btn:not(.no-style):not(.btn-link).btn-primary, .single_add_to_cart_button:not(.no-style):not(.btn-link).btn-primary, .single_buy_now_button:not(.no-style):not(.btn-link).btn-primary {
    color: var(--color-primary-foreground);
    background-color: var(--color-primary-background);
    border-color: var(--color-primary-background);
}
button:not(.slick-arrow):not(.no-style):not(.btn-link).btn-primary:hover, .button:not(.no-style):not(.btn-link).btn-primary:hover, input[type=submit]:not(.no-style):not(.btn-link).btn-primary:hover, .submit:not(.no-style):not(.btn-link).btn-primary:hover, .btn:not(.no-style):not(.btn-link).btn-primary:hover, .single_add_to_cart_button:not(.no-style):not(.btn-link).btn-primary:hover, .single_buy_now_button:not(.no-style):not(.btn-link).btn-primary:hover {
    opacity: 0.9;
}
button:not(.slick-arrow):not(.no-style):not(.btn-link).btn-black, .button:not(.no-style):not(.btn-link).btn-black, input[type=submit]:not(.no-style):not(.btn-link).btn-black, .submit:not(.no-style):not(.btn-link).btn-black, .btn:not(.no-style):not(.btn-link).btn-black, .single_add_to_cart_button:not(.no-style):not(.btn-link).btn-black, .single_buy_now_button:not(.no-style):not(.btn-link).btn-black {
    color: var(--color-white);
    background-color: var(--color-black);
}
button:not(.slick-arrow):not(.no-style):not(.btn-link).btn-black:hover, .button:not(.no-style):not(.btn-link).btn-black:hover, input[type=submit]:not(.no-style):not(.btn-link).btn-black:hover, .submit:not(.no-style):not(.btn-link).btn-black:hover, .btn:not(.no-style):not(.btn-link).btn-black:hover, .single_add_to_cart_button:not(.no-style):not(.btn-link).btn-black:hover, .single_buy_now_button:not(.no-style):not(.btn-link).btn-black:hover {
    opacity: 0.9;
}
button:not(.slick-arrow):not(.no-style):not(.btn-link).btn-black.btn-outline, .button:not(.no-style):not(.btn-link).btn-black.btn-outline, input[type=submit]:not(.no-style):not(.btn-link).btn-black.btn-outline, .submit:not(.no-style):not(.btn-link).btn-black.btn-outline, .btn:not(.no-style):not(.btn-link).btn-black.btn-outline, .single_add_to_cart_button:not(.no-style):not(.btn-link).btn-black.btn-outline, .single_buy_now_button:not(.no-style):not(.btn-link).btn-black.btn-outline {
    color: var(--color-black);
    border-color: var(--color-black);
    outline-color: var(--color-black);
    background-color: transparent;
}
button:not(.slick-arrow):not(.no-style):not(.btn-link).btn-black.btn-outline:hover, .button:not(.no-style):not(.btn-link).btn-black.btn-outline:hover, input[type=submit]:not(.no-style):not(.btn-link).btn-black.btn-outline:hover, .submit:not(.no-style):not(.btn-link).btn-black.btn-outline:hover, .btn:not(.no-style):not(.btn-link).btn-black.btn-outline:hover, .single_add_to_cart_button:not(.no-style):not(.btn-link).btn-black.btn-outline:hover, .single_buy_now_button:not(.no-style):not(.btn-link).btn-black.btn-outline:hover {
    background-color: var(--color-black);
    color: var(--color-white);
}
button:not(.slick-arrow):not(.no-style):not(.btn-link).btn-white, .button:not(.no-style):not(.btn-link).btn-white, input[type=submit]:not(.no-style):not(.btn-link).btn-white, .submit:not(.no-style):not(.btn-link).btn-white, .btn:not(.no-style):not(.btn-link).btn-white, .single_add_to_cart_button:not(.no-style):not(.btn-link).btn-white, .single_buy_now_button:not(.no-style):not(.btn-link).btn-white {
    color: var(--color-black);
    background-color: var(--color-white);
}
button:not(.slick-arrow):not(.no-style):not(.btn-link).btn-white:hover, .button:not(.no-style):not(.btn-link).btn-white:hover, input[type=submit]:not(.no-style):not(.btn-link).btn-white:hover, .submit:not(.no-style):not(.btn-link).btn-white:hover, .btn:not(.no-style):not(.btn-link).btn-white:hover, .single_add_to_cart_button:not(.no-style):not(.btn-link).btn-white:hover, .single_buy_now_button:not(.no-style):not(.btn-link).btn-white:hover {
    opacity: 0.9;
}
button:not(.slick-arrow):not(.no-style):not(.btn-link).btn-white.btn-outline, .button:not(.no-style):not(.btn-link).btn-white.btn-outline, input[type=submit]:not(.no-style):not(.btn-link).btn-white.btn-outline, .submit:not(.no-style):not(.btn-link).btn-white.btn-outline, .btn:not(.no-style):not(.btn-link).btn-white.btn-outline, .single_add_to_cart_button:not(.no-style):not(.btn-link).btn-white.btn-outline, .single_buy_now_button:not(.no-style):not(.btn-link).btn-white.btn-outline {
    color: var(--color-white);
    border-color: var(--color-white);
    outline-color: var(--color-white);
    background-color: transparent;
}
button:not(.slick-arrow):not(.no-style).btn-link, .button:not(.no-style).btn-link, input[type=submit]:not(.no-style).btn-link, .submit:not(.no-style).btn-link, .btn:not(.no-style).btn-link, .single_add_to_cart_button:not(.no-style).btn-link, .single_buy_now_button:not(.no-style).btn-link {
    padding: 0;
    border-radius: 0;
    text-decoration: none;
    color: currentColor;
}
button:not(.slick-arrow):not(.no-style) i, .button:not(.no-style) i, input[type=submit]:not(.no-style) i, .submit:not(.no-style) i, .btn:not(.no-style) i, .single_add_to_cart_button:not(.no-style) i, .single_buy_now_button:not(.no-style) i {
    font-size: calc(var(--theme-button-font-size-mobile) * 1.25);
}

/*------------------------------------ 
    03 - Modules
------------------------------------*/
/* Announcement Bar */
.site-announcement-bar {
    position: relative;
    font-size: var(--theme-announcement-font-size);
    font-weight: var(--theme-announcement-font-weight);
    color: var(--color-announcement-foreground);
    z-index: 11;
}
.site-announcement-bar::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--color-announcement-background);
    z-index: -1;
}
.site-announcement-bar .site-announcement-bar-inner {
    height: var(--theme-announcement-height-mobile);
    gap: var(--theme-announcement-gap);
}
@media screen and (min-width: 1024.02px) {
    .site-announcement-bar .site-announcement-bar-inner {
        height: var(--theme-announcement-height-desktop);
    }
}
.site-announcement-bar .site-announcement-bar-inner .column {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 100%;
    gap: var(--theme-announcement-gap);
}
.site-announcement-bar .site-announcement-bar-inner .column.announcement-extra {
    display: none;
}
@media screen and (min-width: 1024.02px) {
    .site-announcement-bar .site-announcement-bar-inner .column.announcement-extra {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
    }
}
.site-announcement-bar .site-announcement-bar-inner .column.announcement-extra.right {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}
.site-announcement-bar .site-announcement-bar-inner .column.announcement-messages {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
@media screen and (min-width: 1024.02px) {
    .site-announcement-bar .site-announcement-bar-inner .column.announcement-messages {
        width: 40%;
    }
}
.site-announcement-bar .site-announcement-bar-inner:has(.announcement-messages) .column.announcement-extra {
    width: 25%;
}
.site-announcement-bar .site-nav {
    --theme-sub-menu-padding: 1.5rem;
}
.site-announcement-bar .site-nav .site-menu {
    gap: var(--theme-announcement-gap);
}
.site-announcement-bar .site-nav .site-menu > li > a {
    height: var(--theme-announcement-height-desktop);
}
.site-announcement-bar .site-nav .site-menu a {
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
}
.site-announcement-bar .site-nav .site-menu .sub-menu {
    min-width: auto !important;
    background-color: var(--color-announcement-background) !important;
    border-bottom-left-radius: var(--theme-radius-base);
    border-bottom-right-radius: var(--theme-radius-base);
}
.site-announcement-bar .site-nav .site-menu .sub-menu a {
    --underline-offset: 0.3125rem;
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    color: var(--color-announcement-foreground);
    text-decoration: underline;
    text-underline-offset: var(--underline-offset);
    text-decoration-thickness: 0.0625rem;
    text-decoration-color: transparent;
    -webkit-transition: text-decoration-color 0.1s ease-in-out;
    transition: text-decoration-color 0.1s ease-in-out;
}
.site-announcement-bar .site-nav .site-menu .sub-menu a:hover {
    text-decoration-color: currentColor;
}
.site-announcement-bar .site-nav .site-menu .sub-menu::before, .site-announcement-bar .site-nav .site-menu .sub-menu::after {
    content: "";
    position: absolute;
    background-color: transparent;
    top: 0;
}
.site-announcement-bar .site-nav .site-menu .sub-menu::before {
    left: -1.25rem;
    width: 1.25rem;
    height: 2.5rem;
    border-top-right-radius: 1rem;
    -webkit-box-shadow: 0 -1rem 0 0 var(--color-announcement-background);
    box-shadow: 0 -1rem 0 0 var(--color-announcement-background);
}
.site-announcement-bar .site-nav .site-menu .sub-menu::after {
    right: -1.25rem;
    width: 1.25rem;
    height: 2.5rem;
    border-top-left-radius: 1rem;
    -webkit-box-shadow: 0 -1rem 0 0 var(--color-announcement-background);
    box-shadow: 0 -1rem 0 0 var(--color-announcement-background);
}
.site-announcement-bar .site-slider {
    width: 100%;
}
.site-announcement-bar .announcement-message {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    line-height: 1;
    width: 100%;
    gap: 0.25rem;
}
.site-announcement-bar .announcement-message p {
    margin: 0;
}
.site-announcement-bar .announcement-message .btn {
    font-size: inherit !important;
}

/* Badge */
.badge {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: var(--theme-text-3xs);
    font-weight: 600;
    line-height: 1;
    height: 1.25rem;
    padding-left: 0.375rem;
    padding-right: 0.375rem;
    border-radius: 62.4375rem;
    color: var(--color-gray-600);
    background-color: var(--color-gray-200);
    outline: 1px solid var(--color-gray-200);
}
.badge.outline {
    color: var(--color-gray-500);
    background-color: transparent;
    outline-color: var(--color-gray-300);
}
.badge.black {
    outline-color: var(--color-black);
    background-color: var(--color-black);
    color: var(--color-white);
}
.badge.black.outline {
    color: var(--color-black);
    background-color: transparent;
}

/* Banner */
.site-banner {
    position: relative;
}
.site-banner .site-banner-content {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 1.25rem;
    z-index: 1;
}
.site-banner .site-banner-content.justify-content-center {
    text-align: center;
}
.site-banner .site-banner-content .entry-subtitle {
    margin-bottom: 0.125rem;
}
@media screen and (min-width: 768.02px) {
    .site-banner .site-banner-content .entry-subtitle {
        margin-bottom: 0.375rem;
    }
}
.site-banner .site-banner-content .entry-title {
    margin-bottom: 0.375rem;
}
@media screen and (min-width: 768.02px) {
    .site-banner .site-banner-content .entry-title {
        margin-bottom: 1.25rem;
    }
}
.site-banner .site-banner-content .site-banner-footer {
    margin-top: 1.25rem;
}
@media screen and (min-width: 768.02px) {
    .site-banner .site-banner-content .site-banner-footer {
        margin-top: 1.875rem;
    }
}
@media screen and (min-width: 768.02px) {
    .site-banner .site-banner-content[class*=" padding-"] .entry-subtitle {
        margin-bottom: 0.125rem;
    }
    .site-banner .site-banner-content[class*=" padding-"] .entry-subtitle.subtitle-margin {
        margin-bottom: 1rem;
    }
    .site-banner .site-banner-content[class*=" padding-"] .entry-title {
        margin-bottom: 0.25rem;
    }
    .site-banner .site-banner-content[class*=" padding-"] .entry-title.title-margin {
        margin-bottom: 1.25rem;
    }
}
@media screen and (min-width: 576.02px) {
    .site-banner .site-banner-content.padding-sm {
        padding: 1.875rem;
    }
}
@media screen and (min-width: 576.02px) {
    .site-banner .site-banner-content.padding-md {
        padding: 1.875rem;
    }
}
@media screen and (min-width: 768.02px) {
    .site-banner .site-banner-content.padding-md {
        padding: 2.5rem;
    }
}
@media screen and (min-width: 576.02px) {
    .site-banner .site-banner-content.padding-lg {
        padding: 1.875rem;
    }
}
@media screen and (min-width: 768.02px) {
    .site-banner .site-banner-content.padding-lg {
        padding: 2.5rem;
    }
}
@media screen and (min-width: 1024.02px) {
    .site-banner .site-banner-content.padding-lg {
        padding: 3.125rem;
    }
}
@media screen and (min-width: 576.02px) {
    .site-banner .site-banner-content.padding-xl {
        padding: 1.875rem;
    }
}
@media screen and (min-width: 768.02px) {
    .site-banner .site-banner-content.padding-xl {
        padding: 2.5rem;
    }
}
@media screen and (min-width: 1024.02px) {
    .site-banner .site-banner-content.padding-xl {
        padding: 3.75rem;
    }
}
@media screen and (min-width: 576.02px) {
    .site-banner .site-banner-content.padding-2xl {
        padding: 1.875rem;
    }
}
@media screen and (min-width: 768.02px) {
    .site-banner .site-banner-content.padding-2xl {
        padding: 2.5rem;
    }
}
@media screen and (min-width: 1024.02px) {
    .site-banner .site-banner-content.padding-2xl {
        padding: 5rem;
    }
}
.site-banner.default-style {
    display: grid;
    overflow: hidden;
}
.site-banner.default-style > * {
    grid-column: 1;
    grid-row: 1;
}
.site-banner.default-style > *.site-banner-media {
    height: var(--banner-mobile);
}
@media screen and (min-width: 768.02px) {
    .site-banner.default-style > *.site-banner-media {
        height: var(--banner-tablet);
    }
}
@media screen and (min-width: 1024.02px) {
    .site-banner.default-style > *.site-banner-media {
        height: var(--banner-desktop);
    }
}
.site-banner.default-style > *.site-banner-media img, .site-banner.default-style > *.site-banner-media video, .site-banner.default-style > *.site-banner-media iframe, .site-banner.default-style > *.site-banner-media audio {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.site-banner.content-outside-style {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    overflow: hidden;
}
.site-banner.content-outside-style > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 100%;
}
@media screen and (min-width: 768.02px) {
    .site-banner.content-outside-style.content-left > *, .site-banner.content-outside-style.content-right > * {
        width: 50%;
    }
}
.site-banner.content-outside-style.content-right .site-banner-content, .site-banner.content-outside-style.content-bottom .site-banner-content {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
}
.site-banner.content-outside-style .site-banner-media img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.site-banner.banner-rounded {
    border-radius: var(--theme-radius-sm);
}
@media screen and (min-width: 768.02px) {
    .site-banner.banner-rounded {
        border-radius: var(--theme-radius-base);
    }
}
@media screen and (min-width: 1024.02px) {
    .site-banner.banner-rounded {
        border-radius: var(--theme-radius-lg);
    }
}
@media screen and (min-width: 1200.02px) {
    .site-banner.banner-rounded.rounded-xl {
        border-radius: var(--theme-radius-xl);
    }
}
.site-banner.dark {
    color: var(--color-black);
}
.site-banner.light {
    color: var(--color-white);
}

/* Categories */
.site-category-block {
    position: relative;
    border-radius: var(--theme-radius-sm);
}
@media screen and (min-width: 1024.02px) {
    .site-category-block {
        border-radius: var(--theme-radius-base);
    }
}
.site-category-block .category-block-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.site-category-block .category-block-header .entry-title {
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.2;
    margin-bottom: 0.25rem;
}
@media screen and (min-width: 1024.02px) {
    .site-category-block .category-block-header .entry-title {
        font-size: 1.5rem;
    }
}
.site-category-block .category-block-header .entry-description {
    font-size: var(--theme-text-xs);
    color: var(--color-gray-500);
}
@media screen and (min-width: 1024.02px) {
    .site-category-block .category-block-header .entry-description {
        font-size: var(--theme-text-sm);
    }
}
.site-category-block .category-block-header .entry-description p {
    margin-bottom: 0;
}
.site-category-block .category-block-image a.image-padding {
    display: block;
    padding: 1.25rem 1.875rem;
}
@media screen and (min-width: 1024.02px) {
    .site-category-block .category-block-image a.image-padding {
        padding: 1.25rem 3.125rem;
    }
}
.site-category-block.category-bg-gray {
    background-color: var(--color-gray-100);
}
.site-category-block.category-bg-white {
    background-color: var(--color-white);
}
.site-category-block.style-1 .category-block-header {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 1.25rem 1.25rem 0;
}
@media screen and (min-width: 1024.02px) {
    .site-category-block.style-1 .category-block-header {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        padding: 1.625rem 1.875rem 0;
    }
}
.site-category-block.style-1 .category-block-header .category-block-count {
    font-size: var(--theme-text-xs);
    color: var(--color-gray-500);
}
.site-category-block.style-1 .category-block-footer {
    text-align: center;
    padding: 0 1.25rem 1.25rem;
}
@media screen and (min-width: 1024.02px) {
    .site-category-block.style-1 .category-block-footer {
        text-align: left;
        padding: 0 1.625rem 1.875rem;
    }
}
.site-category-block.style-2 > .btn {
    position: absolute;
    top: 0.625rem;
    right: 0.625rem;
}
@media screen and (min-width: 1024.02px) {
    .site-category-block.style-2 .category-block-image a.image-padding {
        padding-top: 2.625rem;
    }
}
.site-category-block.style-2 .category-block-header {
    padding: 1.25rem;
}
@media screen and (min-width: 1024.02px) {
    .site-category-block.style-2 .category-block-header {
        padding: 1.25rem 1.875rem 1.625rem;
    }
}
.site-category-block.style-2 .category-block-header .entry-title {
    position: relative;
    margin-bottom: 0;
}
.site-category-block.style-2 .category-block-header .entry-title .category-block-count {
    position: absolute;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 0.6875rem;
    font-weight: 600;
    width: 1.25rem;
    height: 1.25rem;
    top: -0.125rem;
    right: -1.75rem;
    padding-right: 0.0625rem;
    padding-top: 0.0625rem;
    border-radius: 62.4375rem;
    border: 1px solid var(--color-gray-500);
}
.site-category-block.style-2:hover > .btn {
    opacity: 1;
    background-color: var(--color-black);
    color: var(--color-white);
}

/* Slider */
.site-slider {
    position: relative;
    overflow: hidden;
}
.site-slider::after {
    top: 50%;
    left: 50%;
    margin-top: -1.125rem;
    margin-left: -1.125rem;
}
.site-slider > *:not(.slick-nav) {
    opacity: 0;
    visibility: hidden;
    will-change: opacity;
}
.site-slider .site-slider-item {
    display: none;
}
.site-slider .site-slider-item:first-child {
    display: block;
    visibility: hidden;
}
.site-slider.slick-initialized {
    overflow: visible;
}
.site-slider.slick-initialized::after {
    display: none;
}
.site-slider.slick-initialized > *:not(.slick-nav) {
    opacity: 1;
    visibility: visible;
}
.site-slider.slick-initialized .site-slider-item {
    display: block;
    visibility: visible;
}
.site-slider .slick-track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.site-slider .slick-nav {
    position: absolute;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 2.375rem;
    height: 2.375rem;
    border-radius: 50%;
    background-color: var(--color-white);
    color: var(--color-black);
    border: 1px solid var(--color-gray-200);
    padding: 0;
    top: 50%;
    left: 0;
    z-index: 1;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    -webkit-transition: border-color 0.1s cubic-bezier(0.42, 0, 0.58, 1), opacity 0.2s cubic-bezier(0.42, 0, 0.58, 1), visibility 0.2s cubic-bezier(0.42, 0, 0.58, 1), -webkit-transform 0.3s cubic-bezier(0.42, 0, 0.58, 1);
    transition: border-color 0.1s cubic-bezier(0.42, 0, 0.58, 1), opacity 0.2s cubic-bezier(0.42, 0, 0.58, 1), visibility 0.2s cubic-bezier(0.42, 0, 0.58, 1), -webkit-transform 0.3s cubic-bezier(0.42, 0, 0.58, 1);
    transition: border-color 0.1s cubic-bezier(0.42, 0, 0.58, 1), opacity 0.2s cubic-bezier(0.42, 0, 0.58, 1), visibility 0.2s cubic-bezier(0.42, 0, 0.58, 1), transform 0.3s cubic-bezier(0.42, 0, 0.58, 1);
    transition: border-color 0.1s cubic-bezier(0.42, 0, 0.58, 1), opacity 0.2s cubic-bezier(0.42, 0, 0.58, 1), visibility 0.2s cubic-bezier(0.42, 0, 0.58, 1), transform 0.3s cubic-bezier(0.42, 0, 0.58, 1), -webkit-transform 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}
.site-slider .slick-nav svg {
    width: 1rem;
    height: 1rem;
}
.site-slider .slick-nav.slick-next {
    left: auto;
    right: 0.625rem;
    padding-left: 0.0625rem;
}
@media screen and (min-width: 1024.02px) {
    .site-slider .slick-nav.slick-next {
        right: -1.8125rem;
        padding-left: 0.125rem;
        -webkit-transform: translateX(10px);
        transform: translateX(10px);
    }
}
.site-slider .slick-nav.slick-prev {
    left: 0.625rem;
    padding-right: 0.0625rem;
}
@media screen and (min-width: 1024.02px) {
    .site-slider .slick-nav.slick-prev {
        left: -1.8125rem;
        padding-right: 0.125rem;
        -webkit-transform: translateX(-10px);
        transform: translateX(-10px);
    }
}
@media screen and (min-width: 1024.02px) {
    .site-slider .slick-nav {
        top: calc(50% - 1.8125rem);
        width: 3.625rem;
        height: 3.625rem;
    }
    .site-slider .slick-nav svg {
        width: 1.125rem;
        height: 1.125rem;
    }
    .site-slider .slick-nav svg > * {
        stroke-width: 1.5;
    }
}
.site-slider .slick-nav:hover {
    border-color: var(--color-gray-300);
}
.site-slider .slick-nav.slick-disabled {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}
.site-slider .slick-dots {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 0.5rem;
    list-style: none;
    margin: 0;
    padding: 0;
}
.site-slider .slick-dots li {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    line-height: 1;
}
.site-slider .slick-dots li button {
    all: unset;
    padding: 0;
    text-indent: -9999px;
    width: 0.25rem !important;
    height: 0.25rem !important;
    border-radius: 50% !important;
    padding: 0 !important;
    background-color: var(--color-gray-300);
    outline: 2px solid transparent;
    cursor: pointer;
    -webkit-transition: all 0.1s ease-in-out;
    transition: all 0.1s ease-in-out;
}
.site-slider .slick-dots li button:hover {
    background-color: var(--color-gray-400);
}
@media screen and (min-width: 1024.02px) {
    .site-slider .slick-dots li button {
        width: 0.375rem !important;
        height: 0.375rem !important;
    }
}
.site-slider .slick-dots li.slick-active button {
    background-color: transparent;
    outline-color: var(--color-primary-background);
}
.site-slider.gap-xs .slick-list, .site-slider.gap-sm .slick-list, .site-slider.gap-base .slick-list {
    margin-left: -0.3125rem;
    margin-right: -0.3125rem;
}
.site-slider.gap-xs .slick-list .slick-slide, .site-slider.gap-sm .slick-list .slick-slide, .site-slider.gap-base .slick-list .slick-slide {
    padding-left: 0.3125rem;
    padding-right: 0.3125rem;
}
@media screen and (min-width: 1024.02px) {
    .site-slider.gap-sm .slick-list {
        margin-left: -0.625rem;
        margin-right: -0.625rem;
    }
}
@media screen and (min-width: 1024.02px) {
    .site-slider.gap-sm .slick-list .slick-slide {
        padding-left: 0.625rem;
        padding-right: 0.625rem;
    }
}
@media screen and (min-width: 1024.02px) {
    .site-slider.gap-base .slick-list {
        margin-left: -1rem;
        margin-right: -1rem;
    }
}
@media screen and (min-width: 1024.02px) {
    .site-slider.gap-base .slick-list .slick-slide {
        padding-left: 1rem;
        padding-right: 1rem;
    }
}
.site-slider.carousel-style .slick-dots {
    margin-top: 1.25rem;
}
@media screen and (min-width: 1024.02px) {
    .site-slider.carousel-style .slick-dots {
        margin-top: 1.875rem;
    }
}
.site-slider.carousel-style.products {
    max-width: 80%;
}
@media screen and (min-width: 768.02px) {
    .site-slider.carousel-style.products {
        max-width: 100%;
    }
}
.site-slider.carousel-style:has(.slick-dots) .slick-nav {
    top: calc(50% - 1.625rem);
}
@media screen and (min-width: 1024.02px) {
    .site-slider.carousel-style:has(.slick-dots) .slick-nav {
        top: calc(50% - 2.25rem);
    }
}
.site-slider.text-style .slick-nav {
    width: 1.25rem;
    height: 1.25rem;
    top: calc(50% - 0.625rem);
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    color: currentColor;
    background-color: transparent;
    border: 0;
    outline: none;
}
.site-slider.text-style .slick-nav svg {
    width: 1rem;
    height: 1rem;
}
@media screen and (max-width: 1023.98px) {
    .site-slider.text-style .slick-nav {
        display: none !important;
    }
}
.site-slider.has-overflow .slick-list {
    overflow: visible;
}
.site-slider:hover .slick-nav {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    -webkit-transform: translateX(0);
    transform: translateX(0);
}

/* Content media */
.site-content-over-media {
    position: relative;
    overflow: hidden;
    border-radius: var(--theme-radius-sm);
}
@media screen and (min-width: 1024.02px) {
    .site-content-over-media {
        border-radius: var(--theme-radius-lg);
    }
}
.site-content-over-media .entry-content {
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    color: var(--color-white);
    padding: 1.875rem;
}
@media screen and (min-width: 1024.02px) {
    .site-content-over-media .entry-content {
        padding: 2.625rem;
    }
}
.site-content-over-media .entry-content .entry-content-inner {
    -webkit-transition: -webkit-transform 0.35s cubic-bezier(0.42, 0, 0.58, 1);
    transition: -webkit-transform 0.35s cubic-bezier(0.42, 0, 0.58, 1);
    transition: transform 0.35s cubic-bezier(0.42, 0, 0.58, 1);
    transition: transform 0.35s cubic-bezier(0.42, 0, 0.58, 1), -webkit-transform 0.35s cubic-bezier(0.42, 0, 0.58, 1);
}
.site-content-over-media .entry-content .entry-content-inner .entry-title {
    font-size: 1.875rem;
    font-weight: 700;
    line-height: 1.4;
}
@media screen and (min-width: 1024.02px) {
    .site-content-over-media .entry-content .entry-content-inner .entry-title {
        font-size: 2.125rem;
    }
}
.site-content-over-media .entry-content .entry-content-inner .entry-description {
    font-size: var(--theme-text-sm);
    opacity: 0.75;
}
@media screen and (min-width: 1024.02px) {
    .site-content-over-media .entry-content .entry-content-inner .entry-description {
        font-size: var(--theme-text-md);
    }
}
.site-content-over-media .entry-content .entry-content-inner .entry-description p {
    margin-bottom: 0;
}
.site-content-over-media .entry-content > .btn {
    position: absolute;
    bottom: 2.625rem;
    left: 2.625rem;
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
    -webkit-transition: 0.35s cubic-bezier(0.42, 0, 0.58, 1);
    transition: 0.35s cubic-bezier(0.42, 0, 0.58, 1);
    -webkit-transition-property: opacity, -webkit-transform;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
}
@media screen and (min-width: 1024.02px) {
    .site-content-over-media:hover .entry-content-inner {
        -webkit-transform: translateY(-36px);
        transform: translateY(-36px);
    }
    .site-content-over-media:hover .entry-content > .btn {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
}

/* Testimonials */
.site-testimonial.comment-style {
    text-align: center;
    max-width: 55.125rem;
    margin: 0 auto;
}
.site-testimonial.comment-style .testimonial-comment {
    margin-bottom: 1.25rem;
}
.site-testimonial.comment-style .testimonial-media {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 1.875rem;
}
.site-testimonial.box-style {
    padding: 1.25rem;
    border-radius: var(--theme-radius-sm);
}
@media screen and (min-width: 1024.02px) {
    .site-testimonial.box-style {
        padding: 2.5rem;
        border-radius: var(--theme-radius-base);
    }
}
.site-testimonial.box-style .testimonial-header .testimonial-rating {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 0.8125rem;
    gap: 0.125rem;
    margin-bottom: 0.625rem;
}
.site-testimonial.box-style .testimonial-header .testimonial-rating i::before {
    margin: 0;
}
.site-testimonial.box-style .testimonial-header .entry-title {
    font-size: 1.125rem;
    font-weight: 600;
    line-height: 1.3;
}
.site-testimonial.box-style .testimonial-comment .testimonial-message {
    font-size: 1rem;
    line-height: 1.6;
}
.site-testimonial.box-style .testimonial-comment .testimonial-author {
    font-size: 0.8125rem;
    font-weight: 600;
}
.site-testimonial.box-style .testimonial-comment .testimonial-author-location {
    font-size: 0.75rem;
    opacity: 0.5;
}
.site-testimonial.box-style .testimonial-products {
    margin-top: 1.625rem;
    padding-top: 2rem;
    border-top: 1px solid var(--color-gray-200);
}
.site-testimonial.box-style .testimonial-products .product {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.25rem;
}
.site-testimonial.box-style .testimonial-products .product .product-thumbnail {
    position: relative;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 3.5rem;
    overflow: hidden;
    border-radius: var(--theme-radius-sm);
}
.site-testimonial.box-style .testimonial-products .product .product-content {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 0%;
    flex: 1 1 0%;
}
.site-testimonial.box-style .testimonial-products .product .product-content .product-title {
    font-size: 0.9375rem;
    line-height: 1.3;
    margin-bottom: 0.25rem;
}
.site-testimonial.box-style.white-background {
    background-color: var(--color-white);
}
.site-testimonial.box-style.gray-background {
    background-color: var(--color-gray-100);
}

/* Countdown */
.site-countdown-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 0.625rem;
}
@media screen and (min-width: 1024.02px) {
    .site-countdown-wrapper.flex-column {
        gap: 1rem;
    }
}
.site-countdown-wrapper .site-countdown {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.625rem;
}
.site-countdown-wrapper .site-countdown .countdown-item {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
}
.site-countdown-wrapper .site-countdown .countdown-item .countdown-value {
    font-weight: 500;
}
.site-countdown-wrapper .site-countdown .countdown-item .countdown-label {
    opacity: 0.4;
}
.site-countdown-wrapper .site-countdown.with-label .countdown-item {
    gap: 0.25rem;
}
.site-countdown-wrapper .site-countdown.with-label.label-right .countdown-item {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    line-height: 1;
}
.site-countdown-wrapper .site-countdown.with-label.label-right .countdown-item .countdown-label {
    font-size: 0.6875rem;
}
.site-countdown-wrapper .site-countdown.with-label.label-bottom .countdown-item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0.25rem;
}
.site-countdown-wrapper .site-countdown.with-label.label-bottom .countdown-item .countdown-value {
    line-height: 1;
}
.site-countdown-wrapper .site-countdown.with-label.label-bottom .countdown-item .countdown-label {
    font-size: 0.75rem;
}
.site-countdown-wrapper .site-countdown.size-sm .countdown-item {
    font-size: 0.9375rem;
}
.site-countdown-wrapper .site-countdown.size-base .countdown-item {
    font-size: 1rem;
}
.site-countdown-wrapper .site-countdown.size-lg .countdown-item {
    font-size: 1.125rem;
}
.site-countdown-wrapper .site-countdown.size-xl .countdown-item {
    font-size: 1.25rem;
}
.site-countdown-wrapper .site-countdown.size-2xl .countdown-item {
    font-size: 1.25rem;
}
@media screen and (min-width: 1024.02px) {
    .site-countdown-wrapper .site-countdown.size-2xl .countdown-item {
        font-size: 1.375rem;
    }
}
.site-countdown-wrapper .site-countdown.size-3xl .countdown-item {
    font-size: 1.25rem;
}
@media screen and (min-width: 1024.02px) {
    .site-countdown-wrapper .site-countdown.size-3xl .countdown-item {
        font-size: 1.5rem;
    }
}
.site-countdown-wrapper .site-countdown.size-4xl .countdown-item {
    font-size: 1.5rem;
}
@media screen and (min-width: 1024.02px) {
    .site-countdown-wrapper .site-countdown.size-4xl .countdown-item {
        font-size: 1.75rem;
    }
}
.site-countdown-wrapper .site-countdown.item-filled {
    max-width: 18.75rem;
    width: 100%;
}
.site-countdown-wrapper .site-countdown.item-filled.filled-white .countdown-item {
    background-color: var(--color-white);
}
.site-countdown-wrapper .site-countdown.item-filled.filled-gray .countdown-item {
    background-color: var(--color-gray-100);
}
.site-countdown-wrapper .site-countdown.item-filled .countdown-item {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    padding: 0.625rem 0.25rem;
    border-radius: var(--theme-radius-sm);
}

/* Hover Slider */
.hover-slider-viewport {
    position: relative;
    overflow: hidden;
    height: 100%;
    cursor: unset;
}

.hover-slider {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.hover-slider > * {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.hover-slider-dots {
    position: absolute;
    bottom: 10px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 5px;
}

.hover-slider-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: none;
    background: rgba(255, 255, 255, 0.5);
    cursor: pointer;
}

.hover-slider-arrows {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0 10px;
}

.prev-slide,
.next-slide {
    background: rgba(255, 255, 255, 0.5);
    border: none;
    border-radius: 50%;
    width: 30px;
    height: 30px;
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

/* Blog */
.post {
    position: relative;
}
.post .post-thumbnail {
    position: relative;
    border-radius: var(--theme-radius-sm);
    overflow: hidden;
    margin-bottom: 0.625rem;
}
@media screen and (min-width: 1024.02px) {
    .post .post-thumbnail {
        border-radius: var(--theme-radius-lg);
        margin-bottom: 1.25rem;
    }
}
.post .post-thumbnail .entry-post-category {
    position: absolute;
    top: 1.25rem;
    left: 1.25rem;
}
.post .entry-post-category a {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: var(--theme-text-xs);
    font-weight: 600;
    color: var(--color-gray-500);
    text-decoration: none;
    padding: 0.25rem 0.75rem;
    border-radius: 5.625rem;
    background-color: var(--color-white);
    border: 0.0625rem solid var(--color-gray-200);
}
.post .entry-title {
    font-size: var(--theme-text-3xl);
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: -0.025em;
    margin-bottom: 0.625rem;
}
@media screen and (min-width: 1024.02px) {
    .post .entry-title {
        letter-spacing: -0.035em;
    }
}
.post .entry-title a {
    --underline-offset: 0.25rem;
    color: currentColor;
    text-decoration: none;
    text-decoration: underline;
    text-underline-offset: var(--underline-offset);
    text-decoration-thickness: 0.0625rem;
    text-decoration-color: transparent;
    -webkit-transition: text-decoration-color 0.3s ease-in-out;
    transition: text-decoration-color 0.3s ease-in-out;
}
.post .entry-title a:hover {
    text-decoration-color: currentColor;
}
.post .entry-post-meta {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    font-size: var(--theme-text-xs);
    color: var(--color-gray-500);
    gap: 0.625rem;
    margin-bottom: 0.625rem;
}
.post .entry-post-meta .meta-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.25rem;
}
.post .entry-post-meta .meta-item a {
    font-weight: 600;
    color: var(--color-black);
}
.post .entry-post-meta .meta-item.post-comment a {
    font-weight: 400;
    text-decoration: none;
    color: var(--color-gray-500);
}

.blog-posts .post {
    margin-bottom: 1.875rem;
}
@media screen and (min-width: 1024.02px) {
    .blog-posts .post {
        margin-bottom: 3.75rem;
    }
}
.blog-posts .post:last-child {
    margin-bottom: 0;
}

.blog-posts-single .post-header {
    margin-bottom: 1.875rem;
}
.blog-posts-single .entry-title {
    font-size: 2rem;
}
@media screen and (min-width: 1024.02px) {
    .blog-posts-single .entry-title {
        font-size: 3.5rem;
    }
}
.blog-posts-single .entry-footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 0.625rem;
    margin-top: 1.25rem;
    margin-bottom: 2.25rem;
    padding-top: 1.5rem;
    border-top: 1px solid var(--color-gray-300);
}
.blog-posts-single .entry-footer .entry-tags {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.blog-posts-single .entry-footer .entry-tags > span {
    font-size: 0.8125rem;
    line-height: 1.5625rem;
    color: var(--color-gray-500);
    margin-right: 0.75rem;
}
.blog-posts-single .entry-footer .entry-tags ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.1875rem;
    list-style: none;
    margin: 0;
    padding: 0;
}
.blog-posts-single .entry-footer .entry-tags ul li a {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1;
    text-decoration: none;
    color: var(--color-black);
    height: 1.5rem;
    padding-left: 0.375rem;
    padding-right: 0.375rem;
    border: 1px solid var(--color-gray-300);
    border-radius: var(--theme-radius-sm);
    -webkit-box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
}
.blog-posts-single .entry-share-post ul {
    gap: 0.25rem;
}
.blog-posts-single .entry-share-post a {
    font-size: 0.875rem;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    border: 1px solid var(--color-gray-300);
    -webkit-box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
}
.blog-posts-single .entry-share-post a i {
    line-height: 1;
}
.blog-posts-single .post-comments > .entry-title {
    margin-bottom: 1.5rem;
}
.blog-posts-single .post-comments .comment-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.blog-posts-single .post-comments .comment-list .comment .comment-body {
    padding: 0.0625rem;
    margin-bottom: 0.9375rem;
}
@media screen and (min-width: 768.02px) {
    .blog-posts-single .post-comments .comment-list .comment .comment-body {
        margin-bottom: 2.25rem;
    }
}
.blog-posts-single .post-comments .comment-list .comment .comment-body .comment-meta {
    margin-bottom: 0.0625rem;
}
.blog-posts-single .post-comments .comment-list .comment .comment-body .comment-meta .avatar {
    float: left;
    width: 4.75rem;
    height: 4.75rem;
    margin-right: 1.25rem;
    border-radius: 50%;
}
@media screen and (min-width: 768.02px) {
    .blog-posts-single .post-comments .comment-list .comment .comment-body .comment-meta .avatar {
        width: 5.375rem;
        height: 5.375rem;
        margin-right: 2.5rem;
    }
}
.blog-posts-single .post-comments .comment-list .comment .comment-body .comment-meta b {
    float: left;
    font-size: 0.875rem;
    font-weight: 600;
}
.blog-posts-single .post-comments .comment-list .comment .comment-body .comment-meta b a {
    color: currentColor;
    text-decoration: none;
}
.blog-posts-single .post-comments .comment-list .comment .comment-body .comment-meta .comment-metadata {
    float: left;
    line-height: 1.2;
}
.blog-posts-single .post-comments .comment-list .comment .comment-body .comment-meta .comment-metadata a {
    font-size: 0.75rem;
    font-weight: 500;
    text-decoration: none;
    color: currentColor;
    margin-left: 0.9375rem;
    opacity: 0.5;
}
.blog-posts-single .post-comments .comment-list .comment .comment-body .comment-content {
    margin-top: 1.875rem;
}
.blog-posts-single .post-comments .comment-list .comment .comment-body .comment-content p {
    font-size: 0.875rem;
}
.blog-posts-single .post-comments .comment-list .comment .comment-body .reply {
    padding-left: 6rem;
}
@media screen and (min-width: 768.02px) {
    .blog-posts-single .post-comments .comment-list .comment .comment-body .reply {
        padding-left: 7.875rem;
    }
}
.blog-posts-single .post-comments .comment-list .comment .comment-body .reply a {
    font-size: 0.875rem;
    font-weight: 600;
    text-decoration: none;
    color: var(--color-black);
}
.blog-posts-single .post-comments .comment-respond .entry-title {
    font-size: 1.25rem;
}
.blog-posts-single .post-comments .comment-respond .comment-form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -0.3125rem;
    margin-right: -0.3125rem;
}
.blog-posts-single .post-comments .comment-respond .comment-form > .comment-notes {
    font-size: 0.875rem;
    font-weight: 500;
}
.blog-posts-single .post-comments .comment-respond .comment-form > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 100%;
    padding-left: 0.3125rem;
    padding-right: 0.3125rem;
}
@media screen and (min-width: 768.02px) {
    .blog-posts-single .post-comments .comment-respond .comment-form > *.comment-form-author, .blog-posts-single .post-comments .comment-respond .comment-form > *.comment-form-email {
        width: 50%;
    }
}
.blog-posts-single .post-comments .comment-respond .comment-form > *.form-submit input {
    line-height: 1;
    color: var(--color-white);
    background-color: var(--color-black);
}
@media screen and (min-width: 768.02px) {
    .blog-posts-single .post-comments .comment-respond .comment-form > *.form-submit input {
        padding-left: 1.75rem;
        padding-right: 1.75rem;
    }
}
.blog-posts-single .post-comments .comment-respond .comment-form > * label {
    display: block;
    font-size: 0.8125rem;
    font-weight: 500;
    margin-bottom: 0.375rem;
}

/* Iconbox */
.site-iconbox {
    --icon-size: 2.25rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
}
.site-iconbox .site-iconbox-icon {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 1.5rem;
}
.site-iconbox .site-iconbox-icon svg, .site-iconbox .site-iconbox-icon img {
    width: var(--icon-size);
    height: auto;
}
.site-iconbox .site-iconbox-content .entry-title {
    font-size: 1.0625rem;
    font-weight: 600;
    line-height: 1.3;
    margin-bottom: 0.25rem;
}
.site-iconbox .site-iconbox-content .entry-description {
    font-size: var(--theme-text-sm);
    font-weight: 400;
    line-height: 1.6;
    color: var(--color-gray-500);
}
.site-iconbox .site-iconbox-content .entry-description p {
    margin-bottom: 0;
}
.site-iconbox.horizontal {
    gap: 0.625rem;
}
@media screen and (min-width: 768.02px) {
    .site-iconbox.horizontal {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        text-align: left;
        gap: 1.5rem;
    }
    .site-iconbox.horizontal .site-iconbox-content {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 0%;
        flex: 1 1 0%;
    }
}

/* Sticky Category */
.site-sticky-category {
    position: fixed;
    display: none;
    top: 50%;
    left: var(--theme-screen-padding);
    z-index: 20;
    -webkit-transition: all 0.3s cubic-bezier(0.42, 0, 0.58, 1);
    transition: all 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}
@media screen and (min-width: 1024.02px) {
    .site-sticky-category {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        -webkit-transform: translateX(-6px);
        transform: translateX(-6px);
    }
    .site-sticky-category.active {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}
.site-sticky-category .site-sticky-category-inner {
    position: relative;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    background-color: var(--color-body-background);
    border: 1px solid var(--color-gray-200);
    border-radius: 4.375rem;
    width: 100%;
    padding: 0.625rem;
    -webkit-box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    overflow: hidden;
}
.site-sticky-category .site-sticky-category-inner .site-category-nav .site-category-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.site-sticky-category .site-sticky-category-inner .site-category-nav .site-category-list li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.75rem;
    font-size: var(--theme-text-sm);
    color: currentColor;
    text-decoration: none;
    padding: 0.75rem;
    border-radius: 50%;
    -webkit-transition: all 0.1s cubic-bezier(0.42, 0, 0.58, 1);
    transition: all 0.1s cubic-bezier(0.42, 0, 0.58, 1);
}
.site-sticky-category .site-sticky-category-inner .site-category-nav .site-category-list li a svg, .site-sticky-category .site-sticky-category-inner .site-category-nav .site-category-list li a img {
    width: 1.5rem;
    height: auto;
}
.site-sticky-category .site-sticky-category-inner .site-category-nav .site-category-list li a:hover {
    background-color: var(--color-gray-100);
}

/* Counter Block */
.site-counter-block .entry-title.light-text {
    color: var(--color-gray-400);
}
@media screen and (min-width: 1024.02px) {
    .site-counter-block.text-center {
        padding-left: 3.75rem;
        padding-right: 3.75rem;
    }
}

/* Product Background */
.site-product-background.style-1 {
    position: relative;
    display: grid;
    border-radius: var(--theme-radius-sm);
    overflow: hidden;
}
@media screen and (min-width: 1024.02px) {
    .site-product-background.style-1 {
        border-radius: var(--theme-radius-lg);
    }
}
.site-product-background.style-1 > * {
    grid-column: 1;
    grid-row: 1;
}
.site-product-background.style-1 .product-background-inner {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 1.5rem;
    padding: 1.5rem;
    z-index: 1;
}
@media screen and (min-width: 768.02px) {
    .site-product-background.style-1 .product-background-inner {
        padding: 3rem;
    }
}
@media screen and (min-width: 768.02px) {
    .site-product-background.style-1 .product-background-inner {
        padding: 3.5rem;
    }
}
.site-product-background.style-1 .product-background-inner > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 100%;
}
.site-product-background.style-1 .product-background-inner > *.module-content {
    text-align: center;
}
@media screen and (min-width: 768.02px) {
    .site-product-background.style-1 .product-background-inner > *.module-content {
        width: 46%;
        -ms-flex-item-align: end;
        align-self: flex-end;
        text-align: left;
    }
}
@media screen and (min-width: 768.02px) {
    .site-product-background.style-1 .product-background-inner > *.module-product {
        width: 23.75rem;
    }
}
.site-product-background.style-1 .entry-video-background {
    pointer-events: none;
}
.site-product-background.style-1.light .module-content {
    color: var(--color-white);
}
.site-product-background.style-1.dark .module-content {
    color: var(--color-black);
}

/* Social Media */
.site-social ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 0.25rem;
    margin: 0;
    padding: 0;
    list-style: none;
}
.site-social ul a {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 1rem;
    width: 2.25rem;
    height: 2.25rem;
    color: currentColor;
}
.site-social .light-bordered a {
    border: 1px solid var(--color-gray-200);
}
.site-social .light-filled a {
    background-color: var(--color-gray-100);
}
.site-social .rounded a {
    border-radius: 62.4375rem;
}
.site-social .background-social a.facebook {
    color: var(--color-white);
    background-color: #1877f2;
}
.site-social .background-social a.facebook:hover {
    opacity: 0.9;
}
.site-social .background-social a.twitter {
    color: var(--color-white);
    background-color: #1da1f2;
}
.site-social .background-social a.twitter:hover {
    opacity: 0.9;
}
.site-social .background-social a.x {
    color: var(--color-white);
    background-color: #000;
}
.site-social .background-social a.x:hover {
    opacity: 0.9;
}
.site-social .background-social a.twitch {
    color: var(--color-white);
    background-color: #9146ff;
}
.site-social .background-social a.twitch:hover {
    opacity: 0.9;
}
.site-social .background-social a.amazon {
    color: var(--color-white);
    background-color: #ff9900;
}
.site-social .background-social a.amazon:hover {
    opacity: 0.9;
}
.site-social .background-social a.blogger {
    color: var(--color-white);
    background-color: #f57d00;
}
.site-social .background-social a.blogger:hover {
    opacity: 0.9;
}
.site-social .background-social a.etsy {
    color: var(--color-white);
    background-color: #d5641c;
}
.site-social .background-social a.etsy:hover {
    opacity: 0.9;
}
.site-social .background-social a.fedex {
    color: var(--color-white);
    background-color: #4d148c;
}
.site-social .background-social a.fedex:hover {
    opacity: 0.9;
}
.site-social .background-social a.flickr {
    color: var(--color-white);
    background-color: #ff0084;
}
.site-social .background-social a.flickr:hover {
    opacity: 0.9;
}
.site-social .background-social a.flipboard {
    color: var(--color-white);
    background-color: #e12828;
}
.site-social .background-social a.flipboard:hover {
    opacity: 0.9;
}
.site-social .background-social a.pocket {
    color: var(--color-white);
    background-color: #ef4056;
}
.site-social .background-social a.pocket:hover {
    opacity: 0.9;
}
.site-social .background-social a.google {
    color: var(--color-white);
    background-color: #4285f4;
}
.site-social .background-social a.google:hover {
    opacity: 0.9;
}
.site-social .background-social a.instagram {
    color: var(--color-white);
    background-color: #833ab4;
}
.site-social .background-social a.instagram:hover {
    opacity: 0.9;
}
.site-social .background-social a.linkedin {
    color: var(--color-white);
    background-color: #0077b5;
}
.site-social .background-social a.linkedin:hover {
    opacity: 0.9;
}
.site-social .background-social a.medium {
    color: var(--color-white);
    background-color: #00ab6c;
}
.site-social .background-social a.medium:hover {
    opacity: 0.9;
}
.site-social .background-social a.odnoklassniki {
    color: var(--color-white);
    background-color: #ed812b;
}
.site-social .background-social a.odnoklassniki:hover {
    opacity: 0.9;
}
.site-social .background-social a.paypal {
    color: var(--color-white);
    background-color: #003087;
}
.site-social .background-social a.paypal:hover {
    opacity: 0.9;
}
.site-social .background-social a.pinterest {
    color: var(--color-white);
    background-color: #e60023;
}
.site-social .background-social a.pinterest:hover {
    opacity: 0.9;
}
.site-social .background-social a.reddit {
    color: var(--color-white);
    background-color: #ff4500;
}
.site-social .background-social a.reddit:hover {
    opacity: 0.9;
}
.site-social .background-social a.shopify {
    color: var(--color-white);
    background-color: #96bf48;
}
.site-social .background-social a.shopify:hover {
    opacity: 0.9;
}
.site-social .background-social a.skype {
    color: var(--color-white);
    background-color: #00aff0;
}
.site-social .background-social a.skype:hover {
    opacity: 0.9;
}
.site-social .background-social a.slack {
    color: var(--color-white);
    background-color: #6ecadc;
}
.site-social .background-social a.slack:hover {
    opacity: 0.9;
}
.site-social .background-social a.spotify {
    color: var(--color-white);
    background-color: #1db954;
}
.site-social .background-social a.spotify:hover {
    opacity: 0.9;
}
.site-social .background-social a.stripe {
    color: var(--color-white);
    background-color: #00afe1;
}
.site-social .background-social a.stripe:hover {
    opacity: 0.9;
}
.site-social .background-social a.telegram {
    color: var(--color-white);
    background-color: #0088cc;
}
.site-social .background-social a.telegram:hover {
    opacity: 0.9;
}
.site-social .background-social a.tiktok {
    color: var(--color-white);
    background-color: #000;
}
.site-social .background-social a.tiktok:hover {
    opacity: 0.9;
}
.site-social .background-social a.viber {
    color: var(--color-white);
    background-color: #59267c;
}
.site-social .background-social a.viber:hover {
    opacity: 0.9;
}
.site-social .background-social a.vimeo {
    color: var(--color-white);
    background-color: #1ab7ea;
}
.site-social .background-social a.vimeo:hover {
    opacity: 0.9;
}
.site-social .background-social a.vk {
    color: var(--color-white);
    background-color: #45668e;
}
.site-social .background-social a.vk:hover {
    opacity: 0.9;
}
.site-social .background-social a.whatsapp {
    color: var(--color-white);
    background-color: #25d366;
}
.site-social .background-social a.whatsapp:hover {
    opacity: 0.9;
}
.site-social .background-social a.youtube {
    color: var(--color-white);
    background-color: #ff0000;
}
.site-social .background-social a.youtube:hover {
    opacity: 0.9;
}
.site-social.widget-style ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.site-social.widget-style ul li {
    width: 100%;
}
.site-social.widget-style ul li + li {
    margin-top: 0.1875rem;
}
.site-social.widget-style ul a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    gap: 0.75rem;
    text-decoration: none;
    padding: 0.25rem 0.5rem;
    min-height: 2.375rem;
    border-radius: var(--theme-radius-base);
}
.site-social.widget-style ul a .site-social-icon {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 1rem;
    width: 1.75rem;
    height: 1.75rem;
}
.site-social.widget-style ul a .site-social-content {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 0%;
    flex: 1 0 0%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.site-social.widget-style ul a .site-social-content p {
    font-size: 0.8125rem;
    font-weight: 600;
    margin-bottom: 0;
}
.site-social.widget-style ul a .site-social-content span {
    font-size: 0.6875rem;
    font-weight: 700;
    text-transform: uppercase;
}

/*------------------------------------ 
    03 - Navigation
------------------------------------*/
.site-nav {
    --menu-transition: all var(--theme-transition-nav-time) var(--theme-transition-nav);
}
.site-nav .site-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
}
.site-nav .site-menu a {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-family: var(--theme-menu-font);
    font-size: var(--theme-menu-font-size);
    font-weight: var(--theme-menu-font-weight);
    letter-spacing: var(--theme-menu-letter-spacing);
    gap: 0.5rem;
    color: currentColor;
    text-decoration: none;
}
.site-nav .site-menu .sub-menu {
    list-style: none;
    margin: 0;
    padding: 0;
}
.site-nav .site-menu .sub-menu li a {
    font-size: var(--theme-sub-menu-font-size);
    font-weight: var(--theme-sub-menu-font-weight);
    letter-spacing: var(--theme-sub-menu-letter-spacing);
    padding-top: var(--theme-sub-menu-link-padding);
    padding-bottom: var(--theme-sub-menu-link-padding);
}
.site-nav.menu-horizontal {
    --sub-menu-ratio: 3;
}
.site-nav.menu-horizontal .site-menu {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}
.site-nav.menu-horizontal .site-menu .sub-menu {
    position: absolute;
    min-width: 12.5rem;
    top: 100%;
    left: 0;
    z-index: 2;
}
.site-nav.menu-horizontal .site-menu .sub-menu li {
    white-space: nowrap;
}
.site-nav.menu-horizontal .site-menu > li {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}
.site-nav.menu-horizontal .site-menu > li > a {
    position: relative;
}
.site-nav.menu-horizontal .site-menu > li > a .menu-item-triangle {
    position: absolute;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    bottom: -0.0625rem;
    left: 3%;
    z-index: 3;
    opacity: 0;
    -webkit-transition: opacity 0.15s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: opacity 0.15s cubic-bezier(0.25, 0.1, 0.25, 1);
}
.site-nav.menu-horizontal .site-menu > li > a .menu-item-triangle svg {
    display: block;
    width: 1.25rem;
    height: auto;
}
.site-nav.menu-horizontal .site-menu > li > a .menu-item-triangle svg .triangle-body {
    fill: var(--color-sub-menu-background);
}
.site-nav.menu-horizontal .site-menu > li > a .menu-item-triangle svg .triangle-border {
    fill: var(--color-sub-menu-border);
}
.site-nav.menu-horizontal .site-menu > li:not(.mega-menu) .sub-menu {
    left: calc(var(--theme-sub-menu-padding) * -1);
    padding-top: calc(var(--theme-sub-menu-padding) - var(--theme-sub-menu-link-padding) * var(--sub-menu-ratio));
    padding-bottom: calc(var(--theme-sub-menu-padding) - var(--theme-sub-menu-link-padding) * var(--sub-menu-ratio));
    color: var(--color-sub-menu-foreground);
    background-color: var(--color-sub-menu-background);
    border: 1px solid var(--color-sub-menu-border);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    -webkit-transition: var(--menu-transition);
    transition: var(--menu-transition);
}
.site-nav.menu-horizontal .site-menu > li:not(.mega-menu) .sub-menu li {
    padding-left: var(--theme-sub-menu-padding);
    padding-right: var(--theme-sub-menu-padding);
}
.site-nav.menu-horizontal .site-menu > li:not(.mega-menu) .sub-menu li.menu-item-has-children > a::after {
    margin-left: 1.25rem;
}
.site-nav.menu-horizontal .site-menu > li:not(.mega-menu) .sub-menu li.menu-item-has-children .sub-menu {
    top: calc((var(--theme-sub-menu-padding) - var(--theme-sub-menu-link-padding) * var(--sub-menu-ratio) + 1px) * -1);
    left: 100%;
}
.site-nav.menu-horizontal .site-menu > li:not(.mega-menu) .sub-menu li a {
    width: 100%;
}
.site-nav.menu-horizontal .site-menu > li.mega-menu > .sub-menu {
    width: 100%;
    color: var(--color-sub-menu-foreground);
    background-color: var(--color-sub-menu-background);
    border-top: 1px solid var(--color-sub-menu-border);
    border-bottom: 1px solid var(--color-sub-menu-border);
    padding-top: var(--theme-sub-menu-padding);
    padding-bottom: calc(var(--theme-sub-menu-padding) * 1.5);
    clip-path: polygon(0 0, 100% 0, 100% 0%, 0 0%);
    -webkit-transition: var(--menu-transition);
    transition: var(--menu-transition);
}
.site-nav.menu-horizontal .site-menu > li.mega-menu > .sub-menu > .sub-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    max-width: var(--theme-width);
    margin-left: auto;
    margin-right: auto;
}
.site-nav.menu-horizontal .site-menu > li.mega-menu > .sub-menu > .sub-menu > li {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 0%;
    flex: 1 0 0%;
    padding-left: var(--theme-screen-padding);
    padding-right: var(--theme-screen-padding);
}
.site-nav.menu-horizontal .site-menu > li.mega-menu > .sub-menu > .sub-menu .menu-item-has-children > a {
    font-weight: 600;
    margin-bottom: 0.375rem;
    color: var(--color-sub-menu-foreground);
    pointer-events: none;
}
.site-nav.menu-horizontal .site-menu > li.mega-menu > .sub-menu > .sub-menu .menu-item-has-children > a::after {
    display: none;
}
.site-nav.menu-horizontal .site-menu > li.mega-menu > .sub-menu > .sub-menu .menu-item-has-children > a .menu-item-label {
    text-decoration: none;
}
.site-nav.menu-horizontal .site-menu > li.mega-menu > .sub-menu > .sub-menu .menu-item-has-children .sub-menu .menu-item-has-children > a {
    margin-top: 1.25rem;
}
.site-nav.menu-horizontal .site-menu > li.mega-menu > .sub-menu .sub-menu {
    position: relative;
    min-width: auto;
    top: 0;
}
.site-nav.menu-horizontal .site-menu > li:hover > a .menu-item-triangle {
    opacity: 1;
}
.site-nav.menu-horizontal .site-menu .menu-item-has-children > a::after {
    font-family: "klbtheme";
    font-weight: 700;
    font-size: 80%;
    line-height: 1;
    content: "\e8d9";
}
.site-nav.menu-horizontal .site-menu .menu-item-has-children:not(.mega-menu) {
    position: relative;
}
.site-nav.menu-horizontal .site-menu .menu-item-has-children:not(.mega-menu) .sub-menu .menu-item-has-children > a::after {
    -webkit-transition: var(--menu-transition);
    transition: var(--menu-transition);
}
.site-nav.menu-horizontal .site-menu .menu-item-has-children:not(.mega-menu):hover > .sub-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}
.site-nav.menu-horizontal .site-menu .menu-item-has-children:not(.mega-menu):hover > .sub-menu .menu-item-has-children:hover > a::after {
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
}
.site-nav.menu-horizontal .site-menu .menu-item-has-children.mega-menu:hover > .sub-menu {
    clip-path: polygon(0 0, 100% 0, 100% calc(100% + 15px), 0 calc(100% + 15px));
}
.site-nav.menu-vertical .site-menu {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}
.site-nav.menu-vertical .site-menu > li > a, .site-nav.menu-vertical .site-menu > li > .menu-item-wrapper {
    min-height: 2.5rem;
    width: 100%;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
}
@media screen and (min-width: 1024.02px) {
    .site-nav.menu-vertical .site-menu > li > a, .site-nav.menu-vertical .site-menu > li > .menu-item-wrapper {
        min-height: 2.75rem;
        padding-left: 1.875rem;
        padding-right: 1.875rem;
    }
}
.site-nav.menu-vertical .site-menu > li > a {
    font-size: var(--theme-text-md);
}
.site-nav.menu-vertical .site-menu > li.menu-item-has-children > a::after {
    font-family: "klbtheme";
    font-weight: 700;
    font-size: 90%;
    text-decoration: none;
    content: "\e8d9";
    margin-left: auto;
    margin-right: 0.375rem;
}
@media screen and (min-width: 1024.02px) {
    .site-nav.menu-vertical .site-menu > li.menu-item-has-children > a::after {
        content: "\e8db";
    }
}
.site-nav.menu-vertical .site-menu > li.menu-item-has-children > .sub-menu {
    padding-left: 2.5rem;
    padding-right: 1.1875rem;
}
.site-nav.menu-vertical .site-menu > li.menu-item-has-children > .sub-menu .sub-menu {
    padding-left: 1.5rem;
}
@media screen and (min-width: 1024.02px) {
    .site-nav.menu-vertical .site-menu > li.menu-item-has-children > .sub-menu {
        position: absolute;
        width: 100%;
        height: 100%;
        left: 100%;
        top: 0;
        padding-left: 0 !important;
        padding-top: 1.625rem;
        padding-bottom: 1.625rem;
        background-color: var(--color-white);
        border-left: 1px solid var(--color-gray-200);
        border-top-right-radius: var(--theme-radius-lg);
        border-bottom-right-radius: var(--theme-radius-lg);
        overflow-y: auto;
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        -webkit-transition: all 0.2s cubic-bezier(0.25, 0.1, 0.25, 1);
        transition: all 0.2s cubic-bezier(0.25, 0.1, 0.25, 1);
    }
    .site-nav.menu-vertical .site-menu > li.menu-item-has-children > .sub-menu a {
        --underline-offset: 0.25rem;
        text-decoration: underline;
        text-underline-offset: var(--underline-offset);
        text-decoration-thickness: 0.0625rem;
        text-decoration-color: transparent;
        -webkit-transition: text-decoration-color 0.1s ease-in-out;
        transition: text-decoration-color 0.1s ease-in-out;
    }
    .site-nav.menu-vertical .site-menu > li.menu-item-has-children > .sub-menu a:hover {
        text-decoration-color: var(--color-gray-400);
    }
    .site-nav.menu-vertical .site-menu > li.menu-item-has-children > .sub-menu > li {
        padding-left: 2.25rem;
        padding-right: 2.25rem;
    }
    .site-nav.menu-vertical .site-menu > li.menu-item-has-children > .sub-menu > li:first-child.menu-item-has-children {
        margin-top: 0;
    }
    .site-nav.menu-vertical .site-menu > li.menu-item-has-children > .sub-menu li.menu-item-has-children {
        margin-top: 1.25rem;
    }
    .site-nav.menu-vertical .site-menu > li.menu-item-has-children > .sub-menu li.menu-item-has-children > a {
        font-weight: 600;
        pointer-events: none;
        color: var(--color-black);
        margin-bottom: 0.125rem;
    }
    .site-nav.menu-vertical .site-menu > li.menu-item-has-children > .sub-menu li.menu-item-has-children .sub-menu {
        padding-left: 0;
    }
}
.site-nav.menu-vertical .site-menu > li.menu-item-has-children > .sub-menu a {
    color: var(--color-gray-700);
}
.site-nav.menu-vertical .site-menu > li.menu-item-has-children:has(img) > .sub-menu {
    padding-left: 3.75rem;
}
.site-nav.menu-vertical .site-menu > li.menu-item-has-children:has(img) > .sub-menu .sub-menu {
    padding-left: 1.5rem;
}
@media screen and (min-width: 1024.02px) {
    .site-nav.menu-vertical .site-menu > li.menu-item-has-children:hover > a {
        background-color: var(--color-gray-100);
    }
    .site-nav.menu-vertical .site-menu > li.menu-item-has-children:hover > .sub-menu {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
    }
}
.site-nav.menu-vertical .site-menu li .dropdown-icon-wrapper {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-right: 0.25rem;
}
.site-nav.menu-vertical .site-menu li .dropdown-icon-wrapper svg {
    width: 1.375rem;
    height: 1.375rem;
    -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: -webkit-transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
.site-nav.menu-vertical .site-menu li .dropdown-icon-wrapper svg > * {
    stroke-width: 1.5;
}
.site-nav.menu-vertical .site-menu li.active > .menu-item-wrapper .dropdown-icon-wrapper svg {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}
.site-nav.menu-vertical .site-menu img {
    display: inline-block;
    max-width: 1.5rem;
    margin-right: 0.75rem;
}
@media screen and (max-width: 1023.98px) {
    .site-nav.menu-vertical .site-menu li.menu-item-has-children > .sub-menu {
        max-height: 0;
        overflow: hidden;
        -webkit-transition: max-height 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
        transition: max-height 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
    }
    .site-nav.menu-vertical .site-menu li.menu-item-has-children > .sub-menu a {
        font-size: var(--theme-text-sm);
        padding-top: 0.375rem;
        padding-bottom: 0.375rem;
    }
    .site-nav.menu-vertical .site-menu li .menu-item-wrapper {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
    .site-nav.menu-vertical .site-menu li .menu-item-wrapper > a {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-flex: 1;
        -ms-flex: 1 0 0%;
        flex: 1 0 0%;
    }
}

/*------------------------------------ 
    03 - Drawer
------------------------------------*/
.site-drawer {
    --drawer-translate-x: calc(-100% - 5px);
    position: fixed;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    padding: 0.3125rem;
    pointer-events: none;
    z-index: 100;
}
@media screen and (min-width: 1024.02px) {
    .site-drawer {
        --drawer-translate-x: calc(-100% - 10px);
        padding: 0.625rem;
    }
}
.site-drawer .site-drawer-inner {
    position: relative;
    width: 20rem;
    color: var(--color-black);
    background-color: var(--color-white);
    -webkit-transition: -webkit-transform 0.6s cubic-bezier(0.7, 0, 0.2, 1);
    transition: -webkit-transform 0.6s cubic-bezier(0.7, 0, 0.2, 1);
    transition: transform 0.6s cubic-bezier(0.7, 0, 0.2, 1);
    transition: transform 0.6s cubic-bezier(0.7, 0, 0.2, 1), -webkit-transform 0.6s cubic-bezier(0.7, 0, 0.2, 1);
    -webkit-transform: translate(calc(var(--drawer-translate-x) * 1));
    transform: translate(calc(var(--drawer-translate-x) * 1));
    overflow-y: auto;
    border-radius: var(--theme-radius-sm);
    z-index: 1;
}
@media screen and (min-width: 320.02px) {
    .site-drawer .site-drawer-inner {
        width: 100%;
    }
}
@media screen and (min-width: 1024.02px) {
    .site-drawer .site-drawer-inner {
        width: 32.5rem;
        border-radius: var(--theme-radius-lg);
        overflow-y: visible;
    }
}
.site-drawer .site-drawer-inner:has(.menu-item-has-children:hover) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
.site-drawer .site-drawer-inner .site-drawer-header {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0.75rem 1.25rem;
    border-bottom: 0.0625rem solid var(--color-gray-200);
}
@media screen and (min-width: 1024.02px) {
    .site-drawer .site-drawer-inner .site-drawer-header {
        padding: 1rem 1.875rem;
    }
}
.site-drawer .site-drawer-inner .site-drawer-header .entry-title {
    font-size: 1.125rem;
    font-weight: 600;
    line-height: 1;
    margin-bottom: 0;
}
@media screen and (min-width: 1024.02px) {
    .site-drawer .site-drawer-inner .site-drawer-header .entry-title {
        font-size: 1.375rem;
    }
}
.site-drawer .site-drawer-inner .site-drawer-body {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
}
.site-drawer .site-drawer-inner .site-drawer-body .site-empty-content {
    padding: 1.875rem 1.25rem;
}
@media screen and (min-width: 1024.02px) {
    .site-drawer .site-drawer-inner .site-drawer-body .site-empty-content {
        padding: 1.875rem;
    }
}
.site-drawer .site-drawer-inner .site-drawer-body .site-cart-notice {
    padding: 1.25rem;
    margin-top: -1.25rem;
    margin-bottom: 1.5rem;
    border-bottom: 1px solid var(--color-gray-200);
    background-color: var(--color-gray-50);
}
.site-drawer .site-drawer-inner .site-drawer-body .site-cart-notice .site-cart-progress {
    background-color: var(--color-gray-200);
}
.site-drawer .site-drawer-inner .site-drawer-body .site-cart-notice p > span {
    background-color: var(--color-white);
    outline: 1px solid var(--color-gray-300);
    padding: 0.125rem 0.25rem;
    border-radius: 0.375rem;
    margin: 0 0.25rem;
}
.site-drawer .site-drawer-inner .site-drawer-body .product-filters {
    width: 100%;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
}
@media screen and (min-width: 1024.02px) {
    .site-drawer .site-drawer-inner .site-drawer-body .product-filters {
        padding-left: 1.875rem;
        padding-right: 2.375rem;
    }
}
.site-drawer .site-drawer-inner .site-drawer-body .site-mobile-search {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
}
@media screen and (min-width: 1024.02px) {
    .site-drawer .site-drawer-inner .site-drawer-body .site-mobile-search {
        padding-left: 1.875rem;
        padding-right: 1.875rem;
    }
}
.site-drawer .site-drawer-inner .site-drawer-body .site-mobile-search .search-form {
    height: 2.875rem;
    padding-left: 0.625rem;
    border-radius: var(--theme-radius-base);
    background-color: var(--color-gray-100);
}
@media screen and (min-width: 1024.02px) {
    .site-drawer .site-drawer-inner .site-drawer-body .site-mobile-search .search-form {
        height: 3.5rem;
    }
}
.site-drawer .site-drawer-inner .site-drawer-body .site-mobile-search .search-form i {
    font-size: 1.375rem;
    color: var(--color-gray-400);
}
.site-drawer .site-drawer-inner .site-drawer-body .site-mobile-search .search-form input {
    font-size: 0.875rem;
    padding-left: 0.5rem;
}
.site-drawer .site-drawer-inner .site-drawer-body .site-mobile-search .search-form input::-webkit-input-placeholder {
    color: var(--color-gray-500);
}
.site-drawer .site-drawer-inner .site-drawer-body .site-mobile-search .search-form input::-moz-placeholder {
    color: var(--color-gray-500);
}
.site-drawer .site-drawer-inner .site-drawer-body .site-mobile-search .search-form input:-ms-input-placeholder {
    color: var(--color-gray-500);
}
.site-drawer .site-drawer-inner .site-drawer-body .site-mobile-search .search-form input::-ms-input-placeholder {
    color: var(--color-gray-500);
}
.site-drawer .site-drawer-inner .site-drawer-body .site-mobile-search .search-form input::placeholder {
    color: var(--color-gray-500);
}
.site-drawer .site-drawer-inner .site-drawer-body .site-mobile-search .search-form input:focus-within::-webkit-input-placeholder {
    color: var(--color-gray-300);
}
.site-drawer .site-drawer-inner .site-drawer-body .site-mobile-search .search-form input:focus-within::-moz-placeholder {
    color: var(--color-gray-300);
}
.site-drawer .site-drawer-inner .site-drawer-body .site-mobile-search .search-form input:focus-within:-ms-input-placeholder {
    color: var(--color-gray-300);
}
.site-drawer .site-drawer-inner .site-drawer-body .site-mobile-search .search-form input:focus-within::-ms-input-placeholder {
    color: var(--color-gray-300);
}
.site-drawer .site-drawer-inner .site-drawer-body .site-mobile-search .search-form input:focus-within::placeholder {
    color: var(--color-gray-300);
}
.site-drawer .site-drawer-inner .site-drawer-body .site-mobile-search .search-form button {
    position: absolute;
    font-size: var(--theme-text-xs);
    padding-right: 0.875rem;
    padding-left: 0.75rem;
    top: -62.4375rem;
    left: -62.4375rem;
}
.site-drawer .site-drawer-inner .site-drawer-body .site-mobile-search .site-search-result {
    display: block;
    margin-top: 1.25rem;
}
.site-drawer .site-drawer-inner .site-drawer-body .site-mobile-search .site-search-result .site-search-tags > span {
    display: block;
    font-size: var(--theme-text-xs);
    font-weight: 500;
    margin-bottom: 0.125rem;
    padding-bottom: 0.375rem;
}
.site-drawer .site-drawer-inner .site-drawer-body .site-mobile-search .site-search-result .site-search-tags ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.site-drawer .site-drawer-inner .site-drawer-body .site-mobile-search .site-search-result .site-search-tags ul li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: var(--theme-text-xs);
    font-weight: 400;
    gap: 0.5rem;
    text-decoration: none;
    color: var(--color-gray-700);
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
}
.site-drawer .site-drawer-inner .site-drawer-body .site-mobile-search .site-search-result .site-search-tags ul li a i {
    font-size: calc(var(--theme-text-xs) + 0.0625rem);
    font-weight: 300;
    line-height: 1;
    color: var(--color-gray-400);
}
.site-drawer .site-drawer-inner .site-drawer-body .site-mobile-search .site-search-result .site-search-tags ul li a i::before {
    margin: 0;
}
.site-drawer .site-drawer-inner .site-drawer-body .site-nav .site-menu > li > a {
    font-size: var(--theme-menu-font-size);
}
.site-drawer .site-drawer-inner .site-drawer-body .site-nav .site-menu > li > a, .site-drawer .site-drawer-inner .site-drawer-body .site-nav .site-menu > li > .menu-item-wrapper {
    min-height: 3.125rem;
}
/*
.site-drawer .site-drawer-overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(var(--color-overlay-background-rgb), var(--color-overlay-background-opacity));
    opacity: 0;
    visibility: hidden;
    -webkit-transition: 0.8s cubic-bezier(0.7, 0, 0.2, 1);
    transition: 0.8s cubic-bezier(0.7, 0, 0.2, 1);
    -webkit-transition-property: opacity, visibility, background-color;
    transition-property: opacity, visibility, background-color;
}
*/
.site-drawer.cart-drawer, .site-drawer.search-drawer, .site-drawer.wishlist-drawer {
    --drawer-translate-x: calc(100% + 5px);
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}
@media screen and (min-width: 1024.02px) {
    .site-drawer.cart-drawer, .site-drawer.search-drawer, .site-drawer.wishlist-drawer {
        --drawer-translate-x: calc(100% + 10px);
    }
}
.site-drawer.cart-drawer .site-drawer-inner, .site-drawer.search-drawer .site-drawer-inner, .site-drawer.wishlist-drawer .site-drawer-inner {
    left: auto;
    right: 0;
}
.site-drawer.active {
    --drawer-translate-x: 0;
    pointer-events: auto;
}
.site-drawer.active .site-drawer-overlay {
    opacity: 1;
    visibility: visible;
}

/*------------------------------------ 
    03 - WooCommerce
------------------------------------*/
/* WooCommerce default styles */
/* Cart notice */
.site-cart-notice {
    text-align: center;
}
.site-cart-notice p {
    font-size: var(--theme-text-xs);
    margin-bottom: 0.625rem;
}
.site-cart-notice p > span {
    font-weight: 600;
}
.site-cart-notice p strong {
    font-weight: 600;
}
.site-cart-notice .site-cart-progress {
    position: relative;
    width: 100%;
    height: 0.25rem;
    border-radius: 1.25rem;
    background-color: var(--color-gray-100);
}
.site-cart-notice .site-cart-progress > span {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    border-radius: 1.25rem;
    background-color: var(--color-black);
}

/* Before shop loop */
.before-shop-loop {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    row-gap: 0.625rem;
    margin-left: -0.625rem;
    margin-right: -0.625rem;
    margin-bottom: 1.5rem;
}
@media screen and (min-width: 768.02px) {
    .before-shop-loop {
        margin-bottom: 2.25rem;
    }
}
.before-shop-loop > .column {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    padding-left: 0.625rem;
    padding-right: 0.625rem;
}
.before-shop-loop > .column.right {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}
.before-shop-loop .filter-button {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 0.875rem;
    font-weight: 600;
    gap: 0.375rem;
    color: currentColor;
    text-decoration: none;
}
.before-shop-loop .filter-button i {
    font-size: 1.125rem;
}
.before-shop-loop .woocommerce-result-count {
    display: none;
    font-size: 0.875rem;
    color: var(--color-gray-500);
    margin-bottom: 0;
}
@media screen and (min-width: 768.02px) {
    .before-shop-loop .woocommerce-result-count {
        display: block;
    }
}
.before-shop-loop .shop-sorting-wrapper {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.625rem;
}
.before-shop-loop .shop-sorting-wrapper > * {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.625rem;
}
.before-shop-loop .shop-sorting-wrapper > * > span {
    font-size: 0.8125rem;
    color: var(--color-gray-500);
    margin-bottom: 0;
}
.before-shop-loop .shop-sorting-wrapper > *.sorting-per-page {
    display: none;
}
@media screen and (min-width: 768.02px) {
    .before-shop-loop .shop-sorting-wrapper > *.sorting-per-page {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
    }
}
.before-shop-loop .shop-sorting-wrapper select {
    border-radius: 62.4375rem;
    padding-left: calc(var(--theme-input-padding-mobile) + 0.375rem);
    padding-right: calc(var(--theme-input-padding-mobile) + 0.375rem);
}
@media screen and (min-width: 768.02px) {
    .before-shop-loop .shop-sorting-wrapper select {
        padding-left: calc(var(--theme-input-padding) + 0.375rem);
        padding-right: calc(var(--theme-input-padding) + 0.375rem);
    }
}
.before-shop-loop .product-views-buttons {
    display: none;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.25rem;
}
@media screen and (min-width: 768.02px) {
    .before-shop-loop .product-views-buttons {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
    }
}
.before-shop-loop .product-views-buttons > a {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 1rem;
    width: 2rem;
    height: 2rem;
    color: currentColor;
    text-decoration: none;
    border-radius: 50%;
}
.before-shop-loop .product-views-buttons > a.active {
    background-color: var(--color-gray-100);
}
@media screen and (min-width: 768.02px) {
    .before-shop-loop .product-views-buttons > a {
        font-size: 1.25rem;
        width: 2.625rem;
        height: 2.625rem;
    }
}

/* --- Breadcrumb styles --- */
.woocommerce-breadcrumb {
    padding-top: 0.75rem;
    margin-bottom: 1.25rem;
}
.woocommerce-breadcrumb ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    font-size: 0.75rem;
    margin: 0;
    padding: 0;
    list-style: none;
}
.woocommerce-breadcrumb ul li {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.woocommerce-breadcrumb ul a {
    position: relative;
    color: var(--color-gray-400);
    text-decoration: none;
}
.woocommerce-breadcrumb ul a::after {
    font-family: "klbtheme";
    font-size: 0.6875rem;
    content: "\e8db";
    margin-left: 0.25rem;
    margin-right: 0.25rem;
}

/* --- Product quantity styles --- */
.quantity {
    --qty-size: 2.5rem;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    line-height: 1;
    border: 1px solid var(--color-gray-200);
    border-radius: 6.1875rem;
}
@media screen and (min-width: 768.02px) {
    .quantity {
        --qty-size: var(--theme-input-height);
    }
}
.quantity .quantity-button {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 1.125rem;
    font-weight: 600;
    min-width: calc(var(--qty-size) / 1.2);
    min-height: var(--qty-size);
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.quantity .qty {
    text-align: center;
    font-size: 1rem;
    font-weight: 600;
    width: calc(var(--qty-size) / 1.5) !important;
    height: var(--qty-size) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    border: 0 !important;
    background-color: transparent !important;
    box-shadow: none !important;
}
.quantity .qty:focus, .quantity .qty:active {
    outline: none;
}
.quantity.size-small {
    --qty-size: 2.125rem;
}
.quantity.size-small .quantity-button {
    font-size: 1rem;
    font-weight: 700;
}
.quantity.size-small .qty {
    font-size: 0.875rem;
    width: var(--qty-size);
}

/* WooCommerce Product */
.product {
    position: relative;
}
.product .product-wrapper {
    position: relative;
    overflow: hidden;
}
.product .product-wrapper.product-background {
    background-color: var(--color-product-background);
    border-radius: var(--theme-radius-sm);
}
@media screen and (min-width: 768.02px) {
    .product .product-wrapper.product-background {
        border-radius: var(--theme-radius-base);
    }
}
.product .product-wrapper.product-background .product-content-wrapper {
    align-items: baseline;
    padding: 0.625rem 1rem 1rem;
}
@media screen and (min-width: 1024.02px) {
    .product .product-wrapper.product-background .product-content-wrapper {
        padding: 1rem 1.3rem 1.5rem;
    }
}
.product .product-thumbnail-wrapper {
    position: relative;
}
.product .product-thumbnail-wrapper .product-thumbnail {
    position: relative;
    overflow: hidden;
}
.product .product-thumbnail-wrapper .product-thumbnail > a {
    display: grid;
}
.product .product-thumbnail-wrapper .product-thumbnail > a > * {
    grid-column: 1;
    grid-row: 1;
}
.product .product-thumbnail-wrapper .product-thumbnail .product-card-carousel {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.product .product-thumbnail-wrapper .product-thumbnail .product-card-carousel + .product-thumbnail-image {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}
.product .product-thumbnail-wrapper .product-thumbnail .product-card-carousel .hover-slider-arrows {
    display: none;
}
.product .product-thumbnail-wrapper .product-thumbnail .product-card-carousel .hover-slider-dots {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 0.875rem;
    padding: 0.625rem 0.875rem;
    bottom: 0;
    border-top-left-radius: var(--theme-radius-sm);
    border-top-right-radius: var(--theme-radius-sm);
    background-color: var(--color-product-background);
    -webkit-transform: translateY(10px) translateX(-50%);
    transform: translateY(10px) translateX(-50%);
    opacity: 0;
    -webkit-transition: all 0.3s cubic-bezier(0.42, 0, 0.58, 1);
    transition: all 0.3s cubic-bezier(0.42, 0, 0.58, 1);
    will-change: transform, opacity;
}
.product .product-thumbnail-wrapper .product-thumbnail .product-card-carousel .hover-slider-dots .hover-slider-dot {
    background-color: var(--color-black);
    width: 0.3125rem;
    height: 0.3125rem;
    border-radius: 50%;
    outline: 2px solid transparent;
    -webkit-transition: all 0.2s cubic-bezier(0.42, 0, 0.58, 1);
    transition: all 0.2s cubic-bezier(0.42, 0, 0.58, 1);
}
.product .product-thumbnail-wrapper .product-thumbnail .product-card-carousel .hover-slider-dots .hover-slider-dot.active {
    background-color: transparent;
    outline-color: var(--color-black);
}
.product .product-thumbnail-wrapper .product-buttons, .product .product-thumbnail-wrapper .product-badges, .product .product-thumbnail-wrapper .product-rating {
    position: absolute;
    top: 1rem;
    z-index: 1;
}
@media screen and (min-width: 1024.02px) {
    .product .product-thumbnail-wrapper .product-buttons, .product .product-thumbnail-wrapper .product-badges, .product .product-thumbnail-wrapper .product-rating {
        top: 1.5rem;
    }
}
.product .product-thumbnail-wrapper .product-buttons {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    top: 0.75rem;
    right: 0.75rem;
}
@media screen and (min-width: 1024.02px) {
    .product .product-thumbnail-wrapper .product-buttons {
        top: 1.5rem;
        right: 1.5rem;
    }
}
@media screen and (min-width: 1024.02px) {
    .product .product-thumbnail-wrapper .product-buttons > * {
        -webkit-transform: translateX(4px);
        transform: translateX(4px);
        opacity: 0;
        visibility: hidden;
        -webkit-transition: all 0.25s cubic-bezier(0.42, 0, 0.58, 1);
        transition: all 0.25s cubic-bezier(0.42, 0, 0.58, 1);
    }
    .product .product-thumbnail-wrapper .product-buttons > *:nth-child(2) {
        -webkit-transition-delay: 0.05s;
        transition-delay: 0.05s;
    }
}
.product .product-thumbnail-wrapper .product-buttons > * a {
    font-size: 1.0625rem;
    line-height: 1;
    width: 2.375rem;
    height: 2.375rem;
    background-color: var(--color-white);
    border-radius: 5.625rem;
    -webkit-transition: all 0.15s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: all 0.15s cubic-bezier(0.25, 0.1, 0.25, 1);
}
@media screen and (min-width: 1024.02px) {
    .product .product-thumbnail-wrapper .product-buttons > * a {
        font-size: 1.1875rem;
        width: 2.9375rem;
        height: 2.9375rem;
    }
}
.product .product-thumbnail-wrapper .product-buttons > * a i::before {
    margin: 0;
}
.product .product-thumbnail-wrapper .product-buttons > * a i.klb-icon-eye {
    font-size: 1.125rem;
}
@media screen and (min-width: 1024.02px) {
    .product .product-thumbnail-wrapper .product-buttons > * a i.klb-icon-eye {
        font-size: 1.3125rem;
    }
}
.product .product-thumbnail-wrapper .product-buttons > * a:hover {
    color: var(--color-white);
    background-color: var(--color-black);
}
.product .product-thumbnail-wrapper .product-badges {
    left: 1rem;
}
@media screen and (min-width: 1024.02px) {
    .product .product-thumbnail-wrapper .product-badges {
        left: 1.5rem;
    }
}
.product .product-thumbnail-wrapper .product-rating {
    display: none;
    background-color: var(--color-white);
    padding: 0 0.75rem 0 0.625rem;
    height: 1.625rem;
    right: 1rem;
    border-radius: 5.625rem;
    pointer-events: none;
    -webkit-transition: all 0.25s cubic-bezier(0.42, 0, 0.58, 1);
    transition: all 0.25s cubic-bezier(0.42, 0, 0.58, 1);
}
@media screen and (min-width: 1024.02px) {
    .product .product-thumbnail-wrapper .product-rating {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        right: 1.5rem;
        height: 1.75rem;
    }
}
.product .product-thumbnail-wrapper .product-cart-button {
    position: absolute;
    bottom: 0.625rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    -webkit-transition: all 0.25s cubic-bezier(0.42, 0, 0.58, 1);
    transition: all 0.25s cubic-bezier(0.42, 0, 0.58, 1);
}
@media screen and (min-width: 1024.02px) {
    .product .product-thumbnail-wrapper .product-cart-button {
        opacity: 0;
        -webkit-transform: translateX(-50%) translateY(20%);
        transform: translateX(-50%) translateY(20%);
    }
}
.product .product-thumbnail-wrapper:hover .product-thumbnail .product-card-carousel .hover-slider-dots {
    -webkit-transform: translateY(0) translateX(-50%);
    transform: translateY(0) translateX(-50%);
    opacity: 1;
}
@media screen and (min-width: 1024.02px) {
    .product .product-thumbnail-wrapper:hover .product-cart-button {
        bottom: 1.75rem;
    }
}
.product .product-content-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.product .product-content-wrapper .product-content-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 0%;
    flex: 1 1 0%;
}
.product .product-content-wrapper .product-wishlist {
    margin-top: 0.125rem;
    -webkit-transition: all 0.1s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: all 0.1s cubic-bezier(0.25, 0.1, 0.25, 1);
}
@media screen and (min-width: 1024.02px) {
    .product .product-content-wrapper .product-wishlist {
        opacity: 0;
    }
}
.product .product-brand {
    margin-bottom: 0.125rem;
}
.product .product-brand a {
    font-size: var(--theme-text-2xs);
    line-height: 1;
    color: var(--color-gray-500);
    text-decoration: none;
}
@media screen and (min-width: 768.02px) {
    .product .product-brand a {
        font-size: var(--theme-text-xs);
    }
}
.product .product-title {
    font-family: var(--theme-product-name-font);
    font-size: var(--theme-product-name-font-size-mobile);
    font-weight: var(--theme-product-name-weight);
    letter-spacing: var(--theme-product-name-letter-spacing);
    line-height: var(--theme-product-name-line-height);
    margin-bottom: 0.375rem;
}
@media screen and (min-width: 1024.02px) {
    .product .product-title {
        font-size: var(--theme-product-name-font-size);
    }
}
.product .product-title a {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: var(--theme-product-name-line);
    padding-bottom: 0.0625rem;
    color: currentColor;
    text-decoration: underline;
    text-decoration-color: transparent;
    text-underline-offset: 0.25rem;
    -webkit-transition: all 0.1s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: all 0.1s cubic-bezier(0.25, 0.1, 0.25, 1);
}
.product .product-title a:hover {
    text-decoration-color: var(--color-gray-400);
}
.product .product-description {
    margin-top: 1.5rem;
    font-size: var(--theme-text-sm);
    color: var(--color-gray-500);
    line-height: 1.5;
}
@media screen and (min-width: 1024.02px) {
    .products .product:hover .product-thumbnail-wrapper .product-rating {
        opacity: 0;
        -webkit-transform: translateX(4px);
        transform: translateX(4px);
    }
}
@media screen and (min-width: 1024.02px) {
    .products .product:hover .product-thumbnail-wrapper .product-buttons > * {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
        visibility: visible;
    }
}
@media screen and (min-width: 1024.02px) {
    .products .product:hover .product-thumbnail-wrapper .product-cart-button {
        opacity: 1;
        -webkit-transform: translateX(-50%) translateY(0);
        transform: translateX(-50%) translateY(0);
    }
}
@media screen and (min-width: 1024.02px) {
    .products .product:hover .product-content-wrapper .product-wishlist {
        opacity: 1;
    }
}

/* Product buttons */
.product-buttons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.5rem;
}
.product-buttons > * {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}
.product-buttons > * a {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-decoration: none;
    color: currentColor;
    width: 2rem;
    height: 2rem;
}
.product-buttons > *.product-wishlist {
    position: relative;
}
.product-buttons > *.product-wishlist a {
    font-size: 0;
    border-radius: 5.625rem;
}
.product-buttons > *.product-wishlist a::before {
    font-family: "klbtheme";
    font-size: 1.125rem;
    content: "\e80c";
}
@media screen and (min-width: 1024.02px) {
    .product-buttons > *.product-wishlist a::before {
        font-size: 1.3125rem;
    }
}
.product-buttons > *.product-wishlist a:hover::before {
    content: "\e80b";
}

/* Product badges */
.product-badges {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 0.25rem;
    pointer-events: none;
}
.product-badges .product-badge {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: var(--theme-text-xs);
    font-weight: 500;
    line-height: 1;
    height: 1.5625rem;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    border-radius: 5.625rem;
    background-color: var(--color-white);
    color: var(--color-black);
    outline: 1px solid var(--color-black);
}
@media screen and (min-width: 1024.02px) {
    .product-badges .product-badge {
        font-size: var(--theme-text-sm);
        height: 1.625rem;
    }
}
.product-badges .product-badge.sale {
    background-color: var(--color-black);
    color: var(--color-white);
}

/* Product price */
.price {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    gap: 0.375rem;
    font-family: var(--theme-product-price-font);
    font-size: var(--theme-product-price-font-size);
    font-weight: var(--theme-product-price-weight);
    letter-spacing: var(--theme-product-price-letter-spacing);
    line-height: var(--theme-product-price-font-size);
}
.price ins {
    line-height: 1;
    text-decoration: none;
    color: var(--color-black);
}
.price del {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    color: var(--color-gray-400);
}

/* Product rating */
.product-rating {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 0.5rem;
}
.product-rating .rating-count {
    font-size: var(--theme-text-2xs);
    color: var(--color-gray-600);
}
.product-rating.simple {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 0.25rem;
}
.product-rating.simple .rating-count {
    line-height: 1;
}
.product-rating.simple i {
    font-size: 0.8125rem;
    line-height: 1;
    color: var(--color-yellow);
}
.product-rating.simple i::before {
    margin: 0;
}

/* Product star */
.star-rating {
    --font-size: 0.8125rem;
    --lt-spacing: 0;
    position: relative;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    line-height: 1;
    overflow: hidden;
}
.star-rating::before {
    font-family: "klbtheme";
    content: "\e82f\e82f\e82f\e82f\e82f";
    font-size: var(--font-size);
    letter-spacing: var(--lt-spacing);
    color: var(--color-gray-300);
}
.star-rating span {
    position: absolute;
    font-size: 0;
    overflow: hidden;
}
.star-rating span::before {
    font-family: "klbtheme";
    content: "\e82f\e82f\e82f\e82f\e82f";
    font-size: var(--font-size);
    letter-spacing: var(--lt-spacing);
    color: var(--color-black);
}

/* WooCommerce Products */
.products:not(.slick-slider) {
    position: relative;
    display: grid;
    gap: 0.3125rem;
}
@media screen and (min-width: 768.02px) {
    .products:not(.slick-slider):not(.gap-sm) {
        gap: var(--theme-gutter);
    }
    .products:not(.slick-slider).gap-sm {
        gap: 1.5rem;
    }
}
.products:not(.slick-slider).column-1-mobile {
    grid-template-columns: repeat(1, 1fr);
}
.products:not(.slick-slider).column-2-mobile {
    grid-template-columns: repeat(2, 1fr);
}
@media screen and (min-width: 768.02px) {
    .products:not(.slick-slider).column-2 {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media screen and (min-width: 768.02px) {
    .products:not(.slick-slider).column-3 {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media screen and (min-width: 768.02px) {
    .products:not(.slick-slider).column-4 {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media screen and (min-width: 1024.02px) {
    .products:not(.slick-slider).column-4 {
        grid-template-columns: repeat(4, 1fr);
    }
}
@media screen and (min-width: 576.02px) {
    .products:not(.slick-slider).column-5 {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media screen and (min-width: 768.02px) {
    .products:not(.slick-slider).column-5 {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media screen and (min-width: 1024.02px) {
    .products:not(.slick-slider).column-5 {
        grid-template-columns: repeat(5, 1fr);
    }
}
@media screen and (min-width: 576.02px) {
    .products:not(.slick-slider).column-6 {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media screen and (min-width: 768.02px) {
    .products:not(.slick-slider).column-6 {
        grid-template-columns: repeat(4, 1fr);
    }
}
@media screen and (min-width: 1024.02px) {
    .products:not(.slick-slider).column-6 {
        grid-template-columns: repeat(6, 1fr);
    }
}
.products:not(.slick-slider).product-list .product-inner .product-description, .products:not(.slick-slider).product-list .product-inner .product-highlights, .products:not(.slick-slider).product-list .product-inner .add_to_cart_button {
    display: none;
}
@media screen and (min-width: 768.02px) {
    .products:not(.slick-slider).product-list .product-inner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        gap: 1.5rem;
    }
    .products:not(.slick-slider).product-list .product-inner .product-thumbnail-wrapper {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 50%;
    }
    .products:not(.slick-slider).product-list .product-inner .product-content-wrapper {
        -webkit-box-flex: 1;
        -ms-flex: 1 0 0%;
        flex: 1 0 0%;
        -ms-flex-item-align: start;
        align-self: flex-start;
        padding-top: 1.5rem;
        padding-bottom: 1.5rem;
    }
    .products:not(.slick-slider).product-list .product-inner .product-content-wrapper .product-title {
        font-size: calc(var(--theme-product-name-font-size) + 0.125rem);
    }
    .products:not(.slick-slider).product-list .product-inner .product-content-wrapper .product-content-inner {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
    }
    .products:not(.slick-slider).product-list .product-inner .product-content-wrapper .product-buttons {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }
    .products:not(.slick-slider).product-list .product-inner .product-content-wrapper .product-description {
        display: block;
        -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
        order: 3;
    }
    .products:not(.slick-slider).product-list .product-inner .product-content-wrapper .product-highlights {
        display: block;
        -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
        order: 4;
        margin-top: 1.5rem;
    }
    .products:not(.slick-slider).product-list .product-inner .product-content-wrapper .product-highlights ul {
        font-size: 0.875rem;
        margin: 0;
        padding-left: 1.25rem;
    }
    .products:not(.slick-slider).product-list .product-inner .product-content-wrapper .product-highlights ul li + li {
        margin-top: 0.75rem;
    }
    .products:not(.slick-slider).product-list .product-inner .product-content-wrapper .add_to_cart_button {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
        order: 5;
        margin-top: 1.5rem;
        width: 100%;
    }
}

/* WooCommerce Single */
.single-product-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 1.25rem;
}
@media screen and (min-width: 1024.02px) {
    .single-product-wrapper {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}
.single-product-wrapper .column {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 100%;
}
@media screen and (min-width: 1024.02px) {
    .single-product-wrapper .column {
        width: 48%;
    }
}
.single-product-wrapper .product-meta {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 1.25rem;
    padding-bottom: 0.625rem;
    border-bottom: 1px solid var(--color-gray-200);
}
@media screen and (min-width: 1024.02px) {
    .single-product-wrapper .product-meta {
        gap: 1.5rem;
        margin-bottom: 2.25rem;
    }
}
.single-product-wrapper .product-meta .product-rating {
    margin-bottom: 0;
}
.single-product-wrapper .product-sku {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 0.8125rem;
    font-weight: 500;
}
.single-product-wrapper .product-sku > span:not(.sku) {
    color: var(--color-gray-500);
}
.single-product-wrapper .product-price-wrapper {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    width: 100%;
    margin-bottom: 1.5rem;
    gap: 0.75rem;
}
@media screen and (min-width: 1024.02px) {
    .single-product-wrapper .product-price-wrapper {
        margin-bottom: 2.25rem;
    }
}
.single-product-wrapper .product-price-wrapper .price {
    font-size: 1.125rem;
}
@media screen and (min-width: 1024.02px) {
    .single-product-wrapper .product-price-wrapper .price {
        font-size: 1.375rem;
    }
}
.single-product-wrapper .product-price-wrapper .product-stock {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    font-size: 0.875rem;
    font-weight: 500;
}
.single-product-wrapper .woocommerce-product-details__short-description {
    font-size: 0.875rem;
    color: var(--color-gray-600);
    margin-bottom: 1.25rem;
}
@media screen and (min-width: 1024.02px) {
    .single-product-wrapper .woocommerce-product-details__short-description {
        margin-bottom: 2.25rem;
    }
}
.single-product-wrapper .cart-actions {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-bottom: 1rem;
}
.single-product-wrapper .cart-actions .cart-buttons {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.5rem;
    -webkit-box-flex: 1;
    -ms-flex: 1 0 0%;
    flex: 1 0 0%;
}
.single-product-wrapper .cart-actions .cart-buttons .single_add_to_cart_button {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 0%;
    flex: 1 0 0%;
}
.single-product-wrapper .single_buy_now_button, .single-product-wrapper .single_add_to_cart_button {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 0%;
    flex: 1 0 0%;
}
.single-product-wrapper .product-actions {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.375rem;
}
.single-product-wrapper .product-actions > * {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}
.single-product-wrapper .product-actions > * a {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: var(--theme-button-height-mobile);
    height: var(--theme-button-height-mobile);
    font-size: 0;
    border-radius: 6.1875rem;
    color: currentColor;
    text-decoration: none;
    border: 1px solid var(--color-gray-300);
}
@media screen and (min-width: 1024.02px) {
    .single-product-wrapper .product-actions > * a {
        width: var(--theme-button-height);
        height: var(--theme-button-height);
    }
}
.single-product-wrapper .product-actions > * a::before {
    position: relative;
    font-family: "klbtheme";
    font-size: 1rem;
    line-height: 1;
}
@media screen and (min-width: 1024.02px) {
    .single-product-wrapper .product-actions > * a::before {
        font-size: 1.375rem;
    }
}
.single-product-wrapper .product-actions > *.product-wishlist a::before {
    content: "\e80c";
}
.single-product-wrapper .product-actions > *.product-compare a::before {
    content: "\e8a5";
}
.single-product-wrapper .product-extra-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.625rem;
    margin-top: 1.25rem;
}
@media screen and (min-width: 1024.02px) {
    .single-product-wrapper .product-extra-link {
        margin-top: 2rem;
    }
}
.single-product-wrapper .product-extra-link > a {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 0.875rem;
    font-weight: 500;
    gap: 0.375rem;
    color: currentColor;
    text-decoration: none;
}
.single-product-wrapper .product-extra-link > a i {
    font-size: 1.125rem;
}
.single-product-wrapper .product-extra-link .product-share {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.375rem;
}
.single-product-wrapper .product-extra-link .product-share > span {
    font-size: 0.875rem;
    color: var(--color-gray-500);
}
@media screen and (min-width: 1024.02px) {
    .single-product-wrapper .product-extra-link .product-share {
        margin-left: auto;
    }
}
.single-product-wrapper .product-highlights {
    margin-top: 1.25rem;
    padding-top: 1.25rem;
    border-top: 1px solid var(--color-gray-200);
}
@media screen and (min-width: 1024.02px) {
    .single-product-wrapper .product-highlights {
        margin-top: 2rem;
        padding-top: 2rem;
    }
}
.single-product-wrapper .product-highlights .entry-title {
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
}
.single-product-wrapper .product-highlights ul {
    font-size: 0.875rem;
    margin: 0;
    padding-left: 1rem;
}
.single-product-wrapper .product-highlights ul li + li {
    margin-top: 0.5rem;
}
.single-product-wrapper .single-product-gallery .product-gallery-items {
    margin-bottom: 1.25rem;
}
.single-product-wrapper .single-product-gallery .product-thumbnail-items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.375rem;
}
.single-product-wrapper .single-product-gallery .product-thumbnail-items .thumbnail-item {
    position: relative;
    max-width: 4.125rem;
}

.single-product-tabs-wrapper {
    margin-top: 1.875rem;
}
@media screen and (min-width: 768.02px) {
    .single-product-tabs-wrapper {
        margin-top: 2.875rem;
    }
}
.single-product-tabs-wrapper .wc-tabs {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 1.125rem;
    list-style: none;
    margin: 0;
    padding: 0;
    border-bottom: 1px solid var(--color-gray-200);
}
.single-product-tabs-wrapper .wc-tabs li a {
    position: relative;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-bottom: 0.625rem;
    font-size: 1.125rem;
    font-weight: 500;
    text-decoration: none;
    color: var(--color-gray-400);
    -webkit-transition: all 0.1s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: all 0.1s cubic-bezier(0.25, 0.1, 0.25, 1);
}
.single-product-tabs-wrapper .wc-tabs li a::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 0.125rem;
    background-color: currentColor;
    bottom: 0;
    left: 0;
    opacity: 0;
}
.single-product-tabs-wrapper .wc-tabs li a:hover {
    color: var(--color-black);
}
.single-product-tabs-wrapper .wc-tabs li.active a {
    color: var(--color-black);
}
.single-product-tabs-wrapper .wc-tabs li.active a::before {
    opacity: 1;
}
.single-product-tabs-wrapper .woocommerce-Tabs-panel {
    padding-top: 1rem;
    padding-bottom: 1rem;
}
.single-product-tabs-wrapper .woocommerce-Tabs-panel > h2 {
    display: none;
}
.single-product-tabs-wrapper .woocommerce-Tabs-panel .woocommerce-product-attributes {
    width: 100%;
}
.single-product-tabs-wrapper .woocommerce-Tabs-panel .woocommerce-product-attributes tbody {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 0.625rem;
}
.single-product-tabs-wrapper .woocommerce-Tabs-panel .woocommerce-product-attributes tbody tr {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    font-size: 0.875rem;
    width: 100%;
    border-bottom: 1px solid var(--color-gray-200);
}
@media screen and (min-width: 768.02px) {
    .single-product-tabs-wrapper .woocommerce-Tabs-panel .woocommerce-product-attributes tbody tr {
        width: 49%;
    }
}
.single-product-tabs-wrapper .woocommerce-Tabs-panel .woocommerce-product-attributes tbody tr > * {
    padding-bottom: 0.75rem;
}
.single-product-tabs-wrapper .woocommerce-Tabs-panel .woocommerce-product-attributes tbody tr th {
    font-weight: 600;
    min-width: 12.5rem;
}
.single-product-tabs-wrapper .woocommerce-Tabs-panel .woocommerce-product-attributes tbody tr td p {
    margin-bottom: 0;
}

/* WooCommerce Cart */
.woocommerce-cart-wrapper {
    position: relative;
}
.woocommerce-cart-wrapper .cart-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 1.25rem;
}
@media screen and (min-width: 1024.02px) {
    .woocommerce-cart-wrapper .cart-wrapper {
        gap: 1.875rem;
    }
}
.woocommerce-cart-wrapper .cart-wrapper > * {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
/*    width: 100%;*/
}
@media screen and (min-width: 1024.02px) {
    .woocommerce-cart-wrapper .cart-wrapper > *.woocommerce-cart-form, .woocommerce-cart-wrapper .cart-wrapper > *#customer_details {
        -webkit-box-flex: 1;
        -ms-flex: 1 0 0%;
        flex: 1 0 0%;
    }
    .woocommerce-cart-wrapper .cart-wrapper > *.cart-collaterals {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 20rem;
    }
    .woocommerce-cart-wrapper .cart-wrapper > *.order-review-wrapper {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 23.75rem;
    }
}
.woocommerce-cart-wrapper .shop_table {
    width: 100%;
}
.woocommerce-cart-wrapper .shop_table tr {
    position: relative;
}
.woocommerce-cart-wrapper .shop_table tr th {
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--color-gray-500);
}
@media screen and (max-width: 767.98px) {
    .woocommerce-cart-wrapper .shop_table tr th.product-remove {
        display: none;
    }
}
.woocommerce-cart-wrapper .shop_table tr td {
    font-size: 0.8125rem;
    vertical-align: middle;
    border-color: var(--color-gray-300);
}
@media screen and (min-width: 768.02px) {
    .woocommerce-cart-wrapper .shop_table tr td {
        font-size: 0.875rem;
    }
}
.woocommerce-cart-wrapper .shop_table tr td a {
    color: currentColor;
    text-decoration: none;
}
.woocommerce-cart-wrapper .shop_table tr td.product-thumbnail {
    max-width: 2.875rem;
    padding-left: 0;
    padding-right: 0.75rem;
}
.woocommerce-cart-wrapper .shop_table tr td.product-name {
    padding-left: 0.75rem;
}
.woocommerce-cart-wrapper .shop_table tr td.product-name a {
    font-weight: 600;
}
@media screen and (max-width: 767.98px) {
    .woocommerce-cart-wrapper .shop_table tr td.product-name {
        max-width: 9.375rem;
    }
}
@media screen and (max-width: 767.98px) {
    .woocommerce-cart-wrapper .shop_table tr td.product-quantity {
        width: 5.75rem;
        padding-right: 0;
    }
}
.woocommerce-cart-wrapper .shop_table tr td.product-subtotal {
    font-weight: 600;
}
.woocommerce-cart-wrapper .shop_table tr td.product-remove {
    width: 0;
    padding-right: 0;
}
.woocommerce-cart-wrapper .shop_table tr td.product-remove a {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 0.875rem;
    width: 1.25rem;
    height: 1.25rem;
    border: 1px solid var(--color-gray-300);
    background-color: var(--color-white);
    border-radius: 0.25rem;
    -webkit-transition: all 0.1s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: all 0.1s cubic-bezier(0.25, 0.1, 0.25, 1);
}
.woocommerce-cart-wrapper .shop_table tr td.product-remove a:hover {
    background-color: var(--color-gray-100);
}
.woocommerce-cart-wrapper .shop_table tr td.product-remove a i {
    font-weight: 700;
    line-height: 1;
    text-shadow: 0 0 0 currentColor;
}
@media screen and (max-width: 767.98px) {
    .woocommerce-cart-wrapper .shop_table tr td.product-remove {
        position: absolute;
        left: 0;
        top:  2.5rem;
        padding: 0;
    }
}
.woocommerce-cart-wrapper .shop_table tr td.actions {
    padding-left: 0;
    padding-right: 0;
    padding-top: 1.125rem;
    padding-bottom: 1rem;
}
.woocommerce-cart-wrapper .shop_table tr td.actions .actions-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.woocommerce-cart-wrapper .shop_table tr td.actions .actions-wrapper .coupon {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: auto;
}
.woocommerce-cart-wrapper .shop_table tr td.actions .actions-wrapper .coupon label {
    font-size: 0.75rem;
    margin-right: 0.375rem;
}
.woocommerce-cart-wrapper .shop_table tr td.actions .actions-wrapper .coupon input {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 0%;
    flex: 1 0 0%;
    height: var(--theme-input-height-mobile);
    min-width: 16.25rem;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    border: 1px solid var(--color-gray-300);
    margin-right: 0.25rem;
}
.woocommerce-cart-wrapper .shop_table tr td.actions .actions-wrapper .coupon input:hover {
    border-color: var(--color-gray-400);
}
@media screen and (max-width: 767.98px) {
    .woocommerce-cart-wrapper .shop_table tr td.actions .actions-wrapper .coupon input {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 100%;
        margin-bottom: 0.125rem;
    }
}
.woocommerce-cart-wrapper .shop_table tr td.actions .actions-wrapper .coupon button {
    font-size: 0.875rem;
    font-weight: 600;
    height: var(--theme-button-height-mobile);
    color: var(--color-white);
    padding-left: var(--theme-button-padding-mobile);
    padding-right: var(--theme-button-padding-mobile);
    background-color: var(--color-black);
}
.woocommerce-cart-wrapper .shop_table tr td.actions .actions-wrapper .coupon button:hover {
    background-color: var(--color-gray-800);
}
@media screen and (max-width: 767.98px) {
    .woocommerce-cart-wrapper .shop_table tr td.actions .actions-wrapper .coupon button {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 100%;
        margin-bottom: 0.3125rem;
    }
}
.woocommerce-cart-wrapper .shop_table tr td.actions button {
    font-weight: 600;
    background-color: var(--color-gray-100);
}
.woocommerce-cart-wrapper .shop_table tr td.actions button[name=update_cart] {
    margin-left: 0.375rem;
    border-color: var(--color-gray-300);
}
@media screen and (max-width: 767.98px) {
    .woocommerce-cart-wrapper .shop_table tr td.actions button[name=update_cart] {
        -webkit-box-flex: 1;
        -ms-flex: 1 0 0%;
        flex: 1 0 0%;
        width: 100%;
        margin-left: 0;
    }
}
.woocommerce-cart-wrapper .shop_table tr td.actions button[name=ts_empty_cart] {
    background-color: transparent;
    border: 1px solid var(--color-gray-300);
    margin-left: 0.375rem;
}
.woocommerce-cart-wrapper .shop_table tr td.actions button[name=ts_empty_cart]:hover {
    color: var(--color-white);
    background-color: var(--color-black);
    border-color: transparent;
}
@media screen and (max-width: 767.98px) {
    .woocommerce-cart-wrapper .shop_table tr td.actions button[name=ts_empty_cart] {
        -webkit-box-flex: 1;
        -ms-flex: 1 0 0%;
        flex: 1 0 0%;
        width: 100%;
    }
}
@media screen and (max-width: 767.98px) {
    .woocommerce-cart-wrapper .shop_table tr th.product-price, .woocommerce-cart-wrapper .shop_table tr th.product-subtotal, .woocommerce-cart-wrapper .shop_table tr td.product-price, .woocommerce-cart-wrapper .shop_table tr td.product-subtotal {
        display: none;
    }
}

.woocommerce-notice {
    position: relative;
    padding: 0.625rem 0.75rem;
    background-color: var(--color-gray-50);
    border: 1px solid var(--color-gray-200);
    border-radius: var(--theme-radius-sm);
    margin-bottom: 0.625rem;
}
@media screen and (min-width: 1024.02px) {
    .woocommerce-notice {
        padding: 1.125rem 1.375rem;
        margin-bottom: 1.875rem;
    }
}
.woocommerce-notice .notice-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.woocommerce-notice .notice-header i {
    position: relative;
    font-size: 1.0625rem;
    line-height: 1;
    margin-right: 0.375rem;
    top: 0.0625rem;
}
.woocommerce-notice .notice-header p {
    font-size: 0.8125rem;
    font-weight: 600;
    margin-bottom: 0;
}
.woocommerce-notice .notice-header.shipping-notice-header {
    margin-bottom: 0.9375rem;
}
.woocommerce-notice .shipping-progress {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 0.3125rem;
    overflow: hidden;
}
.woocommerce-notice .shipping-progress::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.08);
    border-radius: 0.625rem;
}
.woocommerce-notice .shipping-progress span {
    display: block;
    height: 100%;
    background-color: var(--color-gray-400);
    border-radius: 0.625rem;
}

.cart-collaterals .cart_totals {
    border-radius: var(--theme-radius-sm);
    border: 1px solid var(--color-gray-200);
    -webkit-box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.05), 0 1px 2px -1px rgba(0, 0, 0, 0.05);
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.05), 0 1px 2px -1px rgba(0, 0, 0, 0.05);
    padding: 1.25rem;
}
.cart-collaterals .cart_totals > h2 {
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
}
.cart-collaterals .cart_totals .shop_table tr th, .cart-collaterals .cart_totals .shop_table tr td {
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
    border-bottom: 1px solid var(--color-gray-200);
}
.cart-collaterals .cart_totals .shop_table tr td {
    text-align: right;
}
.cart-collaterals .cart_totals .shop_table tr:last-child th, .cart-collaterals .cart_totals .shop_table tr:last-child td {
    border-bottom: 0;
}
.cart-collaterals .wc-proceed-to-checkout {
    margin-top: 0.625rem;
}
.cart-collaterals .wc-proceed-to-checkout a {
    width: 100%;
    height: 2.75rem;
    color: var(--color-white);
    background-color: var(--color-black);
}

#customer_details > * {
    width: 100%;
}
#customer_details > * .woocommerce-billing-fields > h3, #customer_details > * .woocommerce-additional-fields > h3 {
    font-size: 0.9375rem;
    font-weight: 700;
}
#customer_details > * .woocommerce-billing-fields__field-wrapper, #customer_details > * .woocommerce-additional-fields__field-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -0.625rem;
    margin-right: -0.625rem;
}
#customer_details > * .woocommerce-billing-fields__field-wrapper > *, #customer_details > * .woocommerce-additional-fields__field-wrapper > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 100%;
    padding-left: 0.625rem;
    padding-right: 0.625rem;
}
@media screen and (min-width: 1024.02px) {
    #customer_details > * .woocommerce-billing-fields__field-wrapper > *.billing_first_column, #customer_details > * .woocommerce-billing-fields__field-wrapper > *.billing_last_column, #customer_details > * .woocommerce-additional-fields__field-wrapper > *.billing_first_column, #customer_details > * .woocommerce-additional-fields__field-wrapper > *.billing_last_column {
        width: 50%;
    }
}
#customer_details > * .woocommerce-billing-fields__field-wrapper > * label, #customer_details > * .woocommerce-additional-fields__field-wrapper > * label {
    display: block;
    font-size: 0.8125rem;
    margin-bottom: 0.3125rem;
}
#customer_details > * .woocommerce-billing-fields__field-wrapper > * textarea, #customer_details > * .woocommerce-additional-fields__field-wrapper > * textarea {
    min-height: 5.625rem;
}

.order-review-wrapper {
    background-color: rgba(0, 0, 0, 0.01);
    border: 1px solid var(--color-gray-200);
    border-radius: var(--theme-radius-sm);
    padding: 1.25rem;
}
.order-review-wrapper > h3 {
    font-size: 0.9375rem;
    font-weight: 600;
}
.order-review-wrapper .shop_table tr th, .order-review-wrapper .shop_table tr td {
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
    border-bottom: 1px solid var(--color-gray-200);
}
.order-review-wrapper .shop_table tr th.product-total {
    text-align: right;
}
.order-review-wrapper .shop_table tr td {
    text-align: right;
}
.order-review-wrapper .shop_table tr td.product-name {
    font-size: 0.75rem;
    text-align: left;
}
.order-review-wrapper .woocommerce-checkout-payment {
    margin-top: 0.9375rem;
}
.order-review-wrapper .woocommerce-checkout-payment .wc_payment_methods {
    list-style: none;
    margin: 0;
    padding: 0;
}
.order-review-wrapper .woocommerce-checkout-payment .wc_payment_methods li {
    position: relative;
}
.order-review-wrapper .woocommerce-checkout-payment .wc_payment_methods li + li {
    margin-top: 0.625rem;
}
.order-review-wrapper .woocommerce-checkout-payment .wc_payment_methods li label {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 0.875rem;
    font-weight: 600;
    text-transform: capitalize;
}
.order-review-wrapper .woocommerce-checkout-payment .wc_payment_methods li label::before {
    content: "";
    position: relative;
    display: block;
    width: 1rem;
    height: 1rem;
    border: 1px solid var(--color-gray-300);
    border-radius: 50%;
    margin-right: 0.5rem;
}
.order-review-wrapper .woocommerce-checkout-payment .wc_payment_methods li input {
    position: absolute;
    opacity: 0;
    left: -9999px;
}
.order-review-wrapper .woocommerce-checkout-payment .wc_payment_methods li input:checked + label::before {
    border-color: var(--color-black);
}
.order-review-wrapper .woocommerce-checkout-payment .wc_payment_methods li input:checked + label::after {
    content: "";
    position: absolute;
    width: 0.625rem;
    height: 0.625rem;
    background-color: var(--color-black);
    border-radius: 50%;
    left: 0.1875rem;
}
.order-review-wrapper .woocommerce-checkout-payment .wc_payment_methods li .payment_box {
    font-size: 0.8125rem;
    margin-top: 0.625rem;
    color: var(--color-gray-500);
}
.order-review-wrapper .place-order {
    margin-top: 0.9375rem;
}
@media screen and (min-width: 1024.02px) {
    .order-review-wrapper .place-order {
        margin-top: 1.5625rem;
    }
}
.order-review-wrapper .place-order .woocommerce-privacy-policy-text {
    font-size: 0.75rem;
}
.order-review-wrapper .place-order .woocommerce-privacy-policy-text p {
    color: var(--color-gray-500);
}
.order-review-wrapper .place-order .woocommerce-privacy-policy-text p a {
    font-weight: 500;
    color: var(--color-gray-700);
}
.order-review-wrapper .place-order .validate-required {
    line-height: 1;
}
.order-review-wrapper .place-order .validate-required .woocommerce-form__label-for-checkbox {
    position: relative;
    display: inline;
}
.order-review-wrapper .place-order .validate-required .woocommerce-form__label-for-checkbox .woocommerce-terms-and-conditions-checkbox-text {
    position: relative;
    display: inline;
    font-size: 0.75rem;
}
.order-review-wrapper .place-order .validate-required .woocommerce-form__label-for-checkbox .woocommerce-terms-and-conditions-checkbox-text::before {
    content: "";
    position: relative;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 1rem;
    height: 1rem;
    border-radius: 0.25rem;
    background-color: var(--color-white);
    border: 1px solid var(--color-gray-300);
    margin-right: 0.625rem;
    top: -0.3125rem;
    -webkit-transition: border-color 0.05s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: border-color 0.05s cubic-bezier(0.25, 0.1, 0.25, 1);
}
.order-review-wrapper .place-order .validate-required .woocommerce-form__label-for-checkbox .woocommerce-terms-and-conditions-checkbox-text a {
    margin-left: 0.25rem;
}
.order-review-wrapper .place-order .validate-required .woocommerce-form__label-for-checkbox input {
    position: absolute;
    opacity: 0;
    left: -9999px;
}
.order-review-wrapper .place-order .validate-required .woocommerce-form__label-for-checkbox input:checked + .woocommerce-terms-and-conditions-checkbox-text::before {
    background-color: var(--color-primary-background);
    border-color: transparent;
    -webkit-box-shadow: none;
    box-shadow: none;
}
.order-review-wrapper .place-order .validate-required .woocommerce-form__label-for-checkbox input:checked + .woocommerce-terms-and-conditions-checkbox-text::after {
    position: absolute;
    font-family: "klbtheme";
    font-size: 0.875rem;
    font-weight: 700;
    text-shadow: 0 0 0 currentColor;
    content: "\e85f";
    top: 0;
    left: 0.0625rem;
    color: var(--color-white);
}
.order-review-wrapper .place-order > button {
    width: 100%;
    color: var(--color-white);
    background-color: var(--color-primary-background);
}
@media screen and (min-width: 1024.02px) {
    .order-review-wrapper .place-order > button {
        height: 2.875rem;
    }
}

/* WooCommerce Account */
.woocommerce-my-account {
    position: relative;
}
.woocommerce-my-account .my-account-user {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 1.5rem;
}
@media screen and (min-width: 1024.02px) {
    .woocommerce-my-account .my-account-user {
        margin-bottom: 2.5rem;
        margin-top: 0.625rem;
    }
}
.woocommerce-my-account .my-account-user .user-avatar {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 1.25rem;
    width: 2.25rem;
    height: 2.25rem;
    background-color: var(--color-gray-100);
    border-radius: 50%;
    margin-right: 0.625rem;
}
@media screen and (min-width: 768.02px) {
    .woocommerce-my-account .my-account-user .user-avatar {
        font-size: 1.375rem;
        width: 2.625rem;
        height: 2.625rem;
        margin-right: 0.9375rem;
    }
}
.woocommerce-my-account .my-account-user .user-avatar i {
    line-height: 1;
}
.woocommerce-my-account .my-account-user .user-detail {
    line-height: 1;
}
.woocommerce-my-account .my-account-user .user-detail span {
    display: block;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--color-gray-400);
    margin-bottom: 0.3125rem;
}
.woocommerce-my-account .my-account-user .user-detail p {
    font-size: 0.875rem;
    font-weight: 700;
    margin-bottom: 0;
}
.woocommerce-my-account .my-account-user .user-menu-toggle {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    margin-left: auto;
    padding-left: 0.9375rem;
}
@media screen and (min-width: 1024.02px) {
    .woocommerce-my-account .my-account-user .user-menu-toggle {
        display: none;
    }
}
.woocommerce-my-account .my-account-user .user-menu-toggle a {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: currentColor;
    text-decoration: none;
    height: 2.25rem;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}
.woocommerce-my-account .my-account-user .user-menu-toggle a i {
    font-size: 1.25rem;
    line-height: 1;
    margin-right: 0.375rem;
}
.woocommerce-my-account .my-account-user .user-menu-toggle a span {
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    line-height: 1;
    color: var(--color-gray-600);
}
.woocommerce-my-account .my-account-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 0.9375rem;
}
@media screen and (min-width: 1024.02px) {
    .woocommerce-my-account .my-account-inner {
        gap: 2.5rem;
    }
}
.woocommerce-my-account .my-account-inner > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: 100%;
}
@media screen and (min-width: 1024.02px) {
    .woocommerce-my-account .my-account-inner > *.my-account-navigation {
        width: 18.75rem;
    }
    .woocommerce-my-account .my-account-inner > *.woocommerce-MyAccount-content {
        -webkit-box-flex: 1;
        -ms-flex: 1 0 0%;
        flex: 1 0 0%;
    }
}
.woocommerce-my-account .my-account-inner .my-account-navigation {
    display: none;
}
@media screen and (min-width: 1024.02px) {
    .woocommerce-my-account .my-account-inner .my-account-navigation {
        display: block;
    }
}
@media screen and (max-width: 1023.98px) {
    .woocommerce-my-account .my-account-inner .my-account-navigation.active {
        display: block;
    }
}
.woocommerce-my-account .my-account-inner .my-account-navigation ul {
    position: relative;
    list-style: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
}
.woocommerce-my-account .my-account-inner .my-account-navigation ul li + li {
    border-top: 1px solid var(--color-gray-200);
}
.woocommerce-my-account .my-account-inner .my-account-navigation ul li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 0.875rem;
    font-weight: 600;
    color: currentColor;
    text-decoration: none;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    -webkit-transition: all 0.1s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: all 0.1s cubic-bezier(0.25, 0.1, 0.25, 1);
}
.woocommerce-my-account .my-account-inner .my-account-navigation ul li a:hover {
    color: var(--color-primary-background);
}
.woocommerce-my-account .my-account-inner .my-account-navigation ul li.is-active {
    color: var(--color-white);
    background-color: var(--color-black);
}
.woocommerce-my-account .my-account-inner .my-account-navigation ul li.is-active a {
    color: currentColor;
}
.woocommerce-my-account .my-account-inner .woocommerce-MyAccount-content p {
    font-size: 0.875rem;
}
.woocommerce-my-account .my-account-inner .woocommerce-MyAccount-content p a {
    font-weight: 500;
    color: var(--color-blue);
}

.site-login {
    padding: 2.5rem 0 0;
}
@media screen and (min-width: 768.02px) {
    .site-login {
        padding: 5.625rem 0;
    }
}
.site-login .site-login-inner {
    max-width: 30rem;
    margin-left: auto;
    margin-right: auto;
}
.site-login .site-login-inner .site-login-overflow {
    position: relative;
    overflow: hidden;
    padding-left: 0.25rem;
    padding-right: 0.25rem;
}
.site-login .site-login-inner .site-login-overflow .login-page-tab {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 1.25rem;
    margin-bottom: 1.25rem;
}
@media screen and (min-width: 1024.02px) {
    .site-login .site-login-inner .site-login-overflow .login-page-tab {
        margin-bottom: 1.875rem;
    }
}
.site-login .site-login-inner .site-login-overflow .login-page-tab li a {
    position: relative;
    font-size: 1.375rem;
    font-weight: 600;
    color: var(--color-gray-400);
    text-decoration: none;
    padding-left: 0.25rem;
    padding-right: 0.25rem;
    -webkit-transition: all 0.1s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: all 0.1s cubic-bezier(0.25, 0.1, 0.25, 1);
}
@media screen and (min-width: 1024.02px) {
    .site-login .site-login-inner .site-login-overflow .login-page-tab li a {
        font-size: 1.75rem;
    }
}
.site-login .site-login-inner .site-login-overflow .login-page-tab li a.active {
    color: var(--color-black);
}
.site-login .site-login-inner .site-login-overflow .login-form-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 200%;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    -webkit-transition: all 0.4s cubic-bezier(0.455, 0.03, 0.515, 0.955);
    transition: all 0.4s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.site-login .site-login-inner .site-login-overflow .login-form-container > * {
    padding: 0.0625rem;
    width: 100%;
    -webkit-transition: opacity 0.4s cubic-bezier(0.455, 0.03, 0.515, 0.955), -webkit-transform 0.4s cubic-bezier(0.455, 0.03, 0.515, 0.955);
    transition: opacity 0.4s cubic-bezier(0.455, 0.03, 0.515, 0.955), -webkit-transform 0.4s cubic-bezier(0.455, 0.03, 0.515, 0.955);
    transition: transform 0.4s cubic-bezier(0.455, 0.03, 0.515, 0.955), opacity 0.4s cubic-bezier(0.455, 0.03, 0.515, 0.955);
    transition: transform 0.4s cubic-bezier(0.455, 0.03, 0.515, 0.955), opacity 0.4s cubic-bezier(0.455, 0.03, 0.515, 0.955), -webkit-transform 0.4s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.site-login .site-login-inner .site-login-overflow .login-form-container > *.register-form {
    opacity: 0;
}
.site-login .site-login-inner .site-login-overflow .login-form-container > *.login-form > p {
    font-size: 0.8125rem;
    text-align: center;
}
.site-login .site-login-inner .site-login-overflow .login-form-container > *.login-form .lost-password {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.site-login .site-login-inner .site-login-overflow .login-form-container > *.login-form .lost-password p {
    font-size: 0.8125rem;
    margin-bottom: 0;
}
.site-login .site-login-inner .site-login-overflow .login-form-container > *.login-form .lost-password p .woocommerce-form__label-for-checkbox {
    position: relative;
    display: inline;
}
.site-login .site-login-inner .site-login-overflow .login-form-container > *.login-form .lost-password p .woocommerce-form__label-for-checkbox span {
    position: relative;
    display: inline;
    font-size: 0.75rem;
}
.site-login .site-login-inner .site-login-overflow .login-form-container > *.login-form .lost-password p .woocommerce-form__label-for-checkbox span::before {
    content: "";
    position: relative;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 1rem;
    height: 1rem;
    border-radius: 0.25rem;
    background-color: var(--color-white);
    border: 1px solid var(--color-gray-300);
    margin-right: 0.625rem;
    top: -0.3125rem;
    -webkit-transition: border-color 0.05s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: border-color 0.05s cubic-bezier(0.25, 0.1, 0.25, 1);
}
.site-login .site-login-inner .site-login-overflow .login-form-container > *.login-form .lost-password p .woocommerce-form__label-for-checkbox span a {
    margin-left: 0.25rem;
}
.site-login .site-login-inner .site-login-overflow .login-form-container > *.login-form .lost-password p .woocommerce-form__label-for-checkbox input {
    position: absolute;
    opacity: 0;
    left: -9999px;
}
.site-login .site-login-inner .site-login-overflow .login-form-container > *.login-form .lost-password p .woocommerce-form__label-for-checkbox input:checked + span::before {
    background-color: var(--color-primary-background);
    border-color: transparent;
    -webkit-box-shadow: none;
    box-shadow: none;
}
.site-login .site-login-inner .site-login-overflow .login-form-container > *.login-form .lost-password p .woocommerce-form__label-for-checkbox input:checked + span::after {
    position: absolute;
    font-family: "klbtheme";
    font-size: 0.875rem;
    font-weight: 700;
    text-shadow: 0 0 0 currentColor;
    content: "\e85f";
    top: -0.1875rem;
    left: 0.0625rem;
    color: var(--color-white);
}
.site-login .site-login-inner .site-login-overflow .login-form-container > *.login-form .lost-password p.woocommerce-LostPassword a {
    text-decoration: none;
    color: var(--color-blue);
}
.site-login .site-login-inner .site-login-overflow .login-form-container > * label {
    display: block;
    font-size: 0.8125rem;
    margin-bottom: 0.3125rem;
}
.site-login .site-login-inner .site-login-overflow .login-form-container > * button {
    text-transform: uppercase;
    width: 100%;
    margin-top: 1.25rem;
    color: var(--color-white);
    background-color: var(--color-primary-background);
}
.site-login .site-login-inner .site-login-overflow .login-form-container > * button:hover {
    opacity: 0.9;
}
@media screen and (min-width: 1024.02px) {
    .site-login .site-login-inner .site-login-overflow .login-form-container > * button {
        height: 2.875rem;
    }
}
.site-login .site-login-inner .site-login-overflow .login-form-container > *.register-form > p {
    font-size: 0.8125rem;
    text-align: center;
}
.site-login .site-login-inner .site-login-overflow .login-form-container > *.register-form .woocommerce-privacy-policy-text {
    font-size: 0.75rem;
}
.site-login .site-login-inner .site-login-overflow .login-form-container.show-register-form {
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}
.site-login .site-login-inner .site-login-overflow .login-form-container.show-register-form .login-form {
    opacity: 0;
}
.site-login .site-login-inner .site-login-overflow .login-form-container.show-register-form .register-form {
    opacity: 1;
}

/*------------------------------------ 
    03 - Header
------------------------------------*/
/* Header default settings */
.site-header {
    position: relative;
    z-index: 10;
}
.site-header::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
}
.site-header .site-header-row {
    position: relative;
}
.site-header .site-header-row .site-header-inner {
    height: var(--theme-header-height-mobile);
    gap: 1rem;
}
@media screen and (min-width: 1024.02px) {
    .site-header .site-header-row .site-header-inner {
        height: var(--theme-header-height-desktop);
        gap: var(--theme-header-column-gap);
    }
}
.site-header .site-header-row .site-header-inner .column {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
}
@media screen and (min-width: 1024.02px) {
    .site-header .site-header-row .site-header-inner .column {
        gap: var(--theme-header-column-gap);
    }
}
.site-header .site-header-row .site-header-inner .column.mobile-column {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
}
@media screen and (min-width: 1024.02px) {
    .site-header .site-header-row .site-header-inner .column.mobile-column {
        display: none;
    }
}
.site-header .site-header-row .site-header-inner .column.actions-column {
    display: none;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}
@media screen and (min-width: 1024.02px) {
    .site-header .site-header-row .site-header-inner .column.actions-column {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
    }
}
.site-header .site-header-row .site-header-inner .column.brand-column {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-flex: 1;
    -ms-flex: 1 0 0%;
    flex: 1 0 0%;
}
@media screen and (min-width: 1024.02px) {
    .site-header .site-header-row .site-header-inner .column.brand-column {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    }
}
.site-header .site-header-row .site-header-inner .column.brand-column .site-nav {
    margin-left: 0.75rem;
}
@media screen and (min-width: 1024.02px) {
    .site-header .site-header-row .site-header-inner .column:has(.site-nav) {
        -webkit-box-flex: 1;
        -ms-flex: 1 0 0%;
        flex: 1 0 0%;
    }
}
.site-header:not(.header-transparent)::before {
    color: var(--color-header-foreground);
    background-color: var(--color-header-background);
}
.site-header.header-transparent {
    --transparent-transition: all 0.2s cubic-bezier(0.104, 0.204, 0.492, 1);
    --hover-delay: .3s;
    -webkit-transition: var(--transparent-transition);
    transition: var(--transparent-transition);
}
.site-header.header-transparent::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: var(--color-header-background);
    opacity: 0;
    -webkit-transition: var(--transparent-transition);
    transition: var(--transparent-transition);
}
.site-header.header-transparent + .main-content {
    margin-top: calc(var(--theme-header-height-mobile) * -1);
}
@media screen and (min-width: 1024.02px) {
    .site-header.header-transparent + .main-content {
        margin-top: calc(var(--theme-header-height-desktop) * -1);
    }
}
.site-header.header-transparent .site-nav {
    pointer-events: none;
}
.site-header.header-transparent .site-brand .site-brand-logo {
    -webkit-transition: var(--transparent-transition);
    transition: var(--transparent-transition);
}
.site-header.header-transparent .site-action-link, .site-header.header-transparent .site-nav .site-menu > li > a {
    -webkit-transition: var(--transparent-transition);
    transition: var(--transparent-transition);
}
.site-header.header-transparent:not(:hover) {
    color: var(--color-white);
}
.site-header.header-transparent:not(:hover)::before {
    -webkit-transition-delay: var(--hover-delay);
    transition-delay: var(--hover-delay);
}
.site-header.header-transparent:not(:hover) .site-nav {
    -webkit-transition-delay: var(--hover-delay);
    transition-delay: var(--hover-delay);
}
.site-header.header-transparent:not(:hover) .site-action-button {
    -webkit-transition-delay: var(--hover-delay);
    transition-delay: var(--hover-delay);
}
.site-header.header-transparent:not(:hover) .site-action-button .site-action-count {
    color: var(--color-black);
    background-color: var(--color-white);
    -webkit-transition-delay: var(--hover-delay);
    transition-delay: var(--hover-delay);
}
.site-header.header-transparent:not(:hover) .site-brand .site-brand-logo {
    -webkit-transition-delay: var(--hover-delay);
    transition-delay: var(--hover-delay);
}
.site-header.header-transparent:not(:hover) .site-brand .site-brand-logo.default {
    opacity: 0;
    visibility: hidden;
}
.site-header.header-transparent:not(:hover) .site-brand .site-brand-logo.transparent {
    opacity: 1;
    visibility: visible;
}
.site-header.header-transparent:hover::before {
    opacity: 1;
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
}
.site-header.header-transparent:hover .site-nav {
    pointer-events: auto;
}

/* Header menu settings */
.site-header .site-nav {
    display: none;
}
@media screen and (min-width: 1024.02px) {
    .site-header .site-nav {
        display: block;
    }
}
.site-header .site-nav .site-menu {
    gap: var(--theme-menu-gap);
}
.site-header .site-nav .site-menu > li > a {
    height: var(--theme-header-height-desktop);
}
.site-header .site-nav .site-menu > li.menu-item-has-children:after {
    content: "";
    display: block;
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    top: calc(var(--header-height-desktop, var(--theme-header-height-desktop)) + 0.0625rem);
    background-color: rgba(var(--color-overlay-background-rgb), var(--color-overlay-background-opacity));
    z-index: 1;
    opacity: 0;
    pointer-events: none;
    -webkit-transition: opacity 0.25s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: opacity 0.25s cubic-bezier(0.25, 0.1, 0.25, 1);
}
.site-header .site-nav .site-menu > li.menu-item-has-children:hover::after {
    opacity: 1;
}
.site-header .site-nav .site-menu > li:not(.mega-menu) > .sub-menu::before, .site-header .site-nav .site-menu > li:not(.mega-menu) > .sub-menu::after {
    content: "";
    position: absolute;
    background-color: transparent;
    top: 0.0625rem;
}
.site-header .site-nav .site-menu > li:not(.mega-menu) > .sub-menu::before {
    left: -1.5rem;
    width: 1.5rem;
    height: 2.5rem;
    border-top-right-radius: 1.25rem;
    -webkit-box-shadow: 0 -1.25rem 0 0 var(--color-sub-menu-background);
    box-shadow: 0 -1.25rem 0 0 var(--color-sub-menu-background);
}
.site-header .site-nav .site-menu > li:not(.mega-menu) > .sub-menu::after {
    right: -1.5rem;
    width: 1.5rem;
    height: 2.5rem;
    border-top-left-radius: 1.25rem;
    -webkit-box-shadow: 0 -1.25rem 0 0 var(--color-sub-menu-background);
    box-shadow: 0 -1.25rem 0 0 var(--color-sub-menu-background);
}
.site-header .site-nav .site-menu > li:not(.mega-menu) .sub-menu {
    border-bottom-left-radius: var(--theme-radius-lg);
    border-bottom-right-radius: var(--theme-radius-lg);
}
.site-header .site-nav .site-menu > li:not(.mega-menu) .sub-menu .sub-menu {
    border-top-right-radius: var(--theme-radius-lg);
}
.site-header .site-nav .site-menu > li:not(.mega-menu) .sub-menu:has(> .menu-item-has-children:hover) {
    border-bottom-right-radius: 0;
}
.site-header .site-nav .site-menu > li.mega-menu > .sub-menu {
    border-bottom-left-radius: var(--theme-radius-xl);
    border-bottom-right-radius: var(--theme-radius-xl);
}
.site-header .site-nav .site-menu > li .sub-menu li a .menu-item-label {
    --underline-offset: 0.3125rem;
    text-decoration: underline;
    text-underline-offset: var(--underline-offset);
    text-decoration-thickness: 0.0625rem;
    text-decoration-color: transparent;
    -webkit-transition: text-decoration-color 0.1s ease-in-out;
    transition: text-decoration-color 0.1s ease-in-out;
}
.site-header .site-nav .site-menu > li .sub-menu li a:hover .menu-item-label {
    text-decoration-color: currentColor;
}

/* Header actions settings */
.site-actions {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 0.875rem;
}

.site-action-button {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}
.site-action-button .site-action-link {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 0.375rem;
    color: currentColor;
    text-decoration: none;
}
.site-action-button .site-action-icon {
    position: relative;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: calc(var(--theme-header-action-icon-size) + 0.25rem);
    height: 2rem;
    font-size: var(--theme-header-action-icon-size);
}
.site-action-button .site-action-icon svg, .site-action-button .site-action-icon img {
    display: inline-block;
    vertical-align: middle;
    width: var(--theme-header-action-icon-size);
    height: auto;
}
.site-action-button .site-action-icon i {
    line-height: 1;
}
.site-action-button .site-action-icon i::before {
    margin: 0;
}
.site-action-button .site-action-icon i.klb-icon-user-circle, .site-action-button .site-action-icon i.klb-icon-shopping-bag, .site-action-button .site-action-icon i.klb-icon-shopping-bag, .site-action-button .site-action-icon i.klb-icon-search {
    font-size: calc(var(--theme-header-action-icon-size) + 0.0625rem);
}
.site-action-button .site-action-icon .site-action-count {
    position: absolute;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 0.625rem;
    font-weight: 600;
    line-height: 0.625rem;
    min-width: 1rem;
    height: 1rem;
    padding-left: 0.0625rem;
    padding-right: 0.0625rem;
    color: var(--color-white);
    background-color: var(--color-black);
    border-radius: 50%;
    top: -0.0625rem;
    left: calc(100% - var(--theme-header-action-icon-size) / 2.5);
}
.site-action-button .site-action-label {
    display: none;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    font-size: var(--theme-header-action-label-size);
    line-height: 1.3;
}
@media screen and (min-width: 1024.02px) {
    .site-action-button .site-action-label {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}
.site-action-button .site-action-label span {
    font-size: calc(var(--theme-header-action-label-size) - 0.125rem);
    opacity: 0.6;
}
.site-action-button .site-action-label p {
    font-weight: 500;
    margin-bottom: 0;
}

/*------------------------------------ 
    03 - Sidebar
------------------------------------*/
.widget {
    font-size: var(--theme-text-sm);
    margin-bottom: 1.875rem;
}
@media screen and (min-width: 1024.02px) {
    .widget {
        margin-bottom: 1.5rem;
    }
}
.widget .widget-title {
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 0.875rem;
}
.widget:last-child {
    margin-bottom: 0;
}
.widget nav ul li + li {
    margin-top: 0.625rem;
}
.widget nav ul li a {
    --underline-offset: 0.25rem;
    font-size: inherit !important;
    padding: 0 !important;
    width: auto !important;
    height: auto !important;
    min-height: auto !important;
    text-decoration: underline !important;
    text-underline-offset: var(--underline-offset);
    text-decoration-thickness: 0.0625rem;
    text-decoration-color: transparent !important;
    -webkit-transition: text-decoration-color 0.1s ease-in-out !important;
    transition: text-decoration-color 0.1s ease-in-out !important;
}
.widget nav ul li a:hover {
    text-decoration-color: currentColor !important;
}
.widget .branding-detail {
    margin: 0.625rem 0;
}
.widget .branding-detail p {
    margin-bottom: 0.5rem;
}
.widget .woocommerce-widget-layered-nav-list, .widget .widget-checkbox-list, .widget .menu {
    list-style: none;
    margin: 0;
    padding: 0;
}
.widget .woocommerce-widget-layered-nav-list li + li, .widget .widget-checkbox-list li + li, .widget .menu li + li {
    margin-top: 0.1875rem;
}
.widget .woocommerce-widget-layered-nav-list li a, .widget .widget-checkbox-list li a, .widget .menu li a {
    color: currentColor;
    text-decoration: underline;
    text-decoration-color: transparent;
    text-underline-offset: 0.25rem;
}
.widget .woocommerce-widget-layered-nav-list li a:hover, .widget .widget-checkbox-list li a:hover, .widget .menu li a:hover {
    text-decoration-color: currentColor;
}
.widget .woocommerce-widget-layered-nav-list li .type-button, .widget .widget-checkbox-list li .type-button, .widget .menu li .type-button {
    --widget-font-size: 0.875rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: var(--widget-font-size);
    font-weight: 400;
    line-height: 1;
    color: currentColor;
    text-decoration: none;
    padding-top: 0.375rem;
    padding-bottom: 0.375rem;
}
.widget .woocommerce-widget-layered-nav-list li .type-button a, .widget .widget-checkbox-list li .type-button a, .widget .menu li .type-button a {
    color: currentColor;
    text-decoration: none;
}
.widget .woocommerce-widget-layered-nav-list li .type-button .button-box, .widget .widget-checkbox-list li .type-button .button-box, .widget .menu li .type-button .button-box {
    position: relative;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 1rem;
    height: 1rem;
    border-radius: 0.125rem;
    background-color: var(--color-white);
    border: 1px solid var(--color-gray-400);
    border-radius: var(--theme-radius-sm);
    margin-right: 0.625rem;
    -webkit-transition: border-color 0.05s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: border-color 0.05s cubic-bezier(0.25, 0.1, 0.25, 1);
}
.widget .woocommerce-widget-layered-nav-list li .type-button:hover .button-box, .widget .widget-checkbox-list li .type-button:hover .button-box, .widget .menu li .type-button:hover .button-box {
    border-color: var(--color-gray-500);
}
.widget .woocommerce-widget-layered-nav-list li .type-button .button-text, .widget .widget-checkbox-list li .type-button .button-text, .widget .menu li .type-button .button-text {
    line-height: 0;
}
.widget .woocommerce-widget-layered-nav-list li .type-button .count, .widget .widget-checkbox-list li .type-button .count, .widget .menu li .type-button .count {
    color: var(--color-gray-500);
    margin-left: auto;
    padding-left: 0.5rem;
}
.widget .woocommerce-widget-layered-nav-list li .type-button label, .widget .widget-checkbox-list li .type-button label, .widget .menu li .type-button label {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    line-height: 1;
}
.widget .woocommerce-widget-layered-nav-list li .type-button input, .widget .widget-checkbox-list li .type-button input, .widget .menu li .type-button input {
    position: absolute;
    opacity: 0;
    left: -9999px;
}
.widget .woocommerce-widget-layered-nav-list li .type-button input:checked + label .button-box, .widget .widget-checkbox-list li .type-button input:checked + label .button-box, .widget .menu li .type-button input:checked + label .button-box {
    color: var(--color-white);
    background-color: var(--color-black);
    border-color: transparent;
}
.widget .woocommerce-widget-layered-nav-list li .type-button input:checked + label .button-box::before, .widget .widget-checkbox-list li .type-button input:checked + label .button-box::before, .widget .menu li .type-button input:checked + label .button-box::before {
    position: relative;
    font-family: "klbtheme";
    font-size: 0.8125rem;
    font-weight: 700;
    content: "\e85f";
    top: 0;
}
.widget .woocommerce-widget-layered-nav-list li .type-button input:checked + label .button-text, .widget .widget-checkbox-list li .type-button input:checked + label .button-text, .widget .menu li .type-button input:checked + label .button-text {
    color: var(--color-black);
}
.widget .price_slider_wrapper .price_slider_amount {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 1.25rem;
}
.widget .price_slider_wrapper .price_slider_amount > * {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 0%;
    flex: 1 0 0%;
}
.widget .price_slider_wrapper .price_slider_amount > *.separator {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    margin: 1.25rem 0.625rem 0;
}
.widget .price_slider_wrapper .price_slider_amount > * .price-placeholder {
    display: block;
    font-size: 0.75rem;
    color: var(--color-gray-400);
    margin-bottom: 0.25rem;
}
.widget .price_slider_wrapper .price_slider_amount > * input {
    height: 2.375rem;
    border: 1px solid var(--color-gray-400);
    padding-left: 0.875rem;
    padding-right: 0.875rem;
}
.widget .price_slider_wrapper .price_slider_amount > * input:hover {
    border-color: var(--color-gray-500);
}
.widget .price_slider_wrapper .price_slider_amount > * input:focus, .widget .price_slider_wrapper .price_slider_amount > * input:active {
    -webkit-box-shadow: none;
    box-shadow: none;
    border-color: var(--color-gray-500);
}
.widget .price_slider_wrapper .ui-widget-content {
    position: relative;
    height: 0.1875rem;
    background-color: var(--color-gray-200);
    border-radius: 0.625rem;
    margin-bottom: 1.25rem;
}
.widget .price_slider_wrapper .ui-widget-content .ui-slider-range {
    position: absolute;
    display: block;
    width: 100%;
    height: 0.1875rem;
    border: 0;
    border-radius: 0.625rem;
    background-color: var(--color-gray-500);
    z-index: 1;
}
.widget .price_slider_wrapper .ui-widget-content .ui-slider-handle {
    position: absolute;
    width: 0.875rem;
    height: 0.875rem;
    background-color: var(--color-gray-900);
    border-radius: 50%;
    top: -0.375rem;
    left: 0;
    margin: 0;
    outline: 0;
    cursor: pointer;
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
}
.widget .price_slider_wrapper .ui-widget-content .ui-slider-handle:last-child {
    left: 100%;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
}
.widget .price_slider_wrapper .price_slider_bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.widget .price_slider_wrapper .price_slider_bottom button {
    height: 2.375rem;
    border-radius: 62.4375rem;
    background-color: var(--color-gray-200);
}
.widget .price_slider_wrapper .price_slider_bottom button:hover {
    background-color: var(--color-gray-300);
}
.widget .price_slider_wrapper .price_slider_bottom .price_label {
    font-size: 0.875rem;
    margin-right: auto;
}
.widget .post-widget .post {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
    margin-bottom: 1.875rem;
}
.widget .post-widget .post:last-child {
    margin-bottom: 0;
}
.widget .post-widget .post .post-thumbnail {
    width: 3.5rem;
    height: 3.5rem;
    margin-bottom: 0;
    border-radius: 0.375rem;
}
.widget .post-widget .post .post-content {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 0%;
    flex: 1 0 0%;
}
.widget .post-widget .post .post-content .entry-title {
    display: -webkit-box;
    font-size: 0.875rem;
    margin-bottom: 0.125rem;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    padding-bottom: 0.0625rem;
    margin-bottom: 0.25rem;
}
.widget .post-widget .post .post-content .entry-title a {
    color: currentColor;
    text-decoration-color: transparent;
    text-underline-offset: 0.25rem;
    -webkit-transition: all 0.1s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: all 0.1s cubic-bezier(0.25, 0.1, 0.25, 1);
}
.widget .post-widget .post .post-content .entry-title a:hover {
    text-decoration-color: var(--color-gray-500);
}

/*------------------------------------ 
    03 - Footer
------------------------------------*/
.footer-widgets {
    padding: 1.875rem 0;
}
@media screen and (min-width: 1024.02px) {
    .footer-widgets {
        padding: 5.375rem 0;
    }
}
.footer-widgets .site-footer-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
}
.footer-widgets .site-footer-inner .row {
    width: 100%;
}
.footer-widgets .site-footer-inner .widget .widget-title {
    color: var(--color-footer-link);
}
.footer-widgets .site-footer-inner .privacy-text {
    font-size: var(--theme-text-2xs);
}
.footer-widgets .site-footer-inner .privacy-text a {
    color: var(--color-footer-link);
    text-decoration: underline;
    text-underline-offset: 0.25rem;
    text-decoration-thickness: 0.0625rem;
}
.footer-widgets .site-footer-inner .site-newsletter-form form {
    margin-bottom: 1.25rem;
}
.footer-widgets .site-footer-inner .site-newsletter-form form .mc4wp-form-fields {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.625rem;
    height: 3rem;
    padding-left: 0.875rem;
    padding-right: 0.375rem;
    border-radius: var(--theme-radius-sm);
    background-color: var(--color-footer-border);
}
@media screen and (min-width: 1024.02px) {
    .footer-widgets .site-footer-inner .site-newsletter-form form .mc4wp-form-fields {
        border-radius: var(--theme-radius-base);
        padding-left: 1rem;
        padding-right: 0.375rem;
    }
}
.footer-widgets .site-footer-inner .site-newsletter-form form .mc4wp-form-fields input {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 0%;
    flex: 1 0 0%;
    height: 100%;
    color: var(--color-footer-link);
}
.footer-widgets .site-footer-inner .site-newsletter-form form .mc4wp-form-fields button {
    font-size: var(--theme-text-xs);
    height: 2.25rem;
    border-radius: var(--theme-radius-sm);
    border-color: transparent;
    color: var(--color-footer-link);
    background-color: var(--color-footer-background);
    padding-left: 1rem;
    padding-right: 1rem;
}

.site-footer {
    /*  position: sticky; */
    bottom: 0;
    left: 0;
    width: 100%;
    font-size: var(--theme-footer-font-size);
    background-color: var(--color-footer-background);
    color: var(--color-footer-foreground);
}
.site-footer *:not(.widget-title) {
    font-size: inherit;
}
.site-footer .footer-copyright .site-footer-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-top: 0.0625rem solid var(--color-footer-border);
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
    gap: 1rem;
}
@media screen and (min-width: 1024.02px) {
    .site-footer .footer-copyright .site-footer-inner {
        padding-top: 2rem;
        padding-bottom: 2rem;
    }
}
.site-footer .footer-copyright .site-footer-inner .site-copyright {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
}
.site-footer .footer-copyright .site-footer-inner .site-copyright a {
    color: var(--color-footer-link);
}
.site-footer .site-payment-cards {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-left: auto;
}
.site-footer .site-payment-cards ul {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
    padding: 0;
    list-style: none;
}
.site-footer .site-payment-cards ul li {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 0.5rem 0.5rem;
    border-radius: 0.25rem;
    background-color: var(--color-payment-card-background);
}

/*------------------------------------ 
    03 - Mobile Navbar
------------------------------------*/
.site-mobile-navbar {
    position: fixed;
    bottom: 0.3125rem;
    left: 0.3125rem;
    right: 0.3125rem;
    z-index: 100;
}
@media screen and (min-width: 1024.02px) {
    .site-mobile-navbar {
        display: none;
    }
}
.site-mobile-navbar .site-mobile-navbar-inner {
    position: relative;
    color: var(--color-black);
    background-color: var(--color-white);
    border-top: 1px solid var(--color-gray-200);
    border-left: 1px solid var(--color-gray-200);
    border-right: 1px solid var(--color-gray-200);
    border-radius: var(--theme-radius-base);
    -webkit-box-shadow: 0 -4px 8px 0px rgba(0, 0, 0, 0.04);
    box-shadow: 0 -4px 8px 0px rgba(0, 0, 0, 0.04);
    padding: 0.375rem 0.625rem;
    overflow: hidden;
    -webkit-transition: all 0.6s cubic-bezier(0.7, 0, 0.2, 1);
    transition: all 0.6s cubic-bezier(0.7, 0, 0.2, 1);
}
.site-mobile-navbar .site-mobile-navbar-inner .site-nav .site-menu {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 0.375rem;
}
.site-mobile-navbar .site-mobile-navbar-inner .site-nav .site-menu li {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.site-mobile-navbar .site-mobile-navbar-inner .site-nav .site-menu li a {
    position: relative;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-width: 2.875rem;
    padding-left: 0.375rem;
    padding-right: 0.375rem;
    height: 3.125rem;
    color: currentColor;
}
.site-mobile-navbar .site-mobile-navbar-inner .site-nav .site-menu li a::before {
    content: "";
    position: absolute;
    top: -0.375rem;
    left: -0.625rem;
    right: -0.625rem;
    bottom: -0.375rem;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(var(--color-black-rgb), 0.1)), to(var(--color-white)));
    background: linear-gradient(rgba(var(--color-black-rgb), 0.1), var(--color-white));
    z-index: 0;
    opacity: 0;
    -webkit-transition: all 0.1s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: all 0.1s cubic-bezier(0.25, 0.1, 0.25, 1);
}
.site-mobile-navbar .site-mobile-navbar-inner .site-nav .site-menu li a i {
    position: relative;
    font-size: 1.5rem;
    line-height: 1;
    color: currentColor;
    z-index: 1;
}
.site-mobile-navbar .site-mobile-navbar-inner .site-nav .site-menu li a i::before {
    margin: 0;
}
.site-mobile-navbar .site-mobile-navbar-inner .site-nav .site-menu li a span {
    position: relative;
    font-size: 0.5625rem;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1;
    text-transform: uppercase;
    color: var(--color-gray-500);
    -webkit-transition: color 0.1s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: color 0.1s cubic-bezier(0.25, 0.1, 0.25, 1);
    z-index: 1;
}
.site-mobile-navbar .site-mobile-navbar-inner .site-nav .site-menu li a.active {
    color: var(--color-black);
}
.site-mobile-navbar .site-mobile-navbar-inner .site-nav .site-menu li a.active::before {
    opacity: 1;
}
.site-mobile-navbar .site-mobile-navbar-inner .site-nav .site-menu li a.active span {
    color: rgba(var(--color-black-rgb), 0.7);
}
.site-mobile-navbar .site-mobile-navbar-inner .site-nav .site-menu li a.active i.klb-icon-search::before, .site-mobile-navbar .site-mobile-navbar-inner .site-nav .site-menu li a.active i.klb-icon-layout-grid::before, .site-mobile-navbar .site-mobile-navbar-inner .site-nav .site-menu li a.active i.klb-icon-shopping-bag::before {
    content: "\e861";
}

@media screen and (max-width: 1023.98px) {
    body.drawer-open .site-mobile-navbar .site-mobile-navbar-inner {
        -webkit-transform: translateY(calc(100% + 0.625rem));
        transform: translateY(calc(100% + 0.625rem));
    }
}