/* Keep storefront header/nav visible on Next.js pages */

[data-storefront-part="header"],
header.header-5 {
  display: block !important;
  visibility: visible !important;
  width: 100%;
}

/* Sticky/fixed header chrome (announcement + nav) */
.storefront-header-chrome {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  width: 100%;
}

/* Tighter gap under fixed header on content pages (home/cms/bulk keep their own 0) */
body.has-storefront-fixed-header .shop-section,
body.has-storefront-fixed-header .cart-section,
body.has-storefront-fixed-header .checkout-section,
body.has-storefront-fixed-header .search-section,
body.has-storefront-fixed-header .product-details-section,
body.has-storefront-fixed-header .user-dashboard-section,
body.has-storefront-fixed-header .tracking-section {
  padding-top: 24px;
}

@media (max-width: 767.98px) {
  body.has-storefront-fixed-header .shop-section,
  body.has-storefront-fixed-header .cart-section,
  body.has-storefront-fixed-header .checkout-section,
  body.has-storefront-fixed-header .search-section,
  body.has-storefront-fixed-header .product-details-section,
  body.has-storefront-fixed-header .user-dashboard-section,
  body.has-storefront-fixed-header .tracking-section {
    padding-top: 16px;
  }
}

/* All-products listing: banner stays CSS-hidden; remove leftover top divider/gap below it */
body[data-page-type="products"] .top-banner-box-2 {
  display: none;
}

body[data-page-type="products"] .shop-section .top-banner-box-2 ~ .categories-items {
  margin-top: 0 !important;
  padding-top: 0 !important;
  border-top: none !important;
}

/* Payment badges — identical card boxes for every method */
.product-details-section .product-info-new .payment-option ul {
  align-items: center;
  gap: 8px;
}

.product-details-section .product-info-new .payment-option ul li {
  flex: 0 0 auto;
  width: 64px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #e6e6e6;
  border-radius: 4px;
  background: #f5f5f5;
  overflow: hidden;
  padding: 6px 4px;
  box-sizing: border-box;
}

.product-details-section .product-info-new .payment-option ul li img,
.product-details-section .product-info-new .payment-option ul li a img {
  width: 100% !important;
  height: 100% !important;
  max-width: none;
  display: block;
  object-fit: contain;
  object-position: center;
  border-radius: 0;
  background: #f5f5f5;
}

.footer-section .footer-bottom .payment-list {
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
}

.footer-section .footer-bottom .payment-list li {
  flex: 0 0 auto;
  width: 52px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 3px;
  background: #f5f5f5;
  overflow: hidden;
  padding: 0;
  box-sizing: border-box;
}

.footer-section .footer-bottom .payment-list li img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain;
  object-position: center;
  border-radius: 0;
  background: #f5f5f5;
}

/* Full-bleed separator above copyright / social / payment */
.footer-section .footer-bottom {
  width: 100%;
  margin-top: calc(16px + 34 * (100vw - 320px) / 1600);
  padding-block: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  background-color: transparent;
  display: block;
  gap: 0;
}

.footer-section .footer-bottom .footer-bottom-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: calc(12px + 8 * (100vw - 320px) / 1600);
  padding-block: calc(16px + 14 * (100vw - 320px) / 1600);
}

@media (max-width: 767.98px) {
  .footer-section .footer-bottom {
    display: block;
  }

  .footer-section .footer-bottom .footer-bottom-inner {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
  }
}

@media (max-width: 500.98px) {
  .footer-section .footer-bottom .footer-bottom-inner {
    grid-template-columns: 1fr;
  }
}

body.has-storefront-fixed-header {
  padding-top: var(--storefront-chrome-height, 110px);
}

[data-storefront-part="header"] {
  height: 0;
  overflow: visible;
  pointer-events: none;
}

[data-storefront-part="header"] .storefront-header-chrome {
  pointer-events: auto;
}

/* Language switcher must remain interactive above header hit-testing quirks */
[data-storefront-part="header"] .lang-switcher,
[data-storefront-part="header"] .lang-switcher__btn {
  pointer-events: auto !important;
  position: relative;
  z-index: 60;
}

/* Announcement ticker — white bar above dark header */
.storefront-announcement-bar {
  overflow: hidden;
  background: #060f16;
  color: #FFF;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.2;
  padding: 8px 0;
}

.storefront-announcement-track {
  display: flex;
  align-items: center;
  gap: 48px;
  width: max-content;
  white-space: nowrap;
  animation: storefront-announcement-scroll 32s linear infinite;
}

.storefront-announcement-item {
  flex-shrink: 0;
}

.storefront-announcement-sep {
  flex-shrink: 0;
  opacity: 0.45;
  font-size: 10px;
  color: rgba(var(--primary-color), 1);
}

@keyframes storefront-announcement-scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

/* Header — footer-like dark gradient */
header.storefront-header-dark,
header.storefront-header-dark.sticky {
  position: relative;
  top: auto;
  background: linear-gradient(135deg, rgba(var(--theme-dark), 1) 30%, rgba(var(--theme-dark), 0.95) 100%);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

header.storefront-header-dark .header-wrapper .navbar-nav .nav-link,
header.storefront-header-dark .header-wrapper .navbar-nav .nav-link.dropdown-toggle {
  color: rgba(255, 255, 255, 0.85);
}

header.storefront-header-dark .header-wrapper .navbar-nav .nav-link:hover,
header.storefront-header-dark .header-wrapper .navbar-nav .nav-link.active {
  color: #fff;
}

header.storefront-header-dark .header-wrapper .header-option li a i {
  color: rgba(255, 255, 255, 0.9);
  --color: rgba(255, 255, 255, 0.9);
}

header.storefront-header-dark .header-wrapper .header-option li.cart-option span {
  background-color: rgba(var(--primary-color), 1);
  color: #fff;
}

header.storefront-header-dark .header-wrapper .header-option li a .header-profile-avatar-wrap {
  border-color: rgba(255, 255, 255, 0.35);
}

/* Profile control: keep icon + avatar visible and circular */
header .header-wrapper .header-option li.user-option {
  flex: 0 0 auto !important;
  flex-shrink: 0 !important;
}

header .header-wrapper .header-option li.user-option > a[data-header-profile-link] {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  min-width: 32px;
  min-height: 32px;
  flex: 0 0 32px;
  padding: 0 !important;
  margin: 0 !important;
  line-height: 1 !important;
  overflow: visible;
  border-radius: 0;
}

header .header-wrapper .header-option li.user-option .header-profile-icon {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  color: inherit;
}

header .header-wrapper .header-option li.user-option .header-profile-icon[hidden],
header .header-wrapper .header-option li.user-option .header-profile-icon.is-hidden {
  display: none !important;
}

header .header-wrapper .header-option li.user-option .header-profile-icon i,
header .header-wrapper .header-option li.user-option .header-profile-icon svg {
  width: 24px !important;
  height: 24px !important;
  font-size: 24px !important;
  --size: 24px;
  display: block;
}

header .header-wrapper .header-option li a .header-profile-avatar-wrap,
.menu-mobile-box ul li a .header-profile-avatar-wrap {
  display: block;
  width: 32px;
  height: 32px;
  min-width: 32px;
  min-height: 32px;
  border-radius: 50%;
  overflow: hidden;
  box-sizing: border-box;
  border: 2px solid rgba(var(--border-color), 0.6);
  line-height: 0;
  flex: 0 0 32px;
}

header .header-wrapper .header-option li a .header-profile-avatar-wrap[hidden],
.menu-mobile-box ul li a .header-profile-avatar-wrap[hidden] {
  display: none !important;
}

header .header-wrapper .header-option li a .header-profile-avatar,
.menu-mobile-box ul li a .header-profile-avatar {
  width: 32px !important;
  height: 32px !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
}

header .header-wrapper .header-option li a .header-profile-avatar[hidden],
.menu-mobile-box ul li a .header-profile-avatar[hidden] {
  display: none !important;
}

.menu-mobile-box ul li a .header-profile-avatar-wrap--mobile {
  display: inline-block;
  width: 22px;
  height: 22px;
  min-width: 22px;
  min-height: 22px;
  vertical-align: middle;
  margin-right: 6px;
}

.menu-mobile-box ul li a .header-profile-avatar--mobile {
  width: 22px !important;
  height: 22px !important;
}

.menu-mobile-box ul li a .header-profile-icon {
  display: inline-flex;
  vertical-align: middle;
}

header.storefront-header-dark .header-wrapper .header-search-form {
  background: #fff;
  border-color: #d5d9d9;
}

header.storefront-header-dark .header-wrapper .header-search-form .form-control {
  background: transparent;
  border-color: transparent;
  color: #0f1111;
}

header.storefront-header-dark .header-wrapper .header-search-form .form-control::placeholder {
  color: #9ca3af;
  opacity: 1;
}

header.storefront-header-dark .lang-switcher__btn {
  background: transparent;
  border-color: #fff;
  color: #fff !important;
  box-shadow: none;
}

header.storefront-header-dark .lang-switcher__btn:hover,
header.storefront-header-dark .lang-switcher__btn:focus-visible,
header.storefront-header-dark .lang-switcher.is-open.lang-switcher__btn {
  background: transparent;
  border-color: #fff;
  box-shadow: none;
  color: #fff !important;
}

header.storefront-header-dark .lang-switcher__btn .lang-switcher__label-text,
header.storefront-header-dark .lang-switcher__btn .lang-switcher__caret,
header.storefront-header-dark .lang-switcher__btn i {
  color: #fff !important;
}

header.storefront-header-dark .lang-switcher__caret {
  opacity: 0.85;
}

header.storefront-header-dark .logo .light {
  display: none !important;
}

header.storefront-header-dark .logo .dark {
  display: block !important;
}

header.storefront-header-dark .logo .logo-text {
  color: #fff;
  font-family: var(--roboto, "Roboto", sans-serif);
  font-size: 1.05rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  white-space: nowrap;
}

header.storefront-header-dark .logo img:not([hidden]):not([src=""]) ~ .logo-text {
  display: none;
}

header.storefront-header-dark .navbar-toggler-icon {
  color: #fff;
}

/* Home slider — entire image is clickable when a link is set */
.home-section .home-slider-main-box .home-banner2 a.home-slider-link {
  display: block;
  color: inherit;
  text-decoration: none;
  cursor: pointer;
}

.home-section .home-slider-main-box .home-banner2 a.home-slider-link .slider-bottom .slider-details-label {
  color: #fff;
  text-decoration: underline;
  font-weight: 500;
}

/* Space between fixed header and home banner (match other storefront pages) */
body.color-4 .home-section.st-space {
  padding-top: 24px;
}

body.color-4 .home-section > .container > .st-space {
  padding-top: 0;
}

@media (max-width: 767.98px) {
  body.color-4 .home-section.st-space {
    padding-top: 16px;
  }
}

/* Space between product description box and footer */
.product-details-section {
  padding-bottom: calc(16px + 8 * (100vw - 320px) / 1600);
}

.product-details-section .product-review-box {
  margin-bottom: calc(8px + 4 * (100vw - 320px) / 1600);
}

@media (min-width: 992px) {
  .navbar-expand-lg .navbar-collapse {
    display: flex !important;
    flex-basis: auto !important;
    visibility: visible !important;
    position: static !important;
    left: auto !important;
    right: auto !important;
    width: auto !important;
    height: auto !important;
    overflow: visible !important;
    background: transparent !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  [data-storefront-nav] {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    margin-left: 0 !important;
    margin-right: auto !important;
  }
}

/* Footer — address + contact (no logo); columns size to content with even gaps */
.footer-section .footer-main-row {
  align-items: flex-start;
}

/* Use site body font (Roboto) — theme titles default to Playfair */
.footer-section .footer-title,
.footer-section .contact-title,
.footer-section .newsletter-section .newsletter-box h5,
.footer-section .newsletter-section .newsletter-box .h5,
.footer-section .brand-section p,
.footer-section .footer-address-section .footer-address,
.footer-section .footer-address-section p.footer-address,
.footer-section .footer-address-section .footer-address span,
.footer-section .footer-contact-list li a,
.footer-section .footer-nav-list li a,
.footer-section .newsletter-section .newsletter-box p,
.footer-section .newsletter-section .newsletter-box .newsletter-form input,
.footer-section .newsletter-section .newsletter-box .newsletter-form button,
.footer-section .footer-bottom,
.footer-section .footer-bottom .copyright {
  font-family: var(--roboto, "Roboto", sans-serif);
}

.footer-section .footer-address-section .footer-address,
.footer-section .footer-address-section p.footer-address {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: rgba(255, 255, 255, 0.65);
  font-size: calc(14px + 1 * (100vw - 320px) / 1600);
  line-height: 1.55;
  margin: 0 0 14px;
  width: 100%;
  white-space: pre-line;
}

.footer-section .footer-address-section .footer-address i {
  flex-shrink: 0;
  margin-top: 2px;
  font-size: 16px;
  color: #fff;
}

.footer-section .footer-contact-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 10px;
}

.footer-section .footer-contact-list li a {
  display: inline-flex;
  align-items: flex-start;
  gap: 10px;
  color: rgba(255, 255, 255, 0.72);
  font-size: 14px;
  line-height: 1.35;
  text-decoration: none;
  word-break: break-word;
}

.footer-section .footer-contact-list li a i {
  flex-shrink: 0;
  margin-top: 1px;
  font-size: 16px;
  color: #fff;
}

.footer-section .footer-contact-list li a:hover {
  color: #fff;
}

.footer-section .footer-contact-list li a:hover i {
  color: #fff;
}

/* Desktop: content-width columns, equal space between (not equal column widths) */
@media (min-width: 1200px) {
  .footer-section .footer-main-row {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: flex-start;
    column-gap: clamp(16px, 2vw, 36px);
  }

  .footer-section .footer-main-row > [class*="col-"] {
    flex: 0 1 auto;
    width: auto !important;
    max-width: none;
    padding-left: 0;
    padding-right: 0;
  }

  /* Address + newsletter need a readable max width; nav cols hug their links */
  .footer-section .footer-main-row > [class*="col-"]:first-child {
    max-width: 260px;
  }

  .footer-section .footer-main-row > [class*="col-"]:last-child {
    max-width: 280px;
  }
}

/* Home certificates — compact height, more certificates visible */
.home-certificates-section.live-collection-4 {
  padding-bottom: calc(12px + 18 * (100vw - 320px) / 1600);
}

.home-certificates-section .certificates-title {
  margin-bottom: 2px;
  padding-bottom: 0;
  line-height: 1.1;
}

.home-certificates-section .live-collection-wrapper {
  margin-bottom: 0;
}

.home-certificates-section .main-collection .bags-slider {
  max-width: 100%;
}

.home-certificates-section .main-collection .bags-slider .slides {
  height: 450px !important;
  gap: 14px;
  max-width: none;
}

.home-certificates-section .main-collection .bags-slider .slides img {
  width: 340px;
  height: 345px;
  object-fit: contain;
  background: #fff;
  padding: 8px;
  box-sizing: border-box;
}

@media (max-width: 1399.98px) {
  .home-certificates-section .main-collection .bags-slider .slides {
    height: 420px !important;
  }
}

@media (max-width: 1199.98px) {
  .home-certificates-section .main-collection .bags-slider .slides {
    height: 390px !important;
  }
}

@media (max-width: 991.98px) {
  .home-certificates-section .main-collection .bags-slider .slides {
    height: auto !important;
    min-height: 0;
  }

  .home-certificates-section .main-collection .bags-slider .slides img {
    width: min(100%, 420px);
    height: auto;
    max-height: 400px;
    margin-inline: auto;
  }
}

/* Cart page + cart popup: qty + variant under product title */
.cart-item-qty,
.cart-item-variant {
  margin-top: 2px;
  font-size: 13px;
  line-height: 1.35;
  color: rgba(var(--title-color), 0.65);
}

.cart-item-variant span {
  color: rgba(var(--title-color), 0.9);
  font-weight: 600;
}

.offcanvas.cart-offcanvas .cart-item-qty,
.offcanvas.cart-offcanvas .cart-item-variant {
  margin: 2px 0 4px;
  font-size: 12px;
}

/* Cart sidebar: only product list scrolls; View Cart / Checkout stay pinned */
.offcanvas.cart-offcanvas {
  display: flex;
  flex-direction: column;
}

.offcanvas.cart-offcanvas .offcanvas-header {
  flex-shrink: 0;
}

.offcanvas.cart-offcanvas .offcanvas-body {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  padding: 0;
}

.offcanvas.cart-offcanvas .cart-offcanvas-loading,
.offcanvas.cart-offcanvas [data-cart-error],
.offcanvas.cart-offcanvas .no-cart {
  flex-shrink: 0;
}

.offcanvas.cart-offcanvas .cart-product-box {
  flex: 1 1 auto;
  min-height: 0;
  height: auto;
  max-height: none;
  overflow-x: hidden;
  overflow-y: auto;
}

.offcanvas.cart-offcanvas .total-price-box {
  flex-shrink: 0;
  margin-top: auto;
}

/* Brand lock — beats style.css :root green primary */
html.ksi-storefront,
html.color-4,
body.color-4 {
  --primary-color: 69, 97, 115 !important;
  --theme-dark: 33, 52, 64 !important;
  --theme-light: 118, 152, 166 !important;
}

/* Order history Paid / Unpaid tags */
.user-dashboard-section .dashboard-right-sidebar .order-card .status-badge.payment-badge.paid {
  background-color: rgba(var(--success-color, 25, 149, 136), 0.12);
  color: rgba(var(--success-color, 25, 149, 136), 1);
}
.user-dashboard-section .dashboard-right-sidebar .order-card .status-badge.payment-badge.unpaid {
  background-color: rgba(var(--error, 220, 38, 38), 0.12);
  color: rgba(var(--error, 220, 38, 38), 1);
}
.user-dashboard-section .dashboard-right-sidebar .order-card .order-number-date .status-badge.payment-badge {
  padding: 6px 12px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.4px;
  text-transform: uppercase;
}

/* Pay now — solid action button on order cards */
.user-dashboard-section .dashboard-right-sidebar .order-card .card-footer .btn-group .btn.btn-pay {
  background-color: rgb(69, 97, 115);
  background-color: rgba(var(--primary-color), 1);
  color: #fff !important;
  border: 1px solid rgba(var(--primary-color), 1);
  cursor: pointer;
}
.user-dashboard-section .dashboard-right-sidebar .order-card .card-footer .btn-group .btn.btn-pay:hover:not(:disabled) {
  background-color: transparent;
  color: rgba(var(--primary-color), 1) !important;
  box-shadow: 0 5px 15px rgba(var(--primary-color), 0.2);
}
.user-dashboard-section .dashboard-right-sidebar .order-card .card-footer .btn-group .btn.btn-pay:disabled {
  opacity: 0.7;
  cursor: wait;
}

/* Align dashboard welcome with left sidebar top */
.user-dashboard-section > .container > .row {
  align-items: flex-start;
}

.user-dashboard-section .col-xxl-9 > .tab-content,
.user-dashboard-section .col-xl-8 > .tab-content {
  margin-top: 0;
  padding-top: 0;
}

.user-dashboard-section .tab-content > .tab-pane {
  margin-top: 0;
  padding-top: 0;
}

.user-dashboard-section .dashboard-right-sidebar {
  padding-top: 0;
}

.user-dashboard-section .dashboard-right-sidebar > .dashboard-welcome:first-child,
.user-dashboard-section .dashboard-right-sidebar > .dashboard-inner-title:first-child {
  margin-top: 0;
  /* Match left sidebar card top — keep only a tight inset so text isn't flush to the border */
  padding-top: calc(6px + 2 * (100vw - 320px) / 1600);
}

.user-dashboard-section .dashboard-right-sidebar > .dashboard-welcome:first-child h3,
.user-dashboard-section .dashboard-right-sidebar > .dashboard-inner-title:first-child h3 {
  margin-top: 0;
}


/* Cart page table: keep Price / Quantity / Total / Action aligned under headers */
.cart-section .cart-table-container .cart-table {
  table-layout: fixed;
  width: 100%;
}

.cart-section .cart-table-container .cart-table thead th:nth-child(2),
.cart-section .cart-table-container .cart-table thead th:nth-child(3),
.cart-section .cart-table-container .cart-table thead th:nth-child(4),
.cart-section .cart-table-container .cart-table thead th:nth-child(5) {
  width: auto;
}

.cart-section .cart-table-container .cart-table thead th:nth-child(1),
.cart-section .cart-table-container .cart-table tbody tr td:nth-child(1) {
  width: 34%;
  min-width: 0;
  max-width: none;
}

.cart-section .cart-table-container .cart-table thead th:nth-child(2),
.cart-section .cart-table-container .cart-table tbody tr td.cart-col-price {
  width: 16%;
  text-align: center;
}

.cart-section .cart-table-container .cart-table thead th:nth-child(3),
.cart-section .cart-table-container .cart-table tbody tr td.cart-col-qty {
  width: 16%;
  text-align: center;
}

.cart-section .cart-table-container .cart-table thead th:nth-child(4),
.cart-section .cart-table-container .cart-table tbody tr td.cart-col-total {
  width: 18%;
  text-align: center;
}

.cart-section .cart-table-container .cart-table thead th:nth-child(5),
.cart-section .cart-table-container .cart-table thead th.action-col,
.cart-section .cart-table-container .cart-table tbody tr td.cart-col-action {
  width: 16%;
  min-width: 88px;
  text-align: center;
}

.cart-section .cart-table-container .cart-table tbody tr td.cart-col-price .price,
.cart-section .cart-table-container .cart-table tbody tr td.cart-col-total .price {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  margin: 0;
  width: 100%;
}

.cart-section .cart-table-container .cart-table tbody tr td.cart-col-qty .qty-box-simple {
  margin-left: auto;
  margin-right: auto;
}

.cart-section .cart-table-container .cart-table tbody tr td.cart-col-action .cart-btn-group {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  min-height: 32px;
}

.cart-section .cart-table-container .cart-table tbody tr td.cart-col-action .cart-btn-group a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
}


/* Cart page layout: Coupons matches Your Cart; Apply Coupon aligns with cart table */
.cart-section > .container > .row {
  align-items: flex-start;
}

.cart-section .cart-header-row {
  display: flex;
  align-items: center;
  min-height: 2.5rem;
  margin-bottom: 1rem !important;
}

.cart-section .cart-header-row h4 {
  font-family: var(--roboto, "Roboto", sans-serif);
  font-size: calc(22px + 8 * (100vw - 320px) / 1600);
  font-weight: 600;
  line-height: 1.3;
  margin: 0;
  color: rgba(var(--title-color), 1);
}

.cart-section .cart-sidebar .cart-header-row {
  margin-bottom: 1rem !important;
}

.cart-section .cart-sidebar .coupon-box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  width: 100%;
  margin: 0;
  padding: 14px 16px;
  min-height: 52px;
  border: 1px solid rgba(var(--border-color), 1);
  border-radius: 8px;
  background-color: rgba(var(--white), 1);
  box-sizing: border-box;
}

.cart-section .cart-sidebar .coupon-box .label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--roboto, "Roboto", sans-serif);
  font-size: 15px;
  font-weight: 500;
  line-height: 1.3;
  color: rgba(var(--primary-color), 1);
  white-space: nowrap;
}

.cart-section .cart-sidebar .coupon-box .label i,
.cart-section .cart-sidebar .coupon-box .arrow {
  flex-shrink: 0;
  line-height: 1;
  font-size: 18px;
  color: rgba(var(--primary-color), 1);
}

.cart-section .cart-table-container .table-responsive {
  border-radius: 8px;
}

.cart-section .cart-sidebar .price-details h5 {
  font-family: var(--roboto, "Roboto", sans-serif);
  font-size: calc(16px + 2 * (100vw - 320px) / 1600);
  font-weight: 600;
}
