@charset "UTF-8";
/* ---------------------------------------------------------
    * Name: Modave - Multipurpose eCommerce
    * Version: 1.0.1
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Components

        * header
        * footer
        * tabs
        * slider banner
        * button
        * form
        * nice select
        * carousel
        * avatar
        * pop up
        * box icon
        * hover
        * collection
        * product
        * blog
        * testimonial
        * lookbook
        * accordion
        * zoom
        * shop

    * section

    * Responsive
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
@import url(bootstrap-select.min.css);
@import url(https://fonts.googleapis.com/css?family=Poppins);

:root {
  --primary: #e43131;
  --main: #181818;
  --secondary: #4d4e4f;
  --secondary-2: #a0a0a0;
  --white: #ffffff;
  --surface: #f7f7f7;
  --critical: #f03e3e;
  --warning: #9391e1;
  --success: #3dab25;
  --yellow: #f0a750;
  --line: #e9e9e9;
  --pink: #ec749d;
  --blue: #0c74d6;
  --main-rgba-1: rgba(0, 0, 0, 0.16);
  --main-rgba-2: rgba(0, 0, 0, 0.15);
  --gradient: linear-gradient(87deg, #fbf1f1 3.59%, #f4f1fa 95.02%);
  --rgba-primary: rgba(228, 49, 49, 0.1);
  --bg-scrollbar-track: #f1f1f1;
  --bg-scrollbar-thumb: #c1c1c1;
  --shadow1: 0px 10px 25px 0px #2b344a1f;
  --shadow2: 0px 5px 18px 5px #40485726;
  --backdrop: rgba(24, 24, 24, 0.2);
}

/*---------- Reset css styles ----------- */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  font-family: inherit;
  font-size: 100%;
  font-style: inherit;
  font-weight: inherit;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

/* Elements
-------------------------------------------------------------- */
html {
  margin-right: 0 !important;
  scroll-behavior: smooth;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: "Kumbh Sans", sans-serif;
  font-size: 16px;
  line-height: 26px;
  font-weight: 400;
  color: var(--main);
  background-color: var(--white);
}

img {
  max-width: 100%;
  height: auto;
  transform: scale(1);
  vertical-align: middle;
  -ms-interpolation-mode: bicubic;
}

.row {
  margin-right: -15px;
  margin-left: -15px;
}

.row>* {
  padding-left: 0px;
  padding-right: 15px;
}

ul,
li {
  list-style-type: none;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}

.container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
  width: 100%;
}

.container {
  padding-left: 15px;
  padding-right: 15px;
}

.section-heading {
  font-size: 32px;
  font-weight: 700;
  color: #181818;
  /* Dark text color */
  text-align: center;
  padding-bottom: 60px;
}

.container-full3,
.container-full2,
.container-full {
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  padding: 0px 15px;
}

.container-full3 {
  padding: 0px 14px;
}

.slider-layout-right {
  width: calc(100vw - (100vw - 1290px) / 2);
  margin-right: unset;
  max-width: 100%;
  margin-left: auto;
}

.slider-layout-right .swiper {
  margin-right: -15px;
}

svg path {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

textarea,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"] {
  border: 2px solid var(--line);
  outline: 0;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  font-size: 16px;
  line-height: 26px;
  border-radius: 8px;
  padding: 9px 16px;
  width: 100%;
  background: var(--white);
  color: var(--main);
  font-weight: 400;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

textarea:hover,
textarea:focus,
input[type="text"]:hover,
input[type="text"]:focus,
input[type="password"]:hover,
input[type="password"]:focus,
input[type="datetime"]:hover,
input[type="datetime"]:focus,
input[type="datetime-local"]:hover,
input[type="datetime-local"]:focus,
input[type="date"]:hover,
input[type="date"]:focus,
input[type="month"]:hover,
input[type="month"]:focus,
input[type="time"]:hover,
input[type="time"]:focus,
input[type="week"]:hover,
input[type="week"]:focus,
input[type="number"]:hover,
input[type="number"]:focus,
input[type="email"]:hover,
input[type="email"]:focus,
input[type="url"]:hover,
input[type="url"]:focus,
input[type="search"]:hover,
input[type="search"]:focus,
input[type="tel"]:hover,
input[type="tel"]:focus,
input[type="color"]:hover,
input[type="color"]:focus {
  border-color: var(--main);
}

textarea::placeholder,
input[type="text"]::placeholder,
input[type="password"]::placeholder,
input[type="datetime"]::placeholder,
input[type="datetime-local"]::placeholder,
input[type="date"]::placeholder,
input[type="month"]::placeholder,
input[type="time"]::placeholder,
input[type="week"]::placeholder,
input[type="number"]::placeholder,
input[type="email"]::placeholder,
input[type="url"]::placeholder,
input[type="search"]::placeholder,
input[type="tel"]::placeholder,
input[type="color"]::placeholder {
  color: var(--secondary-2);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

textarea {
  height: 160px;
  resize: none;
}

/* Placeholder color */
::-webkit-input-placeholder {
  color: var(--secondary-2);
}

:-moz-placeholder {
  color: var(--secondary-2);
}

::-moz-placeholder {
  color: var(--secondary-2);
  opacity: 1;
}

button {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  background-color: var(--main);
  color: var(--white);
  padding: 15px 32px;
  border-radius: 99px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  font-size: 16px;
  line-height: 26px;
  font-weight: 600;
  text-transform: capitalize;
}

button .icon {
  font-size: 22px;
}

button:hover {
  background-color: transparent;
  color: var(--main);
}

/* Since FF19 lowers the opacity of the placeholder by default */
:-ms-input-placeholder {
  color: var(--secondary-2);
}

/* Typography
-------------------------------------------------------------- */
.title-display,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Barlow Condensed", sans-serif;
  text-rendering: optimizeLegibility;
  color: var(--main);
  font-weight: 700;
}

.title-display {
  font-size: 80px;
  line-height: 88px;
}

h1 {
  font-size: 32px;
  line-height: 68px;
}

h2 {
  font-size: 44px;
  line-height: 50px;
}

h3 {
  font-size: 32px;
  line-height: 48px;
}

h4 {
  font-size: 30px;
  line-height: 42px;
}

h5 {
  font-size: 24px;
  line-height: 30px;
}

h6 {
  font-size: 20px;
  line-height: 28px;
}

.body-text-1 {
  font-size: 18px;
  line-height: 28px;
}

.body-text {
  font-size: 16px;
  line-height: 26px;
}

.text-title {
  font-size: 16px;
  line-height: 24px;
  font-weight: 500;
}

.text-button {
  font-size: 16px;
  line-height: 26px;
  font-weight: 600;
}

.text-btn-uppercase {
  font-size: 12px;
  line-height: 20px;
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: 0.1em;
}

.text-btn-uppercase2 {
  font-family: "Instrument Sans", sans-serif;
  font-size: 18px;
  line-height: 24px;
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: 0.1em;
}

.text-caption-1 {
  font-size: 14px;
  line-height: 22px;
}

.text-caption-2 {
  font-size: 12px;
  line-height: 16px;
}

.font-main {
  font-family: "Kumbh Sans", sans-serif;
}

.font-2 {
  font-family: "Instrument Sans", sans-serif;
}

.font-3 {
  font-family: "Plus Jakarta Sans", sans-serif !important;
}

b,
strong {
  font-weight: bolder;
}

video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.fw-4 {
  font-weight: 400 !important;
}

.fw-5 {
  font-weight: 500 !important;
}

.fw-6 {
  font-weight: 600 !important;
}

.fw-7 {
  font-weight: 700 !important;
}

.fw-8 {
  font-weight: 800 !important;
}

.text-primary {
  color: var(--primary) !important;
}

.text-main {
  color: var(--main) !important;
}

.text-secondary {
  color: var(--secondary) !important;
}

.text-secondary-2 {
  color: var(--secondary-2) !important;
}

.text-white {
  color: var(--white) !important;
}

.text-surface {
  color: var(--surface) !important;
}

.text-critical {
  color: var(--critical) !important;
}

.text-warning {
  color: var(--warning) !important;
}

.text-success {
  color: var(--success) !important;
}

.text-yellow {
  color: var(--yellow) !important;
}

.text-line {
  color: var(--line) !important;
}

.text-pink {
  color: var(--pink) !important;
}

.text-blue {
  color: var(--blue) !important;
}

.bg-primary {
  background-color: var(--primary) !important;
}

.bg-main {
  background-color: var(--main) !important;
}

.bg-secondary {
  background-color: var(--secondary) !important;
}

.bg-secondary-2 {
  background-color: var(--secondary-2) !important;
}

.bg-white {
  background-color: var(--white) !important;
}

.bg-surface {
  background-color: var(--surface) !important;
}

.bg-critical {
  background-color: var(--critical) !important;
}

.bg-warning {
  background-color: var(--warning) !important;
}

.bg-success {
  background-color: var(--success) !important;
}

.bg-yellow {
  background-color: var(--yellow) !important;
}

.bg-line {
  background-color: var(--line) !important;
}

.bg-pink {
  background-color: var(--pink) !important;
}

.bg-light-pink {
  background-color: #dfc6b8 !important;
}

.bg-light-pink-2 {
  background-color: #f4c5bf !important;
}

.bg-light-pink-3 {
  background-color: #fdebeb !important;
}

.bg-dark-pink {
  background-color: #d10047 !important;
}

.bg-blue {
  background-color: var(--blue) !important;
}

.bg-blue-2 {
  background-color: #0c74d6 !important;
}

.bg-blue-3 {
  background-color: #0766bf !important;
}

.bg-light-blue {
  background-color: #d3d9ef !important;
}

.bg-light-blue-2 {
  background-color: #ebeaef !important;
}

.bg-light-blue-3 {
  background-color: #edf5f6 !important;
}

.bg-light-blue-4 {
  background-color: #eaf5ff !important;
}

.bg-light-blue-5 {
  background-color: #c9dfed !important;
}

.bg-dark-blue {
  background-color: #1b4872 !important;
}

.bg-purple {
  background-color: #2d3054 !important;
}

.bg-purple-2 {
  background-color: #6461be !important;
}

.bg-purple-3 {
  background-color: #73465a !important;
}

.bg-orange {
  background-color: #ff9747 !important;
}

.bg-orange-2 {
  background-color: #f1592a !important;
}

.bg-light-orange {
  background-color: #eeae76 !important;
}

.bg-grey {
  background-color: #e0d3c5 !important;
}

.bg-grey-2 {
  background-color: #d7cfc4 !important;
}

.bg-dark-grey {
  background-color: #b1aa98 !important;
}

.bg-dark-grey-2 {
  background-color: #9e9b96 !important;
}

.bg-light-grey {
  background-color: #f0efed !important;
}

.bg-light-green {
  background-color: #b7b8a3 !important;
}

.bg-brown {
  background-color: #d6bb9a !important;
}

.bg-red {
  background-color: #dc2a35 !important;
}

.bg-red-2 {
  background-color: #d14244 !important;
}

.bg-beige {
  background-color: #ccbba7 !important;
}

.bg-beige-2 {
  background-color: #f6efdd !important;
}

.bg-beige-1 {
  background-color: #f6f1ee !important;
}

.letter-1 {
  letter-spacing: 0.1em;
}

.letter-2 {
  letter-spacing: 0.2em;
}

.text-stroke-white {
  -webkit-text-stroke: 2px var(--white);
  color: transparent;
}

a {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  text-decoration: none;
  cursor: pointer;
  display: inline-block;
  color: var(--main);
}

a:focus,
a:hover {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  text-decoration: none;
  outline: 0;
}

.link {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.link:hover {
  color: var(--primary) !important;
}

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

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

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

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

.gap-4 {
  gap: 4px !important;
}

.gap-5 {
  gap: 5px;
}

.gap-6 {
  gap: 6px !important;
}

.gap-4 {
  gap: 4px !important;
}

.gap-8 {
  gap: 8px;
}

.gap-10 {
  gap: 10px;
}

.gap-12 {
  gap: 12px;
}

.gap-15 {
  gap: 15px;
}

.gap-16 {
  gap: 16px;
}

.gap-20 {
  gap: 20px;
}

.gap-24 {
  gap: 24px !important;
}

.row-gap-30 {
  row-gap: 30px !important;
}

.line {
  border: 1px solid var(--line);
}

.line-bt {
  border-bottom: 1px solid var(--line);
}

.line-top {
  border-top: 1px solid var(--line);
}

.line-top-rgba {
  border-top: 1px solid rgba(233, 233, 233, 0.1);
}

.line-black {
  border: 1px solid var(--main);
}

.no-line {
  border: 0 !important;
}

.place-self-center {
  place-self: center !important;
}

.radius-3 {
  border-radius: 3px !important;
}

.radius-5 {
  border-radius: 5px !important;
}

.radius-10 {
  border-radius: 10px !important;
}

.radius-12 {
  border-radius: 12px !important;
}

.radius-20 {
  border-radius: 20px !important;
}

.radius-60 {
  border-radius: 60px !important;
}

.rounded-full {
  border-radius: 999px !important;
}

.o-hidden {
  overflow: hidden;
}

.h-40 {
  height: 40px;
}

.h-46 {
  height: 46px;
}

.h-52 {
  height: 52px;
}

.px_15 {
  padding-left: 15px;
  padding-right: 15px;
}

.py-4 {
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}

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

.pt_0 {
  padding-top: 0px !important;
}

.pb_0 {
  padding-bottom: 25px !important;
}

.pr_0 {
  padding-right: 0px !important;
}

.py_8 {
  padding: 8px 0 !important;
}

.py_15 {
  padding: 15px 0;
}

.py_20 {
  padding: 20px 0;
}

.py_23 {
  padding: 23px 0 !important;
}

.pb_8 {
  padding-bottom: 8px;
}

.pb_15 {
  padding-bottom: 15px;
}

.pb_20 {
  padding-bottom: 20px;
}

.my_20 {
  margin: 20px 0px;
}

.mt_5 {
  margin-top: 5px;
}

.mt_3 {
  margin-top: 3px;
}

.mt_4 {
  margin-top: 4px;
}

.mt_8 {
  margin-top: 8px;
}

.mt_20 {
  margin-top: 20px;
}

.mt_37 {
  margin-top: 37px;
}

.mt_140 {
  margin-top: 140px;
}

.mb_4 {
  margin-bottom: 4px;
}

.mb_8 {
  margin-bottom: 8px;
}

.mb_6 {
  margin-bottom: 6px;
}

.mb_10 {
  margin-bottom: 10px;
}

.mb_12 {
  margin-bottom: 12px;
}

.mb_15 {
  margin-bottom: 15px;
}

.mb_16 {
  margin-bottom: 16px;
}

.mb_18 {
  margin-bottom: 18px;
}

.mb_20 {
  margin-bottom: 20px;
}

.mb_24 {
  margin-bottom: 24px !important;
}

.mb_30 {
  margin-bottom: 30px;
}

.mb_40 {
  margin-bottom: 40px;
}

.mb_32 {
  margin-bottom: 32px;
}

.mb_36 {
  margin-bottom: 36px;
}

.mb_60 {
  margin-bottom: 60px;
}

.mb_200 {
  margin-bottom: 200px;
}

.flat-spacing {
  padding-top: 0px;
  padding-bottom: 0px;
}

.flat-spacing-2 {
  padding-top: 65px;
  padding-bottom: 65px;
  position: relative;
}

.flat-spacing-3 {
  padding-top: 80px;
  padding-bottom: 90px;
}

.flat-spacing-4 {
  padding-top: 60px;
  padding-bottom: 60px;
}

.flat-spacing-5 {
  padding: 40px 60px;
}

.flat-spacing-6 {
  padding-top: 90px;
  padding-bottom: 80px;
}

.flat-spacing-7 {
  padding-top: 60px;
  padding-bottom: 80px;
}

.flat-spacing-8 {
  padding-top: 100.5px;
  padding-bottom: 100.5px;
}

.animated-image-container {
  position: absolute;
  height: 329px;
  z-index: 10;
  overflow: hidden;
  /* Ensure it stays on top */
}

.animated-image-container.top-left {
  left: 62px;
  top: -17px;
  width: 166px;
}

.animated-image-container.bottom-right {
  right: 50px;
  bottom: -300px;
  width: 120px;
}

.animated-image {
  width: 100%;
  height: auto;
  opacity: 1;
  animation: moveUpDown 3s infinite ease-in-out;
  /* Animation for up and down movement */
}

@keyframes moveUpDown {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(20px);
    /* Adjust the distance for the movement */
  }
}

.space-30 {
  padding-top: 30px;
  padding-left: 30px;
  padding-right: 30px;
}

[data-grid="grid-1"] {
  display: grid;
  gap: 30px;
  grid-template-columns: 1fr;
}

[data-grid="grid-2"] {
  display: grid;
  gap: 30px;
  grid-template-columns: 1fr 1fr;
}

[data-grid="grid-3"] {
  display: grid;
  gap: 30px;
  grid-template-columns: repeat(3, 1fr);
}

[data-grid="grid-4"] {
  display: grid;
  gap: 30px;
  grid-template-columns: repeat(4, 1fr);
}

[data-grid="grid-5"] {
  display: grid;
  gap: 30px;
  grid-template-columns: repeat(5, 1fr);
}

[data-grid="grid-6"] {
  display: grid;
  gap: 30px;
  grid-template-columns: repeat(6, 1fr);
}

[data-grid="grid-7"] {
  display: grid;
  gap: 30px;
  grid-template-columns: repeat(7, 1fr);
}

.grid-template-columns-2 {
  grid-template-columns: 1fr 1fr;
}

.tf-row-flex {
  display: flex;
  flex-direction: row;
  column-gap: 30px;
  row-gap: 30px;
}

.tf-grid-layout {
  display: grid;
  column-gap: 15px;
  row-gap: 30px;
}

.tf-grid-layout.tf-col-2 {
  grid-template-columns: 1fr 1fr;
}

.tf-grid-layout.tf-col-3 {
  grid-template-columns: repeat(3, 1fr);
}

.tf-grid-layout.tf-col-4 {
  grid-template-columns: repeat(4, 1fr);
}

.tf-grid-layout.tf-col-5 {
  grid-template-columns: repeat(5, 1fr);
}

.tf-grid-layout.tf-col-6 {
  grid-template-columns: repeat(6, 1fr);
}

.tf-grid-layout.tf-col-7 {
  grid-template-columns: repeat(7, 1fr);
}

.tf-grid-layout .wg-pagination {
  grid-column: 1/-1;
  width: 100%;
}

.tf-grid-layout .wd-load {
  grid-column: 1/-1;
}

.tf-grid-layout-v2 {
  display: grid;
  gap: 15px;
}

.overflow-unset {
  overflow: unset !important;
}

.sticky-top {
  z-index: 50;
  top: 15px;
}

.wmax {
  width: max-content !important;
}

.cursor-not-allowed {
  cursor: not-allowed;
}

.cursor-auto {
  cursor: auto;
}

.tag-list {
  list-style: disc;
  padding-left: 20px;
}

.tag-list li {
  list-style: inherit;
}

.has-line-bottom {
  position: relative;
}

.has-line-bottom::after {
  position: absolute;
  content: "";
  bottom: 0;
  left: 50%;
  background-color: var(--line);
  height: 1px;
  width: 100%;
  max-width: 1440px;
  transform: translateX(-50%);
}

.line-under {
  color: rgba(0, 0, 0, 0.85);
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
  text-decoration-line: underline;
  transition: text-decoration-thickness 1s ease;
}

.line-under:hover {
  color: var(--main);
  text-decoration-thickness: 2px;
  text-decoration-line: underline;
}

.transition-linear {
  transition-timing-function: linear !important;
}

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

.text-highlight {
  -webkit-text-stroke: 1px #000;
  color: transparent !important;
  flex-direction: row-reverse;
}

.text-line-clamp-1 {
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  display: -webkit-box;
  overflow: hidden;
}

.text-line-clamp-2 {
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  display: -webkit-box;
  overflow: hidden;
}

.aspect-ratio-1 {
  aspect-ratio: 1/1;
}

.initial-child-container {
  flex: 0 0 auto;
  display: flex;
  min-width: auto;
  flex-direction: row;
  align-items: center;
}

.line-top-container {
  position: relative;
}

.line-top-container::before {
  position: absolute;
  content: "";
  top: 0;
  left: 50%;
  background-color: var(--line);
  height: 1px;
  width: 100%;
  max-width: 1320px;
  transform: translateX(-50%);
}

.line-bottom-container {
  position: relative;
}

.line-bottom-container::after {
  position: absolute;
  content: "";
  bottom: 0;
  left: 50%;
  background-color: var(--line);
  height: 1px;
  width: 100%;
  max-width: 1320px;
  transform: translateX(-50%);
}

#scroll-top {
  position: fixed;
  display: block;
  width: 48px;
  height: 48px;
  line-height: 50px;
  border-radius: 4px;
  z-index: 1;
  border-radius: 50%;
  opacity: 0;
  visibility: hidden;
  cursor: pointer;
  overflow: hidden;
  z-index: 100;
  background-color: var(--main);
  border: 0;
  bottom: 92px;
  right: 20px;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

#scroll-top.show {
  opacity: 1;
  visibility: visible;
}

#scroll-top.type-1 {
  bottom: 140px;
}

#scroll-top:hover {
  transform: translateY(-5px);
  background-color: var(--primary);
}

/* Preload 
------------------------------------------- */
.preload-wrapper .preload-container {
  display: flex;
}

.preload-container {
  display: none;
  position: relative;
  width: 100%;
  height: 100%;
  background: #ffffff;
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  z-index: 99999999999;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.spinner {
  width: 60px;
  height: 60px;
  border: 3px solid transparent;
  border-top: 3px solid var(--line);
  border-radius: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  animation: spin 1s infinite linear;
}

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

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

/*------------ Components ---------------- */
/*------------ header ---------------- */
.tf-topbar {
  padding: 12px 0px;
}

.tf-topbar .topbar-left {
  display: flex;
  align-items: center;
  gap: 8px;
}

.tf-topbar.has-line-bot {
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.tf-topbar.style-2 {
  padding: 8px 0px;
}

.tf-topbar.topbar-white .top-bar-text {
  color: var(--white);
}

.tf-topbar.topbar-white .navigation-topbar .icon {
  color: var(--white);
}

.tf-topbar .wrapper-slider-topbar {
  position: relative;
}

.tf-topbar .wrapper-slider-topbar .tf-sw-top_bar {
  margin-left: 40px;
  margin-right: 40px;
}

.tf-topbar .navigation-topbar {
  position: absolute;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 50%;
  transform: translateY(-50%);
}

.tf-topbar .navigation-topbar .icon {
  font-size: 18px;
}

.tf-topbar .navigation-topbar.nav-next-topbar {
  left: 0;
}

.tf-topbar .navigation-topbar.nav-prev-topbar {
  right: 0;
}

.header-default .wrapper-header {
  min-height: 50px;
}

.header-default .wrapper-header .nav-icon {
  gap: 16px;
}

.header-default .box-nav-ul {
  gap: 20px;
}

.header-default .wrapper-header-right {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 16px;
}

.header-default .wrapper-header-right .tf-currencies {
  padding-right: 20px;
  border-right: 1px solid var(--line);
}

.header-default .header-bottom .wrapper-header {
  min-height: 45px;
}

.header-default .header-bottom.style-2 .wrapper-header {
  min-height: 50px;
}

.header-default .header-bottom.style-2 .wrapper-header .menu-item {
  padding: 15px 0px;
}

.header-default .header-bottom .box-right {
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: flex-end;
}

.header-default .header-bottom .box-right .icon {
  font-size: 20px;
}

.header-default .header-bottom .box-left {
  display: flex;
  align-items: center;
}

.header-default .sub-categories2 {
  position: relative;
}

.header-default .sub-categories2 .list-categories-inner {
  left: 101%;
  margin: 0;
  top: 0;
  min-width: 250px;
}

.header-default .sub-categories2 .list-categories-inner::before {
  height: 70px;
  position: absolute;
  width: 25px;
  top: 0;
  left: -12px;
  bottom: 0;
  content: "";
}

.header-default .sub-categories2 .list-categories-inner::after {
  content: none !important;
}

.header-default .sub-categories2:hover .list-categories-inner {
  opacity: 1;
  visibility: visible;
  transform: none;
  pointer-events: all;
}

.header-default .main-header .wrapper-header {
  min-height: auto;
  padding-top: 22px;
  padding-bottom: 22px;
}

.header-default .mobile-menu {
  display: inline-flex;
}

.header-default .mobile-menu .icon {
  font-size: 24px;
}

.header-default .box-support {
  display: flex;
  align-items: center;
  gap: 12px;
}

.header-default .box-support .icon {
  font-size: 32px;
}

.tf-list-categories {
  position: relative;
}

.tf-list-categories .categories-title {
  padding: 14px 16px;
  background-color: var(--main);
  color: var(--white);
  border-radius: 5px;
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

.tf-list-categories .categories-title .text {
  font-size: 12px;
  line-height: 20px;
  letter-spacing: 1px;
  font-weight: 600;
}

.tf-list-categories .categories-title .icon {
  font-size: 20px;
}

.tf-list-categories .list-categories-inner {
  left: 0;
  border-radius: 8px;
  position: absolute;
  background-color: var(--white);
  min-width: 300px;
  z-index: 3;
  opacity: 0;
  visibility: hidden;
  transform: translateY(15px);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  text-align: left;
  box-shadow: var(--shadow1);
  top: 100%;
  margin-top: 10px;
  color: var(--main);
  pointer-events: none;
  padding: 8px 0px;
}

.tf-list-categories .list-categories-inner::before {
  height: 20px;
  position: absolute;
  top: -15px;
  left: 0;
  right: 0;
  content: "";
}

.tf-list-categories .categories-item {
  padding: 9px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.tf-list-categories .categories-item .icon {
  font-size: 20px;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.tf-list-categories .categories-item .inner-left {
  display: flex;
  align-items: center;
  flex-grow: 1;
}

.tf-list-categories .categories-item .inner-left .icon {
  font-size: 24px;
  margin-right: 12px;
  color: var(--secondary-2);
}

.tf-list-categories .categories-item:hover {
  color: var(--primary);
}

.tf-list-categories .categories-item:hover .icon {
  color: var(--primary);
}

.tf-list-categories:hover>.list-categories-inner {
  opacity: 1;
  visibility: visible;
  transform: none;
  pointer-events: all;
}

.tf-list-categories .box-cate-bottom {
  position: relative;
  padding-top: 9px;
  margin-top: 9px;
}

.tf-list-categories .box-cate-bottom::before {
  content: "";
  position: absolute;
  height: 1px;
  background-color: var(--line);
  top: 0;
  left: 20px;
  right: 20px;
}

.tf-list-categories.style-1 {
  border: 1px solid var(--line);
  border-radius: 8px;
}

.tf-list-categories.style-1 .categories-title {
  border-radius: 8px 8px 0 0;
  padding: 13px 20px;
  display: flex;
  background-color: rgb(45, 48, 84);
}

.tf-list-categories.style-1 .categories-title .text {
  font-size: 16px;
  font-weight: 600;
  line-height: 26px;
}

.tf-list-categories.style-1 .categories-item {
  padding: 14px 20px;
}

.tf-list-categories.style-1 .categories-item:hover .icon {
  color: var(--primary);
}

.tf-list-categories.style-1 .icon-left {
  font-size: 24px;
}

.tf-list-categories.style-1 .sub-categories2 {
  position: relative;
}

.tf-list-categories.style-1 .sub-categories2 .list-categories-inner {
  left: 100%;
  margin: 0;
}

.tf-list-categories.style-1 .sub-categories2:hover .list-categories-inner {
  opacity: 1;
  visibility: visible;
  top: 0;
  pointer-events: all;
  transform: translate(0);
}

.tf-list-categories.style-1 ul li:not(:last-child) {
  border-bottom: 1px solid var(--line);
}

.tf-list-categories.style-1>.list-categories-inner {
  position: unset;
  opacity: 1;
  visibility: visible;
  transform: none;
  pointer-events: all;
  margin: 0;
  min-width: unset;
  box-shadow: none;
  padding: 0;
}

.tf-list-categories.style-1>.list-categories-inner .icon {
  color: var(--main);
}

#header .box-nav-ul .item-link {
  font-size: 16px;
  line-height: 26px;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 4px;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  position: relative;
}

#header .box-nav-ul .item-link .icon {
  font-size: 12px;
  font-weight: 600;
}

#header .box-nav-ul .item-link::after {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: calc(100% + 40px);
  height: 60px;
  display: none;
}

#header .box-nav-ul .menu-item.active .item-link,
#header .box-nav-ul .menu-item:hover .item-link {
  color: var(--primary);
}

#header .box-nav-ul .menu-item.active .demo-item.active .demo-name {
  color: var(--primary);
}

#header .box-nav-ul .menu-item:hover .item-link::after {
  display: block;
}

#header .nav-icon .icon {
  font-size: 24px;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

#header .nav-icon>li {
  display: inline-flex;
}

#header .nav-icon .nav-icon-item {
  position: relative;
  display: inline-flex;
}

#header .nav-icon .nav-icon-item svg path {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

#header .nav-icon .nav-icon-item:hover svg path {
  stroke: var(--primary);
}

#header .nav-icon .nav-icon-item:hover .icon {
  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: 14px;
  height: 14px;
  min-width: 14px;
  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: -2px;
  right: -2px;
  color: var(--white);
  background-color: var(--primary);
}

#header .tf-product-header .card-product .box-icon {
  width: 32px;
  height: 32px;
  min-width: 32px;
}

#header .tf-product-header .card-product .box-icon .icon {
  font-size: 20px;
}

#header .tf-product-header .card-product .btn-main-product {
  padding: 5px 10px;
}

#header .sub-menu .hover-sw-nav .nav-sw {
  width: 36px;
  height: 36px;
  top: 38%;
}

#header .sub-menu .list-color-item .tooltip {
  display: none;
}

.header-absolute {
  margin-bottom: -64px;
  background-color: transparent;
  z-index: 999;
}

.header-white .box-nav-ul .item-link {
  color: var(--white);
}

.header-white .nav-icon .icon {
  color: var(--white);
}

.header-white .nav-icon svg path {
  stroke: var(--white);
}

.header-white .mobile-menu .icon {
  color: var(--white);
}

.header-white.header-bg {
  background-color: var(--main);
}

.logo-header img {
  width: 90px;
  height: auto;
}

.box-nav-ul .menu-item {
  padding: 15px 0px;
}

.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-2 {
  position: relative;
  cursor: pointer;
}

.box-nav-ul .menu-item-2::after {
  position: absolute;
  content: "\e906";
  font-family: "icomoon";
  font-size: 11px;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}

.box-nav-ul .menu-item-2 .sub-menu {
  top: -22px;
  left: 110%;
  min-width: 200px;
}

.box-nav-ul .menu-item-2 .sub-menu::after {
  position: absolute;
  display: block;
  content: "";
  width: 60px;
  height: 45px;
  background-color: transparent;
  left: -18%;
  top: 3px;
}

.box-nav-ul .menu-item-2:hover>.sub-menu {
  pointer-events: all;
  opacity: 1;
  visibility: visible;
  transform: translateX(0px) translateY(0px);
}

.box-nav-ul .sub-menu {
  pointer-events: none;
  position: absolute;
  background-color: var(--white);
  min-width: 200px;
  z-index: 999;
  visibility: hidden;
  text-align: left;
  padding: 8px 20px;
  top: 100%;
  opacity: 0;
  visibility: hidden;
  border-radius: 8px;
  transform: translateX(0px) translateY(10px);
  box-shadow: var(--shadow1);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.box-nav-ul .wrapper-sub-shop {
  margin-left: -10px;
}

.box-nav-ul .wrapper-sub-shop .menu-heading {
  margin-bottom: 15px;
}

.box-nav-ul .mega-menu {
  padding-top: 32px;
  padding-bottom: 36px;
  border: none;
  max-height: calc(100vh - 74px);
  overflow: auto;
  left: 0;
  right: 0;
}

.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-heading {
  font-size: 12px;
  line-height: 20px;
  font-weight: 700;
  color: var(--main);
  text-transform: uppercase;
  margin-bottom: 8px;
  letter-spacing: 1px;
  text-align: start;
}

.box-nav-ul .menu-list .menu-link-text {
  padding: 7px 0px;
  color: var(--secondary);
  text-transform: capitalize;
  position: relative;
}

.box-nav-ul .menu-list .menu-link-text::before {
  content: "";
  width: 0;
  height: 1px;
  top: 80%;
  position: absolute;
  left: auto;
  right: 0;
  z-index: 1;
  -webkit-transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1) 0s;
  -o-transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1) 0s;
  transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1) 0s;
  background: var(--main);
}

.box-nav-ul .menu-list .menu-link-text:hover {
  color: var(--main);
}

.box-nav-ul .menu-list .menu-link-text:hover::before {
  width: 100%;
  left: 0;
  right: auto;
}

.box-nav-ul .menu-list .menu-link-text.active {
  color: var(--main);
}

.box-nav-ul .menu-list .menu-link-text.active::before {
  width: 100%;
  left: 0;
  right: auto;
}

.box-nav-ul .menu-list .demo-label {
  top: -14px;
  right: -35px;
}

.box-nav-ul .submenu-default {
  left: -30px;
}

.box-nav-ul .view-all-demo .tf-btn {
  padding: 10px 28px;
}

.box-nav-ul .sec-cls-header {
  margin-top: 15px;
  padding-bottom: 78px;
}

.box-nav-ul .collection-position .content {
  gap: 28px;
}

.box-nav-ul .collection-position .content .title-top {
  display: grid;
  gap: 8px;
}

.mega-menu .row-demo {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 20px;
  overflow-y: auto;
  padding-right: 10px;
  margin-right: -16px;
}

.mega-menu .row-demo::-webkit-scrollbar {
  width: 6px;
}

.mega-menu .row-demo::-webkit-scrollbar-thumb {
  background: var(--line);
}

.mega-menu .demo-item {
  border-radius: 8px;
  background-color: var(--surface);
  padding: 8px 8px 0px;
  border: solid 1px var(--line);
  transition: border 0.4s;
  margin-bottom: 1px;
  display: inline-flex;
}

.mega-menu .demo-item .demo-name {
  font-size: 14px;
  line-height: 42px;
  display: block;
  text-wrap: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  text-align: center;
  font-weight: 600;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.mega-menu .demo-item .demo-name:hover {
  color: var(--primary);
}

.mega-menu .demo-item:hover {
  border-color: var(--main);
}

.mega-menu .view-all-demo {
  margin-top: 28px;
}

.mega-menu .collection-item .collection-title {
  background-color: #f2f2f2;
  border-radius: 3px;
}

.mega-menu .collection-item .collection-content {
  bottom: 40px;
}

.mega-menu .collection-item .tf-btn .icon {
  margin: 0px;
}

.mega-page {
  max-width: 900px;
  margin: auto;
}

.demo-label {
  position: absolute;
  top: 9px;
  right: 7px;
  gap: 5px;
  display: flex;
}

.demo-label span {
  font-size: 10px;
  line-height: 19px;
  padding: 0 8px;
  background-color: rgb(131, 183, 53);
  color: var(--white);
  border-radius: 3px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.demo-label .demo-new {
  background-color: rgb(72, 212, 187);
}

.demo-label .demo-hot {
  background-color: rgb(252, 87, 50);
}

.canvas-mb {
  width: 100% !important;
  max-width: min(90%, 320px);
  border-right: 0 !important;
}

.canvas-mb .mb-canvas-content {
  padding-top: 60px;
  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-right: 20px;
  padding-left: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--line);
  overscroll-behavior-y: contain;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.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;
  color: var(--main);
}

.canvas-mb .mb-bottom {
  padding-left: 20px;
  padding-right: 20px;
}

.canvas-mb .mb-bottom .site-nav-icon {
  margin-bottom: 18px;
}

.canvas-mb .mb-bottom .bottom-bar-language {
  min-height: 40px;
  max-width: 100%;
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.canvas-mb .mb-bottom .bottom-bar-language .image-select.type-currencies>.dropdown-menu {
  margin-left: 0 !important;
}

.canvas-mb .mb-bottom .bottom-bar-language .image-select>.dropdown-menu::before {
  display: none;
}

.canvas-mb .mb-bottom .bottom-bar-language .tf-currencies,
.canvas-mb .mb-bottom .bottom-bar-language .tf-languages {
  display: flex;
  align-items: center;
  justify-content: center;
}

.canvas-mb .mb-bottom .bottom-bar-language .tf-currencies {
  border-right: 1px solid var(--line);
}

.canvas-mb .site-nav-icon {
  padding: 0 9px;
  line-height: 40px;
  border: solid 1px var(--line);
  gap: 4px;
  background-color: var(--line);
  color: var(--main);
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 500;
}

.canvas-mb .site-nav-icon .icon {
  font-size: 14px;
}

.canvas-mb .site-nav-icon svg path {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.canvas-mb .site-nav-icon:hover {
  color: var(--white);
  background-color: var(--main);
  border-color: var(--main);
}

.canvas-mb .site-nav-icon:hover svg path {
  stroke: var(--white);
}

.canvas-mb .mb-other-content .group-icon {
  margin-top: 10px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 20px;
}

.canvas-mb .mb-other-content .text-need {
  font-weight: 500;
  margin-bottom: 12px;
  font-size: 16px;
  line-height: 24px;
  font-weight: 500;
}

.canvas-mb .mb-other-content .mb-info li {
  font-size: 14px;
  line-height: 22px;
  display: flex;
  align-items: center;
}

.canvas-mb .mb-other-content .mb-info li .icon {
  font-size: 20px;
  margin-right: 12px;
}

.canvas-mb .mb-other-content .mb-info li:not(:last-child) {
  margin-bottom: 8px;
}

.canvas-mb .mb-other-content .mb-contact {
  display: grid;
  gap: 8px;
  margin-bottom: 12px;
}

.canvas-mb .mb-other-content .mb-contact .tf-btn-default i {
  font-size: 16px;
}

.canvas-mb .form-search {
  margin-bottom: 8px;
}

.canvas-mb .form-search input {
  padding: 12px;
  padding-left: 44px;
  font-size: 14px;
  line-height: 22px;
  color: var(--secondary-2);
  border-width: 1px;
}

.canvas-mb .form-search button {
  right: auto;
  left: 12px;
}

.nav-ul-mb .nav-mb-item {
  padding: 2px 0px;
}

.nav-ul-mb .nav-mb-item:not(:last-child) {
  border-bottom: 1px solid var(--line);
}

.nav-ul-mb .nav-mb-item .mb-menu-link {
  min-height: 48px;
  font-weight: 500;
  font-size: 16px;
  line-height: 24px;
  color: var(--main);
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.nav-ul-mb .nav-mb-item .mb-menu-link:not(.collapsed) .btn-open-sub::before {
  transform: rotate(90deg);
}

.nav-ul-mb .nav-mb-item.active .mb-menu-link {
  font-weight: 600;
}

.nav-ul-mb .nav-mb-item.active .sub-nav-link.active {
  font-weight: 600;
}

.nav-ul-mb .btn-open-sub {
  position: relative;
  width: 20px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.nav-ul-mb .btn-open-sub:after,
.nav-ul-mb .btn-open-sub::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: var(--main);
  transition: 0.4s ease 0.1s;
  margin: auto;
}

.nav-ul-mb .btn-open-sub::before {
  width: 2px;
  height: 12px;
}

.nav-ul-mb .btn-open-sub::after {
  width: 12px;
  height: 2px;
}

.nav-ul-mb .sub-nav-menu {
  padding-left: 10px;
  margin-bottom: 15px;
}

.nav-ul-mb .sub-menu-level-2 {
  margin-bottom: 5px;
}

.nav-ul-mb .sub-nav-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 36px;
  line-height: 36px;
  font-size: 14px;
  color: var(--secondary);
}

.nav-ul-mb .sub-nav-link:not(.collapsed) .btn-open-sub::before {
  transform: rotate(90deg);
}

.nav-ul-mb .sub-nav-link .btn-open-sub::after,
.nav-ul-mb .sub-nav-link .btn-open-sub::before {
  background-color: var(--secondary);
}

.nav-ul-mb .sub-nav-link.line-clamp {
  position: relative;
  display: inline-flex;
}

.nav-ul-mb .sub-nav-link.line-clamp .demo-label {
  top: -5px;
  right: -38px;
}

.header-list-categories {
  display: flex;
  align-items: center;
  gap: 26px;
}

.header-list-categories .categories-item {
  position: relative;
  display: flex;
  align-items: center;
}

.header-list-categories .categories-item a {
  font-weight: 600;
  font-size: 16px;
  line-height: 26px;
  transition: all 0.2s;
  padding: 4px 0px;
}

.header-list-categories .categories-item a::after {
  content: "";
  position: absolute;
  width: 0;
  bottom: 0;
  height: 2px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transition: all 0.2s;
  -ms-transition: all 0.2s;
  transition: all 0.2s;
  background-color: var(--main);
}

.header-list-categories .categories-item.active a::after,
.header-list-categories .categories-item:hover a::after {
  width: 100%;
}

.header-style-2 .logo-header {
  margin-left: 30px;
}

.header-style-2 .logo-header img {
  width: 130px;
}

.header-style-4 .main-header .wrapper-header {
  padding-bottom: 26px;
}

.header-style-4 .wrapper-header-right .tf-currencies {
  padding-right: 17px;
}

.header-style-4 .wrapper-header-right .image-select.style-default>.dropdown-toggle {
  padding-right: 27px;
}

.header-style-5 .main-header .wrapper-header {
  min-height: 68px;
  padding-top: 12px;
  padding-bottom: 12px;
}

.header-style-5 .logo-header img {
  width: 130px;
}

.header-style-5 .wrapper-header-left .form-search-select {
  margin-left: 60px;
}

.header-style-5 .header-bottom .wrapper-header {
  min-height: 50px;
}

.header-style-5 .header-bottom .box-nav-ul {
  margin-left: 40px;
}

.header-style-5 .header-bottom .box-nav-ul .menu-item {
  padding: 12px 0px;
}

.header-style-5 .header-bottom .btn-select {
  font-size: 16px;
  line-height: 24px;
  font-weight: 500;
  color: var(--white);
}

.header-style-5 .header-bottom .tf-dropdown-sort {
  padding: 5px 0px;
  min-width: 146px;
  border: none;
}

.header-style-5 .header-bottom .tf-dropdown-sort .dropdown-menu {
  margin-top: 6px !important;
}

.header-style-5 .tf-list-categories .categories-title {
  background-color: transparent;
  padding: 4px 0px;
  gap: 8px;
  padding-right: 40px;
  border-right: 1px solid rgba(233, 233, 233, 0.1);
}

.header-style-5 .tf-list-categories .categories-title .text {
  font-size: 16px;
  line-height: 26px;
  letter-spacing: 0;
}

.header-style-5 .tf-list-categories .categories-title .icon-left {
  font-size: 24px;
}

.header-style-5 .tf-list-categories .categories-title .icon {
  font-size: 17px;
}

.header-style-5 .tf-list-categories .list-categories-inner {
  margin-top: 8px;
}

.header-style-5 .tf-list-categories .list-categories-inner::after {
  content: "";
  position: absolute;
  bottom: calc(100% - 16px);
  left: 26px;
  border-top: 20px solid var(--white);
  border-right: 20px solid transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.header-bottom .box-nav-ul .menu-item {
  padding: 16px 0px;
}

.wrapper-header-left {
  display: flex;
  align-items: center;
}

.wrapper-header-left .box-navigation {
  padding-left: 60px;
}

header {
  position: sticky;
  position: -webkit-sticky;
  left: 0;
  right: 0;
  -webkit-transition: 0.2s ease-out;
  -o-transition: 0.2s ease-out;
  transition: 0.2s ease-out;
  z-index: 888;
  background-color: var(--white);
}

header.header-bg {
  background-color: var(--white);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.header-scroll-white .dark-logo {
  display: none;
}

.header-scroll-white.header-bg {
  background-color: var(--white);
}

.header-scroll-white.header-bg .dark-logo {
  display: block;
}

.header-scroll-white.header-bg .white-logo {
  display: none;
}

.header-scroll-white.header-bg .box-nav-ul .item-link,
.header-scroll-white.header-bg .nav-icon .nav-icon-item {
  color: var(--main);
}

.header-scroll-white.header-bg .box-nav-ul .item-link::before {
  background-color: var(--main) !important;
}

.header-scroll-white.header-bg .btn-mobile svg path {
  fill: var(--main);
}

.header-dark {
  background-color: var(--main);
}

.header-dark .box-nav-ul .item-link {
  color: var(--white);
}

.header-dark .header-list-categories .categories-item a {
  color: var(--white);
  font-size: 12px;
  line-height: 22px;
}

.header-dark .header-list-categories .categories-item a::after {
  background-color: var(--white);
  height: 1px;
}

.header-fullwidth {
  padding-left: 15px;
  padding-right: 15px;
}

.nav-account {
  position: relative;
}

.nav-account .dropdown-account {
  pointer-events: none;
  position: absolute;
  background-color: var(--white);
  min-width: 200px;
  z-index: 999;
  visibility: hidden;
  text-align: left;
  top: calc(100% + 28px);
  opacity: 0;
  visibility: hidden;
  border-radius: 8px;
  transform: translateX(0px) translateY(15px);
  box-shadow: var(--shadow1);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  left: -100px;
  padding: 8px 28px;
}

.nav-account .dropdown-account .list-menu-item li:not(:last-child) {
  margin-bottom: 8px;
}

.nav-account .dropdown-account .list-menu-item li:not(:last-child) a {
  border-bottom: 1px solid var(--line);
}

.nav-account .dropdown-account .list-menu-item a {
  padding: 12px 0px;
  display: block;
}

.nav-account:hover .dropdown-account {
  pointer-events: all;
  opacity: 1;
  visibility: visible;
  transform: translateX(0px) translateY(0px);
}

.nav-account:hover .nav-icon-item::after {
  display: block;
}

.nav-account .dropdown-login {
  left: -200px;
  min-width: 290px;
  padding: 24px;
}

.nav-account .dropdown-login .tf-btn {
  border-radius: 4px;
  width: 100%;
  font-size: 12px;
  line-height: 20px;
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: 0.1em;
}

.nav-account .dropdown-login .sub-top {
  display: grid;
  gap: 12px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--line);
}

.nav-account .dropdown-login .sub-bot {
  padding: 16px 0px;
}

.nav-account .nav-icon-item {
  position: relative;
}

.nav-account .nav-icon-item::after {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 40px;
  height: 82px;
  display: none;
}

.modalDemo .demo-item.active .demo-name {
  color: var(--primary);
}

/* ===== HEADER RESPONSIVE LAYOUT ===== */

/* Tablets and Mobile (991px and below) */
@media (max-width: 991px) {
  .wrapper-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: row;
    padding: 10px 0;
    /* Increased back to 10px */
    min-height: 55px;
    /* Increased from 50px */
  }

  /* Logo on far left */
  .col-xl-3.col-md-4.col-6 {
    order: 1;
    flex: 0 0 auto;
  }

  .logo-header {
    margin-right: auto;
    display: flex;
    align-items: center;
  }

  .logo-header img {
    max-height: 60px;
    /* Increased for better fit */
    width: auto;
    object-fit: contain;
  }

  /* Mobile menu on far right */
  .col-md-4.col-3.d-xl-none {
    order: 3;
    flex: 0 0 auto;
    display: flex;
    justify-content: flex-end;
    margin-left: auto;
  }

  .mobile-menu {
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 28px;
    height: 22px;
    position: relative;
    cursor: pointer;
    padding: 0;
    background: transparent;
    border: none;
  }

  /* Hamburger Icon - Three Equal Lines */
  .mobile-menu .icon {
    display: none;
    /* Hide the default icon */
  }

  .mobile-menu::before,
  .mobile-menu::after,
  .mobile-menu span {
    content: '';
    display: block;
    width: 28px;
    height: 2.5px;
    background-color: var(--main);
    border-radius: 2px;
    transition: all 0.3s ease;
  }

  .mobile-menu::before {
    position: absolute;
    top: 0;
  }

  .mobile-menu span {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }

  .mobile-menu::after {
    position: absolute;
    bottom: 0;
  }

  /* Hover effect */
  .mobile-menu:hover::before,
  .mobile-menu:hover::after,
  .mobile-menu:hover span {
    background-color: var(--primary);
  }

  /* Active state (when menu is open) */
  .mobile-menu.active::before {
    transform: rotate(45deg) translate(7px, 7px);
  }

  .mobile-menu.active span {
    opacity: 0;
  }

  .mobile-menu.active::after {
    transform: rotate(-45deg) translate(7px, -7px);
  }
}

/* Tablets Portrait (768px - 991px) */
@media (max-width: 767px) {
  .wrapper-header {
    padding: 8px 0;
    /* Increased from 6px */
    min-height: 55px;
    /* Increased from 45px */
  }

  .mobile-menu {
    width: 26px;
    height: 20px;
  }

  .mobile-menu::before,
  .mobile-menu::after,
  .mobile-menu span {
    width: 26px;
    height: 2.5px;
  }

  .logo-header img {
    width: auto;
    max-height: 50px;
    /* Increased from 42px */
    object-fit: contain;
  }

  .mobile-menu.active::before {
    transform: rotate(45deg) translate(6px, 6px);
  }

  .mobile-menu.active::after {
    transform: rotate(-45deg) translate(6px, -6px);
  }
}

/* Mobile Portrait (480px - 575px) */
@media (max-width: 575px) {
  .wrapper-header {
    padding: 7px 0;
    /* Increased from 5px */
    min-height: 55px;
    /* Increased from 42px */
  }

  .mobile-menu {
    width: 24px;
    height: 18px;
  }

  .mobile-menu::before,
  .mobile-menu::after,
  .mobile-menu span {
    width: 24px;
    height: 2px;
  }

  .logo-header img {
    width: auto;
    max-height: 47px;
    /* Increased from 38px */
    object-fit: contain;
  }

  .mobile-menu.active::before {
    transform: rotate(45deg) translate(5px, 5px);
  }

  .mobile-menu.active::after {
    transform: rotate(-45deg) translate(5px, -5px);
  }
}

/* Small Mobile (375px - 479px) */
@media (max-width: 479px) {
  .wrapper-header {
    padding: 7px 0;
    /* Increased from 5px */
    min-height: 50px;
    /* Increased from 40px */
  }

  .mobile-menu {
    width: 22px;
    height: 16px;
  }

  .mobile-menu::before,
  .mobile-menu::after,
  .mobile-menu span {
    width: 22px;
    height: 2px;
  }

  .logo-header img {
    width: auto;
    max-height: 43px;
    /* Increased from 35px */
    object-fit: contain;
  }

  .container {
    padding-left: 12px;
    padding-right: 12px;
  }

  .mobile-menu.active::before {
    transform: rotate(45deg) translate(5px, 5px);
  }

  .mobile-menu.active::after {
    transform: rotate(-45deg) translate(5px, -5px);
  }
}

/* Extra Small Mobile (320px - 374px) */
@media (max-width: 374px) {
  .wrapper-header {
    padding: 6px 0;
    /* Increased from 4px */
    min-height: 47px;
    /* Increased from 38px */
  }

  .mobile-menu {
    width: 20px;
    height: 15px;
  }

  .mobile-menu::before,
  .mobile-menu::after,
  .mobile-menu span {
    width: 20px;
    height: 1.5px;
  }

  .logo-header img {
    width: auto;
    max-height: 40px;
    /* Increased from 32px */
    object-fit: contain;
  }

  .container {
    padding-left: 10px;
    padding-right: 10px;
  }

  .mobile-menu.active::before {
    transform: rotate(45deg) translate(4px, 4px);
  }

  .mobile-menu.active::after {
    transform: rotate(-45deg) translate(4px, -4px);
  }
}

/*------------ button ---------------- */
.tf-btn {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  background-color: var(--main);
  color: var(--white);
  padding: 15px 32px;
  border-radius: 99px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 16px;
  line-height: 26px;
  font-weight: 600;
  text-transform: capitalize;
  border: 1px solid var(--main);
  position: relative;
  overflow: hidden;
}

.tf-btn span {
  color: inherit;
}

.tf-btn .icon {
  font-size: 22px;
}

.tf-btn .text,
.tf-btn .icon {
  position: relative;
  z-index: 2;
}

.tf-btn.btn-md {
  padding: 10px 24px;
}

.tf-btn:not(.btn-reset):after {
  content: "";
  position: absolute;
  bottom: -50%;
  width: 102%;
  height: 100%;
  background-color: var(--white);
  transform-origin: bottom center;
  transition: transform 600ms cubic-bezier(0.48, 0, 0.12, 1);
  transform: skewY(9.3deg) scaleY(0);
  z-index: 1;
}

.tf-btn:not(.btn-reset):hover {
  color: var(--main);
}

.tf-btn:not(.btn-reset):hover::after {
  transform-origin: bottom center;
  transform: skewY(9.3deg) scaleY(2);
}

.tf-btn.btn-reset:hover {
  background-color: var(--primary);
  border-color: var(--primary);
  color: var(--white);
}

.tf-btn.btn-white {
  background-color: var(--white);
  border: none;
  color: var(--main);
}

.tf-btn.btn-white:hover {
  color: var(--white);
}

.tf-btn.btn-white::after {
  background: linear-gradient(135deg, #da9e93, #86483d);
}

.tf-btn.btn-white.has-border {
  border: 1px solid var(--main);
}

.tf-btn.btn-white.has-border:hover {
  border-color: var(--primary);
}

.tf-btn.btn-square {
  border-radius: 8px;
}

.tf-btn.radius-4 {
  border-radius: 4px;
}

.btn-line {
  font-size: 16px;
  line-height: 26px;
  padding-bottom: 4px;
  font-weight: 600;
  color: var(--main);
  position: relative;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  background: linear-gradient(to right, var(--primary) 50%, var(--main) 50%);
  background-size: 200% 100%;
  background-position: right;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  transition: background-position 0.3s linear;
}

.btn-line::after {
  position: absolute;
  content: "";
  left: 0;
  bottom: 0;
  right: 0;
  height: 2px;
  background-color: var(--main);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.btn-line::before {
  position: absolute;
  content: "";
  left: 0;
  width: 0;
  bottom: 0;
  height: 2px;
  background-color: var(--primary);
  transition: width 0.3s linear;
  z-index: 1;
}

.btn-line.style-white {
  color: var(--white);
  background: linear-gradient(to right, var(--primary) 50%, var(--white) 50%);
  background-size: 200% 100%;
  background-position: right;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  transition: background-position 0.3s linear;
}

.btn-line.style-white::after {
  background-color: var(--white);
}

.btn-line:hover {
  background-position: left;
}

.btn-line:hover::before {
  width: 100%;
}

.tf-btn-default {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  line-height: 20px;
}

.tf-btn-default i {
  font-size: 20px;
}

.tf-btn-default:hover {
  color: var(--primary);
}

.tf-btn-default.style-white {
  color: var(--white);
}

.tf-btn-default.style-white:hover {
  color: var(--primary);
}

.btn-style-1 {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 7px 15px;
  border: 1px solid var(--line);
  border-radius: 999px;
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
  height: 36px;
}

.btn-style-2 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: max-content;
  padding: 14px 15px;
  border-radius: 999px;
  background-color: var(--main);
  color: var(--white);
  letter-spacing: 0.1em;
  border: 0;
}

.btn-style-2:hover {
  background-color: var(--primary);
  color: var(--white);
}

.btn-style-3 {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 14px 15px;
  border-radius: 999px;
  background-color: var(--primary);
  color: var(--white);
  letter-spacing: 0.1em;
}

.btn-style-3:hover {
  background-color: var(--main);
}

.btn-style-4 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: max-content;
  padding: 15px 39px;
  border-radius: 4px;
  border: 1px solid var(--main);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  cursor: pointer;
}

.btn-style-4:hover {
  background-color: var(--main);
  color: var(--white);
}

.btn-style-5 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: max-content;
  padding: 15px 39px;
  border-radius: 4px;
  border: 1px solid rgb(254, 167, 36);
  background-color: rgb(254, 167, 36);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  cursor: pointer;
}

.btn-style-5:hover {
  background-color: var(--white);
  border-color: var(--main);
  color: var(--main);
}

.btn-sold-out {
  pointer-events: none;
  background-color: var(--line) !important;
  color: var(--secondary-2) !important;
  cursor: no-drop;
}

.btn-out-line {
  padding: 10px 40px;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  cursor: pointer;
  border-radius: 44px;
  border: 2px solid var(--line);
  background-color: var(--white);
  color: var(--main);
}

.btn-out-line:hover {
  color: var(--primary);
}

.load-more-btn {
  width: auto;
  min-width: 163px;
  height: 42px;
  font-size: 12px;
  line-height: 20px;
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: 0.1em;
}

.tf-loading {
  position: relative;
}

.tf-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;
}

.tf-loading .text-btn {
  color: inherit;
}

.tf-loading.loading::before {
  border: solid 2px var(--main);
  opacity: 1;
  animation-play-state: running;
}

.tf-loading.loading .text-btn {
  display: none;
}

.btn-infinite-scroll {
  height: 32px;
  padding: 0;
  border: none;
}

.btn-infinite-scroll::before {
  width: 22px;
  height: 22px;
  border: solid 2px var(--main);
  opacity: 1;
  animation-play-state: running;
}

@keyframes tf_rotator {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

.btn-fixed-cart {
  position: fixed;
  top: 40%;
  right: 20px;
  background-color: var(--main);
  width: 60px;
  height: 60px;
  display: block;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 999;
  border-radius: 99px 0px 99px 99px;
}

.btn-fixed-cart .count-box {
  right: 6px;
  top: 16px;
  position: absolute;
  width: 14px;
  height: 14px;
  border-radius: 99px;
  background-color: var(--primary);
  font-size: 10px;
  line-height: 8px;
  color: var(--white);
  display: flex;
  align-items: center;
  justify-content: center;
}

/*------------ form ---------------- */
form {
  position: relative;
}

form .cols {
  display: flex;
  gap: 20px 16px;
  width: 100%;
}

form .cols>* {
  width: 100%;
}

.form-leave-comment>.wrap {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin-bottom: 24px;
}

.form-leave-comment button {
  border: 1px solid var(--main);
}

.form-newsletter input {
  font-size: 14px !important;
  height: 56px !important;
  border-radius: 999px;
  border: 1px solid var(--main);
  padding-right: 56px;
}

.form-newsletter button {
  position: absolute;
  top: 4px;
  right: 4px;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  font-size: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 1px solid var(--main);
}

.form-newsletter.style-black input {
  background-color: var(--main) !important;
  border: 1px solid var(--white) !important;
  color: var(--white) !important;
}

.form-newsletter.style-black button {
  background-color: var(--white);
  color: var(--main);
}

.form-newsletter.style-black button:hover {
  color: var(--white);
  background-color: var(--main);
  border: 1px solid var(--white);
}

.form-search input {
  padding-right: 40px;
  padding-left: 14px;
}

.form-search button {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  padding: 0;
  background-color: transparent;
  border: 0;
}

.form-search button:hover svg path {
  stroke: var(--primary);
}

.tf-dropdown-sort {
  border-radius: 4px;
  padding: 5px 8px;
  min-width: 100px;
  border: 2px solid var(--line);
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.tf-dropdown-sort .icon {
  font-size: 14px;
}

.tf-dropdown-sort .btn-select {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 4px;
}

.tf-dropdown-sort .btn-select {
  text-wrap: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 14px;
  line-height: 22px;
}

.tf-dropdown-sort .dropdown-menu {
  box-shadow: var(--shadow1);
  min-width: 164px;
  border: 0;
  padding: 15px 5px;
  border-radius: 0;
  max-height: 68vh;
  isolation: isolate;
  overscroll-behavior-y: contain;
  overflow-y: auto;
}

.tf-dropdown-sort .dropdown-menu::-webkit-scrollbar {
  width: 5px;
}

.tf-dropdown-sort .dropdown-menu::-webkit-scrollbar-track {
  background-color: var(--bg-scrollbar-track);
}

.tf-dropdown-sort .dropdown-menu::-webkit-scrollbar-thumb {
  background: var(--bg-scrollbar-thumb);
  border-radius: 4px;
}

.tf-dropdown-sort .select-item {
  position: relative;
  font-size: 14px;
  font-weight: 500;
  color: var(--secondary);
  padding: 0 15px;
  line-height: 30px;
  width: 100%;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.tf-dropdown-sort .select-item.active {
  background-color: var(--line);
  color: var(--main);
  padding: 0 15px !important;
  border: 0 !important;
}

.tf-dropdown-sort .select-item:hover {
  background-color: var(--line);
  color: var(--main);
}

.tf-dropdown-sort:hover {
  border-color: var(--main);
}

.tf-dropdown-sort.full .dropdown-menu {
  width: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.tf-dropdown-sort.style-1 {
  padding: 10px 14px;
  border-radius: 8px;
  border: 2px solid var(--line);
}

.tf-dropdown-sort.has-color .select-item {
  display: flex;
  gap: 8px;
  align-items: center;
}

.tf-dropdown-sort.has-color .box-color {
  width: 20px;
  height: 20px;
}

.tf-dropdown-sort.style-2 {
  min-width: unset;
  padding: 9px 11px;
  border-radius: 12px;
  background-color: var(--surface);
}

.tf-dropdown-sort.style-2 .btn-select {
  gap: 16px;
}

.tf-dropdown-sort.style-2 .btn-select .text-sort-value {
  font-size: 18px;
  font-weight: 600;
  line-height: 24px;
  letter-spacing: 0.1em;
}

.form-search-select {
  display: flex;
  min-width: 610px;
  border-radius: 4px;
  overflow: hidden;
}

.form-search-select .tf-dropdown-sort {
  border-radius: 0;
  flex-shrink: 0;
  min-width: 120px;
  border: none;
  background-color: var(--surface);
  padding: 8px 12px;
  font-weight: 600;
}

.form-search-select .tf-dropdown-sort .icon {
  font-size: 20px;
}

.form-search-select .tf-dropdown-sort .btn-select {
  font-size: 16px;
  line-height: 26px;
}

.form-search-select input {
  border-color: transparent !important;
  border-radius: 0;
  padding: 6px 16px;
}

.form-search-select .tf-btn {
  flex-shrink: 0;
  padding: 7px 28px;
  border-radius: 0;
}

.form-write-review .heading {
  display: flex;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
  margin-bottom: 24px;
}

.form-write-review textarea {
  height: 100px;
}

.form-write-review button {
  border: 1px solid var(--main);
  padding: 15px 39px;
  letter-spacing: 0.1em;
}

.list-rating-check {
  display: flex;
  flex-direction: row-reverse;
  justify-content: left;
  gap: 10px;
  position: relative;
}

.list-rating-check:not(:checked)>input {
  position: absolute;
  opacity: 0;
  visibility: hidden;
  width: 0;
}

.list-rating-check:not(:checked)>label {
  font-size: 40px;
  cursor: pointer;
  white-space: nowrap;
  width: 40px;
  color: var(--line);
}

.list-rating-check:not(:checked)>label:before {
  font-family: "icomoon";
  content: "\e92a";
}

.list-rating-check>input:checked~label {
  color: var(--yellow);
}

.list-rating-check:not(:checked)>label:hover,
.list-rating-check:not(:checked)>label:hover~label {
  color: var(--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(--yellow);
}

.tf-check {
  position: relative;
  background: transparent;
  cursor: pointer;
  outline: 0;
  -webkit-appearance: none;
  width: 20px;
  height: 20px;
  min-width: 20px;
  border: 1px solid var(--secondary-2);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: 3px;
}

.tf-check:checked {
  border-color: var(--main);
  background-color: var(--main);
}

.tf-check:checked::before {
  opacity: 1;
  transform: scale(1);
}

.tf-check::before {
  font-weight: 500;
  font-family: "icomoon";
  content: "\e937";
  position: absolute;
  color: var(--white);
  opacity: 0;
  font-size: 12px;
  transform: scale(0);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.tf-check-rounded {
  position: relative;
  border: 1px solid var(--secondary-2);
  border-radius: 50%;
  background: none;
  cursor: pointer;
  outline: 0;
  height: 14px;
  width: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-appearance: none;
}

.tf-check-rounded::before {
  content: "";
  position: absolute;
  border-radius: 50%;
  width: 8px;
  height: 8px;
  background-color: var(--main);
  opacity: 0;
}

.tf-check-rounded:checked {
  border-color: var(--main);
}

.tf-check-rounded:checked::before {
  opacity: 1;
}

.tf-select {
  position: relative;
}

.tf-select select {
  width: 100%;
  padding: 7px 16px;
  border: 2px solid var(--line);
  border-radius: 999px;
  -webkit-appearance: none;
  appearance: none;
  background-color: transparent;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.tf-select::after {
  font-family: "icomoon";
  position: absolute;
  content: "\e935";
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 20px;
  z-index: -1;
}

.tf-select:hover select {
  border-color: var(--main);
}

.form-bundle-product {
  padding: 23px;
  border-radius: 12px;
  border: 1px solid var(--line);
  display: flex;
  gap: 16px;
  flex-direction: column;
}

.form-bundle-product .tf-bundle-product-total-submit {
  display: flex;
  gap: 12px;
  align-items: center;
}

.form-bundle-product .tf-bundle-product-btn {
  padding: 14px 48px;
}

.form-bundle-product.type-cols .tf-bundle-products-wrap {
  display: flex;
  gap: 16px 24px;
  overflow-x: auto;
}

.form-bundle-product.type-cols .tf-bundle-products-wrap::-webkit-scrollbar {
  height: 8px;
}

.form-bundle-product.type-cols .tf-bundle-products-wrap::-webkit-scrollbar-thumb {
  background: var(--secondary-2);
}

.form-bundle-product.type-cols .tf-bundle-products-wrap::-webkit-scrollbar-track {
  background: var(--line);
}

.form-bundle-product.type-cols .tf-bundle-product-item {
  width: 173px;
  flex-shrink: 0;
  flex-direction: column;
}

.form-bundle-product.type-cols .tf-bundle-product-item .tf-product-bundle-infos {
  gap: 7px;
}

.form-bundle-product.type-cols .tf-bundle-product-item .tf-product-bundle-image {
  width: 100%;
  height: 226px;
}

.form-bundle-product.type-product-grouped {
  padding: 0;
  border: 0;
  border-radius: 0;
  gap: 20px;
}

.form-bundle-product.type-product-grouped .tf-bundle-product-item {
  padding-bottom: 20px;
  border-bottom: 1px solid var(--line);
}

.form-login .wrap {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin-bottom: 28px;
}

.form-login .wrap .forget-password {
  text-decoration: underline;
}

.form-login .tf-cart-checkbox .tf-checkbox-wrapp {
  width: 20px;
  height: 20px;
  gap: 8px;
}

.form-login .tf-cart-checkbox .tf-checkbox-wrapp input,
.form-login .tf-cart-checkbox .tf-checkbox-wrapp div {
  width: 20px;
  height: 20px;
  min-width: 20px;
  border-radius: 3px;
}

.form-login button {
  padding: 10px 32px;
}

.form-has-password .toggle-password {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  cursor: pointer;
}

.form-has-password .toggle-password i {
  font-size: 20px;
  color: var(--secondary-2);
}

.form-has-password .toggle-password:not(.unshow) i::before {
  content: "\e938";
}

.account-address .tf-btn {
  cursor: pointer;
  padding: 10px 32px;
}

.wd-form-address {
  margin: 20px 0px 40px;
  border-radius: 10px;
  padding: 20px 15px;
  border: 1px solid var(--line);
}

.wd-form-address .title {
  font-size: 28px;
  line-height: 33.6px;
  margin: 20px 0px;
}

.wd-form-address .box-field {
  margin-bottom: 15px;
}

.wd-form-address .tf-select select {
  border-radius: 8px;
  height: 46px;
}

/*------------ nice select ---------------- */
.nice-select {
  -webkit-tap-highlight-color: transparent;
  background-color: #fff;
  border: 0;
  padding: 0;
  padding-right: 16px;
  box-sizing: border-box;
  clear: both;
  cursor: pointer;
  display: flex;
  font-size: 14px;
  line-height: 22px;
  font-weight: 500;
  outline: none;
  position: relative;
  transition: all linear 0.2s;
  user-select: none;
  white-space: nowrap;
  width: max-content;
  border-radius: 0;
  color: var(--main);
}

.nice-select:active,
.nice-select.open,
.nice-select:focus {
  border-color: var(--line);
}

.nice-select:after {
  border-bottom: 1.7px solid var(--main);
  border-right: 1.7px solid var(--main);
  content: "";
  height: 8px;
  width: 8px;
  margin-top: -6px;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform-origin: 66% 66%;
  -ms-transform-origin: 66% 66%;
  transform-origin: 66% 66%;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: all 0.15s ease-in-out;
  transition: all 0.15s ease-in-out;
}

.nice-select.open:after {
  -webkit-transform: rotate(-135deg);
  -ms-transform: rotate(-135deg);
  transform: rotate(-135deg);
  -moz-transform: rotate(-135deg);
  -o-transform: rotate(-135deg);
}

.nice-select.open .list {
  opacity: 1;
  z-index: 10;
  pointer-events: auto;
  -webkit-transform: scale(1) translateY(0);
  -ms-transform: scale(1) translateY(0);
  transform: scale(1) translateY(0);
  width: 100%;
  -moz-transform: scale(1) translateY(0);
  -o-transform: scale(1) translateY(0);
}

.nice-select.disabled {
  border-color: #ededed;
  color: #999;
  pointer-events: none;
}

.nice-select.disabled:after {
  border-color: #cccccc;
}

.nice-select.wide {
  width: 100%;
}

.nice-select.wide .list {
  left: 0 !important;
  right: 0 !important;
}

.nice-select.right {
  float: right;
}

.nice-select.right .list {
  left: auto;
  right: 0;
}

.nice-select.small {
  font-size: 12px;
  height: 36px;
  line-height: 34px;
}

.nice-select.small:after {
  height: 4px;
  width: 4px;
}

.nice-select.small .option {
  line-height: 34px;
  min-height: 34px;
}

.nice-select .list {
  background-color: var(--white);
  border-radius: 5px;
  box-shadow: 0 0 0 1px rgba(68, 68, 68, 0.11);
  box-sizing: border-box;
  margin-top: 4px;
  opacity: 0;
  overflow: hidden;
  padding: 0;
  pointer-events: none;
  position: absolute;
  top: 100%;
  left: 0;
  -webkit-transform-origin: 50% 0;
  -ms-transform-origin: 50% 0;
  transform-origin: 50% 0;
  -webkit-transform: scale(0.75) translateY(-21px);
  -ms-transform: scale(0.75) translateY(-21px);
  transform: scale(0.75) translateY(-21px);
  -webkit-transition: all 0.2s cubic-bezier(0.5, 0, 0, 1.25),
    opacity 0.15s ease-out;
  transition: all 0.2s cubic-bezier(0.5, 0, 0, 1.25), opacity 0.15s ease-out;
  z-index: 9;
  width: 100%;
  font-size: 14px;
  max-height: 155px;
  overflow: auto;
}

.nice-select .list.style {
  max-height: unset;
}

.nice-select .list::-webkit-scrollbar-track {
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
  background-color: #f5f5f5;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
}

.nice-select .list::-webkit-scrollbar-thumb {
  background-color: #a7a7a7;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
}

.nice-select .list::-webkit-scrollbar {
  width: 6px;
  height: 4px;
  background-color: #f5f5f5;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
}

.nice-select .option {
  cursor: pointer;
  font-weight: 500;
  line-height: 40px;
  list-style: none;
  min-height: 40px;
  outline: none;
  padding-left: 18px;
  padding-right: 29px;
  font-size: 16px;
  text-align: left;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  color: var(--main);
}

.nice-select .option:hover,
.nice-select .option.focus,
.nice-select .option.selected.focus {
  background-color: var(--white);
  color: var(--primary);
}

.nice-select .option.selected {
  font-weight: 600;
}

.nice-select .option.disabled {
  color: var(--main);
  cursor: default;
}

.no-csspointerevents .nice-select .list {
  display: none;
}

.no-csspointerevents .nice-select.open .list {
  display: block;
}

.image-select.style-default {
  width: unset !important;
  display: flex;
}

.image-select.style-default>select {
  display: none !important;
}

.image-select.style-default>.dropdown-toggle {
  padding: 0;
  padding-right: 20px;
  background-color: transparent !important;
  border: 0 !important;
  outline: none !important;
  color: var(--main);
}

.image-select.style-default>.dropdown-toggle::after {
  border: 0;
  position: absolute;
  right: 0;
  content: "\e935";
  font-family: "icomoon";
  font-size: 12px;
  color: var(--main);
}

.image-select.style-default .filter-option-inner-inner {
  display: flex;
  align-items: center;
  justify-content: start;
  gap: 8px;
  font-weight: 400;
  font-size: 14px;
  line-height: 22px;
}

.image-select.style-default .filter-option-inner-inner img {
  width: 20px;
  height: 15px;
}

.image-select.style-default>.dropdown-menu {
  overflow: unset !important;
  margin-top: 17px !important;
  margin-bottom: 17px !important;
  padding: 15px 20px;
  border-radius: 0;
  border: 0;
  background-color: var(--white);
  box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 18px 0px;
}

.image-select.style-default>.dropdown-menu a {
  padding: 5px 0;
}

.image-select.style-default>.dropdown-menu a .text {
  display: flex;
  align-items: center;
  justify-content: start;
  gap: 5px;
  font-weight: 400;
  font-size: 14px;
  line-height: 16px;
}

.image-select.style-default>.dropdown-menu a .text img {
  width: 16px;
  height: 12px;
}

.image-select.style-default>.dropdown-menu a:hover,
.image-select.style-default>.dropdown-menu a:active,
.image-select.style-default>.dropdown-menu a.active {
  color: var(--primary) !important;
  background-color: unset !important;
}

.image-select.style-default>.dropdown-menu::after {
  position: absolute;
  content: "";
  width: 16px;
  height: 16px;
  transform: translate(-50%, -50%) rotate(45deg);
  background-color: var(--white);
  top: 0;
  left: 50%;
  z-index: 2;
}

.image-select.style-default>.dropdown-menu[data-popper-placement="top-start"]::after {
  display: none;
}

.image-select.style-default>.dropdown-menu[data-popper-placement="top-start"]::before {
  position: absolute;
  content: "";
  width: 16px;
  height: 16px;
  transform: translate(-50%, 50%) rotate(45deg);
  background-color: var(--white);
  bottom: 0%;
  left: 50%;
  z-index: 2;
}

.image-select.type-currencies>.dropdown-menu {
  width: 120px !important;
}

.image-select.type-languages>.dropdown-menu {
  width: 96px !important;
}

.image-select.color-secondary-2>.dropdown-toggle {
  color: var(--secondary-2);
}

.image-select.color-secondary-2>.dropdown-toggle::after {
  color: var(--secondary-2);
}

.image-select.color-secondary-2>.dropdown-toggle .filter-option .filter-option-inner {
  color: var(--secondary-2);
}

.image-select.color-white>.dropdown-toggle {
  color: var(--white);
}

.image-select.color-white>.dropdown-toggle::after {
  color: var(--white);
}

.image-select.color-white>.dropdown-toggle .filter-option .filter-option-inner {
  color: var(--white);
}

/*------------ carousel ---------------- */
.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0px;
}

.sw-auto .swiper-wrapper {
  align-items: center;
}

.sw-auto .swiper-slide {
  width: auto;
  transition-timing-function: linear;
}

.sw-dots {
  display: flex;
  gap: 8px;
}

.sw-dots.type-circle .swiper-pagination-bullet {
  position: relative;
  width: 20px;
  height: 20px;
  background-color: transparent;
  border: 1px solid transparent;
  opacity: 1;
}

.sw-dots.type-circle .swiper-pagination-bullet::after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: "";
  width: 8px;
  height: 8px;
  background-color: transparent;
  border-radius: 50%;
  border: 1px solid var(--main);
  opacity: 1;
}

.sw-dots.type-circle .swiper-pagination-bullet.swiper-pagination-bullet-active {
  border: 1px solid var(--main);
}

.sw-dots.type-circle .swiper-pagination-bullet.swiper-pagination-bullet-active::after {
  background-color: var(--main);
}

.sw-dots.white-circle .swiper-pagination-bullet::after {
  background-color: var(--white);
  border-color: var(--white);
}

.sw-dots.white-circle .swiper-pagination-bullet.swiper-pagination-bullet-active {
  border: 1px solid var(--white);
}

.sw-dots.white-circle .swiper-pagination-bullet.swiper-pagination-bullet-active::after {
  background-color: var(--white);
}

.sw-dots.white-circle-line .swiper-pagination-bullet::after {
  border-color: var(--white);
}

.sw-dots.white-circle-line .swiper-pagination-bullet.swiper-pagination-bullet-active {
  border: 1px solid var(--white);
}

.sw-dots.white-circle-line .swiper-pagination-bullet.swiper-pagination-bullet-active::after {
  background-color: var(--white);
}

.sw-dots.type-square .swiper-pagination-bullet {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  width: 24px;
  height: 4px;
  border-radius: 99px;
  background-color: var(--main);
  opacity: 0.3;
}

.sw-dots.type-square .swiper-pagination-bullet.swiper-pagination-bullet-active {
  width: 40px;
  opacity: 1;
}

.sw-dots.white-square .swiper-pagination-bullet {
  background-color: var(--white);
}

.sw-dots:not(.swiper-pagination-lock) {
  margin-top: 20px;
}

.nav-sw {
  background-color: var(--white);
  border-radius: 999px;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border: 1px solid var(--secondary);
  color: var(--main);
  cursor: pointer;
}

.nav-sw .icon {
  font-size: 18px;
}

.nav-sw:hover {
  background-color: var(--main);
  border-color: var(--main);
  color: var(--white);
}

.nav-sw.lg {
  width: 40px;
  height: 40px;
  border-color: transparent;
}

.nav-sw.lg .icon {
  font-size: 20px;
}

.nav-sw.swiper-button-disabled {
  background-color: rgba(0, 0, 0, 0.2);
  color: var(--main);
  border-color: transparent;
  cursor: text;
}

.slider-auto-vertical .swiper-slide {
  height: max-content !important;
}

.layout-sw-center {
  overflow: hidden;
}

.swiper .sec-btn {
  margin-top: 20px;
}

.flat-sw-navigation {
  position: relative;
}

.flat-sw-navigation .nav-sw {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}

.flat-sw-navigation .nav-sw.nav-sw-left {
  left: 20px;
}

.flat-sw-navigation .nav-sw.nav-sw-right {
  right: 20px;
}

.flat-sw-pagination {
  position: relative;
}

.flat-sw-pagination .sw-dots {
  position: absolute;
  margin-top: 0;
  z-index: 10;
  bottom: 20px;
}

/*------------ avatar ---------------- */
.avatar.round {
  border-radius: 50%;
  overflow: hidden;
}

.avatar img {
  width: 100%;
  min-width: 100%;
  height: 100%;
  object-fit: cover;
}

.avt-40 {
  width: 40px;
  min-width: 40px;
  height: 40px;
}

.avt-56 {
  width: 56px;
  min-width: 56px;
  height: 56px;
}

.avt-60 {
  width: 60px;
  min-width: 60px;
  height: 60px;
}

.avt-100 {
  width: 100px;
  min-width: 100px;
  height: 100px;
}

/*------------ pop up ---------------- */
/* ===== MOBILE CANVAS/OFFCANVAS BASE ===== */
.offcanvas {
  z-index: 3000;
  border: none !important;
}

.offcanvas .icon-close-popup {
  transition: all 0.3s ease;
  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;
  color: var(--main);
}

.offcanvas .icon-close-popup:hover {
  color: var(--primary);
  transform: rotate(90deg);
}

.offcanvas-backdrop {
  background-color: rgba(0, 0, 0, 0.5);
  cursor: pointer;
}

.offcanvas-backdrop.show {
  opacity: 1;
}

/* Mobile Canvas */
.canvas-mb {
  width: 100% !important;
  max-width: min(90%, 320px);
  border-right: 0 !important;
}

.canvas-mb .mb-canvas-content {
  padding-top: 60px;
  min-width: 100%;
  max-width: min(90%, 320px);
  height: 100%;
  width: 100%;
  display: grid;
  align-content: start;
}

.canvas-mb .mb-body {
  padding-right: 20px;
  padding-left: 20px;
  padding-bottom: 20px;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.canvas-mb .mb-body::-webkit-scrollbar {
  width: 5px;
}

.canvas-mb .mb-body::-webkit-scrollbar-thumb {
  background: var(--secondary-2);
  border-radius: 4px;
}

/* Navigation Items */
.nav-ul-mb {
  list-style: none;
  margin: 0;
  padding: 0;
}

.nav-ul-mb .nav-mb-item {
  padding: 2px 0;
}

.nav-ul-mb .nav-mb-item:not(:last-child) {
  border-bottom: 1px solid var(--line);
}

.nav-ul-mb .nav-mb-item .mb-menu-link {
  min-height: 48px;
  font-weight: 500;
  font-size: 16px;
  line-height: 24px;
  color: var(--main);
  display: flex;
  align-items: center;
  justify-content: space-between;
  text-decoration: none;
  padding: 8px 0;
  transition: all 0.3s ease;
}

.nav-ul-mb .nav-mb-item .mb-menu-link:hover {
  color: var(--primary);
}

.nav-ul-mb .nav-mb-item.active .mb-menu-link {
  font-weight: 600;
  color: var(--primary);
}

/* Open/Close Button */
.nav-ul-mb .btn-open-sub {
  position: relative;
  width: 20px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.nav-ul-mb .btn-open-sub::after,
.nav-ul-mb .btn-open-sub::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: var(--main);
  transition: 0.4s ease 0.1s;
  margin: auto;
}

.nav-ul-mb .btn-open-sub::before {
  width: 2px;
  height: 12px;
}

.nav-ul-mb .btn-open-sub::after {
  width: 12px;
  height: 2px;
}

.nav-ul-mb .mb-menu-link:not(.collapsed) .btn-open-sub::before {
  transform: rotate(90deg);
}

/* Sub Menu */
.nav-ul-mb .sub-nav-menu {
  padding-left: 10px;
  margin-bottom: 15px;
  list-style: none;
}

.nav-ul-mb .sub-menu-level-2 {
  margin-bottom: 5px;
  padding-left: 15px;
}

.nav-ul-mb .sub-nav-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 36px;
  line-height: 36px;
  font-size: 14px;
  color: var(--secondary);
  text-decoration: none;
  padding: 4px 0;
  transition: all 0.3s ease;
}

.nav-ul-mb .sub-nav-link:hover {
  color: var(--primary);
  padding-left: 5px;
}

.nav-ul-mb .sub-nav-link.active {
  font-weight: 600;
  color: var(--primary);
}

.nav-ul-mb .sub-nav-link:not(.collapsed) .btn-open-sub::before {
  transform: rotate(90deg);
}

.nav-ul-mb .sub-nav-link .btn-open-sub::after,
.nav-ul-mb .sub-nav-link .btn-open-sub::before {
  background-color: var(--secondary);
}

/* Social Icons in Follow Us */
.nav-ul-mb .sub-nav-link i {
  margin-right: 8px;
  font-size: 16px;
  min-width: 20px;
}

/* Other Content Section */
.mb-other-content {
  margin-top: 30px;
  padding-top: 20px;
  border-top: 1px solid var(--line);
}

.mb-other-content .text-need {
  font-weight: 600;
  margin-bottom: 12px;
  font-size: 16px;
  line-height: 24px;
  color: var(--main);
}

.mb-other-content .mb-contact {
  margin-bottom: 20px;
}

.mb-other-content .text-caption-1 {
  font-size: 13px;
  line-height: 1.6;
  color: var(--secondary);
  margin-bottom: 15px;
}

.mb-other-content .mb-info {
  list-style: none;
  padding: 0;
  margin: 0;
}

.mb-other-content .mb-info li {
  font-size: 14px;
  line-height: 22px;
  display: flex;
  align-items: flex-start;
  margin-bottom: 12px;
  color: var(--secondary);
}

.mb-other-content .mb-info li .icon {
  font-size: 18px;
  margin-right: 12px;
  margin-top: 2px;
  color: var(--primary);
  min-width: 20px;
}

.mb-other-content .mb-info li p {
  margin: 0;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

/* ===== RESPONSIVE BREAKPOINTS ===== */

/* Tablets Portrait (768px - 991px) */
@media (max-width: 991px) {
  .canvas-mb {
    max-width: min(85%, 340px);
  }
}

/* Mobile Landscape (576px - 767px) */
@media (max-width: 767px) {
  .canvas-mb {
    max-width: min(90%, 320px);
  }

  .nav-ul-mb .nav-mb-item .mb-menu-link {
    font-size: 15px;
    min-height: 46px;
  }

  .nav-ul-mb .sub-nav-link {
    font-size: 13px;
    min-height: 34px;
  }
}

/* Mobile Portrait (480px - 575px) */
@media (max-width: 575px) {
  .canvas-mb {
    max-width: min(90%, 300px);
  }

  .canvas-mb .mb-body {
    padding-right: 15px;
    padding-left: 15px;
  }

  .nav-ul-mb .nav-mb-item .mb-menu-link {
    font-size: 15px;
    min-height: 44px;
  }

  .nav-ul-mb .sub-nav-link {
    font-size: 13px;
    min-height: 32px;
  }

  .mb-other-content .text-need {
    font-size: 15px;
  }

  .mb-other-content .mb-info li {
    font-size: 13px;
  }

  .mb-other-content .text-caption-1 {
    font-size: 12px;
  }
}

/* Small Mobile (375px - 479px) */
@media (max-width: 479px) {
  .canvas-mb {
    max-width: min(92%, 280px);
  }

  .canvas-mb .icon-close-popup {
    top: 15px;
    left: 12px;
    height: 28px;
    width: 28px;
    font-size: 14px;
  }

  .canvas-mb .mb-canvas-content {
    padding-top: 55px;
  }

  .canvas-mb .mb-body {
    padding-right: 12px;
    padding-left: 12px;
  }

  .nav-ul-mb .nav-mb-item .mb-menu-link {
    font-size: 14px;
    min-height: 42px;
  }

  .nav-ul-mb .sub-nav-link {
    font-size: 12px;
    min-height: 30px;
  }

  .nav-ul-mb .sub-nav-link i {
    font-size: 14px;
    min-width: 18px;
  }

  .mb-other-content {
    margin-top: 25px;
    padding-top: 15px;
  }

  .mb-other-content .text-need {
    font-size: 14px;
    margin-bottom: 10px;
  }

  .mb-other-content .mb-info li {
    font-size: 12px;
  }

  .mb-other-content .mb-info li .icon {
    font-size: 16px;
  }
}

/* Extra Small Mobile (320px - 374px) */
@media (max-width: 374px) {
  .canvas-mb {
    max-width: min(95%, 260px);
  }

  .canvas-mb .mb-body {
    padding-right: 10px;
    padding-left: 10px;
  }

  .nav-ul-mb .nav-mb-item .mb-menu-link {
    font-size: 13px;
    min-height: 40px;
  }

  .nav-ul-mb .sub-nav-link {
    font-size: 12px;
    min-height: 28px;
  }

  .nav-ul-mb .btn-open-sub {
    width: 18px;
    height: 26px;
  }

  .nav-ul-mb .btn-open-sub::before {
    height: 10px;
  }

  .nav-ul-mb .btn-open-sub::after {
    width: 10px;
  }

  .mb-other-content .text-caption-1 {
    font-size: 11px;
  }

  .mb-other-content .mb-info li {
    font-size: 11px;
  }

  .mb-other-content .text-need {
    font-size: 13px;
  }
}

/* Extra Small Mobile (below 320px) */
@media (max-width: 319px) {
  .canvas-mb {
    max-width: 95%;
  }

  .nav-ul-mb .nav-mb-item .mb-menu-link {
    font-size: 12px;
    min-height: 38px;
  }

  .nav-ul-mb .sub-nav-link {
    font-size: 11px;
  }
}

/* Landscape Orientation for Mobile */
@media (max-height: 500px) and (orientation: landscape) {
  .canvas-mb .mb-canvas-content {
    padding-top: 50px;
  }

  .canvas-mb .icon-close-popup {
    top: 12px;
  }

  .nav-ul-mb .nav-mb-item .mb-menu-link {
    min-height: 40px;
    font-size: 14px;
  }

  .nav-ul-mb .sub-nav-link {
    min-height: 30px;
    font-size: 12px;
  }

  .mb-other-content {
    margin-top: 20px;
    padding-top: 15px;
  }
}

/* iOS Safari Specific Fixes */
@supports (-webkit-touch-callout: none) {
  .canvas-mb .mb-body {
    -webkit-overflow-scrolling: touch;
  }
}

/* ---services------ */

.services-section {
  padding: 80px 0;
  background-color: #f7f7f7;
  text-align: center;
}

.services-section .section-title {
  font-size: 32px;
  font-weight: bold;
  margin-bottom: 30px;
}

.services-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 30px;
  justify-content: center;
}

.service-image {
  width: 80px;
  /* Adjust size as needed */
  height: 80px;
  /* Adjust size as needed */
  margin-bottom: 20px;
  /* Space between image and title */
  object-fit: contain;
  /* Ensures the image fits within the dimensions */
}

.services-section-abstract {
  padding: 140px 0;
  background-color: #dfd3cb;
  text-align: center;
  position: relative;
  overflow: hidden;
}

/* Background Pattern - move it to the back */
.services-section-abstract::before,
.services-section-abstract::after {
  content: "";
  position: absolute;
  width: 300px;
  height: 300px;
  border-radius: 30% 70% 70% 30% / 30% 30% 70% 70%;
  background-color: #84625c;
  opacity: 0.6;
  z-index: 0;
  /* Ensure background stays behind */
}

.services-section-abstract::before {
  top: -100px;
  left: -100px;
  animation: float 10s infinite ease-in-out;
}

.services-section-abstract::after {
  bottom: -100px;
  right: -100px;
  animation: float 12s infinite ease-in-out reverse;
}

@keyframes float {

  0%,
  100% {
    transform: translate(0, 0) rotate(0deg);
  }

  25% {
    transform: translate(10px, 10px) rotate(5deg);
  }

  50% {
    transform: translate(0, 20px) rotate(0deg);
  }

  75% {
    transform: translate(-10px, 10px) rotate(-5deg);
  }
}

/* Service Card */
.service-card {
  background-color: #ffffff;
  padding: 30px;
  border-radius: 12px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
  text-align: center;
  position: relative;
  overflow: hidden;
  z-index: 2;
}

/* Create overlay layer */
.service-card::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background-color: #84625c;
  /* Brown color - you can change this */
  transform-origin: right;
  transform: perspective(600px) rotateY(-90deg);
  transition: all 0.6s ease;
  z-index: 1;
}

.service-card:hover::before {
  transform: perspective(600px) rotateY(0deg);
}

/* Position content */
.service-image,
.service-title,
.service-description,
.service-link {
  position: relative;
  z-index: 2;
  transition: all 0.6s ease;
}

/* Handle text color change on hover */
.service-card:hover .service-title,
.service-card:hover .service-description,
.service-card:hover .service-link {
  color: #ffffff;
}

.service-title {
  font-size: 24px;
  font-weight: 600;
  color: #181818;
  /* Dark text color */
  margin-bottom: 15px;
}

.service-description {
  font-size: 16px;
  color: #4d4e4f;
  /* Secondary text color */
  line-height: 1.6;
  margin-bottom: 20px;
}

.service-link {
  font-size: 16px;
  color: #e43131;
  /* Primary color for links */
  text-decoration: none;
  font-weight: 600;
  transition: color 0.3s ease;
}

.service-link:hover {
  color: #181818;
  /* Dark text color on hover */
}

.service-item {
  background: white;
  padding: 20px;
  border-radius: 8px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease-in-out;
}

.service-item:hover {
  transform: translateY(-5px);
}

.service-item .icon {
  font-size: 40px;
  color: #007bff;
  margin-bottom: 15px;
}

/*------------ box icon ---------------- */
.box-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  cursor: pointer;
}

.tf-social-icon {
  --facebook-cl: rgb(59, 89, 152);
  --twitter-cl: rgb(85, 85, 85);
  --instagram-cl: linear-gradient(#8a3ab9, #e95950, #fccc63);
  --threads-cl: rgb(224, 53, 102);
  --youtube-cl: rgb(205, 32, 31);
  --tiktok-cl: linear-gradient(#25f4ee, #000, #fe2c55);
  --tiktok-cl2: rgb(254, 44, 85);
  --pinterest-cl: rgb(203, 32, 39);
  --tumblr-cl: rgb(55, 69, 92);
  --vimeo-cl: rgb(26, 183, 234);
  --snapchat-cl: rgb(255, 221, 0);
  --whatsapp-cl: rgb(0, 230, 118);
  --linked_in-cl: rgb(23, 106, 255);
  --wechat-cl: rgb(26, 173, 24);
  --reddit-cl: rgb(255, 69, 0);
  --line-cl: rgb(0, 195, 77);
  --spotify-cl: rgb(30, 125, 96);
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.tf-social-icon .social-facebook:hover {
  background: var(--facebook-cl);
  color: var(--white);
  border: none;
}

.tf-social-icon .social-twiter:hover {
  background: var(--twitter-cl);
  color: var(--white);
  border: none;
}

.tf-social-icon .social-instagram:hover {
  background: var(--instagram-cl);
  color: var(--white);
  border: none;
}

.tf-social-icon .social-tiktok:hover {
  background: var(--tiktok-cl);
  color: var(--white);
  border: none;
}

.tf-social-icon .social-pinterest:hover {
  background: var(--pinterest-cl);
  color: var(--white);
  border: none;
}

.tf-social-icon .social-amazon:hover {
  background: var(--main);
  color: var(--white);
  border: none;
}

.tf-social-icon .social-youtube:hover {
  background: var(--youtube-cl);
  color: var(--white);
  border: none;
}

.tf-social-icon a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  font-size: 20px;
  color: var(--main);
  border: 1px solid var(--main);
  border-radius: 50%;
}

.tf-social-icon.style-white a {
  color: var(--white);
  border-color: var(--white);
}

.tf-social-icon.style-fill a {
  background-color: var(--line);
  width: 32px;
  height: 32px;
  border: none;
}

.tf-social-icon.style-1 a {
  background-color: var(--surface);
  width: 40px;
  height: 40px;
  font-size: 16px;
  border-color: transparent;
}

.tf-social-icon.style-2 a {
  width: 40px;
  height: 40px;
  border: 0;
  color: var(--main);
  background-color: var(--white);
  font-size: 18px;
}

.tf-social-icon.style-default {
  gap: 8px;
}

.tf-social-icon.style-default a {
  border: 0;
  font-size: 15px;
}

.tf-icon-box {
  display: flex;
  flex-direction: column;
  gap: 20px;
  align-items: center;
}

.tf-icon-box .icon-box {
  font-size: 40px;
}

.tf-icon-box .content {
  display: grid;
  gap: 8px;
}

.tf-icon-box.style-2 {
  flex-direction: row;
  align-items: flex-start;
  justify-content: center;
  gap: 12px;
}

.tf-icon-box.style-2 .icon-box {
  flex-shrink: 0;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  border: 1px solid var(--line);
  display: flex;
  align-items: center;
  justify-content: center;
}

/*------------ hover ---------------- */
.hover-img .img-style {
  overflow: hidden;
}

.hover-img .img-style>img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  -webkit-transition: opacity 0.5s ease,
    transform 2s cubic-bezier(0, 0, 0.44, 1.18);
  transition: opacity 0.5s ease, transform 2s cubic-bezier(0, 0, 0.44, 1.18);
}

.hover-img:hover .img-style>img {
  -webkit-transform: scale(1.06);
  transform: scale(1.06);
}

.hover-img .img-style2 {
  overflow: hidden;
  border-radius: 10px;
}

.hover-img .img-style2 .img-hv {
  width: 100%;
  object-fit: cover;
  -webkit-transition: all 1s cubic-bezier(0.3, 1, 0.35, 1) 0s;
  transition: all 1s cubic-bezier(0.3, 1, 0.35, 1) 0s;
  transition: transform 500ms ease;
}

.hover-img2 .img-style2 {
  overflow: hidden;
  border-radius: 8px;
}

.hover-img2 .img-style2 .img2 {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.hover-img2:hover .img2 {
  transform: scale(1.1) rotate(3deg);
}

.hover-img3 .img-style3 {
  border-radius: 8px;
  overflow: hidden;
}

.hover-img3 .img-style3 img {
  width: 100%;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.hover-img3:hover img {
  transform: scale(1.075);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.pagi2 .swiper-pagination2:hover .box-img .icon-practice,
.swiper-button-next2:hover .box-img .icon-practice,
.swiper-button-prev2:hover .box-img .icon-practice,
.hv-one:hover .box-img .icon-practice {
  opacity: 1;
  z-index: 99;
  top: 50%;
  transition-delay: 0.5s;
}

.pagi2 .swiper-pagination2:hover .img-style::before,
.swiper-button-next2:hover .img-style::before,
.swiper-button-prev2:hover .img-style::before,
.hv-one:hover .img-style::before {
  opacity: 1;
}

.pagi2 .swiper-pagination2 .img-style,
.swiper-button-next2 .img-style,
.swiper-button-prev2 .img-style,
.hv-one .img-style {
  border-radius: 10px;
  overflow: hidden;
}

.pagi2 .swiper-pagination2 .img-style::before,
.swiper-button-next2 .img-style::before,
.swiper-button-prev2 .img-style::before,
.hv-one .img-style::before {
  content: "";
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  position: absolute;
  background: rgba(0, 0, 0, 0.5019607843);
  width: 100%;
  height: 100%;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
  z-index: 99;
  opacity: 0;
  border-radius: 10px;
}

.pagi2 .swiper-pagination2 .img-style.s-one::before,
.swiper-button-next2 .img-style.s-one::before,
.swiper-button-prev2 .img-style.s-one::before,
.hv-one .img-style.s-one::before {
  border-radius: 50%;
}

.hv-one2:hover .img-style2::before {
  opacity: 1;
  visibility: visible;
}

.hv-one2 .img-style2::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  -webkit-transition: all 0.4s ease-out 0s;
  -moz-transition: all 0.4s ease-out 0s;
  -ms-transition: all 0.4s ease-out 0s;
  -o-transition: all 0.4s ease-out 0s;
  transition: all 0.4s ease-out 0s;
  opacity: 0;
  visibility: hidden;
  background: rgba(0, 0, 0, 0.5);
  z-index: 1;
  border-radius: 10px;
}

.hv-tool {
  position: relative;
  transition: all 0.3s ease;
}

.hover-tooltip {
  position: relative;
}

.hover-tooltip .tooltip {
  position: absolute;
  white-space: nowrap;
  padding: 0px 8.5px;
  height: 25px;
  border-radius: 2px;
  bottom: calc(100% + 7px);
  left: 50%;
  transform: translateX(-50%);
  opacity: 0;
  visibility: hidden;
  color: var(--white);
  max-width: 250px;
  width: max-content;
  background-color: var(--main);
  transition: transform 0.4s ease 0.2s, opacity 0.4s ease 0.2s;
  z-index: 5;
  font-size: 12px;
  line-height: 22px;
}

.hover-tooltip .tooltip::before {
  content: "";
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
  top: 20px;
  position: absolute;
  background: var(--main);
  width: 8px;
  height: 8px;
  z-index: -1;
}

.hover-tooltip:hover .tooltip {
  opacity: 1;
  visibility: visible;
}

.hover-tooltip.tooltip-bot .tooltip {
  top: calc(100% + 5px);
  bottom: unset;
}

.hover-tooltip.tooltip-bot .tooltip::before {
  top: -2px;
}

.hover-overlay {
  position: relative;
}

.hover-overlay::before {
  position: absolute;
  z-index: 2;
  content: "";
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.1);
  top: 0;
  left: 0;
  transition: 0.4s ease 0.1s;
  opacity: 0;
  visibility: hidden;
}

.hover-overlay:hover::before {
  opacity: 1;
  visibility: visible;
}

/*------------ collection ---------------- */
.collection-default {
  display: grid;
  gap: 20px;
}

.collection-default .img-style {
  display: block;
  width: 100%;
  height: 100%;
}

.collection-default .img-style img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.collection-default .content {
  gap: 8px;
  display: grid;
}

.collection-position {
  position: relative;
}

.collection-position .img-style {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 10px 10px 0 0;
}

.collection-position .img-style img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.collection-position .content {
  display: grid;
  gap: 8px;
  position: absolute;
  top: 50%;
  left: 15px;
  right: 15px;
  transform: translateY(-50%);
  text-align: center;
  padding: 20px;
  background: var(--white);
  /* Use your theme color */
  border-radius: 0 0 10px 10px;
}

.collection-position.radius {
  border-radius: 20px;
  overflow: hidden;
}

.collection-position.style-1 {
  border-radius: 12px;
  overflow: hidden;
}

.collection-position.style-1 .content {
  bottom: 36px;
  left: 40px;
  top: unset;
  transform: none;
  text-align: start;
}

/* .tf-sw-collection .swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
} */

/* Swiper Container */
.tf-sw-collection {
  overflow: hidden;
  position: relative;
  padding: 20px 0;
  /* Add padding for spacing */
}

.collection-position-2 {
  position: relative;
  border-radius: 50px;
  overflow: hidden;
  background: var(--surface);
  width: 100%;
  margin: 0 auto;
  height: 400px;
}

.collection-position-2 .title {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 10px;
  color: var(--main);
  /* Use your theme color */
}

.collection-position-2 .text-title {
  font-size: 14px;
  color: var(--secondary);
  /* Use your theme color */
}

.tf-sw-collection .swiper-wrapper {
  display: flex;
  align-items: center;
  gap: -15px;
  /* Use gap for consistent spacing */
}

.tf-sw-collection .swiper-slide {
  width: calc(33.33% - 10px);
  /* Adjust width to fit 3 items with spacing */
  margin-right: 10px;
  /* Add spacing between slides */
  flex-shrink: 0;
  /* Prevent slides from shrinking */
}

/* ------------new collection slider--------------------------- */
.angel-services-container {
  /* background-color: #dfd3cb; */
  padding: 110px 20px;
  position: relative;
  overflow: hidden;
  font-family: "Poppins", sans-serif;
  padding-bottom: 150px;
}

/* Heading Section */
.heading-section {
  margin-bottom: 40px;
  position: relative;
  z-index: 2;
}

.heading-section .heading {
  color: #181818;
  font-size: 32px;
  font-weight: 700;
  margin-bottom: 10px;
}

.heading-section .subheading {
  color: #181818;
  font-size: 16px;
}

/* Services Wrapper */
.angel-services-wrapper {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
  z-index: 2;
}

/* Carousel Container */
.angel-services-carousel-container {
  overflow: hidden;
  padding: 0 10px;
}

/* Services Carousel */
.angel-services-carousel {
  display: flex;
  transition: transform 0.5s ease;
  gap: 25px;
  cursor: grab;
  user-select: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  touch-action: pan-y pinch-zoom;
}

.angel-services-carousel.dragging {
  cursor: grabbing;
  transition: none;
}

/* Service Item */
.angel-service-item {
  border-radius: 12px;
  overflow: hidden;
  position: relative;
  background-color: white;
  height: 400px;
  flex: 0 0 calc(33.333% - 17px);
  transition: transform 0.3s;
  border: 1px solid rgba(0, 0, 0, 0.25);
  pointer-events: auto;
}

.angel-service-item:hover {
  transform: translateY(0px);
}

.service-image-wrapper {
  height: 100%;
  width: 100%;
  position: relative;
}

.service-image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s;
  pointer-events: none;
  user-select: none;
  -webkit-user-drag: none;
  -webkit-touch-callout: none;
}

.angel-service-item:hover .service-image-wrapper img {
  transform: scale(1.2);
}

.service-content {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 15px 25px;
  background: linear-gradient(to top,
      rgba(132, 98, 92, 1) 40%,
      rgba(47, 212, 220, 0) 100%);
  color: white;
  z-index: 3;
}

.service-tag {
  display: inline-block;
  background-color: #84625c;
  color: white;
  font-size: 12px;
  padding: 4px 10px;
  margin-bottom: 10px;
  border-radius: 4px;
  text-transform: uppercase;
  font-weight: 600;
}

.service-title {
  color: #181818;
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 5px;
  text-transform: uppercase;
}

/* Cursor pointer and clickable links */
.service-title a {
  color: white;
  text-decoration: none;
  transition: color 0.3s ease;
  cursor: pointer;
  pointer-events: auto !important;
  position: relative;
  z-index: 5;
  display: inline-block;
}

.service-title a:hover {
  color: #f0f0f0;
}

.service-duration {
  color: #f0f0f0;
  font-size: 14px;
}

.service-subtitle {
  pointer-events: auto;
}

/* Style for view more/less toggle */
.view-more-inline {
  color: #fff;
  font-weight: 600;
  cursor: pointer;
  text-decoration: underline;
  transition: color 0.3s ease;
  pointer-events: auto !important;
  position: relative;
  z-index: 5;
}

.view-more-inline:hover {
  color: #fff;
  text-decoration: underline;
}

/* Important: Keep all interactive elements clickable */
.angel-service-item a,
.angel-service-item button {
  pointer-events: auto !important;
  cursor: pointer;
  position: relative;
  z-index: 5;
}

/* Only disable pointer events while actively dragging */
.angel-services-carousel.dragging * {
  pointer-events: none !important;
}

.angel-services-carousel.dragging .angel-service-item {
  pointer-events: none !important;
}

/* Re-enable after drag ends */
.angel-services-carousel:not(.dragging) .angel-service-item a {
  pointer-events: auto !important;
}

.angel-services-carousel:not(.dragging) .view-more-inline {
  pointer-events: auto !important;
}

/* Navigation Buttons */
.angel-nav-button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 45px;
  height: 45px;
  border-radius: 50%;
  background-color: white;
  border: 1px solid #000000;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 10;
  transition: all 0.3s ease;
  font-size: 28px;
  padding: 25px 25px;
  color: #333;
}

.angel-nav-button:hover {
  background-color: #84625c;
  color: white;
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}

.prev-button {
  left: -25px;
}

.next-button {
  right: -25px;
}

.angel-nav-button.disabled {
  opacity: 0.3;
  cursor: not-allowed;
  pointer-events: none;
}

/* White Light Beam Hover Effect */
.angel-service-item .service-image-wrapper {
  position: relative;
  overflow: hidden;
}

/* Light beam effect overlay */
.service-image-wrapper::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  background: rgba(255, 255, 255, 0.3);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  z-index: 2;
  pointer-events: none;
  transition: all 0s;
}

/* Create the light beam effect when hovering */
.angel-service-item:hover .service-image-wrapper::before {
  animation: lightBeam 1s ease-out forwards;
}

@keyframes lightBeam {
  0% {
    width: 0;
    height: 0;
    opacity: 0;
  }

  20% {
    opacity: 0.8;
  }

  100% {
    width: 300%;
    height: 300%;
    opacity: 0;
  }
}

.section-pill {
  display: inline-flex;
  align-items: center;
  gap: 20px;
  padding: 10px 48px;
  min-width: 400px;
  justify-content: center;
  border-radius: 999px;
  background: linear-gradient(135deg, #ca9595, #674843);
  box-shadow: 0 4px 10px rgba(108, 78, 255, 0.2);
  font-weight: 700;
  font-size: 16px;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #fff;
  margin: 0 auto 40px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  cursor: default;
  transition: all 0.3s ease;
}

.section-pill:hover {
  box-shadow: 0 6px 16px rgba(108, 78, 255, 0.3);
  transform: translateX(-50%) scale(1.03);
}

/* animated dots */
.dots {
  display: inline-flex;
  gap: 4px;
}

.dots span {
  width: 6px;
  height: 6px;
  background: #fff;
  border-radius: 50%;
  display: inline-block;
  animation: pulseDot 1.8s infinite;
}

/* each dot starts later */
.dots span:nth-child(2) {
  animation-delay: 0.6s;
}

.dots span:nth-child(3) {
  animation-delay: 1.2s;
}

@keyframes pulseDot {

  0%,
  80%,
  100% {
    transform: scale(1);
    opacity: 0.5;
  }

  40% {
    transform: scale(1.8);
    opacity: 1;
  }
}

/* Large Desktop (1400px and up) */
@media (min-width: 1400px) {
  .angel-services-wrapper {
    max-width: 1400px;
  }

  .angel-service-item {
    height: 420px;
  }

  .angel-services-container {
    padding: 110px 20px 150px;
  }
}

/* Tablet Landscape (992px - 1199px) */
@media (max-width: 1199px) {
  .angel-services-container {
    padding: 100px 20px 130px;
  }

  .heading-section .heading {
    font-size: 30px;
  }

  .heading-section .subheading {
    font-size: 15px;
  }

  .angel-service-item {
    flex: 0 0 calc(50% - 13px);
    height: 380px;
  }

  .service-title {
    font-size: 18px;
  }

  .service-content {
    padding: 12px 20px;
  }

  .angel-nav-button {
    width: 42px;
    height: 42px;
    background-color: rgba(255, 255, 255, 0.95);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
  }

  .prev-button {
    left: -20px;
  }

  .next-button {
    right: -20px;
  }

  .section-pill {
    min-width: 350px;
    padding: 9px 40px;
    font-size: 15px;
  }

  /* Enable swipe for larger tablets */
  .angel-services-carousel {
    cursor: grab;
  }
}

/* Tablet Portrait (768px - 991px) */
@media (max-width: 991px) {
  .angel-services-container {
    padding: 40px 15px 70px;
  }

  .heading-section {
    margin-bottom: 35px;
  }

  .heading-section .heading {
    font-size: 28px;
  }

  .angel-service-item {
    flex: 0 0 calc(50% - 13px);
    height: 350px;
  }

  .service-title {
    font-size: 17px;
  }

  .service-subtitle {
    font-size: 13px;
  }

  .angel-nav-button {
    width: 40px;
    height: 40px;
    font-size: 24px;
    padding: 20px 20px;
    background-color: rgba(255, 255, 255, 0.95);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
  }

  .angel-nav-button:hover {
    background-color: #84625c;
    color: white;
  }

  .prev-button {
    left: -15px;
  }

  .next-button {
    right: -15px;
  }

  .section-pill {
    min-width: 300px;
    padding: 8px 35px;
    font-size: 14px;
    gap: 15px;
  }

  /* Enable swipe for tablets */
  .angel-services-carousel {
    cursor: grab;
    touch-action: pan-y pinch-zoom;
  }

  .angel-services-carousel.dragging {
    cursor: grabbing;
  }
}

/* Mobile Landscape and Portrait (up to 767px) */
@media (max-width: 767px) {
  .angel-services-container {
    padding: 35px 15px 60px;
  }

  .heading-section {
    margin-bottom: 30px;
  }

  .heading-section .heading {
    font-size: 24px;
    margin-bottom: 8px;
  }

  .heading-section .subheading {
    font-size: 14px;
  }

  .angel-services-carousel-container {
    padding: 0 5px;
  }

  .angel-services-carousel {
    gap: 20px;
    cursor: default;
    touch-action: pan-y pinch-zoom;
  }

  .angel-service-item {
    flex: 0 0 100%;
    height: 320px;
    pointer-events: auto;
  }

  .angel-service-item img {
    pointer-events: none;
    user-select: none;
    -webkit-user-drag: none;
    -webkit-touch-callout: none;
  }

  .service-content {
    padding: 12px 18px;
  }

  .service-title {
    font-size: 16px;
    margin-bottom: 4px;
  }

  .service-title a {
    pointer-events: auto !important;
    padding: 5px 0;
    min-height: 35px;
    display: inline-flex;
    align-items: center;
  }

  .service-subtitle {
    font-size: 12px;
    line-height: 1.4;
  }

  .service-tag {
    font-size: 11px;
    padding: 3px 8px;
  }

  .angel-nav-button {
    width: 40px;
    height: 40px;
    font-size: 22px;
    padding: 18px 18px;
    background-color: rgba(255, 255, 255, 0.95);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
    z-index: 20;
    border: 1px solid rgba(0, 0, 0, 0.15);
  }

  .angel-nav-button:hover {
    background-color: #84625c;
    color: white;
    border-color: #84625c;
  }

  .angel-nav-button:active {
    transform: translateY(-50%) scale(0.95);
  }

  .angel-nav-button.disabled {
    opacity: 0.3;
    cursor: not-allowed;
    pointer-events: none;
    background-color: rgba(255, 255, 255, 0.7);
  }

  .prev-button {
    left: 5px;
  }

  .next-button {
    right: 5px;
  }

  .section-pill {
    min-width: 280px;
    padding: 8px 30px;
    font-size: 13px;
    gap: 12px;
    margin-bottom: 30px;
  }

  .dots span {
    width: 5px;
    height: 5px;
  }

  /* Add visual feedback on touch */
  .angel-service-item:active {
    transform: scale(0.98);
    transition: transform 0.1s ease;
  }

  /* Prevent text selection during drag */
  .angel-services-carousel.dragging {
    cursor: grabbing;
  }

  .angel-services-carousel.dragging * {
    pointer-events: none !important;
  }

  .angel-services-carousel.dragging .angel-service-item {
    pointer-events: none !important;
  }

  /* After drag ends, re-enable pointer events */
  .angel-services-carousel:not(.dragging) .angel-service-item a {
    pointer-events: auto !important;
  }

  .angel-services-carousel:not(.dragging) .view-more-inline {
    pointer-events: auto !important;
  }

  /* Better touch area for links */
  .view-more-inline {
    padding: 5px;
    min-height: 35px;
    display: inline-flex;
    align-items: center;
  }
}

/* Mobile Portrait (up to 575px) */
@media (max-width: 575px) {
  .angel-services-container {
    padding: 30px 12px 50px;
  }

  .heading-section .heading {
    font-size: 22px;
  }

  .heading-section .subheading {
    font-size: 13px;
  }

  .angel-service-item {
    height: 300px;
  }

  .service-content {
    padding: 10px 15px;
  }

  .service-title {
    font-size: 15px;
  }

  .service-subtitle {
    font-size: 11px;
  }

  .angel-nav-button {
    width: 38px;
    height: 38px;
    font-size: 20px;
    padding: 16px 16px;
  }

  .prev-button {
    left: 4px;
  }

  .next-button {
    right: 4px;
  }

  .section-pill {
    min-width: 250px;
    padding: 7px 25px;
    font-size: 12px;
    gap: 10px;
    letter-spacing: 0.5px;
  }
}

/* Extra Small Mobile (up to 375px) */
@media (max-width: 375px) {
  .angel-services-container {
    padding: 25px 10px 40px;
  }

  .heading-section {
    margin-bottom: 25px;
  }

  .heading-section .heading {
    font-size: 20px;
  }

  .heading-section .subheading {
    font-size: 12px;
  }

  .angel-service-item {
    height: 280px;
  }

  .service-content {
    padding: 10px 12px;
  }

  .service-title {
    font-size: 14px;
  }

  .service-subtitle {
    font-size: 10px;
  }

  .angel-nav-button {
    width: 34px;
    height: 34px;
    font-size: 18px;
    padding: 14px 14px;
  }

  .prev-button {
    left: 3px;
  }

  .next-button {
    right: 3px;
  }

  .section-pill {
    min-width: 220px;
    padding: 6px 20px;
    font-size: 11px;
    gap: 8px;
  }

  .dots span {
    width: 4px;
    height: 4px;
    gap: 3px;
  }
}

/* Small devices (up to 320px) */
@media (max-width: 320px) {
  .angel-services-container {
    padding: 20px 8px 35px;
  }

  .heading-section .heading {
    font-size: 18px;
  }

  .angel-service-item {
    height: 260px;
  }

  .service-title {
    font-size: 13px;
  }

  .service-subtitle {
    font-size: 9px;
  }

  .angel-nav-button {
    width: 32px;
    height: 32px;
    font-size: 16px;
    padding: 12px 12px;
  }

  .prev-button {
    left: 2px;
  }

  .next-button {
    right: 2px;
  }

  .section-pill {
    min-width: 200px;
    padding: 6px 18px;
    font-size: 10px;
  }
}

/* Landscape orientation for mobile */
@media (max-width: 767px) and (orientation: landscape) {
  .angel-service-item {
    height: 280px;
  }

  .angel-services-container {
    padding: 30px 15px 50px;
  }

  .angel-nav-button {
    width: 36px;
    height: 36px;
  }
}

/* iPad and tablet specific */
@media (min-width: 768px) and (max-width: 1024px) {
  .angel-service-item {
    flex: 0 0 calc(50% - 13px);
    height: 360px;
  }

  .angel-services-carousel {
    cursor: grab;
    touch-action: pan-y pinch-zoom;
  }

  .angel-services-carousel.dragging {
    cursor: grabbing;
  }

  .angel-nav-button {
    background-color: rgba(255, 255, 255, 0.95);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
  }
}

/* Small tablets in portrait */
@media (min-width: 576px) and (max-width: 767px) {
  .angel-service-item {
    flex: 0 0 100%;
    height: 340px;
  }

  .angel-services-carousel {
    gap: 18px;
  }
}

/* Touch devices specific styles */
@media (hover: none) and (pointer: coarse) {
  .angel-service-item:active {
    transform: scale(0.98);
    transition: transform 0.1s ease;
  }

  .angel-nav-button {
    min-width: 44px;
    min-height: 44px;
  }

  .angel-nav-button:active {
    transform: translateY(-50%) scale(0.9);
  }

  /* Better touch area for links - iOS recommended size */
  .service-title a {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    padding: 5px 0;
  }

  .view-more-inline {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    padding: 5px;
  }

  /* Prevent accidental double-tap zoom */
  .angel-services-carousel {
    touch-action: pan-y pinch-zoom;
  }

  /* Ensure links work on touch */
  .angel-service-item a {
    touch-action: manipulation;
  }
}

/* High-resolution displays */
@media (-webkit-min-device-pixel-ratio: 2),
(min-resolution: 192dpi) {
  .angel-nav-button {
    border-width: 0.5px;
  }
}

/* Reduced motion preference */
@media (prefers-reduced-motion: reduce) {
  .angel-services-carousel {
    transition: none;
  }

  .angel-service-item {
    transition: none;
  }

  .angel-service-item:active {
    transform: none;
  }

  .service-image-wrapper img {
    transition: none;
  }

  .angel-service-item:hover .service-image-wrapper img {
    transform: none;
  }
}

/* Dark mode support (optional - remove if not needed) */
@media (prefers-color-scheme: dark) {
  .angel-nav-button {
    background-color: rgba(40, 40, 40, 0.95);
    color: white;
    border-color: rgba(255, 255, 255, 0.2);
  }

  .angel-nav-button:hover {
    background-color: #84625c;
    border-color: #84625c;
  }
}

/* ------------------- new collection slider------- */

/* Navigation Buttons */
.nav-prev-collection,
.nav-next-collection {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  cursor: pointer;
  background: var(--white);
  /* Use your theme color */
  border-radius: 50%;
  width: 40px;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: var(--shadow2);
  /* Add shadow */
  transition: background 0.3s ease;
}

.nav-prev-collection:hover,
.nav-next-collection:hover {
  background: var(--primary);
  /* Use your theme color */
  color: var(--white);
  /* Use your theme color */
}

.nav-prev-collection {
  left: 10px;
  /* Adjust position */
}

.nav-next-collection {
  right: 10px;
  /* Adjust position */
}

.collection-position-2 .img-style {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 10px 10px 0 0;
}

.collection-position-2 .img-style img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.collection-position-2 .content {
  position: absolute;
  padding: 20px;
  /* Use your theme color */
  border-radius: 0 0 10px 10px;
}

.collection-position-2:not(.style-2, .style-3) .cls-btn .icon {
  transform: scale(0);
  transform-origin: right;
  transition: all 0.2s ease;
  color: var(--primary);
}

.collection-position-2:not(.style-2, .style-3) .cls-btn:hover {
  color: var(--primary);
}

.collection-position-2:not(.style-2, .style-3) .cls-btn:hover .icon {
  width: 10px;
  min-width: 10px;
  margin-left: 4px;
  transform: scale(1);
}

.collection-position-2 .cls-btn {
  background-color: var(--white);
  color: var(--main);
  border-radius: 99px;
  padding: 8px 28px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}

.collection-position-2 .cls-btn .icon {
  width: 0;
  display: inline-block;
  font-size: 16px;
}

.collection-position-2 .cls-btn .text {
  color: inherit;
  z-index: 1;
}

.collection-position-2 .cls-btn:hover {
  color: var(--primary);
}

.collection-position-2.style-3 .cls-btn,
.collection-position-2.style-2 .cls-btn {
  justify-content: space-between;
}

.collection-position-2.style-3 .cls-btn .icon,
.collection-position-2.style-2 .cls-btn .icon {
  width: 10px;
  min-width: 10px;
  color: inherit;
  position: absolute;
  right: 28px;
  width: 20px;
  opacity: 0;
  visibility: hidden;
  transform: translateX(10px);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  color: var(--primary);
}

.collection-position-2.style-3 .cls-btn .count-item,
.collection-position-2.style-2 .cls-btn .count-item {
  opacity: 1;
  visibility: visible;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.collection-position-2.style-6 .content,
.collection-position-2.style-4 .content {
  text-align: center;
}

.collection-position-2.style-6 .cls-btn,
.collection-position-2.style-4 .cls-btn {
  display: inline-flex;
}

.collection-position-2.style-5 .content {
  text-align: center;
  display: grid;
  gap: 4px;
}

.collection-position-2.style-7 .content {
  top: 32px;
  bottom: unset !important;
}

.collection-position-2 .on-sale-wrap {
  position: absolute;
  top: 10px;
  right: 10px;
  left: 10px;
  z-index: 5;
  display: flex;
}

.collection-position-2 .on-sale-wrap .on-sale-item {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  word-break: break-word;
  padding: 0 6px;
  min-width: 50px;
  font-size: 12px;
  font-weight: 600;
  text-align: center;
  line-height: 20px;
  letter-spacing: 1px;
  text-transform: capitalize;
  position: relative;
  background-color: var(--critical);
  color: var(--white);
  border-radius: 144px;
}

.collection-position-2 .cls-content {
  padding: 15px;
  border-radius: 8px;
  background-color: var(--white);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.collection-position-2 .cls-content .cls-info {
  display: grid;
  gap: 4px;
}

.collection-position-2 .cls-content .cls-info .link {
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  display: -webkit-box;
  overflow: hidden;
}

.collection-position-2 .cls-content .price {
  display: flex;
  align-items: center;
  font-weight: 600;
  font-size: 16px;
  line-height: 26px;
}

.collection-position-2 .cls-content .price span {
  color: inherit;
}

.collection-position-2 .cls-content .price .old-price {
  font-weight: 400;
  font-size: 14px;
  line-height: 22px;
  color: var(--secondary);
  margin-right: 8px;
  text-decoration: line-through;
  display: inline-block;
}

.collection-position-2 .cls-content .cls-btn {
  padding: 12px 28px;
  background-color: var(--main);
  color: var(--white);
}

.collection-position-2 .cls-content .cls-btn:hover {
  background-color: var(--primary);
  color: var(--white);
}

.collection-position-2.style-3 .content:hover .icon,
.collection-position-2.style-2 .content:hover .icon {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

.collection-position-2.style-3 .content:hover .count-item,
.collection-position-2.style-2 .content:hover .count-item {
  opacity: 0;
  visibility: hidden;
}

.collection-position-3 {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
}

.collection-position-3 .img-style {
  display: block;
  width: 100%;
  height: 100%;
}

.collection-position-3 .img-style img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.collection-position-3 .archive-top {
  display: grid;
  gap: 8px;
  position: absolute;
  z-index: 1;
  left: 15px;
  top: 15px;
}

.collection-position-3 .archive-btn {
  position: absolute;
  z-index: 1;
  left: 15px;
  bottom: 30px;
}

.collection-social {
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  height: 400px;
}

.collection-social .img-style {
  display: block;
  width: 100%;
  height: 100%;
}

.collection-social .img-style img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.collection-social .cls-content {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  gap: 12px;
  background-color: rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(4px);
  padding: 12px;
  z-index: 3;
}

.collection-social .cls-content .info {
  flex-grow: 1;
}

.collection-social .cls-content .avatar {
  flex-shrink: 0;
}

.collection-social.style-2 .cls-content {
  background-color: rgba(255, 255, 255, 0.5);
}

.collection-social video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 1;
  cursor: pointer;
}

.collection-social:hover video {
  pointer-events: auto;
}

.collection-social .poster {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 2;
  transition: opacity 0.5s ease;
  cursor: pointer;
}

.collection-social .poster.hide {
  opacity: 0;
  pointer-events: none;
}

.banner-cls {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
}

.banner-cls .img-style {
  display: block;
  width: 100%;
  height: 100%;
}

.banner-cls .img-style img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.banner-cls .cls-content {
  display: grid;
  gap: 30px;
  position: absolute;
  left: 20px;
  right: 20px;
  bottom: 20px;
}

.banner-cls .cls-content .box-title-cls {
  display: grid;
  gap: 8px;
}

.banner-cls.style-center {
  bottom: auto;
  top: 50%;
  transform: translateY(-50%);
  text-align: center;
}

.collection-circle .img-style {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  overflow: hidden;
}

.collection-circle .img-style.radius-48 {
  border-radius: 48px;
}

.collection-circle .collection-content {
  margin-top: 16px;
  display: grid;
  gap: 4px;
}

.collection-circle .collection-content .cls-title {
  color: var(--main);
  text-align: center;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.collection-circle .collection-content .cls-title .text {
  color: inherit;
  display: inline-block;
}

.collection-circle .collection-content .cls-title .icon {
  width: 0;
  display: inline-block;
  font-size: 16px;
  color: var(--primary);
  transform: scale(0);
  transform-origin: right;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.collection-circle .collection-content .cls-title:hover {
  color: var(--primary);
}

.collection-circle .collection-content .cls-title:hover .icon {
  width: 10px;
  min-width: 10px;
  margin-left: 4px;
  transform: scale(1);
}

.collection-circle.style-1 .collection-content {
  margin-top: 20px;
}

.collection-circle.style-1 .collection-content .heading {
  margin-bottom: 12px;
}

.flat-collection-circle {
  position: relative;
}

.flat-collection-circle .nav-sw {
  position: absolute;
  z-index: 20;
  top: 36%;
}

.flat-collection-circle .nav-sw-left {
  left: 0;
}

.flat-collection-circle .nav-sw-right {
  right: 0;
}

.list-collection {
  display: flex;
  justify-content: center;
  gap: 20px;
  flex-wrap: wrap;
  margin-bottom: 20px;
}

.list-collection .cls-item {
  display: flex;
  align-items: center;
  gap: 16px;
}

.list-collection .cls-item .img-cls {
  width: 60px;
  height: 80px;
  flex-shrink: 0;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.list-collection .cls-item .img-cls img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.list-collection .cls-item .title-cls {
  display: inline-flex;
}

.list-collection .cls-item .title-cls .text {
  color: inherit;
  white-space: nowrap;
}

.list-collection .cls-item:hover .img-cls {
  transform: rotateY(180deg);
}

.grid-cls-v1 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 15px;
}

.grid-cls-v1 .collection-position-2 .cls-btn {
  max-width: 200px;
  margin-left: auto;
  margin-right: auto;
}

.grid-cls-v2 .collection-position-2 .cls-btn {
  max-width: 200px;
  margin-left: auto;
  margin-right: auto;
}

.banner-cls-discover {
  width: 100%;
  height: 100%;
  border-radius: 20px;
  overflow: hidden;
  position: relative;
}

.banner-cls-discover .img-style {
  display: block;
  width: 100%;
  height: 100%;
}

.banner-cls-discover .img-style img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.banner-cls-discover .cls-content {
  display: grid;
  gap: 30px;
  position: absolute;
  top: 50%;
  left: 15px;
  right: 15px;
  transform: translateY(-50%);
  text-align: center;
}

.banner-cls-discover .cls-content .box-title-top {
  display: grid;
  gap: 10px;
}

/*------------ product ---------------- */
.card-product {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.card-product .product-img {
  display: flex;
  width: 100%;
  height: 100%;
  position: relative;
  align-items: stretch;
}

.card-product .card-product-wrapper {
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  z-index: 20;
}

.card-product .card-product-wrapper img {
  display: block;
  height: 100%;
  width: 100%;
  object-fit: cover;
  object-position: center;
  transition-duration: 700ms;
}

.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.05);
  transform: scale(1.05);
}

.card-product .card-product-wrapper:hover .marquee-wrapper-product {
  opacity: 0;
}

.card-product .card-product-wrapper .on-sale-wrap {
  position: absolute;
  top: 5px;
  right: 5px;
  left: 5px;
  z-index: 5;
  display: flex;
}

.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: 50px;
  font-size: 12px;
  font-weight: 600;
  text-align: center;
  line-height: 20px;
  letter-spacing: 1px;
  text-transform: capitalize;
  position: relative;
  background-color: var(--critical);
  color: var(--white);
  border-radius: 144px;
}

.card-product .card-product-info {
  padding-top: 10px;
  gap: 4px;
  display: grid;
}

.card-product .card-product-info .title {
  font-size: 16px;
  line-height: 24px;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  display: -webkit-box;
  overflow: hidden;
  font-weight: 500;
  text-align: start;
}

.card-product .card-product-info .price {
  font-size: 16px;
  line-height: 26px;
  font-weight: 600;
  display: flex;
  align-items: center;
}

.card-product .card-product-info .old-price {
  text-decoration: line-through;
  display: inline-block;
  margin-right: 8px;
  font-weight: 400;
  color: var(--secondary-2);
  font-size: 14px;
  line-height: 22px;
}

.card-product .card-product-info .btn-main-product {
  border: 1px solid var(--main);
}

.card-product .list-color-product {
  padding: 4px 0px;
}

.card-product .marquee-product {
  position: absolute;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  left: 0;
  bottom: 0;
  overflow-x: hidden;
  display: none;
  flex-direction: row;
  width: 100%;
  transform: none;
  padding: 3px 0px;
}

.card-product .marquee-product .marquee-child-item p {
  padding-left: 8px;
  padding-right: 8px;
}

.card-product .marquee-product .marquee-child-item .icon {
  font-size: 16px;
}

.card-product .marquee-product .marquee-wrapper {
  flex: 0 0 auto;
  min-width: 100%;
  z-index: 1;
  display: flex;
  flex-direction: row;
  align-items: center;
  animation: infiniteScroll 12s linear 0s infinite;
  animation-play-state: running;
  animation-delay: 0s;
  animation-direction: normal;
}

.card-product .variant-wrap {
  position: absolute;
  bottom: 0;
  z-index: 3;
  left: 0px;
  right: 0px;
  pointer-events: none;
  transition: 0.3s ease-out 0s;
}

.card-product .list-btn-main {
  position: absolute;
  bottom: 8px;
  left: 5px;
  right: 5px;
  z-index: 5;
  transition: 0.3s ease-out 0s;
  display: flex;
  align-items: center;
  gap: 4px;
}

.card-product .list-btn-main .box-icon {
  transition: 0.3s ease-out 0s !important;
  transform: none !important;
}

.card-product .list-product-btn {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 5px;
  top: 5px;
  right: 5px;
  z-index: 6;
}

.card-product .countdown-wrap {
  display: none;
}

.card-product .variant-box {
  text-align: center;
  overflow: hidden;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding: 6px;
  max-height: 40px;
  background-color: rgba(255, 255, 255, 0.8);
}

.card-product .variant-box .countdown__timer {
  display: flex;
  gap: 4px;
}

.card-product .variant-box .countdown__item {
  color: var(--critical);
  font-size: 12px;
  line-height: 20px;
  letter-spacing: 1px;
  font-weight: 600;
}

.card-product .size-list {
  background: linear-gradient(148.05deg,
      rgba(255, 255, 255, 0.4) 0%,
      rgba(255, 255, 255, 0.6) 100%);
}

.card-product .size-list .variant-box {
  display: flex;
  align-items: center;
  gap: 10px;
}

.card-product .size-list .size-item {
  font-size: 12px;
  line-height: 20px;
  font-weight: 600;
  letter-spacing: 1px;
}

.card-product .btn-main-product {
  flex-grow: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 5px 10px;
  font-weight: 600;
  letter-spacing: 1px;
  border: 1px solid transparent;
  font-size: 12px;
  line-height: 20px;
  text-transform: uppercase;
  background-color: var(--white);
  color: var(--main);
  border-radius: 44px;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  display: -webkit-box;
  overflow: hidden;
  text-align: center;
  white-space: nowrap;
}

.card-product .btn-main-product:hover {
  background-color: var(--main);
  color: var(--white);
}

.card-product .box-icon {
  width: 32px;
  height: 32px;
  min-width: 32px;
  border-radius: 3px;
  background-color: var(--white);
  color: var(--main);
  position: relative;
  border-radius: 50%;
}

.card-product .box-icon .icon {
  font-size: 20px;
}

.card-product .box-icon svg {
  width: 18px;
}

.card-product .box-icon svg path {
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
}

.card-product .box-icon:hover {
  background-color: var(--main) !important;
  color: var(--white) !important;
  border-color: var(--main) !important;
}

.card-product .box-icon:hover .tooltip {
  opacity: 1;
  visibility: visible;
  transform: translateX(-8px);
  transition-delay: 0.1s;
}

.card-product .box-icon:hover svg path {
  stroke: var(--white);
}

.card-product .tooltip {
  position: absolute;
  z-index: 202;
  opacity: 0;
  visibility: hidden;
  display: none;
  position: absolute;
  right: 100%;
  border-radius: 2px;
  white-space: nowrap;
  background-color: var(--main);
  color: var(--white);
  font-weight: 400;
  font-size: 12px;
  line-height: 12px;
  padding: 6px 8px 8px;
  max-width: 250px;
  width: max-content;
  transition: opacity 0.3s ease, visibility 0.3s ease,
    transform 0.3s cubic-bezier(0.71, 1.7, 0.77, 1.24),
    -webkit-transform 0.3s cubic-bezier(0.71, 1.7, 0.77, 1.24);
}

.card-product .tooltip::before {
  content: "";
  top: 50%;
  left: unset;
  transform: translateY(-50%) rotate(45deg);
  right: -4px;
  position: absolute;
  background: var(--main);
  width: 8px;
  height: 8px;
  z-index: 100;
}

.card-product.list-st-3 .list-product-btn,
.card-product.list-st-2 .list-product-btn,
.card-product.style-list .list-product-btn,
.card-product.style-7 .list-product-btn,
.card-product.style-6 .list-product-btn,
.card-product.style-2 .list-product-btn {
  flex-direction: row;
  top: unset;
  left: 5px;
  bottom: 5px;
}

.card-product.list-st-3 .list-product-btn .box-icon:hover .tooltip,
.card-product.list-st-2 .list-product-btn .box-icon:hover .tooltip,
.card-product.style-list .list-product-btn .box-icon:hover .tooltip,
.card-product.style-7 .list-product-btn .box-icon:hover .tooltip,
.card-product.style-6 .list-product-btn .box-icon:hover .tooltip,
.card-product.style-2 .list-product-btn .box-icon:hover .tooltip {
  transform: none;
}

.card-product.list-st-3 .tooltip,
.card-product.list-st-2 .tooltip,
.card-product.style-list .tooltip,
.card-product.style-7 .tooltip,
.card-product.style-6 .tooltip,
.card-product.style-2 .tooltip {
  top: -100%;
  margin-top: 5px;
  margin-right: 0;
  transform: translateY(8px);
  right: unset;
}

.card-product.list-st-3 .tooltip::before,
.card-product.list-st-2 .tooltip::before,
.card-product.style-list .tooltip::before,
.card-product.style-7 .tooltip::before,
.card-product.style-6 .tooltip::before,
.card-product.style-2 .tooltip::before {
  top: 85%;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
  right: unset;
}

.card-product.style-3 .list-btn-main .box-icon,
.card-product.style-3 .list-btn-main .btn-main-product {
  border-radius: 3px;
}

.card-product.style-3 .list-btn-main .box-icon .tooltip {
  display: none;
}

.card-product.style-7 .list-product-btn {
  gap: 0;
}

.card-product.style-7 .list-product-btn .box-icon {
  border-radius: 0;
}

.card-product.style-7 .list-product-btn .box-icon:not(:last-child) {
  border-right: 1px solid var(--line);
}

.card-product.style-swatch-img .list-color-product {
  gap: 2px;
}

.card-product.style-swatch-img .list-color-product .list-color-item {
  width: 30px;
  height: 30px;
  padding: 3px;
  border: 1px solid transparent;
  border-radius: 6px;
}

.card-product.style-swatch-img .list-color-product .list-color-item img {
  border-radius: 3px;
  position: relative;
  opacity: 1;
  width: 100%;
  height: 100%;
  object-fit: cover;
  visibility: visible;
}

.card-product .box-rating {
  display: flex;
  align-items: center;
  gap: 8px;
}

.card-product .list-star {
  display: inline-flex;
  align-items: center;
  gap: 2px;
}

.card-product .list-star .icon {
  font-size: 16px;
  color: var(--line);
}

.card-product .list-star .icon:not(:last-child) {
  color: var(--yellow);
}

.card-product .progress {
  --bs-progress-height: 8px;
  --bs-progress-bar-bg: var(--critical);
  --bs-progress-bg: var(--line);
  --bs-progress-border-radius: 1000px;
}

.card-product .progress .progress-bar {
  border-radius: var(--bs-progress-border-radius);
}

.card-product .box-progress-stock .stock-status {
  margin-top: 8px;
  gap: 4px;
}

.card-product .box-progress-stock .stock-item {
  display: flex;
  align-items: center;
  gap: 4px;
}

.card-product.style-list {
  display: flex;
  gap: 15px;
}

.card-product.style-list .card-product-wrapper {
  max-width: 360px;
  width: 35%;
}

.card-product.style-list .variant-wrap-list {
  width: 100%;
}

.card-product.style-list .card-product-info {
  flex: 1 1 auto;
  padding: 0 !important;
  display: flex;
  flex-direction: column;
  justify-content: start;
  align-items: self-start;
  max-width: 60%;
}

.card-product.style-list .card-product-info .old-price {
  margin-right: 8px;
}

.card-product.style-list .list-product-btn {
  display: flex;
  gap: 8px;
}

.card-product.style-list .list-product-btn .btn-main-product {
  max-width: 272px;
  width: 100%;
  border: 1px solid var(--line);
}

.card-product.style-list .list-product-btn .box-icon {
  border: 1px solid var(--line);
}

.card-product.style-list .size-box {
  flex-wrap: wrap;
  margin-bottom: 15px;
}

.card-product.style-list .size-box .size-item {
  font-weight: 500;
  font-size: 12px;
  line-height: 20px;
}

.card-product.style-list .size-box .size-item.disable {
  pointer-events: none;
  background-color: var(--surface);
  color: var(--secondary-2);
  border-color: var(--surface);
}

.card-product.style-list .size-box .size-item:hover {
  border-color: var(--main) !important;
  background-color: transparent !important;
  color: var(--main) !important;
}

.card-product.style-list .size-box .size-item.active {
  background-color: var(--main) !important;
  color: var(--white) !important;
  border-color: var(--main) !important;
}

.card-product.style-list .list-color-product {
  margin-bottom: 8px;
}

.card-product.style-list .list-product-btn {
  position: unset;
  justify-content: flex-start;
}

.card-product.list-st-2 {
  display: flex;
  gap: 15px;
}

.card-product.list-st-2 .card-product-info {
  flex: 1 1 auto;
  padding: 0;
  display: flex;
  flex-direction: column;
  justify-content: start;
  align-items: self-start;
  gap: 10px;
  max-width: 68%;
}

.card-product.list-st-2 .card-product-wrapper {
  max-width: 210px;
  width: 32%;
}

.card-product.list-st-2 .bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}

.card-product.list-st-2 .box-icon {
  flex-shrink: 0;
  background-color: var(--surface);
}

.card-product.list-st-2 .list-product-btn {
  position: unset;
  justify-content: flex-start;
}

.card-product.list-st-2.has-border {
  padding: 15px;
  border: 1px solid var(--line);
  border-radius: 4px;
}

.card-product.list-st-3 {
  display: flex;
  gap: 15px;
  border: 1px solid var(--line);
  padding: 15px;
  border-radius: 4px;
  overflow: hidden;
}

.card-product.list-st-3 .inner-wrapper-card {
  max-width: 210px;
  width: 41.8%;
  display: flex;
  flex-direction: column;
}

.card-product.list-st-3 .inner-wrapper-card .box-progress-stock {
  margin-top: 10px;
}

.card-product.list-st-3 .inner-wrapper-card .card-product-wrapper {
  flex-grow: 1;
}

.card-product.list-st-3 .card-product-info {
  flex: 1 1 auto;
  padding: 0;
  display: flex;
  flex-direction: column;
  justify-content: start;
  align-items: self-start;
  gap: 15px;
  max-width: 58.2%;
}

.card-product.list-st-3 .card-product-info .inner-top {
  display: grid;
  gap: 4px;
  padding-bottom: 8px;
  margin-bottom: 8px;
  border-bottom: 1px solid var(--line);
}

.card-product.list-st-3 .card-product-info .inner-bottom {
  display: grid;
  gap: 8px;
}

.card-product.list-st-3 .card-product-info .list-product-btn {
  display: flex;
  gap: 5px;
}

.card-product.list-st-3 .card-product-info .list-product-btn .box-icon {
  border: 1px solid var(--line);
}

.card-product.list-st-3 .card-product-info .list-product-btn .box-icon .icon {
  font-size: 20px;
}

.card-product.list-st-3 .card-product-info .list-product-btn .btn-main-product {
  max-width: 176px;
  width: 100%;
}

.card-product.list-st-3 .archive-info-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  width: 100%;
}

.card-product.list-st-3 .list-product-btn {
  position: unset;
  justify-content: flex-start;
}

.card-product .countdown-box .countdown__timer {
  display: flex;
  gap: 10px;
}

.card-product .countdown-box .countdown__item {
  background-color: var(--primary);
  color: var(--white);
  padding: 3px 0px;
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 48px;
  height: 48px;
}

.card-product .countdown-box .countdown__item .countdown__label {
  font-size: 12px;
  line-height: 16px;
}

.card-product .countdown-box .countdown__item .countdown__value {
  font-size: 20px;
  line-height: 24px;
  font-weight: 500;
}

.card-product:not(.list-st-3, .list-st-2, .style-list) .card-product-wrapper {
  aspect-ratio: 1/1.33;
}

.loadItem.hidden {
  display: none !important;
}

.loadItem.card-product.style-list:not(.hidden) {
  display: flex !important;
}

.list-color-product {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.list-color-product .list-color-item {
  width: 24px;
  height: 24px;
  border: 1px solid transparent;
  background-color: transparent;
  -webkit-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  transition: all 0.4s ease;
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.list-color-product .list-color-item .swatch-value {
  width: 100%;
  height: 100%;
  border: 3px solid transparent;
  display: inline-block;
  border-radius: 50%;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.list-color-product .list-color-item img {
  visibility: hidden;
  width: 18px;
  height: 18px;
  position: absolute;
}

.list-color-product .list-color-item.line {
  border: 1px solid var(--line);
}

.list-color-product .list-color-item.active,
.list-color-product .list-color-item:hover {
  border-color: var(--main);
}

.list-color-product .list-color-item.active .swatch-value,
.list-color-product .list-color-item:hover .swatch-value {
  border-color: var(--white);
}

.stagger-wrap .stagger-item {
  transition: 0.3s ease-in-out;
  transform: scale(0.5) rotate(90deg) skew(15deg);
  opacity: 0;
}

.stagger-wrap .stagger-item.stagger-finished {
  transform: scale(1) rotate(0deg) skew(0deg);
  opacity: 1;
}

.slider-scroll,
.thumbs-slider {
  display: flex;
  gap: 20px;
}

.tf-product-media-thumbs {
  width: 80px;
  flex-shrink: 0;
  max-height: 687px;
}

.tf-product-media-thumbs .swiper-slide {
  height: max-content;
  width: auto;
}

.tf-product-media-thumbs .swiper-slide .item {
  position: relative;
  height: 100%;
  max-height: 107px;
  max-width: 80px;
}

.tf-product-media-thumbs .swiper-slide .item img {
  border-radius: 4px;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.tf-product-media-thumbs .swiper-slide .item::after {
  position: absolute;
  content: "";
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  border: 1px solid transparent;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  border-radius: 4px;
}

.tf-product-media-thumbs .swiper-slide.swiper-slide-thumb-active .item::after {
  border-color: var(--main);
}

.tf-product-media-main {
  width: calc(100% - 100px);
}

.tf-product-media-main .item {
  display: flex;
  width: 100%;
  height: 100%;
  border-radius: 12px;
  overflow: hidden;
  max-height: 687px;
}

.tf-product-media-main .item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.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: auto;
}

.thumbs-bottom .thumbs-slider .tf-product-media-main {
  width: 100%;
}

.thumbs-bottom .thumbs-slider .tf-product-media-main .item {
  max-height: 820px;
}

.tf-product-info-list .tf-product-info-heading {
  padding-bottom: 20px;
  border-bottom: 1px solid var(--line);
  margin-bottom: 20px;
}

.tf-product-info-list .tf-product-info-name {
  margin-bottom: 20px;
}

.tf-product-info-list .tf-product-info-name>.text {
  color: var(--secondary-2);
  letter-spacing: 0.1em;
  margin-bottom: 4px;
}

.tf-product-info-list .tf-product-info-name .name {
  margin-bottom: 12px;
}

.tf-product-info-list .tf-product-info-name>.sub {
  display: flex;
  align-items: center;
  gap: 10px 16px;
  flex-wrap: wrap;
}

.tf-product-info-list .tf-product-info-rate {
  display: flex;
  gap: 4px;
  align-items: center;
}

.tf-product-info-list .tf-product-info-rate .list-start {
  display: flex;
}

.tf-product-info-list .tf-product-info-rate .icon {
  font-size: 15px;
}

.tf-product-info-list .tf-product-info-rate .text {
  color: var(--secondary);
}

.tf-product-info-list .tf-product-info-sold {
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
  align-items: center;
}

.tf-product-info-list .tf-product-info-sold .icon {
  font-size: 20px;
  color: var(--primary);
  animation: tf-ani-flash 2s infinite;
}

.tf-product-info-list .tf-product-info-desc {
  display: flex;
  gap: 12px;
  flex-direction: column;
}

.tf-product-info-list .tf-product-info-desc>p {
  color: var(--secondary);
}

.tf-product-info-list .tf-product-info-liveview {
  display: flex;
  gap: 8px;
  align-items: center;
}

.tf-product-info-list .tf-product-info-liveview .icon {
  font-size: 20px;
}

.tf-product-info-list .tf-product-info-choose-option {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.tf-product-info-list .tf-product-info-by-btn {
  display: flex;
  align-items: center;
  gap: 10px;
}

.tf-product-info-list .tf-product-info-by-btn .box-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  flex-shrink: 0;
  border-radius: 50%;
  border: 2px solid var(--line);
  font-size: 24px;
}

.tf-product-info-list .tf-product-info-by-btn .box-icon:hover {
  background-color: var(--main);
  color: var(--white);
  border-color: var(--main);
}

.tf-product-info-list .tf-product-info-help {
  padding-bottom: 19px;
  border-bottom: 1px solid var(--line);
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.tf-product-info-list .tf-product-info-help .tf-product-info-extra-link {
  display: flex;
  gap: 15px 34px;
  align-items: center;
  flex-wrap: wrap;
}

.tf-product-info-list .tf-product-info-help .tf-product-info-extra-link .tf-product-extra-icon {
  display: flex;
  gap: 4px;
  align-items: center;
  position: relative;
}

.tf-product-info-list .tf-product-info-help .tf-product-info-extra-link .tf-product-extra-icon .icon {
  font-size: 20px;
  line-height: 20px;
}

.tf-product-info-list .tf-product-info-help .tf-product-info-extra-link .tf-product-extra-icon:not(:last-child)::after {
  position: absolute;
  content: "";
  width: 1px;
  height: 20px;
  right: -18px;
  top: 1px;
  background-color: var(--line);
}

.tf-product-info-list .tf-product-info-help .tf-product-info-available,
.tf-product-info-list .tf-product-info-help .tf-product-info-return,
.tf-product-info-list .tf-product-info-help .tf-product-info-time {
  display: flex;
  gap: 4px;
  align-items: center;
}

.tf-product-info-list .tf-product-info-help .tf-product-info-available .icon,
.tf-product-info-list .tf-product-info-help .tf-product-info-return .icon,
.tf-product-info-list .tf-product-info-help .tf-product-info-time .icon {
  font-size: 20px;
  line-height: 20px;
}

.tf-product-info-list .tf-product-info-help .tf-product-info-available p,
.tf-product-info-list .tf-product-info-help .tf-product-info-return p,
.tf-product-info-list .tf-product-info-help .tf-product-info-time p {
  color: var(--secondary);
}

.tf-product-info-list .tf-product-info-help .tf-product-info-available p span,
.tf-product-info-list .tf-product-info-help .tf-product-info-return p span,
.tf-product-info-list .tf-product-info-help .tf-product-info-time p span {
  color: var(--main);
}

.tf-product-info-list .tf-product-info-help .tf-product-info-view {
  display: flex;
  gap: 4px;
  align-items: center;
}

.tf-product-info-list .tf-product-info-help .tf-product-info-view .icon {
  font-size: 20px;
  line-height: 20px;
}

.tf-product-info-list .tf-product-info-help .tf-product-info-view span {
  text-decoration: underline;
  font-size: 14px;
  line-height: 22px;
}

.tf-product-info-list ul.tf-product-info-sku {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding-bottom: 19px;
  border-bottom: 1px solid var(--line);
}

.tf-product-info-list ul.tf-product-info-sku li {
  display: flex;
  align-items: center;
  gap: 4px;
}

.tf-product-info-list ul.tf-product-info-sku li .text-1 {
  color: var(--secondary);
}

.tf-product-info-list .tf-product-info-guranteed {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}

.tf-product-info-list .tf-product-info-guranteed .tf-payment {
  gap: 12px;
}

.tf-product-info-list .tf-product-info-guranteed a img {
  width: 50px;
}

.tf-product-info-list .wg-quantity input {
  pointer-events: none;
}

.tf-product-info-price {
  display: flex;
  align-items: center;
}

.tf-product-info-price .price-on-sale {
  margin-right: 8px;
}

.tf-product-info-price .compare-at-price {
  font-size: 16px;
  font-weight: 400;
  line-height: 19.52px;
  color: var(--secondary-2);
  text-decoration: line-through;
  margin-right: 16px;
}

.tf-product-info-price .badges-on-sale {
  padding: 0 8px;
  background-color: var(--critical);
  border-radius: 999px;
  color: var(--white);
  letter-spacing: 0.1em;
}

.tf-product-info-price.type-small .price-on-sale {
  font-size: 16px;
  font-weight: 600;
  line-height: 26px;
  margin-right: 4px;
}

.tf-product-info-price.type-small .compare-at-price {
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
  margin-right: 4px;
}

.tf-product-info-price.type-small .badges-on-sale {
  font-size: 10px;
  font-weight: 700;
  line-height: 20px;
  letter-spacing: 0.1em;
}

.tf-product-info-price.type-1 .price-on-sale {
  margin-right: 25px;
}

.tf-product-info-price.type-1 .compare-at-price {
  margin-right: 12px;
  font-size: 20px;
  font-weight: 500;
  line-height: 28px;
  position: relative;
}

.tf-product-info-price.type-1 .compare-at-price::before {
  position: absolute;
  content: "";
  width: 1px;
  height: 16px;
  left: -13px;
  background-color: var(--line);
  top: 50%;
  transform: translateY(-50%);
}

.tf-product-info-price.type-1 .badges-on-sale {
  padding: 2px 12px;
  font-size: 12px;
  font-weight: 600;
  line-height: 20px;
}

.wg-quantity {
  width: 180px;
  height: 48px;
  display: flex;
  justify-content: space-between;
  background-color: var(--white);
  border: 2px solid var(--line);
  border-radius: 999px;
  overflow: hidden;
}

.wg-quantity input {
  width: 88px;
  height: 44px;
  padding: 0;
  background-color: transparent;
  border: 0;
  text-align: center;
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
  color: var(--main);
}

.wg-quantity .btn-quantity {
  width: 44px;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 38px;
  color: var(--main);
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.wg-quantity .btn-quantity:hover {
  color: var(--primary);
}

.wg-quantity.style-1 {
  width: 140px;
  height: 44px;
  border-radius: 12px;
  border: 1px solid var(--line);
  background-color: var(--surface);
}

.wg-quantity.style-1 input {
  width: 56px;
}

.variant-picker-item .variant-picker-label span {
  margin-left: 8px;
}

.variant-picker-item .size-guide {
  text-decoration: underline;
}

.variant-picker-item .variant-picker-values {
  display: flex;
  gap: 20px;
  align-items: center;
  flex-wrap: wrap;
}

.variant-picker-item .variant-picker-values.gap12 {
  gap: 12px;
}

.variant-picker-item .variant-picker-values.type-click input:checked+label {
  border: 1px solid var(--main);
  padding: 3px;
}

.variant-picker-item .variant-picker-values.type-click input:checked+label.style-text-1 {
  background-color: var(--main);
  border: 2px solid var(--main);
}

.variant-picker-item .variant-picker-values.type-click input:checked+label.style-text-1 span {
  color: var(--white);
}

.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.style-text {
  background-color: var(--main);
  border: 1px solid var(--main);
}

.variant-picker-item .variant-picker-values input:checked+label.style-text span {
  color: var(--white);
}

.variant-picker-item .variant-picker-values label {
  position: relative;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 0px;
  border: 1px solid transparent;
  cursor: pointer;
  font-weight: 400;
  line-height: 22.4px;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.variant-picker-item .variant-picker-values label .btn-checkbox {
  width: 100%;
  height: 100%;
  display: block;
  border-radius: 50%;
  border: 3px solid transparent;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.variant-picker-item .variant-picker-values label.style-text {
  width: 48px;
  height: 48px;
  border: 2px solid var(--line);
  border-radius: 50%;
  padding: 7px 15px;
}

.variant-picker-item .variant-picker-values label.style-text:hover {
  border-color: var(--main);
}

.variant-picker-item .variant-picker-values label.style-text-1 {
  gap: 8px;
  width: unset;
  height: 48px;
  border: 2px solid var(--line);
  border-radius: 999px;
  padding: 10px 18px !important;
}

.variant-picker-item .variant-picker-values label.style-text-1:hover {
  border-color: var(--main);
}

.variant-picker-item .variant-picker-values label.style-text-1 .circle-color {
  display: flex;
  width: 20px;
  height: 20px;
  border-radius: 50%;
}

.variant-picker-item .variant-picker-values label.type-disable {
  pointer-events: none;
  background-color: var(--surface);
  color: var(--secondary-2);
  border-color: var(--surface);
  cursor: no-drop;
}

.variant-picker-item .variant-picker-values label.type-sold-out {
  overflow: hidden;
}

.variant-picker-item .variant-picker-values label.type-sold-out::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  width: 32px;
  height: 1.2px;
  border-bottom: 1.2px dashed var(--secondary-2);
}

.variant-picker-item .variant-picker-values label.type-sold-out::after {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
  width: 32px;
  height: 1.2px;
  border-bottom: 1.2px dashed var(--secondary-2);
}

.variant-picker-item .variant-picker-values label.style-image {
  display: flex;
  flex-direction: column;
  border: 2px solid transparent;
  border-radius: 8px;
  padding: 4px;
  width: 72px;
  height: 92px;
}

.variant-picker-item .variant-picker-values label.style-image img {
  border-radius: 4px;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.variant-picker-item .variant-picker-values label.style-image-rounded {
  display: flex;
  flex-direction: column;
  border: 2px solid var(--line);
  border-radius: 50%;
  padding: 2px;
  width: 48px;
  height: 48px;
}

.variant-picker-item .variant-picker-values label.style-image-rounded img {
  border-radius: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.variant-picker-item .other-variant-btn.line,
.variant-picker-item .color-btn.line {
  border-color: var(--line);
}

.variant-picker-item .other-variant-btn.active,
.variant-picker-item .color-btn.active {
  border-color: var(--main);
}

.variant-picker-item .other-variant-btn.active .btn-checkbox,
.variant-picker-item .color-btn.active .btn-checkbox {
  border-color: var(--white);
}

.variant-picker-item .other-variant-btn.style-text-1.active,
.variant-picker-item .color-btn.style-text-1.active {
  background-color: var(--main);
  border-color: var(--main);
}

.variant-picker-item .other-variant-btn.style-text-1.active span,
.variant-picker-item .color-btn.style-text-1.active span {
  color: var(--white);
}

.variant-picker-item .other-variant-btn.style-image.active,
.variant-picker-item .color-btn.style-image.active {
  border-color: var(--main);
}

.variant-picker-item .other-variant-btn.style-image-rounded.active,
.variant-picker-item .color-btn.style-image-rounded.active {
  border-color: var(--main);
}

.variant-picker-item .variant-other-size .btn-size {
  padding: 12px 25px;
  color: var(--secondary);
  font-size: 16px;
  line-height: 24px;
  font-weight: 500;
  border-radius: 4px;
  border: 2px solid var(--line);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  cursor: pointer;
  background-color: var(--white);
}

.variant-picker-item .variant-other-size .btn-size:hover,
.variant-picker-item .variant-other-size .btn-size.active {
  border-color: var(--main);
  color: var(--main);
}

.value-currentVariant,
.select-currentColor,
.value-currentColor {
  text-transform: capitalize;
}

.product-description-list .product-description-list-item:not(:last-child) {
  margin-bottom: 40px;
}

.product-description-list .product-description-list-item .product-description-list-title {
  padding-bottom: 11px;
  border-bottom: 1px solid var(--main);
  margin-bottom: 20px;
}

.product-description-list .product-description-list-item .product-description-list-content {
  border-radius: 8px;
  padding: 40px;
  border: 1px solid var(--line);
}

.tf-main-product.full-width {
  display: flex;
  padding: 0 60px;
  padding: 0 43px 0 60px;
  gap: 0 80px;
}

.tf-main-product.full-width>div {
  width: calc(50% - 40px);
}

.tf-main-product.full-width .thumbs-slider,
.tf-main-product.full-width .tf-product-info-list {
  max-width: unset !important;
}

.tf-main-product.full-width .tf-product-media-thumbs,
.tf-main-product.full-width .tf-product-media-main .item {
  max-height: 1013px;
}

.product-fixed-price .grid-image-top {
  display: flex;
  gap: 32px 30px;
  margin-bottom: 60px;
}

.product-fixed-price .grid-image-top img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.product-fixed-price .grid-image-top .item-3 {
  margin-bottom: 32px;
}

.product-fixed-price .left-desc {
  margin-left: unset;
  padding: 0 !important;
  max-width: 710px;
}

.product-fixed-price .right-details {
  border-radius: 8px;
  box-shadow: 0px 5px 18px 5px rgba(64, 72, 87, 0.1490196078);
  padding: 32px;
  max-width: unset;
}

.product-fixed-scroll .accordion-product-wrap {
  padding-top: 40px;
}

.frequently-bought-together-2 {
  margin-top: 40px;
}

.tf-bundle-product-item {
  display: flex;
  gap: 16px;
  align-items: center;
}

.tf-bundle-product-item .tf-product-bundle-image {
  flex-shrink: 0;
  width: 102px;
  height: 133px;
  border-radius: 8px;
  overflow: hidden;
}

.tf-bundle-product-item .tf-product-bundle-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.tf-bundle-product-item .tf-product-bundle-infos {
  display: flex;
  gap: 12px;
  flex-direction: column;
}

.tf-bundle-product-item .tf-product-bundle-infos .text-title {
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  display: -webkit-box;
  overflow: hidden;
}

.tf-bundle-product-item .tf-check {
  flex-shrink: 0;
  width: 21px;
  height: 21px;
  margin: 3.5px;
  border-width: 2px;
  border-radius: 2px;
}

.tf-bundle-product-item .tf-check::before {
  font-size: 12px;
}

.tf-product-upsell {
  padding-bottom: 20px;
  border-bottom: 1px solid var(--line);
}

.tf-product-upsell .tf-product-upsell-slod .tf-product-process-wrap {
  width: 100%;
  max-width: 380px;
}

.tf-product-upsell .tf-product-upsell-slod .tf-product-process-wrap .progress {
  height: 8px;
  background-color: var(--line);
  margin-bottom: 8px;
}

.tf-product-upsell .tf-product-upsell-slod .tf-product-process-wrap .progress .progress-bar-striped {
  background-size: 16px 16px;
  background-color: var(--critical);
  background-image: linear-gradient(135deg,
      rgba(255, 255, 255, 0.15) 25%,
      transparent 25%,
      transparent 50%,
      rgba(255, 255, 255, 0.15) 50%,
      rgba(255, 255, 255, 0.15) 75%,
      transparent 75%,
      transparent);
}

.tf-product-pre-order {
  padding: 4px 16px;
  background-color: var(--main);
  border-radius: 99px;
  width: max-content;
  color: var(--white);
}

@-webkit-keyframes progress-bar-stripes {
  0% {
    background-position-x: -1rem;
  }
}

@keyframes progress-bar-stripes {
  0% {
    background-position-x: -1rem;
  }
}

.tf-product-customer-note .tf-product-image-upload {
  position: relative;
}

.tf-product-customer-note .tf-product-image-upload label {
  width: 100%;
  height: 48px;
  padding: 9px 14px;
  border-radius: 8px;
  border: 2px solid var(--line);
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
  cursor: pointer;
}

.tf-product-customer-note .tf-product-image-upload input {
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  width: 94px;
  height: 32px;
}

.tf-product-customer-note .tf-product-image-upload input::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 94px;
  height: 32px;
  background-color: var(--white);
}

.tf-product-customer-note .tf-product-image-upload input::after {
  position: absolute;
  content: "UP LOAD";
  left: 0;
  font-size: 12px;
  font-weight: 600;
  line-height: 20px;
  letter-spacing: 0.1em;
  padding: 6px 16px;
  border-radius: 999px;
  background-color: var(--main);
  color: var(--white);
  cursor: pointer;
}

.tf-product-out-of-stock {
  padding: 24px;
  border-radius: 12px;
  border: 1px solid var(--line);
}

.tf-product-out-of-stock .form-out-of-stock button {
  border: 1px solid var(--main);
}

.tf-product-deals {
  padding: 24px;
  border-radius: 12px;
  border: 1px solid var(--line);
}

.tf-product-deals .tf-product-deals-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  flex-wrap: wrap;
  padding: 10px 18px;
  border: 2px solid var(--line);
  border-radius: 25px;
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.tf-product-deals .tf-product-deals-item.select-option,
.tf-product-deals .tf-product-deals-item:hover {
  border-color: var(--main);
}

.tf-product-deals .tf-product-deals-item:not(:last-child) {
  margin-bottom: 12px;
}

.tf-product-with-discount .tf-product-discount-list {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.tf-product-with-discount .tf-product-discount-list .tf-product-discount-item {
  position: relative;
}

.tf-product-with-discount .tf-product-discount-list .tf-product-discount-item .tf-number-discount {
  position: absolute;
  top: 5px;
  right: 59px;
  color: var(--white);
}

.tf-product-with-discount .tf-product-discount-list .tf-product-discount-item .tf-btn-discount {
  position: absolute;
  top: 6px;
  right: 6px;
  background-color: var(--white);
  border-radius: 999px;
  padding: 3px 6px;
  font-size: 10px;
  font-weight: 600;
  line-height: 14px;
  letter-spacing: 0.1em;
  cursor: pointer;
}

.tf-product-subscribe-save .tf-product-subscribe {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.tf-product-subscribe-save .tf-product-subscribe-item {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.tf-product-subscribe-save .tf-product-subscribe-item>label {
  cursor: pointer;
  padding-left: 32px;
}

.tf-product-subscribe-save .tf-product-subscribe-item>input {
  cursor: pointer;
  position: absolute;
  top: 7px;
  left: 3px;
  accent-color: var(--main);
}

.tf-product-subscribe-save input:checked~.tf-product-box-save {
  display: block;
}

.tf-product-subscribe-save .tf-product-box-save {
  display: none;
  padding: 20px;
  border-radius: 12px;
  border: 1px solid var(--line);
}

.tf-sticky-btn-atc {
  position: fixed;
  width: 100%;
  bottom: 0;
  z-index: 70;
  box-shadow: 0px 5px 18px 5px rgba(64, 72, 87, 0.15);
  background-color: var(--white);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.tf-sticky-btn-atc .form-sticky-atc {
  padding: 10px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.tf-sticky-btn-atc .form-sticky-atc .tf-dropdown-sort {
  padding: 8px 10px;
}

.tf-sticky-btn-atc .tf-sticky-atc-product {
  display: flex;
  gap: 16px;
}

.tf-sticky-btn-atc .tf-sticky-atc-product .image {
  width: 56px;
  height: 74.67px;
  border-radius: 8px;
  overflow: hidden;
}

.tf-sticky-btn-atc .tf-sticky-atc-product .content {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.tf-sticky-btn-atc .tf-sticky-atc-infos {
  display: flex;
  gap: 32px;
  align-items: center;
}

.tf-sticky-btn-atc .tf-sticky-atc-infos .tf-sticky-atc-btns {
  width: 274px;
}

.tf-add-cart-success {
  position: fixed;
  top: 200px;
  right: -413px;
  width: 353px;
  height: 264px;
  padding: 20px 24px;
  border-radius: 24px;
  background-color: var(--white);
  box-shadow: 0px 10px 25px 0px rgba(43, 52, 74, 0.12);
  z-index: 200;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  transition-delay: 0s !important;
}

.tf-add-cart-success .tf-add-cart-heading {
  padding-bottom: 16px;
  border-bottom: 1px solid var(--line);
  margin-bottom: 15px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.tf-add-cart-success .tf-add-cart-heading .icon {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  border-radius: 50%;
  background-color: var(--surface);
  cursor: pointer;
}

.tf-add-cart-success .tf-add-cart-product {
  display: flex;
  gap: 16px;
  margin-bottom: 24px;
}

.tf-add-cart-success .tf-add-cart-product .image {
  width: 56px;
  height: 74.67px;
  border-radius: 8px;
  overflow: hidden;
}

.tf-add-cart-success .tf-add-cart-product .content {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.tf-add-cart-success.active {
  right: 60px;
  transition-delay: 0.5s !important;
}

.tf-has-purchased {
  position: fixed;
  top: 30%;
  right: -331px;
  width: 331px;
  height: 116px;
  padding: 16px;
  border-radius: 8px;
  background-color: var(--white);
  box-shadow: 0px 10px 25px 0px rgba(43, 52, 74, 0.12);
  z-index: 199;
  -webkit-transition: all 0.6s ease;
  -moz-transition: all 0.6s ease;
  -ms-transition: all 0.6s ease;
  -o-transition: all 0.6s ease;
  transition: all 0.6s ease;
}

.tf-has-purchased .icon-close {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  border-radius: 50%;
  background-color: var(--line);
  cursor: pointer;
}

.tf-has-purchased .tf-has-purchased-product {
  display: flex;
  gap: 16px;
}

.tf-has-purchased .tf-has-purchased-product .image {
  width: 63px;
  height: 84px;
  border-radius: 4px;
  overflow: hidden;
}

.tf-has-purchased.active {
  right: 60px;
}

.tf-product-stacked .item:first-child {
  grid-column: 1/3;
}

.flat-single-home .tf-product-info-list {
  max-width: 100%;
}

.flat-single-home .tf-product-info-list .tf-product-info-rate {
  margin-bottom: 12px;
}

.flat-single-home .tf-product-info-list .tf-product-info-price .price-on-sale {
  margin-right: 24px;
}

.flat-single-home .tf-product-info-list .tf-product-info-price .old-price {
  margin-right: 12px;
  position: relative;
}

.flat-single-home .tf-product-info-list .tf-product-info-price .old-price::before {
  position: absolute;
  content: "";
  width: 1px;
  height: 16px;
  left: -13px;
  background-color: var(--line);
  top: 50%;
  transform: translateY(-50%);
}

.flat-single-home .tf-product-info-list .tf-product-info-price .old-price-sold {
  color: var(--secondary-2);
  text-decoration: line-through;
}

.flat-single-home .tf-product-info-list .tf-product-info-heading {
  padding-bottom: 0;
  border: none;
  margin-bottom: 24px;
}

.flat-single-home .tf-product-info-list .wg-quantity,
.flat-single-home .tf-product-info-list .btn-style-2,
.flat-single-home .tf-product-info-list .btn-style-3 {
  border-radius: 4px;
}

.flat-single-home .tf-product-info-list .box-icon {
  border-radius: 8px;
}

.flat-single-home .variant-picker-item .variant-picker-values {
  gap: 8px;
}

.flat-single-home .variant-picker-item .variant-picker-values .type-disable {
  background-color: var(--line);
  border-color: var(--line);
}

.flat-single-home .variant-picker-item .variant-color .color-btn {
  width: 24px;
  height: 24px;
}

.flat-single-home .thumbs-slider {
  max-width: 100%;
  gap: 10px;
}

.flat-single-home .tf-product-media-thumbs .item {
  max-height: 133px;
  max-width: 100px;
}


/*------------ zoom ---------------- */
.tf-zoom-main {
  position: sticky;
  top: 30px;
  z-index: 50;
}

.tf-zoom-main .drift-zoom-pane {
  top: 0;
  left: 0;
  height: 520px;
  max-width: 520px;
  width: 100%;
  background: #fff;
  -webkit-transform: translate3d(0, 0, 0);
  box-shadow: 0 1px 5px rgba(127, 127, 127, 0.0196078431),
    0 5px 18px rgba(127, 127, 127, 0.2);
  z-index: 3;
}

.drift-bounding-box.drift-open {
  background: rgba(255, 255, 255, 0.2509803922);
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.4) inset;
  z-index: 5000;
}

.drift-zoom-pane {
  z-index: 5000;
}

.section-image-zoom .other-image-zoom {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.section-image-zoom.zoom-active .other-image-zoom {
  opacity: 0.3;
}

.pswp__bg {
  background: var(--white);
}

.pswp__icn {
  fill: rgb(34, 34, 34);
  color: var(--white);
}

.pswp__icn .pswp__icn-shadow {
  stroke: var(--white);
  stroke-width: 1px;
  fill: none;
}

.pswp__counter {
  color: #222;
  text-shadow: 1px 1px 3px #ffffff;
}

.tf-model-viewer {
  width: 100%;
  height: 100%;
  position: relative;
}

.tf-model-viewer model-viewer {
  display: block;
  position: relative;
  z-index: 5;
  width: 100%;
  height: 100%;
}

.tf-model-viewer model-viewer.disabled {
  pointer-events: none;
}

.tf-model-viewer.active model-viewer {
  pointer-events: all;
}

.tf-model-viewer.active .wrap-btn-viewer {
  display: none;
}


/*------------ sections ---------------- */
.heading-section {
  margin-bottom: 40px;
}

.heading-section h3 {
  /* margin-bottom: 12px; */
  text-transform: capitalize;
  font-size: 32px;
  font-weight: 700;
  color: var(--main);
  margin-bottom: 10px;
}

.heading-section p {
  color: #64666c;
  font-size: 18px;
  /* color: var(--secondary); */
  margin-bottom: 0;
}

.heading-section-2 {
  margin-bottom: 44px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  flex-wrap: wrap;
}

.page-title {
  padding: 60px 0 80px;
  background: var(--gradient);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.page-title .heading {
  margin-bottom: 12px;
}

ul.breadcrumbs {
  display: flex;
  gap: 4px;
  align-items: center;
}

ul.breadcrumbs li {
  color: var(--secondary-2);
  font-size: 14px;
  line-height: 22px;
}

ul.breadcrumbs i {
  font-size: 12px;
  color: var(--secondary-2);
}

.main-content-page {
  padding: 80px 0;
}

.blog-detail-wrap.page-single-2>.inner {
  margin: 0;
  max-width: unset;
  padding: 0;
}

.blog-detail-wrap.page-single-2>.inner>.heading {
  text-align: start;
}

.blog-detail-wrap.page-single-2>.inner>.image {
  border-radius: 12px;
  overflow: hidden;
}

.blog-detail-wrap>.image {
  height: 568px;
  background-image: url(../images/blog/blog-details-1.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
}

.blog-detail-wrap>.inner {
  max-width: 970px;
  margin: -135px auto 0;
  border-radius: 12px;
  background-color: var(--white);
  padding: 40px 60px 0px 60px;
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.blog-detail-wrap>.inner>.heading {
  display: flex;
  flex-direction: column;
  gap: 16px;
  text-align: center;
}

.blog-detail-wrap>.inner>.heading ul.tags {
  display: flex;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
}

.blog-detail-wrap>.inner>.heading ul.tags a {
  display: flex;
  border-radius: 40px;
  padding: 4px 16px 4px 16px;
  background-color: var(--surface);
}

.blog-detail-wrap>.inner>.heading .meta .icon {
  font-size: 20px;
}

.blog-detail-wrap>.inner .related-post {
  position: relative;
  display: flex;
  gap: 40px;
  padding: 24px 0 32px;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.blog-detail-wrap>.inner .related-post::after {
  position: absolute;
  content: "";
  width: 1px;
  height: 60px;
  background-color: var(--line);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.blog-detail-wrap>.inner .related-post .text-btn-uppercase {
  font-weight: 600;
  letter-spacing: 0.1em;
  margin-bottom: 4px;
}

.blog-detail-wrap>.inner .related-post .text-btn-uppercase a {
  color: var(--primary);
}

.blog-detail-wrap>.inner .related-post .text-btn-uppercase a:hover {
  color: var(--main);
}

ul.list-text {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

ul.list-text li {
  position: relative;
  padding-left: 20px;
}

ul.list-text.type-disc li:before {
  position: absolute;
  content: "";
  top: 13px;
  left: 13px;
  width: 2.5px;
  height: 2.5px;
  border-radius: 50%;
  background-color: var(--main);
}

ul.list-text.type-number {
  list-style-type: auto;
  margin-bottom: 0;
  padding-left: 0;
  list-style: auto;
}

.reply-comment .reply-comment-heading {
  margin-bottom: 24px;
}

.reply-comment .reply-comment-item {
  display: flex;
  gap: 20px;
}

.reply-comment .reply-comment-item:not(:last-child) {
  margin-bottom: 20px;
}

.reply-comment .reply-comment-item:not(:last-child) .content {
  border-bottom: 1px solid var(--line);
}

.reply-comment .reply-comment-item.type-reply {
  padding-left: 80px;
}

.reply-comment .reply-comment-item .image {
  flex-shrink: 0;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  overflow: hidden;
}

.reply-comment .reply-comment-item .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.reply-comment .reply-comment-item .content {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding-bottom: 20px;
}

.reply-comment .reply-comment-item .content .text-button {
  color: var(--primary);
}

.reply-comment.style-1 .reply-comment-item {
  flex-direction: column;
  gap: 12px;
}

.reply-comment.style-1 .reply-comment-item .user {
  display: flex;
  align-items: center;
  gap: 16px;
}

.reply-comment.style-1 .reply-comment-item h6 {
  margin-bottom: 2px;
}

.reply-comment.style-1 .reply-comment-item:not(:last-child) {
  margin-bottom: 24px;
}

.reply-comment.style-1 .type-reply {
  margin-left: 60px;
  border-left: 4px solid var(--line);
  padding-left: 16px;
}

.reply-comment.style-1 .type-reply .image {
  width: 52px;
  height: 52px;
}

.box-check {
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background-color: var(--success);
}

.leave-comment .leave-comment-heading {
  margin-bottom: 24px;
}

.tf-breadcrumb-wrap {
  padding: 21px 0 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 15px;
}

.tf-breadcrumb-wrap .tf-breadcrumb-list {
  display: flex;
  gap: 4px;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 1px;
}

.tf-breadcrumb-wrap .tf-breadcrumb-list .icon {
  font-size: 12px;
}

.tf-breadcrumb-wrap .tf-breadcrumb-list span {
  text-decoration: underline;
}

.tf-breadcrumb-wrap .tf-breadcrumb-prev-next {
  display: flex;
  gap: 4px;
  align-items: center;
  font-size: 23px;
}

.tf-breadcrumb-wrap .tf-breadcrumb-prev-next a {
  display: flex;
}

.list-star {
  white-space: nowrap;
}

.list-star-default {
  white-space: nowrap;
  display: flex;
  gap: 2px;
}

.list-star-default .icon {
  font-size: 14px;
  color: var(--yellow);
}

.list-star-default.color-primary .icon {
  color: var(--primary);
}

.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;
}

.write-cancel-review-wrap.write-review .check-save label {
  margin-left: 8px;
}

.tf-countdown.style-1 .countdown__timer {
  display: flex;
  gap: 47px;
}

.tf-countdown.style-1 .countdown__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 60px;
  position: relative;
}

.tf-countdown.style-1 .countdown__item .countdown__value {
  font-size: 24px;
  font-weight: 500;
  line-height: 30px;
  margin-bottom: -4px;
}

.tf-countdown.style-1 .countdown__item .countdown__label {
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
  color: var(--secondary);
}

.tf-countdown.style-1 .countdown__item:not(:last-child)::after {
  position: absolute;
  content: ":";
  font-size: 24px;
  font-weight: 500;
  line-height: 30px;
  right: -26px;
  top: 50%;
  transform: translateY(-50%);
}

.tf-countdown.style-2 .countdown__timer {
  display: flex;
  gap: 64px;
  justify-content: center;
  align-items: center;
}

.tf-countdown.style-2 .countdown__timer .countdown__item {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 68px;
  height: 68px;
}

.tf-countdown.style-2 .countdown__timer .countdown__item .countdown__value {
  font-size: 40px;
  font-weight: 500;
  line-height: 48px;
  color: var(--white);
}

.tf-countdown.style-2 .countdown__timer .countdown__item .countdown__label {
  color: var(--white);
  position: absolute;
  left: 60px;
  top: 50%;
  transform: translateY(-50%);
  background-color: #28513b;
}

.tf-countdown.style-2 .countdown__timer .countdown__item::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  border-radius: 50%;
  border: 2px dashed var(--white);
  animation: rotate-360 5s infinite linear;
}

.tf-countdown-lg .countdown__timer {
  display: flex;
  gap: 40px;
}

.tf-countdown-lg .countdown__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}

.tf-countdown-lg .countdown__item .countdown__value {
  font-size: 28px;
  font-weight: 500;
  line-height: 36px;
}

.tf-countdown-lg .countdown__item .countdown__label {
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
  color: var(--secondary);
}

.tf-countdown-lg .countdown__item:not(:last-child)::after {
  position: absolute;
  content: ":";
  font-size: 28px;
  font-weight: 500;
  line-height: 36px;
  top: 50%;
  right: -22px;
  transform: translateY(-50%);
}

.flat-countdown-banner {
  position: relative;
}

.flat-countdown-banner .banner-img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: auto;
  right: 0;
}

.flat-countdown-banner .banner-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.flat-countdown-banner .banner-left {
  display: grid;
  gap: 24px;
}

.flat-countdown-banner .box-title {
  display: grid;
  gap: 12px;
}

.flat-countdown-banner-2 {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.flat-countdown-banner-2 .box-content .box-title {
  display: grid;
  gap: 12px;
}

.flat-countdown-banner-2 .box-content .tf-countdown-lg {
  margin-top: 15px;
}

.flat-countdown-banner-2 .box-content .btn-banner {
  margin-top: 30px;
}

.flat-banner-parallax {
  position: relative;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 100px 0px;
}

.flat-banner-parallax .fl-content {
  display: grid;
  gap: 30px;
}

.flat-banner-parallax .fl-content .title-top {
  display: grid;
  gap: 12px;
}

.flat-banner-parallax-v2 {
  background-attachment: fixed;
  position: relative;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 133px 0px;
}

.flat-banner-parallax-v2 .fl-content {
  display: grid;
  gap: 32px;
  padding: 30px 15px;
  background-color: var(--white);
  border-radius: 8px;
}

.flat-banner-parallax-v2 .fl-content .title-top .subtitle {
  margin-bottom: 4px;
}

.flat-banner-parallax-v2 .fl-content .title-top .title {
  margin-bottom: 16px;
}

.flat-banner-parallax-v3 {
  background-attachment: fixed;
  position: relative;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 110.5px 0px;
}

.flat-banner-parallax-v3 .fl-content {
  display: grid;
  gap: 28px;
  padding: 30px 15px;
  background-color: var(--white);
  border-radius: 8px;
}

.flat-banner-parallax-v3 .fl-content .title-top p {
  margin-bottom: 24px;
}

.flat-banner-parallax-v3 .fl-content .title-top .title {
  margin-bottom: 12px;
}

.gallery-item {
  position: relative;
  border-radius: 8px;
  overflow: hidden;
}

.gallery-item .box-icon {
  position: absolute;
  z-index: 5;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  background-color: var(--white);
  width: 32px;
  height: 32px;
  font-size: 18px;
}

.gallery-item .box-icon:hover {
  background-color: var(--main);
  color: var(--white);
}

.gallery-item .gallery-content {
  position: absolute;
  top: 50%;
  left: 15px;
  right: 15px;
  transform: translateY(-50%);
  text-align: center;
  z-index: 123;
}

.gallery-item .gallery-content .cls-btn {
  background-color: var(--white);
  color: var(--main);
  border-radius: 99px;
  padding: 8px 20px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  text-align: center;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 200px;
  width: 100%;
}

.gallery-item .gallery-content .cls-btn .icon {
  transform: scale(0);
  transform-origin: right;
  transition: all 0.2s ease;
  color: var(--primary);
  width: 0;
  display: inline-block;
  font-size: 20px;
}

.gallery-item .gallery-content .cls-btn .text {
  color: inherit;
  z-index: 1;
}

.gallery-item .gallery-content .cls-btn:hover {
  color: var(--primary);
}

.gallery-item .gallery-content .cls-btn:hover .icon {
  width: 10px;
  min-width: 10px;
  margin-left: 4px;
  transform: scale(1);
}

.tf-marquee {
  display: flex;
  overflow: hidden;
  width: 100%;
  padding: 16px 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.tf-marquee .marquee-wrapper {
  display: flex;
  animation: infiniteScroll 30s linear infinite;
  align-items: center;
  transition: animation-duration 300ms;
}

.tf-marquee .marquee-wrapper:hover {
  animation-play-state: paused !important;
}

.tf-marquee .marquee-child-item {
  padding-left: 15px;
  padding-right: 15px;
  display: inline-flex;
}

.tf-marquee .marquee-child-item .icon {
  font-size: 16px;
}

.tf-marquee.marquee-white {
  border-color: transparent;
}

.tf-marquee.marquee-white .marquee-child-item {
  color: var(--white);
}

.tf-marquee.marquee-style2 {
  padding: 12px 0px;
  border: 0;
}

.tf-marquee.marquee-style2 .marquee-wrapper {
  animation-duration: 80s;
}

.tf-marquee.marquee-style2 .marquee-child-item h3 {
  font-weight: 600;
}

.tf-marquee.marquee-style2 .marquee-child-item .icon {
  font-size: 30px;
  color: var(--primary);
}

.tf-marquee.marquee-animation-right .marquee-wrapper {
  animation: infiniteScrollRight 80s linear infinite;
}

.flat-img-with-text {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 0px;
}

.flat-img-with-text .banner-content {
  padding: 30px;
  background-color: var(--surface);
  z-index: 5;
  text-align: center;
}

.flat-img-with-text .banner-content .content-text {
  margin-bottom: 20px;
  display: grid;
  gap: 8px;
}

.flat-img-with-text .banner {
  width: 100%;
}

.flat-img-with-text .banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.flat-img-with-text .banner-right {
  padding-top: 0px;
}

.flat-img-with-text .banner-left {
  padding-bottom: 0px;
  padding-right: 0px;
}

.flat-img-with-text-v2 .banner-left {
  margin-bottom: 30px;
  display: grid;
  gap: 30px;
}

.flat-img-with-text-v2 .banner-left .box-title {
  display: grid;
  gap: 12px;
}

.flat-img-with-text-v2 .banner-left .box-title p {
  color: var(--secondary);
}

.flat-img-with-text-v2 .banner-right .collection-position-2 {
  border-radius: 8px;
}

.flat-img-with-text-v3 {
  align-items: center;
}

.flat-img-with-text-v3 .box-title {
  margin-bottom: 20px;
  display: grid;
  gap: 8px;
}

.flat-img-with-text-v3 .collection-default {
  gap: 16px;
}

.flat-img-with-text-v3 .collection-default .img-style {
  border-radius: 4px;
  overflow: hidden;
}

.flat-img-with-text-v3 .collection-default .content {
  gap: 4px;
}

.flat-img-with-text-v4 {
  display: grid;
  gap: 40px;
}

.flat-img-with-text-v4 .relatest-post .relatest-post-item {
  align-items: flex-start;
}

.dropdown .dropdown-title {
  cursor: pointer;
}

.dropdown .dropdown-backdrop.show:before {
  position: fixed;
  content: "";
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(24, 24, 24, 0.2);
  z-index: 200;
}

.dropdown.dropdown-store-location {
  width: max-content;
}

.dropdown.dropdown-store-location .dropdown-title {
  cursor: pointer;
  width: max-content;
}

.dropdown.dropdown-store-location .dropdown-menu {
  border: 0;
  background-color: transparent;
  padding: 0;
}

.dropdown.dropdown-store-location .dropdown-content {
  box-shadow: 0px 10px 25px 0px rgba(43, 52, 74, 0.12);
  width: 360px;
  padding: 20px;
  border-radius: 12px;
  border: 1px solid var(--line);
  background-color: var(--white);
  margin: 17px 0 !important;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.dropdown.dropdown-store-location .dropdown-content-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.dropdown.dropdown-store-location .dropdown-content-heading .icon {
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  cursor: pointer;
}

/*------------ about us section ------------ */
.about-row {
  align-items: flex-start !important;
  padding-top: 125px;
}

.about-us-main {
  display: flex;
  flex-direction: column;
  gap: 20px;
  position: relative;
  overflow: hidden;
  padding: 0px 0;
  margin-top: 0px;
  margin-bottom: 60px;
}

/* Ensure content is above background images */
.about-us-image-container {
  position: relative;
  width: 520px;
  margin-left: 12px;
  margin-top: 38px;
}

.about-us-features {
  position: relative;
  border-radius: 36px;
  overflow: hidden;
  z-index: 2;
}

/* Create dot pattern background */
.about-us-image-container::before {
  content: "";
  position: absolute;
  top: -53px;
  left: -53px;
  width: 90%;
  height: 90%;
  background-image: radial-gradient(#434550 2px, transparent 2px);
  background-size: 20px 20px;
  background-position: 0 0;
  opacity: 0.2;
  z-index: 1;
  animation: floatImage 3s ease-in-out infinite;
}

/* Update your existing styles */
.about-us-features img {
  width: 100%;
  height: 460px;
  object-fit: cover;
  object-position: center;
  border-radius: 36px;
  box-shadow: var(--shadow2);
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
}

/* Add these new styles to your existing CSS */
.about-us-features-icons {
  display: flex;
  gap: 30px;
  margin-top: 20px;
  border-top: 1px solid #191716;
  border-bottom: 1px solid #191716;
}

.feature-icon {
  flex: 1;
  text-align: left;
  padding: 20px;
  transition: all 0.3s ease;
  margin-bottom: -20px;
}

.feature-icon i {
  font-size: 32px;
  color: #84625c;
  margin-bottom: 15px;
  display: block;
}

.feature-icon h4 {
  font-size: 18px;
  color: #333;
  margin-bottom: 8px;
  font-weight: 600;
}

.feature-icon p {
  font-size: 14px;
  color: #666;
  margin: 0;
  line-height: 1.4;
}

.about-us-main .about-us-features {
  border-radius: 36px;
  overflow: hidden;
  width: 520px;
  margin-left: -3px;
  margin-top: -26px;
}

.about-us-main .about-us-features img {
  width: 100%;
  height: 460px;
  object-fit: cover;
  object-position: center;
  border-radius: 37px;
  box-shadow: var(--shadow2);
  transition: none;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
  border: 5px solid #84625c;
}

.about-us-content {
  padding: 15px;
  padding-top: 0px;
}

.about-us-content .title {
  margin-top: 0;
  margin-bottom: 20px;
}

.about-us-content p {
  font-size: 1rem;
  color: var(--secondary);
  line-height: 1.6;
  margin-bottom: 20px;
}

.about-us-main .about-us-content .title {
  margin-bottom: 20px;
}

.about-us-content h3.title .highlight {
  color: #84625c;
  vertical-align: top;
  font-weight: 700;
}

h3.title.wow.fadeInUp {
  font-size: 32px;
  font-weight: 700;
}

h5.title.wow.fadeInUp {
  font-size: 22px;
}

.about-us-main .about-us-content .widget-tabs {
  margin-bottom: 32px;
}


/* Large Desktop (1400px and up) */
@media (min-width: 1400px) {
  .about-us-image-container {
    width: 580px;
  }

  .about-us-main .about-us-features {
    width: 580px;
  }

  .about-us-main .about-us-features img {
    height: 500px;
  }

  .about-us-content {
    padding: 15px 15px 15px 60px;
    padding-top: 0px;
  }

  h3.title.wow.fadeInUp {
    font-size: 36px;
  }

  h5.title.wow.fadeInUp {
    font-size: 24px;
  }
}

/* Desktop (1200px - 1399px) */
@media (min-width: 1200px) and (max-width: 1399px) {
  .about-us-image-container {
    width: 520px;
  }

  .about-us-main .about-us-features {
    width: 520px;
  }

  .about-us-content {
    padding: 15px 15px 15px 50px;
    padding-top: 0px;
  }
}

/* Desktop and Tablet Landscape (992px and up) */
@media (min-width: 992px) and (max-width: 1199px) {
  .about-us-content {
    padding: 15px 15px 15px 50px;
    padding-top: 0px;
  }
}

/* Tablet Landscape (992px - 1199px) */
@media (max-width: 1199px) {
  .about-row {
    padding-top: 70px;
  }

  .about-us-main {
    padding: 100px 0;
    margin-bottom: 35px;
  }

  .about-us-image-container {
    width: 450px;
    margin-left: 10px;
    margin-top: 30px;
  }

  .about-us-image-container::before {
    top: -45px;
    left: -45px;
    width: 88%;
    height: 88%;
    background-size: 18px 18px;
  }

  .about-us-main .about-us-features {
    width: 450px;
    border-radius: 32px;
  }

  .about-us-main .about-us-features img {
    height: 400px;
    border-radius: 32px;
    border-width: 4px;
  }

  h3.title.wow.fadeInUp {
    font-size: 28px;
  }

  h5.title.wow.fadeInUp {
    font-size: 20px;
  }

  .about-us-content p {
    font-size: 0.969rem;
  }

  .feature-icon i {
    font-size: 30px;
  }

  .feature-icon h4 {
    font-size: 17px;
  }

  .about-us-features-icons {
    gap: 25px;
  }
}

/* Tablet Portrait (768px - 991px) */
@media (max-width: 991px) {
  .about-row {
    padding-top: 60px;
  }

  .about-us-main {
    padding: 80px 0;
    margin-bottom: 30px;
  }

  .about-us-image-container {
    width: 100%;
    max-width: 500px;
    margin: 0 auto 40px;
  }

  .about-us-image-container::before {
    top: -40px;
    left: -40px;
    width: 85%;
    height: 85%;
    background-size: 16px 16px;
  }

  .about-us-main .about-us-features {
    width: 100%;
    border-radius: 28px;
    margin-left: 0;
    margin-top: 0;
  }

  .about-us-main .about-us-features img {
    height: 380px;
    border-radius: 28px;
  }

  .about-us-content {
    padding: 0 15px;
  }

  h3.title.wow.fadeInUp {
    font-size: 26px;
  }

  h5.title.wow.fadeInUp {
    font-size: 18px;
  }

  .about-us-content p {
    font-size: 0.953rem;
  }

  .feature-icon i {
    font-size: 28px;
  }

  .feature-icon h4 {
    font-size: 17px;
  }

  .feature-icon p {
    font-size: 13.5px;
  }

  .about-us-features-icons {
    gap: 22px;
  }
}

/* iPad Pro and similar tablets (768px - 991px) */
@media (min-width: 768px) and (max-width: 991px) {
  .about-us-image-container {
    max-width: 480px;
  }

  .about-us-main .about-us-features {
    max-width: 480px;
  }

  .about-us-main .about-us-features img {
    height: 360px;
  }

  .about-us-content {
    padding: 0 15px 0 40px;
  }
}

/* Mobile Landscape and Portrait (up to 767px) */
@media (max-width: 767px) {
  .about-row {
    padding-top: 40px;
  }

  .about-us-main {
    padding: 60px 0;
    margin-bottom: 20px;
  }

  .about-us-image-container {
    width: 100%;
    margin: 0 auto 30px auto;
    padding: 0 15px;
  }

  .about-us-image-container::before {
    top: -30px;
    left: 0px;
    width: 85%;
    height: 85%;
    background-size: 15px 15px;
  }

  .about-us-main .about-us-features {
    width: 100%;
    border-radius: 24px;
    margin-left: 0;
    margin-top: 0;
  }

  .about-us-main .about-us-features img {
    height: 300px;
    border-radius: 24px;
    border-width: 3px;
  }

  .about-us-content {
    padding: 0 10px;
  }

  h3.title.wow.fadeInUp {
    font-size: 24px;
    margin-bottom: 15px;
  }

  h5.title.wow.fadeInUp {
    font-size: 16px;
    margin-bottom: 15px;
  }

  .about-us-content p {
    font-size: 0.938rem;
    margin-bottom: 15px;
    line-height: 1.5;
  }

  .about-us-features-icons {
    gap: 20px;
    margin-top: 15px;
    flex-direction: column;
  }

  .feature-icon {
    padding: 15px 10px;
  }

  .feature-icon i {
    font-size: 26px;
    margin-bottom: 10px;
  }

  .feature-icon h4 {
    font-size: 16px;
    margin-bottom: 6px;
  }

  .feature-icon p {
    font-size: 13px;
  }

  .about-us-main .about-us-content .widget-tabs {
    margin-bottom: 20px;
  }
}

/* Mobile Portrait (up to 575px) */
@media (max-width: 575px) {
  .about-row {
    padding-top: 30px;
  }

  .about-us-main {
    padding: 40px 0;
    margin-bottom: 15px;
  }

  .about-us-image-container {
    padding: 0 15px;
    margin: 0 auto 15px auto;
  }

  .about-us-image-container::before {
    top: -20px;
    left: 0px;
    width: 80%;
    height: 80%;
    background-size: 12px 12px;
  }

  .about-us-main .about-us-features {
    border-radius: 20px;
    margin-left: 0;
  }

  .about-us-main .about-us-features img {
    height: 280px;
    border-radius: 20px;
  }

  .about-us-content {
    padding: 0 8px;
  }

  h3.title.wow.fadeInUp {
    font-size: 22px;
    margin-bottom: 12px;
  }

  h5.title.wow.fadeInUp {
    font-size: 15px;
    margin-bottom: 12px;
  }

  .about-us-content p {
    font-size: 0.875rem;
    line-height: 1.5;
  }

  .about-us-features-icons {
    gap: 15px;
    margin-top: 12px;
  }

  .feature-icon {
    padding: 12px 8px;
    margin-bottom: -15px;
  }

  .feature-icon i {
    font-size: 24px;
    margin-bottom: 8px;
  }

  .feature-icon h4 {
    font-size: 15px;
    margin-bottom: 5px;
  }

  .feature-icon p {
    font-size: 12px;
    line-height: 1.3;
  }

  .about-us-main .about-us-content .widget-tabs {
    margin-bottom: 16px;
  }
}

/* Extra Small Mobile (up to 375px) */
@media (max-width: 375px) {
  .about-row {
    padding-top: 25px;
  }

  .about-us-main {
    padding: 30px 0;
    margin-bottom: 10px;
  }

  .about-us-image-container {
    padding: 0 12px;
  }

  .about-us-image-container::before {
    top: -15px;
    left: -5px;
    width: 75%;
    height: 75%;
    background-size: 10px 10px;
  }

  .about-us-main .about-us-features {
    border-radius: 16px;
  }

  .about-us-main .about-us-features img {
    height: 250px;
    border-radius: 16px;
    border-width: 2px;
  }

  h3.title.wow.fadeInUp {
    font-size: 20px;
    margin-bottom: 10px;
  }

  h5.title.wow.fadeInUp {
    font-size: 14px;
    margin-bottom: 10px;
  }

  .about-us-content p {
    font-size: 0.813rem;
    line-height: 1.4;
  }

  .about-us-features-icons {
    gap: 12px;
  }

  .feature-icon {
    padding: 10px 6px;
  }

  .feature-icon i {
    font-size: 22px;
    margin-bottom: 6px;
  }

  .feature-icon h4 {
    font-size: 14px;
    margin-bottom: 4px;
  }

  .feature-icon p {
    font-size: 11px;
  }
}

/* Small devices (up to 320px) */
@media (max-width: 320px) {
  .about-us-main {
    padding: 25px 0;
  }

  .about-us-image-container {
    padding: 0 10px;
  }

  .about-us-main .about-us-features img {
    height: 220px;
    border-radius: 14px;
  }

  .about-us-main .about-us-features {
    border-radius: 14px;
  }

  h3.title.wow.fadeInUp {
    font-size: 18px;
  }

  h5.title.wow.fadeInUp {
    font-size: 13px;
  }

  .about-us-content p {
    font-size: 0.75rem;
  }

  .feature-icon i {
    font-size: 20px;
  }

  .feature-icon h4 {
    font-size: 13px;
  }

  .feature-icon p {
    font-size: 10px;
  }
}

/* iPad Pro and similar tablets */
@media (min-width: 768px) and (max-width: 1024px) {
  .about-us-image-container {
    max-width: 480px;
  }

  .about-us-main .about-us-features {
    max-width: 480px;
  }

  .about-us-main .about-us-features img {
    height: 360px;
  }
}

/* Landscape orientation adjustments */
@media (max-width: 991px) and (orientation: landscape) {
  .about-us-main {
    padding: 50px 0;
  }

  .about-us-main .about-us-features img {
    height: 320px;
  }
}

/* -----------------           ------------------ */

.team-item {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.team-item .image {
  border-radius: 12px;
  overflow: hidden;
}

.team-item .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.team-item .content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.team-item .content .name a {
  display: inline;
  background-repeat: no-repeat;
  background-position-y: 0px;
  background-image: linear-gradient(transparent calc(100% - 1px),
      currentColor 1px);
  transition: 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  background-size: 0 100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.team-item .name {
  margin-bottom: 4px;
}

.team-item .tf-social-icon a {
  width: 48px;
  height: 48px;
  border-color: var(--line);
}

.team-item:hover .name a {
  background-size: 100% 100%;
  transition-delay: 0.2s;
  font-weight: 600;
}

.tf-store-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-height: 850px;
  overflow-y: auto;
  padding-right: 8px;
  margin-right: -8px;
}

.tf-store-list::-webkit-scrollbar {
  width: 4px;
  height: 4px;
}

.tf-store-list::-webkit-scrollbar-thumb {
  background: var(--line);
}

.tf-store-list::-webkit-scrollbar-track {
  background: transparent;
}

.tf-store-list .tf-store-item {
  padding: 22px;
  border-radius: 8px;
  border: 2px solid var(--line);
  cursor: pointer;
  display: flex;
  flex-direction: column;
  gap: 10px;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.tf-store-list .tf-store-item .tf-store-contact {
  display: flex;
  gap: 10px 60px;
  flex-wrap: wrap;
}

.tf-store-list .tf-store-item .tf-store-contact .tf-store-info {
  width: max-content;
}

.tf-store-list .tf-store-item.active,
.tf-store-list .tf-store-item:hover {
  border-color: var(--main);
}

.tf-store-list.style-row {
  flex-direction: row;
  overflow-x: auto;
  max-height: unset;
  padding-right: 0px;
  margin-right: 0px;
  padding-bottom: 8px;
  margin-bottom: -8px;
  margin-bottom: 80px;
}

.tf-store-list.style-row .tf-store-item {
  width: 310px;
  flex-shrink: 0;
  gap: 12px;
}

.tf-store-list.style-row .tf-store-item .tf-store-info {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.map-contact {
  height: 850px;
  border-radius: 8px;
}

.map-contact .map-marker-container {
  position: absolute;
  margin-top: 10px;
  transform: translate3d(-50%, -100%, 0);
}

.map-contact .marker-container {
  position: relative;
  top: 25px;
  left: 10px;
  width: 46px;
  height: 46px;
  z-index: 1;
  border-radius: 50%;
  cursor: pointer;
  -webkit-perspective: 1000;
}

.map-contact .marker-card .face {
  position: absolute;
  width: 28px;
  height: 28px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  text-align: center;
  color: #fff;
  z-index: 100;
  border: 8px solid #fff;
  border-radius: 50%;
  box-sizing: content-box;
  background-clip: content-box;
  line-height: 46px;
  font-size: 24px;
  background: none;
  border: none;
}

.map-contact .marker-card .face::before,
.map-contact .marker-card .face::after {
  content: none;
}

.map-contact .marker-card .face div {
  background-color: var(--white);
  border-radius: 50%;
  width: 44px;
  height: 44px;
  position: relative;
}

.map-contact .marker-card .face div::after {
  position: absolute;
  inset: 0;
  content: "\e905";
  font-family: "icomoon";
  font-size: 28px;
  color: var(--primary);
}

.map-contact .marker-card .face div::before {
  position: absolute;
  content: "";
  width: 60px;
  height: 60px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: rgba(228, 49, 49, 0.1);
  border-radius: 50%;
}

.map-contact.h400 {
  height: 400px;
  border-radius: 0;
}

.map-contact.h520 {
  height: 520px;
  border-radius: 0;
}

.wg-card-store {
  border-radius: 8px;
  overflow: hidden;
  background-color: var(--surface);
}

.wg-card-store .card-store-img {
  width: 100%;
  height: 100%;
}

.wg-card-store .card-store-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.wg-card-store .card-store-info {
  padding: 30px 80px 30px 100px;
}

.wg-card-store .card-store-info .card-store-heading {
  margin-bottom: 44px;
}

.wg-card-store .card-store-info>ul {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px 60px;
}

.wg-card-store .card-store-info .tf-social-icon {
  gap: 15px;
}

.contact-us-content {
  display: flex;
  gap: 60px;
}

.contact-us-content .left {
  flex-grow: 1;
}

.contact-us-content .left>h4 {
  margin-bottom: 7px;
}

.contact-us-content .left>p {
  margin-bottom: 24px;
}

.contact-us-content .right {
  width: 100%;
  max-width: 356px;
}

.contact-us-content .right h4 {
  margin-bottom: 30px;
}

.contact-us-content .right .open-time {
  display: flex;
  gap: 4px;
}

.contact-us-content .right .open-time span {
  width: 80px;
}

.contact-us-map {
  display: flex;
  background-color: var(--surface);
  border-radius: 12px;
  overflow: hidden;
}

.contact-us-map .wrap-map {
  flex-grow: 1;
  height: 500px;
}

.contact-us-map .wrap-map .map-contact {
  border-radius: 0;
  height: 500px;
}

.contact-us-map .right {
  width: 100%;
  max-width: 470px;
  padding: 40px;
}

.page-404 {
  min-height: 100vh;
  display: flex;
  align-items: center;
}

.page-404 .page-404-inner {
  display: flex;
  justify-content: space-between;
  gap: 30px;
  align-items: center;
}

.page-404 .page-404-inner .content {
  max-width: 450px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.page-404 .page-404-inner .content .heading {
  font-size: 160px;
  font-weight: 700;
  line-height: 198.44px;
}

.page-404 .page-404-inner .content a {
  width: max-content;
}

.coming-soon {
  min-height: 100vh;
  display: flex;
  align-items: center;
  background-image: url(../images/section/coming-soon.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.coming-soon .coming-soon-inner {
  flex-grow: 1;
  max-width: 1370px;
  padding: 0 15px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  justify-content: end;
}

.coming-soon .coming-soon-inner .content {
  max-width: 612px;
  text-align: center;
}

.coming-soon .coming-soon-inner .content .heading {
  color: var(--white);
  margin-bottom: 60px;
}

.coming-soon .coming-soon-inner .content .js-countdown {
  margin-bottom: 24px;
}

.coming-soon .coming-soon-inner .content .js-countdown .countdown__timer {
  justify-content: center;
}

.coming-soon .coming-soon-inner .content .js-countdown .countdown__item::after,
.coming-soon .coming-soon-inner .content .js-countdown .countdown__label,
.coming-soon .coming-soon-inner .content .js-countdown .countdown__value {
  color: var(--white);
}

.coming-soon .coming-soon-inner .content form {
  margin-bottom: 24px;
}

.coming-soon .coming-soon-inner .content form input {
  height: 52px;
  border-radius: 8px;
}

.coming-soon .coming-soon-inner .content form button {
  width: 44px;
  height: 44px;
  border-radius: 8px;
}

.coming-soon .coming-soon-inner .content form button:hover svg path {
  stroke: var(--main);
}

.page-faqs-wrap {
  display: flex;
  gap: 60px;
}

.page-faqs-wrap .list-faqs {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  gap: 60px;
}

.page-faqs-wrap .list-faqs .faqs-title {
  margin-bottom: 20px;
}

.page-faqs-wrap .ask-question {
  width: 380px;
  height: max-content;
  flex-shrink: 0;
  box-shadow: 0px 10px 25px 0px rgba(43, 52, 74, 0.12);
  border-radius: 16px;
  padding: 24px;
}

.page-faqs-wrap .ask-question .ask-question-wrap form .tf-select select {
  padding: 9px 16px;
  border-radius: 4px;
}

.page-faqs-wrap .ask-question .ask-question-wrap form textarea {
  height: 86px;
}

.page-faqs-wrap .ask-question .ask-question-wrap form button {
  height: 48px;
  border: 0;
}

.terms-of-use-wrap {
  display: flex;
  gap: 130px;
}

.terms-of-use-wrap>.left {
  width: 360px;
  flex-shrink: 0;
  height: max-content;
  top: 82px;
  border-left: 1px solid var(--line);
}

.terms-of-use-wrap>.left h6 {
  position: relative;
  padding: 10px 0 10px 16px;
  cursor: pointer;
}

.terms-of-use-wrap>.left h6::before {
  position: absolute;
  content: "";
  top: 0;
  left: -1px;
  width: 2px;
  height: 0;
  background-color: var(--main);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.terms-of-use-wrap>.left h6.active::before {
  height: 100%;
}

.terms-of-use-wrap>.right {
  flex-grow: 1;
}

.terms-of-use-wrap>.right .heading {
  margin-bottom: 40px;
}

.terms-of-use-wrap>.right .terms-of-use-item:not(:last-child) {
  margin-bottom: 32px;
}

.terms-of-use-wrap>.right .terms-of-use-item .terms-of-use-title {
  margin-bottom: 12px;
}

.terms-of-use-wrap>.right .terms-of-use-item .terms-of-use-content {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.login-wrap {
  display: flex;
  gap: 120px;
  align-items: center;
  position: relative;
}

.login-wrap .left {
  width: 100%;
}

.login-wrap .left .heading {
  margin-bottom: 28px;
}

.login-wrap .right {
  width: 100%;
}

.login-wrap .right p {
  margin-bottom: 28px;
}

.login-wrap .right a {
  padding: 10px 32px;
}

.login-wrap::before {
  position: absolute;
  content: "";
  height: 100%;
  width: 1px;
  background-color: var(--line);
  top: 0;
  left: 50%;
}

.my-account-wrap {
  display: flex;
  gap: 81px;
  max-width: 1130px;
  margin-left: auto;
  margin-right: auto;
}

.my-account-wrap .my-account-content {
  width: 100%;
}

.my-account-wrap .wrap-sidebar-account {
  width: 369px;
  flex-shrink: 0;
}

.sidebar-account {
  background-color: var(--surface);
  border-radius: 20px;
  padding: 40px 32px;
}

.sidebar-account .account-avatar {
  margin-bottom: 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.sidebar-account .account-avatar .image {
  margin-bottom: 16px;
  width: 140px;
  height: 140px;
  border-radius: 50%;
  overflow: hidden;
  margin-left: auto;
  margin-right: auto;
}

.sidebar-account .account-avatar .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sidebar-account .my-account-nav {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.sidebar-account .my-account-nav .my-account-nav-item {
  display: flex;
  gap: 12px;
  align-items: center;
  padding: 16px 20px;
  font-size: 20px;
  font-weight: 500;
  line-height: 28px;
  border-radius: 16px;
}

.sidebar-account .my-account-nav .my-account-nav-item:hover,
.sidebar-account .my-account-nav .my-account-nav-item.active {
  background-color: var(--white);
}

.btn-sidebar-account {
  position: fixed;
  top: 200px;
  left: 0;
  z-index: 50;
}

.btn-sidebar-account button {
  width: 40px;
  height: 40px;
  border-radius: 0;
  border: 1px solid var(--main);
  padding: 0;
  justify-content: center;
}

.btn-sidebar-account button:hover {
  background-color: var(--white);
}

.account-details .form-account-details {
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.account-details .title {
  margin-bottom: 16px;
}

.account-details select {
  border-radius: 8px;
  padding: 12px 16px;
}

.account-orders .wrap-account-order {
  overflow-x: auto;
}

.account-orders .wrap-account-order::-webkit-scrollbar {
  height: 3px;
}

.account-orders .wrap-account-order::-webkit-scrollbar-thumb {
  background: var(--surface);
  border-radius: 999px;
}

.account-orders table {
  width: 100%;
  min-width: 700px;
}

.account-orders table thead,
.account-orders table td,
.account-orders table th {
  padding: 15px 20px;
}

.account-orders table thead tr {
  border: 1px solid var(--line);
  background-color: var(--surface);
}

.account-orders table tbody {
  border: 1px solid var(--line);
  border-top: 0;
}

.account-orders table tbody tr:not(:last-child) {
  border-bottom: 1px solid var(--line);
}

.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;
}

.widget-timeline .timeline {
  list-style: none;
  position: relative;
}

.widget-timeline .timeline::before {
  top: 20px;
  bottom: 48px;
  position: absolute;
  content: " ";
  width: 2px;
  left: 10px;
  border-right: 1px dashed var(--secondary-2);
}

.widget-timeline .timeline>li {
  margin-bottom: 15px;
  position: relative;
}

.widget-timeline .timeline>li .timeline-box {
  padding: 10px 10px 10px 15px;
  position: relative;
  display: block;
  margin-left: 40px;
}

.widget-timeline .timeline>li .timeline-badge {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  height: 22px;
  left: 0;
  position: absolute;
  top: 10px;
  width: 22px;
  padding: 4px;
  background-color: var(--white);
  border: 1.5px solid var(--secondary-2);
}

.widget-timeline .timeline>li .timeline-badge::after {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 100%;
  display: block;
  background: var(--secondary-2);
}

.widget-timeline .timeline>li .timeline-badge.success {
  border-color: var(--success);
}

.widget-timeline .timeline>li .timeline-badge.success::after {
  background: var(--success);
}

.wd-form-order {
  padding: 15px;
  border-radius: 10px;
  border: 1px solid var(--line);
}

.wd-form-order .order-head {
  display: flex;
  align-items: center;
  border-bottom: 1px dashed var(--line);
  padding-bottom: 20px;
  margin-bottom: 30px;
  gap: 12px;
}

.wd-form-order .order-head .img-product {
  width: 80px;
  height: 80px;
  border: 1px solid var(--line);
  border-radius: 3px;
}

.wd-form-order .order-head .img-product img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.wd-form-order .widget-order-tab {
  margin-top: 30px;
}

.show-form-address,
.edit-form-address {
  display: none;
}

.list-account-address {
  display: grid;
  gap: 40px 30px;
}

.section-newsletter {
  padding: 44px 15px;
  background-color: rgb(224, 198, 182);
}

.section-newsletter .content {
  width: 100%;
  max-width: 564px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.section-newsletter .content .heading {
  margin-bottom: 12px;
}

.section-newsletter .content .text {
  margin-bottom: 36px;
}

.section-newsletter form input {
  height: 60px;
  border-color: var(--line);
  padding-right: 172px;
}

.section-newsletter form button {
  width: max-content;
  top: 50%;
  transform: translateY(-50%);
  right: 4px;
  border-radius: 99px;
  padding: 12px 40px;
  height: 44px;
  font-size: 14px;
}

.wg-free-delivery {
  border-radius: 12px;
  overflow: hidden;
  background-color: #28513b;
}

.wg-free-delivery .free-delivery-img {
  width: 100%;
  height: 100%;
}

.wg-free-delivery .free-delivery-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.wg-free-delivery .free-delivery-info {
  padding: 60px 60px 60px 60px;
}

.wg-free-delivery .free-delivery-info .free-delivery-heading {
  margin-bottom: 12px;
}

.wg-free-delivery .free-delivery-info .tf-countdown,
.wg-free-delivery .free-delivery-info>.text {
  margin-bottom: 36px;
}

.wg-free-delivery .free-delivery-info .tf-countdown .js-countdown {
  padding-right: 17px;
}

.news-item {
  display: flex;
  gap: 24px;
  align-items: center;
}

.news-item .image {
  border-radius: 8px;
  width: 100%;
  max-width: 303px;
  overflow: hidden;
  height: 100%;
}

.news-item .content p {
  margin-bottom: 12px;
}

.news-item .content .title {
  margin-bottom: 8px;
}

.banner-supper-sale {
  padding: 21px 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
  background-color: rgba(228, 49, 49, 0.1);
}

.banner-supper-sale .code-sale {
  padding: 3.5px 10px;
  border-radius: 4px;
  font-size: 20px;
  font-weight: 700;
  line-height: 24.8px;
  color: var(--primary);
  border: 2px dashed var(--primary);
}

.banner-supper-sale a {
  padding: 6px 16px;
}

.grid-card-product {
  gap: 45px;
}

.grid-card-product .column-card-product {
  position: relative;
}

.grid-card-product .column-card-product>.heading {
  margin-bottom: 28px;
}

.grid-card-product .column-card-product .card-product:not(:last-child) {
  margin-bottom: 16px;
}

.wg-benefit {
  padding: 8px 0;
  background-color: rgb(253, 235, 235);
}

.wg-benefit .benefit-item {
  display: flex;
  gap: 8px;
  align-items: center;
}

.wg-benefit .benefit-item p {
  white-space: nowrap;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  display: -webkit-box;
  overflow: hidden;
}

.section-pet-store {
  background-image: url(../images/section/bg-1.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.wg-pet-store {
  border-radius: 16px;
  overflow: hidden;
}

.wg-pet-store .pet-store-heading {
  padding: 10px 20px;
  display: flex;
  gap: 16px;
  align-items: center;
}

.wg-pet-store .pet-store-heading .image {
  width: 58px;
  height: 58px;
  border-radius: 50%;
  overflow: hidden;
}

.wg-pet-store .pet-store-heading .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.wg-pet-store .pet-store-list {
  padding: 8px 0;
  background-color: var(--white);
}

.wg-pet-store .pet-store-list .pet-store-item {
  display: flex;
  padding: 11px 24px;
}

.wg-big-save {
  position: relative;
}

.wg-big-save>img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 16px;
  min-height: 320px;
}

.wg-big-save .content {
  position: absolute;
  top: 50%;
  left: 60px;
  transform: translateY(-50%);
  z-index: 5;
}

.wg-big-save .content .heading {
  margin-bottom: 12px;
}

.wg-big-save .content>.text {
  margin-bottom: 26px;
}

.section-flash-sale {
  background-image: url(../images/section/bg-2.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.section-flash-sale .wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  min-height: 482px;
}

.section-flash-sale .wrap>img {
  margin-top: -130px;
}

.section-flash-sale .wrap .left {
  min-width: 220px;
}

.section-flash-sale .wrap .left h1 {
  margin-bottom: 12px;
}

.section-flash-sale .wrap .left p {
  margin-bottom: 30px;
}

.section-flash-sale .wrap .left ul li:not(:last-child) {
  margin-bottom: 8px;
}

.section-flash-sale .wrap .right h3 {
  margin-bottom: 8px;
}

.section-flash-sale .wrap .right p {
  margin-bottom: 28px;
}

.section-flash-sale .wrap .right .tf-countdown-lg {
  margin-bottom: 28px;
}

.section-flash-sale .wrap .right .tf-countdown-lg .countdown__timer {
  justify-content: center;
}

.section-flash-sale .wrap .right .tf-countdown-lg .countdown__item {
  background-color: var(--white);
  border-radius: 8px;
  width: 80px;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.loadmore-item .fl-item {
  display: none;
}

.page-search-inner .tf-col-quicklink {
  display: flex;
  flex-wrap: wrap;
  margin-top: 14px;
}

.page-search-inner .tf-col-quicklink .title {
  font-weight: 600;
  margin-right: 9px;
}

/* sib-form */
.sib-form {
  padding: 0;
  font-family: "Kumbh Sans", sans-serif !important;
}

#sib-container {
  background-color: unset;
  padding: 0;
  display: block;
}

.sib-form .entry__field {
  background-color: unset;
  border: 0;
  box-shadow: none !important;
  margin: 0;
}

.sib-form .sib-form-container .input {
  border: 2px solid var(--line);
  outline: 0;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  font-size: 16px;
  line-height: 26px;
  border-radius: 8px;
  padding: 9px 16px;
  width: 100%;
  background: var(--white);
  color: var(--main);
  font-weight: 400;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  box-sizing: border-box !important;
}

.sib-form .sib-form-container .input:hover,
.sib-form .sib-form-container .input:focus {
  border-color: var(--main);
}

.sib-form .sib-form-container .input::placeholder {
  color: var(--secondary-2);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.sib-form .entry__specification,
.sib-form .entry__error,
.entry__specification,
.entry__label {
  margin: 0 !important;
}

.sib-form-block {
  padding: 0;
}

.sib-optin {
  display: none;
}

#sib-form {
  position: relative;
}

#error-message {
  color: var(--critical);
}

#success-message {
  color: var(--success);
}

.sib-form-message-panel {
  border: 0;
  padding: 0;
}

.sib-form-message-panel .sib-form-message-panel__text {
  justify-content: center;
  padding: 0;
}

.sib-form-block__button .clickable__icon {
  display: none;
}

/*-------------- Responsive ----------------- */
/* Media Queries
-------------------------------------------------------------- */
@media (min-width: 576px) {
  .tf-grid-layout.sm-col-2 {
    grid-template-columns: 1fr 1fr;
  }

  .tf-grid-layout.sm-col-3 {
    grid-template-columns: repeat(3, 1fr);
  }

  .tf-grid-layout.sm-col-4 {
    grid-template-columns: repeat(4, 1fr);
  }

  .tf-grid-layout.sm-col-5 {
    grid-template-columns: repeat(5, 1fr);
  }

  .tf-grid-layout.sm-col-6 {
    grid-template-columns: repeat(6, 1fr);
  }

  .tf-grid-layout.sm-col-7 {
    grid-template-columns: repeat(7, 1fr);
  }

  .gallery-item .box-icon {
    width: 40px;
    height: 40px;
    font-size: 24px;
  }

  .flat-img-with-text-v4 .relatest-post .relatest-post-item .image {
    width: 180px;
    height: 120px;
  }

  .flat-img-with-text-v4 .relatest-post .relatest-post-item .content {
    gap: 12px;
  }
}

@media (min-width: 768px) {
  .canvas-filter {
    max-width: 400px;
  }

  .canvas-filter .canvas-header {
    padding: 15px 32px;
  }

  .canvas-filter .canvas-body {
    padding: 20px 32px;
  }

  .canvas-filter .canvas-bottom {
    padding: 18px 32px;
  }

  .widget-facet {
    padding-bottom: 32px;
  }

  .widget-facet.facet-price .box-price-product {
    gap: 20px;
  }

  .list-account-address {
    grid-template-columns: repeat(2, 1fr);
  }

  /* .about-us-features {
    max-width: 620px;
  }

  .about-us-content {
    max-width: 700px;
    margin-left: 10px;
    width: 615px;
  } */

  .wow.fadeInUp,
  .wow.fadeInLeft {
    visibility: visible;
    animation-duration: 1s;
  }

  .frequently-bought-together-2,
  .slider-scroll,
  .thumbs-slider {
    max-width: 615px;
  }

  .tf-product-info-list {
    max-width: 615px;
    margin-left: auto;
  }

  .canvas-mb {
    width: 100% !important;
    max-width: 367px;
  }

  .canvas-mb .mb-canvas-content {
    min-width: 367px;
  }

  .tf-grid-layout.md-col-2 {
    grid-template-columns: 1fr 1fr;
  }

  .tf-grid-layout.md-col-3 {
    grid-template-columns: repeat(3, 1fr);
  }

  .tf-grid-layout.md-col-4 {
    grid-template-columns: repeat(4, 1fr);
  }

  .tf-grid-layout.md-col-5 {
    grid-template-columns: repeat(5, 1fr);
  }

  .tf-grid-layout.md-col-6 {
    grid-template-columns: repeat(6, 1fr);
  }

  .tf-grid-layout.md-col-7 {
    grid-template-columns: repeat(7, 1fr);
  }

  .card-product .card-product-wrapper .on-sale-wrap {
    top: 12px;
    right: 12px;
    left: 12px;
  }

  .card-product.card-product-size .list-btn-main {
    bottom: 44px;
  }

  .card-product.style-7.card-product-size .list-product-btn,
  .card-product.style-6.card-product-size .list-product-btn,
  .card-product.style-2.card-product-size .list-product-btn {
    bottom: 44px;
  }

  .flat-img-with-text {
    flex-direction: row;
  }

  .flat-img-with-text .banner-right {
    padding-top: 40px;
  }

  .flat-img-with-text .banner-left {
    padding-bottom: 40px;
    padding-right: 60px;
  }

  .flat-img-with-text .banner-content {
    position: absolute;
    bottom: 40px;
    left: 25.3%;
    transform: unset;
    top: auto;
  }

  .flat-img-with-text-v2 .banner-left {
    margin-bottom: 0;
  }

  .collection-position-2 .on-sale-wrap {
    top: 12px;
    right: 12px;
    left: 12px;
  }

  .grid-cls-v1 {
    display: grid;
    grid-template-areas: "item1 item2 item4" "item1 item3 item4";
    gap: 15px;
    grid-template-columns: 1fr 1fr 1fr;
  }

  .grid-cls-v1 .item1 {
    grid-area: item1;
  }

  .grid-cls-v1 .item2 {
    grid-area: item2;
  }

  .grid-cls-v1 .item3 {
    grid-area: item3;
  }

  .grid-cls-v1 .item4 {
    grid-area: item4;
  }

  .grid-cls-v1 .collection-position-2 .img-style {
    height: 100%;
  }

  .grid-cls-v2 {
    display: grid;
    grid-template-areas: "item1 item2" "item1 item3";
    gap: 15px;
  }

  .grid-cls-v2 .item1 {
    grid-area: item1;
  }

  .grid-cls-v2 .item2 {
    grid-area: item2;
  }

  .grid-cls-v2 .item3 {
    grid-area: item3;
  }

  .tf-grid-layout .banner-discover-left {
    padding-right: 15px;
  }

  .tf-grid-layout .banner-discover-right {
    padding-left: 15px;
  }

  .flat-banner-parallax-v3 .fl-content,
  .flat-banner-parallax-v2 .fl-content {
    padding: 30px;
  }

  .tf-compare-col {
    min-width: 300px;
  }
}

@media (min-width: 992px) {
  .slider-parallax .wrap-slider {
    background-attachment: fixed;
  }

  #scroll-top {
    bottom: 40px;
    right: 40px;
  }

  #scroll-top.type-1 {
    bottom: 113px;
  }

  .canvas-filter .canvas-bottom .tf-btn {
    padding: 12px;
  }

  .image-select.type-currencies>.dropdown-menu,
  .image-select.type-languages>.dropdown-menu {
    margin-left: -20px !important;
  }

  .modal.fullRight.fade {
    transition: opacity 0.3s linear;
  }

  .page-title {
    padding: 68px 0 90px;
  }

  .breadcrumbs-default {
    padding: 60px 0px 80px;
  }

  .btn-sidebar-account {
    display: none;
  }

  .tab-shipping.type-two-cols {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .sw-dots {
    gap: 12px;
  }

  .sw-dots:not(.swiper-pagination-lock) {
    margin-top: 40px;
  }

  .nav-sw {
    width: 44px;
    height: 44px;
  }

  .nav-sw .icon {
    font-size: 20px;
  }

  .slider-default.slider-position .box-content {
    left: 60px;
    right: 60px;
    bottom: 60px;
  }

  .tf-slideshow.slider-electronic .wrap-slider {
    height: 600px;
  }

  .tf-slideshow .card-box {
    padding: 30px;
  }

  .wrap-slider .content-slider {
    gap: 32px;
  }

  .wrap-slider .box-title-slider {
    gap: 0px;
  }

  .sidebar.maxw-360 {
    max-width: 360px;
    margin-left: auto;
  }

  .tf-topbar .topbar-left {
    gap: 20px;
  }

  .tf-grid-layout {
    column-gap: 30px;
    row-gap: 30px;
  }

  .tf-grid-layout.lg-col-2 {
    grid-template-columns: 1fr 1fr;
  }

  .tf-grid-layout.lg-col-3 {
    grid-template-columns: repeat(3, 1fr);
  }

  .tf-grid-layout.lg-col-4 {
    grid-template-columns: repeat(4, 1fr);
  }

  .tf-grid-layout.lg-col-5 {
    grid-template-columns: repeat(5, 1fr);
  }

  .tf-grid-layout.lg-col-6 {
    grid-template-columns: repeat(6, 1fr);
  }

  .tf-grid-layout.lg-col-7 {
    grid-template-columns: repeat(7, 1fr);
  }

  .card-product .card-product-info {
    padding-top: 16px;
  }

  .card-product .list-btn-main {
    bottom: 12px;
    left: 14px;
    right: 14px;
  }

  .card-product .list-btn-main .box-icon {
    width: 42px;
    height: 42px;
  }

  .card-product .list-btn-main .box-icon .icon {
    font-size: 24px;
  }

  .card-product .btn-main-product {
    padding: 10px;
  }

  .card-product .list-product-btn {
    top: 8px;
    right: 8px;
    gap: 8px;
  }

  .card-product .list-product-btn .box-icon {
    width: 40px;
    height: 40px;
    min-width: 40px;
  }

  .card-product .list-product-btn .box-icon .icon {
    font-size: 24px;
  }

  .card-product.style-7 .list-product-btn,
  .card-product.style-6 .list-product-btn,
  .card-product.style-2 .list-product-btn {
    bottom: 20px;
  }

  .card-product.style-5 .list-btn-main {
    gap: 12px;
  }

  .card-product.style-6 .list-product-btn {
    gap: 12px;
  }

  .card-product.style-swatch-img .list-color-product {
    gap: 4px;
  }

  .card-product.style-swatch-img .list-color-product .list-color-item {
    width: 40px;
    height: 40px;
  }

  .card-product .box-icon svg {
    width: 24px;
  }

  .card-product.style-list {
    gap: 40px;
  }

  .card-product.style-list .list-product-btn {
    gap: 12px;
  }

  .card-product.style-list .list-product-btn .btn-main-product {
    max-width: 272px;
    width: 100%;
    border: 2px solid var(--line);
    height: 48px;
    line-height: 48px;
    padding-top: 0;
    padding-bottom: 0;
  }

  .card-product.style-list .list-product-btn .box-icon {
    border: 2px solid var(--line);
    width: 48px;
    height: 48px;
    min-width: 48px;
  }

  .card-product.style-list .size-box {
    margin-bottom: 20px;
  }

  .card-product.style-list .size-box .size-item {
    font-size: 16px;
    line-height: 24px;
  }

  .card-product.style-list .list-color-product {
    margin-bottom: 12px;
  }

  .card-product.style-list .title {
    font-size: 20px;
    line-height: 30px;
  }

  .card-product.list-st-2 {
    gap: 24px;
  }

  .card-product.list-st-2 .card-product-info {
    gap: 16px;
    padding: 12px 0px;
  }

  .card-product.list-st-2 .box-icon {
    width: 48px;
    height: 48px;
    min-width: 48px;
  }

  .card-product.list-st-3 {
    border-width: 2px;
    padding: 24px;
    gap: 32px;
  }

  .card-product.list-st-3 .inner-wrapper-card .box-progress-stock {
    margin-top: 16px;
  }

  .card-product.list-st-3 .card-product-info {
    gap: 20px;
  }

  .card-product.list-st-3 .card-product-info .inner-top {
    gap: 8px;
    padding-bottom: 12px;
    margin-bottom: 12px;
  }

  .card-product.list-st-3 .card-product-info .title,
  .card-product.list-st-3 .card-product-info .price {
    font-size: 20px;
    line-height: 28px;
  }

  .card-product.list-st-3 .card-product-info .inner-bottom {
    gap: 16px;
  }

  .card-product.list-st-3 .card-product-info .list-product-btn {
    gap: 10px;
  }

  .card-product.list-st-3 .card-product-info .list-product-btn .box-icon {
    border-width: 2px;
    width: 40px;
    height: 40px;
  }

  .card-product.list-st-3 .card-product-info .list-product-btn .box-icon .tooltip {
    margin: 0;
  }

  .card-product.list-st-3 .card-product-info .list-product-btn .btn-main-product {
    height: 40px;
    line-height: 40px;
    padding-top: 0;
    padding-bottom: 0;
  }

  .card-product .countdown-box .countdown__timer {
    gap: 18px;
  }

  .collection-default {
    gap: 32px;
  }

  .collection-default .content {
    gap: 12px;
  }

  .collection-position.style-lg .content {
    gap: 12px;
  }

  .collection-position-2 .content {
    left: 20px;
    right: 20px;
    bottom: 20px;
  }

  .collection-position-2 .cls-btn .icon {
    font-size: 20px;
  }

  .collection-position-2.style-2 .cls-btn {
    padding: 16px 28px;
  }

  .collection-position-2.style-3 .cls-btn {
    padding: 12px 24px;
  }

  .collection-position-2.style-4 .cls-btn {
    padding: 12px 52px;
  }

  .collection-position-2.style-5 .content {
    bottom: 40px;
  }

  .collection-position-2.style-6 .cls-btn {
    padding: 12px 40px;
  }

  .collection-position-2.style-7 .content {
    left: 28px;
    right: 28px;
    bottom: 28px;
    padding-top: 200px;
  }

  .collection-position-2.style-7:hover {
    transform: translateY(-10px);
    box-shadow: var(--shadow2);
  }

  /* .collection-position-2.style-7 {
        position: relative;
        overflow: hidden;
        border-radius: 12px;
        box-shadow: var(--shadow1);
        transition: transform 0.3s ease, box-shadow 0.3s ease;
    } */

  .collection-position-2 .cls-content {
    padding: 16px 20px;
  }

  .collection-position-2.radius-lg {
    border-radius: 40px;
  }

  .collection-position-3 .archive-top {
    left: 40px;
    top: 22px;
    gap: 12px;
  }

  .collection-position-3 .archive-btn {
    left: 40px;
    bottom: 40px;
  }

  .slider-collection .collection-position-2 .cls-btn {
    padding: 12px 52px;
  }

  .slider-collection .collection-position-2 .cls-btn .icon {
    font-size: 24px;
  }

  .slider-collection .collection-position-2 .content {
    bottom: 40px;
  }

  .tab-product {
    gap: 40px;
    margin-bottom: 40px;
  }

  .tab-product .nav-tab-item a {
    font-size: 30px;
    line-height: 42px;
  }

  .swiper .sec-btn,
  .flat-animate-tab .sec-btn {
    margin-top: 40px;
  }

  .flat-countdown-banner .tf-countdown-lg .countdown__timer {
    display: flex;
    justify-content: flex-end;
  }

  .flat-countdown-banner .banner-img {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    right: auto;
  }

  .testimonial-item .img-style .box-icon {
    visibility: hidden;
    opacity: 0;
    width: 40px;
    height: 40px;
    font-size: 24px;
  }

  .testimonial-item:hover .img-style .box-icon {
    visibility: visible;
    opacity: 1;
  }

  .tf-marquee .marquee-child-item {
    padding-left: 25px;
    padding-right: 25px;
  }

  .tf-marquee.marquee-style2 .marquee-child-item {
    padding-left: 20px;
    padding-right: 20px;
  }

  .loobook-product {
    gap: 12px;
  }

  .loobook-product .content .btn-lookbook {
    margin-top: 12px;
  }

  .loobook-product.style-row .img-style {
    max-width: 100px;
    max-height: 100px;
  }

  .lookbook-item .dropend .dropdown-menu {
    --bs-dropdown-min-width: 16rem;
  }

  .flat-img-with-text {
    display: flex;
    justify-content: space-between;
    gap: 30px;
  }

  .flat-img-with-text .banner {
    width: 50%;
  }

  .flat-img-with-text .banner-right {
    padding-top: 60px;
  }

  .flat-img-with-text .banner-left {
    padding-bottom: 60px;
    padding-right: 80px;
  }

  .flat-img-with-text .banner-content {
    padding: 40px 60px 37px 60px;
    bottom: 60px;
  }

  .flat-img-with-text .banner-content .content-text {
    margin-bottom: 32px;
    gap: 12px;
  }

  .tab-banner .nav-tab-item .nav-tab-link {
    padding-top: 20px;
    padding-bottom: 20px;
  }

  .tab-banner .nav-tab-item .nav-tab-link .icon {
    font-size: 20px;
  }

  .testimonial-item-v2 {
    gap: 20px;
  }

  .testimonial-item-v2 .quote-box {
    gap: 20px;
  }

  .testimonial-item-v2 .quote-box .icon {
    font-size: 44px;
  }

  .tf-sw-testimonial .box-navigation {
    margin-top: 28px;
  }

  .flat-img-with-text-v3 .banner-left {
    padding-right: 60px;
  }

  .flat-img-with-text-v3 .box-title {
    margin-bottom: 40px;
    gap: 12px;
  }

  .flat-img-with-text-v4 {
    gap: 60px;
    grid-template-columns: 1fr 1fr;
  }

  .list-collection {
    gap: 40px;
    margin-bottom: 40px;
  }

  .list-collection.style-lg .cls-item {
    gap: 40px;
  }

  .list-collection.style-lg .cls-item .img-cls {
    width: 133px;
    height: 100px;
  }

  .flat-countdown-banner-2 .box-content .tf-countdown-lg {
    margin-top: 24px;
  }

  .flat-countdown-banner-2 .box-content .btn-banner {
    margin-top: 40px;
  }

  .banner-cls {
    position: relative;
  }

  .banner-cls .cls-content {
    gap: 36px;
    left: 40px;
    right: 40px;
    bottom: 40px;
  }

  .banner-cls .cls-content .box-title-cls {
    gap: 12px;
  }

  .flat-single-home:not(.flat-single-home-default) .tf-product-info-wrap,
  .flat-single-home:not(.flat-single-home-default) .tf-product-media-wrap {
    padding-left: 15px;
    padding-right: 15px;
  }

  .flat-single-home.flat-single-home-default .tf-product-info-wrap {
    padding-left: 15px;
  }

  .flat-banner-parallax {
    padding: 182px 0px;
  }

  .flat-banner-parallax .fl-content {
    gap: 36px;
  }

  .flat-banner-parallax-v3 .fl-content,
  .flat-banner-parallax-v2 .fl-content {
    padding: 40px;
  }

  .grid-cls-v2 {
    gap: 30px;
  }

  .testimonial-item.style-3 {
    padding: 32px;
  }

  .banner-cls-discover .cls-content {
    gap: 36px;
  }

  .banner-cls-discover .cls-content .box-title-top {
    gap: 12px;
  }

  .tf-grid-layout .banner-discover-left {
    padding-right: 30px;
  }

  .tf-grid-layout .banner-discover-right {
    padding-left: 30px;
  }

  .flat-with-text-lookbook-v2 {
    display: flex;
    align-items: center;
  }

  .flat-with-text-lookbook-v2 .lookbook-content {
    width: 50%;
    padding-bottom: 0;
  }

  .flat-with-text-lookbook-v2 .banner-img {
    width: 50%;
  }

  .wrapper-control-shop .tf-list-layout .card-product {
    margin-bottom: 40px;
    padding-bottom: 40px;
  }

  .wrapper-control-shop .tf-list-layout .wg-pagination {
    margin-top: 40px;
  }

  .wrapper-control-shop .tf-grid-layout {
    row-gap: 40px;
  }

  .tf-table-page-cart th {
    font-size: 20px;
    padding-left: 20px;
    padding-right: 20px;
    text-align: center;
  }

  .tf-table-page-cart th:last-child {
    padding-right: 0;
  }

  .tf-table-page-cart th:first-child {
    padding-left: 0;
    text-align: start;
  }

  .tf-table-page-cart td {
    padding: 28px 20px;
  }

  .box-order {
    padding: 24px;
  }

  .box-order .ship {
    gap: 40px;
  }

  .tf-page-checkout .wrap:not(:last-child) {
    margin-bottom: 40px;
  }

  .tf-page-checkout .wrap .title {
    margin-bottom: 20px;
  }

  .tf-page-checkout .login-box {
    padding: 20px;
  }

  .tf-page-checkout .login-box .grid-2 {
    gap: 20px;
  }

  .tf-page-checkout .info-box {
    gap: 20px;
  }

  .payment-box .payment-item:not(:last-child) {
    margin-bottom: 20px;
  }

  .payment-box .payment-item .payment-body {
    gap: 19px;
  }

  .payment-box .payment-item .payment-body .input-payment-box {
    gap: 20px;
  }

  .form-payment .tf-btn {
    margin-top: 40px;
  }

  .flat-sidebar-checkout .item-product {
    gap: 24px;
  }
}

@media (min-width: 1025px) {
  .flat-img-with-text .banner-content h3 {
    line-height: 52px;
  }

  .tf-marquee.marquee-style2 .marquee-child-item .icon {
    font-size: 40px;
  }
}

@media (min-width: 1200px) {
  .sidebar-filter .canvas-body {
    padding: 0;
  }

  .dropdown-filter {
    max-width: 100%;
    position: absolute;
    z-index: 100;
    padding: 30px 0px 40px;
    top: 100%;
    left: 0;
    right: 0;
    opacity: 0;
    visibility: hidden;
  }

  .dropdown-filter .widget-facet {
    margin-bottom: 0;
    padding-bottom: 0;
    border: 0;
  }

  .dropdown-filter .canvas-body {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 30px;
    row-gap: 40px;
  }

  .dropdown-filter.show {
    margin-top: 10px;
    opacity: 1;
    visibility: visible;
  }

  .container-full2 {
    padding: 0 109px;
    position: relative;
  }

  .nav-sw.lg {
    width: 60px;
    height: 60px;
    border-color: transparent;
  }

  .nav-sw.lg .icon {
    font-size: 28px;
  }

  .slider-padding,
  .header-fullwidth {
    padding-left: 40px;
    padding-right: 40px;
  }

  .slider-default .box-content {
    left: 80px;
    right: 80px;
    bottom: 120px;
  }

  .tf-slideshow .wrap-pagination {
    bottom: 40px;
  }

  .tf-slideshow .nav-sw.nav-sw-left {
    left: 60px;
  }

  .tf-slideshow .nav-sw.nav-sw-right {
    right: 60px;
  }

  .tf-slideshow.slider-position .wrap-pagination {
    bottom: 20px;
  }

  .tf-slideshow.slider-pos-nav .nav-sw.nav-sw-left {
    left: 40px;
  }

  .tf-slideshow.slider-pos-nav .nav-sw.nav-sw-right {
    right: 40px;
  }

  .tf-slideshow .card-box {
    padding: 60px;
  }

  .tf-slideshow .card-box.style-2 {
    margin-right: -10px;
  }

  .tf-slideshow.slideshow-effect .wrap-pagination {
    bottom: 32px;
  }

  .header-default .wrapper-header {
    min-height: 82px;
  }

  .header-absolute {
    margin-bottom: -82px;
  }

  .footer .footer-menu {
    gap: 100px;
  }

  .tf-dropdown-sort {
    padding: 5px 12px;
    min-width: 164px;
  }

  .tf-grid-layout.xl-col-2 {
    grid-template-columns: 1fr 1fr;
  }

  .tf-grid-layout.xl-col-3 {
    grid-template-columns: repeat(3, 1fr);
  }

  .tf-grid-layout.xl-col-4 {
    grid-template-columns: repeat(4, 1fr);
  }

  .tf-grid-layout.xl-col-5 {
    grid-template-columns: repeat(5, 1fr);
  }

  .tf-grid-layout.xl-col-6 {
    grid-template-columns: repeat(6, 1fr);
  }

  .tf-grid-layout.xl-col-7 {
    grid-template-columns: repeat(7, 1fr);
  }

  .card-product .marquee-product {
    display: flex;
  }

  .card-product .tooltip,
  .card-product .countdown-wrap {
    display: block;
  }

  .card-product .list-product-btn {
    top: 12px;
    right: 12px;
  }

  .card-product:not(.style-list, .list-st-2, .list-st-3) .size-list,
  .card-product:not(.style-list, .list-st-2, .list-st-3) .list-btn-main {
    transform: translateY(100%);
    opacity: 0;
    visibility: hidden;
  }

  .card-product:not(.style-list, .list-st-2, .list-st-3) .box-icon {
    transform: translate(20px);
    opacity: 0;
    visibility: hidden;
  }

  .card-product:not(.style-list, .list-st-2, .list-st-3) .card-product-info .btn-main-product {
    transform: translateY(20px);
    opacity: 0;
    visibility: hidden;
  }

  .card-product:hover:not(.style-list, .list-st-2, .list-st-3) .marquee-product {
    opacity: 0;
    visibility: hidden;
  }

  .card-product:hover:not(.style-list, .list-st-2, .list-st-3) .variant-wrap {
    transform: translateY(100%);
    opacity: 0;
    visibility: hidden;
  }

  .card-product:hover:not(.style-list, .list-st-2, .list-st-3) .size-list,
  .card-product:hover:not(.style-list, .list-st-2, .list-st-3) .box-icon,
  .card-product:hover:not(.style-list, .list-st-2, .list-st-3) .list-btn-main {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translate(0) !important;
  }

  .card-product:hover:not(.style-list, .list-st-2, .list-st-3) .card-product-info .btn-main-product {
    transform: translate(0);
    opacity: 1;
    visibility: visible;
  }

  .card-product.style-7 .list-product-btn,
  .card-product.style-6 .list-product-btn,
  .card-product.style-2 .list-product-btn {
    left: 12px;
    right: 12px;
  }

  .card-product.style-7 .list-product-btn .box-icon,
  .card-product.style-6 .list-product-btn .box-icon,
  .card-product.style-2 .list-product-btn .box-icon {
    transform: translateY(20px);
  }

  .card-product.style-swatch-img .list-color-product {
    gap: 8px;
  }

  .card-product.style-swatch-img .list-color-product .list-color-item {
    width: 48px;
    height: 48px;
    padding: 4px;
    border: 2px solid transparent;
  }

  .card-product.list-st-3 .card-product-info {
    gap: 35px;
  }

  .tf-countdown-lg .countdown__timer {
    gap: 47px;
  }

  .tf-countdown-lg .countdown__item {
    min-width: 68px;
    min-height: 90px;
  }

  .tf-countdown-lg .countdown__item .countdown__value {
    font-size: 56px;
    line-height: 68px;
    margin-bottom: -3px;
  }

  .tf-countdown-lg .countdown__item:not(:last-child)::after {
    font-size: 30px;
    line-height: 42px;
    right: -27px;
  }

  .gallery-item .box-icon {
    opacity: 0;
    visibility: hidden;
  }

  .gallery-item:hover::before {
    opacity: 1;
    visibility: visible;
  }

  .gallery-item:hover .box-icon {
    opacity: 1;
    visibility: visible;
  }

  .lookbook-item .dropdown-menu {
    --bs-dropdown-min-width: 14rem;
  }

  .lookbook-item .dropend .dropdown-menu {
    --bs-dropdown-min-width: 324px;
  }

  .flat-img-with-text {
    display: flex;
    justify-content: space-between;
    gap: 30px;
  }

  .flat-img-with-text .banner {
    width: 50%;
  }

  .flat-img-with-text .banner-right {
    padding-top: 80px;
  }

  .flat-img-with-text .banner-left {
    padding-bottom: 80px;
    padding-right: 157px;
  }

  .flat-img-with-text .banner-content {
    bottom: 80px;
  }

  .flat-img-with-text-v2 {
    align-items: center;
  }

  .flat-img-with-text-v2 .banner-left {
    padding-right: 110px;
    gap: 60px;
  }

  .flat-img-with-text-v2 .banner-right {
    padding-left: 47px;
  }

  .flat-img-with-text-v3 .banner-left {
    padding-right: 158px;
  }

  .flat-img-with-text-v4 {
    gap: 110px;
  }

  .flat-with-text-lookbook .lookbook-content {
    padding-left: 110px;
    padding-right: 22px;
  }

  .flat-with-text-lookbook .lookbook-content .box-title {
    margin-bottom: 34px;
  }

  .flat-with-text-lookbook .lookbook-content .total-lb {
    margin-top: 34px;
  }

  .flat-with-text-lookbook-v2 .lookbook-content {
    padding: 30px 80px;
    padding-right: 100px;
  }

  .flat-with-text-lookbook-v2 .lookbook-content .box-title {
    margin-bottom: 32px;
  }

  .flat-with-text-lookbook-v2 .lookbook-content .total-lb {
    margin-top: 32px;
  }

  .tf-sw-testimonial .testimonial-item-v2 {
    padding-left: 140px;
    padding-right: 140px;
  }

  .grid-cls-v1 {
    gap: 30px;
  }

  .layout-sw-center {
    overflow: hidden;
  }

  .layout-sw-center .tf-sw-categories {
    margin: 0 -300px;
  }

  .flat-single-home:not(.flat-single-home-default) .tf-product-media-main {
    width: calc(100% - 110px);
  }

  .flat-single-home:not(.flat-single-home-default) .tf-product-media-main .item {
    max-height: 653px;
  }

  .flat-single-home:not(.flat-single-home-default) .tf-product-media-thumbs {
    width: 100px;
    max-height: 653px;
  }

  .tf-compare-field {
    padding: 15px 30px;
  }

  .tf-compare-item {
    padding: 32px 40px 20px;
  }

  .tf-compare-col {
    min-width: 350px;
  }

  .box-order .ship {
    gap: 65px;
  }

  .fl-sidebar-cart {
    padding-left: 30px;
  }

  .line-separation {
    width: 1px;
    height: 100%;
  }

  .nav-account .dropdown-account .list-menu-item a {
    padding: 16px 0px;
  }

  .nav-account .dropdown-login .tf-btn {
    padding: 12px 32px;
  }

  .wrapper-chat {
    right: 60px;
  }

  .hover-cursor-img {
    position: relative;
  }

  .hover-cursor-img .hover-image {
    position: fixed;
    transform: scale(0);
    pointer-events: none;
    opacity: 0;
    transition: transform 0.3s ease, opacity 0.3s ease;
    z-index: 1000;
    display: block;
  }

  .hover-cursor-img .hover-image img {
    max-width: 150px;
    box-shadow: var(--shadow1);
  }
}

@media (min-width: 1400px) {
  .slider-parallax .wrap-slider {
    min-height: 100vh;
  }
}

@media (min-width: 1440px) {
  .slider-video .wrap-slider {
    height: 680px;
  }

  .header-style-02 .logo-header {
    margin-left: 40px;
  }

  .header-default .box-support {
    margin-right: 44px;
  }

  .tf-grid-layout.xxl-col-2 {
    grid-template-columns: 1fr 1fr;
  }

  .tf-grid-layout.xxl-col-3 {
    grid-template-columns: repeat(3, 1fr);
  }

  .tf-grid-layout.xxl-col-4 {
    grid-template-columns: repeat(4, 1fr);
  }

  .tf-grid-layout.xxl-col-5 {
    grid-template-columns: repeat(5, 1fr);
  }

  .tf-grid-layout.xxl-col-6 {
    grid-template-columns: repeat(6, 1fr);
  }

  .tf-grid-layout.xxl-col-7 {
    grid-template-columns: repeat(7, 1fr);
  }

  .tf-slideshow .slider-group {
    gap: 20px;
  }

  .tf-slideshow .slider-group img {
    border-radius: 8px;
  }

  .flat-collection-circle .nav-sw-left {
    margin-left: -22px;
  }

  .flat-collection-circle .nav-sw-right {
    margin-right: -22px;
  }

  .nav-account .dropdown-account {
    min-width: 250px;
    left: -100px;
  }

  .nav-account .dropdown-login {
    min-width: 290px;
  }

  .header-fullwidth .nav-account .dropdown-login {
    left: auto;
    right: -100px;
  }
}

@media (min-width: 1600px) {
  .nav-account .dropdown-account {
    left: -70px;
    min-width: 320px;
  }

  .nav-account .dropdown-login {
    left: -100px;
  }
}

@media only screen and (max-width: 1439px) {
  .my-account-wrap {
    gap: 40px;
  }

  .terms-of-use-wrap {
    gap: 60px;
  }

  .product-fixed-price .tf-product-info-list {
    padding: 32px 15px;
  }

  .tf-main-product.full-width {
    padding: 0 15px;
    gap: 0 30px;
  }

  .tf-main-product.full-width>div {
    width: calc(50% - 15px);
  }

  .offcanvas-compare .offcanvas-content .icon-close-popup {
    top: 10px;
    right: 10px;
    width: 25px;
    height: 25px;
    font-size: 10px;
  }

  .offcanvas-compare .offcanvas-content .tf-compare-list {
    gap: 20px;
  }

  .offcanvas-compare .offcanvas-content .tf-compare-list .tf-compare-wrap {
    padding-right: 0;
    margin-right: 0;
    gap: 25px;
  }

  .offcanvas-compare .offcanvas-content .tf-compare-list .tf-compare-item .icon-close {
    width: 28px;
    height: 28px;
    font-size: 10px;
  }

  .offcanvas-compare .offcanvas-content .tf-compare-list .tf-compare-item>.btns-repeat {
    right: -22px;
  }
}

@media only screen and (max-width: 1399px) {
  .header-style-2 .box-nav-ul {
    gap: 13px;
  }

  .tf-slideshow .wrap-slider {
    height: 700px;
  }

  .wrapper-shop.tf-col-7 {
    column-gap: 15px;
  }

  .tf-control-layout .sw-layout-6,
  .tf-control-layout .sw-layout-7 {
    display: none;
  }
}

@media only screen and (max-width: 1199px) {
  .nav-account .dropdown-account {
    top: calc(100% + 20px);
  }

  .fl-sidebar-cart {
    margin-top: 30px;
  }

  .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;
  }

  .wg-free-delivery .free-delivery-info {
    padding-left: 30px;
    padding-right: 30px;
  }

  .tf-countdown.style-2 .countdown__timer {
    gap: 50px;
  }

  .tf-control-layout .sw-layout-5,
  .tf-control-layout .sw-layout-4 {
    display: none;
  }

  .login-wrap {
    gap: 60px;
  }

  .page-faqs-wrap {
    gap: 60px 30px;
  }

  .page-faqs-wrap .ask-question {
    width: 300px;
  }

  .page-404 .page-404-inner .content {
    max-width: unset;
  }

  .page-404 .page-404-inner .content .heading {
    font-size: 80px;
    line-height: 100px;
  }

  .contact-us-content {
    gap: 30px;
  }

  .wg-card-store .card-store-info {
    padding-left: 15px;
    padding-right: 15px;
  }

  .wg-card-store .card-store-info .card-store-heading {
    margin-bottom: 24px;
  }

  .wg-card-store .card-store-info>ul {
    gap: 20px;
  }

  .tf-store-list.style-row {
    margin-bottom: 40px;
  }

  .px-xl {
    padding-left: 15px;
    padding-right: 15px;
  }

  .pl-xl {
    padding-left: 15px;
  }

  .modal-search .modal-dialog .modal-content {
    padding: 15px;
    gap: 20px;
  }

  .modal-search .modal-dialog .modal-content .tf-grid-layout {
    padding-right: 10px;
    margin-right: -15px;
  }

  .modal-size-guide .modal-dialog {
    width: 700px;
  }

  .modal-size-guide .modal-dialog .modal-content {
    padding: 15px;
  }

  .modal-size-guide .modal-dialog .modal-content .icon-close-popup {
    width: 25px;
    height: 25px;
    font-size: 10px;
  }

  .modal-size-guide .modal-dialog .modal-content .widget-size {
    gap: 16px;
  }

  .modal-size-guide .modal-dialog .modal-content .widget-size .box-title-size .title-size {
    width: 70px;
  }

  .modal-size-guide .modal-dialog .modal-content .header {
    margin-bottom: 20px;
  }

  .tab-size {
    gap: 16px;
  }

  .tab-size .size-button-wrap {
    gap: 10px;
  }

  .tab-size .size-button-wrap .size-button-item {
    padding: 10px 0;
  }

  .logo-header {
    display: flex;
    justify-content: center;
    margin: 10px 0;
  }

  .header-default .wrapper-header .nav-icon {
    gap: 10px;
  }

  .header-style-3 .box-navigation {
    display: none;
  }

  .header-style-3 .wrapper-header-left {
    justify-content: center;
  }

  .list-color-product .list-color-item {
    width: 20px;
    height: 20px;
  }

  .slider-scroll,
  .thumbs-slider {
    flex-direction: column !important;
  }

  .slider-scroll>div,
  .thumbs-slider>div {
    width: 100%;
  }

  .slider-scroll .tf-product-media-thumbs,
  .thumbs-slider .tf-product-media-thumbs {
    order: 1;
  }

  .slider-nav-sw .nav-sw {
    display: none;
  }

  .slider-nav-sw .wrap-pagination {
    display: block;
  }

  .tf-slideshow .nav-sw {
    display: none;
  }

  .flat-spacing-5 {
    padding: 40px 30px;
  }
}

@media only screen and (max-width: 1024px) {
  .coming-soon .coming-soon-inner .content .heading {
    margin-bottom: 16px;
  }

  .title-display {
    font-size: 50px;
    line-height: 58px;
  }

  h1 {
    font-size: 46px;
    line-height: 58px;
  }

  h2 {
    font-size: 34px;
    line-height: 40px;
  }

  h3 {
    font-size: 30px;
    line-height: 38px;
  }

  h4 {
    font-size: 26px;
    line-height: 36px;
  }

  h5 {
    font-size: 20px;
    line-height: 26px;
  }

  h6 {
    font-size: 18px;
    line-height: 26px;
  }
}

@media only screen and (max-width: 991px) {
  .tf-sticky-btn-atc {
    bottom: 67px;
  }

  .tf-toolbar-bottom {
    display: flex;
  }

  .tf-add-cart-success {
    display: none;
  }

  .modal-search .tf-loading {
    height: 42px;
  }

  .icv__label {
    padding: 8px 15px;
  }

  #image-compare {
    width: 100%;
    height: 400px;
  }

  #image-compare img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .section-flash-sale .wrap {
    gap: 30px;
  }

  .section-flash-sale .wrap .image {
    display: none;
  }

  .wg-big-save .content {
    left: 15px;
  }

  .tf-list-categories.style-1 {
    display: none;
  }

  .slider-pet-store .wrap-slider .content-slider {
    padding-left: 15px;
    padding-right: 15px;
  }

  .grid-card-product {
    gap: 20px;
  }

  .tf-shop-control .tf-control-layout {
    gap: 6px;
  }

  .wg-pagination .pagination-item {
    width: 36px;
    height: 36px;
  }

  .wrap-sidebar-account {
    display: none;
  }

  .terms-of-use-wrap {
    gap: 30px;
  }

  .terms-of-use-wrap .left {
    width: 300px;
  }

  .terms-of-use-wrap .right .heading {
    margin-bottom: 32px;
  }

  .contact-us-map {
    flex-direction: column;
  }

  .contact-us-map .right {
    padding: 30px 15px;
    max-width: unset;
  }

  .tf-product-deals {
    padding-left: 15px;
    padding-right: 15px;
  }

  .product-fixed-scroll .accordion-product-wrap {
    padding-top: 20px;
  }

  .product-fixed-price .left-desc {
    max-width: unset;
    padding-top: 40px !important;
  }

  .product-fixed-price .grid-image-top {
    gap: 16px 15px;
    margin-bottom: 40px;
  }

  .product-fixed-price .grid-image-top .item-3 {
    margin-bottom: 16px;
  }

  .tf-sticky-btn-atc .tf-sticky-atc-infos {
    gap: 15px;
  }

  .tf-sticky-btn-atc .tf-sticky-atc-infos .tf-sticky-atc-btns {
    width: 150px;
  }

  .tf-sticky-btn-atc .tf-sticky-atc-infos .wg-quantity {
    width: 120px;
  }

  .tab-shipping {
    flex-direction: column;
  }

  .tf-slideshow .wrap-slider {
    height: 500px;
  }

  .tf-slideshow .box-title-slider p br {
    display: none;
  }

  .tf-slideshow .card-box br {
    display: none;
  }

  .sw-dots.type-circle .swiper-pagination-bullet {
    width: 10px !important;
    height: 10px !important;
  }

  .sw-dots.type-circle .swiper-pagination-bullet::after {
    width: 6px;
    height: 6px;
  }

  .sw-dots.type-square .swiper-pagination-bullet {
    width: 15px;
  }

  .sw-dots.type-square .swiper-pagination-bullet.swiper-pagination-bullet-active {
    width: 30px;
  }

  .product-description-list .product-description-list-item .product-description-list-content,
  .accordion-product-wrap .accordion-product-item .accordion-content {
    padding: 30px 15px;
  }

  .widget-tabs.style-menu-tabs {
    flex-wrap: wrap;
    gap: 28px;
  }

  .widget-tabs.style-menu-tabs .widget-menu-tab {
    flex-direction: row;
    width: 100%;
  }

  .widget-tabs.style-menu-tabs .widget-menu-tab .item-title {
    padding-left: 0 !important;
    flex-shrink: 0;
  }

  .widget-tabs.style-menu-tabs .widget-menu-tab .item-title::after {
    bottom: 0px;
    left: 0;
    width: 0;
    height: 1px !important;
    top: unset;
  }

  .widget-tabs.style-menu-tabs .widget-menu-tab .item-title.active::after {
    width: 100%;
  }

  .widget-tabs.style-menu-tabs .widget-content-inner {
    padding: 30px 15px;
  }

  .widget-tabs.style-1 .widget-menu-tab {
    justify-content: start;
  }

  .widget-tabs.style-1 .widget-content-inner {
    padding: 30px 15px;
  }

  .tab-description {
    flex-wrap: wrap;
  }

  .blog-detail-wrap>.inner {
    padding: 15px 15px 0;
  }

  .wg-blog .image {
    margin-bottom: 16px;
  }

  .wg-blog.style-1 .image {
    margin-bottom: 15px;
  }

  .tf-btn,
  button {
    padding: 12px 20px;
    font-size: 14px;
    line-height: 22px;
  }

  .tf-btn .icon,
  button .icon {
    font-size: 18px;
  }

  .btn-line {
    font-size: 14px;
    line-height: 22px;
  }

  footer {
    padding-bottom: 67px;
  }

  footer .footer-menu {
    margin-bottom: 30px;
  }

  footer .footer-menu>div {
    width: 50%;
  }

  footer .footer-infor {
    margin-bottom: 30px;
  }

  footer .footer-body {
    padding: 40px 0;
  }

  footer.has-pb {
    padding-bottom: 165px;
  }

  .mb-lg-30 {
    margin-bottom: 30px;
  }

  .flat-spacing-8,
  .flat-spacing {
    padding-top: 60px;
    padding-bottom: 60px;
  }

  .flat-spacing-2 {
    padding-top: 45px;
    padding-bottom: 45px;
  }

  .flat-spacing-3 {
    padding-top: 60px;
    padding-bottom: 60px;
  }

  .flat-spacing-4 {
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .flat-spacing-5 {
    padding: 40px 15px;
  }

  .flat-spacing-6 {
    padding-top: 60px;
    padding-bottom: 60px;
  }

  .space-30 {
    padding-left: 15px;
    padding-right: 15px;
  }

  .heading-section-2,
  .heading-section {
    margin-bottom: 30px;
  }

  [data-grid="grid-4"] {
    grid-template-columns: repeat(3, 1fr);
  }

  .flat-countdown-banner .banner-right {
    margin-top: 30px;
  }

  .testimonial-item .content {
    padding: 20px;
  }

  .testimonial-item .content-top {
    padding-bottom: 15px;
    margin-bottom: 15px;
  }

  .testimonial-item .box-avt {
    gap: 8px;
  }

  .banner-lookbook {
    height: 300px;
  }

  .loobook-product::before {
    content: none;
  }

  .testimonial-item.style-2 {
    padding: 15px;
  }

  .list-collection.style-lg .cls-item .text {
    font-size: 30px;
    line-height: 38px;
  }

  #scroll-top {
    width: 40px;
    height: 40px;
  }

  #scroll-top svg {
    width: 20px;
    height: 20px;
  }

  .tf-product-info-list .tf-countdown .countdown__timer {
    gap: 30px;
  }

  .tf-product-info-list .tf-countdown .countdown__item {
    width: 40px;
  }

  .tf-product-info-list .tf-countdown .countdown__item:not(:last-child)::after {
    right: -16px;
  }
}

@media only screen and (max-width: 767px) {
  footer.has-pb {
    padding-bottom: 197px;
  }

  .loobook-product:not(.style-row) .img-style {
    height: 120px;
  }

  .tab-product .nav-tab-item a {
    font-size: 18px;
    line-height: 30px;
  }

  .md-overflow-x {
    overflow-x: scroll;
    flex-wrap: nowrap;
    justify-content: start;
  }

  .footer .footer-heading-mobile {
    display: block;
    position: relative;
  }

  .footer .footer-heading-mobile::after {
    position: absolute;
    content: "";
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 12px;
    height: 1px;
    background-color: var(--main);
    transition: 0.25s ease-in-out;
  }

  .footer .footer-heading-mobile::before {
    position: absolute;
    content: "";
    right: 15px;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 1px;
    height: 12px;
    background-color: var(--main);
    transition: 0.25s ease-in-out;
  }

  .footer .footer-col-block.open .footer-heading-mobile::before {
    opacity: 0;
  }

  .footer .footer-col-block.open .footer-heading-mobile::after {
    transform: translate(0%, -50%) rotate(180deg);
  }

  .footer .footer-col-block .tf-collapse-content {
    display: none;
  }

  .footer .footer-menu {
    flex-direction: column;
    gap: 18px;
    margin-bottom: 18px;
  }

  .footer .footer-menu>div {
    width: 100%;
  }

  .section-flash-sale .wrap {
    flex-direction: column;
    padding: 30px 0;
  }

  .section-flash-sale .wrap>div {
    width: 100%;
    text-align: center !important;
  }

  .section-flash-sale .wrap p {
    margin-bottom: 16px !important;
  }

  .tf-compare-row:not(:first-child) .tf-compare-col:nth-child(2) {
    border-left: 1px solid var(--line);
  }

  .wg-pet-store .pet-store-heading {
    padding: 8px 15px;
  }

  .wg-pet-store .pet-store-list .pet-store-item {
    padding: 8px 15px;
  }

  .wg-benefit .benefit-item {
    justify-content: center;
  }

  .collection-position-2.style-3 .cls-btn h6 {
    flex-grow: 1;
  }

  .collection-position-2.style-3 .cls-btn .count-item {
    display: none;
  }

  .collection-position.style-1 .content {
    bottom: 24px;
    left: 15px;
  }

  .wg-free-delivery .free-delivery-info {
    padding-left: 20px;
    padding-right: 20px;
  }

  .tf-countdown.style-2 .countdown__timer {
    gap: 30px;
  }

  .tf-countdown.style-2 .countdown__timer .countdown__item {
    width: 50px;
    height: 50px;
  }

  .tf-countdown.style-2 .countdown__timer .countdown__item .countdown__value {
    font-size: 24px;
    line-height: 32px;
  }

  .tf-countdown.style-2 .countdown__timer .countdown__item .countdown__label {
    font-size: 12px;
    line-height: 20px;
    left: 42px;
  }

  .tf-control-layout .sw-layout-3 {
    display: none;
  }

  .wg-blog.style-row {
    flex-direction: column;
  }

  .wg-blog.style-row>* {
    width: 100% !important;
  }

  .wg-blog.style-row .content {
    padding: 16px 0 0 0;
    gap: 12px;
  }

  .login-wrap {
    flex-direction: column;
    gap: 40px;
  }

  .login-wrap::before {
    display: none;
  }

  .terms-of-use-wrap {
    flex-direction: column;
  }

  .terms-of-use-wrap .left {
    width: 100%;
    position: unset;
  }

  .terms-of-use-wrap .right .heading {
    margin-bottom: 20px;
  }

  .page-faqs-wrap {
    flex-direction: column;
  }

  .page-faqs-wrap .ask-question {
    width: unset;
    padding: 24px 15px;
  }

  .page-404 .page-404-inner {
    flex-direction: column;
  }

  .page-404 .page-404-inner .content {
    gap: 16px;
    text-align: center;
  }

  .page-404 .page-404-inner .content .heading {
    font-size: 36px;
    line-height: 48px;
  }

  .page-404 .page-404-inner .content a {
    margin-left: auto;
    margin-right: auto;
  }

  .contact-us-content {
    flex-direction: column;
  }

  .contact-us-content .right {
    max-width: unset;
  }

  .contact-us-content .right h4 {
    margin-bottom: 20px;
  }

  .tf-store-list {
    margin-bottom: 40px;
  }

  .tf-store-list .tf-store-item {
    padding: 20px 15px;
  }

  .map-contact {
    height: 500px;
  }

  .team-item .tf-social-icon a {
    width: 40px;
    height: 40px;
    font-size: 18px;
  }

  .form-bundle-product {
    padding: 24px 15px;
  }

  .form-bundle-product .tf-bundle-product-item {
    gap: 10px;
  }

  .form-bundle-product .tf-bundle-product-item .tf-check {
    margin: 0;
  }

  .reply-comment.style-1 .type-reply {
    margin-left: 15px;
  }

  .modal-wishlist .modal-content {
    max-width: min(500px, 90vw) !important;
  }

  .modal-wishlist .modal-content .tf-mini-cart-bottom,
  .modal-wishlist .modal-content .header {
    padding: 20px 15px;
  }

  .modal-wishlist .modal-content .tf-mini-cart-item {
    margin-left: 15px;
    margin-right: 15px;
  }

  .modal-shopping-cart .modal-content {
    max-width: min(500px, 90vw) !important;
  }

  .modal-quick-view .modal-content {
    max-width: min(500px, 90vw) !important;
    flex-direction: column;
    overflow-y: auto !important;
  }

  .modal-quick-view .modal-content .tf-quick-view-image {
    width: 100%;
    display: block;
  }

  .modal-quick-view .modal-content .tf-quick-view-image .wrap-quick-view {
    padding: 15px;
    display: flex;
    direction: ltr;
    height: unset;
  }

  .modal-quick-view .modal-content .tf-quick-view-image .wrap-quick-view .quickView-item {
    width: 200px;
    flex-shrink: 0;
    border-radius: 0;
  }

  .modal-quick-view .modal-content .tf-quick-view-image .wrap-quick-view .quickView-item:not(:last-child) {
    margin-bottom: 0;
    margin-right: 15px;
  }

  .modal-quick-view .modal-content .wrap {
    overflow: unset;
    height: unset;
    padding: 20px 15px;
  }

  .form-sticky-atc .tf-sticky-atc-product {
    display: none;
  }

  .form-sticky-atc .tf-sticky-atc-infos {
    width: 100%;
    gap: 10px;
  }

  .form-sticky-atc .tf-sticky-atc-infos .tf-sticky-atc-infos-title {
    display: none;
  }

  .form-sticky-atc .tf-sticky-atc-infos .tf-sticky-atc-btns {
    width: calc(100% - 135px);
  }

  .offcanvas-compare .tf-compare-list {
    flex-direction: column;
  }

  .offcanvas-compare .tf-compare-list .tf-compare-head br {
    display: none;
  }

  .offcanvas-compare .tf-compare-list .tf-compare-wrap {
    margin: 0;
    padding: 15px 0;
    width: 100%;
  }

  .offcanvas-compare .tf-compare-list .tf-compare-wrap .tf-compare-item {
    flex-direction: column;
    width: 150px;
    gap: 7px;
  }

  .offcanvas-compare .tf-compare-list .tf-compare-wrap .tf-compare-item .image {
    width: unset;
    height: unset;
    max-height: 168px;
  }

  .offcanvas-compare .tf-compare-list .tf-compare-buttons {
    width: 100%;
  }

  .offcanvas-compare .tf-compare-list .tf-compare-buttons .tf-compare-buttons-wrap {
    display: flex;
    gap: 10px;
    width: 100%;
    flex-direction: column;
  }

  .offcanvas-compare .tf-compare-list .tf-compare-buttons .tf-compare-buttons-wrap a {
    font-size: 12px;
    height: 40px;
  }

  .offcanvas-compare .tf-compare-list .tf-compare-buttons .tf-compare-buttons-wrap .tf-compapre-button-clear-all {
    margin: 0;
    height: 40px;
    font-size: 12px;
  }

  .modal-size-guide .modal-dialog {
    width: 550px;
  }

  .modal-shopping-cart .modal-content {
    flex-direction: column;
  }

  .modal-shopping-cart .list-cart {
    display: flex;
    gap: 15px;
    overflow-x: auto;
  }

  .modal-shopping-cart .list-cart .list-cart-item {
    padding-bottom: 0 !important;
    border-bottom: 0 !important;
    margin-bottom: 0 !important;
    min-width: 120px;
  }

  .modal-shopping-cart .list-cart .list-cart-item .image {
    max-height: 150px;
  }

  .modal-shopping-cart .tf-minicart-recommendations {
    padding: 15px 15px 0 15px;
    width: unset;
  }

  .modal-shopping-cart .header {
    padding: 12px;
  }

  .modal-shopping-cart .tf-mini-cart-threshold {
    margin: 0 12px;
    padding: 12px;
  }

  .modal-shopping-cart .tf-mini-cart-item {
    margin: 0 12px;
    padding: 12px 0;
    gap: 12px;
  }

  .modal-shopping-cart .tf-mini-cart-item .tf-mini-cart-info>div {
    gap: 6px;
    margin-bottom: 6px;
  }

  .modal-shopping-cart .tf-mini-cart-tool {
    padding: 0 12px;
    height: 40px;
  }

  .modal-shopping-cart .tf-mini-cart-tool .tf-mini-cart-tool-btn {
    gap: 6px;
  }

  .modal-shopping-cart .tf-mini-cart-tool .tf-mini-cart-tool-btn div {
    font-size: 10px;
    line-height: 20px;
  }

  .modal-shopping-cart .tf-mini-cart-bottom-wrap {
    padding: 12px;
  }

  .modal-shopping-cart .tf-mini-cart-bottom-wrap .tf-cart-checkbox {
    margin-bottom: 12px;
  }

  .modal-shopping-cart .tf-mini-cart-bottom-wrap .tf-cart-checkbox label {
    font-size: 13px;
    line-height: 20px;
  }

  .modal-shopping-cart .tf-mini-cart-bottom-wrap .tf-mini-cart-view-checkout {
    gap: 10px;
    margin-bottom: 12px;
  }

  .modal-shopping-cart .tf-mini-cart-bottom-wrap .tf-mini-cart-view-checkout .tf-btn {
    padding: 8px 14px;
  }

  .modal-shopping-cart .tf-mini-cart-tool-openable .tf-mini-cart-tool-content .tf-mini-cart-tool-wrap,
  .modal-shopping-cart .tf-mini-cart-tool-openable .tf-mini-cart-tool-content .tf-mini-cart-tool-text {
    padding: 12px;
  }

  .tf-main-product.full-width {
    flex-direction: column;
  }

  .tf-main-product.full-width>div {
    width: 100%;
  }

  .tf-slideshow .wrap-slider {
    height: 400px;
  }

  .tf-slideshow .wrap-slider.h-600 {
    height: 600px;
  }

  .tf-slideshow .title-display {
    font-size: 30px;
    line-height: 42px;
  }

  .wrap-slider .box-title-slider {
    gap: 4px;
  }

  .wrap-slider .content-slider {
    gap: 12px;
  }

  .slider-effect {
    display: flex;
    flex-direction: column-reverse;
  }

  .slider-effect .img-slider {
    width: 100%;
    height: 300px;
  }

  .slider-effect .content-left {
    position: unset;
    padding: 40px 0px;
    text-align: center;
  }

  .tab-reviews .tab-reviews-heading {
    flex-direction: column;
    gap: 20px;
    margin-bottom: 30px;
  }

  .tf-product-info-wrap {
    padding-top: 30px;
  }

  .title-display {
    font-size: 40px;
    line-height: 48px;
  }

  h1 {
    font-size: 36px;
    line-height: 48px;
  }

  h2 {
    font-size: 30px;
    line-height: 36px;
  }

  h3 {
    font-size: 28px;
    line-height: 36px;
  }

  h4 {
    font-size: 24px;
    line-height: 34px;
  }

  h5 {
    font-size: 18px;
    line-height: 24px;
  }

  h6 {
    font-size: 16px;
    line-height: 24px;
  }

  #header .nav-icon .nav-account,
  #header .nav-icon .nav-wishlist,
  #header .nav-icon .nav-compare {
    display: none;
  }

  [data-grid="grid-4"] {
    grid-template-columns: repeat(2, 1fr);
  }

  .card-product .countdown-box,
  .card-product .size-list,
  .card-product .wishlist,
  .card-product .compare {
    display: none;
  }

  .flat-countdown-banner .banner-img {
    display: none;
  }

  .flat-img-with-text .banner-right {
    height: 400px;
  }

  .flat-img-with-text .banner-left {
    height: 400px;
  }

  .flat-img-with-text-v3 .banner-left {
    padding-bottom: 40px;
  }

  .flat-with-text-lookbook .lookbook-content {
    margin-top: 30px;
  }

  .new-item {
    flex-direction: column;
  }

  .new-item .img-style {
    max-width: 100%;
  }

  .grid-cls-v2 .banner-cls .img-style,
  .grid-cls-v2 .collection-position-2 .img-style {
    height: 400px;
  }

  .banner-cls-discover .img-style {
    height: 400px;
  }

  .tf-table-page-cart thead {
    display: none;
  }

  .tf-table-page-cart .tf-cart-item {
    padding-left: 98px;
    min-height: 140px;
    display: block;
    position: relative;
  }

  .tf-table-page-cart .tf-cart-item:not(:last-child) {
    margin-bottom: 15px;
  }

  .tf-table-page-cart .tf-cart-item td {
    display: flex;
    align-items: center;
    flex-direction: row;
    flex-wrap: wrap;
    padding: 10px 0;
    margin: 0;
  }

  .tf-table-page-cart .tf-cart-item td:not(:last-child) {
    border-bottom: 1px dashed var(--line);
  }

  .tf-table-page-cart .tf-cart-item .img-box {
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
    width: 80px;
    max-height: 110px;
  }

  .tf-table-page-cart .tf-cart-item td[data-cart-title]:before {
    content: attr(data-cart-title);
    color: var(--main);
    text-align: start;
    flex: 1 1 auto;
  }

  .ip-discount-code .tf-btn {
    padding: 6px 10px;
  }

  .ip-discount-code input {
    padding: 12px 15px;
    padding-right: 120px;
  }

  .heading-section h3,
  .heading-section-2 h3 {
    font-size: 24px;
    line-height: 30px;
  }

  .heading-section h3 {
    margin-bottom: 8px;
  }

  .heading-section-2 {
    justify-content: center;
    flex-direction: column;
    align-items: center;
    gap: 8px;
  }

  .sw-dots {
    gap: 4px;
  }

  .blog-detail-wrap>.image,
  .flat-banner-parallax-v3,
  .flat-banner-parallax-v2 {
    background-attachment: scroll;
  }
}

@media only screen and (max-width: 575px) {
  .form-sticky-atc .tf-sticky-atc-infos {
    flex-wrap: wrap;
    justify-content: center;
  }

  .form-sticky-atc .tf-sticky-atc-infos .tf-sticky-atc-btns {
    width: 100%;
  }

  .form-sticky-atc .tf-sticky-atc-infos .tf-dropdown-sort {
    min-width: 100px;
  }

  .tf-topbar .topbar-left {
    flex-grow: 1;
    justify-content: space-between;
    overflow: auto;
  }

  .tf-topbar .topbar-left a {
    white-space: nowrap;
  }

  .section-newsletter form input {
    padding-right: 126px;
  }

  .section-newsletter form button {
    padding: 12px 16px;
  }

  .coming-soon .coming-soon-inner .content {
    max-width: unset;
  }

  .coming-soon .coming-soon-inner .content .countdown__timer {
    gap: 32px;
  }

  .coming-soon .coming-soon-inner .content .countdown__item::after {
    right: -25%;
  }

  .coming-soon .coming-soon-inner .content .countdown__value {
    font-size: 20px;
  }

  .wg-card-store .card-store-info>ul {
    grid-template-columns: 1fr;
  }

  .product-fixed-price .grid-image-top {
    flex-direction: column;
  }

  .tf-product-modal .modal-dialog {
    max-width: calc(100vw - 30px);
    margin-left: 15px;
    margin-right: 15px;
    align-items: flex-end;
  }

  .tf-product-modal .modal-dialog .modal-content {
    padding: 25px 15px;
  }

  .modal-size-guide .modal-dialog {
    width: unset;
    margin-left: 15px;
    margin-right: 15px;
  }

  .card-product .description {
    display: none;
  }

  .testimonial-item {
    flex-direction: column;
  }

  .testimonial-item .img-style {
    max-width: 100%;
    height: 273px;
  }

  .tf-page-checkout .grid-2 {
    grid-template-columns: 1fr;
  }
}




/* --- review --------- */
.reviews-section {
  position: relative;
  min-height: 100vh;
  padding: 150px 20px;
  color: white;
  overflow: hidden;
  clip: rect(0, auto, auto, 0);
  clip-path: inset(0);
}

.background-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.review-img {
  position: fixed;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  transform: translate(-50%, -50%);
  z-index: 1;
  filter: brightness(1.4);
  object-fit: cover;
}

.overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.6));
  z-index: 2;
}

.review-content {
  position: relative;
  z-index: 3;
  max-width: 1200px;
  margin: 0 auto;
  width: 100%;
  text-align: center;
}

.review-title {
  color: #ffffff;
  font-size: 42px;
  font-weight: 700;
  margin-top: 0;
  margin-bottom: 20px;
  text-transform: capitalize;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
  line-height: 1.2;
}

.review-description {
  font-size: 18px;
  line-height: 1.6;
  max-width: 800px;
  margin: 0 auto 50px;
  color: #f0f0f0;
  padding: 0 20px;
}

.reviews-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 30px;
  max-width: 1000px;
  margin: 0 auto;
}

.review-card {
  background: rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(10px);
  padding: 35px;
  border-radius: 15px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  transition: all 0.3s ease;
  text-align: left;
}

.review-card:hover {
  transform: translateY(-5px);
  background: rgba(255, 255, 255, 0.12);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

.stars {
  color: #ffd700;
  font-size: 24px;
  margin-bottom: 20px;
  letter-spacing: 2px;
}

.review-text {
  font-size: 16px;
  line-height: 1.7;
  margin-bottom: 25px;
  color: #f0f0f0;
}

.Name {
  font-weight: 600;
  font-size: 18px;
  color: #ffffff;
  margin-bottom: 5px;
}

.Country {
  color: #cccccc;
  font-size: 14px;
}

/* ===== RESPONSIVE BREAKPOINTS ===== */

/* Large Desktops (1200px - 1399px) */
@media (max-width: 1399px) {
  .reviews-section {
    padding: 130px 20px;
  }

  .review-title {
    font-size: 38px;
  }
}

/* Standard Desktops/Laptops (992px - 1199px) */
@media (max-width: 1199px) {
  .reviews-section {
    padding: 120px 20px;
  }

  .review-title {
    font-size: 36px;
  }

  .review-description {
    font-size: 17px;
  }

  .reviews-grid {
    gap: 25px;
  }

  .review-card {
    padding: 30px;
  }
}

/* iPad Pro 12.9" Portrait (1024x1366) - Vertical Centering Fix */
@media (min-width: 1024px) and (max-width: 1366px) and (min-height: 1300px) {
  .reviews-section {
    display: flex;
    align-items: center;
    min-height: 100vh;
    padding: 100px 40px;
  }

  .review-content {
    margin: auto;
  }

  .reviews-grid {
    max-width: 900px;
    gap: 35px;
  }

  .review-card {
    padding: 35px;
  }

  .review-title {
    font-size: 40px;
  }

  .review-description {
    font-size: 18px;
    margin-bottom: 45px;
  }
}

/* iPad Pro 12.9" Landscape (1366x1024) */
@media (min-width: 1200px) and (max-width: 1366px) and (max-height: 1100px) {
  .reviews-section {
    display: flex;
    align-items: center;
    padding: 80px 40px;
  }

  .review-content {
    margin: auto;
  }

  .reviews-grid {
    max-width: 1000px;
    gap: 30px;
  }
}

/* iPad Pro 11" Portrait (834x1194) */
@media (min-width: 834px) and (max-width: 834px) and (min-height: 1100px) {
  .reviews-section {
    display: flex;
    align-items: center;
    padding: 90px 30px;
  }

  .review-content {
    margin: auto;
  }

  .reviews-grid {
    max-width: 750px;
    gap: 30px;
  }
}

/* General iPad Pro adjustments (992px - 1366px) */
@media (min-width: 992px) and (max-width: 1366px) {
  .reviews-grid {
    max-width: 900px;
    gap: 35px;
  }

  .review-card {
    padding: 35px;
  }
}

/* Tablets Landscape (768px - 991px) */
@media (max-width: 991px) {
  .reviews-section {
    padding: 100px 20px;
    min-height: auto;
  }

  .review-title {
    font-size: 34px;
    margin-bottom: 18px;
  }

  .review-description {
    font-size: 16px;
    margin-bottom: 40px;
    max-width: 700px;
  }

  .reviews-grid {
    gap: 20px;
    max-width: 700px;
  }

  .review-card {
    padding: 28px;
  }

  .stars {
    font-size: 22px;
    margin-bottom: 18px;
  }

  .review-text {
    font-size: 15px;
    margin-bottom: 20px;
  }
}

/* iPad Air / iPad 10.2" (820px - 834px) */
@media (min-width: 768px) and (max-width: 834px) {
  .reviews-grid {
    max-width: 750px;
    gap: 25px;
  }
}

/* Tablets Portrait (576px - 767px) */
@media (max-width: 767px) {
  .reviews-section {
    padding: 80px 20px;
  }

  .review-title {
    font-size: 30px;
    margin-bottom: 15px;
  }

  .review-description {
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 35px;
    padding: 0 15px;
  }

  .reviews-grid {
    grid-template-columns: 1fr;
    gap: 20px;
    max-width: 500px;
  }

  .review-card {
    padding: 25px;
  }

  .stars {
    font-size: 20px;
    margin-bottom: 15px;
  }

  .review-text {
    font-size: 15px;
    line-height: 1.6;
  }

  .Name {
    font-size: 17px;
  }

  .Country {
    font-size: 13px;
  }
}

/* Large Mobile (480px - 575px) */
@media (max-width: 575px) {
  .reviews-section {
    padding: 70px 15px;
  }

  .review-title {
    font-size: 28px;
  }

  .review-description {
    font-size: 14px;
    margin-bottom: 30px;
  }

  .review-card {
    padding: 22px;
    border-radius: 12px;
  }

  .stars {
    font-size: 20px;
    letter-spacing: 1px;
  }

  .review-text {
    font-size: 14px;
  }
}

/* Standard Mobile (375px - 479px) */
@media (max-width: 479px) {
  .reviews-section {
    padding: 60px 15px;
  }

  .review-title {
    font-size: 26px;
    margin-bottom: 12px;
  }

  .review-description {
    font-size: 14px;
    line-height: 1.5;
    margin-bottom: 30px;
    padding: 0 10px;
  }

  .reviews-grid {
    gap: 18px;
  }

  .review-card {
    padding: 20px;
    border-radius: 10px;
  }

  .stars {
    font-size: 18px;
    margin-bottom: 12px;
  }

  .review-text {
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 18px;
  }

  .Name {
    font-size: 16px;
    margin-bottom: 4px;
  }

  .Country {
    font-size: 13px;
  }
}

/* Small Mobile (320px - 374px) */
@media (max-width: 374px) {
  .reviews-section {
    padding: 50px 10px;
  }

  .review-title {
    font-size: 24px;
    margin-bottom: 10px;
  }

  .review-description {
    font-size: 13px;
    margin-bottom: 25px;
    padding: 0 5px;
  }

  .reviews-grid {
    gap: 15px;
  }

  .review-card {
    padding: 18px;
  }

  .stars {
    font-size: 16px;
    margin-bottom: 10px;
  }

  .review-text {
    font-size: 13px;
    line-height: 1.5;
    margin-bottom: 15px;
  }

  .Name {
    font-size: 15px;
  }

  .Country {
    font-size: 12px;
  }
}

/* Extra Small Mobile (below 320px) */
@media (max-width: 319px) {
  .reviews-section {
    padding: 40px 8px;
  }

  .review-title {
    font-size: 22px;
  }

  .review-description {
    font-size: 12px;
  }

  .review-card {
    padding: 15px;
  }

  .review-text {
    font-size: 12px;
  }
}

/* Landscape Orientation Fix for Mobile */
@media (max-height: 500px) and (orientation: landscape) {
  .reviews-section {
    padding: 40px 20px;
    min-height: auto;
  }

  .review-title {
    font-size: 24px;
    margin-bottom: 10px;
  }

  .review-description {
    font-size: 13px;
    margin-bottom: 20px;
  }

  .reviews-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
  }

  .review-card {
    padding: 15px;
  }

  .stars {
    font-size: 16px;
    margin-bottom: 8px;
  }

  .review-text {
    font-size: 12px;
    margin-bottom: 10px;
  }
}

/* ------- footer --------- */
.footer-section {
  background-color: #1a1a1a;
  padding: 60px 0 40px;
  position: relative;
  color: #ffffff;
  overflow: hidden;
}

.footer-section::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("path-to-pattern-image.png");
  opacity: 0.1;
  pointer-events: none;
}

.footer-logo-link {
  display: inline-block;
  cursor: pointer !important;
  /* Force cursor change */
  transition: opacity 0.3s ease, transform 0.3s ease;
  text-decoration: none;
}

.footer-logo-link:hover {
  opacity: 0.8;
  transform: scale(1.05);
  cursor: pointer !important;
}

.footer-logo {
  max-width: 125px;
  height: auto;
  margin-bottom: 20px;
  display: block;
  cursor: pointer !important;
  /* Also add to image */
  pointer-events: auto;
  /* Ensure it's clickable */
}

.footer-logo-link:hover .footer-logo {
  filter: brightness(1.1);
}

.container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 15px;
  position: relative;
  z-index: 1;
}

.footer-content {
  display: grid;
  grid-template-columns: 2fr 1.5fr 1.5fr;
  gap: 40px;
  align-items: start;
}

.footer-company {
  padding-right: 30px;
}

.footer-logo {
  max-width: 125px;
  height: auto;
  margin-bottom: 20px;
  display: block;
}

.footer-company p {
  color: #cccccc;
  line-height: 1.7;
  font-size: 15px;
  margin: 0;
}

.footer-products h3,
.footer-contact h3 {
  color: #ffffff;
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 25px;
  position: relative;
  padding-bottom: 10px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.footer-products h3::after,
.footer-contact h3::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 40px;
  height: 2px;
  background-color: #007bff;
}

.footer-products ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-products ul li {
  margin-bottom: 12px;
}

.footer-products ul li a {
  color: #cccccc;
  text-decoration: none;
  transition: all 0.3s ease;
  display: inline-flex;
  align-items: center;
  font-size: 15px;
  line-height: 1.5;
}

.footer-products ul li a:hover {
  color: #ffffff;
  padding-left: 5px;
}

.footer-products ul li a i {
  margin-right: 10px;
  font-size: 10px;
  color: #007bff;
  transition: all 0.3s ease;
  flex-shrink: 0;
}

.footer-products ul li a:hover i {
  color: #0056b3;
  transform: translateX(3px);
}

.footer-contact {
  width: 100%;
}

.footer-contact p {
  color: #cccccc;
  margin-bottom: 18px;
  display: flex;
  align-items: flex-start;
  line-height: 1.7;
  font-size: 15px;
  word-wrap: break-word;
  overflow-wrap: break-word;
  width: 100%;
}

.footer-contact p:last-child {
  margin-bottom: 0;
}

.footer-contact p i {
  color: #007bff;
  margin-right: 12px;
  margin-top: 3px;
  min-width: 16px;
  flex-shrink: 0;
}

/* ===== RESPONSIVE BREAKPOINTS ===== */

/* Large Desktops (1200px - 1399px) */
@media (max-width: 1399px) {
  .footer-content {
    gap: 35px;
  }

  .footer-company {
    padding-right: 20px;
  }
}

/* Standard Desktops/Laptops (992px - 1199px) */
@media (max-width: 1199px) {
  .footer-section {
    padding: 50px 0 35px;
  }

  .footer-content {
    grid-template-columns: 1.8fr 1.2fr 1.2fr;
    gap: 30px;
  }

  .footer-company p,
  .footer-products ul li a,
  .footer-contact p {
    font-size: 14px;
  }

  .footer-logo {
    max-width: 110px;
  }
}

/* Tablets Landscape (768px - 991px) */
@media (max-width: 991px) {
  .footer-section {
    padding: 45px 0 35px;
  }

  .footer-content {
    grid-template-columns: 1fr 1fr;
    gap: 35px;
  }

  .footer-company {
    grid-column: 1 / -1;
    text-align: center;
    padding-right: 0;
    max-width: 600px;
    margin: 0 auto 10px;
  }

  .footer-logo {
    margin: 0 auto 20px;
  }

  .footer-products h3::after,
  .footer-contact h3::after {
    left: 0;
  }
}

/* Tablets Portrait (576px - 767px) */
@media (max-width: 767px) {
  .footer-section {
    padding: 40px 0 35px;
  }

  .footer-content {
    gap: 30px;
  }

  .footer-products h3,
  .footer-contact h3 {
    font-size: 17px;
    margin-bottom: 20px;
  }

  .footer-company p {
    font-size: 14px;
    line-height: 1.6;
  }

  .footer-products ul li {
    margin-bottom: 10px;
  }

  .footer-contact p {
    margin-bottom: 15px;
    font-size: 14px;
  }
}

/* Large Mobile (480px - 575px) */
@media (max-width: 575px) {
  .footer-section {
    padding: 35px 0 40px;
  }

  .footer-content {
    grid-template-columns: 1fr;
    gap: 35px;
  }

  .footer-company {
    max-width: 100%;
    margin-bottom: 5px;
  }

  .footer-logo {
    max-width: 100px;
  }

  .footer-products,
  .footer-contact {
    text-align: left;
    width: 100%;
  }

  .footer-products h3,
  .footer-contact h3 {
    font-size: 16px;
    margin-bottom: 18px;
    text-align: left;
  }

  .footer-products h3::after,
  .footer-contact h3::after {
    left: 0;
    transform: none;
  }

  .footer-products ul li {
    text-align: left;
  }

  .footer-products ul li a {
    justify-content: flex-start;
    font-size: 14px;
  }

  .footer-products ul li a:hover {
    padding-left: 5px;
  }

  .footer-contact p {
    justify-content: flex-start;
    text-align: left;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding-right: 10px;
    word-break: break-all;
  }
}

/* Standard Mobile (375px - 479px) */
@media (max-width: 479px) {
  .footer-section {
    padding: 30px 0 45px;
  }

  .container {
    padding: 0 15px;
  }

  .footer-content {
    gap: 30px;
  }

  .footer-logo {
    max-width: 90px;
    margin-bottom: 15px;
  }

  .footer-company {
    padding: 0 5px;
  }

  .footer-company p {
    font-size: 13px;
    line-height: 1.6;
  }

  .footer-products h3,
  .footer-contact h3 {
    font-size: 15px;
    margin-bottom: 15px;
  }

  .footer-products h3::after,
  .footer-contact h3::after {
    width: 35px;
  }

  .footer-products ul li {
    margin-bottom: 10px;
  }

  .footer-products ul li a {
    font-size: 13px;
    line-height: 1.6;
  }

  .footer-products ul li a i {
    font-size: 9px;
    margin-right: 8px;
  }

  .footer-contact {
    padding: 0 5px;
  }

  .footer-contact p {
    font-size: 13px;
    margin-bottom: 18px;
    max-width: 100%;
    line-height: 1.7;
    padding-right: 5px;
    word-break: break-all;
  }

  .footer-contact p i {
    margin-right: 10px;
    min-width: 14px;
    font-size: 13px;
    margin-top: 2px;
  }
}

/* Small Mobile (320px - 374px) */
@media (max-width: 374px) {
  .footer-section {
    padding: 25px 0 50px;
  }

  .container {
    padding: 0 12px;
  }

  .footer-content {
    gap: 25px;
  }

  .footer-logo {
    max-width: 80px;
    margin-bottom: 12px;
  }

  .footer-company p {
    font-size: 12px;
    line-height: 1.7;
  }

  .footer-products h3,
  .footer-contact h3 {
    font-size: 14px;
    margin-bottom: 12px;
    padding-bottom: 8px;
  }

  .footer-products h3::after,
  .footer-contact h3::after {
    width: 30px;
    height: 1.5px;
  }

  .footer-products ul li {
    margin-bottom: 9px;
  }

  .footer-products ul li a {
    font-size: 12px;
    line-height: 1.7;
  }

  .footer-products ul li a i {
    font-size: 8px;
    margin-right: 7px;
  }

  .footer-contact p {
    font-size: 12px;
    margin-bottom: 16px;
    max-width: 100%;
    line-height: 1.8;
    word-break: break-all;
  }

  .footer-contact p i {
    margin-right: 8px;
    min-width: 12px;
    font-size: 12px;
  }
}

/* Extra Small Mobile (below 320px) */
@media (max-width: 319px) {
  .footer-section {
    padding: 20px 0 50px;
  }

  .container {
    padding: 0 10px;
  }

  .footer-logo {
    max-width: 70px;
  }

  .footer-company p,
  .footer-products ul li a,
  .footer-contact p {
    font-size: 11px;
    line-height: 1.8;
  }

  .footer-products h3,
  .footer-contact h3 {
    font-size: 13px;
  }

  .footer-contact p {
    margin-bottom: 15px;
    word-break: break-all;
  }
}

/* Landscape Orientation Fix for Mobile */
@media (max-height: 500px) and (orientation: landscape) {
  .footer-section {
    padding: 30px 0 30px;
  }

  .footer-content {
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
  }

  .footer-company {
    grid-column: auto;
    text-align: left;
  }

  .footer-logo {
    margin: 0 0 10px;
    max-width: 80px;
  }

  .footer-products,
  .footer-contact {
    text-align: left;
  }

  .footer-products h3::after,
  .footer-contact h3::after {
    left: 0;
    transform: none;
  }

  .footer-products ul li a {
    justify-content: flex-start;
  }

  .footer-contact p {
    justify-content: flex-start;
    text-align: left;
  }
}

/* ---------------- Contact-us (small) ----------------------- */
.hero-section {
  width: 100%;
  padding: 20px;
  padding-left: 170px;
  padding-right: 173px;
  padding-top: 50px;
  padding-bottom: 50px;
  background-color: #dfd3cb;
}

.banner-container {
  position: relative;
  width: 100%;
  padding-bottom: 20px;
}

.banner {
  width: 100%;
  padding: 25px 0;
  position: relative;
  background: linear-gradient(to right, #674843, #9b7777);
  border-radius: 55px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
  z-index: 2;
}

.banner-background {
  position: absolute;
  bottom: 0;
  left: 55px;
  right: 55px;
  height: 55px;
  background-color: #c08479;
  border-radius: 40px;
  z-index: 1;
}

.banner-content {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 30px;
  display: flex;
  justify-content: space-evenly;
  align-items: center;
}

.hero-section h1 {
  color: white;
  font-size: 24px;
  font-weight: 700;
  text-transform: uppercase;
  margin: 0;
  letter-spacing: 0.5px;
}

.contact-btn {
  background-color: #2a2a2a;
  color: white;
  padding: 12px 25px;
  border: none;
  border-radius: 25px;
  font-weight: bold;
  text-transform: uppercase;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.contact-btn:hover {
  background-color: #706666;
  color: white;
}

/* Large Desktop (1400px and up) */
@media (min-width: 1400px) {
  .hero-section {
    padding-left: 200px;
    padding-right: 200px;
  }
}

/* Desktop (1200px - 1399px) */
@media (max-width: 1399px) {
  .hero-section {
    padding-left: 140px;
    padding-right: 140px;
  }
}

/* Tablet Landscape (992px - 1199px) */
@media (max-width: 1199px) {
  .hero-section {
    padding: 20px 80px 40px;
  }

  .hero-section h1 {
    font-size: 22px;
  }

  .contact-btn {
    padding: 11px 22px;
    font-size: 14px;
  }

  .banner {
    border-radius: 45px;
  }

  .banner-background {
    left: 45px;
    right: 45px;
    height: 50px;
    border-radius: 35px;
  }
}

/* Tablet Portrait (768px - 991px) */
@media (max-width: 991px) {
  .hero-section {
    padding: 20px 50px 40px;
  }

  .banner-content {
    padding: 0 25px;
  }

  .hero-section h1 {
    font-size: 20px;
    letter-spacing: 0.3px;
  }

  .banner {
    border-radius: 40px;
    padding: 22px 0;
  }

  .banner-background {
    left: 40px;
    right: 40px;
    height: 45px;
    border-radius: 30px;
  }
}

/* Mobile Landscape and Portrait (up to 767px) */
@media (max-width: 767px) {
  .hero-section {
    padding: 15px 20px 30px;
  }

  .banner-container {
    padding-bottom: 15px;
  }

  .banner {
    padding: 20px 0;
    border-radius: 35px;
  }

  .banner-content {
    flex-direction: column;
    text-align: center;
    gap: 15px;
    padding: 0 20px;
  }

  .hero-section h1 {
    font-size: 18px;
    line-height: 1.4;
  }

  .contact-btn {
    padding: 10px 20px;
    font-size: 13px;
    border-radius: 20px;
  }

  .banner-background {
    left: 25px;
    right: 25px;
    height: 40px;
    border-radius: 25px;
  }
}

/* Mobile Portrait (up to 575px) */
@media (max-width: 575px) {
  .hero-section {
    padding: 12px 15px 25px;
  }

  .banner {
    padding: 18px 0;
    border-radius: 30px;
  }

  .banner-content {
    gap: 12px;
    padding: 0 15px;
  }

  .hero-section h1 {
    font-size: 16px;
    line-height: 1.3;
    letter-spacing: 0.2px;
  }

  .contact-btn {
    padding: 9px 18px;
    font-size: 12px;
  }

  .banner-background {
    left: 20px;
    right: 20px;
    height: 35px;
    border-radius: 22px;
  }
}

/* Extra Small Mobile (up to 375px) */
@media (max-width: 375px) {
  .hero-section {
    padding: 10px 12px 20px;
  }

  .banner {
    padding: 16px 0;
    border-radius: 25px;
  }

  .banner-content {
    padding: 0 12px;
  }

  .hero-section h1 {
    font-size: 14px;
    line-height: 1.3;
  }

  .contact-btn {
    padding: 8px 16px;
    font-size: 11px;
  }

  .banner-background {
    left: 15px;
    right: 15px;
    height: 30px;
    border-radius: 20px;
  }
}

/* Small devices (up to 320px) */
@media (max-width: 320px) {
  .hero-section {
    padding: 8px 10px 18px;
  }

  .hero-section h1 {
    font-size: 13px;
  }

  .contact-btn {
    padding: 7px 14px;
    font-size: 10px;
  }

  .banner-background {
    left: 12px;
    right: 12px;
    height: 28px;
  }
}

/* Landscape orientation for mobile devices */
@media (max-width: 767px) and (orientation: landscape) {
  .hero-section {
    padding-top: 20px;
    padding-bottom: 20px;
  }

  .banner {
    padding: 15px 0;
  }

  .banner-content {
    flex-direction: row;
    gap: 20px;
  }
}


/* --------------contact us (large)----------- */
.contact_section_unique_2024 {
  background-color: #dfd3cb;
  width: 100%;
  position: relative;
  padding-top: 90px;
  margin-top: 0px;
  overflow: hidden;
}

.contact_inner_wrap_2024 {
  padding: 0px 0;
  max-width: 1200px;
  margin: 0 auto;
  font-family: Arial, sans-serif;
  padding-bottom: 40px;
  position: relative;
  z-index: 2;
}

.section_heading_2024 {
  text-align: center;
  font-size: 32px;
  color: #333333;
  margin-bottom: 40px;
  font-weight: 600;
}

/* Container that allows absolute positioning */
.contact_absolute_container {
  position: relative;
  width: 100%;
  height: 500px;
  margin-bottom: 30px;
}

/* Fixed image column that will never move regardless of content positioning */
.contact_image_fixed {
  position: absolute;
  left: 0;
  top: 0;
  width: 50%;
  height: 450px;
}

/* Adjustable content column - can be repositioned without affecting image */
.contact_content_adjustable {
  position: absolute;
  top: -50px;
  right: 0;
  width: 50%;
  padding: 20px 0;
  left: 55%;
  padding-left: 30px;
  z-index: 2;
  overflow: hidden;
  border-radius: 12px;
}

/* Main image with frame - positioned in upper left */
.contact_image_frame {
  position: absolute;
  width: 65%;
  height: auto;
  top: -20px;
  left: 20px;
  z-index: 3;
  border: 10px solid #84625c;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35);
  animation: floatImage 6s ease-in-out infinite;
}

@keyframes floatImage {
  0% {
    transform: translateX(0);
  }

  50% {
    transform: translateX(15px);
  }

  100% {
    transform: translateX(0);
  }
}

.contact_illustration_2024 {
  width: 100%;
  height: auto;
  aspect-ratio: 1/1;
  object-fit: cover;
  display: block;
}

/* Background image - positioned in bottom right */
.background_image {
  position: absolute;
  width: 63%;
  height: 60%;
  bottom: 20px;
  right: 0;
  left: 260px;
  object-fit: cover;
  z-index: 1;
  border-radius: 12px;
  border: 1px solid #181818;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35);
}

/* Since text styling */
.since_text {
  position: absolute;
  bottom: -40px;
  left: 40px;
  z-index: 4;
  text-align: left;
}

.since_text span {
  display: block;
  font-size: 35px;
  color: #1b1b1f;
  font-weight: 600;
  line-height: 1;
}

.year {
  font-size: 50px;
  font-weight: 800;
  color: #84625c;
  line-height: 1.3;
}

.contact_info_block_2024 {
  margin-bottom: 25px;
  display: flex;
  align-items: center;
  gap: 35px;
}

.contact_info_block_2024:last-child {
  margin-bottom: 0;
}

.contact_icon_wrapper_2024 {
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
}

.contact_icon_2024 {
  color: #84625c;
  font-size: 30px;
}

.contact_info_content_2024 {
  flex: 1;
}

.contact_heading_2024 {
  font-size: 22px;
  color: #333333;
  margin: 0 0 5px 0;
  font-weight: 600;
}

.contact_info_detail_2024 {
  font-size: 20px;
  color: #84625c;
  margin: 0;
  font-weight: 600;
}

.contact_hours_detail_2024 {
  font-size: 15px;
  margin: 0 0 5px 0;
  line-height: 1.4;
  color: #333333;
}

/* New heading section styling */
.contact_heading_section {
  margin-bottom: 30px;
}

.contact_main_heading {
  font-size: 32px;
  font-weight: 700;
  color: #84625c;
  margin: 0 0 10px 0;
  line-height: 1.2;
}

.contact_sub_heading {
  font-size: 24px;
  font-weight: 600;
  color: #333333;
  margin: 0 0 20px 0;
  line-height: 1.3;
}

/* Cube image styling */
.cube-img {
  position: absolute;
  width: 100px;
  height: auto;
  animation: floatCube 4s ease-in-out infinite;
  z-index: 1;
}

.cube-top-left {
  top: 40px;
  left: 35px;
}

.cube-bottom-right {
  bottom: 40px;
  right: 60px;
  animation-delay: 2s;
}

@keyframes floatCube {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-20px);
  }
}

/* Background image on right side */
.contact-right-bg {
  position: absolute;
  top: 20px;
  right: 33px;
  width: 700px;
  height: auto;
  z-index: 0;
  opacity: 0.65;
  animation: floatImage 6s ease-in-out infinite;
}

/* ============================================
   MOBILE RESPONSIVE STYLES
   ============================================ */

@media (max-width: 768px) {
  .contact_section_unique_2024 {
    padding-top: 50px;
  }

  .contact_inner_wrap_2024 {
    padding: 0 20px 30px;
  }

  /* Stack layout vertically */
  .contact_absolute_container {
    position: relative;
    height: auto;
    margin-bottom: 0;
  }

  /* Image section - full width, relative positioning for overlap effect */
  .contact_image_fixed {
    position: relative;
    width: 100%;
    height: auto;
    margin-bottom: 20px;
    padding-bottom: 40px;
  }

  /* Main framed image - positioned to the LEFT */
  .contact_image_frame {
    position: relative;
    width: 70%;
    max-width: 280px;
    top: 0;
    left: 0;
    transform: none;
    border-width: 6px;
    margin: 0 0 0 10px;
    z-index: 3;
  }

  /* Background image - positioned to the RIGHT and slightly below */
  .background_image {
    position: absolute;
    width: 65%;
    max-width: 250px;
    height: auto;
    bottom: 0;
    right: 10px;
    left: auto;
    transform: none;
    margin: 0;
    top: 60px;
    z-index: 2;
  }

  /* Since text - positioned below images */
  .since_text {
    position: relative;
    bottom: auto;
    left: 10px;
    text-align: left;
    margin-top: 15px;
    z-index: 4;
  }

  .since_text span {
    font-size: 20px;
  }

  .year {
    font-size: 32px;
  }

  /* Content section - full width, static positioning */
  .contact_content_adjustable {
    position: relative;
    width: 100%;
    left: 0;
    top: 0;
    padding: 0;
    padding-left: 0;
  }

  /* Headings */
  .contact_main_heading {
    font-size: 24px;
    text-align: center;
  }

  .contact_sub_heading {
    font-size: 18px;
    text-align: center;
    margin-bottom: 30px;
  }

  /* Info blocks */
  .contact_info_block_2024 {
    gap: 15px;
    margin-bottom: 20px;
  }

  .contact_icon_wrapper_2024 {
    width: 40px;
    height: 40px;
    flex-shrink: 0;
  }

  .contact_icon_2024 {
    font-size: 24px;
  }

  .contact_heading_2024 {
    font-size: 16px;
  }

  .contact_info_detail_2024 {
    font-size: 16px;
  }

  .contact_hours_detail_2024 {
    font-size: 14px;
  }

  /* Hide or reduce decorative elements */
  .cube-img {
    width: 60px;
  }

  .cube-top-left {
    top: 20px;
    left: 10px;
  }

  .cube-bottom-right {
    bottom: 20px;
    right: 10px;
  }

  .contact-right-bg {
    width: 100%;
    opacity: 0.3;
    top: 50%;
    right: 0;
    left: 0;
    transform: translateY(-50%);
  }

  /* Disable animations on mobile for better performance */
  .contact_image_frame,
  .cube-img,
  .contact-right-bg {
    animation: none;
  }
}

/* Extra small devices */
@media (max-width: 480px) {

  /* Adjust image sizes for smaller screens */
  .contact_image_frame {
    width: 65%;
    max-width: 220px;
  }

  .background_image {
    width: 60%;
    max-width: 200px;
    top: 120px;
  }

  /* Smaller text for "Your Vision / Our Mission" */
  .since_text span {
    font-size: 18px;
  }

  .year {
    font-size: 28px;
  }

  .contact_main_heading {
    font-size: 20px;
  }

  .contact_sub_heading {
    font-size: 16px;
  }

  .contact_heading_2024 {
    font-size: 15px;
  }

  .contact_info_detail_2024 {
    font-size: 14px;
  }

  .contact_icon_wrapper_2024 {
    width: 35px;
    height: 35px;
  }

  .contact_icon_2024 {
    font-size: 20px;
  }
}

/* -------------support partners------------ */

.partners_section_unique_2024 {
  padding: 60px 0;
  background-color: #f8f9fa;
  overflow: hidden;
}

.partners_header_unique_2024 {
  text-align: center;
  margin-bottom: 90px;
  margin-top: 40px;
}

.partners_header_unique_2024 h2 {
  font-size: 36px;
  font-weight: 700;
  color: #333;
  margin-bottom: 15px;
  line-height: 1.2;
}

/* Rows */
.partners_row_unique_2024 {
  width: 100%;
  overflow: hidden;
  white-space: nowrap;
  margin-bottom: 60px;
}

/* Wrapper with infinite scroll */
.partners_wrapper_unique_2024 {
  display: inline-flex;
  gap: 40px;
  animation: scrollLeft 30s linear infinite;
}

/* Top row scroll left */
.row_top .partners_wrapper_unique_2024 {
  animation: scrollRight 30s linear infinite;
}

/* Bottom row scroll right */
.row_bottom .partners_wrapper_unique_2024 {
  animation: scrollLeft 30s linear infinite;
}

/* Pause animation on hover */
.partner_logo_box_unique_2024:hover,
.partners_wrapper_unique_2024:hover {
  animation-play-state: paused;
}

.partner_logo_box_unique_2024 {
  flex: 0 0 250px;
  height: 150px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 20px;
  padding: 25px;
  background-color: #ffffff;
  transition: all 0.3s ease;
  box-shadow: 0 4px 15px rgba(132, 98, 92, 0.15), 0 2px 8px rgba(0, 0, 0, 0.1);
}

.partner_logo_box_unique_2024 img {
  max-height: 80px;
  object-fit: contain;
  display: block;
}

/* Animations */
@keyframes scrollLeft {
  0% {
    transform: translateX(100%);
  }

  100% {
    transform: translateX(-100%);
  }
}

@keyframes scrollRight {
  0% {
    transform: translateX(-100%);
  }

  100% {
    transform: translateX(100%);
  }
}

/* WhatsApp button styling */
.btn-whatsapp-pulse {
  position: fixed;
  bottom: 100px;
  left: 50px;
  z-index: 999;
  background-color: #25d366;
  color: 25d366;
  border-radius: 50%;
  width: 65px;
  height: 65px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
  animation-name: pulse;
  animation-duration: 1.5s;
  animation-timing-function: ease-out;
  animation-iteration-count: infinite;
}

.btn-whatsapp-pulse i {
  font-size: 40px;
  color: white;
  z-index: 2;
}

/* Make visible on page load or scroll */
.btn-whatsapp-pulse.visible {
  opacity: 1;
  visibility: visible;
}

/* Outer wave animation */
.btn-whatsapp-pulse::before,
.btn-whatsapp-pulse::after {
  content: '';
  position: absolute;
  border: 16px solid rgba(37, 211, 102, 0.43);
  /* Changed from green to grayish */
  border-radius: 50%;
  opacity: 0;
  animation: soundWave 1.5s linear infinite;
  /* Faster + smoother */
}

.btn-whatsapp-pulse::before {
  width: 70px;
  height: 70px;
  top: -4px;
  left: -4px;
  animation-delay: 0s;
}

.btn-whatsapp-pulse::after {
  width: 70px;
  height: 70px;
  top: -4px;
  left: -4px;
  animation-delay: 0.75s;
  /* Half cycle delay for smooth continuous loop */
}

@keyframes soundWave {
  0% {
    transform: scale(1);
    opacity: 0.6;
  }

  100% {
    transform: scale(1.5);
    opacity: 0;
  }
}


.btn-whatsapp-pulse:hover {
  animation: pulse 1.2s infinite;
}


/* Products-dropdown */
/* Main navigation item */
.nav-item-product {
  position: relative;
  display: inline-block;
}

.nav-item-link {
  padding: 15px;
  display: block;
  text-decoration: none;
  color: #000;
  font-weight: 600;
}

/* Primary dropdown (main categories) */
.primary-dropdown {
  position: absolute;
  top: 100%;
  left: 0;
  background-color: #fff;
  width: 250px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
  z-index: 100;
  list-style: none;
  padding: 0;
  margin: 0;
  text-align: left;
}

.nav-item-product:hover .primary-dropdown {
  opacity: 1;
  visibility: visible;
}

.primary-dropdown-item {
  position: relative;
  border-bottom: 1px solid #f5f5f5;
}

.primary-item-link {
  padding: 12px 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  text-decoration: none;
  color: #333;
  transition: color 0.3s, background-color 0.3s;
  font-weight: 600;
  text-transform: uppercase;
}

.primary-item-link:hover {
  background-color: #f9f9f9;
  color: #86483d;
  /* Red color on hover */
}

/* Arrow styling for primary items */
.arrow-right {
  display: inline-block;
  width: 8px;
  height: 14px;
  position: relative;
}

.arrow-right:before {
  content: "";
  position: absolute;
  width: 8px;
  height: 2px;
  background-color: #333;
  top: 6px;
  right: 0;
  transform: rotate(45deg);
  transform-origin: right;
}

.arrow-right:after {
  content: "";
  position: absolute;
  width: 8px;
  height: 2px;
  background-color: #333;
  bottom: 6px;
  right: 0;
  transform: rotate(-45deg);
  transform-origin: right;
}

.primary-item-link:hover .arrow-right:before,
.primary-item-link:hover .arrow-right:after {
  background-color: #86483d;
  /* Arrow changes to red on hover */
}

.primary-item-link:hover .icon-arrow-right {
  color: #86483d;
  /* Arrow also turns red on hover */
}

/* Secondary dropdown (subcategories) */
.secondary-dropdown {
  position: absolute;
  top: 20px;
  /* Offset to make it slightly lower */
  left: 100%;
  background-color: #fff;
  width: 220px;
  box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
  z-index: 101;
  list-style: none;
  padding: 0;
  margin: 0;
}

.primary-dropdown-item:hover .secondary-dropdown {
  opacity: 1;
  visibility: visible;
}

.secondary-dropdown-item {
  border-bottom: 1px solid #f5f5f5;
}

.secondary-item-link {
  padding: 10px 20px;
  display: block;
  text-decoration: none;
  color: #333;
  transition: color 0.3s, background-color 0.3s;
}

.secondary-item-link:hover {
  background-color: #f9f9f9;
  color: #86483d;
  /* Red color on hover */
}

/* Icon styles */
.icon-arrow-down {
  margin-left: 5px;
  font-size: 12px;
}

/*--------------------------- contact top --------------------*/
.sainfo-topbar {
  background-color: #13151a;
  padding: 10px 0;
  width: 100%;
}

.sainfo-container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 15px;
  display: flex;
  justify-content: flex-end;
}

.sainfo-right-content {
  display: flex;
  align-items: center;
}

.sainfo-contact-item {
  color: #ffffff;
  text-decoration: none;
  font-size: 16px;
  font-weight: 700;
  display: flex;
  align-items: center;
}

.sainfo-contact-item i {
  margin-right: 5px;
}

.sainfo-separator {
  color: #ffffff;
  margin: 0 15px;
}

.sainfo-social-icons {
  display: flex;
}

.sainfo-social-icon {
  color: #ffffff;
  font-size: 14px;
  margin-left: 15px;
  gap: 20px
}

/* For mobile responsiveness */
@media (max-width: 767px) {
  .sainfo-container {
    justify-content: center;
  }

  .sainfo-right-content {
    flex-wrap: wrap;
    justify-content: center;
  }

  .sainfo-separator {
    margin: 0 10px;
  }
}

/* contact banner */

/* Banner Styles with curved bottom */
.page-banner-wrapper {
  position: relative;
  background-color: #10131d;
  text-align: center;
  padding: 0;
  overflow: hidden;
  height: 500px;
  /* Increased height to 600px */
  width: 100%;
  /* Set max width to 1520px */
  margin: 0 auto;
  display: flex;
  align-items: center;
}

/* Image container */
.page-banner-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.page-banner-background img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Dark overlay */
.page-banner-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(16, 19, 29, 0.7);
  /* Adjust opacity as needed */
  z-index: 2;
}

/* Removed the curved bottom :after pseudo-element */

.page-banner-container {
  position: relative;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 15px;
  z-index: 4;
}

.page-banner-title {
  color: #ffffff;
  font-size: 42px;
  font-weight: 700;
  margin-bottom: 15px;
  text-transform: uppercase;
}

.page-breadcrumb {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

.page-breadcrumb li {
  display: inline-block;
  margin: 0 5px;
  color: rgba(255, 255, 255, 0.7);
  position: relative;
  padding: 0 15px;
}

.page-breadcrumb li:after {
  content: ">";
  position: absolute;
  right: -2px;
  top: 0;
}

.page-breadcrumb li:last-child:after {
  display: none;
}

.page-breadcrumb li a {
  color: #ffffff;
  text-decoration: none;
  transition: color 0.3s ease;
}

.page-breadcrumb li a:hover {
  color: #f44336;
  text-decoration: underline;
}

/*--------------- Contact Info Section Styles ------------ */
.contact-display-section {
  position: relative;
  padding: 80px 0;
  background-color: #f8f9fa;
  /* Updated path */
  background-repeat: repeat;
}

.contact-display-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 15px;
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}

/* Left Column - Contact Info */
.contact-left-column {
  flex: 1;
  min-width: 300px;
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.contact-info-item {
  background-color: #c8a7a1;
  border-radius: 8px;
  padding: 25px;
  display: flex;
  align-items: flex-start;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.35);
  transition: transform 0.3s ease;
  border: 1px solid #000;
}

.contact-info-item:hover {
  transform: translateY(-5px);
}

.info-icon {
  width: 50px;
  height: 50px;
  margin-right: 25px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.info-icon img {
  max-width: 100%;
  max-height: 100%;
}

.info-content {
  flex: 1;
  margin-top: -11px;
}

.info-title {
  margin: 0 0 10px 0;
  font-size: 22px;
  font-weight: 700;
  color: #333333;
}

.info-text {
  margin: 0;
  color: #000;
  line-height: 1.6;
}

.info-text a {
  color: #000;
  text-decoration: none;
  transition: color 0.3s ease;
}

.info-text a:hover {
  color: #f44336;
}

/* Right Column - Form */
.contact-right-column {
  flex: 1;
  min-width: 300px;
  background-color: rgb(228, 234, 241);
  border-radius: 8px;
  padding: 30px;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05);
}

.form-heading {
  font-size: 24px;
  color: #d71d1d;
  margin: 0 0 30px 0;
  text-align: center;
  font-weight: 700;
}

.contact-message-form {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.form-fields-row {
  display: flex;
  gap: 20px;
}

.form-field-group {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.full-width {
  width: 100%;
}

.field-label {
  font-size: 14px;
  color: #333333;
  margin-bottom: 8px;
  font-weight: 500;
}

.form-input,
.form-textarea {
  width: 100%;
  padding: 12px 15px;
  border: 1px solid #e1e1e1;
  border-radius: 5px;
  background-color: #f9f9f9;
  color: #333333;
  font-size: 14px;
  transition: border-color 0.3s ease;
}

.form-input:focus,
.form-textarea:focus {
  outline: none;
  border-color: #f44336;
}

.form-textarea {
  min-height: 150px;
  resize: vertical;
}

.submit-button-wrapper {
  display: flex;
  justify-content: flex-start;
  width: 100%;
}

/* Enhanced Submit Button */
/* Enhanced Submit Button */
.submit-button {
  position: relative;
  background-color: #d71d1d;
  color: #ffffff;
  font-size: 16px;
  font-weight: 600;
  text-transform: uppercase;
  padding: 15px 40px;
  border: none;
  border-radius: 30px;
  cursor: pointer;
  transition: all 0.3s ease;
  min-width: 220px;
  overflow: hidden;
  letter-spacing: 1px;
  box-shadow: 0 4px 15px rgba(215, 29, 29, 0.3);
}

.submit-button:hover:not(:disabled) {
  background-color: #b71818;
  transform: translateY(-3px);
  box-shadow: 0 6px 20px rgba(215, 29, 29, 0.4);
}

.submit-button:active:not(:disabled) {
  transform: translateY(-1px);
}

.submit-button:disabled {
  cursor: not-allowed;
  opacity: 0.7;
}

/* Loading State */
.submit-button.loading {
  background: linear-gradient(90deg, #d71d1d 0%, #ff6b6b 50%, #d71d1d 100%);
  background-size: 200% 100%;
  animation: gradientShift 1.5s ease infinite;
  pointer-events: none;
}

@keyframes gradientShift {
  0% {
    background-position: 0% 50%;
  }

  50% {
    background-position: 100% 50%;
  }

  100% {
    background-position: 0% 50%;
  }
}

.submit-button.loading .button-text {
  margin-right: 10px;
}

/* Success State */
.submit-button.success {
  background-color: #28a745 !important;
  animation: successPulse 0.6s ease;
}

@keyframes successPulse {

  0%,
  100% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.05);
  }
}

/* Error State */
.submit-button.error {
  background-color: #dc3545 !important;
  animation: errorShake 0.6s ease;
}

@keyframes errorShake {

  0%,
  100% {
    transform: translateX(0);
  }

  10%,
  30%,
  50%,
  70%,
  90% {
    transform: translateX(-8px);
  }

  20%,
  40%,
  60%,
  80% {
    transform: translateX(8px);
  }
}

/* Button Text */
.button-text {
  display: inline-block;
  vertical-align: middle;
  transition: all 0.3s ease;
}

/* Loading Spinner - FIXED */
.button-loader {
  display: none;
  /* Hidden by default */
  width: 18px;
  height: 18px;
  border: 3px solid rgba(255, 255, 255, 0.3);
  border-top-color: white;
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
  vertical-align: middle;
  margin-left: 10px;
}

.submit-button.loading .button-loader {
  display: inline-block;
  /* Show only when loading */
}

/* Spin Animation */
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/* Message Alerts - Enhanced */
.message-alert {
  padding: 18px 25px;
  border-radius: 10px;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  gap: 12px;
  font-weight: 500;
  animation: slideIn 0.4s ease;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
}

@keyframes slideIn {
  from {
    opacity: 0;
    transform: translateY(-15px);
  }

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

.success-message {
  background-color: #d4edda;
  color: #155724;
  border-left: 4px solid #28a745;
}

.error-message {
  background-color: #f8d7da;
  color: #721c24;
  border-left: 4px solid #dc3545;
}

.success-icon {
  color: #28a745;
  font-size: 22px;
  font-weight: bold;
  animation: checkmarkPop 0.5s ease;
}

@keyframes checkmarkPop {
  0% {
    transform: scale(0);
  }

  50% {
    transform: scale(1.2);
  }

  100% {
    transform: scale(1);
  }
}

.error-icon {
  color: #dc3545;
  font-size: 22px;
  font-weight: bold;
  animation: errorPop 0.5s ease;
}

@keyframes errorPop {

  0%,
  100% {
    transform: rotate(0deg);
  }

  25% {
    transform: rotate(-10deg);
  }

  75% {
    transform: rotate(10deg);
  }
}

/* Spin Animation */
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

.message-fade-out {
  animation: fadeOut 0.5s ease forwards;
}

@keyframes fadeOut {
  from {
    opacity: 1;
    transform: translateY(0);
  }

  to {
    opacity: 0;
    transform: translateY(-20px);
  }
}

/* Responsive Design */
@media (max-width: 992px) {
  .contact-display-container {
    flex-direction: column;
  }
}

@media (max-width: 768px) {
  .form-fields-row {
    flex-direction: column;
    gap: 15px;
  }

  .submit-button {
    min-width: 100%;
    padding: 15px 30px;
  }

  .page-banner-title {
    font-size: 36px;
  }
}

/*-------- Expanding card styles ------------*/
.expanding-card {
  overflow: hidden;
  box-shadow: 0 10px 10px rgba(0, 0, 0, 0.25);
  transition: all 0.3s ease;
  height: 350px !important;
  cursor: default;
  margin-bottom: 2rem;
  margin-right: 1rem;
  border-radius: 8px;
}

.expanding-card:hover {
  box-shadow: 0 10px 15px rgba(0, 0, 0, 0.1);
}

.position-relative.h-300 {
  height: 100%;
  width: 100%;
}

/* Card overlay styles */
.card-overlay {
  height: 65px;
  overflow: hidden;
  transition: height 0.3s ease;
  background: white !important;
  opacity: 1 !important;
}

.expanding-card:hover .card-overlay {
  height: 72%;
}

.card-title {
  font-size: 17px;
  font-weight: 600;
  margin-bottom: 0.5rem;
  line-height: 1.3;
}

/* Card description */
.card-description {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
  margin-top: 8px;
  font-size: 15px;
  font-family: 'Inter', sans-serif;
  line-height: 1.5;
}

.expanding-card:hover .card-description {
  max-height: calc(100% - 65px);
}

.card-description p {
  margin-bottom: 0;
  text-align: justify;
}

/* Utility classes */
.transition-height {
  transition: height 0.3s ease;
}

.bg-opacity-90 {
  opacity: 0.9;
}

/* Touch devices - Enable tap instead of hover */
@media (hover: none) and (pointer: coarse) {
  .expanding-card {
    cursor: pointer;
  }

  .expanding-card:active .card-overlay,
  .expanding-card:focus .card-overlay {
    height: 72%;
  }

  .expanding-card:active .card-description,
  .expanding-card:focus .card-description {
    max-height: calc(100% - 65px);
  }
}

/* Large tablets and small desktops (992px - 1199px) */
@media (max-width: 1199px) and (min-width: 992px) {
  .expanding-card {
    height: 320px !important;
    margin-right: 0.75rem;
  }

  .card-title {
    font-size: 16px;
  }

  .card-description {
    font-size: 14px;
  }
}

/* Tablets (768px - 991px) */
@media (max-width: 991px) and (min-width: 768px) {
  .expanding-card {
    height: 340px !important;
    margin-right: 0.5rem;
    margin-bottom: 1.5rem;
  }

  .card-overlay {
    height: 70px;
  }

  .expanding-card:hover .card-overlay {
    height: 75%;
  }

  .card-title {
    font-size: 16px;
  }

  .card-description {
    font-size: 14px;
  }
}

/* Mobile landscape and small tablets (576px - 767px) */
@media (max-width: 767px) and (min-width: 576px) {
  .expanding-card {
    height: 320px !important;
    margin-right: 0;
    margin-bottom: 1.5rem;
  }

  .card-overlay {
    height: 75px;
  }

  .expanding-card:hover .card-overlay,
  .expanding-card:active .card-overlay {
    height: 78%;
  }

  .card-title {
    font-size: 15px;
  }

  .card-description {
    font-size: 13px;
  }
}

/* Mobile portrait (up to 575px) */
@media (max-width: 575px) {
  .expanding-card {
    height: 300px !important;
    margin-right: 0;
    margin-bottom: 1.5rem;
  }

  .card-overlay {
    height: 80px;
  }

  .expanding-card:hover .card-overlay,
  .expanding-card:active .card-overlay {
    height: 80%;
  }

  .card-title {
    font-size: 15px;
  }

  .card-description {
    font-size: 13px;
    line-height: 1.4;
  }
}

/* Extra small devices (up to 374px) */
@media (max-width: 374px) {
  .expanding-card {
    height: 280px !important;
  }

  .card-overlay {
    height: 85px;
  }

  .card-title {
    font-size: 14px;
  }

  .card-description {
    font-size: 12px;
  }
}

/* iPad specific (portrait and landscape) */
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  .expanding-card {
    height: 340px !important;
  }

  .card-overlay {
    height: 70px;
  }
}

/* iPad Pro specific */
@media only screen and (min-device-width: 1024px) and (max-device-width: 1366px) {
  .expanding-card {
    height: 360px !important;
  }
}

/*------------ Lumi-mount card -------------- */
/* Base Lumi card styles */
.lumi-expanding-card {
  overflow: hidden;
  box-shadow: 0 10px 10px rgba(0, 0, 0, 0.25);
  transition: all 0.3s ease;
  height: 350px !important;
  cursor: pointer;
  margin-bottom: 2rem;
  margin-right: 1rem;
  border-radius: 8px;
}

.lumi-expanding-card:hover {
  box-shadow: 0 15px 25px rgba(0, 0, 0, 0.3);
  transform: translateY(-2px);
}

/* Lumi product category header */
.lumi-expanding-card .lumi-product-category {
  font-size: 12px;
  font-weight: 500;
  margin-bottom: 2px;
  color: #666;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  line-height: 1.2;
}

/* Lumi product title */
.lumi-expanding-card .lumi-product-title {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 3px;
  color: #000;
  line-height: 1.2;
  transition: color 0.3s ease;
}

.lumi-expanding-card .lumi-product-title:hover {
  color: #007bff;
}

/* Lumi card overlay */
.lumi-card-overlay {
  height: 80px;
  overflow: hidden;
  transition: height 0.3s ease;
  background: white !important;
  opacity: 1 !important;
  cursor: pointer;
  display: flex;
  flex-direction: column;
}

.lumi-card-overlay .lumi-product-category {
  flex-shrink: 0;
}

.lumi-card-overlay .lumi-product-title {
  flex-shrink: 0;
}

.lumi-card-overlay .lumi-card-description {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.lumi-expanding-card:hover .lumi-card-overlay {
  height: 65%;
}

/* Hover overlay effect */
.lumi-expanding-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 123, 255, 0.05);
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
  z-index: 1;
}

.lumi-expanding-card:hover::before {
  opacity: 1;
}

.lumi-expanding-card .position-relative {
  position: relative;
  z-index: 2;
}

/* Lumi card description */
.lumi-card-description {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
  margin-top: 8px;
  font-size: 14px;
  font-family: 'Inter', sans-serif;
  justify-content: flex-start;
}

.lumi-expanding-card:hover .lumi-card-description {
  max-height: 110px;
}

.lumi-card-description p {
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: 8px;
  line-height: 1.4;
  flex-grow: 1;
  font-size: 14px;
}

/* Show More button */
.lumi-show-more-btn {
  background: none;
  border: none;
  color: #007bff;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  text-decoration: underline;
  padding: 0;
  margin: 0;
  transition: color 0.3s ease;
  display: block;
  align-self: flex-start;
}

.lumi-show-more-btn:hover {
  color: #0056b3;
}

/* Touch devices - Enable tap instead of hover */
@media (hover: none) and (pointer: coarse) {

  .lumi-expanding-card:active .lumi-card-overlay,
  .lumi-expanding-card:focus .lumi-card-overlay {
    height: 65%;
  }

  .lumi-expanding-card:active .lumi-card-description,
  .lumi-expanding-card:focus .lumi-card-description {
    max-height: 110px;
  }
}

/* Large tablets and small desktops (992px - 1199px) */
@media (max-width: 1199px) and (min-width: 992px) {
  .lumi-expanding-card {
    height: 320px !important;
    margin-right: 0.75rem;
  }

  .lumi-expanding-card .lumi-product-category {
    font-size: 11px;
  }

  .lumi-expanding-card .lumi-product-title {
    font-size: 15px;
  }

  .lumi-card-description {
    font-size: 13px;
  }

  .lumi-card-description p {
    -webkit-line-clamp: 3;
  }
}

/* Tablets (768px - 991px) */
@media (max-width: 991px) and (min-width: 768px) {
  .lumi-expanding-card {
    height: 340px !important;
    margin-right: 0.5rem;
    margin-bottom: 1.5rem;
  }

  .lumi-card-overlay {
    height: 75px;
  }

  .lumi-expanding-card:hover .lumi-card-overlay,
  .lumi-expanding-card:active .lumi-card-overlay {
    height: 68%;
  }

  .lumi-expanding-card .lumi-product-category {
    font-size: 11px;
  }

  .lumi-expanding-card .lumi-product-title {
    font-size: 15px;
  }

  .lumi-card-description {
    font-size: 13px;
  }

  .lumi-card-description p {
    -webkit-line-clamp: 3;
  }
}

/* Mobile landscape and small tablets (576px - 767px) - 1 card per row */
@media (max-width: 767px) and (min-width: 576px) {
  .col-md-6.col-lg-4 {
    flex: 0 0 100%;
    max-width: 100%;
    padding-left: 15px;
    padding-right: 15px;
  }

  .lumi-expanding-card {
    height: 320px !important;
    margin-right: 0;
    margin-bottom: 1.5rem;
  }

  .lumi-card-overlay {
    height: 80px;
  }

  .lumi-expanding-card:hover .lumi-card-overlay,
  .lumi-expanding-card:active .lumi-card-overlay {
    height: 70%;
  }

  .lumi-expanding-card .lumi-product-category {
    font-size: 11px;
  }

  .lumi-expanding-card .lumi-product-title {
    font-size: 15px;
  }

  .lumi-card-description {
    font-size: 13px;
    max-height: 0;
  }

  .lumi-expanding-card:hover .lumi-card-description,
  .lumi-expanding-card:active .lumi-card-description {
    max-height: 100px;
  }

  .lumi-card-description p {
    -webkit-line-clamp: 3;
  }

  .lumi-show-more-btn {
    font-size: 13px;
  }
}

/* Mobile portrait (up to 575px) - 1 card per row */
@media (max-width: 575px) {
  .col-md-6.col-lg-4 {
    flex: 0 0 100%;
    max-width: 100%;
    padding-left: 12px;
    padding-right: 12px;
  }

  .lumi-expanding-card {
    height: 300px !important;
    margin-right: 0;
    margin-bottom: 1.25rem;
  }

  .lumi-card-overlay {
    height: 85px;
    padding: 0.75rem !important;
  }

  .lumi-expanding-card:hover .lumi-card-overlay,
  .lumi-expanding-card:active .lumi-card-overlay {
    height: 72%;
  }

  .lumi-expanding-card .lumi-product-category {
    font-size: 10px;
    margin-bottom: 3px;
  }

  .lumi-expanding-card .lumi-product-title {
    font-size: 14px;
    line-height: 1.3;
  }

  .lumi-card-description {
    font-size: 12px;
    margin-top: 6px;
  }

  .lumi-expanding-card:hover .lumi-card-description,
  .lumi-expanding-card:active .lumi-card-description {
    max-height: 90px;
  }

  .lumi-card-description p {
    -webkit-line-clamp: 3;
    line-height: 1.3;
  }

  .lumi-show-more-btn {
    font-size: 12px;
    margin-top: 4px;
  }
}

/* Extra small devices (up to 374px) - 1 card per row */
@media (max-width: 374px) {
  .col-md-6.col-lg-4 {
    padding-left: 10px;
    padding-right: 10px;
  }

  .lumi-expanding-card {
    height: 280px !important;
    margin-bottom: 1rem;
  }

  .lumi-card-overlay {
    height: 90px;
    padding: 0.6rem !important;
  }

  .lumi-expanding-card:hover .lumi-card-overlay,
  .lumi-expanding-card:active .lumi-card-overlay {
    height: 75%;
  }

  .lumi-expanding-card .lumi-product-category {
    font-size: 9px;
  }

  .lumi-expanding-card .lumi-product-title {
    font-size: 13px;
  }

  .lumi-card-description {
    font-size: 11px;
  }

  .lumi-expanding-card:hover .lumi-card-description,
  .lumi-expanding-card:active .lumi-card-description {
    max-height: 80px;
  }

  .lumi-card-description p {
    -webkit-line-clamp: 2;
  }

  .lumi-show-more-btn {
    font-size: 11px;
  }
}

/* iPad specific (portrait and landscape) */
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  .lumi-expanding-card {
    height: 340px !important;
  }

  .lumi-card-overlay {
    height: 75px;
  }
}

/* iPad Pro specific */
@media only screen and (min-device-width: 1024px) and (max-device-width: 1366px) {
  .lumi-expanding-card {
    height: 360px !important;
  }
}

/* Container adjustments for mobile */
@media (max-width: 575px) {
  .container.my-5 {
    padding-left: 12px;
    padding-right: 12px;
  }

  .row {
    margin-left: -12px;
    margin-right: -12px;
  }
}

/* ===== MODAL STYLES ===== */

/* Lumi Modal Overlay */
.lumi-modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1000;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.lumi-modal-overlay.active {
  opacity: 1;
  visibility: visible;
}

/* Lumi Modal Container */
.lumi-modal-container {
  background: white;
  border-radius: 12px;
  max-width: 1000px;
  width: 95%;
  max-height: 90vh;
  overflow-y: auto;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
  transform: scale(0.9);
  transition: transform 0.3s ease;
  position: relative;
}

.lumi-modal-overlay.active .lumi-modal-container {
  transform: scale(1);
}

/* Lumi Modal Header */
.lumi-modal-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px 25px;
  border-bottom: 1px solid #e9ecef;
  background-color: #f8f9fa;
  border-radius: 12px 12px 0 0;
}

.lumi-modal-title {
  font-size: 24px;
  font-weight: 700;
  color: #333;
  margin: 0;
  flex: 1;
}

.lumi-modal-close {
  background: none;
  border: none;
  font-size: 28px;
  font-weight: bold;
  color: #666;
  cursor: pointer;
  padding: 0;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  transition: all 0.3s ease;
}

.lumi-modal-close:hover {
  background-color: #e9ecef;
  color: #333;
}

.lumi-modal-content {
  display: flex;
  flex-direction: column;
  padding: 25px;
}

.lumi-modal-top-section {
  display: flex;
  flex-direction: row;
  gap: 30px;
  margin-bottom: 10px;
}

.lumi-modal-image-container {
  flex: 1;
  text-align: center;
}

.lumi-modal-image {
  max-width: 100%;
  max-height: 250px;
  object-fit: cover;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
  border: 2px solid #dee2e6;
  padding-right: 38px;
  padding-left: 38px;
}

.lumi-modal-details {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.lumi-modal-category {
  font-size: 14px;
  font-weight: 600;
  color: #666;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 10px;
}

.lumi-modal-description {
  font-size: 16px;
  line-height: 1.6;
  color: #333;
  margin-bottom: 20px;
}

.lumi-modal-specifications {
  width: 100%;
  margin-top: 20px;
}

.lumi-modal-specifications h4 {
  margin: 0 0 15px 0;
  font-size: 20px;
  color: #333;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding-bottom: 10px;
  border-bottom: 2px solid #007bff;
}

.lumi-specifications-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  font-size: 14px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  border-radius: 8px;
  overflow: hidden;
  border: 2px solid #dee2e6;
}

.lumi-specifications-table thead {
  display: none;
}

.lumi-specifications-table th,
.lumi-specifications-table td {
  padding: 12px 15px;
  text-align: left;
  border-bottom: 1px solid #dee2e6;
}

.lumi-specifications-table th {
  background-color: #f8f9fa;
  font-weight: 600;
  color: #333;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 0.5px;
}

.lumi-specifications-table td:first-child,
.lumi-specifications-table td:nth-child(2) {
  background-color: #f8f9fa;
  position: relative;
}

.lumi-specifications-table td:first-child,
.lumi-specifications-table td:nth-child(3) {
  font-weight: 500;
  color: #333;
  width: 25%;
  background-color: #f8f9fa;
}

.lumi-specifications-table td:nth-child(2),
.lumi-specifications-table td:last-child {
  color: #666;
  width: 25%;
  background-color: white;
}

.lumi-specifications-table td:first-child {
  font-weight: 500;
  color: #333;
  width: 23%;
  border-right: 1px solid #dee2e6;
}

.lumi-specifications-table td:nth-child(3),
.lumi-specifications-table td:last-child {
  background-color: #ffffff;
}

.lumi-specifications-table td:nth-child(3) {
  font-weight: 500;
  color: #333;
  width: 25%;
  background-color: #f8f9fa !important;
  border-left: 2px solid #007bff;
}

.lumi-specifications-table td:last-child {
  color: #666;
  width: 23%;
  border-right: 1px solid #dee2e6;
}

/* Modal Responsive - Tablets */
@media (max-width: 991px) {
  .lumi-modal-container {
    width: 96%;
  }

  .lumi-modal-image {
    max-height: 220px;
    padding-right: 25px;
    padding-left: 25px;
  }

  .lumi-specifications-table {
    font-size: 13px;
  }
}

/* Modal Responsive - Mobile landscape and small tablets */
@media (max-width: 767px) {
  .lumi-modal-container {
    width: 98%;
    margin: 10px;
  }

  .lumi-modal-header {
    padding: 15px 20px;
  }

  .lumi-modal-title {
    font-size: 20px;
  }

  .lumi-modal-close {
    font-size: 24px;
  }

  .lumi-modal-top-section {
    flex-direction: column;
    gap: 20px;
  }

  .lumi-modal-image {
    max-height: 200px;
    padding-right: 20px;
    padding-left: 20px;
  }

  .lumi-specifications-table {
    font-size: 12px;
  }

  .lumi-specifications-table th,
  .lumi-specifications-table td {
    padding: 8px 10px;
  }
}

/* Modal Responsive - Mobile portrait */
@media (max-width: 575px) {
  .lumi-modal-content {
    padding: 15px;
  }

  .lumi-modal-header {
    padding: 12px 15px;
  }

  .lumi-modal-title {
    font-size: 18px;
    line-height: 1.3;
  }

  .lumi-modal-close {
    font-size: 22px;
    width: 26px;
    height: 26px;
  }

  .lumi-modal-specifications h4 {
    font-size: 18px;
  }

  .lumi-modal-image {
    max-height: 180px;
    padding-right: 15px;
    padding-left: 15px;
  }

  .lumi-modal-description {
    font-size: 14px;
  }

  .lumi-specifications-table {
    font-size: 11px;
  }

  .lumi-specifications-table th,
  .lumi-specifications-table td {
    padding: 6px 8px;
  }

  .lumi-specifications-table td:first-child,
  .lumi-specifications-table td:nth-child(2) {
    width: 48%;
  }

  .lumi-specifications-table td:nth-child(3),
  .lumi-specifications-table td:last-child {
    width: 48%;
  }
}

/* Modal Responsive - Extra small devices */
@media (max-width: 374px) {
  .lumi-modal-title {
    font-size: 16px;
  }

  .lumi-modal-image {
    max-height: 160px;
    padding-right: 10px;
    padding-left: 10px;
  }

  .lumi-modal-description {
    font-size: 13px;
  }

  .lumi-specifications-table {
    font-size: 10px;
  }

  .lumi-specifications-table th,
  .lumi-specifications-table td {
    padding: 5px 6px;
  }
}

/* ------------- slider ----------- */
.tf-slideshow .slider-image-wrapper {
  position: relative;
  display: block;
}

.tf-slideshow .slider-dark-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 1;
  pointer-events: none;
}

.tf-slideshow .slider-image-wrapper img {
  display: block;
  width: 100%;
  height: auto;
  position: relative;
  z-index: 0;
}

.tf-slideshow .box-content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
}



/* Projects Section Styles */
.projects-section {
  position: relative;
  overflow: hidden;
  padding-top: 90px;
  padding-bottom: 60px;
}

/* Projects Section Headings */
.projects-heading-section {
  margin-bottom: 60px;
  z-index: 10;
}

.projects-main-heading {
  font-size: 36px;
  font-weight: 700;
  color: #333;
  margin-bottom: 15px;
  line-height: 1.2;
}

.projects-subheading {
  font-size: 16px;
  color: #666;
  margin: 0;
  line-height: 1.5;
}

/* Projects Grid - Flexible layout */
.projects-grid {
  display: flex;
  justify-content: center;
  gap: 30px;
  flex-wrap: wrap;
  margin-top: 20px;
  margin-bottom: 50px;
}

/* Project Card - Base styles */
.project-card {
  background: white;
  border-radius: 15px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
  position: relative;
  width: 370px;
  height: 400px;
  flex-shrink: 0;
  z-index: 10;
  border: 1px solid rgba(0, 0, 0, 0.08);
}

.project-card:hover {
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
  transform: translateY(-3px);
}

.project-image-wrapper {
  position: relative;
  overflow: hidden;
  height: 345px;
  background: white;
  display: flex;
  align-items: center;
  justify-content: center;
}

.project-image,
.project-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 0.3s ease;
  position: relative;
  z-index: 0;
}

.project-card:hover .project-image,
.project-card:hover .project-video {
  transform: scale(1.1);
}

.project-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.3s ease;
  z-index: 2;
  padding-bottom: 20px;
}

.project-card:hover .project-overlay {
  opacity: 1;
}

.project-overlay-content {
  text-align: center;
  color: white;
  pointer-events: auto;
}

/* See More Button */
.see-more-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 12px 25px;
  background: linear-gradient(135deg, #704138, #da9e93);
  color: white;
  text-decoration: none;
  border-radius: 25px;
  font-size: 16px;
  font-weight: 600;
  transition: all 0.3s ease;
  transform: translateY(20px);
  opacity: 0;
}

.project-card:hover .see-more-btn {
  transform: translateY(0);
  opacity: 1;
  transition-delay: 0.1s;
}

.see-more-btn:hover {
  background: linear-gradient(135deg, #7f5750, #783428);
  transform: scale(1.05);
  color: white;
}

.see-more-btn i {
  transition: transform 0.3s ease;
}

.see-more-btn:hover i {
  transform: translateX(5px);
}

.project-content {
  padding: 15px 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 55px;
}

.project-card-title {
  font-size: 18px;
  font-weight: 600;
  color: #333;
  margin: 0;
  line-height: 1.3;
  text-align: center;
}

.projects-btn {
  margin-top: 20px;
  padding: 15px 35px;
  font-size: 16px;
  font-weight: 600;
  background: linear-gradient(135deg, #da9e93, #86483d);
  border: none;
  transition: all 0.3s ease;
}

.projects-btn:hover {
  background: linear-gradient(135deg, #7f5750, #783428);
  transform: translateY(-2px);
}

.all-projects-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(370px, 1fr));
  gap: 30px;
  justify-items: center;
  margin-top: 20px;
  margin-bottom: 50px;
}

/* ===== RESPONSIVE BREAKPOINTS ===== */

/* Extra Large Desktops (1400px and up) - Default styles above */

/* Large Desktops (1200px - 1399px) */
@media (max-width: 1399px) {
  .projects-grid {
    gap: 25px;
  }
}

/* Standard Desktops/Laptops (992px - 1199px) */
@media (max-width: 1199px) {
  .projects-section {
    padding-top: 70px;
    padding-bottom: 50px;
  }

  .projects-grid {
    gap: 20px;
  }

  .project-card {
    width: 340px;
    height: 375px;
  }

  .project-image-wrapper {
    height: 320px;
  }

  .project-content {
    height: 55px;
  }
}

/* Tablets Landscape (768px - 991px) */
@media (max-width: 991px) {
  .projects-main-heading {
    font-size: 32px;
  }

  .projects-subheading {
    font-size: 15px;
  }

  .project-card {
    width: 320px;
    height: 355px;
  }

  .project-image-wrapper {
    height: 300px;
  }
}

/* Tablets Portrait (576px - 767px) */
@media (max-width: 767px) {
  .projects-section {
    padding-top: 60px;
    padding-bottom: 40px;
  }

  .projects-heading-section {
    margin-bottom: 40px;
    padding: 0 15px;
  }

  .projects-main-heading {
    font-size: 28px;
  }

  .projects-subheading {
    font-size: 14px;
  }

  .projects-grid {
    flex-direction: column;
    align-items: center;
    gap: 25px;
    margin-top: 10px;
    margin-bottom: 30px;
  }

  .project-card {
    width: 100%;
    max-width: 450px;
    height: auto;
    aspect-ratio: 370/400;
  }

  .project-image-wrapper {
    height: auto;
    aspect-ratio: 370/345;
  }

  .project-content {
    height: auto;
    min-height: 55px;
    padding: 15px 20px;
  }

  .project-card-title {
    font-size: 17px;
  }

  .see-more-btn {
    font-size: 15px;
    padding: 11px 22px;
  }

  .all-projects-grid {
    grid-template-columns: 1fr;
    gap: 25px;
  }
}

/* Large Mobile (480px - 575px) */
@media (max-width: 575px) {
  .projects-section {
    padding-top: 50px;
    padding-bottom: 35px;
  }

  .projects-heading-section {
    margin-bottom: 35px;
  }

  .projects-main-heading {
    font-size: 26px;
  }

  .project-card {
    max-width: 380px;
  }

  .project-card-title {
    font-size: 16px;
  }
}

/* Standard Mobile (375px - 479px) */
@media (max-width: 479px) {
  .projects-section {
    padding-top: 40px;
    padding-bottom: 30px;
  }

  .projects-heading-section {
    margin-bottom: 30px;
  }

  .projects-main-heading {
    font-size: 24px;
    margin-bottom: 12px;
  }

  .projects-subheading {
    font-size: 13px;
  }

  .projects-grid {
    gap: 20px;
    padding: 0 15px;
  }

  .project-card {
    max-width: 340px;
    border-radius: 12px;
  }

  .project-content {
    padding: 12px 15px;
  }

  .project-card-title {
    font-size: 15px;
  }

  .see-more-btn {
    font-size: 14px;
    padding: 10px 20px;
    gap: 8px;
  }

  .all-projects-grid {
    gap: 20px;
    padding: 0 15px;
  }
}

/* Small Mobile (320px - 374px) */
@media (max-width: 374px) {
  .projects-section {
    padding-top: 35px;
    padding-bottom: 25px;
  }

  .projects-heading-section {
    margin-bottom: 25px;
  }

  .projects-main-heading {
    font-size: 22px;
  }

  .projects-subheading {
    font-size: 12px;
  }

  .projects-grid {
    gap: 18px;
    padding: 0 10px;
  }

  .project-card {
    max-width: 300px;
    border-radius: 10px;
  }

  .project-content {
    padding: 10px 12px;
  }

  .project-card-title {
    font-size: 14px;
    line-height: 1.4;
  }

  .see-more-btn {
    font-size: 13px;
    padding: 9px 18px;
    gap: 6px;
  }

  .all-projects-grid {
    gap: 18px;
    padding: 0 10px;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  }
}

/* Extra Small Mobile (below 320px) */
@media (max-width: 319px) {
  .projects-main-heading {
    font-size: 20px;
  }

  .project-card {
    max-width: 280px;
  }

  .project-card-title {
    font-size: 13px;
  }
}

/* Av cards */
/* Cards Section Only */
.av-cards-section {
  padding: 60px 0;
  background-color: #f8f9fa;
}

.av-section-title {
  font-size: 44px;
  font-weight: 700;
  margin-bottom: 30px;
  margin-left: 11px;
}

.av-cards-container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 2rem;
}

.av-solutions-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
  justify-items: center;
}

.av-solution-card {
  width: 400px;
  height: 400px;
  background: white;
  border-radius: 15px;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  border: 1px solid transparent;
  display: flex;
  flex-direction: column;
}

.av-solution-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
}

.av-card-image {
  width: 100%;
  height: 330px;
  overflow: hidden;
  border-radius: 15px 15px 0 0;
}

.av-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.av-solution-card:hover .av-card-image img {
  transform: scale(1.05);
}

.av-card-content {
  height: 40px;
  padding: 0 15px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
}

.av-card-title {
  font-size: 1rem;
  font-weight: 600;
  color: #2c3e50;
  margin: 0 0 2px 0;
  font-family: inherit;
  line-height: 1.2;
}

.av-card-description {
  color: #7f8c8d;
  font-size: 0.8rem;
  line-height: 1.2;
  font-family: inherit;
  margin: 0;
}

/* Card Overlay - Updated Grayish Theme */
.av-card-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;
  transition: opacity 0.3s ease;
  border-radius: 15px;
}

.av-solution-card:hover .av-card-overlay {
  opacity: 1;
}

.av-explore-btn {
  background: #84625c;
  color: white;
  border: none;
  padding: 12px 30px;
  border-radius: 25px;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-family: inherit;
}

.av-explore-btn:hover {
  background: #6d4f47;
  transform: scale(1.05);
}

/* Navbar Hide/Show Animation - Add this to your main CSS */
.navbar-hidden {
  transform: translateY(-100%);
  transition: transform 0.3s ease-in-out;
}

.navbar-visible {
  transform: translateY(0);
  transition: transform 0.3s ease-in-out;
}

/* Responsive Design */
@media (max-width: 1200px) {
  .av-solutions-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
  }
}

@media (max-width: 768px) {
  .av-solutions-grid {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }

  .av-cards-section {
    padding: 40px 0;
  }

  .av-solution-card {
    width: 350px;
    height: 350px;
  }

  .av-card-image {
    height: 310px;
  }

  .av-card-content {
    height: 40px;
  }
}

@media (max-width: 480px) {
  .av-cards-container {
    padding: 0 1rem;
  }

  .av-solution-card {
    width: 300px;
    height: 300px;
  }

  .av-card-image {
    height: 260px;
  }

  .av-card-content {
    height: 40px;
    padding: 0 10px;
  }

  .av-card-title {
    font-size: 0.9rem;
  }

  .av-card-description {
    font-size: 0.75rem;
  }
}

/* navbar follow us,contact  and home  */
.submenu-follow {
  position: absolute;
  top: 100%;
  left: 0;
  background-color: #fff;
  width: 200px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
  z-index: 100;
  list-style: none;
  font-weight: 600;
  padding: 0;
  margin: 0;
  text-align: left;
}

.menu-item:hover .submenu-follow {
  opacity: 1;
  visibility: visible;
}

/* Style for links */
.submenu-follow li a {
  display: block;
  padding: 10px 15px;
  color: #333;
  text-decoration: none;
  transition: background 0.3s;
}

/* Hover effect */
.submenu-follow li a:hover {
  background-color: #f9f9f9;
  color: #86483d;
}

/* Divider between items */
.submenu-follow li {
  border-bottom: 1px solid #e5e5e5;
}

/* Remove divider on last item */
.submenu-follow li:last-child {
  border-bottom: none;
}

/* Remove red/active styling - make text black by default */
.menu-item-single .item-link {
  color: #000 !important;
  /* black color like other menu items */
}

/* Brown hover for both Home and Contact Us */
.menu-item-single .item-link:hover {
  color: #86483d !important;
  /* brown color on hover - adjust shade as needed */
}

/* Override any active class styling */
.menu-item-single.active .item-link {
  color: #000 !important;
  /* keep it black even with active class */
}

.menu-item-single.active .item-link:hover {
  color: #86483d !important;
  /* brown on hover */
}

/* ------------------- slider ----------- */

/* Base Slider Container */
.tf-slideshow {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 100%;
}

.tf-slideshow.slider-default .wrap-slider {
  position: relative;
  min-height: 610px;
  width: 100%;
  height: 100%;
}

.tf-slideshow .swiper-wrapper {
  width: 100%;
  height: 100%;
}

.tf-slideshow .swiper-slide {
  width: 100%;
  height: 100%;
}

/* Slider Image Wrapper */
.tf-slideshow .slider-image-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: inherit;
}

.tf-slideshow .wrap-slider img {
  width: 100%;
  height: 100%;
  min-height: inherit;
  object-fit: cover;
  display: block;
}

.tf-slideshow .slider-dark-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.3);
  z-index: 1;
}

/* Box Content Positioning - Desktop Default */
.tf-slideshow .swiper-slide .box-content {
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  padding-left: 11%;
  padding-bottom: 9%;
  padding-right: 5%;
  z-index: 2;
  opacity: 0;
  transition: opacity 0.5s ease;
  text-align: left;
}

.swiper-slide.swiper-slide-active .box-content {
  opacity: 1;
}

/* Override conflicting rules */
.tf-slideshow.slider-default .box-content {
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
}

/* Content Slider */
.tf-slideshow .content-slider {
  display: grid;
  gap: 20px;
  max-width: 100%;
  width: 100%;
}

.tf-slideshow .box-title-slider {
  display: grid;
  gap: 10px;
}

.tf-slideshow .box-title-slider .subtitle {
  margin-bottom: 12px;
}

/* Typography */
.tf-slideshow .box-title-slider .heading {
  font-size: 50px;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 10px;
}

.tf-slideshow .box-title-slider .body-text-1 {
  font-size: 16px;
  line-height: 1.5;
  margin-bottom: 20px;
}

/* Button Styling */
.tf-slideshow .box-btn-slider {
  display: flex;
  justify-content: flex-start;
}

.tf-slideshow .tf-btn.btn-fill.btn-white {
  font-size: 14px;
  padding: 10px 20px;
  margin: 0;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-radius: 20px;
  transition: all 0.3s ease;
}

.tf-slideshow .btn-square {
  max-width: 200px;
  width: 100%;
}

/* Swiper Basic Styles */
.swiper {
  overflow: hidden;
}

/* Pagination Styles - Hollow Circles */
.tf-slideshow .wrap-pagination {
  position: absolute;
  z-index: 10;
  bottom: 25px;
  left: 0;
  right: 0;
}

.tf-slideshow .wrap-pagination .sw-dots {
  margin-top: 0;
}

.tf-slideshow .sw-dots {
  margin: 0;
  display: flex;
  justify-content: center;
  gap: 8px;
}

.tf-slideshow .sw-dots.type-circle .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  background: transparent;
  border: 2px solid rgba(255, 255, 255, 0.6);
  opacity: 1;
  transition: all 0.3s ease;
  margin: 0 6px;
  cursor: pointer;
}

.tf-slideshow .sw-dots.type-circle .swiper-pagination-bullet-active {
  background: white;
  border-color: white;
  transform: scale(1.2);
}

/* Navigation Arrows */
.tf-slideshow .nav-sw {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  cursor: pointer;
}

.tf-slideshow .nav-sw.nav-sw-left {
  left: 30px;
}

.tf-slideshow .nav-sw.nav-sw-right {
  right: 30px;
}

.tf-slideshow:not(.slider-nav-sw) .nav-sw {
  visibility: hidden;
  opacity: 0;
  transition: all 0.3s ease;
}

.tf-slideshow:not(.slider-nav-sw) .nav-sw.nav-sw-left {
  margin-left: 20px;
}

.tf-slideshow:not(.slider-nav-sw) .nav-sw.nav-sw-right {
  margin-right: 20px;
}

.tf-slideshow:not(.slider-nav-sw):hover .nav-sw {
  visibility: visible;
  opacity: 1;
  margin: 0;
}

/* Slider Variants */
.slider-default.default-2 .box-content {
  left: 0;
  right: 0;
}

.slider-style2 .box-content {
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
}

.slider-center .box-content {
  text-align: center;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
}

/* Fade Effect Animations */
.slider-effect-fade .swiper-slide .fade-item {
  transform: translateY(100px);
  opacity: 0;
  visibility: hidden;
  transition: all 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.slider-effect-fade .swiper-slide .fade-item.fade-box {
  transition-delay: 0.4s;
}

.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.7s;
}

.slider-effect-fade .swiper-slide .fade-item.fade-item-3 {
  transition-delay: 0.9s;
}

.slider-effect-fade .swiper-slide .fade-item.fade-item-4 {
  transition-delay: 1.1s;
}

.slider-effect-fade .swiper-slide.swiper-slide-active .fade-item {
  transform: translateY(0);
  opacity: 1;
  visibility: visible;
}

.slider-nav-sw .wrap-pagination {
  display: none;
}


/* Extra Large Desktop (1400px and up) */
@media (min-width: 1400px) {
  .tf-slideshow.slider-default .wrap-slider {
    min-height: 720px;
  }

  .tf-slideshow .box-title-slider .heading {
    font-size: 56px;
  }

  .tf-slideshow .box-title-slider .body-text-1 {
    font-size: 18px;
  }

  .tf-slideshow .swiper-slide .box-content {
    padding-left: 12%;
    padding-bottom: 10%;
    align-items: flex-end;
    justify-content: flex-start;
    text-align: left;
  }

  .tf-slideshow .box-btn-slider {
    justify-content: flex-start;
  }

  .tf-slideshow .sw-dots.type-circle .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
  }
}

/* Large Desktop (1200px - 1399px) */
@media (max-width: 1399px) {
  .tf-slideshow.slider-default .wrap-slider {
    min-height: 620px;
  }

  .tf-slideshow .box-title-slider .heading {
    font-size: 50px;
  }

  .tf-slideshow .box-title-slider .body-text-1 {
    font-size: 16px;
  }

  .tf-slideshow .swiper-slide .box-content {
    padding-left: 11%;
    padding-bottom: 9%;
    align-items: flex-end;
    justify-content: flex-start;
    text-align: left;
  }

  .tf-slideshow .box-btn-slider {
    justify-content: flex-start;
  }
}

/* Desktop (992px - 1199px) */
@media (max-width: 1199px) {
  .tf-slideshow.slider-default .wrap-slider {
    min-height: 570px;
  }

  .tf-slideshow .content-slider {
    gap: 18px;
  }

  .tf-slideshow .box-title-slider .heading {
    font-size: 42px;
    margin-bottom: 8px;
  }

  .tf-slideshow .box-title-slider .body-text-1 {
    font-size: 15px;
    margin-bottom: 18px;
  }

  .tf-slideshow .swiper-slide .box-content {
    padding-left: 8%;
    padding-bottom: 8%;
    padding-right: 8%;
    align-items: flex-end;
    justify-content: flex-start;
    text-align: left;
  }

  .tf-slideshow .box-btn-slider {
    justify-content: flex-start;
  }

  .tf-slideshow .nav-sw.nav-sw-left {
    left: 20px;
  }

  .tf-slideshow .nav-sw.nav-sw-right {
    right: 20px;
  }

  .tf-slideshow .tf-btn.btn-fill.btn-white {
    font-size: 13px;
    padding: 9px 18px;
  }
}

/* Tablet Portrait (768px - 991px) - Keep Bottom Left */
@media (max-width: 991px) {
  .tf-slideshow.slider-default .wrap-slider {
    min-height: 500px;
  }

  .tf-slideshow .content-slider {
    gap: 15px;
  }

  .tf-slideshow .box-title-slider .heading {
    font-size: 36px;
    margin-bottom: 8px;
  }

  .tf-slideshow .box-title-slider .body-text-1 {
    font-size: 14px;
    margin-bottom: 16px;
  }

  .tf-slideshow .swiper-slide .box-content {
    padding-left: 6%;
    padding-bottom: 7%;
    padding-right: 6%;
    align-items: flex-end;
    justify-content: flex-start;
    text-align: left;
  }

  .tf-slideshow .box-btn-slider {
    justify-content: flex-start;
  }

  .tf-slideshow .nav-sw.nav-sw-left {
    left: 15px;
  }

  .tf-slideshow .nav-sw.nav-sw-right {
    right: 15px;
  }

  .tf-slideshow .sw-dots.type-circle .swiper-pagination-bullet {
    width: 11px;
    height: 11px;
    margin: 0 5px;
  }

  .tf-slideshow .wrap-pagination {
    bottom: 20px;
  }

  .tf-slideshow .tf-btn.btn-fill.btn-white {
    font-size: 13px;
    padding: 9px 18px;
  }
}

/* Tablet specific - Keep bottom left alignment */
@media (min-width: 768px) and (max-width: 991px) {
  .tf-slideshow .swiper-slide .box-content {
    align-items: flex-end;
    justify-content: flex-start;
    text-align: left;
  }

  .tf-slideshow .box-title-slider {
    text-align: left;
  }

  .tf-slideshow .box-btn-slider {
    justify-content: flex-start;
  }
}

/* Mobile - CENTER CONTENT (up to 767px) */
@media (max-width: 767px) {
  .tf-slideshow.slider-default .wrap-slider {
    min-height: 450px;
  }

  /* CENTER ALL CONTENT ON MOBILE */
  .tf-slideshow .swiper-slide .box-content {
    align-items: center;
    justify-content: left;
    text-align: left;
    padding-left: 5%;
    padding-right: 5%;
    padding-bottom: 0;
    padding-top: 0;
  }

  .tf-slideshow .box-title-slider {
    text-align: left;
  }

  .tf-slideshow .box-btn-slider {
    justify-content: left;
  }

  .tf-slideshow .content-slider {
    gap: 12px;
  }

  .tf-slideshow .box-title-slider {
    gap: 8px;
  }

  .tf-slideshow .box-title-slider .heading {
    font-size: 28px;
    line-height: 1.3;
    margin-bottom: 8px;
  }

  .tf-slideshow .box-title-slider .body-text-1 {
    font-size: 13px;
    line-height: 1.4;
    margin-bottom: 15px;
  }

  .tf-slideshow .tf-btn.btn-fill.btn-white {
    font-size: 13px;
    padding: 9px 18px;
  }

  .tf-slideshow .sw-dots.type-circle .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    margin: 0 4px;
    border-width: 2px;
  }

  .tf-slideshow .wrap-pagination {
    bottom: 15px;
  }

  /* Hide navigation arrows on mobile */
  .tf-slideshow .nav-sw {
    display: none !important;
  }

  .tf-slideshow .slider-dark-overlay {
    background: rgba(0, 0, 0, 0.4);
  }
}

/* Mobile Portrait (up to 575px) - CENTERED */
@media (max-width: 575px) {
  .tf-slideshow.slider-default .wrap-slider {
    min-height: 400px;
  }

  .tf-slideshow .swiper-slide .box-content {
    align-items: center;
    justify-content: left;
    text-align: left;
    padding-left: 4%;
    padding-right: 4%;
    padding-bottom: 0;
    padding-top: 0;
  }

  .tf-slideshow .box-title-slider {
    text-align: left;
  }

  .tf-slideshow .box-btn-slider {
    justify-content: left;
  }

  .tf-slideshow .content-slider {
    gap: 10px;
  }

  .tf-slideshow .box-title-slider .heading {
    font-size: 24px;
    line-height: 1.3;
    margin-bottom: 6px;
  }

  .tf-slideshow .box-title-slider .body-text-1 {
    font-size: 12px;
    line-height: 1.4;
    margin-bottom: 12px;
  }

  .tf-slideshow .box-title-slider .subtitle {
    margin-bottom: 8px;
  }

  .tf-slideshow .tf-btn.btn-fill.btn-white {
    font-size: 12px;
    padding: 8px 16px;
  }

  .tf-slideshow .sw-dots.type-circle .swiper-pagination-bullet {
    width: 9px;
    height: 9px;
    margin: 0 3px;
  }

  .tf-slideshow .wrap-pagination {
    bottom: 12px;
  }

  .tf-slideshow .slider-dark-overlay {
    background: rgba(0, 0, 0, 0.45);
  }
}

/* Extra Small Mobile (up to 375px) - CENTERED */
@media (max-width: 375px) {
  .tf-slideshow.slider-default .wrap-slider {
    min-height: 360px;
  }

  .tf-slideshow .swiper-slide .box-content {
    align-items: center;
    justify-content: left;
    text-align: left;
    padding-left: 3%;
    padding-right: 3%;
  }

  .tf-slideshow .box-title-slider {
    text-align: left;
  }

  .tf-slideshow .box-btn-slider {
    justify-content: left;
  }

  .tf-slideshow .box-title-slider .heading {
    font-size: 20px;
    margin-bottom: 5px;
  }

  .tf-slideshow .box-title-slider .body-text-1 {
    font-size: 11px;
    margin-bottom: 10px;
  }

  .tf-slideshow .tf-btn.btn-fill.btn-white {
    font-size: 11px;
    padding: 7px 14px;
  }

  .tf-slideshow .sw-dots.type-circle .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    margin: 0 3px;
  }

  .tf-slideshow .wrap-pagination {
    bottom: 10px;
  }
}

/* Small devices like iPhone SE (up to 320px) - CENTERED */
@media (max-width: 320px) {
  .tf-slideshow.slider-default .wrap-slider {
    min-height: 320px;
  }

  .tf-slideshow .swiper-slide .box-content {
    align-items: center;
    justify-content: left;
    text-align: left;
  }

  .tf-slideshow .box-title-slider {
    text-align: left;
  }

  .tf-slideshow .box-btn-slider {
    justify-content: left;
  }

  .tf-slideshow .box-title-slider .heading {
    font-size: 18px;
  }

  .tf-slideshow .box-title-slider .body-text-1 {
    font-size: 10px;
  }

  .tf-slideshow .tf-btn.btn-fill.btn-white {
    font-size: 10px;
    padding: 6px 12px;
  }

  .tf-slideshow .sw-dots.type-circle .swiper-pagination-bullet {
    width: 7px;
    height: 7px;
  }
}

/* Landscape orientation for mobile - CENTERED */
@media (max-width: 767px) and (orientation: landscape) {
  .tf-slideshow.slider-default .wrap-slider {
    min-height: 350px;
  }

  .tf-slideshow .swiper-slide .box-content {
    align-items: center;
    justify-content: left;
    text-align: left;
    padding-top: 0;
    padding-bottom: 0;
  }

  .tf-slideshow .box-title-slider {
    text-align: left;
  }

  .tf-slideshow .box-btn-slider {
    justify-content: left;
  }

  .tf-slideshow .box-title-slider .heading {
    font-size: 24px;
  }

  .tf-slideshow .box-title-slider .body-text-1 {
    font-size: 12px;
  }
}

/* iPad Pro and specific tablets (768px - 1024px) - Keep Bottom Left */
@media (min-width: 768px) and (max-width: 1024px) {
  .tf-slideshow.slider-default .wrap-slider {
    min-height: 520px;
  }

  .tf-slideshow .swiper-slide .box-content {
    padding-left: 7%;
    padding-bottom: 7.5%;
    align-items: flex-end;
    justify-content: flex-start;
    text-align: left;
  }

  .tf-slideshow .box-title-slider {
    text-align: left;
  }

  .tf-slideshow .box-btn-slider {
    justify-content: flex-start;
  }
}

/* iPhone 14 Pro Max, Samsung Galaxy S21+ (376px - 428px) - CENTERED */
@media (max-width: 428px) and (min-width: 376px) {
  .tf-slideshow.slider-default .wrap-slider {
    min-height: 380px;
  }

  .tf-slideshow .swiper-slide .box-content {
    align-items: center;
    justify-content: left;
    text-align: left;
  }

  .tf-slideshow .box-title-slider {
    text-align: left;
  }

  .tf-slideshow .box-btn-slider {
    justify-content: left;
  }

  .tf-slideshow .box-title-slider .heading {
    font-size: 22px;
  }
}


/* ---------------- stats ----------- */
/* White spacing sections */
.stats-white-space-top,
.stats-white-space-bottom {
  background-color: #ffffff;
  height: 80px;
  width: 100%;
}

/* Statistics Section - Brown Theme (Scoped) */
.stats-section-brown {
  background: linear-gradient(135deg, #674843 0%, #84625c 50%, #9b7777 100%);
  padding: 90px 20px 90px 20px;
  position: relative;
  overflow: hidden;
}

/* Top Lines - Thick and Thin (Inside the section) */
.stats-section-brown::before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 35px;
  height: 3px;
  background: rgba(255, 255, 255, 0.6);
  z-index: 1;
}

.stats-section-brown::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 43px;
  height: 1px;
  background: rgba(255, 255, 255, 0.3);
  z-index: 1;
}

/* Bottom Lines - Inside the section */
.stats-container-brown::before {
  content: '';
  position: absolute;
  left: -9999px;
  right: -9999px;
  bottom: -40px;
  height: 1px;
  background: rgba(255, 255, 255, 0.3);
  z-index: 1;
}

.stats-container-brown::after {
  content: '';
  position: absolute;
  left: -9999px;
  right: -9999px;
  bottom: -48px;
  height: 3px;
  background: rgba(255, 255, 255, 0.6);
  z-index: 1;
}

.stats-container-brown {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 40px;
  position: relative;
  padding-bottom: 0px;
}

.stat-item-brown {
  text-align: center;
  padding: 20px;
  position: relative;
  opacity: 0;
  transform: translateY(30px);
  transition: all 0.6s ease-out;
  z-index: 2;
}

/* Fade in when section is visible */
.stats-section-brown.counted .stat-item-brown {
  opacity: 1;
  transform: translateY(0);
}

.stats-section-brown.counted .stat-item-brown:nth-child(1) {
  transition-delay: 0.1s;
}

.stats-section-brown.counted .stat-item-brown:nth-child(2) {
  transition-delay: 0.2s;
}

.stats-section-brown.counted .stat-item-brown:nth-child(3) {
  transition-delay: 0.3s;
}

.stats-section-brown.counted .stat-item-brown:nth-child(4) {
  transition-delay: 0.4s;
}

/* Vertical divider between items (except last one) */
.stat-item-brown:not(:last-child)::after {
  content: '';
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1px;
  height: 80px;
  background: rgba(245, 241, 232, 0.2);
}

.stat-number-brown {
  font-size: 3.5rem;
  font-weight: bold;
  color: #F5F1E8;
  margin-bottom: 15px;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
  letter-spacing: 2px;
  font-family: Arial, sans-serif;
  min-height: 70px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.stat-label-brown {
  font-size: 0.95rem;
  font-weight: 600;
  color: #EDE5D8;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  line-height: 1.4;
  font-family: Arial, sans-serif;
}

/* Tablet - 2x2 Grid */
@media (max-width: 1024px) {
  .stats-container-brown {
    grid-template-columns: repeat(2, 1fr);
    gap: 50px 40px;
  }

  /* Remove vertical divider for 2nd and 4th items */
  .stat-item-brown:nth-child(2)::after,
  .stat-item-brown:nth-child(4)::after {
    display: none;
  }

  /* Add horizontal divider after first row */
  .stat-item-brown:nth-child(1)::before,
  .stat-item-brown:nth-child(2)::before {
    content: '';
    position: absolute;
    left: 50%;
    bottom: -25px;
    transform: translateX(-50%);
    width: 100vw;
    height: 1px;
    background: rgba(245, 241, 232, 0.2);
  }

  .stats-container-brown::before {
    bottom: -30px;
  }

  .stats-container-brown::after {
    bottom: -38px;
  }
}

/* Mobile - Vertical Stack */
@media (max-width: 767px) {
  .stats-section-brown {
    padding: 70px 20px 70px 20px;
  }

  .stats-container-brown {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .stat-item-brown {
    padding: 30px 20px;
  }

  /* Remove all vertical dividers */
  .stat-item-brown::after {
    display: none;
  }

  /* Remove tablet horizontal dividers */
  .stat-item-brown::before {
    display: none;
  }

  /* Add horizontal divider after each item except last */
  .stat-item-brown:not(:last-child) {
    border-bottom: 1px solid rgba(245, 241, 232, 0.2);
  }

  .stat-number-brown {
    font-size: 3rem;
    min-height: 60px;
  }

  .stat-label-brown {
    font-size: 0.9rem;
  }

  .stats-container-brown::before {
    bottom: -25px;
  }

  .stats-container-brown::after {
    bottom: -33px;
  }
}

/* Small Mobile 480px */
@media (max-width: 480px) {
  .stats-section-brown {
    padding: 60px 15px 60px 15px;
  }

  .stat-item-brown {
    padding: 25px 15px;
  }

  .stat-number-brown {
    font-size: 2.5rem;
    min-height: 55px;
  }

  .stat-label-brown {
    font-size: 0.85rem;
    letter-spacing: 1.2px;
  }

  .stats-container-brown::before {
    bottom: -22px;
  }

  .stats-container-brown::after {
    bottom: -30px;
  }
}

/* Extra Small 360px */
@media (max-width: 360px) {
  .stats-section-brown {
    padding: 50px 10px 50px 10px;
  }

  .stat-item-brown {
    padding: 20px 10px;
  }

  .stat-number-brown {
    font-size: 2.2rem;
    min-height: 50px;
  }

  .stat-label-brown {
    font-size: 0.8rem;
    letter-spacing: 1px;
  }

  .stats-container-brown::before {
    bottom: -20px;
  }

  .stats-container-brown::after {
    bottom: -28px;
  }
}