/*------------------------------------------------------------------
Project:
  Version:
L  ast change:
As  signed to:  Le Xuan Bach
Primary use:  Company
-------------------------------------------------------------------*/
/*------------------------------------------------------------------
[LAYOUT]

* body
  + Header / header
  + Page Content / .page-content .name-page
        + Section Layouts / section .name-section
        ...
  + Footer / footer

-------------------------------------------------------------------*/
/*------------------------------------------------------------------
[COLOR CODES]

# Text Color      :
# Primary Color 01:
  # Primary Color 02:
#   Primary Color 03:

-   ---------------------  --------------------------------------------*/
/*------------------------------------------------------------------
[TYPOGRAPHY]

Body            : 16px/1.6 '', Arial, sans-serif;
Title           : 18px/1.6 '', Arial, sans-serif;
Paragrap        : 18px/1.6 '', Arial, sans-serif;
Input, textarea : 14px/1.6 '', Arial, sans-serif;
-------------------------------------------------------------------*/

/*//////////////////////////////////////////////////////////////////
[ FONT ]*/

@font-face {
    font-family: Poppins-Regular;
    src: url("../fonts/Poppins/Poppins-Regular.ttf");
}

@font-face {
    font-family: Poppins-Light;
    src: url("../fonts/Poppins/Poppins-Light.ttf");
}

@font-face {
    font-family: Poppins-ExtraLight;
    src: url("../fonts/Poppins/Poppins-ExtraLight.ttf");
}

@font-face {
    font-family: Poppins-Medium;
    src: url("../fonts/Poppins/Poppins-Medium.ttf");
}

@font-face {
    font-family: Poppins-Italic;
    src: url("../fonts/Poppins/Poppins-Italic.ttf");
}

@font-face {
    font-family: Poppins-Bold;
    src: url("../fonts/Poppins/Poppins-Bold.ttf");
}

@font-face {
    font-family: Poppins-SemiBold;
    src: url("../fonts/Poppins/Poppins-SemiBold.ttf");
}

/*---------------------------------------------*/
@font-face {
    font-family: PlayfairDisplay-Regular;
    src: url("../fonts/PlayfairDisplay/PlayfairDisplay-Regular.ttf");
}

@font-face {
    font-family: PlayfairDisplay-Bold;
    src: url("../fonts/PlayfairDisplay/PlayfairDisplay-Bold.ttf");
}

/*---------------------------------------------*/
@font-face {
    font-family: Montserrat-Regular;
    src: url("../fonts/Montserrat/Montserrat-Regular.ttf");
}

@font-face {
    font-family: Montserrat-Bold;
    src: url("../fonts/Montserrat/Montserrat-Bold.ttf");
}

/*//////////////////////////////////////////////////////////////////
[ RS PLUGIN ]*/

/*------------------------------------------------------------------
[ Bootstrap ]*/
.container {
    max-width: 1380px;
}

@media (max-width: 1600px) {
    .container {
        max-width: 1200px;
    }
}

/*------------------------------------------------------------------
[ Slick2 ]*/
.slick-slide {
    outline: none !important;
}

/*//////////////////////////////////////////////////////////////////
[ LOADDING ]*/
.animsition-loading-1 {
    position: absolute;
    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%);
}

.loader05 {
    width: 56px;
    height: 56px;
    border: 4px solid #708090;
    border-radius: 50%;
    position: relative;
    animation: loader-scale 1s ease-out infinite;
    top: 50%;
    margin: -28px auto 0 auto;
}

@keyframes loader-scale {
    0% {
        transform: scale(0);
        opacity: 0;
    }
    50% {
        opacity: 1;
    }
    100% {
        transform: scale(1);
        opacity: 0;
    }
}

/*//////////////////////////////////////////////////////////////////
[ BUTTON BACK TO TOP ]*/
.btn-back-to-top {
    display: none;
    position: fixed;
    width: 40px;
    height: 38px;
    bottom: 0px;
    right: 40px;
    background-color: #708090;
}

@media (max-width: 575px) {
    .btn-back-to-top {
        bottom: 0px;
        right: 15px;
    }
}

/*//////////////////////////////////////////////////////////////////
[ Header ]*/

/*>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
[ Header Desktop ]*/

.container-menu-desktop {
    height: auto;
    width: 100%;
    position: relative;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}

.header-v4 .container-menu-desktop {
    height: 124px;
}

/*==================================================================
[ Top bar ]*/
.top-bar {
    height: 40px;
    background-color:#000000;
}

/*---------------------------------------------*/
.left-top-bar {
    font-family: Poppins-Regular;
    font-size: 12px;
    line-height: 1.8;
    color: #b2b2b2;
}

/*---------------------------------------------*/
.right-top-bar a {
    font-family: Poppins-Regular;
    font-size: 12px;
    line-height: 1.8;

    height: 100%;
    color: #b2b2b2;
    /* border-right: 1px solid rgba(255, 255, 255, 0.3); */
}

/* .right-top-bar a:first-child {
    border-left: 1px solid rgba(255, 255, 255, 0.3);
} */

.right-top-bar a:hover {
    color: #708090;
}

/*---------------------------------------------*/
.topbar-mobile li {
    padding: 8px 20px;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    background-color: #222;
}

/*==================================================================
[ Menu ]*/

/* .wrap-menu-desktop {
  position: fixed;
  z-index: 1100;
  background-color: transparent;
  width: 100%;
  height: 84px;
  top: 40px;
  left: 0px;

  -webkit-transition: height 0.3s, background-color 0.3s;
  -o-transition: height 0.3s, background-color 0.3s;
  -moz-transition: height 0.3s, background-color 0.3s;
  transition: height 0.3s, background-color 0.3s;
}

.header-v4 .wrap- menu-desktop {
  background-color: #fff;
} */

/*---------------------------------------------*/
/* .limiter-menu-desktop {
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  background-color: transparent;
} */

/*------------------------------------------------------------------
[ Logo ]*/
/* .logo {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  height: 65%;
  margin-right: 30px;
  flex-shrink: 0;
} */

/* .logo img {
  width: 100%;
  height: auto;
  max-width: 250px;
} */

/*------------------------------------------------------------------
[ Menu ]*/

/* .menu-desktop {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  height: 100%;
} */

/* .main-menu {
  list-style-type: none;
  margin: 0;

  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
} */
/*
.main-menu > li {
  display: block;
  position: relative;
  padding: 20px 10px 20px 0px;
  margin: 0px 4px 0px 14px;
} */
/*
.main-menu > li > a {
  font-family: Poppins-Medium;
  font-size: 14px;
  color: #333;
  padding: 5px 0px;
  transition: all 0.4s;
  -webkit-transition: all 0.4s;
  -o-transition:  all 0.4s;
  -moz-transition: all 0.4s;
}

.header-v3 .main-menu > li > a {
  color: #fff;
} */

/*---------------------------------- -----------*/
/* .sub-menu {
  list-style-type: none;
  position: absolute;
  top:0;
  left:100%;
  min-width: 178px;
  max-width: 225px;
  background-color: #fff;
  transition: all 0.4s;
  -webkit-transition: all 0.4s;
  -o-transition: all 0.4s;
  -moz-transition: all 0.4s;
  padding: 5px 0;

  box-shadow: 0 1px 5px 0px rgba(0,0,0,0.2);
  -moz-box-shadow: 0 1px 5px 0px rgba(0,0,0,0.2);
  -webkit-box-shadow: 0 1px 5px 0px rgba(0,0,0,0.2);
  -o-box-shadow: 0 1px 5px 0px rgba(0,0,0,0.2);
  -ms-box-shadow: 0 1px 5px 0px rgba(0,0,0,0.2);

  visibility: hidden;
  opacity: 0;
} */

/* .sub-menu li {
  position: relative;
  background-color: transparent;

  transition: all 0.4s;
  -webkit-transition: all 0.4s;
  -o-transition: all 0.4s;
  -moz-transition: all 0.4s;
} */

/* .main-menu > li > .sub-menu {
  top:100%;
  left: 0;
}

.sub-menu a {
  font-family: Poppins-Regular;
  font-size: 14px;
  line-height: 1.5;
  color:  #555;

  display: block;
  padding: 8px 20px;
  width: 100%;

  transition: all 0.4s;
  -webkit-transition: all 0.4s;
  -o-transition: all 0.4s;
  -moz-transition: all 0.4s;
} */

/*---------------------------------------------*/
/* .main-menu > li:hover > a {
  text-decoration: none;
  color: #708090;
}

.main-menu > li:hover > .sub-menu {
  visibility: visible;
  opacity: 1;
}

.sub-menu li:hover > .sub-menu {
  vis ibility: visible;
  opacity: 1;
}

.sub-menu li:hover {
  background-color: transparent;
}

.sub-menu > li:hover > a {
  color: #708090;
  text-decoration: none;
}

@media (max-width: 1300px) {
  .main-menu > .respon-sub-menu .sub-menu {
    right: 100%;
    left: auto;
  }

  .main-menu > .respon-sub-menu > .sub-menu {
    right: 0px;
    left: auto;
  }
} */

/*------------------------------------------------------------------
[ Icon header ]*/

/* .wrap-icon-header {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
} */

/* .icon-header-item {
  position: relative;
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
} */

/*---------------------------------------------*/
/* .icon-header-noti::after {
  content: attr(data-notify);
  font-family: Poppins-Regular;
  font-size: 12px;
  color: #fff;
  line-height: 15px;
  text-align: center;

  display: block;
  position: absolute;
  top: -7px;
  right: 0;
  min-width: 15px;
  height: 15px;
  padding: 0 3px;
  background-color: #708090;
} */

/*---------------------------------------------*/
/* .wrap-header-mobile .wrap-icon-header {
  flex-grow: unset;
} */

/*------------------------------------------------------------------
[ Modal search ]*/
.modal-search-header {
    position: fixed;
    z-index: 2000;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: linear-gradient(
        135deg,
        rgba(0, 0, 0, 0.8) 0%,
        rgba(0, 0, 0, 0.6) 100%
    );
    display: flex;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(4px);
    opacity: 0;
    visibility: hidden;
    transition:
        opacity 0.4s ease,
        visibility 0.4s ease;
    overflow-y: auto;
    padding: 20px;
}

.show-modal-search {
    opacity: 1;
    visibility: visible;
}

.container-search-header {
    width: 90%;
    max-width: 700px;
    position: relative;
    background: linear-gradient(135deg, #fff 0%, #f8f9fa 100%);
    border-radius: 16px;
    padding: 45px 35px;
    box-shadow:
        0 20px 60px rgba(0, 0, 0, 0.4),
        0 0 1px rgba(0, 0, 0, 0.1);
    animation: slideUpSearch 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
    border: 1px solid rgba(255, 255, 255, 0.5);
}

.container-search-header::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(112, 128, 144, 0.3),
        transparent
    );
    border-radius: 16px 16px 0 0;
}

@keyframes slideUpSearch {
    from {
        opacity: 0;
        transform: translateY(40px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.search-header-title {
    font-family: Poppins-SemiBold;
    font-size: 24px;
    color: #333;
    margin-bottom: 8px;
    margin-top: 0;
}

.search-header-subtitle {
    font-family: Poppins-Regular;
    font-size: 13px;
    color: #999;
    margin-bottom: 25px;
    margin-top: 0;
}

/*---------------------------------------------*/
.btn-hide-modal-search {
    position: absolute;
    padding: 0;
    right: 20px;
    top: 20px;
    opacity: 0.5;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background-color: transparent;
    transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
    cursor: pointer;
    border: none;
    padding: 0;
}

.btn-hide-modal-search:hover {
    opacity: 1;
    background-color: rgba(112, 128, 144, 0.1);
    transform: rotate(90deg);
}

.btn-hide-modal-search img {
    width: 22px;
    height: 22px;
    opacity: 0.7;
    filter: invert(0.3);
}

.btn-hide-modal-search:hover img {
    filter: invert(0.5);
}

.wrap-search-header {
    width: 100%;
    position: relative;
    border: 2px solid #e0e0e0;
    border-radius: 12px;
    display: flex;
    align-items: center;
    padding: 0;
    height: 65px;
    background: #fff;
    transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
    margin-bottom: 20px;
}

.wrap-search-header:focus-within {
    border-color: #708090;
    box-shadow: 0 8px 30px rgba(112, 128, 144, 0.2);
    transform: translateY(-2px);
}

/*---------------------------------------------*/
.wrap-search-header input {
    font-family: Poppins-Regular;
    font-size: 17px;
    line-height: 1.5;
    color: #333;
    padding: 0px 25px;
    width: calc(100% - 75px);
    height: 100%;
    background-color: transparent;
    border-radius: 10px 0 0 10px;
    transition: all 0.2s ease;
}

.wrap-search-header input::placeholder {
    color: #bbb;
    font-family: Poppins-Regular;
}

.wrap-search-header input:focus {
    outline: none;
    color: #333;
    font-weight: 500;
}

.wrap-search-header button {
    font-size: 22px;
    color: #708090;
    width: 75px;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0 10px 10px 0;
    transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
    cursor: pointer;
    border: none;
    background-color: transparent;
    padding: 0;
}

.wrap-search-header button:hover {
    color: #fff;
    background: linear-gradient(135deg, #708090 0%, #5a6a75 100%);
}

.wrap-search-header button:active {
    transform: scale(0.95);
}

/*-- Search results section --*/
.search-results-container {
    max-height: 400px;
    overflow-y: auto;
    display: none;
}

.search-results-container.show {
    display: block;
    animation: fadeInResults 0.3s ease;
}

.search-results-list {
    display: flex;
    flex-direction: column;
    gap: 0;
}

@keyframes fadeInResults {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

.search-result-item {
    display: flex;
    align-items: center;
    padding: 12px 15px;
    margin-bottom: 8px;
    background: #f5f5f5;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
    border-left: 4px solid transparent;
}

.search-result-item:hover {
    background: #f0f0f0;
    border-left-color: #ff6b6b;
    transform: translateX(4px);
}

.search-result-item img {
    width: 50px;
    height: 50px;
    object-fit: cover;
    border-radius: 6px;
    margin-right: 12px;
}

.search-result-info {
    flex: 1;
}

.search-result-name {
    font-family: Poppins-Medium;
    font-size: 14px;
    color: #333;
    margin: 0 0 4px 0;
}

.search-result-price {
    font-family: Poppins-Regular;
    font-size: 12px;
    color: #708090;
    margin: 0;
}

.search-product-original-price {
    text-decoration: line-through;
    color: #999;
    margin-left: 8px;
    font-size: 11px;
}

.search-loading {
    text-align: center;
    padding: 30px 20px;
    color: #708090;
    font-family: Poppins-Regular;
    font-size: 14px;
}

.search-no-results {
    text-align: center;
    padding: 30px 20px;
    color: #999;
    font-family: Poppins-Regular;
    font-size: 14px;
}

/* Close button overlay click */
.modal-search-header.show-modal-search {
    cursor: pointer;
}

/*---------------------------------------------*/
@media (max-width: 991px) {
    .container-search-header {
        max-width: 650px;
        padding: 40px 30px;
    }

    .wrap-search-header {
        height: 60px;
    }

    .wrap-search-header input {
        font-size: 16px;
        padding: 0px 20px;
    }

    .wrap-search-header button {
        font-size: 20px;
        width: 70px;
    }
}

@media (max-width: 767px) {
    .modal-search-header {
        padding: 15px;
    }

    .container-search-header {
        width: 95%;
        max-width: 100%;
        padding: 35px 25px;
        border-radius: 14px;
    }

    .search-header-title {
        font-size: 20px;
    }

    .search-header-subtitle {
        font-size: 12px;
        margin-bottom: 20px;
    }

    .wrap-search-header {
        height: 55px;
        margin-bottom: 15px;
    }

    .wrap-search-header input {
        font-size: 15px;
        padding: 0px 18px;
        width: calc(100% - 65px);
    }

    .wrap-search-header button {
        font-size: 18px;
        width: 65px;
    }

    .btn-hide-modal-search {
        right: 15px;
        top: 15px;
        width: 32px;
        height: 32px;
    }

    .btn-hide-modal-search img {
        width: 18px;
        height: 18px;
    }

    .search-results-container {
        max-height: 300px;
    }
}

@media (max-width: 575px) {
    .modal-search-header {
        padding: 10px;
    }

    .container-search-header {
        width: 96%;
        padding: 30px 20px;
        border-radius: 12px;
    }

    .search-header-title {
        font-size: 18px;
        margin-bottom: 6px;
    }

    .search-header-subtitle {
        font-size: 11px;
        margin-bottom: 18px;
    }

    .wrap-search-header {
        height: 48px;
        margin-bottom: 12px;
    }

    .wrap-search-header input {
        font-size: 14px;
        padding: 0px 15px;
        width: calc(100% - 55px);
    }

    .wrap-search-header button {
        font-size: 16px;
        width: 55px;
    }

    .btn-hide-modal-search {
        right: 12px;
        top: 12px;
        width: 30px;
        height: 30px;
    }

    .btn-hide-modal-search img {
        width: 16px;
        height: 16px;
    }

    .search-result-item {
        padding: 10px 12px;
        margin-bottom: 6px;
    }

    .search-result-item img {
        width: 45px;
        height: 45px;
        margin-right: 10px;
    }

    .search-result-name {
        font-size: 13px;
    }

    .search-result-price {
        font-size: 11px;
    }

    .search-results-container {
        max-height: 250px;
    }
}

/*==================================================================
[ Fixed menu desktop ]*/

.fix-menu-desktop .wrap-menu-desktop {
    height: 70px;
    background-color: rgba(255, 255, 255, 1);
    box-shadow: 0 0px 3px 0px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0 0px 3px 0px rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 0 0px 3px 0px rgba(0, 0, 0, 0.2);
    -o-box-shadow: 0 0px 3px 0px rgba(0, 0, 0, 0.2);
    -ms-box-shadow: 0 0px 3px 0px rgba(0, 0, 0, 0.2);
}

.header-v2 .fix-menu-desktop.container-menu-desktop {
    height: 70px;
}

.header-v3 .fix-menu-desktop .wrap-menu-desktop {
    background-color: #222;
    border-color: #222;
}

.header-v4 .fix-menu-desktop.container-menu-desktop {
    height: 110px;
}

/*---------------------------------------------*/
.main-menu > li.active-menu > a {
    color: #ff6b6b;
}

/*>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
[ Header Mobile ]*/
.wrap-header-mobile {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 60px;
    background-color: #fff;
    padding: 10px 12px;
    display: none;

    box-shadow: 0 0px 3px 0px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0 0px 3px 0px rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 0 0px 3px 0px rgba(0, 0, 0, 0.2);
    -o-box-shadow: 0 0px 3px 0px rgba(0, 0, 0, 0.2);
    -ms-box-shadow: 0 0px 3px 0px rgba(0, 0, 0, 0.2);
}

/*------------------------------------------------------------------
[ Logo mobile ]*/
.logo-mobile {
    display: flex;
    align-items: center;
    position: relative;
    height: 100%;
    padding-right: 12px;
    width: 140px;
    flex-shrink: 0;
}

.logo-mobile img {
    max-width: 100%;
    max-height: 100%;
    width: 100%;
    height: auto;
    object-fit: contain;
}

/*------------------------------------------------------------------
[ btn show menu ]*/
.hamburger {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    padding: 0;
    -webkit-transform: scale(0.7);
    -moz-transform: scale(0.7);
    -ms-transform: scale(0.7);
    -o-transform: scale(0.7);
    transform: scale(0.7);
}

.hamburger:hover {
    opacity: 1;
}

/*---------------------------------------------*/
@media (max-width: 991px) {
    .wrap-header-mobile {
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
    }
    .container-menu-desktop {
        display: none;
    }
}

/*==================================================================
[ Menu mobile ]*/
.menu-mobile {
    width: 100%;
    background-color: white;
    display: none;
}

.main-menu-m {
    padding-top: 10px;
    padding-bottom: 10px;
    background-color: #708090;
}

.main-menu-m > li > a {
    font-family: Poppins-Medium;
    font-size: 14px;
    color: white;
    line-height: 2.8;
    padding: 8px 20px 8px 20px;
}

.main-menu-m > li {
    color: white;
    position: relative;
}

.arrow-main-menu-m {
    font-size: 14px;
    color: #fff;

    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    right: 10px;
    top: 2px;
    padding: 10px;
    cursor: pointer;
}

.arrow-main-menu-m i {
    transform-origin: center;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}

.turn-arrow-main-menu-m i {
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg);
}

/*---------------------------------------------*/
.sub-menu-m {
    background-color: #fff;
    padding: 10px 15px 10px 32px;
    display: none;
}

.sub-menu-m a {
    font-family: Poppins-Regular;
    font-size: 14px;
    color: #666;
    line-height: 2.5;
    padding: 5px 0 5px 0;
}

.sub-menu-m a:hover {
    text-decoration: none;
    color: #555555;
}

@media (min-width: 992px) {
    .menu-mobile {
        display: none;
    }
}

/*//////////////////////////////////////////////////////////////////
[ Sidebar ]*/
.wrap-sidebar {
    position: fixed;
    z-index: 1100;
    width: 100%;
    height: 100vh;
    top: 0;
    right: 0;
    background-color: rgba(0, 0, 0, 0);
    visibility: hidden;

    -webkit-transition: all 0.4s;
    -o-transition: all 0.4s;
    -moz-transition: all 0.4s;
    transition: all 0.4s;
}

.sidebar {
    position: fixed;
    z-index: 1100;
    width: 390px;
    max-width: calc(100% - 30px);
    height: 100vh;
    top: 0;
    right: -400px;
    background-color: #fff;

    -webkit-transition: all 0.4s;
    -o-transition: all 0.4s;
    -moz-transition: all 0.34;
    transition: all 0.4s;

    box-shadow: 0 3px 6px 0px rgba(0, 0, 0, 0.18);
    -moz-box-shadow: 0 3px 6px 0px rgba(0, 0, 0, 0.18);
    -webkit-box-shadow: 0 3px 6px 0px rgba(0, 0, 0, 0.18);
    -o-box-shadow: 0 3px 6px 0px rgba(0, 0, 0, 0.18);
    -ms-box-shadow: 0 3px 6px 0px rgba(0, 0, 0, 0.18);
}

.show-sidebar {
    visibility: visible;
    background-color: rgba(0, 0, 0, 0.6);
}

.show-sidebar .sidebar {
    right: 0;
}

@media (max-width: 991px) {
    .wrap-sidebar {
        display: none;
    }
}

/*---------------------------------------------*/
.sidebar-content {
    flex-grow: 1;
    overflow: auto;
    align-content: space-between;
}

/*---------------------------------------------*/
.wrap-item-gallery {
    width: calc((100% - 20px) / 3);
}

.item-gallery {
    display: block;
    width: 100%;
    padding-top: 100%;
    position: relative;
}

.item-gallery::after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(103, 117, 214, 0.8);
    opacity: 0;

    -webkit-transition: all 0.4s;
    -o-transition: all 0.4s;
    -moz-transition: all 0.34;
    transition: all 0.4s;
}

.item-gallery:hover:after {
    opacity: 1;
}

/*//////////////////////////////////////////////////////////////////
[ Header cart ]*/
.wrap-header-cart {
    position: fixed;
    z-index: 1100;
    width: 100%;
    height: 100vh;
    top: 0;
    right: 0;
    background-color: rgba(0, 0, 0, 0);
    visibility: hidden;

    -webkit-transition: all 0.4s;
    -o-transition: all 0.4s;
    -moz-transition: all 0.4s;
    transition: all 0.4s;
}

.header-cart {
    position: fixed;
    z-index: 1100;
    width: 390px;
    max-width: calc(100% - 30px);
    height: 100vh;
    top: 0;
    right: -400px;
    background-color: #fff;

    -webkit-transition: all 0.4s;
    -o-transition: all 0.4s;
    -moz-transition: all 0.34;
    transition: all 0.4s;

    box-shadow: 0 3px 6px 0px rgba(0, 0, 0, 0.18);
    -moz-box-shadow: 0 3px 6px 0px rgba(0, 0, 0, 0.18);
    -webkit-box-shadow: 0 3px 6px 0px rgba(0, 0, 0, 0.18);
    -o-box-shadow: 0 3px 6px 0px rgba(0, 0, 0, 0.18);
    -ms-box-shadow: 0 3px 6px 0px rgba(0, 0, 0, 0.18);
}

.header-cart::after {
    content: "";
    display: block;
    width: 100%;
    height: 9%;
    min-height: 30px;
}

.show-header-cart {
    visibility: visible;
    background-color: rgba(0, 0, 0, 0.6);
}

.show-header-cart .header-cart {
    right: 0;
}

/*---------------------------------------------*/
.header-cart-title {
    width: 260px;
    max-width: 100%;
    height: 16.5%;
    min-height: 85px;
}

.header-cart-content {
    flex-grow: 1;
    overflow: auto;
    align-content: space-between;
}

.header-cart-wrapitem {
    flex-grow: 1;
}

/*---------------------------------------------*/
.header-cart-item-img {
    width: 60px;
    position: relative;
    margin-right: 20px;
    cursor: pointer;
}

.header-cart-item-img img {
    width: 100%;
}

.header-cart-item-img::after {
    content: "\e870";
    font-family: Linearicons-Free;
    font-size: 16px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.5);
    color: #fff;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    -moz-transition: all 0.3s;
    opacity: 0;
}

.header-cart-item-img:hover:after {
    opacity: 1;
}

/*---------------------------------------------*/
.header-cart-item-txt {
    width: calc(100% - 80px);
}

.header-cart-item-name {
    display: block;
    font-family: Poppins-Regular;
    font-size: 14px;
    color: #555;
    line-height: 1.3;
}

.header-cart-item-info {
    display: block;
    font-family: Poppins-Regular;
    font-size: 14px;
    color: #888;
    line-height: 1.5;
}

.header-cart-total {
    font-family: Poppins-Regular;
    font-size: 18px;
    color: #222;
    line-height: 1.3;
}

/*---------------------------------------------*/
@media (max-width: 575px) {
    .header-cart {
        padding: 30px;
    }

    .header-cart-title {
        padding-bottom: 35px;
    }
}

/*//////////////////////////////////////////////////////////////////
[ Restyle Select2 ]*/

.rs1-select2 .select2-container {
    display: block;
    max-width: 100% !important;
    width: auto !important;
}

.rs1-select2 .select2-container .select2-selection--single {
    height: 45px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    border: none;
    outline: none;
    background-color: transparent;
    border-radius: 0px;
    position: relative;
}

/*------------------------------------------------------------------
[ in select ]*/
.rs1-select2
    .select2-container
    .select2-selection--single
    .select2-selection__rendered {
    font-family: Poppins-Regular;
    font-size: 13px;
    color: #555;
    line-height: 1.2;
    padding-left: 20px;
    background-color: transparent;
}

.rs1-select2
    .select2-container--default
    .select2-selection--single
    .select2-selection__arrow {
    width: 38px;
    height: 20px;
    top: calc(50% - 10px);
    right: 5px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: center;
    border-left: 1px solid #e6e6e6;
}

.rs1-select2
    .select2-container--default
    .select2-selection--single
    .select2-selection__arrow
    b {
    display: none;
}

.rs1-select2
    .select2-container--default
    .select2-selection--single
    .select2-selection__arrow::after {
    content: "\f0dc";
    font-family: FontAwesome;
    font-size: 13px;
    color: #808080;
}

.rs1-select2
    .select2-container--default
    .select2-selection--single
    .select2-selection__arrow:hover:after {
    color: #708090;
}

/*------------------------------------------------------------------
[ Dropdown option ]*/
.rs1-select2 .select2-container--open .select2-dropdown {
    z-index: 1251;
    width: 100%;
    border: 1px solid #fff;
    border-radius: 0px;
    overflow: hidden;
    background-color: white;
    left: 0px;

    box-shadow: 0 3px 10px 0px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0 3px 10px 0px rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 0 3px 10px 0px rgba(0, 0, 0, 0.2);
    -o-box-shadow: 0 3px 10px 0px rgba(0, 0, 0, 0.2);
    -ms-box-shadow: 0 3px 10px 0px rgba(0, 0, 0, 0.2);
}

.rs1-select2 .select2-dropdown--above {
    top: -2px;
}
.rs1-select2 .select2-dropdown--below {
    top: 2px;
}

.rs1-select2 .select2-container .select2-results__option[aria-selected] {
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 20px;
}

.rs1-select2 .select2-container .select2-results__option[aria-selected="true"] {
    background: #708090;
    color: white;
}

.rs1-select2
    .select2-container
    .select2-results__option--highlighted[aria-selected] {
    background: #708090;
    color: white;
}

.rs1-select2 .select2-results__options {
    font-family: Poppins-Regular;
    font-size: 13px;
    color: #555;
    line-height: 1.2;
}

.rs1-select2 .select2-search--dropdown .select2-search__field {
    border: 1px solid #aaa;
    outline: none;
    font-family: Poppins-Regular;
    font-size: 13px;
    color: #555;
    line-height: 1.2;
}

/*------------------------------------------------------------------
[ rs2 ]*/
.rs2-select2 .select2-container .select2-selection--single {
    height: 40px;
}

.rs2-select2
    .select2-container
    .select2-selection--single
    .select2-selection__rendered {
    padding-left: 15px;
}

.rs2-select2
    .select2-container--default
    .select2-selection--single
    .select2-selection__arrow {
    width: 35px;
    right: 0px;
    border-left: none;
}

.rs2-select2
    .select2-container--default
    .select2-selection--single
    .select2-selection__arrow::after {
    content: "\f0d7";
}

/*//////////////////////////////////////////////////////////////////
[ Slick1 ]*/
.wrap-slick1 {
    position: relative;
}

.item-slick1 {
    height: calc(100vh - 40px);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-attachment: fixed;
}

.rs1-slick1 .item-slick1 {
    height: calc(100vh - 84px);
}

.rs2-slick1 .item-slick1 {
    height: 100vh;
}

@media (max-width: 1199px) {
    /* Override inline background-image for mobile using data attributes */
    .slick1 .item-slick1[data-slide="1"] {
        background-image: url(images-limelight/slider-image-mobile-1.webp) !important;
    }

    .slick1 .item-slick1[data-slide="2"] {
        background-image: url(images-limelight/slider-image-mobile-2.webp) !important;
    }

    .slick1 .item-slick1[data-slide="3"] {
        background-image: url(images-limelight/slider-image-mobile-3.webp) !important;
    }

    .item-slick1 {
        height: 70vh !important;
        background-attachment: scroll;
    }
}

@media (max-width: 991px) {
    .item-slick1 {
        height: 60vh !important;
        background-attachment: scroll;
    }
}

@media (max-width: 767px) {
    .item-slick1 {
        height: 50vh !important;
        background-attachment: scroll;
    }
}

@media (max-width: 575px) {
    .item-slick1 {
        height: 45vh !important;
        background-attachment: scroll;
    }
}

@media (max-width: 480px) {
    .item-slick1 {
        height: 40vh !important;
        background-attachment: scroll;
    }
}

.arrow-slick1 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    align-items: center;
    width: auto;
    height: auto;
    font-size: 80px;
    color: rgba(0, 0, 0, 0.3);
    position: absolute;
    opacity: 0;

    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);

    z-index: 200;
    -webkit-transition: all 0.4s;
    -o-transition: all 0.4s;
    -moz-transition: all 0.4s;
    transition: all 0.4s;
}

.wrap-slick1:hover .arrow-slick1 {
    opacity: 1;
}

.arrow-slick1:hover {
    color: #7280e0;
}

.next-slick1 {
    right: 50px;
    left: auto;
}

.prev-slick1 {
    left: 50px;
    right: auto;
}

@media (max-width: 991px) {
    .next-slick1 {
        right: 15px;
    }

    .prev-slick1 {
        left: 15px;
    }
}

/*---------------------------------------------*/
.rs2-slick1 .arrow-slick1 {
    color: rgba(255, 255, 255, 0.3);
}

.rs2-slick1 .arrow-slick1:hover {
    color: #7280e0;
}

.wrap-slick1-dots {
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 60px;
}

.slick1-dots {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
}

.slick1-dots li {
    max-width: 190px;
    position: relative;
    cursor: pointer;
    margin-right: 1px;
}

.slick1-dots li img {
    width: 100%;
}

.caption-dots-slick1 {
    font-family: Poppins-ExtraLight;
    font-size: 16px;
    line-height: 1.3;
    color: #fff;
    text-align: center;

    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    align-items: center;

    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.5);
    padding: 5px;

    -webkit-transition: all 0.4s;
    -o-transition: all 0.4s;
    -moz-transition: all 0.4s;
    transition: all 0.4s;
    opacity: 0;
}

.slick1-dots li:hover .caption-dots-slick1 {
    opacity: 1;
}

.slick1-dots li.slick-active .caption-dots-slick1 {
    opacity: 1;
}

@media (max-width: 575px) {
    .caption-dots-slick1 {
        font-size: 13px;
    }

    .wrap-slick1-dots {
        bottom: 25px;
    }
}

/*//////////////////////////////////////////////////////////////////
[ Slick2 ]*/

.wrap-slick2 {
    position: relative;
    margin-right: -15px;
    margin-left: -15px;
    width: calc(100% + 30px);
}

/* Ensure Swiper container has proper width */
.wrap-slick2.swiper {
    width: 100%;
    max-width: 100%;
}

/* ------------------------------------ */
/* Slider arrows for related products / carousels */
.arrow-slick2 {
    position: absolute;
    z-index: 100;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);

    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 1px solid #ddd;
    background-color: #fff;

    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 22px;
    color: #888;

    cursor: pointer;

    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06);

    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.arrow-slick2:hover {
    border-color: #333;
    color: #333;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

.next-slick2 {
    right: -30px;
}

.prev-slick2 {
    left: -30px;
}

/* Ensure slider items display correctly side by side */
.wrap-slick2.swiper {
    overflow: hidden;
    width: 100%;
    position: relative;
}

.wrap-slick2 .slick2.swiper-wrapper {
    display: flex;
    width: 100%;
    transition-property: transform;
}

.wrap-slick2 .item-slick2.swiper-slide {
    flex-shrink: 0;
    height: auto;
    box-sizing: border-box;
    /* Let Swiper calculate width automatically based on slidesPerView */
}

/* Product card width within slider */
.wrap-slick2 .product-card {
    width: 100%;
    max-width: 100%;
}

/* Remove padding from item-slick2 since spaceBetween handles spacing */
.wrap-slick2 .item-slick2 {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

@media (max-width: 1300px) {
    .next-slick2 {
        right: 0px;
    }

    .prev-slick2 {
        left: 0px;
    }
}

/*//////////////////////////////////////////////////////////////////
[ Slick3 ]*/
.wrap-slick3 {
    position: relative;
}

/*---------------------------------------------*/
.wrap-slick3-arrows {
    position: absolute;
    z-index: 100;
    width: 83.333333%;
    right: 0;
    top: calc(50% - 20px);
}

.arrow-slick3 {
    font-size: 25px;
    color: #fff;

    position: absolute;
    top: 0;
    width: 40px;
    height: 40px;
    background-color: rgba(0, 0, 0, 0.5);

    -webkit-transition: all 0.4s;
    -o-transition: all 0.4s;
    -moz-transition: all 0.4s;
    transition: all 0.4s;
}

.arrow-slick3:hover {
    background-color: rgba(0, 0, 0, 0.9);
}

.prev-slick3 {
    left: 0px;
}
.next-slick3 {
    right: 0px;
}

/*---------------------------------------------*/
.wrap-slick3-dots {
    width: 11.111111%;
}

.slick3 {
    width: 83.333333%;
}

.slick3-dots li {
    display: block;
    position: relative;
    width: 100%;
    margin-bottom: 27px;
}

.slick3-dots li img {
    width: 100%;
}

.slick3-dot-overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    cursor: pointer;
    border: 2px solid transparent;
    -webkit-transition: all 0.4s;
    -o-transition: all 0.4s;
    -moz-transition: all 0.4s;
    transition: all 0.4s;
}

.slick3-dot-overlay:hover {
    border-color: #ccc;
}

.slick3-dots .slick-active .slick3-dot-overlay {
    border-color: #ccc;
}

/*---------------------------------------------*/
/* Product Gallery - New Layout */
.product-gallery-wrapper {
    position: relative;
}

.main-image-container {
    position: relative;
    margin-bottom: 20px;
    background-color: #f5f5f5;
}

/* Save Button */
.product-save-btn {
    position: absolute;
    top: 15px;
    left: 15px;
    z-index: 100;
    width: 40px;
    height: 40px;
    background-color: rgba(0, 0, 0, 0.8);
    border: none;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.4s;
}

.product-save-btn:hover {
    background-color: rgba(0, 0, 0, 1);
}

/* Main Image Swiper */
.wrap-slick3-main {
    position: relative;
    width: 100%;
}

.slick3-main {
    width: 100%;
}

.item-slick3-main {
    width: 100%;
}

.item-slick3-main img {
    width: 100%;
    height: auto;
    display: block;
}

.wrap-slick3-arrows-main {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    z-index: 10;
    pointer-events: none;
}

.arrow-slick3-main {
    position: absolute;
    width: 50px;
    height: 50px;
    background-color: rgba(0, 0, 0, 0.5);
    border: none;
    border-radius: 50%;
    color: #fff;
    font-size: 24px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s;
    pointer-events: all;
    z-index: 11;
}

.arrow-slick3-main:hover {
    background-color: rgba(0, 0, 0, 0.8);
}

.prev-slick3-main {
    left: 15px;
}

.next-slick3-main {
    right: 15px;
}

/* Thumbnail Row */
.product-thumbnails {
    display: flex;
    gap: 10px;
    justify-content: center;
    flex-wrap: wrap;
}

.thumbnail-item {
    width: 80px;
    height: 80px;
    cursor: pointer;
    border: 2px solid transparent;
    overflow: hidden;
    transition: all 0.4s;
    border-radius: 4px;
}

.thumbnail-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.thumbnail-item:hover {
    border-color: #ccc;
}

.thumbnail-item.active {
    border-color: #333;
}

@media (max-width: 768px) {
    .thumbnail-item {
        width: 60px;
        height: 60px;
    }

    .arrow-slick3-main {
        width: 40px;
        height: 40px;
        font-size: 20px;
    }

    .product-save-btn {
        width: 35px;
        height: 35px;
        top: 10px;
        left: 10px;
    }
}

/*//////////////////////////////////////////////////////////////////
[ RS Magnific-Popup ]*/
.mfp-bg {
    z-index: 10000;
    background-color: #000;
    opacity: 0.9;
}

.mfp-wrap {
    z-index: 10000;
}

.mfp-arrow:after,
.mfp-arrow:before {
    display: none;
}

.mfp-arrow {
    -webkit-transition: all 0.4s;
    -o-transition: all 0.4s;
    -moz-transition: all 0.4s;
    transition: all 0.4s;
}

button.mfp-arrow-right {
    background-image: url(../images/icons/icon-next.png);
    background-position: center center;
    background-repeat: no-repeat;
}

button.mfp-arrow-left {
    background-image: url(../images/icons/icon-prev.png);
    background-position: center center;
    background-repeat: no-repeat;
}

button.mfp-close {
    width: 75px !important;
    height: 58px !important;
    line-height: 44px;
    position: fixed;
    right: 0;
    top: 0;
    color: transparent !important;
    background-image: url(../images/icons/icon-close.png);
    background-position: center center;
    background-repeat: no-repeat;
    cursor: pointer !important;
    -webkit-transition: all 0.4s;
    -o-transition: all 0.4s;
    -moz-transition: all 0.4s;
    transition: all 0.4s;
}

/* overlay at start */
.mfp-fade.mfp-bg {
    opacity: 0;

    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}
/* overlay animate in */
.mfp-fade.mfp-bg.mfp-ready {
    opacity: 0.9;
}
/* overlay animate out */
.mfp-fade.mfp-bg.mfp-removing {
    opacity: 0;
}

/* content at start */
.mfp-fade.mfp-wrap .mfp-content {
    opacity: 0;

    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}
/* content animate it */
.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
    opacity: 1;
}
/* content animate out */
.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
    opacity: 0;
}

/*//////////////////////////////////////////////////////////////////
[ Tab01 ]*/
.tab01 .nav-tabs {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    border: none;
}

.tab01 .nav-tabs .nav-item {
    margin: 0px 15px;
}

.tab01 .nav-link {
    font-family: Poppins-Regular;
    font-size: 15px;
    color: #888;
    line-height: 1.2;

    padding: 0;
    border-radius: 0px;
    border: none;
    border-bottom: 1px solid transparent;

    -webkit-transition: all 0.4s;
    -o-transition: all 0.4s;
    -moz-transition: all 0.4s;
    transition: all 0.4s;
}

.tab01 .nav-link.active {
    color: #333;
    border-color: #797979;
}

.tab01 .nav-link:hover {
    color: #333;
    border-color: #797979;
}

/*//////////////////////////////////////////////////////////////////
[ RS sweet alert ]*/
.swal-overlay {
    overflow-y: auto;
}

.swal-button:focus {
    outline: none;
    box-shadow: none;
}

.swal-button {
    background-color: #708090;
    font-family: Poppins-Regular;
    font-size: 16px;
    color: white;
    text-transform: uppercase;
    font-weight: unset;
    border-radius: 4px;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}

.swal-button:hover {
    background-color: #333;
}

.swal-button:active {
    background-color: #333;
}

.swal-title {
    font-family: Poppins-Bold;
    color: #333333;
    font-size: 18px;
    line-height: 1.5;
    padding: 0 15px;
}

.swal-text {
    font-family: Poppins-Regular;
    color: #555555;
    font-size: 16px;
    line-height: 1.666667;
    text-align: center;
}

.swal-footer {
    margin-top: 0;
}

/*//////////////////////////////////////////////////////////////////
[ Filter ]*/
.show-search .icon-search,
.show-filter .icon-filter {
    display: none;
}

.show-search .icon-close-search,
.show-filter .icon-close-filter {
    display: unset;
}

.show-search,
.show-filter {
    background-color: #f2f2f2;
    border-color: #e7e7e7;
    position: relative;
}

.show-search::after,
.show-filter::after {
    content: "";
    position: absolute;
    display: block;

    width: 14px;
    height: 14px;
    background-color: #f2f2f2;
    border-left: 1px solid #e7e7e7;
    border-bottom: 1px solid #e7e7e7;

    transform-origin: center center;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);

    left: calc(50% - 7px);
    bottom: -8px;

    -webkit-transition: all 0.4s;
    -o-transition: all 0.4s;
    -moz-transition: all 0.4s;
    transition: all 0.4s;
}

.show-search:hover:after,
.show-filter:hover:after {
    background-color: #708090;
    border-color: #708090;
}

/*---------------------------------------------*/
.filter-col1 {
    width: 27%;
}
.filter-col2 {
    width: 27%;
}
.filter-col3 {
    width: 26%;
}
.filter-col4 {
    width: 20%;
}

/*---------------------------------------------*/
.filter-link {
    color: #aaa;
    border-bottom: 1px solid transparent;
}

.filter-link:hover {
    color: #708090;
    border-bottom: 1px solid #708090;
}

.filter-link-active {
    color: #708090;
    border-bottom: 1px solid #708090;
}

@media (max-width: 767px) {
    .filter-col1,
    .filter-col2,
    .filter-col3,
    .filter-col4 {
        width: 50%;
    }
}

@media (max-width: 575px) {
    .filter-col1,
    .filter-col2,
    .filter-col3,
    .filter-col4 {
        width: 100%;
    }
}

/*//////////////////////////////////////////////////////////////////
[ Num Product ]*/
.wrap-num-product {
    width: 140px;
    height: 45px;
    border: 1px solid #e6e6e6;
    border-radius: 3px;
    overflow: visible;
    display: flex;
    align-items: center;
    justify-content: center;
}

.btn-num-product-up,
.btn-num-product-down {
    flex: 1 1 8px;
    height: 100%;
    cursor: pointer;
}

.num-product {
    flex: 1 1 8px;
    height: 100%;
    border-left: 1px solid #e6e6e6;
    border-right: 1px solid #e6e6e6;
    background-color: #f7f7f7;
    padding: 0 5px;
    margin: 0;
}

input.num-product {
    -moz-appearance: textfield;
    appearance: none;
    -webkit-appearance: none;
    width: 100%;
    height: 100%;
    border: none;
    background-color: #f7f7f7;
    font-size: 16px;
    font-family: Poppins-Medium;
    text-align: center;
    padding: 0;
    margin: 0;
    color: #555;
    line-height: 45px;
}

input.num-product::-webkit-outer-spin-button,
input.num-product::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/*//////////////////////////////////////////////////////////////////
[ Tolltip100 ]*/
.tooltip100 {
    position: relative;
}

.tooltip100::after {
    content: attr(data-tooltip);
    font-family: Poppins-Regular;
    font-size: 12px;
    color: #888;
    line-height: 18px;
    white-space: nowrap;

    display: block;
    position: absolute;
    background: #fff;
    border: 1px solid #ccc;
    height: 20px;
    padding: 0px 8px;
    top: -35px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);

    box-shadow: 0 3px 6px 0px rgba(0, 0, 0, 0.18);
    -moz-box-shadow: 0 3px 6px 0px rgba(0, 0, 0, 0.18);
    -webkit-box-shadow: 0 3px 6px 0px rgba(0, 0, 0, 0.18);
    -o-box-shadow: 0 3px 6px 0px rgba(0, 0, 0, 0.18);
    -ms-box-shadow: 0 3px 6px 0px rgba(0, 0, 0, 0.18);

    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    -moz-transition: all 0.2s;
    transition: all 0.2s;

    visibility: hidden;
    opacity: 0;
}

.tooltip100:hover:after {
    visibility: visible;
    opacity: 1;
}

/*//////////////////////////////////////////////////////////////////
[ Modal1 ]*/
.wrap-modal1 {
    position: fixed;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    z-index: 9000;
    overflow: auto;

    -webkit-transition: all 0.4s;
    -o-transition: all 0.4s;
    -moz-transition: all 0.4s;
    transition: all 0.4s;

    visibility: hidden;
    opacity: 0;
}

.overlay-modal1 {
    position: fixed;
    z-index: -1;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: #000;
    opacity: 0.8;
}

.show-modal1 {
    visibility: visible;
    opacity: 1;
}

/*//////////////////////////////////////////////////////////////////
[ Table Shopping Cart ]*/

.wrap-table-shopping-cart {
    overflow: auto;
    border-left: 1px solid #e6e6e6;
    border-right: 1px solid #e6e6e6;
}

.table-shopping-cart {
    border-collapse: collapse;
    width: 100%;
    min-width: 680px;
}

.table-shopping-cart tr {
    border-top: 1px solid #e6e6e6;
    border-bottom: 1px solid #e6e6e6;
}

.table-shopping-cart .column-1 {
    width: 133px;
    padding-left: 50px;
}

.table-shopping-cart .column-2 {
    width: 220px;
    font-size: 15px;
}

.table-shopping-cart .column-3 {
    width: 120px;
    font-size: 16px;
}

.table-shopping-cart .column-4 {
    width: 145px;
    text-align: center;
    /* display: flex;
  align-items: center;
  justify-content: center; */
    padding: 0 !important;
}

/* Cart Action Buttons */
.cart-actions-buttons {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    border: 1px solid #e6e6e6;
    border-radius: 3px;
    padding: 18px 40px 15px 40px;
    margin-top: 15px;
}

.table-shopping-cart .column-5 {
    width: 172px;
    padding-right: 50px;
    text-align: right;
    font-size: 16px;
}

.table-shopping-cart .table_row {
    height: 185px;
}

.table-shopping-cart .table_row td {
    padding-bottom: 20px;
    vertical-align: middle;
}

.table-shopping-cart .table_row td.column-1 {
    padding-bottom: 30px;
}

.table-shopping-cart .table_head th {
    font-family: Poppins-Bold;
    font-size: 13px;
    color: #555;
    text-transform: uppercase;
    line-height: 1.6;
    padding-top: 15px;
    padding-bottom: 15px;
}

.table-shopping-cart td {
    font-family: Poppins-Regular;
    color: #555;
    line-height: 1.6;
}

/*//////////////////////////////////////////////////////////////////
[ Block1 ]*/
.block1 {
    position: relative;
    border: 1px solid #e6e6e6;
}

.block1-txt {
    background-color: rgba(103, 117, 214, 0);
}

/*---------------------------------------------*/
.block1-name {
    color: #333;
}
.block1-info {
    color: #555;
}

/*---------------------------------------------*/
.block1-txt-child2 {
    border-bottom: 2px solid #fff;
    overflow: hidden;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
}

.block1-link {
    -webkit-transform: translateY(250%);
    -moz-transform: translateY(250%);
    -ms-transform: translateY(250%);
    -o-transform: translateY(250%);
    transform: translateY(250%);
}

/*---------------------------------------------*/
.block1-txt:hover {
    background-color: rgba(103, 117, 214, 0.8);
}

.block1-txt:hover .block1-txt-child2 {
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
    transform: scaleX(1);
}

.block1-txt:hover .block1-link {
    -webkit-transform: translateY(0%);
    -moz-transform: translateY(0%);
    -ms-transform: translateY(0%);
    -o-transform: translateY(0%);
    transform: translateY(0%);
}

.block1-txt:hover .block1-name,
.block1-txt:hover .block1-info {
    color: #fff;
}

.block1-txt-bottom {
    top: auto !important;
    bottom: 0 !important;
}

.block1-txt {
    display: flex;
    position: relative;
}

a.block1-txt {
    text-decoration: none;
    color: inherit;
    display: flex;
}

/* Gradient Card Styling  collection card*/
.block1-gradient-card {
    position: relative;
    display: block;
    text-decoration: none;
    color: inherit;
    overflow: hidden;
    border-radius: 8px;
    min-height: 300px;
}

.block1-img-wrapper {
    position: relative;
    overflow: hidden;
    display: block;
    border-radius: 8px;
    width: 100%;
    height: 100%;
}

.block1-img-wrapper img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.block1-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(
        to bottom,
        rgba(0, 0, 0, 0) 0%,
        rgba(0, 0, 0, 0.2) 40%,
        rgba(0, 0, 0, 0.5) 100%
    );
    transition: background 0.3s ease;
    z-index: 1;
}

.block1-content {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 20px;
    color: #fff;
    z-index: 2;
}

.block1-gradient-card .block1-name {
    display: block;
    margin-bottom: 8px;
    color: #fff;
    font-weight: 500;
}

.block1-gradient-card .block1-info {
    display: block;
    margin-bottom: 12px;
    color: #ddd;
    font-size: 13px;
}

.block1-gradient-card .block1-link {
    opacity: 0;
    transform: translateY(10px);
    transition: all 0.3s ease;
    color: #fff;
    cursor: pointer;
    font-weight: 500;
}

.block1-gradient-card:hover .block1-img-wrapper img {
    transform: scale(1.05);
}

.block1-gradient-card:hover .block1-overlay {
    background: linear-gradient(
        to bottom,
        rgba(0, 0, 0, 0) 0%,
        rgba(0, 0, 0, 0.3) 40%,
        rgba(0, 0, 0, 0.75) 100%
    );
}

.block1-gradient-card:hover .block1-link {
    opacity: 1;
    transform: translateY(0);
}

/*//////////////////////////////////////////////////////////////////
[ Block2 ]*/
.block2-pic {
    position: relative;
}

.block2-btn {
    position: absolute;
    bottom: -50px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
}

.block2-pic:hover .block2-btn {
    bottom: 20px;
}

/*---------------------------------------------*/
.block2-txt-child1 {
    width: calc(100% - 30px);
}

.block2-txt-child2 {
    width: 30px;
}

.btn-addwish-b2 .icon-heart2 {
    opacity: 0;
}

.btn-addwish-b2:hover .icon-heart2 {
    opacity: 1;
}

.btn-addwish-b2:hover .icon-heart1 {
    opacity: 0;
}

.js-addedwish-b2 .icon-heart2 {
    opacity: 1;
}

.js-addedwish-b2 .icon-heart1 {
    opacity: 0;
}

/*---------------------------------------------*/
.label-new {
    position: relative;
}

.label-new::after {
    content: attr(data-label);
    font-family: Montserrat-Regular;
    font-size: 12px;
    color: #fff;
    line-height: 1.2;

    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    min-width: 50px;
    height: 22px;
    border-radius: 11px;
    padding: 0 6px;
    background-color: #66a8a6;
    top: 42px;
    left: 12px;
}

/*==================================================================
    TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT TEXT
==================================================================*/
.cl0 {
    color: #fff;
}
.cl1 {
    color: #708090;
}
.cl2 {
    color: #333;
}
.cl3 {
    color: #666;
}
.cl4 {
    color: #999;
}
.cl5 {
    color: #222;
}
.cl6 {
    color: #888;
}
.cl7 {
    color: #b2b2b2;
}
.cl8 {
    color: #555;
}
.cl9 {
    color: #aaa;
}
.cl10 {
    color: #1d1d1d;
}
.cl11 {
    color: #f9ba48;
}
.cl12 {
    color: #ccc;
}

/*//////////////////////////////////////////////////////////////////
[ S-Text 0 - 15 ]*/
.stext-101 {
    font-family: Poppins-Medium;
    font-size: 15px;
    line-height: 1.466667;
    text-transform: uppercase;
}

.stext-102 {
    font-family: Poppins-Regular;
    font-size: 16px;
    line-height: 1.7;
}

.stext-103 {
    font-family: Poppins-Regular;
    font-size: 15px;
    line-height: 1.466667;
}

.stext-104 {
    font-family: Poppins-Regular;
    font-size: 14px;
    line-height: 1.466667;
}

.stext-105 {
    font-family: Poppins-Regular;
    font-size: 14px;
    line-height: 1.466667;
    letter-spacing: 1px;
}

.stext-106 {
    font-family: Poppins-Regular;
    font-size: 15px;
    line-height: 1.2;
}

.stext-107 {
    font-family: Poppins-Regular;
    font-size: 13px;
    line-height: 1.923;
}

.stext-108 {
    font-family: Poppins-Light;
    font-size: 14px;
    line-height: 1.7143;
}

.stext-109 {
    font-family: Poppins-Regular;
    font-size: 12px;
    line-height: 1.833333;
}

.stext-110 {
    font-family: Poppins-Medium;
    font-size: 15px;
    line-height: 1.466667;
}

.stext-111 {
    font-family: Poppins-Regular;
    font-size: 13px;
    line-height: 1.6923;
}

.stext-112 {
    font-family: Poppins-Regular;
    font-size: 13px;
    line-height: 1.6923;
    text-transform: uppercase;
}

.stext-113 {
    font-family: Poppins-Light;
    font-size: 14px;
    line-height: 1.7857;
}

.stext-114 {
    font-family: Poppins-Italic;
    font-size: 15px;
    line-height: 1.666667;
}

.stext-115 {
    font-family: Poppins-Regular;
    font-size: 15px;
    line-height: 1.666667;
}

.stext-116 {
    font-family: Poppins-Regular;
    font-size: 15px;
    line-height: 1.266667;
}

.stext-117 {
    font-family: Poppins-Light;
    font-size: 15px;
    line-height: 1.666667;
}

/*---------------------------------------------*/
.stext-301 {
    font-family: Montserrat-Bold;
    font-size: 15px;
    line-height: 1.6;
    text-transform: uppercase;
}

/*//////////////////////////////////////////////////////////////////
[ M-Text 16 - 25 ]*/
.mtext-101 {
    font-family: Poppins-Medium;
    font-size: 18px;
    line-height: 1.333333;
}

.mtext-102 {
    font-family: Poppins-SemiBold;
    font-size: 16px;
    line-height: 1.6;
}

.mtext-103 {
    font-family: Poppins-Bold;
    font-size: 18px;
    line-height: 1.333333;
    text-transform: uppercase;
}

.mtext-104 {
    font-family: Poppins-Medium;
    font-size: 16px;
    line-height: 1.6;
}

.mtext-105 {
    font-family: Poppins-Regular;
    font-size: 24px;
    line-height: 1.5;
}

.mtext-106 {
    font-family: Poppins-SemiBold;
    font-size: 18px;
    line-height: 1.388888;
}

.mtext-107 {
    font-family: Poppins-Regular;
    font-size: 16px;
    line-height: 1.625;
}

.mtext-108 {
    font-family: Poppins-Regular;
    font-size: 25px;
    line-height: 1.3;
}

.mtext-109 {
    font-family: Poppins-Bold;
    font-size: 20px;
    line-height: 1.3;
    text-transform: uppercase;
}

.mtext-110 {
    font-family: Poppins-Regular;
    font-size: 18px;
    line-height: 1.222222;
}

.mtext-111 {
    font-family: Poppins-Bold;
    font-size: 25px;
    line-height: 1.2;
}

.mtext-112 {
    font-family: Poppins-Bold;
    font-size: 22px;
    line-height: 1.333333;
}

.mtext-113 {
    font-family: Poppins-Bold;
    font-size: 22px;
    line-height: 1.333333;
    text-transform: uppercase;
}

/*//////////////////////////////////////////////////////////////////
[ L-Text >= 26 ]*/
.ltext-101 {
    font-family: Poppins-Regular;
    font-size: 28px;
    line-height: 1.2857;
}

.ltext-102 {
    font-family: Poppins-Bold;
    font-size: 28px;
    line-height: 1.1;
}

.ltext-103 {
    font-family: Poppins-Bold;
    font-size: 36px;
    line-height: 1.1;
    text-transform: uppercase;
}

.ltext-104 {
    font-family: Poppins-Bold;
    font-size: 60px;
    line-height: 1.1;
    text-transform: uppercase;
}

.ltext-105 {
    font-family: Poppins-Bold;
    font-size: 50px;
    line-height: 1.1;
}

.ltext-106 {
    font-family: Poppins-Bold;
    font-size: 36px;
    line-height: 1.2;
}

.ltext-107 {
    font-family: Poppins-Bold;
    font-size: 30px;
    line-height: 1.1;
}

.ltext-108 {
    font-family: Poppins-Bold;
    font-size: 26px;
    line-height: 1.3846;
}

.ltext-109 {
    font-family: Poppins-Bold;
    font-size: 36px;
    line-height: 1.2;
}

/*---------------------------------------------*/
.ltext-201 {
    font-family: PlayfairDisplay-Bold;
    font-size: 60px;
    line-height: 1.1;
    text-transform: uppercase;
}

.ltext-202 {
    font-family: PlayfairDisplay-Regular;
    font-size: 28px;
    line-height: 1.2857;
}

/*==================================================================
    SIZE SIZE SIZE SIZE SIZE SIZE SIZE SIZE SIZE SIZE SIZE SIZE SIZE
==================================================================*/

/*//////////////////////////////////////////////////////////////////
[ Size ]*/
.size-101 {
    min-width: 161px;
    height: 46px;
}

.size-102 {
    min-width: 139px;
    height: 40px;
}

.size-103 {
    min-width: 179px;
    height: 46px;
}

.size-104 {
    min-width: 94px;
    height: 40px;
}

.size-105 {
    min-width: 111px;
    height: 40px;
}

.size-106 {
    width: 88px;
    height: 100%;
}

.size-107 {
    min-width: 145px;
    height: 40px;
}

.size-108 {
    width: 40px;
    height: 40px;
}

.size-109 {
    width: 60px;
    height: 60px;
}

.size-110 {
    width: 100%;
    min-height: 100px;
}

.size-111 {
    width: 100%;
    height: 40px;
}

.size-112 {
    min-width: 134px;
    height: 43px;
}

.size-113 {
    width: 38px;
    height: 60px;
}

.size-114 {
    width: calc(100% - 38px);
    height: 60px;
}

.size-115 {
    min-width: 185px;
    height: 45px;
}

.size-116 {
    width: 100%;
    height: 50px;
}

.size-117 {
    width: 220px;
    height: 45px;
}

.size-118 {
    min-width: 163px;
    height: 45px;
}

.size-119 {
    min-width: 156px;
    height: 45px;
}

.size-120 {
    width: 100%;
    min-height: 199px;
}

.size-121 {
    width: 100%;
    height: 46px;
}

.size-122 {
    width: 55px;
    height: 100%;
}

.size-123 {
    width: 70px;
    min-height: 70px;
}

.size-124 {
    width: 100%;
    min-height: 150px;
}

.size-125 {
    min-width: 180px;
    height: 40px;
}

/*//////////////////////////////////////////////////////////////////
[ Width ]*/
.size-201 {
    max-width: 270px;
}

.size-202 {
    width: calc(100% / 3);
}

.size-203 {
    width: 105px;
}

.size-204 {
    width: calc(100% - 105px);
}

.size-205 {
    width: 145px;
}

.size-206 {
    width: calc(100% - 145px);
}

.size-207 {
    width: calc(100% - 78px);
}

.size-208 {
    width: 34.5%;
}

.size-209 {
    width: 65.5%;
}

.size-210 {
    width: 50%;
}

.size-211 {
    width: 60px;
}

.size-212 {
    width: calc(100% - 60px);
}

.size-213 {
    max-width: 245px;
}

.size-214 {
    width: 90px;
}

.size-215 {
    width: calc(100% - 110px);
}

.size-216 {
    width: 55px;
}

.size-217 {
    width: calc(100% - 55px);
}

.size-218 {
    max-width: 286px;
}

/*//////////////////////////////////////////////////////////////////
[ Height ]*/
.size-301 {
    min-height: 30px;
}

.size-302 {
    min-height: 80px;
}

.size-303 {
    height: 390px;
}

/*==================================================================
   BACKGROUND BACKGROUND BACKGROUND BACKGROUND BACKGROUND BACKGROUND
==================================================================*/
.bg-none {
    background-color: transparent;
}
.bg0 {
    background-color: #fff;
}
.bg1 {
    background-color: #708090;
}
.bg2 {
    background-color: #e6e6e6;
}
.bg3 {
    background-color: #222;
}
.bg5 {
    background-color: rgba(0, 0, 0, 0.5);
}
.bg6 {
    background-color: #f2f2f2;
}
.bg7 {
    background-color: #333;
}
.bg8 {
    background-color: #f3f3f3;
}
.bg9 {
    background-color: rgba(255, 255, 255, 0.9);
}

/*---------------------------------------------*/
.bg-overlay1::before {
    content: "";
    position: abso lute;
    z-index: -100;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: #000;
    opacity: 0.5;
}

/*---------------------------------------------*/
.bg-img1 {
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

/*==================================================================
       BORDER BORDER  BORDER  BORDER  BORDER  BORDER  BORDER  BORDER
==================================================================*/
.bor0 {
    border-radius: 50%;
}

.bor1 {
    border-radius: 23px;
}

.bor2 {
    border-radius: 20px;
}

.bor3 {
    border-bottom: 1px solid transparent;
}

.bor4 {
    border: 1px solid #e6e6e6;
    border-radius: 3px;
}

.bor5 {
    border-left: 1px solid #e5e5e5;
    border-right: 1px solid #e5e5e5;
}

.bor6 {
    border-right: 1px solid rgba(255, 255, 255, 0.1);
}

.bor7 {
    border: 1px solid #ccc;
    border-radius: 15px;
}

.bor8 {
    border: 1px solid #e6e6e6;
    border-radius: 2px;
}

.bor9 {
    border-right: 1px solid #e6e6e6;
}

.bor10 {
    border: 1px solid #e6e6e6;
}

.bor11 {
    border-radius: 21px;
}

.bor12 {
    border-bottom: 1px dashed #d9d9d9;
}

.bor13 {
    border: 1px solid #e6e6e6;
    border-radius: 22px;
}

.bor14 {
    border-radius: 25px;
}

.bor15 {
    border-left: 1px solid #e6e6e6;
    border-right: 1px solid #e6e6e6;
    border-bottom: 1px solid #e6e6e6;
}

.bor16 {
    border-left: 3px solid #e6e6e6;
}

.bor17 {
    border: 1px solid #e6e6e6;
    border-radius: 25px;
}

/*---------------------------------------------*/
.bor18 {
    border-top: 1px solid #e6e6e6;
}

.bor18:last-child {
    border-bottom: 1px solid #e6e6e6;
}

/*---------------------------------------------*/
.bor19 {
    border: 1px solid #d9d9d9;
    border-radius: 2px;
}

/*==================================================================
 HOW HOW HOW HOW HOW HOW HOW HOW HOW HOW HOW HOW HOW HOW HOW HOW HOW
==================================================================*/
.plh0::-webkit-input-placeholder {
    color: #999999;
}
.plh0:-moz-placeholder {
    color: #999999;
}
.plh0::-moz-placeholder {
    color: #999999;
}
.plh0:-ms-input-placeholder {
    color: #999999;
}

.plh1::-webkit-input-placeholder {
    color: #b2b2b2;
}
.plh1:-moz-placeholder {
    color: #b2b2b2;
}
.plh1::-moz-placeholder {
    color: #b2b2b2;
}
.plh1:-ms-input-placeholder {
    color: #b2b2b2;
}

.plh2::-webkit-input-placeholder {
    color: #333;
}
.plh2:-moz-placeholder {
    color: #333;
}
.plh2::-moz-placeholder {
    color: #333;
}
.plh2:-ms-input-placeholder {
    color: #333;
}

.plh3::-webkit-input-placeholder {
    color: #555;
}
.plh3:-moz-placeholder {
    color: #555;
}
.plh3::-moz-placeholder {
    color: #555;
}
.plh3:-ms-input-p laceholder {
    color: #555;
}

.plh4::-webkit-input-placeholder {
    color: #888;
}
.plh4:-moz-placeholder {
    color: #888;
}
.plh4::-moz-placeholder {
    color: #888;
}
.plh4:-ms-input-placeholder {
    color: #888;
}

/*---------------------------------------------*/
.js-addedwish-detail {
    color: #708090;
}

/*---------------------------------------------*/
.label1 {
    position: relative;
}

.label1::after {
    content: attr(data-label1);
    font-family: Poppins-Regular;
    font-size: 10px;
    line-height: 15px;
    color: #fff;
    text-transform: uppercase;
    text-align: center;

    display: none;
    position: absolute;
    top: 3px;
    right: -9px;
    height: 15px;
    min-width: 32px;
    border-radius: 7px;
    padding: 0 4px;
    background-color: #f74877;
}

.label1.rs1::after {
    top: calc(50% - 8px);
    right: auto;
    left: 90%;
}

/*---------------------------------------------*/
.how-active1 {
    color: #333;
    border-color: #797979;
}

/*---------------------------------------------*/
.wrap-input1 {
    position: relative;
    border-bottom: 2px solid rgba(204, 204, 204, 0.1);
}

.input1 {
    background-color: transparent;
    width: 100%;
}

.focus-input1 {
    position: absolute;
    width: 0%;
    height: 2px;
    background-color: #6774d5;
    left: 0;
    bottom: -2px;
}

.input1:focus + .focus-input1 {
    width: 100%;
}

/*---------------------------------------------*/
.how-pagination1 {
    font-family: Poppins-Regular;
    font-size: 14px;
    color: #808080;

    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid #e6e6e6;
}

.how-pagination1:hover {
    background-color: #999;
    border-color: #999;
    color: #fff;
}

.active-pagination1 {
    background-color: #999;
    border-color: #999;
    color: #fff;
}

/*---------------------------------------------*/
.how-shadow1 {
    box-shadow: 0 0px 3px 0px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0 0px 3px 0px rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 0 0px 3px 0px rgba(0, 0, 0, 0.2);
    -o-box-shadow: 0 0px 3px 0px rgba(0, 0, 0, 0.2);
    -ms-box-shadow: 0 0px 3px 0px rgba(0, 0, 0, 0.2);
}

/*---------------------------------------------*/
.how-pos1 {
    position: absolute;
    top: 10px;
    right: 10px;
}

/*---------------------------------------------*/
.how-pos2 {
    padding-left: 10.7%;
    padding-right: 11%;
}

@media (max-width: 991px) {
    .how-pos2 {
        padding-left: 8%;
        padding-right: 8%;
    }
}

/*---------------------------------------------*/
.how-pos3-parent {
    position: relative;
}

.how-pos3 {
    position: absolute;
    top: -35px;
    right: 0px;
}

/*---------------------------------------------*/
.how-p os4-parent {
    position: relative;
}

.how-pos4 {
    position: absolute;
    top: calc(50% - 9px);
    left: 28px;
}

/*---------------------------------------------*/
.how-pos5-parent {
    position: relative;
}

.how-pos5 {
    position: absolute;
    top: 15px;
    left: 10px;
}

/*---------------------------------------------*/
.how-itemcart1 {
    width: 60px;
    position: relative;
    margin-right: 20px;
    cursor: pointer;
}

.how-itemcart1 img {
    width: 100%;
}

.how-itemcart1::after {
    content: "\e870";
    font-family: Linearicons-Free;
    font-size: 16px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.5);
    color: #fff;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    -moz-transition: all 0.3s;
    opacity: 0;
}

.how-itemcart1:hover:after {
    opacity: 0;
}

/*---------------------------------------------*/
.how-bor2,
.how-bor1 {
    position: relative;
    z-index: 1;
}

.how-bor2::before,
.how-bor1::before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    width: 100%;
    height: 100%;
    border: 3px solid #ccc;
}

.how-bor1::before {
    bottom: -21px;
    left: -21px;
}

@media (max-width: 767px) {
    .how-bor1::before {
        bottom: -21px;
        right: -21px;
        left: auto;
    }
}

.how-bor2::before {
    bottom: -21px;
    right: -21px;
}

/*==================================================================
      PSEUDO PSEUDO PSEUDO PSEUDO PSEUDO PSEUDO PSEUDO PSEUDO PSEUDO
==================================================================*/

/*//////////////////////////////////////////////////////////////////
[ Focus ]*/
.focus-in0:focus::-webkit-input-placeholder {
    color: transparent;
}
.focus-in0:focus:-moz-placeholder {
    color: transparent;
}
.focus-in0:focus::-moz-placeholder {
    color: transparent;
}
.focus-in0:focus:-ms-input-placeholder {
    color: transparent;
}

/*//////////////////////////////////////////////////////////////////
[ Hover ]*/

.hov-cl0:hover {
    color: #fff;
}
.hov-bg0:hover {
    background-color: #fff;
}
.hov-cl1:hover {
    color: #708090;
}
.hov-bg1:hover {
    background-color: #708090;
}

/*---------------------------------------------*/
.hov-img0 {
    display: block;
    overflow: hidden;
}

.hov-img0 img {
    width: 100%;
    -webkit-transition: transform 0.9s ease;
    -o-transition: transform 0.9s ease;
    -moz-transition: transform 0.9s ease;
    transition: transform 0.9s ease;
}

.hov-img0:hover img {
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
    transform: scale(1.1);
}

/*---------------------------------------------*/
.hov-btn1:hover {
    border-color: #222;
    background-color: #222;
    color: #fff;
}

.hov-btn1:hover i {
    color: #fff;
}

/*---------------------------------------------*/
.hov-btn2:hover {
    border-color: #fff;
    background-color: #fff;
    color: #708090;
}

/*---------------------------------------------*/
.hov-btn3:hover {
    border-color: #708090;
    background-color: #708090;
    color: #fff;
}

.hov-btn3:hover i {
    color: #fff;
}

/*---------------------------------------------*/
.hov-tag1:hover {
    color: #708090;
    border-color: #708090;
}

/*---------------------------------------------*/
.hov-ovelay1 {
    position: relative;
}

.hov-ovelay1::after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(103, 117, 214, 0.8);
    opacity: 0;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    -moz-transition: all 0.3s;
}

.hov-ovelay1:hover:after {
    opacity: 1;
}

/*---------------------------------------------*/
.hov1:hover {
    color: #333;
    border-color: #797979;
}

/*---------------------------------------------*/
.hov2:hover {
    background-color: #f2f2f2;
}

/*---------------------------------------------*/
.hov3 {
    opacity: 0.6;
}

.hov3:hover {
    opacity: 1;
}

/*//////////////////////////////////////////////////////////////////
[ Isotope Grid ]*/
.isotope-grid {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    margin-left: -5px;
    margin-right: -5px;
}

.isotope-grid::after {
    content: "";
    display: table;
    clear: both;
}

.isotope-item {
    display: block;
    min-height: 1px;
    padding-left: 5px;
    padding-right: 5px;
    box-sizing: border-box;
}

.isotope-item.hidden {
    display: none;
}

/*---------------------------------------------*/

/*==================================================================
  RESPONSIVE RESPONSIVE RESPONSIVE RESPONSIVE RESPONSIVE RESPONSIVE
==================================================================*/

/*//////////////////////////////////////////////////////////////////
[ XL ]*/
@media (max-width: 1199px) {
    .m-0-xl {
        margin: 0;
    }
    .m-lr-0-xl {
        margin-left: 0;
        margin-right: 0;
    }
    .m-lr-15-xl {
        margin-left: 15px;
        margin-right: 15px;
    }
    .m-l-0-xl {
        margin-left: 0;
    }
    .m-r-0-xl {
        margin-right: 0;
    }
    .m-l-15-xl {
        margin-left: 15px;
    }
    .m-r-15-xl {
        margin-right: 15px;
    }

    .p-0-xl {
        padding: 0;
    }
    .p-lr-0-xl {
        padding-left: 0;
        padding-right: 0;
    }
    .p-lr-15-xl {
        padding-left: 15px;
        padding-right: 15px;
    }
    .p-l-0-xl {
        padding-left: 0;
    }
    .p-r-0-xl {
        padding-right: 0;
    }
    .p-l-15-xl {
        padding-left: 15px;
    }
    .p-r-15-xl {
        padding-right: 15px;
    }

    .w-full-xl {
        width: 100%;
    }

    /*---------------------------------------------*/
}

/*//////////////////////////////////////////////////////////////////
[ LG ]*/
@media (max-width: 991px) {
    .m-0-lg {
        margin: 0;
    }
    .m-lr-0-lg {
        margin-left: 0;
        margin-right: 0;
    }
    .m-lr-15-lg {
        margin-left: 15px;
        margin-right: 15px;
    }
    .m-l-0-lg {
        margin-left: 0;
    }
    .m-r-0-lg {
        margin-right: 0;
    }
    .m-l-15-lg {
        margin-left: 15px;
    }
    .m-r-15-lg {
        margin-right: 15px;
    }

    .p-0-lg {
        padding: 0;
    }
    .p-lr-0-lg {
        padding-left: 0;
        padding-right: 0;
    }
    .p-lr-15-lg {
        padding-left: 15px;
        padding-right: 15px;
    }
    .p-l-0-lg {
        padding-left: 0;
    }
    .p-r-0-lg {
        padding-right: 0;
    }
    .p-l-15-lg {
        padding-left: 15px;
    }
    .p-r-15-lg {
        padding-right: 15px;
    }

    .w-full-lg {
        width: 100%;
    }

    /*---------------------------------------------*/
    .respon4 {
        width: 50%;
    }

    /*---------------------------------------------*/
    .respon5 {
        padding-top: 50px;
        padding-bottom: 50px;
    }

    /*---------------------------------------------*/
    .respon1 {
        font-size: 60px;
    }

    /*---------------------------------------------*/
    .respon2 {
        font-size: 28px;
    }
    body,
    html {
        background-color: #f8f9fa;
        font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
        overflow-x: hidden;
    }
}

/*//////////////////////////////////////////////////////////////////
[ MD ]*/
@media (max-width: 767px) {
    .m-0-md {
        margin: 0;
    }
    .m-lr-0-md {
        margin-left: 0;
        margin-right: 0;
    }
    .m-lr-15-md {
        margin-left: 15px;
        margin-right: 15px;
    }
    .m-l-0-md {
        margin-left: 0;
    }
    .m-r-0-md {
        margin-right: 0;
    }
    .m-l-15-md {
        margin-left: 15px;
    }
    .m-r-15-md {
        margin-right: 15px;
    }

    .p-0-md {
        padding: 0;
    }
    .p-lr-0-md {
        padding-left: 0;
        padding-right: 0;
    }
    .p-lr-15-md {
        padding-left: 15px;
        padding-right: 15px;
    }
    .p-l-0-md {
        padding-left: 0;
    }
    .p-r-0-md {
        padding-right: 0;
    }
    .p-l-15-md {
        padding-left: 15px;
    }
    .p-r-15-md {
        padding-right: 15px;
    }

    .w-full-md {
        width: 100%;
    }

    /*---------------------------------------------*/
    .respon4 {
        width: 100%;
    }

    /*---------------------------------------------*/
    .respon1 {
        font-size: 50px;
    }

    /*---------------------------------------------*/
    .respon2 {
        font-size: 24px;
    }
}

/*//////////////////////////////////////////////////////////////////
[ SM ]*/
@media (max-width: 575px) {
    .m-0-sm {
        margin: 0;
    }
    .m-lr-0-sm {
        margin-left: 0;
        margin-right: 0;
    }
    .m-lr-15-sm {
        margin-left: 15px;
        margin-right: 15px;
    }
    .m-l-0-sm {
        margin-left: 0;
    }
    .m-r-0-sm {
        margin-right: 0;
    }
    .m-l-15-sm {
        margin-left: 15px;
    }
    .m-r-15-sm {
        margin-right: 15px;
    }

    .p-0-sm {
        padding: 0;
    }
    .p-lr-0-sm {
        padding-left: 0;
        padding-right: 0;
    }
    .p-lr-15-sm {
        padding-left: 15px;
        padding-right: 15px;
    }
    .p-l-0-sm {
        padding-left: 0;
    }
    .p-r-0-sm {
        padding-right: 0;
    }
    .p-l-15-sm {
        padding-left: 15px;
    }
    .p-r-15-sm {
        padding-right: 15px;
    }

    .w-full-sm {
        width: 100%;
    }

    /*---------------------------------------------*/
    .respon1 {
        font-size: 40px;
    }

    /*---------------------------------------------*/
    .respon2 {
        font-size: 20px;
    }

    /*---------------------------------------------*/
    .flex-col-l-m {
        padding-top: 40px !important;
        padding-bottom: 20px !important;
    }

    /*---------------------------------------------*/
    .respon6 {
        width: 65px;
    }

    .respon6-next {
        width: calc(100% - 65px);
    }

    /*---------------------------------------------*/
    .respon7 {
        padding-left: 60px;
    }
}

/*//////////////////////////////////////////////////////////////////
[ SSM ]*/
@media (max-width: 480px) {
    .m-0-ssm {
        margin: 0;
    }
    .m-lr-0-ssm {
        margin-left: 0;
        margin-right: 0;
    }
    .m-lr-15-ssm {
        margin-left: 15px;
        margin-right: 15px;
    }
    .m-l-0-ssm {
        margin-left: 0;
    }
    .m-r-0-ssm {
        margin-right: 0;
    }
    .m-l-15-ssm {
        margin-left: 15px;
    }
    .m-r-15-ssm {
        margin-right: 15px;
    }

    .p-0-ssm {
        padding: 0;
    }
    .p-lr-0-ssm {
        padding-left: 0;
        padding-right: 0;
    }
    .p-lr-15-ssm {
        padding-left: 15px;
        padding-right: 15px;
    }
    .p-l-0-ssm {
        padding-left: 0;
    }
    .p-r-0-ssm {
        padding-right: 0;
    }
    .p-l-15-ssm {
        padding-left: 15px;
    }
    .p-r-15-ssm {
        padding-right: 15px;
    }

    .w-full-ssm {
        width: 100%;
    }

    /*---------------------------------------------*/
    .respon3 {
        padding: 20px;
    }
    /* custome css */
}
body {
    /* background-color: #f8f9fa; */
    font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
    overflow-x: hidden;
}

.container {
    max-width: 100%;
    padding-left: 15px;
    padding-right: 15px;
}

.trending-section {
    padding: 20px 10px;
    overflow-x: hidden;
}

.row {
    margin-left: -10px;
    margin-right: -10px;
}

.row > [class*="col-"] {
    padding-left: 10px;
    padding-right: 10px;
}

.section-title {
    text-align: center;
    margin-bottom: 10px;
    font-size: 2.5rem;
    font-weight: 300;
    color: #333;
}

.section-subtitle {
    text-align: center;
    margin-bottom: 40px;
    font-size: 1rem;
    color: #888;
    font-weight: 300;
}

.title-divider {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    margin-bottom: 10px;
}

.title-divider hr {
    width: 200px;
    height: 1px;
    background-color: #333;
    border: none;
    margin: 0;
}

.product-card {
    background: transparent;
    border: none;
    border-radius: 0;
    overflow: hidden;
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
    margin-bottom: 30px;
    box-shadow: none;
}

.product-card:hover {
    transform: translateY(-5px);
    box-shadow: none;
}

.product-image {
    position: relative;
    overflow: hidden;
    background-color: #e5d9cd;
    aspect-ratio: 3/4;
}

.product-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: opacity 0.4s ease;
    position: absolute;
    top: 0;
    left: 0;
}

.product-image .img-primary {
    opacity: 1;
    z-index: 2;
}

.product-image .img-secondary {
    opacity: 0;
    z-index: 1;
}

.product-card:hover .product-image .img-primary {
    opacity: 0;
}

.product-card:hover .product-image .img-secondary {
    opacity: 1;
}

.product-info {
    padding: 10px;
    text-align: center;
    background-color: transparent;
}

.product-name {
    font-size: 0.95rem;
    font-weight: 600;
    color: #333;
    margin-bottom: 0px;
    margin-top: 2px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    line-height: 1.4;
}

.product-price {
    font-size: 1.1rem;
    font-weight: 700;
    color: #000;
}

/* badges / price styles for related products */
.product-badge {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 5;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
}

.badge-sale {
    background-color: #ca6eac;
    color: #fff;
}

.price-old {
    font-size: 0.9rem;
    color: #ff0000 !important;
    text-decoration: line-through;
    margin-right: 6px;
}

.price-new {
    color: #e63946;
}

/* Simple hover-zoom for product detail and quick view images */
/* !important */
/* .wrap-pic-w { overflow: hidden; }
    .wrap-pic-w img.zoomable {
      transition: transform 0.25s ease;
      transform-origin: center center;
      cursor: zoom-in;
    }
    .wrap-pic-w:hover img.zoomable {
      transform: scale(1.8);
    } */

@media (max-width: 767px) {
    .section-title {
        font-size: 2rem;
    }

    .title-divider hr {
        width: 80px;
    }

    .product-name {
        font-size: 0.85rem;
    }

    .product-price {
        font-size: 0.8rem;
        font-weight: 700;
    }
}

/* vedio card css */
.winter-fabrics-section {
    font-family: "Arial", sans-serif;
    background-color: #fff;
    padding: 50px 0;
    overflow: hidden;
}

.wf-section-title {
    text-align: center;
    margin-bottom: 50px;
}

.wf-section-title h2 {
    font-size: 2.5rem;
    font-weight: 600;
    color: #333;
    margin-bottom: 10px;
    letter-spacing: 1px;
}

.wf-section-title p {
    font-size: 1.2rem;
    color: #666;
}

.wf-cards-wrapper {
    position: relative;
    width: 100%;
}

/* Desktop Grid */
.wf-cards-grid {
    /* display: grid; */
    /* grid-template-columns: repeat(3, 1fr); */
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    padding: 0 15px;
}

/* Mobile Slider */
.wf-cards-slider {
    display: none;
    position: relative;
    width: 100%;
    overflow: visible;
}

.wf-slider-track {
    display: flex;
    gap: 10px;
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    padding: 0 calc(50% - 180px);
}

.wf-video-card {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
    transition:
        transform 0.4s ease,
        box-shadow 0.4s ease;
    height: 600px;
    flex-shrink: 0;
    width: 380px;
}

.wf-video-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.25);
}

.wf-video-card video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.wf-video-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        to bottom,
        rgba(0, 0, 0, 0.2),
        rgba(0, 0, 0, 0.7)
    );
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: white;
    text-align: center;
    padding: 40px 30px;
    z-index: 2;
}

.wf-video-overlay h3 {
    font-size: 2.2rem;
    font-weight: 700;
    margin-bottom: 20px;
    text-transform: uppercase;
    letter-spacing: 3px;
    line-height: 1.2;
}

.wf-video-overlay p {
    font-size: 1.3rem;
    margin-bottom: 30px;
    font-weight: 300;
}

.wf-shop-btn {
    background-color: #2c2c2c;
    color: white;
    padding: 14px 45px;
    border-radius: 50px;
    text-decoration: none;
    font-size: 1.1rem;
    font-weight: 600;
    transition: all 0.3s ease;
    border: 2px solid transparent;
    display: inline-block;
}

.wf-shop-btn:hover {
    background-color: white;
    color: #2c2c2c;
    border-color: white;
    transform: scale(1.05);
}

/* Slider Dots */
.wf-slider-dots {
    display: none;
    justify-content: center;
    align-items: center;
    gap: 12px;
    margin-top: 40px;
}

.wf-dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background-color: #d0d0d0;
    cursor: pointer;
    transition: all 0.3s ease;
    border: none;
    padding: 0;
}

.wf-dot.wf-active {
    background-color: #2c2c2c;
    transform: scale(1.3);
}

/* Mobile Responsive */
@media (max-width: 1199px) {
    .wf-cards-grid {
        display: none;
    }

    .wf-cards-slider {
        display: block;
    }

    .wf-slider-dots {
        display: flex;
    }

    .wf-slider-track {
        padding: 0 calc(50% - 160px);
    }

    .wf-video-card {
        width: 350px;
        height: 570px;
        opacity: 0.6;
        transform: scale(0.9);
        transition: all 0.5s ease;
    }

    .wf-video-card.wf-center-card {
        opacity: 1;
        transform: scale(1);
    }

    .wf-video-overlay h3 {
        font-size: 1.9rem;
    }

    .wf-video-overlay p {
        font-size: 1.2rem;
    }

    .wf-shop-btn {
        padding: 12px 35px;
        font-size: 1rem;
    }
}

@media (max-width: 991px) {
    .wf-cards-grid {
        display: none;
    }

    .wf-cards-slider {
        display: block;
    }

    .wf-slider-dots {
        display: flex;
    }

    .wf-slider-track {
        padding: 0 calc(50% - 160px);
    }

    .wf-video-card {
        width: 320px;
        height: 550px;
        opacity: 0.6;
        transform: scale(0.9);
        transition: all 0.5s ease;
    }

    .wf-video-card.wf-center-card {
        opacity: 1;
        transform: scale(1);
    }

    .wf-video-overlay h3 {
        font-size: 1.9rem;
    }

    .wf-video-overlay p {
        font-size: 1.2rem;
    }

    .wf-shop-btn {
        padding: 12px 35px;
        font-size: 1rem;
    }
}

@media (max-width: 576px) {
    .winter-fabrics-section {
        padding: 10px 0;
    }

    .wf-section-title h2 {
        font-size: 1.8rem;
    }

    .wf-section-title p {
        font-size: 1rem;
    }

    .wf-slider-track {
        padding: 0 calc(50% - 140px);
    }

    .wf-video-card {
        width: 280px;
        height: 480px;
    }

    .wf-video-overlay h3 {
        font-size: 1.5rem;
        letter-spacing: 2px;
    }

    .wf-video-overlay p {
        font-size: 1rem;
    }

    .wf-shop-btn {
        padding: 10px 30px;
        font-size: 0.9rem;
    }
}
/* circle-slider */
.rtw-section {
    padding: 30px 0;
    background-color: #fff;
    overflow: hidden;
}

.rtw-section-title {
    font-size: 2.5rem;
    font-weight: 300;
    letter-spacing: 2px;
    margin-bottom: 50px;
    color: #333;
}

.rtw-categories-wrapper {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
    scroll-behavior: smooth;
    cursor: grab;
}

.rtw-categories-wrapper:active {
    cursor: grabbing;
}

.rtw-categories-wrapper::-webkit-scrollbar {
    display: none;
}

.rtw-categories-container {
    display: flex;
    gap: 30px;
    padding: 10px 0;
    width: max-content;
}

.rtw-category-item {
    text-align: center;
    flex-shrink: 0;
    cursor: pointer;
    transition: transform 0.3s ease;
}

.rtw-category-item:hover {
    transform: translateY(-5px);
}

.rtw-category-circle {
    width: 160px;
    height: 160px;
    border-radius: 50%;
    overflow: hidden;
    margin: 0 auto 20px;
    background-color: #f5f5f5;
    display: flex;
    align-items: center;
    justify-content: center;
}

.rtw-category-circle img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.rtw-category-name {
    font-size: 1.1rem;
    font-weight: 500;
    letter-spacing: 1px;
    color: #333;
    text-transform: uppercase;
}
@media (min-width: 1250px) {
    .rtw-section-title {
        font-size: 4.5rem;
    }
}

@media (max-width: 768px) {
    .rtw-category-circle {
        width: 140px;
        height: 140px;
    }

    .rtw-section-title {
        font-size: 2rem;
    }

    .rtw-categories-container {
        gap: 20px;
    }
}

@media (max-width: 576px) {
    .rtw-category-circle {
        width: 120px;
        height: 120px;
    }

    .rtw-category-name {
        font-size: 0.9rem;
    }
}

/* Mobile Responsive for Collection Banner */

/* Collections Horizontal Slider */
.collections-slider-wrapper {
    position: relative;
    width: 100%;
    overflow: hidden;
    margin-bottom: 40px;
    padding: 0 40px;
    box-sizing: border-box;
}

.collections-slider-track {
    display: flex;
    gap: 20px;
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    padding: 0;
    margin: 0;
}

.collections-slider-item {
    flex-shrink: 0;
    width: calc(25% - 15px);
    min-width: 250px;
}

.collections-slider-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 45px;
    height: 45px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.9);
    border: 1px solid #ddd;
    color: #333;
    font-size: 18px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    z-index: 10;
}

.collections-slider-nav:hover {
    background-color: #333;
    color: #fff;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

.collections-slider-prev {
    left: 0;
}

.collections-slider-next {
    right: 0;
}

/* Navigation Dots */
.collections-slider-dots {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    margin-top: 10px;
}

.collections-dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background-color: #d0d0d0;
    cursor: pointer;
    transition: all 0.3s ease;
    border: none;
    padding: 0;
}

.collections-dot-active {
    background-color: #333;
    transform: scale(1.3);
}

.collections-dot:hover {
    background-color: #999;
}

/* Responsive Collections Slider */
@media (max-width: 1199px) {
    .collections-slider-item {
        width: calc(33.33% - 13px);
    }
}

@media (max-width: 991px) {
    .collections-slider-wrapper {
        padding: 0 30px;
    }

    .collections-slider-track {
        gap: 15px;
    }

    .collections-slider-item {
        width: calc(50% - 7px);
        min-width: 200px;
    }

    .collections-slider-nav {
        width: 40px;
        height: 40px;
        font-size: 16px;
    }

    .block1-gradient-card {
        min-height: 260px;
    }
}

@media (max-width: 767px) {
    .collections-slider-wrapper {
        margin-bottom: 20px;
        padding: 0 25px;
    }

    .collections-slider-track {
        gap: 10px;
    }

    .collections-slider-item {
        width: calc(50% - 5px);
        min-width: 150px;
    }

    .collections-slider-nav {
        width: 35px;
        height: 35px;
        font-size: 14px;
    }

    .block1-gradient-card {
        min-height: 220px;
    }

    .collections-slider-dots {
        gap: 8px;
        margin-top: 10px;
    }

    .collections-dot {
        width: 10px;
        height: 10px;
    }
}

@media (max-width: 575px) {
    .collections-slider-wrapper {
        padding: 0 20px;
    }

    .collections-slider-track {
        gap: 8px;
    }

    .collections-slider-item {
        width: calc(43% - 0px);
        min-width: 43%;
    }

    .collections-slider-nav {
        width: 32px;
        height: 32px;
        font-size: 12px;
    }

    .block1-gradient-card {
        min-height: 180px;
    }

    .sec-banner h2.ltext-103 {
        font-size: 1.3rem;
        margin-bottom: 20px;
    }

    .collections-slider-dots {
        margin-top: 15px;
    }
}

@media (max-width: 480px) {
    .collections-slider-wrapper {
        margin-bottom: 20px;
        padding: 0 15px;
    }

    /* .collections-slider-track {
            } */

    .collections-slider-nav {
        width: 30px;
        height: 30px;
        font-size: 11px;
    }

    .block1-gradient-card {
        min-height: 150px;
    }

    .sec-banner {
        padding-top: 40px !important;
        padding-bottom: 15px !important;
    }

    .collections-dot {
        width: 8px;
        height: 8px;
    }
}
/* new slider css */
.hero-slider-wrapper {
    position: relative;
    width: 100%;
    overflow: hidden;
    background: #000;
}

.hero-slider-container {
    position: relative;
    width: 100%;
    aspect-ratio: 1920/850;
    /* Desktop: 2000 x 850 px */
}

.hero-slide-item {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 1s ease-in-out;
    z-index: 1;
}

.hero-slide-item.hero-active-slide {
    opacity: 1;
    z-index: 2;
}

.hero-slide-img-desktop {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero-slide-img-mobile {
    display: none;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero-slide-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 3;
}

.hero-slide-content {
    position: absolute;
    top: 50%;
    left: 8%;
    transform: translateY(-50%);
    z-index: 4;
    color: #fff;
    max-width: 600px;
}

.hero-slide-subtitle {
    font-size: 1rem;
    font-weight: 300;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 15px;
    opacity: 0;
    animation: hero-fadeInUp 0.8s ease forwards 0.3s;
}

.hero-slide-title {
    font-size: 3.5rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 20px;
    opacity: 0;
    animation: hero-fadeInUp 0.8s ease forwards 0.5s;
}

.hero-slide-description {
    font-size: 1.1rem;
    font-weight: 300;
    line-height: 1.6;
    margin-bottom: 30px;
    opacity: 0;
    animation: hero-fadeInUp 0.8s ease forwards 0.7s;
}

.hero-slide-btn {
    display: inline-block;
    padding: 0;
    background: transparent;
    color: #fff;
    text-decoration: none;
    font-weight: 400;
    font-size: 0.95rem;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
    border: none;
    border-bottom: 1px solid #fff;
    opacity: 0;
    animation: hero-fadeInUp 0.8s ease forwards 0.9s;
    padding-bottom: 3px;
}

.hero-slide-btn:hover {
    color: #fff;
    border-bottom-width: 2px;
    padding-bottom: 2px;
}

@keyframes hero-fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Pagination Dots */
.hero-pagination-dots {
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    display: flex;
    gap: 12px;
}

.hero-pagination-dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.4);
    cursor: pointer;
    transition: all 0.3s ease;
    border: 2px solid transparent;
}

.hero-pagination-dot:hover {
    background: rgba(255, 255, 255, 0.7);
    transform: scale(1.2);
}

.hero-pagination-dot.hero-dot-active {
    background: #fff;
    width: 40px;
    border-radius: 6px;
}
@media (max-width: 1441px) {
    .hero-slider-wrapper {
        margin-top: 0px;
    }
}
/* Mobile & Tablet Responsive */
@media (max-width: 1199px) {

    /* .hero-slider-container {
        height: 530px;
    } */
}

@media (max-width: 1025px) {
    /* .hero-slider-container {
        height: 450px;
    } */

}
@media (max-width: 991px) {

    .hero-slide-img-desktop {
        display: none;
    }

    .hero-slide-img-mobile {
        display: block;
    }

    .hero-slider-container {
        aspect-ratio: 390/520;
        /* Mobile: 390 x 520 px */
    }

    .hero-slide-content {
        left: 5%;
        right: 5%;
        max-width: 90%;
        text-align: center;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .hero-slide-title {
        font-size: 2.5rem;
    }

    .hero-slide-description {
        font-size: 1rem;
    }
}

@media (max-width: 767px) {
    .hero-slider-container {
        aspect-ratio: 390/520;
        /* Mobile: 390 x 520 px */
    }

    .hero-slide-title {
        font-size: 2rem;
    }
}

@media (max-width: 575px) {
    .hero-slider-container {
        aspect-ratio: 390/520;
        /* Mobile: 390 x 520 px */
    }

    .hero-slide-title {
        font-size: 1.8rem;
    }

    .hero-slide-subtitle {
        font-size: 0.85rem;
    }

    .hero-slide-description {
        font-size: 0.9rem;
    }

    .hero-slide-btn {
        padding-bottom: 2px;
        font-size: 0.85rem;
    }
}

@media (max-width: 480px) {
    .hero-slider-container {
        aspect-ratio: 390/520;
        /* Mobile: 390 x 520 px */
    }

    .hero-slide-title {
        font-size: 1.5rem;
    }
}

/* Reset animations for active slide */
.hero-slide-item.hero-active-slide .hero-slide-subtitle,
.hero-slide-item.hero-active-slide .hero-slide-title,
.hero-slide-item.hero-active-slide .hero-slide-description,
.hero-slide-item.hero-active-slide .hero-slide-btn {
    animation: hero-fadeInUp 0.8s ease forwards;
}

.hero-slide-item:not(.hero-active-slide) .hero-slide-subtitle,
.hero-slide-item:not(.hero-active-slide) .hero-slide-title,
.hero-slide-item:not(.hero-active-slide) .hero-slide-description,
.hero-slide-item:not(.hero-active-slide) .hero-slide-btn {
    opacity: 0;
}
/* Related Products Slider Styles */
.related-products-slider-wrapper {
    position: relative;
}

.related-products-swiper {
    width: 100%;
    padding-bottom: 20px;
}

.related-products-swiper .swiper-slide {
    height: auto;
    padding: 0 10px;
}

.related-products-slider-wrapper:hover .related-products-nav {
    opacity: 1;
}

.related-products-nav {
    position: absolute;
    top: 25%;
    left: 0;
    right: 0;
    transform: translateY(-50%);
    display: flex;
    justify-content: space-between;
    align-items: center;
    pointer-events: none;
    z-index: 10;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.related-products-nav button {
    background: rgba(231, 230, 230, 0.247);
    border: 1px solid #ddd;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    pointer-events: all;
    font-size: 30px;
    color: #eeebeb;
}

.related-products-nav button:hover {
    background: #f0f0f0;
    color: #999;
    border-color: #999;
}

@media (max-width: 768px) {
    .related-products-nav button {
        width: 36px;
        height: 36px;
        font-size: 16px;
    }
}

@media (max-width: 480px) {
    .related-products-nav button {
        width: 32px;
        height: 32px;
        font-size: 14px;
    }
}

/* Add to Cart Button Shake Animation */
@keyframes horizontalShake {
    0%,
    100% {
        transform: translateX(0);
    }
    10% {
        transform: translateX(-8px);
    }
    20% {
        transform: translateX(8px);
    }
    30% {
        transform: translateX(-8px);
    }
    40% {
        transform: translateX(8px);
    }
    50% {
        transform: translateX(-8px);
    }
    60% {
        transform: translateX(8px);
    }
    70% {
        transform: translateX(-8px);
    }
    80% {
        transform: translateX(8px);
    }
    90% {
        transform: translateX(-8px);
    }
}

.js-addcart-detail.shake {
    animation: horizontalShake 0.6s ease-in-out;
}

/* card-badge css */
.pre-order-badge {
    position: absolute;
    top: 15px;
    left: 10px;
    background-color: #000;
    color: white;
    padding: 8px 20px;
    border-radius: 25px;
    font-size: 0.85rem;
    font-weight: 500;
    z-index: 10;
}
@media (max-width: 768px) {
    .pre-order-badge {
        padding: 6px 10px;
        font-size: 0.75rem;
        top: 10px;
        left: 8px;
    }
}

/* checkout page css */
.checkout-section {
    background: #fff;
    border-radius: 8px;
    padding: 30px;
    margin-bottom: 30px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
    transition: box-shadow 0.3s ease;
}

.checkout-section:hover {
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}

.section-title {
    font-size: 24px;
    font-weight: 600;
    color: #333;
}

.form-group-checkout {
    margin-bottom: 20px;
}

.form-label-checkout {
    display: block;
    font-size: 14px;
    font-weight: 500;
    color: #333;
    margin-bottom: 8px;
}

.form-input-checkout {
    width: 100%;
    padding: 12px 18px;
    border: 1px solid #e6e6e6;
    border-radius: 4px;
    font-size: 14px;
    transition: all 0.3s ease;
    background: #fff;
}

.form-input-checkout:focus {
    outline: none;
    border-color: #717fe0;
    box-shadow: 0 0 0 3px rgba(113, 127, 224, 0.1);
}

/* Fix Select2 dropdown width */
.select2-container {
    width: 100% !important;
    max-width: 100%;
    box-sizing: border-box;
}

.form-group-checkout .select2-container {
    width: 100% !important;
}

.select2-container--default .select2-selection--single {
    height: 46px;
    border: 1px solid #e6e6e6;
    border-radius: 4px;
    box-sizing: border-box;
}

.select2-container--default
    .select2-selection--single
    .select2-selection__rendered {
    line-height: 46px;
    padding-left: 18px;
    padding-right: 20px;
}

.select2-container--default
    .select2-selection--single
    .select2-selection__arrow {
    height: 44px;
    right: 10px;
}

.select2-dropdown {
    border: 1px solid #e6e6e6;
    border-radius: 4px;
}

.select2-container--default .select2-results__option {
    padding: 10px 18px;
}

.order-summary-card {
    background: #f5f5f5;
    /* soft gray shade */
    border-radius: 12px;
    padding: 30px;
    color: #333;
    position: sticky;
    top: 20px;
    border: 1px solid #e6e6e6;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}

.order-summary-title {
    font-size: 22px;
    font-weight: 600;
    margin-bottom: 25px;
    color: #333;
    padding-bottom: 15px;
    border-bottom: 2px solid #e6e6e6;
    position: relative;
}

.order-summary-title::after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 60px;
    height: 2px;
    background: #717fe0;
}

.order-item {
    display: flex;
    align-items: center;
    padding: 15px 0;
    border-bottom: 1px solid #e6e6e6;
}

.order-item:last-child {
    border-bottom: none;
}

.order-item-img {
    width: 60px;
    height: 60px;
    border-radius: 8px;
    object-fit: cover;
    margin-right: 15px;
    border: 2px solid #e6e6e6;
}

.order-item-details {
    flex: 1;
}

.order-item-name {
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 5px;
    color: #333;
}

.order-item-info {
    font-size: 12px;
    color: #666;
}

.order-item-price {
    font-size: 16px;
    font-weight: 600;
    color: #333;
}

.order-totals {
    margin-top: 25px;
    padding-top: 25px;
    border-top: 2px solid #e6e6e6;
}

.total-row {
    display: flex;
    justify-content: space-between;
    margin-bottom: 12px;
    font-size: 14px;
    color: #666;
}

.total-row.final {
    font-size: 20px;
    font-weight: 700;
    margin-top: 15px;
    padding-top: 15px;
    border-top: 2px solid #e6e6e6;
    color: #333;
}

.payment-methods-wrapper {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 15px;
}

.payment-method {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 25px;
    border: 2px solid #e6e6e6;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    background: #fff;
    min-height: 140px;
}

.payment-method:hover {
    border-color: #717fe0;
    background: linear-gradient(135deg, #f8f9ff 0%, #fff 100%);
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(113, 127, 224, 0.15);
}

.payment-method input[type="radio"] {
    display: none;
}

.payment-method input[type="radio"]:checked + .payment-label {
    color: #717fe0;
}

.payment-method input[type="radio"]:checked ~ .radio-checkmark {
    display: flex;
}

.payment-method:has(input[type="radio"]:checked) {
    border-color: #717fe0;
    background: linear-gradient(135deg, #f8f9ff 0%, #fff 100%);
    box-shadow: 0 8px 20px rgba(113, 127, 224, 0.15);
}

.payment-label {
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: 14px;
    color: #333;
    font-weight: 500;
    text-align: center;
    cursor: pointer;
    flex: 1;
    width: 100%;
}

.payment-icon {
    font-size: 32px;
    margin-bottom: 12px;
    color: #717fe0;
    transition: all 0.3s ease;
}

.payment-method:hover .payment-icon {
    color: #5568d3;
    transform: scale(1.1);
}

.radio-checkmark {
    display: none;
    position: absolute;
    top: 10px;
    right: 10px;
    width: 24px;
    height: 24px;
    background: #717fe0;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: bold;
    font-size: 14px;
}

.checkout-btn {
    width: 100%;
    padding: 18px;
    background: #000;
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    margin-top: 25px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.checkout-btn:hover {
    background: #222;
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.4);
}

.checkout-btn:active {
    transform: translateY(0);
}

.payment-screenshot-section {
    display: none;
    padding: 25px;
    background: linear-gradient(135deg, #f8f9ff 0%, #fff 100%);
    border: 2px solid #717fe0;
    border-radius: 12px;
    margin-top: 25px;
    animation: slideDown 0.3s ease;
    box-shadow: 0 4px 15px rgba(113, 127, 224, 0.1);
}

.payment-screenshot-section.active {
    display: block;
}

.payment-screenshot-section h4 {
    color: #717fe0;
    font-size: 16px;
    font-weight: 600;
}

@keyframes slideDown {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.screenshot-input-wrapper {
    margin-top: 15px;
}

.file-input-custom {
    position: relative;
    display: inline-block;
    cursor: pointer;
    width: 100%;
}

.file-input-custom input[type="file"] {
    position: absolute;
    left: -9999px;
}

.file-input-custom-label {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 50px 40px;
    border: 2px dashed #717fe0;
    border-radius: 10px;
    background: #fafbff;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    text-align: center;
    flex-direction: column;
    position: relative;
}

.file-input-custom-label:hover,
.file-input-custom-label.drag-over {
    border-color: #5568d3;
    background: #f0f2ff;
    transform: scale(1.01);
    box-shadow: 0 6px 20px rgba(113, 127, 224, 0.2);
}

.file-input-custom-label i {
    font-size: 32px;
    color: #717fe0;
    margin-bottom: 10px;
}

.file-input-custom-label span {
    font-size: 14px;
    color: #333;
    font-weight: 500;
}

.file-input-custom-label .small-text {
    font-size: 12px;
    color: #666;
    margin-top: 5px;
}

.file-preview {
    margin-top: 15px;
    display: none;
}

.file-preview.active {
    display: block;
}

.file-preview-img {
    max-width: 200px;
    max-height: 200px;
    border-radius: 8px;
    object-fit: contain;
    border: 1px solid #e6e6e6;
    padding: 5px;
}

.file-preview-name {
    margin-top: 10px;
    font-size: 12px;
    color: #666;
}

.remove-file-btn {
    margin-top: 10px;
    padding: 8px 16px;
    background: #e74c3c;
    color: white;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 12px;
    transition: all 0.3s ease;
}

.remove-file-btn:hover {
    background: #c0392b;
}

.checkbox-wrapper {
    display: flex;
    align-items: flex-start;
    margin-bottom: 20px;
}

.checkbox-wrapper input[type="checkbox"] {
    margin-right: 10px;
    margin-top: 4px;
    width: 18px;
    height: 18px;
    cursor: pointer;
}

.checkbox-wrapper label {
    font-size: 16px;
    font-weight: 500;
    color: #333;
    cursor: pointer;
    line-height: 1.6;
}

.order-summary-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.order-number {
    font-size: 12px;
    color: #666;
    font-weight: normal;
}

@media (max-width: 768px) {
    .checkout-section {
        padding: 20px;
    }

    .order-summary-card {
        position: relative;
        top: 0;
        margin-top: 30px;
    }
}

/* ==================== COUPON SECTION ====================*/
.coupon-section {
    padding: 20px;
    background: linear-gradient(135deg, #f9e8f5 0%, #fff 100%);
    border: 2px dashed #ca6eac;
    border-radius: 10px;
    margin-bottom: 25px;
}

.coupon-header {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}

.coupon-icon {
    width: 40px;
    height: 40px;
    background: linear-gradient(135deg, #ca6eac 0%, #b85a98 100%);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 20px;
    margin-right: 12px;
    box-shadow: 0 4px 12px rgba(202, 110, 172, 0.3);
}

.coupon-title {
    font-size: 15px;
    font-weight: 600;
    color: #333;
    margin: 0;
}

.coupon-subtitle {
    font-size: 12px;
    color: #888;
    margin: 2px 0 0 0;
}

.coupon-input-wrapper {
    display: flex;
    gap: 8px;
    margin-bottom: 12px;
}

.coupon-input {
    flex: 1;
    padding: 12px 15px;
    border: 1px solid #ddd;
    border-radius: 6px;
    font-size: 13px;
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.coupon-input:focus {
    outline: none;
    border-color: #ca6eac;
    box-shadow: 0 0 0 3px rgba(202, 110, 172, 0.1);
    background: #faf8fb;
}

.coupon-apply-btn {
    padding: 12px 24px;
    background: linear-gradient(135deg, #ca6eac 0%, #b85a98 100%);
    color: white;
    border: none;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    white-space: nowrap;
}

.coupon-apply-btn:hover {
    background: linear-gradient(135deg, #b85a98 0%, #a84886 100%);
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(202, 110, 172, 0.3);
}

.coupon-apply-btn:active {
    transform: translateY(0);
}

.coupon-apply-btn:disabled {
    background: #ccc;
    cursor: not-allowed;
    transform: none;
}

.coupon-message {
    font-size: 12px;
    padding: 10px 12px;
    border-radius: 6px;
    display: none;
    align-items: center;
    gap: 8px;
}

.coupon-message.success {
    display: flex;
    background: #e8f5e9;
    border: 1px solid #81c784;
    color: #2e7d32;
}

.coupon-message.error {
    display: flex;
    background: #ffebee;
    border: 1px solid #ef5350;
    color: #c62828;
}

.coupon-message i {
    font-size: 14px;
}

.coupon-discount-badge {
    display: inline-block;
    background: linear-gradient(135deg, #ca6eac 0%, #b85a98 100%);
    color: white;
    padding: 6px 12px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    margin-top: 8px;
}

.coupon-discount-info {
    display: none;
    font-size: 12px;
    color: #2e7d32;
    font-weight: 600;
    margin-top: 8px;
    padding: 8px 12px;
    background: #e8f5e9;
    border-left: 3px solid #81c784;
    border-radius: 4px;
}

.coupon-discount-info.active {
    display: block;
}

.coupon-code-display {
    font-size: 13px;
    color: #333;
    font-weight: 600;
    margin-top: 8px;
    padding: 8px 12px;
    background: white;
    border: 1px dashed #ca6eac;
    border-radius: 6px;
    display: none;
    justify-content: space-between;
    align-items: center;
}

.coupon-code-display.active {
    display: flex;
}

.remove-coupon-btn {
    background: none;
    border: none;
    color: #ef5350;
    cursor: pointer;
    font-size: 14px;
    padding: 0;
    transition: all 0.2s ease;
}

.remove-coupon-btn:hover {
    color: #c62828;
    transform: scale(1.2);
}

/* Sample coupons list */
.coupon-suggestions {
    font-size: 11px;
    color: #888;
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid rgba(202, 110, 172, 0.2);
}

.coupon-suggestions-label {
    display: block;
    margin-bottom: 6px;
    font-weight: 600;
}

.coupon-code-chip {
    display: inline-block;
    background: white;
    border: 1px solid #ddd;
    padding: 4px 10px;
    border-radius: 4px;
    margin-right: 6px;
    margin-bottom: 6px;
    cursor: pointer;
    transition: all 0.2s ease;
    font-family: monospace;
}

.coupon-code-chip:hover {
    border-color: #ca6eac;
    background: #faf8fb;
    transform: translateY(-2px);
}

@media (max-width: 768px) {
    .coupon-input-wrapper {
        flex-direction: column;
    }

    .coupon-apply-btn {
        width: 100%;
    }
}

/* new card-detals css */
/* ==================== PRODUCT SIZE & ATTRIBUTE SELECTOR ====================*/
.product-attribute-section {
    margin-top: 30px;
}

.attribute-group {
    margin-bottom: 25px;
}

.attribute-label {
    font-size: 15px;
    font-weight: 600;
    color: #333;
    margin-bottom: 12px;
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.size-option {
    width: 50px;
    height: 50px;
    border: 2px solid #ddd;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-weight: 600;
    font-size: 14px;
    color: #333;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    background: white;
}

.size-option:hover {
    border-color: #717fe0;
    background: #f8f9ff;
    transform: translateY(-2px);
}

.size-option.active {
    border-color: #717fe0;
    background: #333;
    color: white;
    box-shadow: 0 6px 16px rgba(113, 127, 224, 0.3);
}

/* ==================== PRODUCT ATTRIBUTES PROFESSIONAL STYLING ====================*/
.product-attribute-section {
    border: none;
    padding: 0;
    border-radius: 0;
    background: transparent;
}

.attribute-group {
    margin-bottom: 24px;
    padding-bottom: 24px;
    border-bottom: 2px solid #f0f0f0;
}

.attribute-label {
    font-weight: 700;
    font-size: 13px;
    color: #666;
    display: block;
    margin-bottom: 8px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Fabric Type Section */
.fabric-info-container {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
}

.fabric-info {
    font-size: 18px;
    font-weight: 600;
    color: #1a1a1a;
}

.fabric-info-text {
    flex: 1;
}

.quality-badge i {
    color: #27ae60;
    font-size: 16px;
    font-weight: bold;
}

.quality-badge span {
    font-weight: 600;
}

/* Size label header */
.size-label-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 14px;
}

.size-label-header .attribute-label {
    margin-bottom: 0;
}

/* Size Selection */
.size-guide-link {
    font-size: 11px;
    color: #0066cc;
    text-decoration: none;
    border-bottom: 2px solid #0066cc;
    font-weight: 600;
    padding-bottom: 2px;
    transition: all 0.3s ease;
}

.size-guide-link:hover {
    color: #0052a3;
    border-bottom-color: #0052a3;
}

.size-options-wrapper {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 10px;
}

.size-options-wrapper .attribute-input {
    display: none;
}

.size-options-wrapper label {
    padding: 12px 16px;
    text-align: center;
    border: 2px solid #ddd;
    cursor: pointer;
    border-radius: 6px;
    font-weight: 600;
    font-size: 14px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    color: #666;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
}

.size-options-wrapper input[type="radio"]:checked + label {
    border-color: #333 !important;
    background: #333 !important;
    color: #fff !important;
    box-shadow: 0 4px 12px rgba(51, 51, 51, 0.15) !important;
    transform: translateY(-1px) !important;
}

.size-options-wrapper label:hover {
    border-color: #999 !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
}

/* ==================== QUANTITY & CART SECTION ====================*/

.product-actions {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 28px;
    flex-wrap: wrap;
}

.wrap-num-product {
    display: flex;
    align-items: center;
    border: 2px solid #e0e0e0;
    border-radius: 6px;
    background: #fff;
    padding: 0;
    height: 48px;
}

.btn-num-product-down,
.btn-num-product-up {
    flex: 0 0 40px;
    height: 100%;
    border: none;
    background: transparent;
    cursor: pointer;
    color: #666;
    font-size: 18px;
    transition: all 0.2s;
    display: flex;
    align-items: center;
    justify-content: center;
}

.btn-num-product-down:hover,
.btn-num-product-up:hover {
    color: #000 !important;
    background: #f0f0f0 !important;
}

.num-product {
    flex: 1;
    border: none;
    text-align: center;
    font-size: 16px;
    font-weight: 600;
    color: #333;
    background: transparent;
    outline: none;
    -moz-appearance: textfield;
    appearance: textfield;
}

.num-product::-webkit-outer-spin-button,
.num-product::-webkit-inner-spin-button {
    -webkit-appearance: none;
    appearance: none;
    margin: 0;
}

.js-addcart-detail {
    flex: 1;
    padding: 12px 32px;
    background: linear-gradient(135deg, #333 0%, #1a1a1a 100%);
    color: #fff;
    border: none;
    border-radius: 6px;
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 12px rgba(51, 51, 51, 0.15);
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.js-addcart-detail:hover {
    background: linear-gradient(135deg, #1a1a1a 0%, #000 100%) !important;
    box-shadow: 0 6px 16px rgba(51, 51, 51, 0.25) !important;
    transform: translateY(-2px) !important;
}

.js-whatsapp-detail .whatsapp-text {
    display: inline-block;
}

/* ==================== WISHLIST & SOCIAL SECTION ====================*/
.product-social-section {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-top: 24px;
    padding-top: 24px;
    border-top: 1px solid #f0f0f0;
}

.js-addwish-detail {
    flex: 0 0 48px;
    width: 40px;
    height: 40px;
    border: 2px solid #e0e0e0;
    background: #fff;
    border-radius: 6px;
    cursor: pointer;
    font-size: 20px;
    color: #333;
    transition: all 0.3s;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}

.js-addwish-detail:hover {
    background: #ffe6e6 !important;
    border-color: #ff6666 !important;
    color: #ff0000 !important;
}

.social-buttons {
    display: flex;
    gap: 8px;
    margin-left: auto;
}

.social-btn {
    width: 40px;
    height: 40px;
    background: #f5f5f5;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #333;
    transition: all 0.3s;
    font-size: 16px;
    border: none;
    text-decoration: none;
    cursor: pointer;
    gap: 6px;
}

.social-btn:hover {
    background: #333 !important;
    color: #fff !important;
    transform: translateY(-2px) !important;
}

.whatsapp-order-btn {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    height: 40px;
    width: auto;
    background: #000;
    border-radius: 6px 20px 20px 6px;
    padding: 0 16px 0 12px;
    text-decoration: none;
    transition: all 0.3s;
    gap: 10px;
    border: none;
    cursor: pointer;
}

.whatsapp-order-btn i {
    width: 30px;
    height: 30px;
    background: linear-gradient(135deg, #25d366 0%, #128c7e 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 18px;
    flex-shrink: 0;
}

.whatsapp-order-btn span {
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    white-space: nowrap;
}

.whatsapp-order-btn:hover {
    background: #1a1a1a !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4) !important;
}

/* Hidden input */
.attribute-input {
    display: none;
}
@media (min-width: 1220px) {
    .js-addcart-detail {
        padding: 7px 2px;
    }
}

/* Responsive */
@media (max-width: 768px) {
    .size-options-wrapper {
        grid-template-columns: repeat(5, 1fr);
    }

    .product-actions {
        flex-direction: row;
    }

    .wrap-num-product {
        width: auto;
        min-width: 120px;
    }
    .js-addcart-detail {
        flex: 1;
        width: 100%;
        padding: 10px 16px;
        font-size: 13px;
        height: 45px;
    }
    .js-whatsapp-detail .whatsapp-text {
        display: none;
    }
    .js-whatsapp-detail {
        padding: 10px;
        width: calc(50% - 6px);
    }
}

@media (max-width: 992px) {
    /* Tablet & Mobile - Shopping Cart Quantity */
    .table-shopping-cart .column-4 {
        width: 120px;
        padding: 0 !important;
    }

    .table-shopping-cart .wrap-num-product {
        width: 100%;
        max-width: 130px;
        height: 45px;
        border: 1px solid #ddd;
        border-radius: 4px;
        display: flex;
        align-items: center;
    }

    .table-shopping-cart .btn-num-product-down,
    .table-shopping-cart .btn-num-product-up {
        flex: 1 1 8px;
        height: 100%;
        font-size: 14px;
    }

    .table-shopping-cart .num-product {
        height: 100%;
        flex: 1 1 8px;
        border: 1px solid #ddd;
        padding: 0 5px;
    }

    .table-shopping-cart input.num-product {
        font-size: 14px;
        line-height: 45px;
    }

    /* Cart Action Buttons */
    .cart-actions-buttons {
        padding: 15px 20px;
        gap: 8px;
    }
}

@media (max-width: 576px) {
    .size-options-wrapper {
        grid-template-columns: repeat(5, 1fr);
    }

    .product-actions {
        flex-direction: row;
        gap: 5px;
        margin-top: 20px;
    }

    .wrap-num-product,
    .js-addcart-detail {
        width: 50%;
        height: 44px;
        font-size: 12px;
    }
    .js-addcart-detail {
        padding: 10px 16px;
    }

    .js-whatsapp-detail {
        width: calc(50% - 4px);
        height: 44px;
        font-size: 12px;
        padding: 10px 12px;
        /* order: 3; */
    }

    .js-whatsapp-detail .whatsapp-text {
        display: none;
    }

    .js-whatsapp-detail i {
        font-size: 16px;
    }
}

.fabric-info-container {
    flex-direction: column;
    gap: 15px;
}

.quality-badge {
    width: 100%;
}

.product-social-section {
    flex-wrap: wrap;
    gap: 10px;
}

/* Shopping Cart Quantity Buttons Responsive - Mobile */
.table-shopping-cart .wrap-num-product {
    width: 100%;
    max-width: 110px;
    height: 40px;
    border: 1px solid #ddd;
    border-radius: 3px;
    display: flex;
    align-items: center;
}

.table-shopping-cart .btn-num-product-down,
.table-shopping-cart .btn-num-product-up {
    flex: 1 1 8px;
    height: 100%;
    font-size: 12px;
}

.table-shopping-cart .num-product {
    height: 100%;
    flex: 1 1 8px;
    border: 1px solid #ddd;
    padding: 0 3px;
}

.table-shopping-cart input.num-product {
    font-size: 14px;
    line-height: 40px;
}

/* Cart Action Buttons */
.cart-actions-buttons {
    padding: 12px 15px;
    gap: 5px;
}

.cart-actions-buttons > div {
    flex: 1;
    min-width: 0;
}

.footer-list li {
    list-style-type: none !important;
}

.block1-gradient-card .block1-name {
    font-size: 16px;
}
.block1-gradient-card .block1-info {
    font-size: 12px;
}

.footerSection {
    width: 50%;
}
.footerSection h4 {
    margin-left: 40px;
}
.footerSection ul {
    margin-left: 40px;
}

.footerSectionTwo {
    text-align: center;
}
.footerSectionTwo .size-201 {
    max-width: 400px;
}

.footerSectionTwo .input1 {
    width: 40%;
    margin: 0 auto;
}
.footerSectionTwo button {
    width: 50%;
    margin: 0 auto;
}

.whatsapp-float {
    position: fixed;
    width: 60px;
    height: 60px;
    bottom: 50px;
    right: 20px;
    background-color: #25d366;
    color: white;
    border-radius: 50px;
    text-align: center;
    font-size: 30px;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.3);
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: all 0.3s ease;
}
.whatsapp-float:hover {
    background-color: #20ba5a;
    transform: scale(1.1);
    box-shadow: 2px 2px 15px rgba(0, 0, 0, 0.4);
}
.whatsapp-float i {
    color: white;
}
@media (max-width: 768px) {
    .whatsapp-float {
        width: 55px;
        height: 55px;
        bottom: 80px;
        right: 15px;
        font-size: 26px;
    }
}
.social-buttons .whatsapp-btn:hover {
    background-color: #20ba5a !important;
    transform: scale(1.1);
}
