@charset "UTF-8";
:root {
  /* Images Sizes for the Homepage */
  --home-trendy-fashionable-couple-posing-img-width: 1440px;
  --home-trendy-fashionable-couple-posing-img-height: 663px;
  --home-T-SHIRT-WITH-TAPE-DETAILS-img-width: 296px;
  --home-T-SHIRT-WITH-TAPE-DETAILS-img-height: 444px;
  --home-SKINNY-FIT-JEANS-img-width: 268px;
  --home-SKINNY-FIT-JEANS-img-height: 402px;
  --home-CHECKERED-SHIRT-img-width: 296px;
  --home-CHECKERED-SHIRT-img-height: 444px;
  --home-SLEEVE-STRIPED-T-SHIRT-img-width: 268px;
  --home-SLEEVE-STRIPED-T-SHIRT-img-height: 402px;
  --home-VERTICAL-STRIPED-SHIRT-img-width: 296px;
  --home-VERTICAL-STRIPED-SHIRT-img-height: 444px;
  --home-COURAGE-GRAPHIC-T-SHIRT-img-width: 294px;
  --home-COURAGE-GRAPHIC-T-SHIRT-img-height: 441px;
  --home-LOOSE-FIT-BERMUDA-SHORTS-img-width: 296px;
  --home-LOOSE-FIT-BERMUDA-SHORTS-img-height: 444px;
  --home-FADED-SKINNY-JEANS-img-width: 252px;
  --home-FADED-SKINNY-JEANS-img-height: 378px;
  --home-Casual-img-width: 973px;
  --home-Casual-img-height: 649px;
  --home-Formal-img-width: 1306px;
  --home-Formal-img-height: 870px;
  --home-Party-img-width: 770px;
  --home-Party-img-height: 616px;
  --home-Gym-img-width: 452px;
  --home-Gym-img-height: 677px;
  /* Images Sizes for the Product Detail Page */
  --prod-One-Life-Graphic-T-shirt-1-img-width: 444px;
  --prod-One-Life-Graphic-T-shirt-1-img-height: 530px;
  --prod-One-Life-Graphic-T-shirt-1-side-img-width: 152px;
  --prod-One-Life-Graphic-T-shirt-1-side-img-height: 167px;
  --prod-One-Life-Graphic-T-shirt-2-img-width: 152px;
  --prod-One-Life-Graphic-T-shirt-2-img-height: 168px;
  --prod-One-Life-Graphic-T-shirt-3-img-width: 152px;
  --prod-One-Life-Graphic-T-shirt-3-img-height: 167px;
  --prod-Polo-with-Contrast-Trims-img-width: 296px;
  --prod-Polo-with-Contrast-Trims-img-height: 444px;
  --prod-Gradient-Graphic-T-shirt-img-width: 296px;
  --prod-Gradient-Graphic-T-shirt-img-height: 444px;
  --prod-Polo-with-Tipping-Details-img-width: 296px;
  --prod-Polo-with-Tipping-Details-img-height: 444px;
  --prod-Black-Striped-T-shirt-img-width: 296px;
  --prod-Black-Striped-T-shirt-img-height: 444px;
  /* Images Sizes for the Category Page */
  --cat-Gradient-Graphic-T-shirt-img-width: 294px;
  --cat-Gradient-Graphic-T-shirt-img-height: 441px;
  --cat-Polo-with-Tipping-Details-img-width: 296px;
  --cat-Polo-with-Tipping-Details-img-height: 444px;
  --cat-Black-Striped-T-shirt-img-width: 296px;
  --cat-Black-Striped-T-shirt-img-height: 444px;
  --cat-skinny-fit-jeans-img-width: 268px;
  --cat-skinny-fit-jeans-img-height: 402px;
  --cat-Checked-Shirt-img-width: 296px;
  --cat-Checked-Shirt-img-height: 444px;
  --cat-Sleeve-Striped-T-shirt-img-width: 296px;
  --cat-Sleeve-Striped-T-shirt-img-height: 444px;
  --cat-Vertical-Striped-Shirt-img-width: 296px;
  --cat-Vertical-Striped-Shirt-img-height: 444px;
  --cat-Courage-Graphic-T-shirt-img-width: 294px;
  --cat-Courage-Graphic-T-shirt-img-height: 441px;
  --cat-Loose-Fit-Bermuda-Shorts-img-width: 296px;
  --cat-Loose-Fit-Bermuda-Shorts-img-height: 444px;
  /* Images Sizes for the Cart Page */
  --cart-Gradient-Graphic-T-shirt-img-width: 125px;
  --cart-Gradient-Graphic-T-shirt-img-height: 187px;
  --cart-checked-shirt-img-width: 125px;
  --cart-checked-shirt-img-height: 187px;
  --cart-skinny-fit-jeans-img-width: 102px;
  --cart-skinny-fit-jeans-img-height: 153px;
}

:root {
  /* Colors */
  --color-black: #000000;
  --color-white: #ffffff;
  --color-yellow-stars: #FFC633;
  --color-green-checkmark: #01AB31;
  /* Color options for purchase */
  --color-olive-option: #4F4631;
  --color-darkgreen-option: #314F4A;
  --color-deeppurple-option: #31344F;
  /* Category page color options */
  --color-green: #00C12B;
  --color-red: #F50606;
  --color-yellow: #F5DD06;
  --color-orange: #F57906;
  --color-cyan: #06CAF5;
  --color-blue: #063AF5;
  --color-violet: #7D06F5;
  --color-pink: #F506A4;
  --color-greybg: #F0F0F0;
  /* search bar in nav bar and browse by dress style part */
  /* Hero part */
  --color-h1-background: #F2F0F1;
  /* behind the couple photo */
  /* New arrival part */
  --color-darkergrey-p: #00000099;
  /* paragraphs under headings , beside stars ratings ,in Footer */
  --color-lightergrey-p: #00000066;
  /* email address in home and og price before discount */
  --color-red-discount: #FF3333;
  --color-red-discount-bg: #FF33331A;
  --color-grey-border: #0000001A;
  /* our happy customers border and buttons border */
  --color-greybg-pagenum: #0000000F;
  /* Product detail page only */
  --color-grey-ogprice: #0000004D;
  /* Fonts */
  --font-family-headings: "Bebas Neue", sans-serif;
  /* integral cf is not free so got this one */
  --font-family-body: "Satoshi", sans-serif;
  /* Font weights */
  --font-weight-bold: 700;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  /* its size is normal in big buttons text , footer medium boldness,discount perc */
  /* Main font sizes */
  --font-size-h1: 64px;
  --font-size-h2: 48px;
  /* new arrival */
  --font-size-h3: 36px;
  /* styles in browse by dressing style */
  --font-size-h4: 20px;
  /* bold text under products, name in reviews */
  --font-size-body: 16px;
  /* almost everything grey */
  --font-size-small: 14px;
  --font-size-price: 24px;
  --font-size-discount: 12px;
  /* percentage */
  /* For nav and footer */
  --font-size-logo: 32px;
  --font-size-footer-logo: 33.45px;
  --font-size-footer-p: 14px;
  /* Frequently used sizes */
  --font-size-product-name: 20px;
  --font-size-review-names: 20px;
  --font-size-grey-rating: 14px;
  /* under products */
  --font-size-bold-white-text: 40px;
  /* Specific to certain pages */
  /* Home page */
  --font-size-hero-numbers: 40px;
  /* 200+ */
  /* Product detail page top half */
  --font-size-productpage-name: 40px;
  --font-size-grey-productpage-rating: 16px;
  --font-size-productpage-price: 32px;
  --font-size-productpage-discount-percentage: 16px;
  --font-size-productpage-allreviews: 24px;
  --font-size-productpage-review-date: 22px;
  /* Category page */
  --font-size-style-category: 32px;
  --font-size-categorypage-buttons-text: 14px;
  /* Filters in category page */
  --font-size-filter-regular: 14px;
  /* including price interval numbers */
  --font-size-grey-filter-dress-styles-text: 16px;
  /* including price interval numbers */
  /* Cart page */
  --font-size-cart-h1: 40px;
  --font-size-product-info: 14px;
  --font-size-order-summary: 24px;
  --font-size-summary-info: 20px;
  --font-size-total-price: 24px;
}

.top-strip {
  background-color: var(--color-black);
  font-size: var(--font-size-small);
  position: relative;
  width: 100%;
}
.top-strip a {
  text-decoration: underline;
  margin-left: 5px;
  font-weight: 500;
}
.top-strip .btn-close {
  position: absolute;
  right: 10px;
  top: 4px;
  color: var(--color-white);
}

.navbar {
  position: relative;
  padding: 20px 5%;
  gap: 1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 20px;
  overflow-x: hidden;
  overflow: visible;
}
.navbar::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: #eaeaea;
  margin: 0 5%;
  z-index: 10;
}
.navbar .navbar-brand {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-logo);
  vertical-align: middle;
  color: var(--color-black);
  margin-right: auto;
  max-width: 100%;
}
.navbar .dropdown-menu {
  max-height: 80vh;
  overflow-y: auto;
  margin-bottom: 10px;
  box-sizing: border-box;
}
.navbar i {
  font-size: var(--font-size-body);
}
.navbar .search-form {
  position: relative;
  width: 100%;
}
.navbar .search-form .search-icon {
  position: absolute;
  top: 50%;
  left: 15px;
  transform: translateY(-50%);
  font-size: 1.2rem;
  color: #999;
  pointer-events: none;
}
.navbar .search-form .search-input {
  width: 100%;
  padding: 10px 15px 10px 45px;
  border: none;
  border-radius: 62px;
  background-color: var(--color-greybg);
  font-size: var(--font-size-body);
  max-width: 100%;
  flex: 1;
  max-width: 577px;
}
.navbar .search-form .search-input:focus {
  outline: none;
  box-shadow: 0 0 0 2px rgba(83, 93, 161, 0.2);
}
.navbar .nav-link {
  font-size: 1rem;
  margin-right: 1rem;
  color: var(--color-black);
  white-space: nowrap;
}
.navbar .nav-link .nav-icon {
  width: 24px;
  height: 24px;
  object-fit: contain;
  /* keeps aspect ratio */
  margin-right: -8px;
  /* spacing from input */
}
.navbar .nav-link .bi {
  font-weight: bold !important;
}
.navbar .nav-link .bi::before {
  font-weight: bold !important;
}
.navbar .nav-link:hover {
  color: #535da1;
}
@media (max-width: 770px) {
  .navbar {
    overflow-x: hidden;
    padding: 20px 0;
    font-size: 25px;
    justify-content: space-between;
    overflow-x: hidden;
    box-sizing: border-box;
  }
  .navbar::after {
    margin-left: auto;
    margin-right: auto;
    width: 90%;
  }
  .navbar .navbar-brand {
    font-size: 25px;
    margin-right: 5%;
  }
  .navbar .search-form {
    display: none !important;
  }
  .navbar .nav-icons {
    display: flex;
    margin-left: auto;
  }
  .navbar .navbar-nav .nav-item {
    display: inline-block;
    /* shrink-wrap to content */
    width: auto;
    /* no forced width */
    margin: 0;
    /* reset Bootstrap margins if any */
    width: 50%;
  }
  .navbar .navbar-nav .nav-link {
    padding-left: 0;
    padding-right: 0;
  }
  .navbar {
    /* ✅ Mobile dropdown fix */
  }
  .navbar .navbar-nav .dropdown-menu {
    position: static !important;
    float: none !important;
    box-shadow: none;
    max-height: none !important;
    overflow: visible !important;
    padding-left: 1rem;
  }
  .navbar #navbarNav {
    overflow: visible !important;
  }
}

/* visually-hidden (keeps element accessible/clickable) */
.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Mobile search form (hidden by default) */
.mobile-search-form {
  display: none;
  width: 100%;
  padding: 10px 16px;
  box-sizing: border-box;
  position: relative;
}
.mobile-search-form .search-input {
  width: 100%;
  padding: 10px 15px 10px 45px;
  border: none;
  border-radius: 62px;
  background-color: var(--color-greybg);
  font-size: var(--font-size-body);
  box-sizing: border-box;
}
.mobile-search-form .search-icon {
  position: absolute;
  top: 50%;
  left: 18px;
  transform: translateY(-50%);
  pointer-events: none;
  font-size: 1.1rem;
}

/* When checkbox is checked, show the mobile search (needs input immediately before form) */
#search-toggle:checked + .mobile-search-form {
  display: block;
}

/* Show/hide helper rules per screen size */
@media (max-width: 768px) {
  /* hide desktop search on small screens */
  .search-form {
    display: none !important;
  }
  /* show the search label/icon on mobile */
  .search-toggle-label {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    padding: 6px;
  }
}
@media (min-width: 769px) {
  /* ensure mobile search toggle and form are hidden on desktop */
  .search-toggle-label {
    display: none !important;
  }
  .mobile-search-form {
    display: none !important;
  }
}
.home-section {
  background-color: var(--color-h1-background);
  margin: 0;
}
.home-section h1 {
  font-family: var(--font-family-headings);
  font-weight: var(--font-weight-bold);
  font-size: 5rem;
}
.home-section p {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-regular);
  font-size: var(--font-size-body);
  color: var(--color-darkergrey-p);
  line-height: 1.5rem;
}
.home-section button {
  border: none;
  background-color: var(--color-black);
  color: var(--color-white);
  padding: 10px;
  border-radius: 25px;
}
.home-section button a {
  text-decoration: none;
  color: inherit;
}
.home-section .hero-number {
  font-size: var(--font-size-hero-numbers);
  font-weight: var(--font-weight-medium);
  font-family: var(--font-family-headings);
}
.home-section .hero-number:nth-child(1) {
  border-right: 1px solid rgba(153, 155, 159, 0.4196078431);
}
.home-section .hero-number:nth-child(2) {
  border-right: 1px solid rgba(153, 155, 159, 0.4196078431);
}
.home-section .hero-number span {
  font-family: var(--font-family-body);
  font-weight: var(--font-weight-regular);
  font-size: var(--font-size-body);
  color: var(--color-darkergrey-p);
}
.home-section .hero-img {
  display: flex;
  justify-content: flex-end;
  object-fit: cover;
  z-index: 1;
}
.home-section .hero-img .big-star, .home-section .hero-img .small-star {
  position: absolute;
  z-index: 2;
}
.home-section .hero-img .big-star {
  top: 20%;
  right: 10%;
}
.home-section .hero-img .small-star {
  top: 50%;
  right: 80%;
}

h2.section-title {
  text-transform: uppercase;
  font-family: var(--font-family-headings);
  font-weight: var(--font-weight-bold);
  font-size: 3.5rem;
}

.clothes-container {
  padding: 4rem 2rem;
}
.clothes-container .scroll-container {
  display: flex;
  overflow-x: auto;
  padding-bottom: 1rem;
  scroll-snap-type: x mandatory;
}
.clothes-container .scroll-container .product-card {
  flex: 0 0 auto;
  scroll-snap-align: start;
}
.clothes-container .scroll-container::-webkit-scrollbar {
  display: none;
}
.clothes-container button {
  background-color: var(--color-white);
  border: 2px solid var(--color-greybg);
}
.clothes-container button a {
  text-decoration: none;
  color: inherit;
}

.responsive-hr {
  width: 80%;
  margin: 0 auto;
  border: none;
  border-top: 2px solid #d5d2d2;
}

.styles-container {
  padding: 4rem 3rem;
  background-color: var(--color-greybg);
  width: 85%;
  margin: auto;
  border-radius: 20px;
}
.styles-container .style {
  position: relative;
  width: 100%;
  height: 289px;
  overflow: hidden;
  border-radius: 12px;
  background: var(--color-white);
}
.styles-container .style img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 12px;
}
.styles-container .style h3 {
  position: absolute;
  top: 1rem;
  left: 1rem;
  font-size: 1.5rem;
  font-weight: bold;
  color: #000;
}

.customers-container {
  padding: 5rem 2rem 0 2rem;
  position: relative;
  overflow: visible;
}
.customers-container .swiper-wrapper {
  padding: 10px 0;
  display: flex;
}
.customers-container .swiper-wrapper .swiper-slide {
  height: 270px;
  flex-shrink: 0;
}
.customers-container .custom-next-button,
.customers-container .custom-prev-button {
  position: absolute;
  top: 18%;
  transform: translateY(-50%);
  padding: 10px;
  z-index: 20;
}
.customers-container .custom-next-button {
  background-image: url(../assets/home/icons/left-arrow.svg);
  right: 20px;
  transform: translateY(-30%) rotate(-180deg);
}
.customers-container .custom-prev-button {
  background-image: url(../assets/home/icons/left-arrow.svg);
  right: 55px;
}

@media (max-width: 768px) {
  .home-section h1 {
    font-size: 4rem;
  }
  .home-section .hero-img {
    justify-content: flex-end;
    overflow: hidden;
  }
  .home-section .hero-img .couple {
    width: 150%;
    object-fit: cover;
    object-position: right;
    position: relative;
    right: 0;
  }
  .home-section .hero-img .big-star {
    top: 10% !important;
    right: 3% !important;
  }
  .home-section .hero-img .small-star {
    top: 50% !important;
    right: 70% !important;
  }
}
@media (max-width: 464px) {
  .customers-container .custom-next-button,
  .customers-container .custom-prev-button {
    top: 110px;
  }
}
ol.breadcrumb.product {
  padding: 20px 5%;
}

ol.breadcrumb.product {
  font-family: "Satoshi", sans-serif;
  font-size: 0.95rem;
  margin-bottom: 1.5rem;
}
ol.breadcrumb.product a {
  color: #777;
  text-decoration: none;
  margin-right: 0.5rem;
}
ol.breadcrumb.product a:hover {
  color: #000;
}
ol.breadcrumb.product span {
  color: #000;
  font-weight: 500;
}

/* Base desktop layout */
.gallery {
  display: flex;
  gap: 1rem;
  align-items: stretch;
  height: 500px;
}
.gallery .main-image {
  flex: 1;
}
.gallery .main-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 16px;
}
.gallery .thumbnails {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  flex: 0 0 130px;
  height: 100%;
}
.gallery .thumbnails img {
  flex: 1;
  object-fit: cover;
  border: 2px solid transparent;
  border-radius: 20px;
  cursor: pointer;
  width: 100%;
}
.gallery .thumbnails img.active {
  border-color: #000;
}
.gallery .thumbnails img:hover {
  border-color: #666;
}

/* Tablet + Mobile (stacked) */
@media (max-width: 992px) {
  .gallery {
    flex-direction: column;
    height: auto;
  }
  .gallery .main-image {
    order: 1;
    margin-bottom: 1rem;
  }
  .gallery .main-image img {
    height: auto;
    width: 100%;
  }
  .gallery .thumbnails {
    order: 2;
    flex-direction: row;
    justify-content: space-between;
    width: 100%;
    gap: 0.5rem;
  }
  .gallery .thumbnails img {
    flex: 1;
    min-height: 115px;
    max-height: 200px;
    object-fit: cover;
  }
}
.btn-sm {
  height: 32px; /* force same height for all small buttons */
  padding: 0 12px; /* adjust horizontal padding */
}

.product-thumbnail {
  border: 2px solid transparent;
  border-radius: 20px;
  cursor: pointer;
}
.product-thumbnail.active {
  border-color: #000;
}
.product-thumbnail:hover {
  border-color: #666;
}

@media (max-width: 768px) {
  .gallery .main-image img {
    height: 80%;
  }
  .gallery .thumbnails {
    gap: 0.25rem;
  }
  .gallery .thumbnails img {
    width: 100px;
    height: 100px;
  }
  .product-thumbnail {
    width: 70px !important;
    height: 70px !important;
  }
}
@media (max-width: 576px) {
  .gallery .main-image img {
    height: 300px;
  }
  .gallery .thumbnails img {
    width: 60px;
    height: 60px;
  }
  .gallery .load-more-btn {
    width: 100px;
  }
  .gallery .tab-pane .btn-review {
    size: 100px;
  }
  .product-thumbnail {
    width: 60px !important;
    height: 60px !important;
  }
}
/* Product Info */
/* Container */
.product-info {
  padding-left: 20px;
}

/* Title */
.product-title {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 1rem;
}

/* Rating */
.product-rating {
  font-size: 0.9rem;
}

.rating-stars {
  color: #f0ad4e;
}

.rating-count {
  font-size: 0.85rem;
  color: #666;
}

/* Price */
.product-price {
  margin-bottom: 1rem;
}

.current-price {
  font-size: 1.8rem;
  font-weight: bold;
  margin-right: 10px;
}

.old-price {
  text-decoration: line-through;
  color: #999;
  margin-right: 10px;
}

.discount-badge {
  background: #dc3545;
  color: #fff;
  padding: 3px 8px;
  border-radius: 4px;
  font-size: 0.8rem;
}

/* Description */
.product-description {
  color: #666;
  margin-bottom: 1.5rem;
  line-height: 1.6;
}

.btn-sm {
  padding: 0.35rem 0.75rem;
  line-height: 1.2;
}

/* Colors */
.colors-label {
  font-weight: 400;
  margin-bottom: 5px;
  display: block;
  color: #999;
}

.color-option {
  width: 35px;
  height: 35px;
  border-radius: 50%;
  border: 1px solid #ddd;
  margin-right: 8px;
  cursor: pointer;
}

.color-option.brown {
  background: #5c4d3b;
}

.color-option.green {
  background: #2e5248;
}

.color-option.navy {
  background: #26294d;
}

/* Sizes */
.sizes-label {
  font-weight: 600;
  margin-bottom: 5px;
  display: block;
  color: #999;
}

.product-sizes {
  display: flex;
  flex-direction: column;
}
.product-sizes .size-btn {
  border: 1px solid #ccc;
  border-radius: 20px;
  padding: 6px 14px;
  cursor: pointer;
}
.product-sizes .size-btn:active {
  background-color: #000;
  color: #fff;
}

/* Quantity + Cart */
.quantity-wrapper {
  width: 140px;
}

.quantity-btn {
  border: 1px solid #ccc;
  background: #f8f9fa;
  cursor: pointer;
  width: 40px;
}

.quantity-input {
  text-align: center;
  border: 1px solid #ccc;
}

a .add-to-cart {
  flex-grow: 1;
  background: #000;
  color: #fff;
  border-radius: 20px;
  padding: 8px 20px;
  border: none;
  border-radius: 20px;
  cursor: pointer;
}

.add-to-cart:hover {
  background: #333;
}

/* Product Tabs Section */
.product-tabs .nav-underline .nav-link {
  color: #6c757d;
  border: none;
  border-bottom: 2px solid transparent;
  background: none;
  font-size: 1.1rem;
  padding: 0.75rem 1.5rem 1rem 0;
  margin-right: 2rem;
}
.product-tabs .nav-underline .nav-link:hover {
  color: #000;
}
.product-tabs .nav-underline .nav-link.active {
  color: #000;
  border-bottom-color: #000;
  background: none;
}
.product-tabs .tab-content {
  padding-top: 2rem;
}

/* Reviews Section Styles */
.reviews-section {
  margin-top: 2rem;
}

.review-card {
  background: #fafafa;
  border-radius: 12px;
  padding: 1.5rem;
  border: 1px solid #f0f0f0;
}
.review-card .verified-badge {
  font-size: 14px;
  font-weight: 600;
}
.review-card h6 {
  font-size: 1rem;
  font-weight: 600;
  color: #000;
}
.review-card p {
  font-size: 0.95rem;
  line-height: 1.6;
  color: #333;
  font-style: italic;
}
.review-card small {
  color: #888;
  font-size: 0.85rem;
}
.review-card .text-warning {
  font-size: 1.1rem;
}
.review-card .btn-link {
  font-size: 1.2rem;
  color: #ccc;
  text-decoration: none;
}
.review-card .btn-link:hover {
  color: #888;
}

/* Product Cards - You Might Also Like */
.product-card {
  transition: transform 0.3s ease;
  cursor: pointer;
  width: 85%;
}
.product-card:hover {
  transform: translateY(-5px);
}
.product-card .product-image {
  overflow: hidden;
  border-radius: 16px;
  width: 100%;
}
.product-card .product-image img {
  transition: transform 0.3s ease;
  border-radius: 16px;
  object-fit: cover;
}
.product-card:hover .product-image img {
  transform: scale(1.05);
}
.product-card h6 {
  font-size: 1rem;
  margin-bottom: 0.5rem;
}
.product-card .rating {
  font-size: 1rem;
}
.product-card .price {
  font-size: 1.1rem;
}
.product-card .price .badge {
  font-size: 0.9rem;
}
@media (max-width: 768px) {
  .product-card h6 {
    font-size: 1rem;
    margin-bottom: 0.25rem;
  }
  .product-card .rating {
    font-size: 0.9rem;
  }
  .product-card .price {
    font-size: 1rem;
  }
  .product-card .price .badge {
    font-size: 0.9rem;
  }
}
@media (max-width: 576px) {
  .product-card h6 {
    font-size: 0.8rem;
  }
  .product-card .rating {
    font-size: 0.7rem;
  }
  .product-card .price {
    font-size: 0.8rem;
  }
}

.load-more-btn {
  display: inline-block;
  margin: 2rem auto;
  padding: 0.6rem 1.5rem;
  border: 1px solid #ccc;
  border-radius: 30px;
  background: #fff;
  color: #333;
  font-weight: 500;
  cursor: pointer;
  text-align: center;
}
.load-more-btn:hover {
  background: #f9f9f9;
  border-color: #888;
}

/* Scroll Wrapper for Product Cards */
.scroll-wrapper {
  overflow-x: auto;
  overflow-y: hidden;
  padding-bottom: 10px;
}
.scroll-wrapper::-webkit-scrollbar {
  height: 6px;
}
.scroll-wrapper::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 10px;
}
.scroll-wrapper::-webkit-scrollbar-thumb {
  background: #ccc;
  border-radius: 10px;
}
.scroll-wrapper::-webkit-scrollbar-thumb:hover {
  background: #aaa;
}
.scroll-wrapper .row.flex-nowrap {
  --bs-gutter-x: 0;
  --bs-gutter-y: 0;
  margin-left: 0;
  margin-right: 0;
}
.scroll-wrapper .col-lg-3 {
  min-width: 150px;
  padding-left: 0.25rem;
  padding-right: 0.25rem;
}

/* Accordion Customization */
.accordion .accordion-item {
  border: none;
  border-bottom: 1px solid #e9ecef;
  margin-bottom: 0;
}
.accordion .accordion-item:first-child {
  border-top: none;
}
.accordion .accordion-item:last-child {
  border-bottom: none;
}
.accordion .accordion-header .accordion-button {
  background: none;
  border: none;
  box-shadow: none;
  font-weight: 500;
  padding: 1.25rem 0;
}
.accordion .accordion-header .accordion-button:not(.collapsed) {
  background: none;
  color: #000;
  box-shadow: none;
}
.accordion .accordion-header .accordion-button:focus {
  box-shadow: none;
  border: none;
}
.accordion .accordion-header .accordion-button::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}
.accordion .accordion-body {
  padding: 0 0 1.5rem 0;
  color: #6c757d;
  line-height: 1.6;
}

/* Responsive Styles */
@media (max-width: 992px) {
  .product-page {
    grid-template-columns: 1fr;
  }
  .product-tabs .nav-underline .nav-link {
    margin-right: 1rem;
    font-size: 1rem;
  }
}
@media (max-width: 768px) {
  .product-tabs .nav-underline .nav-link {
    margin-right: 0.5rem;
    padding: 0.75rem 0.75rem 1rem 0;
    font-size: 0.9rem;
  }
}
/* Section spacing */
.container > .row.mt-5 {
  margin-top: 4rem !important;
}

body {
  font-family: var(--font-family-body);
}

.category form {
  border: 1px solid var(--color-grey-border);
  font-weight: 600;
}

h1 {
  font-family: var(--font-family-body);
  font-weight: 900;
  font-size: var(--font-size-style-category);
}

form h4 {
  font-family: var(--font-family-body);
  font-weight: 600;
  font-size: var(--font-size-h4);
}

/* Remove background highlight */
.list-group-item {
  color: var(--color-darkergrey-p) !important;
  font-size: var(--font-size-body);
  font-weight: var(--font-weight-regular);
  cursor: pointer;
  transition: all 0.1s ease-in;
}

.sortby {
  color: var(--color-lightergrey-p);
  font-size: var(--font-size-body) !important;
}

/* Change text + arrow color on hover */
.list-group-item:hover {
  color: rgb(110, 60, 180) !important;
}

hr {
  color: #333;
}

.color-option.active {
  opacity: 0.8;
}

.filter-category-list li {
  border: none;
}

input[type=range] {
  accent-color: black;
  /* modern browsers (quick way) */
}

input[type=range]::-webkit-slider-thumb {
  background: #000;
  border: 2px solid #fff;
  height: 18px;
  width: 18px;
  border-radius: 50%;
  cursor: pointer;
  -webkit-appearance: none;
}

p span,
output {
  color: var(--color-black);
  font-weight: 600;
  font-size: var(--font-size-small);
}

.color-circles {
  width: 34px;
  height: 34px;
  border: 2px solid rgba(0, 0, 0, 0.2) !important;
  transition: all 0.2s ease-in-out;
}

.color-circles:hover {
  cursor: pointer;
  filter: brightness(80%);
}

.size-btn {
  border: none;
  font-size: var(--font-size-categorypage-buttons-text);
  background-color: var(--color-greybg-pagenum);
  color: var(--color-darkergrey-p);
  padding: 10px 20px !important;
  transition: all 0.2s ease-in-out;
}

.size-btn:hover,
.size-btn:focus,
.size-btn.active {
  background-color: black;
  color: white;
  border-color: black;
}

.offcanvas.offcanvas-bottom {
  height: 80% !important;
  border-top-left-radius: 1rem;
  border-top-right-radius: 1rem;
  overflow-y: auto;
}

.offcanvas-body form {
  border: none !important;
}

.offcanvas-header {
  display: none;
}

.cat {
  padding: 0 !important;
  width: 305px;
}

.product-card img {
  flex: 0 0 auto;
}

.product-info {
  flex: 1;
  padding: 10px 0;
}

.cat .rating {
  margin-top: 0 !important;
}

.btn-dark {
  transition: background-color 0.3s ease;
}
.btn-dark:hover {
  background-color: #333 !important;
}

.botnhov {
  transition: background-color 0.3s ease;
}
.botnhov:hover {
  background-color: rgba(235, 237, 244, 0.8823529412) !important;
}

.boldbutton {
  font-weight: bold;
}

.cat .pricing-info {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
}
.cat .pricing-info .current-price {
  font-size: var(--font-size-h4) !important;
  font-weight: var(--font-weight-bold);
  color: var(--color-black);
}
.cat .pricing-info .original-price {
  font-size: var(--font-size-h4) !important;
  text-decoration: line-through;
  color: rgba(196, 199, 201, 0.8745098039);
}
.cat .pricing-info .discount {
  font-size: var(--font-size-discount);
  color: var(--color-red-discount);
  background-color: var(--color-red-discount-bg);
  padding: 2px 10px;
  border-radius: 20px;
}

.d-flex.flex-wrap.gap-2 {
  width: 100%;
  max-width: 250px;
}

.color-option {
  position: relative;
  cursor: pointer;
}

.color-option.active .check-icon {
  display: block !important;
}

.check-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -40%);
  width: 16px;
  height: 16px;
}

.body {
  box-sizing: border-box;
  overflow-x: hidden;
}

.breadcrumb {
  font-family: "Satoshi", sans-serif;
  font-size: 0.95rem;
}
.breadcrumb .breadcrumb-item + .breadcrumb-item::before {
  content: ">";
  color: #888;
}
.breadcrumb a {
  color: #888;
  text-decoration: none;
}
.breadcrumb a:hover {
  text-decoration: underline;
}
.breadcrumb .active {
  color: #000;
  font-weight: 500;
}

.main h1 {
  font-family: var(--font-family-body);
  font-size: var(--font-size-cart-h1);
}
.main h5 {
  font-family: var(--font-family-body);
  font-size: var(--font-size-product-name);
}

.cart-items {
  width: 100%;
  border: 1px solid #eee;
  background: var(--color-white);
  border-radius: 20px;
}

.cart-item {
  background: var(--color-white);
  width: 100%;
}
.cart-item .cart-img {
  width: 30%;
  height: 30%;
  border-radius: 8px;
}
.cart-item .item-details {
  font-family: var(--font-family-body);
}
.cart-item .item-details p {
  font-size: var(--font-size-total-price);
}
.cart-item:not(:last-child)::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: #eaeaea;
  z-index: 10;
}

.summary-box {
  border: 1px solid #eee;
  background: var(--color-white);
  border-radius: 20px;
  font-family: var(--font-family-body);
}
.summary-box h5 {
  font-size: var(--font-size-order-summary);
}
.summary-box .input-group-text {
  border-top-left-radius: 62px !important;
  border-bottom-left-radius: 62px !important;
  border: none;
  background-color: var(--color-greybg);
}
.summary-box .input-group-text i {
  font-size: 21px;
  color: #555;
}
.summary-box input,
.summary-box .form-control {
  border-top-right-radius: 62px !important;
  border-bottom-right-radius: 62px !important;
  margin-right: 16px;
  background-color: var(--color-greybg);
  border: none !important;
}
.summary-box button {
  border-radius: 62px !important;
}

a {
  text-decoration: none;
}
a .product-card {
  display: flex;
  flex-direction: column;
  padding: 10px;
  width: var(--card-width, 100%);
  max-width: var(--card-max-width, 330px);
}
a .product-card img {
  width: var(--card-img-width, 100%);
  height: 300px;
  object-fit: contain;
  border-radius: 5px;
}
a .product-card .product-info {
  margin-top: 10px;
}
a .product-card .product-info h3 {
  font-size: var(--font-size-h4);
  font-weight: var(--font-weight-bold);
  color: var(--color-black);
}
a .product-card .product-info .rating {
  display: flex;
  margin-top: 1rem;
}
a .product-card .product-info .rating img {
  width: 16px;
  height: 16px;
  margin-right: 2px;
}
a .product-card .product-info .rating span {
  margin-left: 8px;
  color: var(--color-lightergrey-p);
  font-size: var(--font-size-grey-rating);
}
a .product-card .product-info .pricing-info {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
}
a .product-card .product-info .pricing-info .current-price {
  font-size: var(--font-size-price);
  font-weight: var(--font-weight-bold);
  color: var(--color-black);
}
a .product-card .product-info .pricing-info .original-price {
  font-size: var(--font-size-price);
  text-decoration: line-through;
  color: rgba(196, 199, 201, 0.8745098039);
}
a .product-card .product-info .pricing-info .discount {
  font-size: var(--font-size-discount);
  color: var(--color-red-discount);
  background-color: var(--color-red-discount-bg);
  padding: 2px 10px;
  border-radius: 20px;
}

.review-card {
  display: flex;
  flex-direction: column;
  background-color: var(--color-white);
  padding: 20px;
  border-radius: 8px;
  border: 2px solid var(--color-greybg);
  height: 100%;
  width: 98%;
}
.review-card .star-rating {
  display: flex;
  align-items: center;
}
.review-card .star-rating img {
  width: 16px;
  height: 16px;
  margin-right: 3px;
}
.review-card .customer-info {
  display: flex;
  align-items: center;
  margin-top: 10px;
  margin-bottom: 15px;
}
.review-card .customer-info .customer-name {
  font-size: var(--font-size-h4);
  font-weight: var(--font-weight-bold);
  font-family: var(--font-family-body);
  margin-right: 10px;
}
.review-card .customer-info img {
  width: 24px;
  height: 24px;
}
.review-card .comment {
  font-family: var(--font-family-body);
  font-size: var(--font-size-body);
  color: var(--color-darkergrey-p);
}

footer .newsletter-wrapper {
  position: relative;
  padding: 80px 0;
}
footer .newsletter-wrapper::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background-color: var(--color-white);
  z-index: 0;
}
footer .newsletter-wrapper::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background-color: var(--color-greybg);
  z-index: 0;
}
footer .newsletter-wrapper .newsletter {
  position: relative;
  z-index: 1;
  border-radius: 20px;
  margin: 0 100px;
  padding: 36px 64px;
  background: var(--color-white);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.08);
}
footer .newsletter-wrapper .newsletter h2 {
  font-family: var(--font-family-body);
  font-size: var(--font-size-bold-white-text);
  font-weight: var(--font-weigth-bold);
  width: 50%;
}
footer .newsletter-wrapper .newsletter span {
  border-top-left-radius: 50px;
  border-bottom-left-radius: 50px;
}
footer .newsletter-wrapper .newsletter span i {
  color: #999;
}
footer .newsletter-wrapper .newsletter input {
  border-radius: 50px;
  border-left: none;
}
footer .newsletter-wrapper .newsletter button {
  border-radius: 50px;
  font-weight: 600;
}
@media (max-width: 992px) {
  footer .newsletter-wrapper .newsletter {
    flex-direction: column;
    text-align: left;
    gap: 20px;
    margin: 0 16px;
    padding: 24px 16px;
  }
  footer .newsletter-wrapper .newsletter h2 {
    font-size: var(--font-size-logo);
    width: 100%;
  }
  footer .newsletter-wrapper .newsletter .form {
    width: 100%;
  }
  footer .newsletter-wrapper .newsletter input {
    border-radius: 50px;
    border-left: none;
  }
  footer .newsletter-wrapper .newsletter button {
    border-radius: 50px;
    font-weight: 600;
    width: 100%;
  }
}
footer {
  background-color: var(--color-greybg);
}
footer .bottom-strip {
  background-color: var(--color-greybg);
}
footer ul li {
  margin-bottom: 0.5rem;
}
footer .nav-icon,
footer .bi {
  font-size: 1.2rem;
  color: var(--color-black);
}
footer .icon-container {
  border: 1px solid #D6DCE5;
  border-radius: 8px;
  padding: 4px 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--color-white);
}

/*# sourceMappingURL=style.css.map */
