
:root {
  --primary: #1C9253;
  --secondary: #E9AD28;

  --bs-btn-active-bg: #E9AD28;
  --bs-btn-active-border: #E9AD28;
  --bs-blue: #0d6efd;
  --bs-indigo: #6610f2;
  --bs-purple: #6f42c1;
  --bs-pink: #d63384;
  --bs-red: #dc3545;
  --bs-orange: #fd7e14;
  --bs-yellow: #ffc107;
  --bs-green: #198754;
  --bs-teal: #20c997;
  --bs-cyan: #0dcaf0;
  --bs-black: #000;
  --bs-white: #fff;
  --bs-gray: #6c757d;
  --bs-gray-dark: #343a40;
  --bs-gray-100: #f8f9fa;
  --bs-gray-200: #e9ecef;
  --bs-gray-300: #dee2e6;
  --bs-gray-400: #ced4da;
  --bs-gray-500: #adb5bd;
  --bs-gray-600: #6c757d;
  --bs-gray-700: #495057;
  --bs-gray-800: #343a40;
  --bs-gray-900: #212529;

  --bs-primary: #1C9253;
  --bs-secondary: #E9AD28;

  --bs-success: #198754;
  --bs-info: #0dcaf0;
  --bs-warning: #ffc107;
  --bs-danger: #dc3545;
  --bs-light: #f8f9fa;
  --bs-dark: #212529;

  --bs-primary-rgb: 49, 165, 109;
  --bs-secondary-rgb: 233, 173, 40;

  --bs-success-rgb: 25, 135, 84;
  --bs-info-rgb: 13, 202, 240;
  --bs-warning-rgb: 255, 193, 7;
  --bs-danger-rgb: 220, 53, 69;
  --bs-light-rgb: 239, 242, 247;
  --bs-dark-rgb: 33, 37, 41;
  --bs-primary-text-emphasis: #052c65;
  --bs-secondary-text-emphasis: #2b2f32;
  --bs-success-text-emphasis: #0a3622;
  --bs-info-text-emphasis: #055160;
  --bs-warning-text-emphasis: #664d03;
  --bs-danger-text-emphasis: #58151c;
  --bs-light-text-emphasis: #495057;
  --bs-dark-text-emphasis: #495057;
  --bs-primary-bg-subtle: #cfe2ff;
  --bs-secondary-bg-subtle: #e2e3e5;
  --bs-success-bg-subtle: #d1e7dd;
  --bs-info-bg-subtle: #cff4fc;
  --bs-warning-bg-subtle: #fff3cd;
  --bs-danger-bg-subtle: #f8d7da;
  --bs-light-bg-subtle: #fcfcfd;
  --bs-dark-bg-subtle: #ced4da;
  --bs-primary-border-subtle: #9ec5fe;
  --bs-secondary-border-subtle: #c4c8cb;
  --bs-success-border-subtle: #a3cfbb;
  --bs-info-border-subtle: #9eeaf9;
  --bs-warning-border-subtle: #ffe69c;
  --bs-danger-border-subtle: #f1aeb5;
  --bs-light-border-subtle: #e9ecef;
  --bs-dark-border-subtle: #adb5bd;
  --bs-white-rgb: 255, 255, 255;
  --bs-black-rgb: 0, 0, 0;
  --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));

  --bs-body-font-family: "Kanit";
  --bs-body-font-size: 1rem;
  --bs-body-font-weight: 400;
  --bs-body-line-height: 1.5;
  --bs-body-color: #212529;
  --bs-body-color-rgb: 33, 37, 41;
  --bs-body-bg: #fff;
  --bs-body-bg-rgb: 255, 255, 255;
  --bs-emphasis-color: #000;
  --bs-emphasis-color-rgb: 0, 0, 0;
  --bs-secondary-color: rgba(33, 37, 41, 0.75);
  --bs-secondary-color-rgb: 33, 37, 41;
  --bs-secondary-bg: #e9ecef;
  --bs-secondary-bg-rgb: 233, 236, 239;
  --bs-tertiary-color: rgba(33, 37, 41, 0.5);
  --bs-tertiary-color-rgb: 33, 37, 41;
  --bs-tertiary-bg: #f8f9fa;
  --bs-tertiary-bg-rgb: 248, 249, 250;
  --bs-heading-color: inherit;
  --bs-link-color: #0f1111;
  --bs-link-color-rgb: 15, 17, 17;
  --bs-link-decoration: underline;
  --bs-link-hover-color: #0f1111;
  --bs-link-hover-color-rgb: 15, 17, 17;
  --bs-code-color: #d63384;
  --bs-highlight-color: #212529;
  --bs-highlight-bg: #fff3cd;
  --bs-border-width: 1px;
  --bs-border-style: solid;
  --bs-border-color: #dee2e6;
  --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
  --bs-border-radius: 0.3rem;
  --bs-border-radius-sm: 0.2rem;
  --bs-border-radius-lg: 0.35rem;
  --bs-border-radius-xl: 1rem;
  --bs-border-radius-xxl: 2rem;
  --bs-border-radius-2xl: var(--bs-border-radius-xxl);
  --bs-border-radius-pill: 50rem;
  --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
  --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
  --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);
  --bs-focus-ring-width: 0.25rem;
  --bs-focus-ring-opacity: 0.25;
  --bs-focus-ring-color: rgba(13, 110, 253, 0.25);
  --bs-form-valid-color: #198754;
  --bs-form-valid-border-color: #198754;
  --bs-form-invalid-color: #dc3545;
  --bs-form-invalid-border-color: #dc3545;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

/* Elements
-------------------------------------------------------------- */

html:lang(en) {
  --bs-body-font-family: "Roboto";
  --bs-body-font-size: 16px;
}

html:lang(th) {
  --bs-body-font-family: "Kanit", "Roboto";
  --bs-body-font-size: 16px;
}

html:lang(ar) {
  --bs-body-font-family: "Noto Sans Arabic", "Roboto";
  --bs-body-font-size: 16px;
}

span:lang(en) {
  font-family: "Roboto", sans-serif;
}

span:lang(th) {
  font-family: "Kanit", "Roboto", sans-serif;
}

span:lang(ar) {
  font-family: "Noto Sans Arabic", "Roboto", sans-serif;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

ul,
li {
  margin-bottom: 0;
  padding: 0;
  list-style: none none;
}


textarea {
  height: 112px;
  resize: none;
}


video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}


.fs-16 {
  font-size: 16px !important;
}

.fw-5 {
  font-weight: 500 !important;
}

.fw-6 {
  font-weight: 600 !important;
}

.fw-7 {
  font-weight: 700 !important;
}

.bg_white {
  background-color: var(--bs-white) !important;
}

.text_black-2 {
  color: var(--bs-gray-500) !important;
}


.text_white {
  color: var(--bs-white) !important;
}


a {
  transition: all 0.3s ease;
  text-decoration: none;
  cursor: pointer;
  display: inline-block;
}

a:focus, a:hover {
  transition: all 0.3s ease;
  text-decoration: none;
  outline: 0;
  --bs-link-color-rgb: var(--secondary);
}


.line {
  border-bottom: 1px solid var(--bs-gray-300);
}


.tf-row-flex {
  display: flex;
  flex-direction: row;
  column-gap: 30px;
  row-gap: 30px;
}


.sticky-top {
  z-index: 50;
  top: 15px;
}


.letter-spacing-2 {
  letter-spacing: 2px;
}

.clear::before, .clear::after {
  display: none !important;
}

/*------------ Components ---------------- */
/*------------ header ---------------- */

@keyframes slide-har {
  0% {
    transform: translateX(0%);
  }

  100% {
    transform: translateX(-100%);
  }
}


.header-default .wrapper-header .nav-icon li:last-child .nav-icon-item {
  margin-inline-end: 10px;
}

.header-default .box-nav-ul {
  gap: 22px;
}


#header .box-nav-ul .item-link {
  font-size: 18px;
  display: flex;
  align-items: center;
  gap: 7px;
  transition: all 0.3s ease;
  position: relative;
  color: var(--primary)
}

#header .box-nav-ul .item-link:hover {
}

#header .box-nav-ul .item-link .icon {
  font-size: 7px;
}

#header .box-nav-ul .item-link::before {
  content: "";
  width: 0;
  height: 1px;
  top: 99%;
  position: absolute;
  left: auto;
  right: 0;
  z-index: 1;
  transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1) 0s;
  background: var(--secondary);
}

#header .box-nav-ul li:hover .item-link::before {
  width: 100%;
  left: 0;
  right: auto;
}

#header .nav-icon .icon {
  font-size: 18px;
  font-weight: 500;
}

#header .nav-icon li {
  display: inline-flex;
}

#header .nav-icon .nav-icon-item {
  position: relative;
  display: inline-flex;
}

#header .nav-icon .nav-icon-item:hover {
  color: var(--primary);
}

#header .nav-icon .nav-icon-item .text {
  font-size: 16px;
  line-height: 25.6px;
  font-weight: 500;
  display: inline-block;
}

#header .nav-icon .count-box {
  position: absolute;
  line-height: 18px;
  height: 18px;
  min-width: 18px;
  text-align: center;
  padding: 0 3px;
  font-size: 10px;
  font-weight: 500;
  border-radius: 9999px;
  white-space: nowrap;
  text-overflow: ellipsis;
  display: block;
  overflow: hidden;
  z-index: 2;
  top: -8px;
  right: -10px;
  color: var(--bs-white);
  background-color: var(--primary);
}


#header .sub-menu .hover-sw-nav .nav-sw {
  width: 36px;
  height: 36px;
  top: 38%;
}


.box-nav-ul .menu-item {
}

.box-nav-ul .menu-item:hover > .sub-menu {
  pointer-events: all;
  opacity: 1;
  visibility: visible;
  transform: translateX(0px) translateY(0px);
}


.box-nav-ul .menu-item > a::after {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% + 44px);
  height: 94px;
}

.box-nav-ul .sub-menu {
  pointer-events: none;
  position: absolute;
  min-width: 268px;
  z-index: 999;
  width: 80%;
  visibility: hidden;
  text-align: left;
  padding-top: 24px;
  padding-bottom: 24px;
  padding-inline-end: 20px;
  padding-inline-start: 19px;
  background-color: var(--bs-white);
  top: 100%;
  right: 0;
  opacity: 0;
  transform: translateX(0px) translateY(15px);
  transition: all 0.3s ease;
}


.box-nav-ul .mega-menu .card-product .card-product-wrapper {
  max-height: 290px;
}

.box-nav-ul .mega-menu .wrap-sw-over {
  padding-bottom: 40px;
  margin-bottom: -40px;
}


.box-nav-ul .menu-list .menu-link-text {
  color: var(--bs-gray-500);
}

.box-nav-ul .menu-list li {
  text-align: start;
}

.box-nav-ul .menu-list li:not(:last-child) {
  margin-bottom: 14px;
}



.canvas-mb {
  width: 100% !important;
  max-width: min(90%, 320px);
  border-inline-end: 0 !important;
}

.canvas-mb .mb-canvas-content {
  padding-top: 60px;
  padding-bottom: 0;
  padding-inline-end: 0;
  padding-inline-start: 20px;
  min-width: 100%;
  max-width: min(90%, 320px);
  grid-auto-rows: minmax(0, 1fr) auto;
  isolation: isolate;
  height: 100%;
  width: 100%;
  display: grid;
  align-content: start;
}

.canvas-mb .mb-body {
  padding-inline-end: 15px;
  overscroll-behavior-y: contain;
  overflow-y: auto;
}

.canvas-mb .icon-close-popup {
  position: absolute;
  font-size: 16px;
  z-index: 3;
  top: 20px;
  left: 15px;
  background-color: transparent;
  border: none;
  height: 30px;
  width: 30px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.canvas-mb .mb-other-content .mb-info li {
  color: rgb(134, 134, 134);
  font-size: 14px;
  line-height: 24px;
}

.nav-ul-mb .nav-mb-item {
  padding: 2px 0px;
}

.nav-ul-mb .nav-mb-item:not(:last-child) {
  border-bottom: 1px solid rgb(238, 238, 238);
}

.nav-ul-mb .nav-mb-item .mb-menu-link {
  min-height: 40px;
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

header {

}

header.header-bg {

}


/*------------ footer ---------------- */
.footer .footer-wrap .footer-body {
  padding-top: 40px;
  padding-bottom: 40px;
  position: relative;
}

.footer .footer-wrap .footer-body::before {
  position: absolute;
  content: "";
  top: 0;
  left: 50%;
  background-color: var(--bs-gray-300);
  height: 1px;
  width: 100%;
  max-width: 1440px;
  transform: translateX(-50%);
}


.footer .footer-heading {
  margin-bottom: 25px;
}

.footer .footer-heading h6 {
  font-size: 18px;
  font-weight: 500;
  line-height: 18px;
}

.footer .footer-heading-moblie {
  display: none;
}

.footer .footer-menu_item {
  line-height: 30px;
}

.footer .footer-info ul {
  margin-bottom: 15px;
}

.footer .footer-info ul li p {
  line-height: 30px;
}

.footer .footer-info ul li p a {
  color: var(--bs-white);
  font-weight: 700;
}

.tf-toolbar-bottom {
  display: none;
  padding: 0 5px;
  overflow-x: auto;
  overflow-y: hidden;
  position: fixed;
  z-index: 200;
  bottom: 0;
  right: 0;
  left: 0;
  background-color: var(--bs-white);
  box-shadow: 0 -4px 10px 0 rgba(0, 0, 0, 0.08);
}

.tf-toolbar-bottom .toolbar-item {
  flex: 1 0 20%;
  position: relative;
}

.tf-toolbar-bottom .toolbar-item a {
  width: 100%;
  padding-inline-end: 10px;
  padding-inline-start: 10px;
  height: 67px;
  gap: 9px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

.tf-toolbar-bottom .toolbar-item a .toolbar-icon {
  width: 18px;
  height: 18px;
  position: relative;
}

.tf-toolbar-bottom .toolbar-item a .toolbar-icon i {
  font-size: 18px;
}

.tf-toolbar-bottom .toolbar-item a .toolbar-icon .toolbar-count {
  position: absolute;
  top: -6px;
  right: -12px;
  width: 18px;
  height: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--primary);
  border-radius: 50%;
  font-size: 10px;
  font-weight: 500;
  line-height: 18px;
  color: var(--bs-white);
}

.tf-toolbar-bottom .toolbar-item a .toolbar-label {
  font-size: 12px;
  font-weight: 600;
  line-height: 12px;
}

.tf-toolbar-bottom .toolbar-item.active::before {
  position: absolute;
  content: "";
  left: 0;
  width: 100%;
  height: 3px;
  background-color: var(--primary);
}

.tf-toolbar-bottom .toolbar-item.active .toolbar-icon i {
  color: var(--primary);
}

/*------------ tabs ---------------- */
.widget-tabs .widget-menu-tab .item-title:not(.default) {
  font-size: 18px;
  font-weight: 600;
  line-height: 30px;
  cursor: pointer;
  position: relative;
}

.widget-tabs .widget-menu-tab .item-title:not(.default)::after {
  position: absolute;
  content: "";
  transition: all 0.3s ease;
}

.widget-tabs .widget-content-tab {
  position: relative;
  overflow: hidden;
}

.widget-tabs .widget-content-tab .widget-content-inner {
  padding: 35px;
  display: block;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  right: 0;
  transform: translateY(30px);
  transition-timing-function: ease-in;
  transition-duration: 0.2s;
}

.widget-tabs .widget-content-tab .widget-content-inner.active {
  pointer-events: auto;
  opacity: 1;
  visibility: visible;
  position: relative;
  z-index: 2;
  transform: none;
  transition-timing-function: ease-out;
  transition-duration: 0.3s;
  transition-delay: 0.3s;
}

.widget-tabs.style-has-border {
  border: 1px solid var(--bs-gray-300);
}

.widget-tabs.style-has-border .widget-menu-tab {
  display: flex;
  gap: 10px 50px;
  margin: 0 38px;
  border-bottom: 1px solid var(--bs-gray-300);
  overflow-x: auto;
}

.widget-tabs.style-has-border .widget-menu-tab .item-title {
  padding: 15px 0;
  min-width: max-content;
}

.widget-tabs.style-has-border .widget-menu-tab .item-title::after {
  bottom: 0;
  left: 0;
  width: 0;
  height: 2px;
}

.widget-tabs.style-has-border .widget-menu-tab .item-title.active::after {
  width: 100%;
}


.tf-slideshow {
  overflow: hidden;
}

.tf-slideshow .wrap-pagination {
  position: absolute;
  z-index: 10;
  bottom: 20px;
  left: 0;
  right: 0;
}

.tf-slideshow .wrap-pagination .sw-dots {
  margin-top: 0;
}


.tf-slideshow .subheading {
  margin-bottom: 14px;
  font-size: 14px;
  line-height: 22.4px;
}


.slider-effect-fade .swiper-slide .fade-item {
  transform: translateY(100px);
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
}


.slider-effect-fade .swiper-slide .fade-item.fade-item-1 {
  transition-delay: 0.5s;
}

.slider-effect-fade .swiper-slide .fade-item.fade-item-2 {
  transition-delay: 0.6s;
}

.slider-effect-fade .swiper-slide .fade-item.fade-item-3 {
  transition-delay: 0.7s;
}

.slider-effect-fade .swiper-slide .fade-item.fade-item-4 {
  transition-delay: 0.8s;
}

.slider-effect-fade .swiper-slide.swiper-slide-active .fade-item {
  transform: translateY(0);
  opacity: 1;
  visibility: visible;
}


.hover-sw-nav .sw-dots {
  margin-top: 15px;
  position: relative;
  z-index: 10;
  display: none;
  transform: unset !important;
  bottom: unset;
}

.slider-effect {
  position: relative;
}

.slider-effect.wrap-slider {
  height: auto !important;
}


.swiper-slide .box-content {
  opacity: 0;
}

.swiper-slide.swiper-slide-active .box-content {
  opacity: 1;
}


.tf-slideshow .box-content .subheading {
  margin-bottom: 14px;
}


.slider-radius {
  padding: 0 40px;
}


/*------------ button ---------------- */
.tf-btn {
  transition: all 0.3s ease;
  will-change: background-color, color, border;
  pointer-events: auto;
  overflow: hidden;
  font-size: 14px;
  line-height: 16px;
  font-weight: 500;
  box-sizing: border-box;
  padding: 14px 24px;
  display: inline-flex;
  border-radius: 3px;
  align-items: center;
  border: 1px solid transparent;
  background-color: transparent;
  cursor: pointer;
}

.tf-btn.hover-icon .icon {
  transition: all 0.3s ease;
  transform: scale(0);
  transform-origin: right;
  width: 0;
  display: inline-block;
  font-size: 9px;
}

.tf-btn.hover-icon:hover .icon {
  transform: scale(1);
  width: 10px;
  min-width: 10px;
  margin-inline-start: 8px;
}

.tf-btn span {
  z-index: 1;
  color: inherit;
}

.tf-btn.btn-primary {
  background-color: var(--primary);
  color: var(--bs-white);
}


.tf-btn.style-3 {
  padding: 0 24px;
  line-height: 40px;
}


.btn-icon .icon {
  margin-inline-start: 8px;
  display: inline-block;
  font-size: 9px;
}


.btn-md {
  padding: 0 30px;
  min-height: 46.8px;
}

.btn-sm {
  padding-inline-start: 18px;
  padding-inline-end: 18px;
}

.btn-fill {
  background-color: var(--bs-body-color);
  border: 1px solid var(--bs-body-color);
  color: var(--bs-white);
}

.btn-outline {
  background-color: var(--bs-white);
  border: 1px solid var(--bs-body-color);
}


.btn-line {
  padding: 0;
  padding-bottom: 7px;
  position: relative;
}

.btn-line .icon {
  margin-inline-start: 8px;
  display: inline-block;
  font-size: 8px;
}

.btn-line::after {
  position: absolute;
  content: "";
  left: 0;
  bottom: 0;
  right: 0;
  height: 1px;
  background-color: var(--bs-body-color);
  transition: all 0.3s ease;
}

.btn-line:hover {
  color: var(--primary);
}

.btn-line:hover::after {
  background-color: var(--primary);
}


.btn-light {
  background-color: var(--bs-white);
}

.btn-light .icon {
  color: var(--bs-white);
}

.btn-light:hover {
  background-color: var(--bs-body-color);
  color: var(--bs-white);
}

.btn-light-icon {
  background-color: var(--bs-white);
}

.animate-hover-btn {
  position: relative;
  overflow: hidden;
}

.animate-hover-btn:after {
  background-image: linear-gradient(90deg, transparent, rgba(0, 0, 0, 0.25), transparent);
  content: "";
  left: 150%;
  position: absolute;
  top: 0;
  bottom: 0;
  transform: skew(-20deg);
  width: 200%;
}

.animate-hover-btn.btn-primary:after,
.animate-hover-btn.btn-fill::after {
  background-image: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.25), transparent);
}

@keyframes shine {
  100% {
    left: -200%;
  }
}



.tf-btn-loading {
  position: relative;
  transition: all 0.3s ease;
}

.tf-btn-loading.loading {
  background-color: var(--bs-body-color);
}

.tf-btn-loading.loading .icon,
.tf-btn-loading.loading i {
  display: none;
}

.tf-btn-loading.loading::before {
  border: solid 2px var(--bs-white);
  opacity: 1;
  animation-play-state: running;
}

.tf-btn-loading::before {
  width: 18px;
  height: 18px;
  border: solid 2px transparent;
  border-top-color: transparent !important;
  content: "";
  position: absolute;
  z-index: 2;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  border-radius: 50%;
  animation: tf_rotator 0.6s linear infinite paused;
  opacity: 0;
}


@keyframes tf_rotator {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/*------------ form ---------------- */

.tf-check {
  position: relative;
  background: transparent;
  cursor: pointer;
  outline: 0;
  -webkit-appearance: none;
  width: 16px;
  height: 16px;
  min-width: 16px;
  border: 1px solid var(--bs-gray-300);
  display: inline-flex;
  justify-content: center;
  align-items: center;
}

.tf-check:checked {
  border-color: var(--primary);
  background-color: var(--primary);
}

.tf-check:checked::before {
  opacity: 1;
  transform: scale(1);
}

.tf-check::before {
  font-family: "icomoon";
  content: "\e911";
  position: absolute;
  color: var(--bs-white);
  opacity: 0;
  font-size: 8px;
  transform: scale(0);
  transition: all 0.3s ease;
}


.badge {
  padding: 5px 10px;
  font-weight: 500;
  background-color: var(--primary);
  color: white;
  border-radius: 4px;
  font-size: 12px;
  min-width: 22px;
  min-height: 22px;
  text-transform: uppercase;
  text-align: center;
}

.tab-reviews .tab-reviews-heading {
  margin-bottom: 40px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 50px;
  flex-wrap: wrap;
}

.tab-reviews .tab-reviews-heading .top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-grow: 1;
  width: 100%;
  max-width: 597px;
  gap: 30px;
}

.tab-reviews .tab-reviews-heading .list-star {
  display: flex;
  gap: 2px;
  justify-content: center;
  margin-bottom: 7px;
  margin-top: 1px;
  font-size: 17px;
}

.tab-reviews .tab-reviews-heading .list-star .icon {
  color: var(--bs-yellow);
}

.tab-reviews .rating-score {
  width: 100%;
  max-width: 365px;
}

.tab-reviews .rating-score .item {
  width: 100%;
  display: flex;
  align-items: center;
}

.tab-reviews .rating-score .item:not(:last-child) {
  margin-bottom: 4px;
}

.tab-reviews .rating-score .number-1 {
  width: 12px;
  text-align: end;
}

.tab-reviews .rating-score .icon {
  font-size: 15px;
  margin-inline-start: 4px;
  color: var(--bs-yellow);
}

.tab-reviews .rating-score .number-2 {
  width: 17px;
}

.tab-reviews .rating-score .line-bg {
  margin: 0 8px;
  width: 100%;
  height: 8px;
  background-color: var(--bs-gray-300);
}

.tab-reviews .rating-score .line-bg div {
  height: 100%;
  background-color: var(--bs-yellow);
}

.write-cancel-review-wrap .write-review-wrap,
.write-cancel-review-wrap .btn-cancel-review {
  display: none;
}

.write-cancel-review-wrap.write-review .cancel-review-wrap,
.write-cancel-review-wrap.write-review .btn-write-review {
  display: none;
}

.write-cancel-review-wrap.write-review .write-review-wrap,
.write-cancel-review-wrap.write-review .btn-cancel-review {
  display: block;
}


.form-write-review .heading {
  display: flex;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
  margin-bottom: 24px;
}

.form-write-review .heading .list-star {
  display: flex;
  gap: 8px;
}

.form-write-review .heading .list-star i {
  font-size: 32px;
  color: var(--bs-gray-300);
}

.form-write-review textarea {
  height: 100px;
}

.form-write-review .form-content {
  margin-bottom: 30px;
}

.form-write-review .form-content .box-field:not(:last-child) {
  margin-bottom: 30px;
}

.form-write-review .form-content .box-field .label {
  margin-bottom: 8px;
}


.form-write-review .form-content .box-check {
  display: flex;
  gap: 8px;
}

/* custom rating */
.list-rating-check {
  display: flex;
  flex-direction: row-reverse;
  justify-content: left;
  gap: 10px;
}

.list-rating-check:not(:checked) > input {
  position: absolute;
  opacity: 0;
}

.list-rating-check:not(:checked) > label {
  font-size: 30px;
  cursor: pointer;
  white-space: nowrap;
  width: 30px;
  color: var(--bs-gray-300);
}

.list-rating-check:not(:checked) > label:before {
  font-family: "icomoon";
  content: "\e95b";
}

.list-rating-check > input:checked ~ label {
  color: var(--bs-yellow);
}

.list-rating-check:not(:checked) > label:hover,
.list-rating-check:not(:checked) > label:hover ~ label {
  color: var(--bs-yellow);
}

.list-rating-check > input:checked + label:hover,
.list-rating-check > input:checked + label:hover ~ label,
.list-rating-check > input:checked ~ label:hover,
.list-rating-check > input:checked ~ label:hover ~ label,
.list-rating-check > label:hover ~ input:checked ~ label {
  color: var(--bs-yellow);
}


/*------------ carousel ---------------- */

.sw-dots {
  display: flex;
  gap: 8px;
}

.sw-dots.swiper-pagination-bullets .swiper-pagination-bullet {
  display: flex;
  align-items: center;
  justify-content: center;
}

.sw-dots .swiper-pagination-bullet {
  width: 22px;
  height: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: transparent;
  opacity: 1;
  transition: all 0.3s ease;
  border: 2px solid transparent;
}

.sw-dots .swiper-pagination-bullet:before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background-color: var(--bs-body-color);
  transition: 0.3s;
}

.sw-dots .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: rgba(0, 0, 0, 0.16);
}

.sw-dots.line-white-pagination span {
  background-color: rgb(255, 255, 255);
  opacity: 0.4;
  width: 6px;
  height: 6px;
}

.sw-dots.line-white-pagination span::before {
  content: none;
}

.sw-dots.line-white-pagination span.swiper-pagination-bullet-active {
  background-color: var(--primary);
  opacity: 1;
  width: 22px;
  border-radius: 9999px;
}


.sw-dots:not(.swiper-pagination-lock) {
  margin-top: 15px;
}

.sw-dots.medium span {
  width: 20px;
  height: 20px;
  border-width: 1px !important;
}

.sw-dots.medium span::before {
  width: 6px;
  height: 6px;
}

.sw-dots.medium span.swiper-pagination-bullet-active::before {
  width: 4px;
  height: 4px;
}

.sw-dots.small span {
  width: 16px;
  height: 16px;
  border-width: 1px !important;
}

.sw-dots.small span::before {
  width: 6px;
  height: 6px;
}

.sw-dots.small span.swiper-pagination-bullet-active::before {
  width: 4px;
  height: 4px;
}


.sw-dots.large .swiper-pagination-bullet::before {
  width: 8px;
  height: 8px;
}


.nav-sw {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  border: 1px solid var(--bs-body-color);
  background-color: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  font-size: 12px;
  cursor: pointer;
}

.nav-sw.swiper-button-disabled {
  border-color: rgba(0, 0, 0, 0.14);
  color: rgba(0, 0, 0, 0.4);
}

.nav-sw:hover:not(.swiper-button-disabled) {
  background-color: var(--bs-body-color);
  color: var(--bs-white);
}

.nav-sw.lg {
  width: 46px;
  height: 46px;
  font-size: 12px;
}

.nav-sw.square {
  width: 30px;
  height: 30px;
  border-radius: 3px;
}

.nav-sw.round {
  border-radius: 999px;
}


.hover-sw-nav {
  position: relative;
}

.hover-sw-nav .nav-sw {
  z-index: 10;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.4s ease;
  cursor: pointer;
  visibility: hidden;
  background-color: var(--bs-white);
  border-color: transparent;
}

.hover-sw-nav .nav-sw.nav-next-slider {
  margin-inline-start: 20px;
  left: 13px;
}

.hover-sw-nav .nav-sw.nav-prev-slider {
  right: 13px;
  margin-inline-end: 20px;
}

.hover-sw-nav .nav-sw.w_46 .icon {
  font-size: 12px;
}

.hover-sw-nav .nav-sw.swiper-button-disabled {
  background-color: rgba(0, 0, 0, 0.2);
}

.hover-sw-nav .nav-sw:hover:not(.swiper-button-disabled) {
  background-color: var(--primary);
  color: var(--bs-white);
}





.hover-sw-nav.hover-sw-2 .nav-sw {
  top: 37%;
}


.wrap-carousel {
  position: relative;
}

.wrap-carousel .nav-sw {
  z-index: 20;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.wrap-carousel .nav-next-slider {
  left: -84px;
}

.wrap-carousel .nav-prev-slider {
  right: -84px;
}

.wrap-carousel .sw-dots {
  display: none;
}


/*------------ pop up ---------------- */
.offcanvas {
  z-index: 3000;
  border: none !important;
}

.modal-backdrop {
  background-color: var(--bs-backdrop-bg);
}

.modal-backdrop.show {
  opacity: 1;
}

.modal.show .modal-dialog {
  transform: none;
  transition: transform 0.3s ease-out !important;
}


.modal .modal-content {
  cursor: default !important;
}

.modal.fade:not(.show) {
  opacity: 0;
}


#ask_question fieldset {
  margin-bottom: 15px;
}

#ask_question fieldset label {
  margin-bottom: 5px;
  font-weight: 400;
  color: var(--bs-gray-500);
}

#ask_question fieldset input {
  height: 50px;
}

#ask_question textarea {
  height: 176px;
}


.canvas-wrapper {
  padding: 0;
  isolation: isolate;
  height: 100%;
  width: 100%;
  max-height: none;
  display: grid;
  grid-auto-rows: auto minmax(0, 1fr) auto;
  align-content: start;
}

.canvas-body {
  background-color: var(--bs-white);
  padding: 15px 20px;
  overscroll-behavior-y: contain;
  overflow-y: auto;
}

.canvas-filter {
  max-width: 300px;
  width: 100%;
}

.canvas-filter .filter-icon {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  gap: 10px;
  text-transform: uppercase;
  line-height: 22px;
  font-size: 12px;
  font-weight: 600;
}

.canvas-filter .canvas-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 20px;
  background-color: var(--bs-light);
}

.canvas-filter .canvas-header .icon-close-popup {
  font-size: 16px;
}

.canvas-filter .widget-facet:last-child {
  margin-bottom: 0;
}

.canvas-sidebar .canvas-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0px 15px;
  background-color: var(--bs-light);
  min-height: 40px;
}

.canvas-sidebar .canvas-header .icon-close-popup {
  font-size: 16px;
}

.canvas-sidebar .canvas-header .title {
  font-weight: 600;
  font-size: 12px;
  text-transform: uppercase;
}

.canvas-sidebar .canvas-body {
  padding: 15px;
}



/*------------ box icon ---------------- */
.box-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.4s ease;
  cursor: pointer;
}


.box-icon.w_46 {
  width: 46px;
  height: 46px;
}

.box-icon.w_50 {
  width: 50px;
  height: 50px;
}

.box-icon.round {
  border-radius: 50% !important;
}


.tf-icon-box .icon {
  margin-bottom: 34px;
}

.tf-icon-box .icon i {
  font-size: 30px;
  color: #c5c5c5;
}

.tf-icon-box .content .title {
  font-size: 18px;
  font-weight: 500;
  line-height: 22px;
  margin-bottom: 10px;
}


.swiper-slide .tf-icon-box {
  width: 100%;
  height: 100%;
}

/*------------ hover ---------------- */
.hover-img .img-style {
  overflow: hidden;
}

.hover-img .img-style img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 1.5s cubic-bezier(0, 0, 0.44, 1.18);
}

.hover-img:hover img {
  -webkit-transform: scale(1.06);
  transform: scale(1.06);
}


/*------------ collection ---------------- */
.collection-item .collection-inner {
  position: relative;
}

.collection-item .collection-image {
  width: 100%;
  display: block;
  border-radius: 10px;
  overflow: hidden;
}

.collection-item .collection-content {
  position: absolute;
  z-index: 3;
  bottom: 15px;
  left: 15px;
  right: 15px;
  text-align: center;
}

.collection-item .collection-title {
  line-height: 40px;
  height: 40px;
  font-size: 16px;
  padding: 0px 14px;
  background-color: var(--bs-white);
  border-radius: 3px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.collection-item .collection-title .icon {
  color: var(--bs-white);
  margin: 0;
}

.collection-item .collection-title:hover {
  background-color: var(--primary);
  color: var(--bs-white);
}


.collection-item-v4 .collection-inner {
  position: relative;
}

.collection-item-v4 .collection-image {
  display: block;
}

.collection-item-v4 .collection-content {
  text-align: center;
  bottom: 7%;
  position: absolute;
  left: 7%;
  right: 7%;
}

.collection-item-v4 .collection-content .heading {
  font-size: 18px;
  line-height: 21.6px;
  text-transform: capitalize;
}

.collection-item-v4 .collection-content .subheading {
  font-size: 14px;
  line-height: 22.4px;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 6px;
}

.collection-item-v4 .collection-content .tf-btn {
  margin-top: 14px;
}





.collection-item-v4.style-3 .collection-content {
  text-align: left;
}


.tf-sw-collection .swiper-slide {
  height: auto;
}

.tf-sw-collection .swiper-slide img {
  height: 100%;
}

.tf-banner-collection {
  position: relative;
}

.tf-banner-collection img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 20px;
}

.tf-banner-collection .box-content {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.tf-banner-collection .box-content .sub {
  line-height: 17px;
}

.tf-banner-collection .box-content .heading {
  font-size: 42px;
  line-height: 50px;
  margin-top: 5px;
}

.tf-banner-collection .box-content p {
  font-size: 20px;
  line-height: 32px;
  margin-top: 15px;
  margin-bottom: 26px;
}


.swiper-slide .collection-item-v4,
.swiper-slide .collection-item-v4 .collection-inner,
.swiper-slide .collection-item-v4 .collection-image {
  height: 100%;
}


/*------------ product ---------------- */

.thumbs-slider {
  display: flex;
  gap: 10px;
}

.tf-product-media-thumbs {
  width: calc(14% - 10px);
  max-height: 846px;
}

.tf-product-media-thumbs .swiper-slide {
  height: 90px;
  width: 90px;
}

.tf-product-media-thumbs .swiper-slide .item {
  position: relative;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.tf-product-media-thumbs .swiper-slide .item img {
  border-radius: 5px;
  object-fit: contain;
  max-width: 100%;
  max-height: 100%;
}

.tf-product-media-thumbs .swiper-slide .item::after {
  position: absolute;
  content: "";
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  border: 2px solid transparent;
  transition: all 0.3s ease;
  border-radius: 5px;
}

.tf-product-media-thumbs .swiper-slide.swiper-slide-thumb-active .item::after {
  border: 2px solid var(--bs-primary);
}

.thumbs-bottom .thumbs-slider {
  flex-direction: column;
}

.thumbs-bottom .thumbs-slider .tf-product-media-thumbs {
  order: 1;
  width: 100%;
}

.thumbs-bottom .thumbs-slider .tf-product-media-thumbs .swiper-slide {
  width: 119px;
}

.thumbs-bottom .thumbs-slider .tf-product-media-main {
  width: 100%;
}


.tf-product-media-main {
  width: 86%;
  border-radius: 10px;
}

.tf-product-media-main .item {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  max-height: 846px;
  aspect-ratio: 1 / 1;
}


.tf-product-media-main .item img {
  max-width: 100%;
  max-height: 100%;
  height: auto;
  display: block;
  background-color: #f0f0f0; /* 占位背景色 */
  object-fit: contain;
}

.tf-product-info-title {
  margin-bottom: 20px !important;
}

.tf-product-info-variant-picker {
  display: flex;
  gap: 20px;
  flex-direction: column;
}


.tf-product-info-quantity .quantity-title {
  margin-bottom: 5px;
}

.tf-product-info-buy-button form {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}



.tf-product-info-extra-link {
  display: flex;
  align-items: center;
  gap: 10px 30px;
  flex-wrap: wrap;
}

.tf-product-info-extra-link .tf-product-extra-icon {
  display: flex;
  gap: 8px;
  align-items: center;
}

.tf-product-info-extra-link .tf-product-extra-icon i {
  font-size: 18px;
}

.tf-product-info-extra-link .tf-product-extra-icon:hover {
  color: var(--primary);
}

.tf-product-delivery {
  padding: 30px 28px;
  text-align: center;
  display: flex;
  gap: 16px;
  flex-direction: column;
  border-radius: 2.5px;
  border: 1px solid var(--bs-gray-300);
}

.tf-product-delivery i {
  font-size: 29px;
}




.variant-picker-item .variant-picker-label {
  margin-bottom: 15px;
}

.variant-picker-item .variant-picker-values {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
}

.variant-picker-item .variant-picker-values input {
  position: absolute !important;
  overflow: hidden;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  clip: rect(0 0 0 0);
  word-wrap: normal !important;
}

.variant-picker-item .variant-picker-values input:checked + label:not(.color-btn) {
  border-color: var(--bs-body-color);
  box-shadow: 0 0.4rem 0.4rem rgba(0, 0, 0, 0.1019607843);
}

.variant-picker-item .variant-picker-values input:checked + label.style-text:not(.color-btn) {
  background-color: var(--bs-body-color);
}

.variant-picker-item .variant-picker-values input:checked + label.style-text:not(.color-btn) p {
  color: var(--bs-white);
}

.variant-picker-item .variant-picker-values label {
  position: relative;
  width: 36px;
  height: 36px;
  text-align: center;
  padding: 5px;
  border: 1px solid transparent;
  cursor: pointer;
  font-weight: 400;
  line-height: 22.4px;
  transition: all 0.3s ease;
}

.variant-picker-item .variant-picker-values label:hover {
  border-color: var(--bs-body-color);
}



.variant-picker-item .variant-picker-values label.style-text {
  min-width: 45px;
  height: 38px;
  width: max-content;
  border: 1px solid rgba(134, 134, 134, 0.12);
  border-radius: 3px;
  padding: 7px 15px;
}

.variant-picker-item .variant-picker-values label.style-text:hover {
  border-color: var(--bs-body-color);
}



.variant-picker-item .variant-picker-values label .tooltip {
  left: 50%;
  transform: translateX(-50%);
}

.variant-picker-item .variant-picker-values label.rectangle-color {
  display: flex;
  align-items: center;
  gap: 4px;
}

.variant-picker-item .variant-picker-values label.rectangle-color > span {
  width: 15px;
  height: 15px;
}

.variant-picker-item .color-btn.active {
  border-color: var(--bs-body-color) !important;
  box-shadow: 0 0.4rem 0.4rem rgba(0, 0, 0, 0.1019607843);
}

.variant-picker-item .color-btn.style-text.active {
  background-color: var(--bs-body-color);
  border-color: var(--bs-body-color);
}

.variant-picker-item .color-btn.style-text.active p {
  color: var(--bs-white);
}


.tf-progress-bar {
  height: 4px;
  width: 100%;
  background-color: var(--bs-white);
  position: relative;
}

.tf-progress-bar span {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  bottom: 0;
  background-color: var(--primary);
  border-radius: 3px;
}

.tf-progress-bar .progress-car {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 36px;
  height: 26px;
  color: var(--primary);
  border: 1px solid var(--primary);
  border-radius: 2.5px;
  background-color: var(--bs-white);
  display: flex;
  align-items: center;
  justify-content: center;
}


.wrap-btn-viewer {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background-color: var(--bs-white);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 5;
}

.wrap-btn-viewer i {
  font-size: 20px;
}

.wrap-btn-viewer.style-video .icon {
  width: 20px;
  height: 20px;
  padding-inline-start: 2px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--bs-white);
  border: 2px solid var(--bs-body-color);
  border-radius: 50%;
}

.wrap-btn-viewer.style-video .icon i {
  font-size: 8px;
}

.btn-icon-action > *:last-child {
  display: none;
}

.btn-icon-action.active > *:first-child {
  display: none;
}

.btn-icon-action.active > *:last-child {
  display: block;
}

.wg-quantity {
  width: 150px;
  display: flex;
  justify-content: space-between;
  background-color: rgb(242, 242, 242);
  border-radius: 3px;
  overflow: hidden;
  border:1px solid #ccc;
}

.wg-quantity input {
  width: 51px;
  height: 48px;
  padding: 0;
  border: 0;
  text-align: center;
  font-size: 16px;
  font-weight: 600;
  line-height: 26px;
}

.wg-quantity .btn-quantity {
  width: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  cursor: pointer;
  transition: all 0.3s ease;
}

.wg-quantity .btn-quantity:hover {
  color: var(--primary);
}

.wg-quantity.small {
  width: 109px;
  height: 30px;
}

.wg-quantity.small .btn-quantity {
  width: 27px;
  height: 30px;
  font-size: 20px;
}

.wg-quantity.small input {
  width: 30px;
  height: 30px;
  font-size: 12px;
  line-height: 30px;
}


.tf-pr-attrs {
  border-spacing: 0;
  border-collapse: collapse;
  width: 100%;
  border-radius: 5px;
  border-style: hidden;
  box-shadow: 0 0 0 0.1rem var(--bs-gray-300);
}

.tf-pr-attrs tr {
  border: 1px solid var(--bs-gray-300);
  vertical-align: middle;
}

.tf-pr-attrs tr th {
  padding: 10px;
  border-inline-end: 1px solid var(--bs-gray-300);
  font-weight: 700;
}

.tf-pr-attrs tr td {
  padding: 10px;
}

.card-product {
  transition: all 0.3s ease;
  text-align: start;
}

.card-product .product-img {
  display: flex;
  width: 100%;
  height: 100%;
  position: relative;
  align-items: stretch;
}

.card-product .card-product-wrapper {
  position: relative;
  border-radius: 10px;
  overflow: hidden;
  z-index: 20;
  aspect-ratio: 1/1.4;
}




.card-product .card-product-wrapper img {
  display: block;
  height: 100%;
  width: 100%;
  object-fit: contain;
  object-position: center;
  transition: opacity 0.5s ease, transform 2s cubic-bezier(0, 0, 0.44, 1.18);
}

.card-product .card-product-wrapper .img-hover {
  position: absolute;
  inset: 0;
  opacity: 0;
}

.card-product .card-product-wrapper:hover .product-img .img-product {
  opacity: 0;
}

.card-product .card-product-wrapper:hover .product-img .img-hover {
  display: block;
  z-index: 1;
  opacity: 1;
  -webkit-transform: scale(1.09);
  transform: scale(1.09);
}


.card-product .card-product-wrapper .list-product-btn {
  z-index: 10;
  position: absolute;
  bottom: 48px;
  left: 15px;
  right: 15px;
}

.card-product .card-product-wrapper .on-sale-wrap {
  position: absolute;
  top: 5px;
  right: 5px;
  left: 5px;
  z-index: 5;
}

.card-product .card-product-wrapper .on-sale-wrap .on-sale-item {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  word-break: break-word;
  padding: 0 6px;
  min-width: 40px;
  text-transform: capitalize;
  font-size: 12px;
  font-weight: 500;
  text-align: center;
  line-height: 22px;
  position: relative;
  background-color: #fc5732;
  color: var(--bs-white);
  border-radius: 999px;
}

.card-product .card-product-wrapper .on-sale-wrap .new {
  background-color: #ff3232;
}

.card-product .card-product-wrapper .on-sale-wrap .best-seller {
  background-color: #44ad55;
}

.card-product .card-product-wrapper .on-sale-wrap .recommend {
  background-color: #bea36e;
}

.card-product .card-product-wrapper .on-sale-wrap .pre-order {
  background-color: #55a653;
  color: var(--bs-white);
}



.card-product .card-product-info {
  padding-top: 10px;
  gap: 8px;
  display: grid;
}

.card-product .card-product-info .title {
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  display: -webkit-box;
  overflow: hidden;
}

.card-product .card-product-info .price {
  font-weight: 600;
  font-size: 1.5rem;
}

.card-product .card-product-info .currency {
  font-weight: 700;
  font-size: 1rem;
  vertical-align: super;
}

.card-product .card-product-info .old-price {
  text-decoration: line-through;
  display: inline-block;
  margin-inline-end: 5px;
  font-weight: 400;
  color: rgba(0, 0, 0, 0.5);
}

.card-product .card-product-info .new-price {
  color: var(--bs-red);
}



.card-product .description {
  display: none;
  font-size: 14px;
  line-height: 22.4px;
  margin-top: 2px;
}


.card-product.lg .card-product-info {
  margin: auto;
  max-width: 277px;
}



.tooltip {
  z-index: 202;
  opacity: 0;
  visibility: hidden;
  display: block;
  position: absolute;
  top: 100%;
  margin-top: 8px;
  border-radius: 2px;
  white-space: nowrap;
  background-color: var(--bs-body-color);
  color: var(--bs-white);
  font-weight: 400;
  font-size: 12px;
  line-height: 12px;
  padding: 7px 10px 9px;
  max-width: 250px;
  width: max-content;
  transition: transform 0.4s ease 0.2s, opacity 0.4s ease 0.2s;
}

.tooltip::before {
  content: "";
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
  top: -4px;
  position: absolute;
  background: var(--bs-body-color);
  width: 8px;
  height: 8px;
  z-index: 100;
}

.hover-tooltip {
  position: relative;
}

.hover-tooltip:hover .tooltip {
  opacity: 0.9;
  visibility: visible;
}

.hover-tooltip.center .tooltip {
  left: 50%;
  transform: translateX(-50%);
}

.list-product-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
}

.list-product-btn .box-icon {
  width: 32px;
  height: 32px;
  min-width: 32px;
  border-radius: 3px;
  box-shadow: 0 8px 24px rgba(149, 157, 165, 0.2);
  background-color: rgb(242, 242, 242);
  position: relative;
}

.list-product-btn .box-icon .icon {
  font-size: 14px;
  font-weight: 500;
  height: 13px;
}

.list-product-btn .box-icon .text {
  font-size: 12px;
  font-weight: 700;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  width: auto;
  line-height: 32px;
}

.list-product-btn .box-icon .tooltip {
  top: -100%;
  margin-top: 5px;
}

.list-product-btn .box-icon .tooltip::before {
  top: unset;
  bottom: -4px;
}



.list-product-btn .box-icon.style-3 {
  box-shadow: none;
  background-color: var(--bs-white);
  border: 1px solid var(--bs-gray-300);
}

.list-product-btn .box-icon:hover {
  background-color: var(--bs-body-color) !important;
  color: var(--bs-white);
}

.list-product-btn .box-icon:hover .tooltip {
  opacity: 0.9;
  visibility: visible;
}





.list-product-btn.style-black .box-icon {
  background-color: var(--bs-body-color) !important;
  color: var(--bs-white);
}

.list-product-btn.style-black .box-icon:hover {
  background-color: var(--bs-white) !important;
}




.select-currentColor,
.value-currentColor {
  text-transform: capitalize;
}


.tf-page-title {
  padding: 69px 0 65px;
  background-image: url(../images/shop/file/page-title-blog.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.tf-page-title .heading {
  font-size: 42px;
  font-weight: 400;
  line-height: 50px;
}




/*------------ testimonial ---------------- */

.rating {
  display: flex;
  align-items: center;
  gap: 7px;
}

.rating i {
  font-size: 16px;
  color: var(--bs-orange);
}


/*------------ featured ---------------- */
/*------------ accordion ---------------- */


/*------------ zoom ---------------- */
.tf-zoom-main {
  position: sticky;
  top: 30px;
  z-index: 50;
}

.section-image-zoom .other-image-zoom {
  transition: all 0.3s ease;
}

.section-image-zoom.zoom-active .other-image-zoom {
  opacity: 0.3;
}

/*------------ shop ---------------- */

.widget-facet {
  margin-bottom: 26px;
}

.widget-facet .facet-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding:10px;
  font-size: 16px;
  line-height: 24px;
  cursor: pointer;
  background-color: #E0E6ED;
}

.widget-facet > .collapse {
  padding:10px;
}
.widget-facet > .collapsing {
  padding:10px;
}

.widget-facet .facet-title .icon {
  transition: transform 0.35s linear;
  font-size: 8px;
}

.widget-facet .facet-title.collapsed .icon {
  transform: rotate(180deg);
}

.widget-facet .cate-item a {
  display: flex;
}

.widget-facet .cate-item.current a {
  color: var(--primary);
}

.widget-facet .cate-item:not(:first-child) {
  margin-top: 10px;
}

.widget-facet .list-item .label {
  display: flex;
  font-size: 14px;
  font-weight: 500;
}

.widget-facet .list-item:not(:first-child) {
  margin-top: 10px;
}

.widget-facet .current-scrollbar {
  overflow-y: auto;
  margin-inline-end: 5px;
}

.widget-facet .current-scrollbar::-webkit-scrollbar {
  width: 2px;
}

.widget-facet .current-scrollbar::-webkit-scrollbar-track {
  background-color: rgba(0, 0, 0, 0.15);
}

.widget-facet .current-scrollbar::-webkit-scrollbar-thumb {
  background: var(--bs-body-color);
}


.widget-featured-products {
  display: grid;
  gap: 15px;
}

.widget-featured-products .featured-product-item {
  display: flex;
  gap: 15px;
}

.widget-featured-products .featured-product-item .card-product-wrapper {
  width: 92px;
  min-width: 92px;
  border-radius: 10px;
  overflow: hidden;
}

.widget-featured-products .featured-product-item .card-product-info {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.widget-featured-products .featured-product-item .card-product-info .title {
  font-size: 16px;
  line-height: 19.2px;
  margin-bottom: 1px;
}

.widget-featured-products .featured-product-item .card-product-info .price {
  font-size: 14px;
  font-weight: 600;
  line-height: 14px;
}

.widget-iconbox-list {
  display: grid;
  gap: 18px;
}

.widget-iconbox-list .iconbox-item {
  display: flex;
  align-items: center;
  gap: 18px;
}

.widget-iconbox-list .iconbox-item .box-icon {
  border: 1px solid var(--bs-gray-300);
}

.widget-iconbox-list .iconbox-item .iconbox-content {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.widget-iconbox-list .iconbox-item .iconbox-content .iconbox-title {
  font-size: 16px;
  line-height: 19.2px;
  font-weight: 600;
}


.widget-price {
  margin-top: 24px;
  margin-bottom: 35px;
}

.widget-price .box-title-price {
  margin-top: 30px;
  display: flex;
  align-items: center;
  gap: 10px;
}

.widget-price .caption-price {
  display: flex;
  align-items: center;
  gap: 10px;
}

.widget-price .caption-price .price-val {
  width: 68px;
  display: flex;
  justify-content: center;
  position: relative;
  padding: 8px 10px;
  border: 1px solid var(--bs-gray-300);
  border-radius: 5px;
}

.widget-price .caption-price .price-val::after {
  content: attr(data-currency);
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 10px;
  font-weight: 400;
  font-size: 14px;
  line-height: 22px;
}



.sidebar-filter {
  background-color: var(--bs-white);
  transition: all 0.3s ease;
}

.overlay-filter {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2000;
  width: 100vw;
  height: 100vh;
  background-color: var(--bs-backdrop-bg);
  visibility: hidden;
  opacity: 0;
}

.overlay-filter.show {
  opacity: 1;
  visibility: visible;
}

/*------------ sections ---------------- */
.btn-sidebar-mobile {
  display: none;
  position: fixed;
  top: 30%;
  right: 0;
  z-index: 100;
  width: max-content;
}

.btn-sidebar-mobile button {
  width: 40px;
  height: 48px;
  display: flex;
  border: 0;
  justify-content: center;
  align-items: center;
  background-color: var(--bs-white);
  box-shadow: rgba(0, 0, 0, 0.1) 0px 2px 6px 0px;
}

.btn-sidebar-mobile button i {
  font-size: 17px;
}

.btn-sidebar-mobile button.type-hover {
  padding: 0 11.5px;
}

.btn-sidebar-mobile button.type-hover span {
  display: none;
}

.btn-sidebar-mobile button.type-hover:hover {
  width: max-content;
  padding-inline-end: 24px;
  gap: 11.5px;
}

.btn-sidebar-mobile button.type-hover:hover span {
  display: block;
}

.btn-sidebar-mobile.left {
  right: auto;
  left: 0;
}



.tf-marquee {
  padding-top: 24px;
  padding-bottom: 24px;
  overflow: hidden;
}

.tf-marquee .wrap-marquee {
  display: flex;
  -webkit-animation: slide-har 6s linear infinite;
  animation: slide-har 6s linear infinite;
  transition: animation-duration 300ms;
}

.tf-marquee .wrap-marquee:hover {
  animation-play-state: paused;
}

.tf-marquee .marquee-item {
  padding-inline-start: 18px;
  padding-inline-end: 18px;
  display: flex;
  align-items: center;
  gap: 12px;
}

.tf-marquee .marquee-item .text {
  font-size: 18px;
  line-height: 21.6px;
  white-space: nowrap;
}

.tf-marquee .marquee-item p {
  white-space: nowrap;
}

.tf-marquee.not-hover .wrap-marquee:hover {
  animation-play-state: running;
}



.tf-marquee.marquee-white .marquee-item svg path {
  fill: var(--bs-white);
}

.flat-title {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
  margin-bottom: 30px;
  padding-inline-start: 15px;
  padding-inline-end: 15px;
}

.flat-title .title {
  font-size: 22px;
  line-height: 26.4px;
}


.flat-title .sw-dots {
  margin-top: 0;
}


.wrap-sw-over {
  padding-bottom: 40px;
  margin-bottom: -40px;
  padding-inline-start: 30px;
  margin-inline-start: -30px;
}


.tf-breadcrumb-wrap {
  padding: 22.5px 0;
  gap: 15px;
}

.tf-breadcrumb-wrap .tf-breadcrumb-list {
  display: flex;
  gap: 6px;
  align-items: center;
  flex-wrap: wrap;
}

.tf-breadcrumb-wrap .tf-breadcrumb-list .icon {
  font-size: 8px;
  font-weight: 700;
}



.tf-table-page-cart {
  border-spacing: 0;
  border-collapse: collapse;
  margin-bottom: 30px;
  width: 100%;
  line-height: 1.4;
}

.tf-table-page-cart th {
  font-size: 16px;
  font-weight: 600;
  border-bottom: 1px solid var(--bs-gray-300);
  text-align: center;
  padding: 18px 0px;
}

.tf-table-page-cart th:first-child {
  text-align: start;
}

.tf-table-page-cart th:last-child {
  text-align: end;
}

.tf-table-page-cart tr {
  border-bottom: 1px dashed var(--bs-gray-300);
}

.tf-table-page-cart tr:last-child {
  border-bottom-style: solid;
}

.tf-table-page-cart td {
  padding: 18px 10px;
}

.tf-table-page-cart td:first-child {
  text-align: start;
  padding-inline-start: 0;
}

.tf-table-page-cart td:last-child {
  text-align: end;
  padding-inline-end: 0;
}


.tf-page-cart-footer .tf-free-shipping-bar {
  margin-bottom: 20px;
  padding: 30px;
}

.tf-page-cart-footer .tf-free-shipping-bar .tf-progress-msg {
  margin-top: 28px;
}

.tf-page-cart-checkout {
  padding: 30px;
}





.tf-page-cart-checkout .shipping-calculator .shipping-calculator_accordion-icon::after, .tf-page-cart-checkout .shipping-calculator .shipping-calculator_accordion-icon::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-90deg);
  background-color: currentColor;
  transition: transform 0.35s ease-in-out, opacity 0.35s ease-in-out;
  width: 12px;
  height: 2px;
  opacity: 1;
  border-radius: 9999px;
}


.tf-page-cart-checkout .cart-checkbox {
  margin-top: 18px;
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
}

.tf-page-cart-checkout .cart-checkbox .tf-check {
  width: 16px;
  height: 16px;
  border-color: var(--bs-gray-300);
  background-color: var(--bs-white);
  border-radius: 999px;
  overflow: hidden;
}

.tf-page-cart-checkout .cart-checkbox .tf-check:checked {
  border-color: var(--primary);
  background-color: var(--primary);
}

.tf-page-cart-checkout .cart-checkbox .tf-check::before {
  font-size: 6px;
}

.tf-page-cart-checkout .cart-checkbox a {
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 600;
}

.tf-page-cart-checkout .tf-cart-totals-discounts {
  margin-top: 18px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.tf-page-cart-checkout .tf-cart-totals-discounts h3 {
  font-size: 20px;
  line-height: 24px;
}

.tf-page-cart-checkout .tf-cart-totals-discounts .total-value {
  font-size: 20px;
  line-height: 24px;
  font-weight: 600;
}



.tf-page-cart-checkout .cart-checkout-btn {
  margin-top: 18px;
}

.tf-page-cart-checkout .cart-checkout-btn .tf-btn {
  font-weight: 400;
}

.tf-page-cart-checkout .tf-page-cart_imgtrust {
  margin-top: 18px;
}

.tf-page-cart-checkout .tf-page-cart_imgtrust p {
  margin-bottom: 10px;
}

.tf-page-cart-checkout .tf-page-cart_imgtrust .cart-list-social {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}



.my-account-nav {
  display: flex;
  flex-direction: column;
  gap: 10px;
  position: sticky;
  top: 0;
}

.my-account-nav .my-account-nav-item {
  display: flex;
  width: 100%;
  border-bottom: 1px solid var(--bs-gray-300);
  padding: 15px 20px;
  border-radius: 3px;
  font-size: 16px;
  font-weight: 500;
  line-height: 20px;
  position: relative;
}

.my-account-nav .my-account-nav-item::before {
  position: absolute;
  content: "";
  bottom: 0;
  left: auto;
  right: 0;
  width: 0;
  height: 1px;
  background-color: #db1215;
  transition: all 0.3s ease;
}

.my-account-nav .my-account-nav-item:hover, .my-account-nav .my-account-nav-item.active {
  color: var(--primary);
  font-weight: bold;
}



/*-------------- Responsive ----------------- */
/* Media Queries
-------------------------------------------------------------- */
@media (min-width: 576px) {
  .card-product .description {
    display: block;
  }



  .list-product-btn .box-icon {
    width: 36px;
    height: 36px;
  }
}

@media (min-width: 768px) {




  .tf-breadcrumb-wrap {
    padding: 25.5px 0;
  }

  .tf-breadcrumb-wrap .tf-breadcrumb-list .icon {
    margin: 0 10px;
  }


  .canvas-mb {
    width: 100% !important;
    max-width: 367px;
  }

  .hover-sw-nav .sw-dots {
    margin-top: 30px;
  }

  .card-product .card-product-info {
    padding-top: 15px;
    gap: 10px;
  }



  .card-product .card-product-wrapper .list-product-btn {
    bottom: 40px;
  }


  .card-product .card-product-wrapper .on-sale-wrap {
    top: 10px;
    left: 10px;
    right: 10px;
  }

  .card-product .card-product-wrapper .on-sale-wrap .on-sale-item {
    padding: 0 10px;
    min-width: 59px;
    font-size: 14px;
    line-height: 29px;
  }

  .widget-facet .facet-title {
    font-size: 20px;
    line-height: 30px;
  }

  .featured-product-item .card-product-info {
    gap: 10px;
  }

  .canvas-sidebar .canvas-header {
    padding: 0 20px;
  }

  .canvas-sidebar .canvas-body {
    padding: 30px;
  }

  .collection-item .collection-title {
    line-height: 42px;
    height: 42px;
    padding: 0 20px;
  }

  .collection-item .collection-content {
    bottom: 30px;
  }

  .collection-item-v4 .collection-content .tf-btn {
    margin-top: 22px;
  }

  .collection-item-v4 .collection-content .subheading {
    margin-bottom: 8px;
  }

  .collection-item-v4 .collection-content .heading {
    font-size: 20px;
    line-height: 24px;
  }

  .tf-marquee {
    padding-top: 26px;
    padding-bottom: 26px;
  }

  .tf-marquee .wrap-marquee {
    -webkit-animation: slide-har 10s linear infinite;
    animation: slide-har 10s linear infinite;
  }

  .tf-marquee .marquee-item .text {
    font-size: 24px;
    line-height: 28.8px;
  }



  .flat-title {
    margin-bottom: 50px;
  }

  .flat-title .title {
    font-size: 32px;
    line-height: 38.4px;
  }




  .wrap-iconbox.lg .tf-icon-box {
    max-width: 450px;
    margin: auto;
    width: 100%;
  }


  .flat-price .wrap-price {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 30px;
  }



  .canvas-mb .mb-canvas-content {
    min-width: 367px;
  }

}

@media (min-width: 992px) {


  .tf-slideshow .wrap-pagination {
    bottom: 40px;
  }

  .list-product-btn .box-icon {
    width: 40px;
    height: 40px;
  }

}


@media (min-width: 1200px) {
  .sidebar-filter .canvas-body {
    padding: 0;
  }

  .tf-slideshow .wrap-pagination {
    bottom: 50px;
  }

  .tf-slideshow .wrap-pagination.pos2 {
    bottom: 40px;
  }




  .tf-login-wrap .tf-login-content,
  .tf-login-wrap .tf-login-form {
    width: 551px;
    margin: 0 auto;
  }

  .tf-login-wrap form button {
    max-width: 270px;
  }


  .tf-breadcrumb-wrap {
    padding: 30px 0;
  }


  .animate-hover-btn:hover:after {
    animation: shine 0.75s cubic-bezier(0.01, 0.56, 1, 1);
  }


  .header-default .wrapper-header {
    min-height: 94px;
  }


  .card-product .card-product-info {
    padding-top: 20px;
    gap: 12px;
  }

  .card-product:not(.list-layout) .box-icon {
    transform: translateY(20px);
    opacity: 0;
    visibility: hidden;
  }

  .card-product:not(.list-layout) .box-icon:nth-child(1) {
    transition: transform 0.4s ease 0s, opacity 0.4s ease 0s;
  }

  .card-product:not(.list-layout) .box-icon:nth-child(2) {
    transition: transform 0.4s ease 0.2s, opacity 0.4s ease 0s;
  }

  .card-product:not(.list-layout) .box-icon:nth-child(3) {
    transition: transform 0.4s ease 0.3s, opacity 0.4s ease 0s;
  }

  .card-product:not(.list-layout) .box-icon:nth-child(4) {
    transition: transform 0.4s ease 0.4s, opacity 0.4s ease 0s;
  }


  .card-product .card-product-wrapper .sold-out {
    height: 93px;
    width: 93px;
  }

  .card-product .card-product-wrapper .on-sale-wrap {
    top: 15px;
    left: 15px;
    right: 15px;
  }


  .card-product:hover .box-icon {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }

  .card-product.lg .card-product-info .title {
    font-size: 20px;
    line-height: 24px;
  }

  .card-product.lg .card-product-info .price {
    font-size: 20px;
    line-height: 24px;
  }

  .card-product.lg .card-product-info .price .old-price {
    opacity: 0.5;
  }



  .list-product-btn {
    gap: 6px;
  }

  .list-product-btn .box-icon {
    width: 42px;
    height: 42px;
  }

  .tf-row-flex .tf-shop-sidebar {
    width: calc(25% - 15px);
  }

  .tf-row-flex .tf-shop-content {
    width: calc(75% - 15px);
  }

  .featured-product-item .card-product-info {
    gap: 12px;
  }

  .collection-item .collection-title {
    line-height: 46px;
    height: 46px;
    padding: 0 30px;
    font-size: 18px;
  }

  .collection-item .collection-content {
    bottom: 36px;
  }

  .collection-item.large .collection-content {
    bottom: 46px;
  }

  .collection-item-v4 .collection-content .tf-btn {
    margin-top: 30px;
  }

  .collection-item-v4 .collection-content .subheading {
    margin-bottom: 11px;
  }

  .collection-item-v4 .collection-content .heading {
    font-size: 28px;
    line-height: 33.6px;
  }


  .tf-marquee {
    padding-top: 30px;
    padding-bottom: 30px;
  }

  .tf-marquee .wrap-marquee {
    -webkit-animation: slide-har 15s linear infinite;
    animation: slide-har 15s linear infinite;
  }



  .flat-title {
    margin-bottom: 60px;
  }

  .flat-title .title {
    font-size: 42px;
    line-height: 50.4px;
  }



  .collection-item-v4.style-3 .collection-content {
    bottom: 7%;
    left: 7%;
    right: 7%;
  }


  .tf-page-cart-wrap {
    display: grid;
    grid-template: repeat(2, auto)/66% 1fr;
    column-gap: 1.5rem;
  }

  .tf-page-cart-wrap.layout-2 {
    grid-template: repeat(2, auto)/60% 1fr;
  }

  .tf-cart-item .cart-info .cart-title {
    font-size: 16px;
    list-style: 22.4px;
  }

  .tf-cart-footer-inner {
    position: sticky;
    top: 100px;
    transition: top 0.3s ease;
  }


  .collection-item-v4.lg .collection-content {
    left: 60px;
    right: 60px;
  }



}

@media (min-width: 1400px) {


  .card-product .card-product-wrapper .list-product-btn {
    bottom: 48px;
  }

  .header-default .box-nav-ul {
    gap: 30px;
  }

  .header-default .box-nav-ul .menu-item > a::after {
    width: calc(100% + 60px);
  }


}


@media only screen and (max-width: 1599px) {
  .wrap-carousel .nav-next-slider {
    left: -24px;
  }

  .wrap-carousel .nav-prev-slider {
    right: -24px;
  }


}

@media only screen and (max-width: 1470px) {
  .footer .footer-wrap .footer-body::before {
    left: 15px;
    right: 15px;
    transform: unset;
    width: unset;
  }
}



@media only screen and (max-width: 1200px) {

  .footer .footer-logo,
  .footer .footer-heading {
    margin-top: 40px;
    margin-bottom: 22px;
  }


}

@media only screen and (max-width: 1149px) {
  .sidebar-filter {
    position: fixed;
    bottom: 0;
    z-index: 3000;
    display: flex;
    flex-direction: column;
    background-clip: padding-box;
    outline: 0;
  }

  .sidebar-filter.left {
    top: 0;
    left: 0;
    transform: translateX(-100%);
  }

  .sidebar-filter.right {
    top: 0;
    right: 0;
    transform: translateX(100%);
  }

  .sidebar-filter.show {
    transform: none;
  }


  #ask_question input {
    height: 42px !important;
  }

  #ask_question textarea {
    height: 120px;
  }



  .widget-tabs.style-has-border .widget-menu-tab {
    gap: 10px 25px;
    margin: 0 15px;
  }

  .widget-tabs.style-has-border .widget-menu-tab .item-title {
    padding: 12px 0;
    font-size: 14px;
    line-height: 18px;
  }

  .widget-tabs.style-has-border .widget-content-tab .widget-content-inner {
    padding: 20px 15px;
  }


  .thumbs-slider {
    flex-direction: column !important;
  }

  .thumbs-slider > div {
    width: 100%;
  }

  .thumbs-slider .tf-product-media-thumbs {
    order: 1;
  }

  .thumbs-slider .tf-product-media-thumbs .swiper-slide {
    width: auto;
  }


  .tf-product-delivery {
    margin-bottom: 30px;
  }

  .btn-sidebar-mobile {
    display: block;
  }



  .wrap-slider .box-content p {
    margin-bottom: 32px;
  }


  .hover-sw-nav .sw-dots {
    display: flex;
  }

  .hover-sw-nav .nav-sw {
    display: none;
  }

  .slider-effect .box-content .heading {
    font-size: 40px;
    line-height: 48px;
    margin-bottom: 14px;
  }

  .slider-effect .box-content .heading br {
    display: none;
  }


  .slider-radius .tf-sw-slideshow {
    border-radius: 20px;
  }

  .slider-radius .tf-sw-slideshow .heading {
    margin-bottom: 20px;
  }

  .nav-sw.lg {
    width: 40px;
    height: 40px;
  }

  .wrap-carousel .nav-next-slider {
    left: -18px;
  }

  .wrap-carousel .nav-prev-slider {
    right: -18px;
  }
 

  .tf-page-cart-footer {
    margin-top: 30px;
  }


  .description p br {
    display: none;
  }

  .nav-sw.w_46 {
    width: 40px;
    height: 40px;
  }
}

@media only screen and (max-width: 1024px) {
 

  .tf-page-title .heading {
    font-size: 32px;
    line-height: 38px;
  }

  h1 {
    font-size: 44px;
    line-height: 52.8px;
  }

  h2 {
    font-size: 50px;
    line-height: 60px;
  }

  h4 {
    font-size: 32px;
    line-height: 30.4px;
  }


}

@media only screen and (max-width: 991px) {


  .button-style-arrow {
    width: 40px;
    height: 40px;
  }


  .my-account-nav {
    gap: 10px;
    margin-bottom: 30px;
  }

  .my-account-nav .my-account-nav-item {
    font-size: 16px;
    line-height: 28px;
    padding: 8px 15px;
  }

  .card-product .list-product-btn .box-icon .tooltip {
    margin-top: 0;
  }

  .tab-reviews .tab-reviews-heading .top {
    gap: 15px;
  }

  .form-write-review .form-content {
    margin-bottom: 15px;
  }

  .form-write-review .form-content .box-field:not(:last-child) {
    margin-bottom: 15px;
  }

}


@media only screen and (max-width: 767px) {


  .card-product .count-down {
    display: none;
  }


  .tf-product-btn-wishlist .tooltip,
  

  .tf-banner-collection img {
    min-height: 300px;
  }

  .tf-banner-collection .box-content .heading {
    font-size: 22px;
    line-height: 26px;
  }

  .tf-banner-collection .box-content p {
    font-size: 14px;
    line-height: 22px;
    margin-bottom: 15px;
  }

  .modal-dialog {
    max-width: 500px !important;
  }

  .modal-dialog .demo-title {
    font-size: 18px !important;
    font-weight: 400 !important;
    line-height: 22px !important;
  }

  #ask_question button {
    font-size: 14px !important;
    height: 39px;
  }


  [qol-data-title]:before {
    content: attr(qol-data-title);
    text-align: start;
    flex: 1 1 auto;
  }


  .tf-product-media-wrap {
    margin-bottom: 15px;
  }


  h1 {
    font-size: 34px;
    line-height: 40.8px;
  }

  h2 {
    font-size: 32px;
    line-height: 38.4px;
  }

  h4 {
    font-size: 22px;
    line-height: 26.4px;
  }

  h5 {
    font-size: 18px;
    line-height: 21.6px;
  }

  h6 {
    font-size: 16px;
    line-height: 26px;
  }

  .footer .footer-heading-desktop {
    display: none;
  }

  .footer .footer-col-block .footer-heading-moblie {
    margin-top: 15px;
    margin-bottom: 15px;
    display: block;
    position: relative;
  }

  .footer .footer-col-block .footer-heading-moblie::after {
    position: absolute;
    content: "";
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 12px;
    height: 1px;
    background-color: #000000;
    transition: 0.25s ease-in-out;
  }

  .footer .footer-col-block .footer-heading-moblie::before {
    position: absolute;
    content: "";
    right: 15px;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 1px;
    height: 12px;
    background-color: #000000;
    transition: 0.25s ease-in-out;
  }

  .footer .footer-col-block.open .footer-heading-moblie::before {
    opacity: 0;
  }

  .footer .footer-col-block.open .footer-heading-moblie::after {
    transform: translate(0%, -50%) rotate(180deg);
  }

  .footer .tf-collapse-content {
    display: none;
  }

  .footer .footer-bottom .footer-bottom-wrap {
    flex-wrap: wrap;
  }

  .footer .footer-bottom .footer-bottom-wrap > div {
    width: 100%;
    text-align: center;
    justify-content: center;
  }

  #header .nav-icon .nav-account,
  #header .nav-icon .nav-wishlist{
    display: none;
  }


  .tf-slideshow .wrap-slider {
    height: 450px;
  }

  .slider-radius .wrap-slider {
    height: 350px;
  }


  .wrap-slider .box-content p {
    display: none;
  }


  .sw-dots {
    gap: 4px;
  }

  .sw-dots .swiper-pagination-bullet {
    width: 16px;
    height: 16px;
  }

  .tf-page-title {
    padding: 52px 0 49px;
  }

  .tf-page-title .heading {
    font-size: 22px;
    line-height: 26px;
  }


  .slider-effect {
    display: flex;
    flex-direction: column-reverse;
  }

  .slider-effect .box-content .heading {
    font-size: 34px;
    line-height: 40.8px;
  }

  .slider-effect .box-content .desc {
    display: block;
    margin-bottom: 22px;
    font-size: 16px;
    line-height: 19.2px;
  }


  .slider-radius {
    padding: 0;
  }

  .slider-radius .tf-sw-slideshow {
    border-radius: 0px;
  }

  .slider-radius .tf-sw-slideshow .subheading {
    display: block;
  }

  .slider-radius .tf-sw-slideshow .heading {
    margin-bottom: 20px;
  }

  .card-product .wishlist,
  .card-product .compare {
    display: none;
  }

  .card-product .card-product-wrapper .list-product-btn {
    bottom: 5px;
    left: 5px;
    right: 5px;
  }

  .nav-sw {
    width: 24px;
    height: 24px;
  }
}


.wrap-carousel .nav-sw {
  display: none;
}

.wrap-carousel .sw-dots {
  display: flex;
  margin-top: 15px;
}




.tf-btn.btn-md {
  padding: 0px 24px;
}


.tf-table-page-cart thead {
  display: none;
}

.tf-cart-item td[cart-data-title]:before {
  content: attr(cart-data-title);
  text-align: start;
  flex: 1 1 auto;
}

.tf-cart-item {
  margin-bottom: 15px;
  padding-inline-start: 98px;
  min-height: 140px;
  display: block;
  font-size: 12px;
  font-weight: 600;
  position: relative;
}

.tf-cart-item td {
  display: flex;
  align-items: center;
  flex-direction: row;
  flex-wrap: wrap;
  padding: 10px 0;
  margin: 0;
}

.tf-cart-item td:not(:last-child) {
  border-bottom: 1px dashed var(--bs-gray-300);
}

.tf-cart-item .img-box {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}

.tf-page-cart-checkout {
  padding: 30px 15px;
}

.tf-page-cart-checkout .tf-btn {
  height: 38px;
}


.btn-md {
  min-height: 40px;
}

.tf-btn:not(.btn-xl, .btn-md, .btn-line,  .style-3) {
  padding: 10px 24px;
}


.coupon-box input,
.coupon-box .tf-btn {
  height: 40px;
}



.wrap-slider .box-content p {
  margin-bottom: 24px;
  font-size: 16px;
  line-height: 19.2px;
}



@media only screen and (max-width: 575px) {
  

  .card-product .list-product-btn .box-icon .tooltip {
    display: none;
  }

  .card-product:not(.style-3) .list-product-btn .box-icon .text {
    display: none;
  }



}


.tf-shop-content {
  width: 100%;
}

.nav-ul-mb {
  .nav-mb-item {
    padding: 2px 0px;
    &:not(:last-child) {
      border-bottom: 1px solid rgb(238 238 238);
    }
    .mb-menu-link {
      min-height: 40px;
      font-weight: 500;
      display: flex;
      align-items: center;
      justify-content: space-between;
      &:not(.collapsed) {
        .btn-open-sub {
          &::before {
            transform: rotate(90deg);
          }
        }
      }
    }
  }
  .btn-open-sub {
    position: relative;
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    &:after,
    &::before {
      content: "";
      position: absolute;
      z-index: 1;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      background-color: var(--bs-body-color);
      transition: 0.4s ease 0.1s;
      margin: auto;
    }
    &::before {
      width: 2px;
      height: 12px;
    }
    &::after {
      width: 12px;
      height: 2px;
    }
  }
  .sub-nav-menu {
    margin-left: 10px;
    padding-left: 19px;
    margin-bottom: 26px;
    border-left: 1px solid rgb(236 236 236);
  }
 
}