@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800&display=swap');

*, ::before, ::after{
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

::backdrop{
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/

/*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/

*,
::before,
::after {
  box-sizing: border-box;
  /* 1 */
  border-width: 0;
  /* 2 */
  border-style: solid;
  /* 2 */
  border-color: #e5e7eb;
  /* 2 */
}

::before,
::after {
  --tw-content: '';
}

/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
6. Use the user's configured `sans` font-variation-settings by default.
7. Disable tap highlights on iOS
*/

html,
:host {
  line-height: 1.5;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -moz-tab-size: 4;
  /* 3 */
  -o-tab-size: 4;
     tab-size: 4;
  /* 3 */
  font-family: Poppins, Arial, sans-serif;
  /* 4 */
  font-feature-settings: normal;
  /* 5 */
  font-variation-settings: normal;
  /* 6 */
  -webkit-tap-highlight-color: transparent;
  /* 7 */
}

/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/

body {
  margin: 0;
  /* 1 */
  line-height: inherit;
  /* 2 */
}

/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/

hr {
  height: 0;
  /* 1 */
  color: inherit;
  /* 2 */
  border-top-width: 1px;
  /* 3 */
}

/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/

abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/*
Remove the default font size and weight for headings.
*/

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

/*
Reset links to optimize for opt-in styling instead of opt-out.
*/

a {
  color: inherit;
  text-decoration: inherit;
}

/*
Add the correct font weight in Edge and Safari.
*/

b,
strong {
  font-weight: bolder;
}

/*
1. Use the user's configured `mono` font-family by default.
2. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. Correct the odd `em` font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  /* 1 */
  font-feature-settings: normal;
  /* 2 */
  font-variation-settings: normal;
  /* 3 */
  font-size: 1em;
  /* 4 */
}

/*
Add the correct font size in all browsers.
*/

small {
  font-size: 80%;
}

/*
Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/

table {
  text-indent: 0;
  /* 1 */
  border-color: inherit;
  /* 2 */
  border-collapse: collapse;
  /* 3 */
}

/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-feature-settings: inherit;
  /* 1 */
  font-variation-settings: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  font-weight: inherit;
  /* 1 */
  line-height: inherit;
  /* 1 */
  letter-spacing: inherit;
  /* 1 */
  color: inherit;
  /* 1 */
  margin: 0;
  /* 2 */
  padding: 0;
  /* 3 */
}

/*
Remove the inheritance of text transform in Edge and Firefox.
*/

button,
select {
  text-transform: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/

button,
input:where([type='button']),
input:where([type='reset']),
input:where([type='submit']) {
  -webkit-appearance: button;
  /* 1 */
  background-color: transparent;
  /* 2 */
  background-image: none;
  /* 2 */
}

/*
Use the modern Firefox focus style for all focusable elements.
*/

:-moz-focusring {
  outline: auto;
}

/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/

:-moz-ui-invalid {
  box-shadow: none;
}

/*
Add the correct vertical alignment in Chrome and Firefox.
*/

progress {
  vertical-align: baseline;
}

/*
Correct the cursor style of increment and decrement buttons in Safari.
*/

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/*
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/

[type='search'] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/*
Remove the inner padding in Chrome and Safari on macOS.
*/

::-webkit-search-decoration {
  -webkit-appearance: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/

::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/*
Add the correct display in Chrome and Safari.
*/

summary {
  display: list-item;
}

/*
Removes the default spacing and border for appropriate elements.
*/

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

/*
Reset default styling for dialogs.
*/

dialog {
  padding: 0;
}

/*
Prevent resizing textareas horizontally by default.
*/

textarea {
  resize: vertical;
}

/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/

input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1;
  /* 1 */
  color: #9ca3af;
  /* 2 */
}

input::placeholder,
textarea::placeholder {
  opacity: 1;
  /* 1 */
  color: #9ca3af;
  /* 2 */
}

/*
Set the default cursor for buttons.
*/

button,
[role="button"] {
  cursor: pointer;
}

/*
Make sure disabled buttons don't get the pointer cursor.
*/

:disabled {
  cursor: default;
}

/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block;
  /* 1 */
  vertical-align: middle;
  /* 2 */
}

/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/

img,
video {
  max-width: 100%;
  height: auto;
}

/* Make elements with the HTML hidden attribute stay hidden by default */

[hidden]:where(:not([hidden="until-found"])) {
  display: none;
}

.\!container{
  width: 100% !important;
}

.container{
  width: 100%;
}

@media (min-width: 640px){
  .\!container{
    max-width: 640px !important;
  }

  .container{
    max-width: 640px;
  }
}

@media (min-width: 768px){
  .\!container{
    max-width: 768px !important;
  }

  .container{
    max-width: 768px;
  }
}

@media (min-width: 1024px){
  .\!container{
    max-width: 1024px !important;
  }

  .container{
    max-width: 1024px;
  }
}

@media (min-width: 1280px){
  .\!container{
    max-width: 1280px !important;
  }

  .container{
    max-width: 1280px;
  }
}

@media (min-width: 1536px){
  .\!container{
    max-width: 1536px !important;
  }

  .container{
    max-width: 1536px;
  }
}

.container-page{
  margin-left: auto;
  margin-right: auto;
  width: 85%;
  max-width: 85%;
}

/* iPad Pro & tablet: wider content area */

@media (min-width: 768px) and (max-width: 1366px) {
  .container-page {
    width: 90%;
    max-width: 90%;
  }
}

.nav-link{
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

.nav-link:hover{
  --tw-text-opacity: 1;
  color: rgb(164 22 26 / var(--tw-text-opacity, 1));
}

.header-action{
  display: flex;
  height: 100%;
  align-items: center;
  gap: 0.5rem;
  white-space: nowrap;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.header-action.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.header-action.h-\[68px\] {
    gap: 12px;
  }
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .header-action.desktop-search INPUT{
    width: 250px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.header-action.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item .mt-1.flex.header-action.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

.header-action:hover{
  --tw-text-opacity: 1;
  color: rgb(164 22 26 / var(--tw-text-opacity, 1));
}

.action-icon{
  width: 24px;
}

.category-tab{
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  border-right-width: 1px;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 700;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.category-tab.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.category-tab.h-\[68px\] {
    gap: 12px;
  }
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .category-tab.desktop-search INPUT{
    width: 250px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.category-tab.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item .mt-1.flex.category-tab.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item .mt-1.flex.items-center.category-tab {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

.category-tab:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(246 246 246 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(164 22 26 / var(--tw-text-opacity, 1));
}

.category-tab:first-child{
  border-left-width: 1px;
}

.category-tab img{
  width: 24px;
}

/* .category-icon {
    @apply text-[40px] leading-none text-brand-red;
  } */

.mega-item{
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  font-size: 16px;
  font-weight: 500;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.mega-item.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.mega-item.h-\[68px\] {
    gap: 12px;
  }
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .mega-item.desktop-search INPUT{
    width: 250px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.mega-item.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item .mt-1.flex.mega-item.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

.mega-item:hover{
  --tw-text-opacity: 1;
  color: rgb(164 22 26 / var(--tw-text-opacity, 1));
}

.product-mini{
  position: relative;
  display: grid;
  height: 96px;
  width: 96px;
  place-items: center;
  border-radius: 8px;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(221 221 221 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(250 250 250 / var(--tw-bg-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

@media (max-width: 767px) {
  #sale-mobile-featured .product-mini.z-\[1\] {
    margin-top: 20px;
    gap: 20px;
  }

  #sale-mobile-featured .product-mini.rounded-2xl.bg-white {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

@media (min-width: 1024px) and (max-width: 1366px) {
  [data-products-desktop] .product-mini.rounded-3xl {
    padding: 12px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item > .product-mini {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
  }

  .cart-summary-item > .grid > .product-mini {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }

  .cart-summary-item > .product-mini > .relative {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }

  .cart-summary-item > .product-mini > .shrink-0 {
    align-self: center;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .product-mini {
    grid-template-columns: 96px minmax(0, 1fr) auto;
    min-height: 120px;
    padding: 12px;
    -moz-column-gap: 22px;
         column-gap: 22px;
  }

  .cart-summary-item > .grid > .product-mini {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .product-mini > .relative {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .grid > .product-mini .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }

  .cart-summary-item > .product-mini > .relative .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .product-mini {
    grid-template-columns: 86px minmax(0, 1fr) auto;
    -moz-column-gap: 16px;
         column-gap: 16px;
  }

  .cart-summary-item > .grid > .product-mini {
    width: 86px;
    height: 86px;
  }

  .cart-summary-item > .product-mini > .relative {
    width: 86px;
    height: 86px;
  }
}

.product-mini:before {
  content: '';
  position: absolute;
  border-radius: 0.25rem;
  --tw-bg-opacity: 1;
  background-color: rgb(209 213 219 / var(--tw-bg-opacity, 1));
}

@media (max-width: 767px) {
  #sale-mobile-featured .product-mini.-top-1.left-5:before {
    left: -4px;
    top: -9px;
    width: 98px;
    height: 76px;
  }

  #sale-mobile-featured .product-mini.-top-1.left-5:before::before,
  #sale-mobile-featured .product-mini.-top-1.left-5:before::after {
    content: '';
    position: absolute;
    height: 1.4px;
    background: #1f1919;
    z-index: -1;
  }

  #sale-mobile-featured .product-mini.-top-1.left-5:before::before {
    left: 7px;
    top: 19px;
    width: 55px;
    transform: rotate(-20deg);
  }

  #sale-mobile-featured .product-mini.-top-1.left-5:before::after {
    left: 54px;
    top: 10px;
    width: 43px;
    transform: rotate(35deg);
    transform-origin: left center;
  }

  #sale-mobile-featured .product-mini.-top-1.left-5 > div:before {
    position: absolute;
    left: 51px;
    top: 4px;
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: #1f1919;
  }

  #sale-mobile-featured .product-mini.-top-1.left-5 > span:before {
    position: absolute;
    left: 0;
    top: 28px;
    min-width: 98px;
    border-radius: 7px;
    background: #11814b;
    padding: 8px 18px;
    color: #fff;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
    text-transform: none;
    transform: rotate(6deg);
  }
}

.mega-item:hover .product-mini {
  border-color: rgb(178 22 29 / var(--tw-border-opacity, 1));
}

.flood:before {
  width: 54px;
  height: 28px;
  border-radius: 999px;
  background: #262626;
  box-shadow: 22px 0 0 #222, -22px 0 0 #222;
}

.downlight:before {
  width: 54px;
  height: 28px;
  border-radius: 50%;
  background: #ececef;
  box-shadow: 0 -8px 0 #191919;
}

.dimmer:before {
  width: 46px;
  height: 46px;
  border: 3px solid #b2161d;
  background: transparent;
  border-left-color: transparent;
  border-bottom-color: transparent;
  transform: rotate(-35deg);
}

.sensor:before {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: #edf5f2;
  border: 2px solid #d8e2df;
  box-shadow: 12px 0 0 #eef4f3;
}

.\!card{
  border-radius: 0.75rem;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(229 231 235 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.rounded-2xl.\!card {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

.\!card:hover{
  --tw-translate-y: -0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  --tw-shadow: 0 3px 12px rgba(0,0,0,.18);
  --tw-shadow-colored: 0 3px 12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.card{
  border-radius: 0.75rem;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(229 231 235 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.rounded-2xl.card {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

.card:hover{
  --tw-translate-y: -0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  --tw-shadow: 0 3px 12px rgba(0,0,0,.18);
  --tw-shadow-colored: 0 3px 12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

/* Reusable section heading pattern: BLACK WORD + bold red WORD with stacked outline */

.section-heading{
  font-size: 28px;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 0.95;
  letter-spacing: -0.025em;
  --tw-text-opacity: 1;
  color: rgb(31 25 25 / var(--tw-text-opacity, 1));
}

@media (min-width: 640px){
  .section-heading{
    font-size: 34px;
  }
}

@media (min-width: 1024px){
  .section-heading{
    font-size: 48px;
  }
}

.section-heading-accent{
  position: relative;
  display: inline-block;
  vertical-align: baseline;
}

@media (max-width: 767px) {
  #sale-mobile-featured .section-heading-accent.z-\[1\] {
    margin-top: 20px;
    gap: 20px;
  }

  #sale-mobile-featured .section-heading-accent.rounded-2xl.bg-white {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

@media (min-width: 1024px) and (max-width: 1366px) {
  [data-products-desktop] .section-heading-accent.rounded-3xl {
    padding: 12px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item > .grid > .section-heading-accent {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .grid > .section-heading-accent {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .grid > .section-heading-accent .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .grid > .section-heading-accent {
    width: 86px;
    height: 86px;
  }
}

/* Accent word: light pink fill with a red border (no offset shadow) */

.section-heading-front{
  position: relative;
  display: inline-block;
}

@media (max-width: 767px) {
  #sale-mobile-featured .section-heading-front.z-\[1\] {
    margin-top: 20px;
    gap: 20px;
  }

  #sale-mobile-featured .section-heading-front.rounded-2xl.bg-white {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

@media (min-width: 1024px) and (max-width: 1366px) {
  [data-products-desktop] .section-heading-front.rounded-3xl {
    padding: 12px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item > .grid > .section-heading-front {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .grid > .section-heading-front {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .grid > .section-heading-front .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .grid > .section-heading-front {
    width: 86px;
    height: 86px;
  }
}

.section-heading-front {
  color: #ECCACB;
  -webkit-text-stroke: 1.5px #b2161d;
  letter-spacing: 1px !important;
}

/* Shadow layer disabled — kept so existing markup stays valid */

.section-heading-shadow {
  display: none;
}

@media (max-width: 1023px) {
  .footer-brand-col .section-heading-lead {
    justify-content: flex-start;
  }
}

.section-heading-lead{
  margin-top: 0.75rem;
  max-width: 56rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  --tw-text-opacity: 1;
  color: rgb(82 82 82 / var(--tw-text-opacity, 1));
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.flex.items-center.section-heading-lead {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

@media (min-width: 640px){
  .section-heading-lead{
    font-size: 1rem;
    line-height: 1.5rem;
  }
}

/* Hide horizontal scrollbar but keep scrolling */

.scrollbar-none {
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.scrollbar-none::-webkit-scrollbar {
  display: none;
}

/* FAQ tabs: horizontal scroll on small devices, centered on md+ */

.faq-tabs-wrapper {
  -webkit-overflow-scrolling: touch;
  text-align: center;
}

.faq-tabs {
  display: inline-flex;
  gap: 18px;
  padding: 6px 12px;
  align-items: center;
}

/* Small devices: allow scrolling and hide scrollbar visually */

@media (max-width: 767px) {
  .faq-tabs-wrapper {
    overflow-x: auto;
    -ms-overflow-style: none;
    /* IE and Edge */
    scrollbar-width: none;
    /* Firefox */
  }

  .faq-tabs-wrapper::-webkit-scrollbar {
    display: none;
  }

  .faq-tabs {
    padding: 8px 10px;
    gap: 7px;
  }

  .faq-tabs button {
    font-size: 14px !important;
  }
}

@media (max-width: 480px) {
  .faq-tabs {
    padding: 8px 10px;
    gap: 7px;
  }

  .faq-tabs button {
    font-size: 12px !important;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }

  .faq-tabs button img {
    display: none;
  }
}

/* Medium+ screens: keep tabs centered and visible */

@media (min-width: 768px) {
  .faq-tabs-wrapper {
    overflow: visible;
  }

  .faq-tabs {
    justify-content: center;
  }
}

/* FAQ accordion styling (summary + content) */

.listing-faq__list details{
  border: 1px solid #e7e7e7;
  border-radius: 10px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0px 2px 6px rgba(0,0,0,0.14);
  /* default closed card shadow */
  transition: box-shadow 200ms ease, border-color 200ms ease;
  height: auto;
}

.listing-faq__list details + details {
  margin-top: 16px;
}

.listing-faq__list summary{
  cursor: pointer;
  list-style: none;
  padding: 17px 22px;
  border-radius: 10px;
  height: 60px;
  background: #FFFFFF;
  box-shadow: none;
  /* summary doesn't need its own shadow when whole card already has it */
  display: flex;
  align-items: center;
  gap: 12px;
  -webkit-user-select: none;
  -moz-user-select: none;
       user-select: none;
}

.listing-faq__list summary::-webkit-details-marker{
  display:none;
}

/* Q badge on the left */

.listing-faq__list summary::before{
  content: 'Q';
  display: inline-grid;
  place-items: center;
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  border-radius: 8px;
  background: #FBEAEA;
  /* soft pink */
  color: #A51D1D;
  /* brand red */
  font-weight: 700;
  font-size: 14px;
  margin-right:12px;
}

/* caret circle on the right */

.listing-faq__list summary::after{
  content: '';
  margin-left: auto;
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  border-radius: 999px;
  border: 1px solid #e6e6e6;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 14px 14px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6 9l6 6 6-6' stroke='%23666' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>");
}

/* content area */

.listing-faq__list details p,
  .listing-faq__list details .faq-content{
  padding: 16px 18px 22px;
  margin: 0;
  color: #555;
  border-top: 1px solid #f0f0f0;
  line-height: 1.6;
  background: transparent;
}

/* open state styling */

.listing-faq__list details[open]{
  border-color: #A51D1D;
  box-shadow: 0 8px 30px rgba(165,29,29,0.12), 0 0 0 6px rgba(165,29,29,0.06);
}

.listing-faq__list details[open] summary{
  color: #A51D1D;
  font-weight: 700;
}

.listing-faq__list details[open] summary::before{
  background: #F6D7D7;
  color: #A51D1D;
}

.listing-faq__list details[open] summary::after{
  border-color: #A51D1D;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6 15l6-6 6 6' stroke='%23A51D1D' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>");
}

/* smaller devices: slightly reduce paddings */

@media (max-width: 639px){
  .listing-faq__list summary{
    padding: 12px 12px;
  }

  .listing-faq__list summary::before, .listing-faq__list summary::after{
    width:32px;
    height:32px;
    flex:0 0 32px;
  }

  .listing-faq__list details p{
    padding: 12px;
  }
}

/* Click-and-drag scrolling affordance for horizontal carousels */

.drag-scroll.is-dragging {
  cursor: grabbing;
  scroll-snap-type: none;
  scroll-behavior: auto;
}

.drag-scroll.is-dragging img,
  .drag-scroll.is-dragging a {
  pointer-events: none;
}

.drag-scroll.is-dragging {
  cursor: grabbing;
  scroll-snap-type: none;
  scroll-behavior: auto;
}

.drag-scroll.is-dragging img,
  .drag-scroll.is-dragging a {
  pointer-events: none;
}

/* Trending This Month card */

.trending-card{
  display: flex;
  flex-shrink: 0;
  flex-direction: column;
  overflow: hidden;
  border-radius: 1rem;
  border-width: 1px;
  border-color: transparent;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  --tw-shadow: 0 4px 14px rgba(0,0,0,0.08);
  --tw-shadow-colored: 0 4px 14px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.trending-card.bg-white {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }

  #sale-mobile-featured .relative.rounded-2xl.trending-card {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

@media (min-width: 1024px) and (max-width: 1366px) {
  footer .trending-card.rounded-3xl.bg-\[\#1a1514\] {
    padding: 2rem 1.25rem;
  }

  .container-page.trending-card.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.trending-card.h-\[68px\] {
    gap: 12px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.trending-card.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item > .grid > .trending-card {
    align-self: center;
  }
}

.trending-card {
  box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.08);
  margin-bottom: 20px;
}

.trending-card:hover {
  border: 1px solid #A51D1D;
}

.trending-card-media{
  position: relative;
  aspect-ratio: 3/4;
  overflow: hidden;
}

@media (max-width: 767px) {
  #sale-mobile-featured .trending-card-media.z-\[1\] {
    margin-top: 20px;
    gap: 20px;
  }

  #sale-mobile-featured .trending-card-media.rounded-2xl.bg-white {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

@media (min-width: 1024px) and (max-width: 1366px) {
  footer .trending-card-media.rounded-3xl.bg-\[\#1a1514\] {
    padding: 2rem 1.25rem;
  }

  [data-products-desktop] .trending-card-media.rounded-3xl {
    padding: 12px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item > .grid > .trending-card-media {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .grid > .trending-card-media {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .grid > .trending-card-media .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .grid > .trending-card-media {
    width: 86px;
    height: 86px;
  }
}

.trending-card-media {
  background:
      radial-gradient(circle at 50% 42%, rgba(255, 245, 215, 0.85) 0%, rgba(255, 225, 160, 0.35) 22%, transparent 55%),
      linear-gradient(135deg, #3b5a4c 0%, #2d4a3e 45%, #1f3b30 100%);
}

.trending-card-media img{
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.trending-card-media::after {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle at 50% 42%, rgba(255, 255, 255, 0.55) 0%, transparent 30%);
  mix-blend-mode: screen;
  pointer-events: none;
}

/* .trending-play-btn {
    @apply absolute bottom-3 right-3 z-10 inline-flex items-center gap-1.5 rounded-full bg-brand-red px-3.5 py-1.5 text-[11px] font-bold uppercase tracking-wide text-white shadow-lg transition hover:bg-brand-dark;
  } */

/* Carousel / slider fixes for small & medium devices
     - ensure touch scrolling is smooth
     - ensure cards don't shrink and have predictable min-widths so they don't get visually cut
     - keep existing large-screen grid behavior untouched */

.overflow-x-auto {
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scroll-padding-left: 1rem;
  /* small safe inset so first card isn't clipped */
  scroll-padding-right: 1rem;
}

/* Make slider cards behave as fixed-width scroll items (prevent shrink) */

.overflow-x-auto:not([data-review-scroller]) .trending-card,
  .overflow-x-auto:not([data-review-scroller]) .review-card-wrap,
  [data-products-track] > * {
  flex: 0 0 auto;
  scroll-snap-align: center;
}

.swiper-wrapper {
  gap: 0 !important;
}

[data-review-scroller]:not(.swiper) .review-card-wrap {
  flex: 0 0 auto;
  scroll-snap-align: start;
}

/* Mobile (<768px): strictly 1 card full width (100%) so no other card shows or cuts */

@media (max-width: 767px) {
  [data-products-track]:not(.swiper-wrapper) > .product-mobile-slide,
    .overflow-x-auto:not(.swiper) .review-card-wrap,
    .overflow-x-auto:not(.swiper) .trending-card,
    [data-trend-scroller]:not(.swiper) .trending-card {
    min-width: 100%;
    max-width: 100%;
    width: 100%;
    flex: 0 0 100%;
    box-sizing: border-box;
  }

  [data-review-scroller]:not(.swiper) .review-card-wrap {
    min-width: 0;
    max-width: 100%;
  }
}

.swiper-slide {
  box-sizing: border-box !important;
  height: auto;
}

/* Small/medium tablet (768px to 1023px): 2 cards per view cleanly fitting container */

@media (min-width: 768px) and (max-width: 1023px) {
  .overflow-x-auto:not(.swiper) .trending-card,
    [data-trend-scroller]:not(.swiper) .trending-card {
    min-width: calc((100% - 20px) / 2);
    max-width: calc((100% - 20px) / 2);
    width: calc((100% - 20px) / 2);
    flex: 0 0 calc((100% - 20px) / 2);
    box-sizing: border-box;
  }

  .overflow-x-auto:not([data-review-scroller]):not(.swiper) .review-card-wrap,
    [data-products-track]:not(.swiper-wrapper) > * {
    min-width: calc((100% - 20px) / 2);
    max-width: calc((100% - 20px) / 2);
  }
}

/* Desktop (1024px+): 4 cards per view cleanly fitting 100% of container width */

@media (min-width: 1024px) {
  .overflow-x-auto:not([data-review-scroller]) {
    scroll-snap-type: none;
  }

  .overflow-x-auto:not(.swiper) .trending-card,
    [data-trend-scroller]:not(.swiper) .trending-card {
    min-width: calc((100% - 72px) / 4);
    max-width: calc((100% - 72px) / 4);
    width: calc((100% - 72px) / 4);
    flex: 0 0 calc((100% - 72px) / 4);
    box-sizing: border-box;
  }

  .overflow-x-auto:not([data-review-scroller]):not(.swiper) .review-card-wrap {
    min-width: calc((100% - 72px) / 4);
    max-width: calc((100% - 72px) / 4);
  }

  [data-products-track]:not(.swiper-wrapper) > * {
    min-width: 0;
    max-width: none;
  }
}

/* Unified slider dots UI across the site */

[data-products-dots] button:not(.review-dot),
  [data-review-dots] button:not(.review-dot),
  [data-trend-dots] button:not(.review-dot) {
  height: 8px;
  /* 2.5 * 0.25rem */
  width: 8px;
  border-radius: 9999px;
  background-color: #000000;
  /* neutral-300 */
  transition: transform 180ms ease, background-color 180ms ease, box-shadow 180ms ease;
  border: none;
  padding: 0;
  display: inline-block;
  cursor: pointer;
}

[data-products-dots] button:not(.review-dot):hover,
  [data-review-dots] button:not(.review-dot):hover,
  [data-trend-dots] button:not(.review-dot):hover {
  background-color: #A51D1D;
  /* neutral-400 */
}

/* Active dot (the same appearance site-wide) */

[data-products-dots] button:not(.review-dot)[aria-current="true"],
  [data-review-dots] button:not(.review-dot)[aria-current="true"],
  [data-trend-dots] button:not(.review-dot)[aria-current="true"] {
  background-color: #A51D1D;
  /* brand red */
  transform: scale(1.25);
  /* box-shadow: 0 0 0 6px rgba(165,29,29,0.14); */
}

.side-panel{
  position: fixed;
  right: 0px;
  top: 0px;
  z-index: 9999;
  height: 100dvh;
  width: 100%;
  max-width: 350px;
  --tw-translate-x: 100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  overflow-y: auto;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.rounded-2xl.side-panel {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

.side-panel.is-open{
  --tw-translate-x: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.modal-backdrop{
  position: fixed;
  inset: 0px;
  z-index: 90;
  display: none;
  background-color: rgb(31 25 25 / 0.8);
}

.modal-backdrop.is-open{
  display: block;
}

.close-btn{
  display: grid;
  height: 35px;
  width: 35px;
  place-items: center;
  border-radius: 8px;
  --tw-bg-opacity: 1;
  background-color: rgb(164 22 26 / var(--tw-bg-opacity, 1));
  font-size: 1.875rem;
  line-height: 2.25rem;
  line-height: 1;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

@media (max-width: 1023px) {
  .cart-summary-item > .close-btn {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
  }

  .cart-summary-item > .close-btn > .relative {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }

  .cart-summary-item > .close-btn > .shrink-0 {
    align-self: center;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .close-btn {
    grid-template-columns: 96px minmax(0, 1fr) auto;
    min-height: 120px;
    padding: 12px;
    -moz-column-gap: 22px;
         column-gap: 22px;
  }

  .cart-summary-item > .close-btn > .relative {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .close-btn > .relative .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .close-btn {
    grid-template-columns: 86px minmax(0, 1fr) auto;
    -moz-column-gap: 16px;
         column-gap: 16px;
  }

  .cart-summary-item > .close-btn > .relative {
    width: 86px;
    height: 86px;
  }
}

.close-btn:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(31 25 25 / var(--tw-bg-opacity, 1));
}

.footer-accordion>summary {
  list-style: none;
}

.footer-accordion>summary::-webkit-details-marker {
  display: none;
}

.footer-contact-col .footer-stripe-block {
  padding-top: 1rem;
}

.footer-stripe-block > div {
  width: 100%;
  text-align: start;
}

/* Footer — desktop (1024px+): 5-column layout like design reference */

@media (min-width: 1024px) {
  .footer-panel-dark {
    padding: 2.5rem 2.5rem 0 !important;
  }

  .footer-main-inner {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: clamp(1.25rem, 2.2vw, 2.5rem);
    padding: 4rem 0 3rem !important;
  }

  .footer-brand-col {
    flex: 0 0 300px;
    width: 300px;
    max-width: 300px !important;
    min-width: 0;
    align-items: center;
    text-align: center;
  }

  .footer-brand-box {
    width: 100%;
    max-width: 300px;
    margin-left: auto;
    margin-right: auto;
    padding: 2rem 1.75rem;
    border-radius: 1.5rem;
    border-color: rgba(255, 255, 255, 0.8);
  }

  .footer-brand-box > div {
    align-items: center;
    text-align: center;
    gap: 1.25rem;
  }

  .footer-brand-box p {
    text-align: center;
    font-size: 15px;
    line-height: 1.35;
  }

  .footer-brand-box img {
    max-width: 100%;
    height: auto;
  }

  .footer-follow-heading {
    margin-top: 30px !important;
    width: 100%;
    text-align: center;
    font-size: 15px;
  }

  .footer-brand-col .footer-social-links {
    margin-top: 12px !important;
    width: 100%;
    justify-content: center;
    flex-wrap: nowrap;
  }

  .footer-link-col {
    display: block !important;
    flex: 1 1 0;
    min-width: 0;
    max-width: none;
    padding-top: 0.125rem;
  }

  .footer-link-col h3 {
    margin-bottom: 1rem;
    font-size: 16px;
    font-weight: 600;
    color: #ff9ea1;
    line-height: 1.25;
  }

  .footer-link-col ul {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
    font-size: 15px;
    line-height: 1.4;
  }

  .footer-link-col li a {
    color: rgba(255, 255, 255, 0.9);
  }

  .footer-contact-col {
    flex: 0 0 280px;
    width: 280px;
    max-width: 280px !important;
    min-width: 0;
    align-items: flex-start !important;
    text-align: left !important;
    gap: 1.375rem !important;
  }

  .footer-contact-col > div {
    width: 100%;
  }

  .footer-contact-col p,
    .footer-contact-col a {
    text-align: left;
    justify-content: flex-start;
    font-size: 16px;
  }

  .footer-contact-col .footer-stripe-block {
    width: 100%;
    padding-top: 0.5rem;
    margin-top: 0.25rem;
  }

  .footer-stripe-block > div,
    .footer-stripe-pill {
    width: 100%;
    text-align: center;
  }

  .footer-bottom {
    margin-top: 0;
    padding: 2.5rem 0 !important;
    border-top-color: rgba(255, 255, 255, 0.35);
  }

  .footer-bottom-inner {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 1.5rem;
    padding: 0;
  }

  .footer-copyright {
    flex: 1 1 auto;
    min-width: 0;
    max-width: 52%;
    margin: 0;
    padding-right: 1.5rem;
    text-align: left !important;
    font-size: 14px;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.95);
  }

  .footer-payments {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 0.5rem !important;
    width: auto !important;
    max-width: none !important;
  }

  .footer-payments > .inline-flex {
    width: auto !important;
    min-width: 4.75rem !important;
    max-width: none !important;
    height: 3rem !important;
    min-height: 3rem !important;
    flex: 0 0 auto !important;
    border-radius: 0.375rem;
    padding: 0.375rem 0.625rem !important;
  }

  .footer-payments > .inline-flex:last-child {
    grid-column: auto;
    min-width: 6.5rem !important;
  }
}

/* Footer — small & medium only (< 1024px). Desktop / iPad Pro unchanged. */

@media (max-width: 1023px) {
  .footer-panel-dark {
    --footer-gap: 2.5rem;
    /* 40px — consistent spacing between footer blocks */
  }

  .footer-main-inner {
    align-items: flex-start;
    text-align: start;
  }

  .footer-brand-col {
    align-items: flex-start !important;
    text-align: start !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: 100% !important;
    width: 100%;
  }

  .footer-brand-box {
    margin-left: 0;
    margin-right: 0;
  }

  .footer-brand-box > div {
    align-items: flex-start;
  }

  .footer-brand-col .mt-3 {
    justify-content: flex-start;
  }

  .footer-brand-col .footer-social-links {
    margin-bottom: 0;
    padding-bottom: 0;
  }

  .footer-accordions {
    width: 100%;
    text-align: start;
    border-bottom: 1px solid rgba(255, 255, 255, 0.15);
    padding-top: 0.5rem;
    padding-bottom: 0;
    margin-bottom: var(--footer-gap);
  }

  .footer-accordion > summary {
    text-align: start;
  }

  .footer-accordion ul {
    text-align: start;
    padding-left: 0;
  }

  .footer-accordion:last-child > summary {
    border-bottom: none;
  }

  .footer-contact-col {
    width: 100%;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    align-items: flex-start;
    text-align: start;
    padding-top: 0;
    gap: var(--footer-gap) !important;
  }

  .footer-contact-col .footer-stripe-block {
    margin-top: 0;
    padding-top: 0;
    border-top: none;
  }

  .footer-contact-col > div,
    .footer-contact-col p,
    .footer-contact-col a {
    text-align: start;
    justify-content: flex-start;
  }

  .footer-contact-col a {
    word-break: break-word;
  }

  .footer-outer {
    padding: 25px !important;
    gap: 1rem;
  }

  .footer-panel-dark {
    padding: 25px !important;
  }

  .footer-main-inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
    gap: 0 !important;
  }

  .footer-brand-col {
    margin-bottom: var(--footer-gap);
  }

  .footer-bottom {
    margin-top: var(--footer-gap);
    padding-top: var(--footer-gap) !important;
    text-align: start;
  }

  .footer-bottom-inner {
    align-items: flex-start;
    gap: var(--footer-gap) !important;
    padding-top: 0 !important;
  }

  .footer-copyright {
    text-align: start;
    margin: 0;
    width: 100%;
  }

  .footer-payments {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.625rem;
    width: 100% !important;
    max-width: 100% !important;
    justify-content: start !important;
    justify-items: stretch;
  }

  .footer-payments > .inline-flex {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    flex: none;
  }

  .footer-payments > .inline-flex:last-child {
    grid-column: 1 / -1;
  }
}

.home-banner-card{
  display: flex;
  min-height: 0px;
  flex-direction: column;
  border-radius: 1.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(245 245 245 / var(--tw-bg-opacity, 1));
  padding: 1.5rem;
  --tw-text-opacity: 1;
  color: rgb(23 23 23 / var(--tw-text-opacity, 1));
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.home-banner-card.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.home-banner-card.h-\[68px\] {
    gap: 12px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.home-banner-card.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

@media (min-width: 640px){
  .home-banner-card{
    border-radius: 1.5rem;
    padding: 2rem;
  }
}

.category-showcase-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-template-rows: 254px 388px;
  gap: 20px;
}

.category-showcase-grid > article {
  position: relative;
  min-width: 0;
  overflow: hidden;
  border: 1px solid #e5e5e5;
  border-radius: 20px;
  background: #f7f7f7;
  box-shadow: none;
}

.category-showcase-grid > article:nth-child(1) {
  grid-row: span 2 / span 2;
  padding: 16px;
}

.category-showcase-grid > article:nth-child(2) {
  grid-column: span 2 / span 2;
  gap: 24px;
  padding: 15px 16px 15px 23px;
}

.category-showcase-grid > article:nth-child(3),
  .category-showcase-grid > article:nth-child(4) {
  padding: 18px 18px 20px;
}

.category-showcase-grid > article:nth-child(1) > div:first-child,
  .category-showcase-grid > article:nth-child(2) > div:last-child,
  .category-showcase-grid > article:nth-child(3) > div:first-child,
  .category-showcase-grid > article:nth-child(4) > div:first-child {
  min-height: 0;
  overflow: hidden;
  border-radius: 17px;
  background: #dedede;
}

.category-showcase-grid > article:nth-child(1) > div:first-child {
  height: 418px;
}

.category-showcase-grid > article:nth-child(2) > div:first-child {
  order: 1;
  width: 48%;
  max-width: none;
  justify-content: flex-start;
  margin-top: 0;
  padding-top: 5px;
}

.category-showcase-grid > article:nth-child(2) > div:last-child {
  order: 2;
  flex: 0 0 48.2%;
  height: 225px;
  margin-left: auto;
}

.category-showcase-grid > article:nth-child(3) > div:first-child,
  .category-showcase-grid > article:nth-child(4) > div:first-child {
  height: 235px;
}

.category-showcase-grid img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.category-showcase-grid > article:nth-child(1) > div:nth-child(2) {
  flex: 1;
  margin-top: 0;
  padding-top: 24px;
}

.category-showcase-grid > article:nth-child(3) > div:nth-child(2),
  .category-showcase-grid > article:nth-child(4) > div:nth-child(2) {
  margin-top: 0;
  padding-top: 22px;
}

.category-showcase-grid h2 {
  margin: 0;
  color: #1f1919;
  font-size: 24px;
  font-weight: 800;
  line-height: 1.12;
  letter-spacing: 0;
  text-transform: none;
}

.category-showcase-grid p {
  max-width: 340px;
  margin-top: 10px;
  color: #1f1919;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.45;
  letter-spacing: 0;
}

.category-showcase-grid > article:nth-child(1) .btn-primary,
  .category-showcase-grid > article:nth-child(2) .btn-primary {
  --btn-gap: 4px;
  margin-top: auto;
}

.category-showcase-grid .btn-primary.btn-primary--lg .btn-primary-text {
  font-size: 17px;
}

.category-showcase-grid > article:nth-child(1) > div:nth-child(2) > div,
  .category-showcase-grid > article:nth-child(2) > div:first-child > div {
  margin-top: auto;
}

.category-showcase-grid .banner-footer-row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  margin-top: 10px;
}

@media (max-width: 1279px) {
  .category-showcase-grid {
    grid-template-rows: 236px 366px;
  }

  .category-showcase-grid h2 {
    font-size: 24px;
  }

  .category-showcase-grid p {
    font-size: 15px;
  }

  .category-showcase-grid > article:nth-child(2) {
    padding-left: 20px;
  }
}

/* Benefits card used on login/register pages */

.benefits-card {
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg,#A51D1D 0%,#8f1a1a 100%);
  color: #fff;
  border-radius: 1rem;
  /* keep consistent with rounded-2xl */
}

.benefits-card::before,
  .benefits-card::after {
  content: '';
  position: absolute;
  width: 140px;
  height: 140px;
  background: rgba(255,255,255,0.04);
  pointer-events: none;
  border-radius: 8px;
}

.benefits-card::before {
  background-image: url(../../icons/bg.png);
  width: 340px;
  height: 340px;
  top: 0;
  right: 0;
}

.benefits-card::after {
  background-image: url(../../icons/bg-bottom.png);
  width: 340px;
  height: 340px;
  bottom: 0;
  left: 0;
}

.benefits-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.benefits-list li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 18px;
  font-size: 16px;
  line-height: 1.4;
}

.benefits-list li .check {
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  border-radius: 999px;
  background: #fff;
  display: grid;
  place-items: center;
}

.benefits-list li .check svg {
  width: 12px;
  height: 12px;
}

.sale-tab-btn.is-active .sale-tab-badge{
  display: block;
}

.sale-tab-pill{
  pointer-events: none;
  position: absolute;
  bottom: 0.5rem;
  left: 50%;
  z-index: 10;
  width: 100%;
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  border-radius: 0.375rem;
  background-color: rgb(0 77 61 / var(--tw-bg-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity, 1));
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.025em;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  opacity: 0;
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

@media (max-width: 767px) {
  #sale-mobile-featured .sale-tab-pill.-top-1.left-5 {
    left: -4px;
    top: -9px;
    width: 98px;
    height: 76px;
  }

  #sale-mobile-featured .sale-tab-pill.-top-1.left-5::before,
  #sale-mobile-featured .sale-tab-pill.-top-1.left-5::after {
    content: '';
    position: absolute;
    height: 1.4px;
    background: #1f1919;
    z-index: -1;
  }

  #sale-mobile-featured .sale-tab-pill.-top-1.left-5::before {
    left: 7px;
    top: 19px;
    width: 55px;
    transform: rotate(-20deg);
  }

  #sale-mobile-featured .sale-tab-pill.-top-1.left-5::after {
    left: 54px;
    top: 10px;
    width: 43px;
    transform: rotate(35deg);
    transform-origin: left center;
  }

  #sale-mobile-featured .sale-tab-pill.-top-1.left-5 > div {
    position: absolute;
    left: 51px;
    top: 4px;
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: #1f1919;
  }

  #sale-mobile-featured .sale-tab-pill.-top-1.left-5 > span {
    position: absolute;
    left: 0;
    top: 28px;
    min-width: 98px;
    border-radius: 7px;
    background: #11814b;
    padding: 8px 18px;
    color: #fff;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
    text-transform: none;
    transform: rotate(6deg);
  }
}

@media (min-width: 1024px) and (max-width: 1366px) {
  footer .sale-tab-pill.rounded-3xl.bg-\[\#1a1514\] {
    padding: 2rem 1.25rem;
  }
}

@media (min-width: 640px){
  .sale-tab-pill{
    font-size: 10px;
  }
}

.sale-tab-tile.sale-tab-active .sale-tab-pill{
  opacity: 1;
}

.sale-featured-overlay{
  pointer-events: none;
  position: absolute;
  inset: 0px;
  opacity: 0.38;
}

@media (max-width: 767px) {
  #sale-mobile-featured .sale-featured-overlay.-top-1.left-5 {
    left: -4px;
    top: -9px;
    width: 98px;
    height: 76px;
  }

  #sale-mobile-featured .sale-featured-overlay.-top-1.left-5::before,
  #sale-mobile-featured .sale-featured-overlay.-top-1.left-5::after {
    content: '';
    position: absolute;
    height: 1.4px;
    background: #1f1919;
    z-index: -1;
  }

  #sale-mobile-featured .sale-featured-overlay.-top-1.left-5::before {
    left: 7px;
    top: 19px;
    width: 55px;
    transform: rotate(-20deg);
  }

  #sale-mobile-featured .sale-featured-overlay.-top-1.left-5::after {
    left: 54px;
    top: 10px;
    width: 43px;
    transform: rotate(35deg);
    transform-origin: left center;
  }

  #sale-mobile-featured .sale-featured-overlay.-top-1.left-5 > div {
    position: absolute;
    left: 51px;
    top: 4px;
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: #1f1919;
  }

  #sale-mobile-featured .sale-featured-overlay.-top-1.left-5 > span {
    position: absolute;
    left: 0;
    top: 28px;
    min-width: 98px;
    border-radius: 7px;
    background: #11814b;
    padding: 8px 18px;
    color: #fff;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
    text-transform: none;
    transform: rotate(6deg);
  }
}

.sale-featured-overlay {
  background-image: repeating-linear-gradient(
      -45deg,
      rgba(0, 0, 0, 0.1) 0px,
      rgba(0, 0, 0, 0.1) 1px,
      transparent 1px,
      transparent 14px
    );
}

.sale-featured-diamond {
  pointer-events: none;
  position: absolute;
  inset: 0;
  opacity: 0.14;
  background-image:
      linear-gradient(
        45deg,
        rgba(255, 255, 255, 0.07) 25%,
        transparent 25%,
        transparent 75%,
        rgba(255, 255, 255, 0.07) 75%
      ),
      linear-gradient(
        45deg,
        rgba(255, 255, 255, 0.07) 25%,
        transparent 25%,
        transparent 75%,
        rgba(255, 255, 255, 0.07) 75%
      );
  background-size: 34px 34px;
  background-position: 0 0, 17px 17px;
}

.sale-trust-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0px;
}

.sale-trust-grid > :not([hidden]) ~ :not([hidden]){
  --tw-divide-x-reverse: 0;
  border-right-width: calc(1px * var(--tw-divide-x-reverse));
  border-left-width: calc(1px * calc(1 - var(--tw-divide-x-reverse)));
  --tw-divide-y-reverse: 0;
  border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
  border-bottom-width: calc(1px * var(--tw-divide-y-reverse));
  border-color: rgb(255 255 255 / 0.25);
}

.sale-trust-grid{
  border-radius: 0.75rem;
  border-width: 1px;
  border-color: rgb(255 255 255 / 0.25);
  background-color: rgb(0 0 0 / 0.25);
  font-size: 0.75rem;
  line-height: 1rem;
  color: rgb(255 255 255 / 0.95);
}

@media (max-width: 1023px) {
  .cart-summary-item > .sale-trust-grid {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
  }

  .cart-summary-item > .sale-trust-grid > .relative {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }

  .cart-summary-item > .sale-trust-grid > .shrink-0 {
    align-self: center;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .sale-trust-grid {
    grid-template-columns: 96px minmax(0, 1fr) auto;
    min-height: 120px;
    padding: 12px;
    -moz-column-gap: 22px;
         column-gap: 22px;
  }

  .cart-summary-item > .sale-trust-grid > .relative {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .sale-trust-grid > .relative .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .sale-trust-grid {
    grid-template-columns: 86px minmax(0, 1fr) auto;
    -moz-column-gap: 16px;
         column-gap: 16px;
  }

  .cart-summary-item > .sale-trust-grid > .relative {
    width: 86px;
    height: 86px;
  }
}

@media (min-width: 640px){
  .sale-trust-grid{
    font-size: 0.875rem;
    line-height: 1.25rem;
  }
}

.sale-trust-grid > div{
  display: flex;
  min-height: 4.5rem;
  align-items: flex-start;
  gap: 0.625rem;
  padding: 0.875rem;
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.sale-trust-grid > div.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.sale-trust-grid > div.h-\[68px\] {
    gap: 12px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.sale-trust-grid > div.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

@media (min-width: 640px){
  .sale-trust-grid > div{
    min-height: 0px;
    gap: 0.75rem;
    padding: 1rem;
  }
}

.sale-acc > summary {
  list-style: none;
}

.sale-acc {
  scroll-margin-top: 90px;
  transition: all 0.3s ease;
}

.sale-acc > summary::-webkit-details-marker {
  display: none;
}

.sale-acc[open] > summary .sale-acc-chevron {
  transform: rotate(180deg);
}

/* ============================================================
     OUR SERVICES — light layout with tab list + image/details split
     ============================================================ */

.services-section{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(31 25 25 / var(--tw-text-opacity, 1));
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.rounded-2xl.services-section {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

.service-tabs-card{
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(23 23 23 / var(--tw-text-opacity, 1));
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.rounded-2xl.service-tabs-card {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

.service-tab-row{
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  border-top-width: 1px;
  border-bottom-width: 1px;
  border-color: transparent;
  --tw-border-opacity: 1;
  border-bottom-color: rgb(229 229 229 / var(--tw-border-opacity, 1));
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  padding-left: 0px;
  padding-right: 0px;
  text-align: left;
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: 600;
  letter-spacing: -0.025em;
  --tw-text-opacity: 1;
  color: rgb(23 23 23 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.service-tab-row.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.service-tab-row.h-\[68px\] {
    gap: 12px;
  }
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .service-tab-row.desktop-search INPUT{
    width: 250px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.service-tab-row.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item .mt-1.flex.service-tab-row.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

.service-tab-row:first-child{
  border-top-width: 0px;
}

.service-tab-row:last-child{
  border-bottom-width: 0px;
}

@media (min-width: 640px){
  .service-tab-row{
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}

.service-tab-row .service-tab-arrow{
  opacity: 0;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.service-tab-row.is-active{
  --tw-border-opacity: 1;
  border-top-color: rgb(164 22 26 / var(--tw-border-opacity, 1));
  border-bottom-color: rgb(164 22 26 / var(--tw-border-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(164 22 26 / var(--tw-text-opacity, 1));
}

@media (max-width: 1023px) {
  
  .cart-summary-item__variants .service-tab-row.is-active {
    color: #A4161A;
  }
}

.service-tab-row.is-active .service-tab-arrow{
  opacity: 1;
}

/* ============================================================
     COMMON PRIMARY BUTTON — pill + circular arrow (reusable)
     Default: separated pill + circle · Hover: merged single control
     ============================================================ */

@media (min-width: 1024px) {
  .footer-payments > .btn-primary-group {
    width: auto;
    min-width: 4.75rem;
    max-width: none;
    height: 3rem;
    min-height: 3rem;
    flex: 0 0 auto;
    border-radius: 0.375rem;
    padding: 0.375rem 0.625rem;
  }

  .footer-payments > .btn-primary-group:last-child {
    grid-column: auto;
    min-width: 6.5rem;
  }

  .footer-payments > .btn-primary-group {
    width: auto;
    min-width: 4.75rem;
    max-width: none;
    height: 3rem;
    min-height: 3rem;
    flex: 0 0 auto;
    border-radius: 0.375rem;
    padding: 0.375rem 0.625rem;
  }

  .footer-payments > .btn-primary-group:last-child {
    grid-column: auto;
    min-width: 6.5rem;
  }
}

@media (max-width: 1023px) {
  .footer-payments > .btn-primary-group {
    width: 100%;
    min-width: 0;
    max-width: none;
    flex: none;
  }

  .footer-payments > .btn-primary-group:last-child {
    grid-column: 1 / -1;
  }

  .footer-payments > .btn-primary-group {
    width: 100%;
    min-width: 0;
    max-width: none;
    flex: none;
  }

  .footer-payments > .btn-primary-group:last-child {
    grid-column: 1 / -1;
  }
}

.btn-primary-group{
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
}

@media (min-width: 1367px) {
  .footer-payments > .btn-primary-group {
    min-width: 5.25rem;
    height: 3rem;
  }
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .btn-primary-group.desktop-search INPUT{
    width: 250px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.flex.btn-primary-group.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item .btn-primary-group[aria-label="Quantity"] {
    min-width: 72px;
    min-height: 34px;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.25rem 0.5rem;
    touch-action: manipulation;
  }

  .cart-summary-item .btn-primary-group[aria-label="Quantity"] [data-cart-qty-display] {
    min-width: 0.75rem;
    font-size: 0.8125rem;
    font-weight: 600;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item .btn-primary-group[aria-label="Quantity"] {
    min-width: 72px;
    height: 34px;
    justify-content: center;
    gap: 10px;
    padding: 0 8px;
  }
}

.btn-primary {
  --btn-gap: 8px;
  --btn-height: 45px;
  --btn-color: #b5121b;
  display: inline-flex;
  align-items: center;
  gap: var(--btn-gap);
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: var(--btn-color);
  text-decoration: none;
  cursor: pointer;
  font-family: inherit;
  line-height: 1.25;
  transition: gap 0.3s ease, background-color 0.3s ease;
}

.btn-primary-text {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: var(--btn-height);
  padding: 0 26px;
  border-radius: 999px;
  background: var(--btn-color);
  color: #fff;
  font-size: 0.875rem;
  font-weight: 500;
  white-space: nowrap;
  transition: padding 0.3s ease, background-color 0.3s ease, color 0.3s ease;
}

.btn-primary-arrow {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: var(--btn-height);
  height: var(--btn-height);
  margin-left: -8px;
  border: 1.5px solid var(--btn-color);
  border-radius: 50%;
  background: #fff;
  transition: width 0.3s ease, height 0.3s ease, background-color 0.3s ease, border-color 0.3s ease,
      margin 0.3s ease;
}

.btn-primary-arrow img,
  .btn-primary-arrow svg {
  width: 22px;
  height: 22px;
  display: block;
}

.btn-primary:hover,
  .btn-primary:focus-visible {
  gap: 0;
  background: var(--btn-color);
  outline: none;
}

.btn-primary:hover .btn-primary-text,
  .btn-primary:focus-visible .btn-primary-text {
  padding-right: 22px;
}

.btn-primary:hover .btn-primary-arrow,
  .btn-primary:focus-visible .btn-primary-arrow {
  width: 40px;
  height: 40px;
  margin-left: 0;
  margin-right: 3px;
  border-color: #fff;
  background: #fff;
}

/* White variant — for red/dark section backgrounds */

.btn-primary--white {
  --btn-color: #fff;
}

.btn-primary--white .btn-primary-text {
  background: #fff;
  color: #b5121b;
}

.btn-primary--white .btn-primary-arrow {
  border-color: #fff;
  background: #fff;
}

.btn-primary--white:hover,
  .btn-primary--white:focus-visible {
  background: #fff;
}

.btn-primary--white:hover .btn-primary-text,
  .btn-primary--white:focus-visible .btn-primary-text {
  color: #b5121b;
}

.btn-primary--white:hover .btn-primary-arrow,
  .btn-primary--white:focus-visible .btn-primary-arrow {
  background: #b5121b;
  border-color: #b5121b;
}

.btn-primary--white:hover .btn-primary-arrow img,
  .btn-primary--white:focus-visible .btn-primary-arrow img,
  .btn-primary--white:hover .btn-primary-arrow svg,
  .btn-primary--white:focus-visible .btn-primary-arrow svg {
  filter: brightness(0) invert(1);
}

.btn-primary--sm {
  --btn-height: 43px;
}

.btn-primary--sm .btn-primary-text {
  padding: 0 22px;
  font-size: 0.8125rem;
}

.btn-primary--lg {
  --btn-height: 45px;
}

.btn-primary--lg .btn-primary-text {
  padding: 0 20px;
  font-size: 1.0625rem;
  margin-right:4px;
}

/* Muted/dark variant — for secondary CTAs on dark backgrounds */

.btn-primary--muted {
  --btn-color: #2e2e2e;
}

.btn-primary--muted .btn-primary-text {
  background: #2e2e2e;
  color: #fff;
}

.btn-primary--muted .btn-primary-arrow {
  border-color: #2e2e2e;
  background: #fff;
}

.btn-primary--muted:hover,
  .btn-primary--muted:focus-visible {
  background: #2e2e2e;
}

.btn-primary--muted:hover .btn-primary-arrow,
  .btn-primary--muted:focus-visible .btn-primary-arrow {
  border-color: #fff;
  background: #fff;
}

/* ============================================================
     CUSTOMER REVIEWS — square accents in bg + ripple-pattern cards
     ============================================================ */

.review-bg{
  position: relative;
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}

@media (max-width: 767px) {
  #sale-mobile-featured .review-bg.z-\[1\] {
    margin-top: 20px;
    gap: 20px;
  }

  #sale-mobile-featured .review-bg.rounded-2xl.bg-white {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

@media (min-width: 1024px) and (max-width: 1366px) {
  [data-products-desktop] .review-bg.rounded-3xl {
    padding: 12px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item > .grid > .review-bg {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .grid > .review-bg {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .grid > .review-bg .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .grid > .review-bg {
    width: 86px;
    height: 86px;
  }
}

.review-bg {
  overflow-x: clip;
  overflow-y: visible;
  max-width: 100%;
}

.product-reviews-section .container-page {
  max-width: 100%;
}

@media (max-width: 639px) {
  .product-reviews-section .container-page {
    overflow-x: clip;
  }
}

.review-bg::before,
  .review-bg::after {
  content: '';
  position: absolute;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
  opacity: 0.55;
  z-index: 0;
}

.review-bg::before {
  top: 0;
  right: 0;
  width: 500px;
  height: 500px;
  background-image: url('../../../assets/images/bg-square-one.png');
}

.review-bg::after {
  bottom: 0;
  left: 0;
  width: 380px;
  height: 380px;
  background-image: url('../../../assets/images/bg-square-two.png');
}

/* Wrapper keeps the quote-circle visible (no clipping) while the
     inner .review-card uses overflow-hidden so its background ripples
     respect the rounded corners. flex column lets the inner card grow
     to fill the wrapper height so every card in the row is equal-height. */

.review-card-wrap{
  position: relative;
  display: flex;
  flex-direction: column;
  padding-top: 1.75rem;
}

@media (max-width: 767px) {
  #sale-mobile-featured .review-card-wrap.z-\[1\] {
    margin-top: 20px;
    gap: 20px;
  }

  #sale-mobile-featured .review-card-wrap.rounded-2xl.bg-white {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.review-card-wrap.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.review-card-wrap.h-\[68px\] {
    gap: 12px;
  }

  [data-products-desktop] .review-card-wrap.rounded-3xl {
    padding: 12px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item > .grid > .review-card-wrap {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }

  .cart-summary-item .mt-1.review-card-wrap.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .grid > .review-card-wrap {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .grid > .review-card-wrap .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .grid > .review-card-wrap {
    width: 86px;
    height: 86px;
  }
}

[data-review-track] {
  scroll-padding-inline: 0;
}

[data-review-scroller] {
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  touch-action: pan-x pinch-zoom;
  scroll-padding-inline: 0;
  padding-top: 0.5rem;
  padding-bottom: 1.75rem;
  margin-bottom: 0.5rem;
  isolation: isolate;
}

.overflow-x-auto[data-review-scroller] {
  scroll-padding-left: 0;
  scroll-padding-right: 0;
}

/* Fallback layout for when Swiper is NOT active */

[data-review-scroller]:not(.swiper) [data-review-track]:not(.swiper-wrapper) {
  display: flex;
  align-items: stretch;
  width: auto;
  min-width: 100%;
}

[data-review-scroller]:not(.swiper) [data-review-track]:not(.swiper-wrapper) .review-card-wrap {
  flex: 0 0 100% !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  scroll-snap-align: start;
  box-sizing: border-box;
}

@media (max-width: 639px) {
  [data-review-scroller]:not(.swiper) [data-review-track]:not(.swiper-wrapper) {
    gap: 0 !important;
  }

  [data-review-scroller]:not(.swiper) [data-review-track]:not(.swiper-wrapper) .review-card-wrap {
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    scroll-snap-align: start !important;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  [data-review-scroller]:not(.swiper) [data-review-track]:not(.swiper-wrapper) .review-card-wrap {
    flex: 0 0 calc((100% - 1.25rem) / 2) !important;
    width: calc((100% - 1.25rem) / 2) !important;
    min-width: calc((100% - 1.25rem) / 2) !important;
    max-width: calc((100% - 1.25rem) / 2) !important;
  }
}

@media (min-width: 1024px) and (max-width: 1366px) {
  [data-review-scroller]:not(.swiper) [data-review-track]:not(.swiper-wrapper) .review-card-wrap {
    flex: 0 0 calc((100% - 1.5rem) / 2) !important;
    width: calc((100% - 1.5rem) / 2) !important;
    min-width: calc((100% - 1.5rem) / 2) !important;
    max-width: calc((100% - 1.5rem) / 2) !important;
  }
}

@media (min-width: 1367px) {
  [data-review-scroller]:not(.swiper) [data-review-track]:not(.swiper-wrapper) .review-card-wrap {
    flex: 0 0 calc((100% - 4.5rem) / 4) !important;
    width: calc((100% - 4.5rem) / 4) !important;
    min-width: calc((100% - 4.5rem) / 4) !important;
    max-width: calc((100% - 4.5rem) / 4) !important;
  }
}

/* When Swiper is active, allow Swiper JS to control slide sizing dynamically */

.swiper-slide,
  [data-review-scroller].swiper .review-card-wrap.swiper-slide,
  [data-trend-scroller].swiper .trending-card.swiper-slide,
  [data-products-track].swiper .product-mobile-slide.swiper-slide {
  flex-shrink: 0 !important;
  min-width: 0 !important;
  max-width: none !important;
  box-sizing: border-box !important;
}


  [data-review-scroller].\!swiper .review-card-wrap.swiper-slide,
  [data-trend-scroller].\!swiper .trending-card.swiper-slide,
  [data-products-track].\!swiper .product-mobile-slide.swiper-slide {
  flex-shrink: 0 !important;
  min-width: 0 !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

swiper-container {
  --swiper-pagination-color: #A51D1D;
  --swiper-pagination-bullet-inactive-color: #1b1515;
  --swiper-pagination-bullet-inactive-opacity: 0.8;
  --swiper-pagination-bullet-size: 8px;
  --swiper-pagination-bullet-horizontal-gap: 6px;
  --swiper-navigation-color: #1b1515;
  --swiper-navigation-size: 18px;
  width: 100%;
  position: relative;
}

/* Ensure swiper wrapper creates bottom space so pagination dots never overlap cards */

swiper-container::part(container) {
  overflow: hidden !important;
}

swiper-container::part(wrapper) {
  padding-bottom: 44px !important;
}

swiper-container::part(pagination) {
  position: absolute !important;
  bottom: 0px !important;
  left: 0 !important;
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 10 !important;
  height: 20px;
}

swiper-container::part(bullet) {
  width: 8px;
  height: 8px;
  background-color: #1b1515;
  opacity: 1;
  border-radius: 50%;
  margin: 0 10px;
  transition: all 0.3s ease;
}

swiper-container::part(bullet-active) {
  background-color: #A51D1D;
  opacity: 1;
  box-shadow: 0 0 0 2.5px #ffffff, 0 0 0 4.5px #A51D1D;
  transform: scale(1.1);
  margin: 0 8px;
}

/* Hide navigation buttons for Trending slider ONLY */

.trend-swiper-container::part(button-prev),
  .trend-swiper-container::part(button-next) {
  display: none !important;
}

/* Show navigation buttons for Customer Reviews slider ONLY */

.review-swiper-container::part(button-prev),
  .review-swiper-container::part(button-next) {
  background-color: #ffffff;
  color: #1b1515;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  display: flex !important;
  align-items: center;
  justify-content: center;
  top: 45%;
  z-index: 20;
  transition: all 0.2s ease;
}

.review-swiper-container::part(button-prev) {
  left: 4px;
}

.review-swiper-container::part(button-next) {
  right: 4px;
}

@media (min-width: 1280px) {
  .review-swiper-container::part(button-prev) {
    left: -16px;
  }

  .review-swiper-container::part(button-next) {
    right: -16px;
  }
}

.review-swiper-container::part(button-prev):hover,
  .review-swiper-container::part(button-next):hover {
  background-color: #A51D1D;
  color: #ffffff;
}

.review-dot {
  width: 8px !important;
  height: 8px !important;
  margin: 0 6px !important;
  border: none !important;
  border-radius: 50% !important;
  background-color: #1b1515 !important;
  padding: 0 !important;
  cursor: pointer !important;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), 
                background-color 0.3s cubic-bezier(0.4, 0, 0.2, 1), 
                box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1), 
                opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.review-dot.is-active,
  .swiper-pagination-bullet-active {
  width: 8px !important;
  height: 8px !important;
  margin: 0 6px !important;
  background-color: #A51D1D !important;
  opacity: 1 !important;
  box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #A51D1D !important;
  transform: scale(1.2) !important;
}

.review-card{
  position: relative;
  display: flex;
  height: 100%;
  flex: 1 1 0%;
  flex-direction: column;
  overflow: hidden;
  border-radius: 1rem;
  --tw-bg-opacity: 1;
  background-color: rgb(164 22 26 / var(--tw-bg-opacity, 1));
  padding: 1.5rem;
  padding-top: 7.5rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

@media (max-width: 767px) {
  #sale-mobile-featured .review-card.z-\[1\] {
    margin-top: 20px;
    gap: 20px;
  }

  #sale-mobile-featured .review-card.rounded-2xl.bg-white {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }

  #sale-mobile-featured .relative.review-card.bg-white {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

@media (min-width: 1024px) and (max-width: 1366px) {
  footer .review-card.rounded-3xl.bg-\[\#1a1514\] {
    padding: 2rem 1.25rem;
  }

  .container-page.review-card.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.review-card.h-\[68px\] {
    gap: 12px;
  }

  [data-products-desktop] .review-card.rounded-3xl {
    padding: 12px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item > .grid > .review-card {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }

  .cart-summary-item .mt-1.review-card.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .grid > .review-card {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .grid > .review-card .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .grid > .review-card {
    width: 86px;
    height: 86px;
  }
}

.review-card {
  min-height: 280px;
}

.review-card-ornament {
  position: absolute;
  left: 50%;
  z-index: 0;
  width: 100%;
  max-width: 320px;
  height: auto;
  max-height: 150px;
  transform: translateX(-50%);
  -o-object-fit: contain;
     object-fit: contain;
  pointer-events: none;
  mix-blend-mode: lighten;
}

.review-card-ornament--top {
  top: 0;
}

.review-card-ornament--bottom {
  bottom: 0;
}

.review-card blockquote,
  .review-card figcaption {
  position: relative;
  z-index: 1;
}

.review-quote-circle{
  position: absolute;
  left: 50%;
  top: 0px;
  z-index: 10;
  display: grid;
  height: 3.5rem;
  width: 3.5rem;
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  place-items: center;
  border-radius: 9999px;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(164 22 26 / var(--tw-text-opacity, 1));
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.rounded-2xl.review-quote-circle {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }

  #sale-mobile-featured .review-quote-circle.-top-1.left-5 {
    left: -4px;
    top: -9px;
    width: 98px;
    height: 76px;
  }

  #sale-mobile-featured .review-quote-circle.-top-1.left-5::before,
  #sale-mobile-featured .review-quote-circle.-top-1.left-5::after {
    content: '';
    position: absolute;
    height: 1.4px;
    background: #1f1919;
    z-index: -1;
  }

  #sale-mobile-featured .review-quote-circle.-top-1.left-5::before {
    left: 7px;
    top: 19px;
    width: 55px;
    transform: rotate(-20deg);
  }

  #sale-mobile-featured .review-quote-circle.-top-1.left-5::after {
    left: 54px;
    top: 10px;
    width: 43px;
    transform: rotate(35deg);
    transform-origin: left center;
  }

  #sale-mobile-featured .review-quote-circle.-top-1.left-5 > div {
    position: absolute;
    left: 51px;
    top: 4px;
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: #1f1919;
  }

  #sale-mobile-featured .review-quote-circle.-top-1.left-5 > span {
    position: absolute;
    left: 0;
    top: 28px;
    min-width: 98px;
    border-radius: 7px;
    background: #11814b;
    padding: 8px 18px;
    color: #fff;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
    text-transform: none;
    transform: rotate(6deg);
  }
}

@media (max-width: 1023px) {
  .cart-summary-item > .review-quote-circle {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
  }

  .cart-summary-item > .review-quote-circle > .relative {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }

  .cart-summary-item > .review-quote-circle > .shrink-0 {
    align-self: center;
  }

  
  .cart-summary-item__variants .review-quote-circle {
    color: #A4161A;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .review-quote-circle {
    grid-template-columns: 96px minmax(0, 1fr) auto;
    min-height: 120px;
    padding: 12px;
    -moz-column-gap: 22px;
         column-gap: 22px;
  }

  .cart-summary-item > .review-quote-circle > .relative {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .review-quote-circle > .relative .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .review-quote-circle {
    grid-template-columns: 86px minmax(0, 1fr) auto;
    -moz-column-gap: 16px;
         column-gap: 16px;
  }

  .cart-summary-item > .review-quote-circle > .relative {
    width: 86px;
    height: 86px;
  }
}

/* Author block hugs the bottom of the card so names align across the row */

.review-card figcaption{
  margin-top: auto;
  padding-top: 1.5rem;
}

.review-tab-pill.is-active{
  --tw-bg-opacity: 1;
  background-color: rgb(164 22 26 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.review-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  margin-top: 2rem;
}

[data-trend-dots].review-dots {
  margin-top: 1.5rem;
}

[data-products-dots].review-dots {
  margin-top: 1rem;
}

[data-home-banner-dots].review-dots {
  margin-top: 0.75rem;
}

.review-dot {
  width: 0.5rem;
  height: 0.5rem;
  flex-shrink: 0;
  border: none;
  border-radius: 999px;
  background: #1b1515;
  padding: 0;
  cursor: pointer;
  transition: transform 200ms ease, box-shadow 200ms ease, background-color 200ms ease;
}

.review-dot.is-active {
  width: 0.625rem;
  height: 0.625rem;
  background: #b2161d;
  box-shadow: 0 0 0 2px #f3f4f6, 0 0 0 4px #b2161d;
}

/* Shared carousel controls: the arrows stay visible beside the pagination
     without covering a card, on both touch and desktop layouts. */

.carousel-controls .review-dots {
  margin-top: 0;
}

/* [data-trend-scroller] {
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 1.25rem;
  }

  [data-trend-scroller] .trending-card {
    flex: 0 0 calc(100% - 2.5rem) !important;
    width: calc(100% - 2.5rem) !important;
    min-width: calc(100% - 2.5rem) !important;
    max-width: calc(100% - 2.5rem) !important;
    scroll-snap-align: start;
    margin-bottom: 20px;
  }

  @media (min-width: 640px) {
    [data-trend-scroller] .trending-card {
      flex-basis: calc((100% - 1.25rem) / 2) !important;
      width: calc((100% - 1.25rem) / 2) !important;
      min-width: calc((100% - 1.25rem) / 2) !important;
      max-width: calc((100% - 1.25rem) / 2) !important;
    }
  }

  @media (min-width: 1024px) {
    [data-trend-scroller] .trending-card {
      flex-basis: calc((100% - 4.5rem) / 4) !important;
      width: calc((100% - 4.5rem) / 4) !important;
      min-width: calc((100% - 4.5rem) / 4) !important;
      max-width: calc((100% - 4.5rem) / 4) !important;
    }
  } */

[data-trend-scroller]:not(.swiper) {
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scroll-padding-inline: 0;
}

[data-trend-scroller]:not(.swiper) .trending-card {
  flex: 0 0 100% !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  scroll-snap-align: start;
  margin-bottom: 20px;
}

@media (min-width: 640px) {
  [data-trend-scroller]:not(.swiper) .trending-card {
    flex-basis: calc((100% - 1.25rem) / 2) !important;
    width: calc((100% - 1.25rem) / 2) !important;
    min-width: calc((100% - 1.25rem) / 2) !important;
    max-width: calc((100% - 1.25rem) / 2) !important;
  }
}

@media (min-width: 1024px) {
  [data-trend-scroller]:not(.swiper) .trending-card {
    flex-basis: calc((100% - 4.5rem) / 4) !important;
    width: calc((100% - 4.5rem) / 4) !important;
    min-width: calc((100% - 4.5rem) / 4) !important;
    max-width: calc((100% - 4.5rem) / 4) !important;
  }
}

/* Swiper applies spacing with inline margins. Clear the original flex gap
     once it is initialised so cards use exactly one gap at every breakpoint. */

[data-trend-scroller].\!swiper [data-trend-track].swiper-wrapper,
  [data-review-scroller].\!swiper [data-review-track].swiper-wrapper {
  gap: 0 !important;
}

[data-trend-scroller].swiper [data-trend-track].swiper-wrapper,
  [data-review-scroller].swiper [data-review-track].swiper-wrapper {
  gap: 0 !important;
}

[data-trend-scroller].\!swiper [data-trend-track].swiper-wrapper,
  [data-review-scroller].\!swiper [data-review-track].swiper-wrapper {
  gap: 0 !important;
}

.mobile-bottom-bar {
  display: none;
}

@media (max-width: 1023px) {
  body {
    padding-bottom: calc(88px + env(safe-area-inset-bottom));
  }

  .mobile-bottom-bar {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 999;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    align-items: end;
    gap: clamp(10px, 4vw, 32px);
    min-height: calc(73px + env(safe-area-inset-bottom));
    padding: 5px clamp(18px, 6vw, 42px) calc(5px + env(safe-area-inset-bottom));
    background: #ad1519;
    color: #fff;
    box-shadow: 0 -10px 28px rgba(0, 0, 0, 0.2);
  }

  .mobile-bottom-bar__item {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    gap: 6px;
    border: 0;
    background: transparent;
    color: #fff;
    font-size: clamp(0.72rem, 3.5vw, 0.9rem);
    font-weight: 400;
    line-height: 1.1;
    text-align: center;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
  }

  .mobile-bottom-bar__icon {
    display: grid;
    width: clamp(39px, 10.5vw, 47px);
    height: clamp(39px, 10.5vw, 47px);
    place-items: center;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.16);
    color: #fff;
  }

  .mobile-bottom-bar__icon svg {
    width: clamp(23px, 6vw, 28px);
    height: clamp(23px, 6vw, 28px);
  }
}

/* ============================================================
     PRODUCT LISTING PAGE
     ============================================================ */

.listing-hero {
  padding: 50px 0 50px !important;
  background: #fff;
}

.listing-hero__card {
  position: relative;
  min-height: clamp(180px, 24vw, 318px);
  overflow: hidden;
  border-radius: 14px;
  background-image: url('../../images/Breadcrumb.png');
  background-size: cover;
  display: grid;
  place-items: center;
  padding: clamp(2rem, 5vw, 4rem);
  text-align: center;
}

.listing-hero__card > div {
  max-width: 80%;
  font-weight: 500;
}

.listing-hero__card h1 {
  max-width: 100%;
  margin: 0 auto;
  font-size: clamp(1.15rem, 2.4vw, 1.75rem);
  font-weight: 700;
  line-height: 1.5;
  color: #171313;
}

.listing-hero__card p {
  max-width: 100%;
  margin: 14px auto 0;
  font-size: clamp(0.78rem, 1.4vw, 1rem);
  line-height: 1.55;
  color: #000000;
}

.listing-hero__card > img {
  position: absolute;
  right: clamp(1.5rem, 6vw, 5rem);
  bottom: -18px;
  width: clamp(98px, 17vw, 210px);
  opacity: 0.95;
  transform: rotate(-5deg);
}

.listing-breadcrumb span:first-child::before {
  content: "";
  display: inline-grid;
  width: 45px;
  height: 45px;
  margin-right: 8px;
  vertical-align: middle;
  border-radius: 999px;
  padding: 3px;
  background: url(../../icons/home.svg), #b2161d;
  background-repeat: no-repeat;
  background-position: center center;
}

.listing-breadcrumb span + span::before {
  content: url(../../icons/breadcrumb-arrow.svg);
  margin: 0px 10px;
  color: #4d4747;
}

.projects-listing {
  padding: 30px 0 80px;
  background: #fff;
}

.projects-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px 22px;
}

.project-card {
  position: relative;
  overflow: hidden;
  border-radius: 10px;
  background: #1f1919;
}

.project-card > img {
  display: block;
  width: 100%;
  min-height: inherit;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 450ms ease;
}

.project-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
      linear-gradient(180deg, rgba(0, 0, 0, 0.28) 0%, rgba(0, 0, 0, 0.36) 46%, rgba(0, 0, 0, 0.82) 100%);
  pointer-events: none;
}

.project-card:hover > img {
  transform: scale(1.04);
}

.project-card__content {
  position: absolute;
  left: clamp(16px, 2vw, 22px);
  right: 64px;
  bottom: clamp(17px, 2vw, 23px);
  z-index: 1;
  color: #fff;
}

.project-card__content p {
  max-width: 90%;
  margin: 0;
  color: rgba(255, 255, 255, 0.92);
  line-height: 1.35;
}

.project-card__link {
  position: absolute;
  right: 16px;
  bottom: 16px;
  z-index: 2;
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.18);
  transition: transform 200ms ease, background-color 200ms ease;
}

.project-card__link img {
  width: 22px;
  height: 22px;
}

.project-card__link:hover {
  transform: translateY(-2px);
  background: #ffe9ea;
}

.projects-pagination{
  margin-top: 70px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  font-size: 13px;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(32 32 32 / var(--tw-text-opacity, 1));
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.projects-pagination.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.projects-pagination.h-\[68px\] {
    gap: 12px;
  }
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .projects-pagination.desktop-search INPUT{
    width: 250px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.projects-pagination.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item .mt-1.flex.projects-pagination.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

.projects-pagination a,
  .projects-pagination span{
  display: inline-grid;
  height: 2.5rem;
  width: 2.5rem;
  place-items: center;
  border-radius: 0.25rem;
}

.projects-pagination a{
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(229 229 229 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.rounded-2xl.projects-pagination a {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

.projects-pagination a:hover,
  .projects-pagination a.is-active{
  --tw-border-opacity: 1;
  border-color: rgb(178 22 29 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(178 22 29 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

@media (max-width: 767px) {
  .projects-listing {
    padding-top: 10px;
    padding-bottom: 54px;
  }

  .projects-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .project-card {
    min-height: 245px;
  }

  .projects-pagination {
    margin-top: 36px;
    gap: 6px;
  }

  .projects-pagination a,
    .projects-pagination span {
    width: 28px;
    height: 28px;
  }
}

/* ============================================================
     SERVICE LISTING PAGE — all services grid
     ============================================================ */

.services-listing-section {
  padding: clamp(2.5rem, 5vw, 4rem) 0 clamp(3rem, 6vw, 5rem);
  background: #fff;
}

.services-grid{
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: 20px;
}

@media (max-width: 1023px) {
  .cart-summary-item > .services-grid {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
  }

  .cart-summary-item > .services-grid > .relative {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }

  .cart-summary-item > .services-grid > .shrink-0 {
    align-self: center;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .services-grid {
    grid-template-columns: 96px minmax(0, 1fr) auto;
    min-height: 120px;
    padding: 12px;
    -moz-column-gap: 22px;
         column-gap: 22px;
  }

  .cart-summary-item > .services-grid > .relative {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .services-grid > .relative .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .services-grid {
    grid-template-columns: 86px minmax(0, 1fr) auto;
    -moz-column-gap: 16px;
         column-gap: 16px;
  }

  .cart-summary-item > .services-grid > .relative {
    width: 86px;
    height: 86px;
  }
}

@media (min-width: 768px) {
  .services-grid{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    -moz-column-gap: 20px;
         column-gap: 20px;
    row-gap: 22px;
  }

  @media (max-width: 1023px) {
    .cart-summary-item > .services-grid {
      display: grid;
      grid-template-columns: 64px minmax(0, 1fr) auto;
      align-items: center;
      gap: 10px;
      padding: 14px 16px;
    }

    .cart-summary-item > .services-grid > .relative {
      width: 64px;
      height: 64px;
      border-radius: 8px;
    }

    .cart-summary-item > .services-grid > .shrink-0 {
      align-self: center;
    }
  }

  @media (min-width: 1024px) {
    .cart-summary-item > .services-grid {
      grid-template-columns: 96px minmax(0, 1fr) auto;
      min-height: 120px;
      padding: 12px;
      -moz-column-gap: 22px;
           column-gap: 22px;
    }

    .cart-summary-item > .services-grid > .relative {
      width: 96px;
      height: 96px;
      border-radius: 8px;
    }

    .cart-summary-item > .services-grid > .relative .cart-summary-item__remove {
      top: -6px;
      right: -7px;
      left: auto;
      width: 19px;
      height: 19px;
    }
  }

  @media (min-width: 1024px) and (max-width: 1180px) {
    .cart-summary-item > .services-grid {
      grid-template-columns: 86px minmax(0, 1fr) auto;
      -moz-column-gap: 16px;
           column-gap: 16px;
    }

    .cart-summary-item > .services-grid > .relative {
      width: 86px;
      height: 86px;
    }
  }
}

@media (min-width: 1024px) {
  .services-grid{
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    row-gap: 1.5rem;
    -moz-column-gap: 22px;
         column-gap: 22px;
  }

  @media (max-width: 1023px) {
    .cart-summary-item > .services-grid {
      display: grid;
      grid-template-columns: 64px minmax(0, 1fr) auto;
      align-items: center;
      gap: 10px;
      padding: 14px 16px;
    }

    .cart-summary-item > .services-grid > .relative {
      width: 64px;
      height: 64px;
      border-radius: 8px;
    }

    .cart-summary-item > .services-grid > .shrink-0 {
      align-self: center;
    }
  }

  @media (min-width: 1024px) {
    .cart-summary-item > .services-grid {
      grid-template-columns: 96px minmax(0, 1fr) auto;
      min-height: 120px;
      padding: 12px;
      -moz-column-gap: 22px;
           column-gap: 22px;
    }

    .cart-summary-item > .services-grid > .relative {
      width: 96px;
      height: 96px;
      border-radius: 8px;
    }

    .cart-summary-item > .services-grid > .relative .cart-summary-item__remove {
      top: -6px;
      right: -7px;
      left: auto;
      width: 19px;
      height: 19px;
    }
  }

  @media (min-width: 1024px) and (max-width: 1180px) {
    .cart-summary-item > .services-grid {
      grid-template-columns: 86px minmax(0, 1fr) auto;
      -moz-column-gap: 16px;
           column-gap: 16px;
    }

    .cart-summary-item > .services-grid > .relative {
      width: 86px;
      height: 86px;
    }
  }

  @media (min-width: 768px){
    .services-grid{
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (min-width: 1024px){
    .services-grid{
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
}

.service-card{
  border-radius: 15px;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(224 224 224 / var(--tw-border-opacity, 1));
  --tw-shadow: 0px 2px 6px rgba(0,0,0,0.14);
  --tw-shadow-colored: 0px 2px 6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

.service-card:hover{
  --tw-translate-y: -3px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  --tw-shadow: 0 10px 28px rgba(0,0,0,0.22);
  --tw-shadow-colored: 0 10px 28px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.service-card__media{
  position: relative;
  margin-bottom: 1.25rem;
}

@media (max-width: 767px) {
  #sale-mobile-featured .service-card__media.z-\[1\] {
    margin-top: 20px;
    gap: 20px;
  }

  #sale-mobile-featured .service-card__media.rounded-2xl.bg-white {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

@media (min-width: 1024px) and (max-width: 1366px) {
  [data-products-desktop] .service-card__media.rounded-3xl {
    padding: 12px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item > .grid > .service-card__media {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .grid > .service-card__media {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .grid > .service-card__media .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .grid > .service-card__media {
    width: 86px;
    height: 86px;
  }
}

.service-card__image-wrap{
  overflow: hidden;
  border-top-left-radius: 16px;
  border-top-right-radius: 16px;
}

@media (min-width: 1024px) and (max-width: 1366px) {
  footer .service-card__image-wrap.rounded-3xl.bg-\[\#1a1514\] {
    padding: 2rem 1.25rem;
  }
}

.service-card__image{
  aspect-ratio: 16/10;
  -o-object-fit: cover;
     object-fit: cover;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 450ms;
}

.service-card:hover .service-card__image {
  transform: scale(1.03);
}

.service-card__link{
  position: absolute;
  right: 14px;
  bottom: 15px;
  z-index: 2;
  display: grid;
  height: 40px;
  width: 40px;
  place-items: center;
  border-radius: 9999px;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(164 22 26 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(164 22 26 / var(--tw-text-opacity, 1));
  --tw-shadow: 0 6px 16px rgba(0,0,0,0.16);
  --tw-shadow-colored: 0 6px 16px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.rounded-2xl.service-card__link {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }

  #sale-mobile-featured .service-card__link.-top-1.left-5 {
    left: -4px;
    top: -9px;
    width: 98px;
    height: 76px;
  }

  #sale-mobile-featured .service-card__link.-top-1.left-5::before,
  #sale-mobile-featured .service-card__link.-top-1.left-5::after {
    content: '';
    position: absolute;
    height: 1.4px;
    background: #1f1919;
    z-index: -1;
  }

  #sale-mobile-featured .service-card__link.-top-1.left-5::before {
    left: 7px;
    top: 19px;
    width: 55px;
    transform: rotate(-20deg);
  }

  #sale-mobile-featured .service-card__link.-top-1.left-5::after {
    left: 54px;
    top: 10px;
    width: 43px;
    transform: rotate(35deg);
    transform-origin: left center;
  }

  #sale-mobile-featured .service-card__link.-top-1.left-5 > div {
    position: absolute;
    left: 51px;
    top: 4px;
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: #1f1919;
  }

  #sale-mobile-featured .service-card__link.-top-1.left-5 > span {
    position: absolute;
    left: 0;
    top: 28px;
    min-width: 98px;
    border-radius: 7px;
    background: #11814b;
    padding: 8px 18px;
    color: #fff;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
    text-transform: none;
    transform: rotate(6deg);
  }
}

@media (max-width: 1023px) {
  .cart-summary-item > .service-card__link {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
  }

  .cart-summary-item > .service-card__link > .relative {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }

  .cart-summary-item > .service-card__link > .shrink-0 {
    align-self: center;
  }

  
  .cart-summary-item__variants .service-card__link {
    color: #A4161A;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .service-card__link {
    grid-template-columns: 96px minmax(0, 1fr) auto;
    min-height: 120px;
    padding: 12px;
    -moz-column-gap: 22px;
         column-gap: 22px;
  }

  .cart-summary-item > .service-card__link > .relative {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .service-card__link > .relative .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .service-card__link {
    grid-template-columns: 86px minmax(0, 1fr) auto;
    -moz-column-gap: 16px;
         column-gap: 16px;
  }

  .cart-summary-item > .service-card__link > .relative {
    width: 86px;
    height: 86px;
  }
}

.service-card__link:hover{
  --tw-translate-y: -2px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  --tw-bg-opacity: 1;
  background-color: rgb(164 22 26 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.service-card__link:hover img{
  --tw-brightness: brightness(0);
  --tw-invert: invert(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.service-card__body {
  padding: 4px 18px 22px;
}

.service-card__title{
  margin-bottom: 0.5rem;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.35;
  --tw-text-opacity: 1;
  color: rgb(23 19 19 / var(--tw-text-opacity, 1));
}

@media (max-width: 1023px) {
  
  .cart-summary-item__variants .service-card__title {
    color: #A4161A;
  }
}

@media (min-width: 768px){
  .service-card__title{
    font-size: 20px;
  }
}

@media (min-width: 1024px){
  .service-card__title{
    font-size: 22px;
  }
}

.service-card__desc{
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  line-height: 1.55;
  --tw-text-opacity: 1;
  color: rgb(98 95 104 / var(--tw-text-opacity, 1));
}

@media (min-width: 1024px) and (max-width: 1366px) {
  footer .service-card__desc.rounded-3xl.bg-\[\#1a1514\] {
    padding: 2rem 1.25rem;
  }
}

.services-pagination {
  margin-top: clamp(2.25rem, 5vw, 4.375rem);
}

@media (max-width: 767px) {
  .services-listing-section {
    padding-top: 2rem;
    padding-bottom: 2.75rem;
  }

  .services-grid {
    gap: 16px;
  }

  .service-card__body {
    padding: 2px 16px 18px;
  }

  .services-pagination {
    margin-top: 2.25rem;
  }
}

/* ============================================================
     SOLUTION LISTING PAGE — all solutions grid
     ============================================================ */

.solutions-listing-section {
  padding: clamp(2.5rem, 5vw, 4rem) 0 clamp(3rem, 6vw, 5rem);
  background: #fff;
}

.solutions-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 20px;
}

@media (min-width: 768px) {
  .solutions-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px 20px;
  }
}

.solution-card{
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  border-radius: 15px;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(212 212 212 / var(--tw-border-opacity, 1));
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.solution-card.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.solution-card.h-\[68px\] {
    gap: 12px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.solution-card.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

.solution-card:hover{
  --tw-border-opacity: 1;
  border-color: rgb(164 22 26 / var(--tw-border-opacity, 1));
}

.solution-card__media {
  flex-shrink: 0;
  overflow: hidden;
  border-radius: 14px;
}

.solution-card__image {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 14px;
  transition: transform 450ms ease;
}

.solution-card:hover .solution-card__image {
  transform: scale(1.03);
}

.solution-card__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-width: 0;
  padding: 0;
}

.solution-card__title{
  margin-bottom: 0.5rem;
  font-size: 18px;
  font-weight: 700;
}

@media (min-width: 768px){
  .solution-card__title{
    font-size: 20px;
  }
}

@media (min-width: 1024px){
  .solution-card__title{
    font-size: 22px;
  }
}

.solution-card__desc{
  margin-bottom: 1rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  flex: 1 1 0%;
  overflow: hidden;
  --tw-text-opacity: 1;
  color: rgb(98 95 104 / var(--tw-text-opacity, 1));
}

@media (min-width: 1024px) and (max-width: 1366px) {
  footer .solution-card__desc.rounded-3xl.bg-\[\#1a1514\] {
    padding: 2rem 1.25rem;
  }
}

.solution-card__link{
  display: grid;
  height: 40px;
  width: 40px;
  place-items: center;
  border-radius: 9999px;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(164 22 26 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(164 22 26 / var(--tw-text-opacity, 1));
  --tw-shadow: 0 6px 16px rgba(0,0,0,0.16);
  --tw-shadow-colored: 0 6px 16px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.rounded-2xl.solution-card__link {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item > .solution-card__link {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
  }

  .cart-summary-item > .solution-card__link > .relative {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }

  .cart-summary-item > .solution-card__link > .shrink-0 {
    align-self: center;
  }

  
  .cart-summary-item__variants .solution-card__link {
    color: #A4161A;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .solution-card__link {
    grid-template-columns: 96px minmax(0, 1fr) auto;
    min-height: 120px;
    padding: 12px;
    -moz-column-gap: 22px;
         column-gap: 22px;
  }

  .cart-summary-item > .solution-card__link > .relative {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .solution-card__link > .relative .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .solution-card__link {
    grid-template-columns: 86px minmax(0, 1fr) auto;
    -moz-column-gap: 16px;
         column-gap: 16px;
  }

  .cart-summary-item > .solution-card__link > .relative {
    width: 86px;
    height: 86px;
  }
}

.solution-card__link:hover{
  --tw-translate-y: -2px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  --tw-bg-opacity: 1;
  background-color: rgb(164 22 26 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.solution-card__link:hover img{
  --tw-brightness: brightness(0);
  --tw-invert: invert(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
  /* background: #ffe9ea;
    border-color: #b2161d; */
}

.solutions-pagination {
  margin-top: clamp(2.25rem, 5vw, 4.375rem);
}

@media (min-width: 640px) {
  .solution-card {
    flex-direction: row;
    align-items: stretch;
    gap: clamp(14px, 2.5vw, 22px);
    padding: clamp(16px, 2.5vw, 22px);
  }

  .solution-card__media {
    flex: 0 0 42%;
    width: 42%;
    max-width: 200px;
  }

  .solution-card__body {
    justify-content: flex-start;
  }

  .solution-card__link {
    margin-top: auto;
  }
}

@media (min-width: 1024px) {
  .solution-card {
    padding: 22px 24px;
    gap: 24px;
  }

  .solution-card__media {
    max-width: 220px;
  }
}

@media (max-width: 767px) {
  .solutions-listing-section {
    padding-top: 2rem;
    padding-bottom: 2.75rem;
  }

  .solutions-grid {
    gap: 16px;
  }

  .solution-card {
    padding: 16px;
    gap: 14px;
  }

  .solution-card__link {
    width: 40px;
    height: 40px;
    margin-top: 14px;
  }

  .solution-card__link img {
    width: 18px;
    height: 18px;
  }

  .solutions-pagination {
    margin-top: 2.25rem;
  }
}

.listing-products {
  padding: clamp(2.5rem, 6vw, 5rem) 0 clamp(3.5rem, 7vw, 6rem);
  background: #fff;
}

.listing-section-head {
  margin-bottom: clamp(1.4rem, 3vw, 2.2rem);
}

.listing-section-head p {
  margin-top: 0.75rem;
  color: #777;
  font-size: clamp(0.86rem, 1.5vw, 1rem);
}

.listing-toolbar,
  .listing-chips {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  border-top: 1px solid #e7e7e7;
  padding: 12px 0;
  font-size: 14px;
}

.listing-toolbar button,
  .listing-chips button {
  display: inline-flex;
  min-height: 28px;
  align-items: center;
  border-radius: 10px;
  background: #b2161d;
  padding: 0 13px;
  color: #fff;
  font-weight: 700;
  padding: 9px 13px;
}

.listing-toolbar span,
  .listing-chips span {
  display: inline-flex;
  min-height: 28px;
  align-items: center;
  gap: 8px;
  border: 1px solid #dedede;
  border-radius: 10px;
  background: #f7f7f7;
  padding: 9px 13px;
  color: #272323;
  font-weight: 600;
}

.listing-chips button {
  background: #171313;
}

.listing-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1rem, 3vw, 2.4rem) clamp(0.9rem, 2.3vw, 1.8rem);
  padding-top: 30px;
}

.listing-product-card {
  min-width: 0;
  border-bottom: 1px solid #e7e7e7;
  padding-bottom: clamp(1.1rem, 3vw, 2rem);
}

.listing-info {
  position: relative;
  overflow: hidden;
  padding: clamp(3rem, 7vw, 5.6rem) 0;
  background: #f5f5f5;
}

.listing-info::before,
  .listing-faq::before,
  .listing-newsletter::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.45;
  background-image: url('../../../assets/images/bg-square-two.png');
  background-repeat: no-repeat;
  background-position: right top;
  background-size: min(48vw, 520px);
}

.listing-info::before {
  background-image: url('../../../assets/icons/bg-pink-top.png');
  opacity: 1;
}

.listing-info::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: url('../../icons/bg-pink-bottom.png');
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: min(48vw, 520px);
}

.listing-info__grid {
  position: relative;
  z-index: 1;
  display: grid;
  gap: clamp(1.8rem, 5vw, 4rem);
}

.listing-copy{
  height: 100%;
  max-height: 700px;
  overflow-y: auto;
  padding-right: 1rem;
}

.listing-copy::-webkit-scrollbar {
  width: 0px;
}

.listing-copy h2{
  margin-top: 1.8rem;
  font-size: 20px;
  --tw-text-opacity: 1;
  color: rgb(23 19 19 / var(--tw-text-opacity, 1));
}

@media (max-width: 1023px) {
  
  .cart-summary-item__variants .listing-copy h2 {
    color: #A4161A;
  }
}

.listing-copy h2:first-child {
  margin-top: 0;
}

.listing-copy p{
  margin-top: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  line-height: 1.75;
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.flex.items-center.listing-copy p {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

.listing-copy ul{
  margin-top: 1.5rem;
  border-radius: 0.75rem;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-top: 18px;
  padding-bottom: 18px;
  padding-left: 22px;
  padding-right: 22px;
  --tw-text-opacity: 1;
  color: rgb(31 25 25 / var(--tw-text-opacity, 1));
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.rounded-2xl.listing-copy ul {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

.listing-copy ul li{
  position: relative;
  margin-top: 7.2px;
  padding-left: 18px;
}

@media (max-width: 767px) {
  #sale-mobile-featured .listing-copy ul li.z-\[1\] {
    margin-top: 20px;
    gap: 20px;
  }

  #sale-mobile-featured .listing-copy ul li.rounded-2xl.bg-white {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

@media (min-width: 1024px) and (max-width: 1366px) {
  [data-products-desktop] .listing-copy ul li.rounded-3xl {
    padding: 12px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item > .grid > .listing-copy ul li {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .grid > .listing-copy ul li {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .grid > .listing-copy ul li .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .grid > .listing-copy ul li {
    width: 86px;
    height: 86px;
  }
}

.listing-copy ul li:first-child{
  margin-top: 0px;
}

.listing-copy ul li::before {
  content: '';
  position: absolute;
  left: 0px;
  top: 0.5em;
  height: 10px;
  width: 10px;
  border-radius: 9999px;
  --tw-bg-opacity: 1;
  background-color: rgb(164 22 26 / var(--tw-bg-opacity, 1));
}

@media (max-width: 767px) {
  #sale-mobile-featured .listing-copy ul li.-top-1.left-5::before {
    left: -4px;
    top: -9px;
    width: 98px;
    height: 76px;
  }

  #sale-mobile-featured .listing-copy ul li.-top-1.left-5::before::before,
  #sale-mobile-featured .listing-copy ul li.-top-1.left-5::before::after {
    content: '';
    position: absolute;
    height: 1.4px;
    background: #1f1919;
    z-index: -1;
  }

  #sale-mobile-featured .listing-copy ul li.-top-1.left-5::before::before {
    left: 7px;
    top: 19px;
    width: 55px;
    transform: rotate(-20deg);
  }

  #sale-mobile-featured .listing-copy ul li.-top-1.left-5::before::after {
    left: 54px;
    top: 10px;
    width: 43px;
    transform: rotate(35deg);
    transform-origin: left center;
  }

  #sale-mobile-featured .listing-copy ul li.-top-1.left-5 > div::before {
    position: absolute;
    left: 51px;
    top: 4px;
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: #1f1919;
  }

  #sale-mobile-featured .listing-copy ul li.-top-1.left-5 > span::before {
    position: absolute;
    left: 0;
    top: 28px;
    min-width: 98px;
    border-radius: 7px;
    background: #11814b;
    padding: 8px 18px;
    color: #fff;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
    text-transform: none;
    transform: rotate(6deg);
  }
}

.listing-sidebar{
  border-radius: 18px;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding: clamp(1.1rem, 3vw, 1.7rem);
  --tw-shadow: 0 6px 20px rgba(0,0,0,0.04);
  --tw-shadow-colored: 0 6px 20px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.rounded-2xl.listing-sidebar {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

.listing-sidebar h3 {
  margin-bottom: 1rem;
  font-size: clamp(1rem, 2vw, 1.25rem);
}

.mini-product{
  display: grid;
  grid-template-columns: 70px minmax(0,1fr);
  align-items: center;
  gap: 0.75rem;
  border-top-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(236 236 236 / var(--tw-border-opacity, 1));
  padding-top: 13px;
  padding-bottom: 13px;
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .mini-product.desktop-search INPUT{
    width: 250px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item > .mini-product {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
  }

  .cart-summary-item > .mini-product > .relative {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }

  .cart-summary-item .mt-1.flex.mini-product.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item > .mini-product > .shrink-0 {
    align-self: center;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .mini-product {
    grid-template-columns: 96px minmax(0, 1fr) auto;
    min-height: 120px;
    padding: 12px;
    -moz-column-gap: 22px;
         column-gap: 22px;
  }

  .cart-summary-item > .mini-product > .relative {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .mini-product > .relative .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .mini-product {
    grid-template-columns: 86px minmax(0, 1fr) auto;
    -moz-column-gap: 16px;
         column-gap: 16px;
  }

  .cart-summary-item > .mini-product > .relative {
    width: 86px;
    height: 86px;
  }
}

.mini-product img{
  height: 70px;
  width: 70px;
  border-radius: 10px;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(224 224 224 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(243 243 243 / var(--tw-bg-opacity, 1));
  -o-object-fit: contain;
     object-fit: contain;
  padding: 0.5rem;
}

.mini-product p{
  line-height: 1.35;
}

.listing-faq {
  position: relative;
  overflow: hidden;
  padding: clamp(3.2rem, 7vw, 6rem) 0;
  background: #fff;
}

.faq-active img {
  filter: brightness(0) invert(1);
}

.listing-faq__list {
  position: relative;
  z-index: 1;
  max-width: 930px;
  margin: clamp(1.6rem, 4vw, 3rem) auto 0;
  display: grid;
  gap: 14px;
}

.listing-faq details {
  border-radius: 8px;
  color: #373232;
}

.listing-faq summary {
  cursor: pointer;
  list-style: none;
  padding:16px;
  border-radius: 10px;
  height: auto;
}

.listing-faq summary::-webkit-details-marker {
  display: none;
}

.listing-faq summary::after {
  float: right;
  color: #777;
}

.listing-faq details[open] summary {
  color: #b2161d;
}

.listing-faq p {
  padding:16px;
  color: #666464;
  font-size: 14px;
  line-height: 1.65;
  margin-top:0px;
  background:none;
  box-shadow:none;
  border-radius: 0px;
  margin-bottom: 0px;
}

.filter-checkbox {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.filter-group {
  max-width: 100%;
  font-family: Poppins, Arial, sans-serif;
}

.filter-options {
  display: flex;
  flex-direction: column;
  gap: 16px;
  color: #666464;
}

.filter-option {
  position: relative;
  display: flex;
  align-items: center;
  gap: 20px;
  width: -moz-fit-content;
  width: fit-content;
  cursor: pointer;
  font-size: 28px;
  font-weight: 400;
  line-height: 1;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.filter-box {
  display: grid;
  place-items: center;
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  border: 2px solid #e0e0e0;
  border-radius: 8px;
  background: #ffffff;
  transition: 0.2s ease;
}

.filter-box svg {
  display: none;
  width: 24px;
  height: 24px;
}

.filter-checkbox:checked + .filter-box {
  border-color: #b2161d;
  background: #b2161d;
}

.filter-checkbox:checked + .filter-box svg {
  display: block;
}

.filter-option:hover .filter-box {
  border-color: #b2161d;
}

@media (min-width: 640px) {
  .listing-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .listing-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .listing-info__grid {
    grid-template-columns: minmax(0, 1fr) 400px;
    gap: 30px;
    align-items: start;
  }

  .listing-help-card {
    grid-template-columns: 46% 54%;
    overflow: visible;
  }

  .listing-help-card__image {
    min-height: 390px;
  }
}

@media (max-width: 767px) {
  .listing-hero__card {
    text-align: left;
    place-items: start;
    padding-bottom: 2.5rem;
  }

  .listing-hero__card > img {
    right: 0.5rem;
    width: 120px;
    opacity: 0.35;
  }

  .listing-breadcrumb {
    left: 2rem;
    transform: none;
  }

  .listing-toolbar,
    .listing-chips {
    font-size: 12px;
  }
}

/* ============================================================
     BRANDS + NEWSLETTER
     ============================================================ */

.brand-logo-tile{
  display: flex;
  height: 82px;
  min-width: 176px;
  align-items: center;
  justify-content: center;
  border-radius: 0.75rem;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(229 229 229 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  --tw-shadow: 0 2px 8px rgba(0,0,0,0.04);
  --tw-shadow-colored: 0 2px 8px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.rounded-2xl.brand-logo-tile {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.brand-logo-tile.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.brand-logo-tile.h-\[68px\] {
    gap: 12px;
  }
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .brand-logo-tile.desktop-search INPUT{
    width: 250px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.brand-logo-tile.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item .mt-1.flex.brand-logo-tile.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

@media (min-width: 640px){
  .brand-logo-tile{
    height: 88px;
    min-width: 200px;
  }
}

.brand-logo-tile img{
  max-height: 3rem;
  width: auto;
  max-width: 86%;
  -o-object-fit: contain;
     object-fit: contain;
  --tw-grayscale: grayscale(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.brand-marquee{
  display: flex;
  width: -moz-max-content;
  width: max-content;
  gap: 1rem;
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.brand-marquee.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.brand-marquee.h-\[68px\] {
    gap: 12px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.brand-marquee.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

.brand-marquee {
  animation: brandMarquee 22s linear infinite;
}

.brand-marquee-reverse {
  animation-direction: reverse;
}

/* Small devices: make brands area a horizontal, swipeable slider */

@media (max-width: 767px) {
  .brand-marquee,
    .brand-marquee-reverse {
    display: flex !important;
    gap: 12px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding: 12px 8px;
    margin: 0 -8px;
  }

  .brand-logo-tile {
    flex: 0 0 auto;
    width: 180px;
    height: 62px;
    display: flex;
    align-items: center;
    justify-content: center;
    scroll-snap-align: center;
    margin-right: 8px;
  }

  .brand-logo-tile img {
    max-height: 48px;
    width: auto;
  }

  /* hide overflow shadows on small screens */

  .brand-marquee::-webkit-scrollbar {
    display: none;
  }
}

@keyframes brandMarquee {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-50%);
  }
}

.newsletter-bg {
  /* keep structure and decorative pseudo-elements but make the gray
       background only cover the top half of the section */
  position: relative;
  overflow: hidden;
}

@media (max-width: 767px) {
  #sale-mobile-featured .newsletter-bg.z-\[1\] {
    margin-top: 20px;
    gap: 20px;
  }

  #sale-mobile-featured .newsletter-bg.rounded-2xl.bg-white {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

@media (min-width: 1024px) and (max-width: 1366px) {
  footer .newsletter-bg.rounded-3xl.bg-\[\#1a1514\] {
    padding: 2rem 1.25rem;
  }

  [data-products-desktop] .newsletter-bg.rounded-3xl {
    padding: 12px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item > .grid > .newsletter-bg {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .grid > .newsletter-bg {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .grid > .newsletter-bg .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .grid > .newsletter-bg {
    width: 86px;
    height: 86px;
  }
}

.newsletter-bg {
  background: linear-gradient(to bottom, #F3F4F6 0 70%, transparent 30%);
}

.newsletter-bg::before,
  .newsletter-bg::after {
  content: '';
  position: absolute;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
  opacity: 0.55;
  z-index: 111;
}

/* .modal-backdrop {
  @apply fixed inset-0 z-[900] hidden bg-brand-dark/80;
}

.side-panel {
  @apply fixed right-0 top-0 z-[1000] h-dvh w-full max-w-[350px] translate-x-full overflow-y-auto bg-white px-5 py-3 transition-transform duration-300 ease-out;
} */


@media (max-width: 400px) {
  .newsletter-bg .btn-primary .btn-primary-text{
    padding: 0 15px;
  }
}

.newsletter-field{
  display: flex;
  height: 3rem;
  align-items: center;
  gap: 0.75rem;
  border-radius: 0.5rem;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(229 229 229 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 1rem;
  padding-right: 1rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  --tw-text-opacity: 1;
  color: rgb(115 115 115 / var(--tw-text-opacity, 1));
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.rounded-2xl.newsletter-field {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.newsletter-field.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.newsletter-field.h-\[68px\] {
    gap: 12px;
  }
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .newsletter-field.desktop-search INPUT{
    width: 250px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.newsletter-field.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item .mt-1.flex.newsletter-field.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item .mt-1.flex.items-center.newsletter-field {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

.newsletter-field input,
  .newsletter-field textarea{
  height: 100%;
  min-width: 0px;
  flex: 1 1 0%;
  background-color: transparent;
  font-size: 0.875rem;
  line-height: 1.25rem;
  --tw-text-opacity: 1;
  color: rgb(38 38 38 / var(--tw-text-opacity, 1));
  outline: 2px solid transparent;
  outline-offset: 2px;
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.flex.items-center.newsletter-field input,.cart-summary-item .mt-1.flex.items-center
  .newsletter-field textarea {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

.newsletter-field input::-moz-placeholder, .newsletter-field textarea::-moz-placeholder{
  --tw-text-opacity: 1;
  color: rgb(163 163 163 / var(--tw-text-opacity, 1));
}

.newsletter-field input::placeholder,
  .newsletter-field textarea::placeholder{
  --tw-text-opacity: 1;
  color: rgb(163 163 163 / var(--tw-text-opacity, 1));
}

.newsletter-field img {
  border-right: 1px solid #E0E0E0;
  padding-right: 10px;
}

.newsletter-field textarea{
  height: 5rem;
  resize: none;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}

/* Decorative images for newsletter section */

.newsletter-decor {
  position: absolute;
  pointer-events: none;
  z-index: 0;
  width: 260px;
  height: 260px;
  opacity: 0.95;
  mix-blend-mode: normal;
}

.newsletter-decor--top-right {
  right: -40px;
  top: -40px;
  transform: rotate(0deg);
}

.newsletter-decor--bottom-left {
  left: -40px;
  bottom: -40px;
  transform: rotate(180deg);
}

/* Ensure the main newsletter content sits above decorations */

.newsletter-bg > .container-page {
  position: relative;
  z-index: 1;
}

.about-who-copy{
  margin-top: 1.5rem;
}

.about-who-copy > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1rem * var(--tw-space-y-reverse));
}

.about-who-copy{
  font-size: 0.875rem;
  line-height: 1.25rem;
  line-height: 1.625;
  --tw-text-opacity: 1;
  color: rgb(102 100 100 / var(--tw-text-opacity, 1));
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.flex.items-center.about-who-copy {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

@media (min-width: 640px){
  .about-who-copy{
    font-size: 1rem;
    line-height: 1.5rem;
  }
}

.about-who-list{
  margin-top: 1.75rem;
  display: grid;
  gap: 0.75rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 500;
  --tw-text-opacity: 1;
  color: rgb(55 50 50 / var(--tw-text-opacity, 1));
}

@media (max-width: 1023px) {
  .cart-summary-item > .about-who-list {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
  }

  .cart-summary-item > .about-who-list > .relative {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }

  .cart-summary-item .mt-1.flex.items-center.about-who-list {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item > .about-who-list > .shrink-0 {
    align-self: center;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .about-who-list {
    grid-template-columns: 96px minmax(0, 1fr) auto;
    min-height: 120px;
    padding: 12px;
    -moz-column-gap: 22px;
         column-gap: 22px;
  }

  .cart-summary-item > .about-who-list > .relative {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .about-who-list > .relative .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .about-who-list {
    grid-template-columns: 86px minmax(0, 1fr) auto;
    -moz-column-gap: 16px;
         column-gap: 16px;
  }

  .cart-summary-item > .about-who-list > .relative {
    width: 86px;
    height: 86px;
  }
}

@media (min-width: 640px){
  .about-who-list{
    font-size: 1rem;
    line-height: 1.5rem;
  }
}

.about-who-list li{
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  font-size: 16px;
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.about-who-list li.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.about-who-list li.h-\[68px\] {
    gap: 12px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.about-who-list li.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

.about-who-list img{
  margin-top: 0.25rem;
  height: 1rem;
  width: 1rem;
  flex-shrink: 0;
}

@media (max-width: 1023px) {
  .cart-summary-item .about-who-list img.flex.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item > .grid > .about-who-list img {
    align-self: center;
  }
}

.about-image-collage {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 0.92fr);
  grid-template-rows: minmax(0, 1fr) minmax(0, 1fr);
  gap: 14px;
  min-height: 360px;
}

.about-image-collage img {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 20px;
  -o-object-fit: cover;
     object-fit: cover;
}

.about-collage-main {
  grid-column: 1;
  grid-row: 1;
  min-height: 168px;
}

.about-collage-small {
  grid-column: 1;
  grid-row: 2;
  min-height: 168px;
}

.about-collage-tall {
  grid-column: 2;
  grid-row: 1 / span 2;
  min-height: 350px;
}

.about-team-grid {
  display: grid;
  gap: 20px;
  margin-top: 2.5rem;
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

@media (min-width: 640px) {
  .about-team-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .about-team-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.about-team-drawer.side-panel {
  right: auto;
  left: 50%;
  top: 50%;
  width: calc(100% - 2rem);
  max-width: 1120px;
  height: auto;
  max-height: calc(100dvh - 2rem);
  padding: clamp(1.25rem, 2.5vw, 2.25rem);
  border-radius: 20px;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.22);
  transform: translate(-50%, -48%) scale(0.96);
  opacity: 0;
  pointer-events: none;
  transition: transform 280ms ease, opacity 280ms ease;
}

.about-team-drawer.side-panel.is-open {
  transform: translate(-50%, -50%) scale(1);
  opacity: 1;
  pointer-events: auto;
}

.about-team-drawer-close {
  position: absolute;
  top: 1rem;
  right: 1rem;
  z-index: 2;
}

.about-team-drawer-inner {
  display: grid;
  gap: 2rem;
  padding-top: 0.5rem;
}

@media (min-width: 1024px) {
  .about-team-drawer-inner {
    grid-template-columns: minmax(260px, 340px) minmax(0, 1fr);
    gap: 2.5rem;
    align-items: start;
  }
}

.about-team-drawer-profile h3 {
  margin-top: 1.5rem;
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  font-weight: 800;
  line-height: 1.15;
  color: #1b1515;
}

.about-drawer-photo {
  display: block;
  width: 100%;
  border-radius: 16px;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 1 / 1.05;
}

.about-drawer-title {
  margin-top: 0.5rem;
  font-size: 1.1rem;
  font-weight: 600;
  color: #b2161d;
}

.about-drawer-meta {
  margin-top: 0.5rem;
  font-size: 0.9rem;
  color: #666464;
}

.about-drawer-email {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.6rem;
  width: 100%;
  margin-top: 1.5rem;
  min-height: 48px;
  border-radius: 10px;
  background: #b2161d;
  color: #fff;
  font-size: 0.95rem;
  font-weight: 600;
  transition: background-color 220ms ease;
}

.about-drawer-email:hover {
  background: #1b1515;
}

.about-drawer-copy h4 {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin: 0 0 1rem;
  font-size: 1.15rem;
  font-weight: 800;
  color: #1b1515;
}

.about-drawer-copy h4::before {
  content: "";
  width: 4px;
  height: 1.35rem;
  border-radius: 999px;
  background: #b2161d;
  flex-shrink: 0;
}

.about-drawer-copy h4 + h4 {
  margin-top: 1.75rem;
}

.about-drawer-copy p {
  margin: 0 0 1rem;
  font-size: 0.95rem;
  line-height: 1.7;
  color: #666464;
}

.about-specialty-grid {
  display: grid;
  gap: 0.85rem;
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

@media (min-width: 640px) {
  .about-specialty-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.about-specialty-card {
  display: flex;
  align-items: flex-start;
  gap: 0.85rem;
  padding: 0.9rem 1rem;
  border: 1px solid #ececec;
  border-radius: 12px;
  background: #fff;
}

.about-specialty-icon {
  display: grid;
  place-items: center;
  width: 2.5rem;
  height: 2.5rem;
  flex-shrink: 0;
  border-radius: 10px;
  background: #f8e8e9;
  color: #b2161d;
  font-size: 1rem;
  line-height: 1;
}

.about-specialty-card strong {
  display: block;
  font-size: 0.92rem;
  font-weight: 700;
  color: #b2161d;
  line-height: 1.3;
}

.about-specialty-card small {
  display: block;
  margin-top: 0.2rem;
  font-size: 0.78rem;
  line-height: 1.4;
  color: #666464;
}

.contact-info-card {
  background-image: radial-gradient(circle at 88% 10%, rgba(255,255,255,0.07), transparent 30%), linear-gradient(180deg, #b2161d 0%, #a9151b 100%);
}

.contact-field{
  display: flex;
  min-height: 58px;
  align-items: center;
  gap: 1rem;
  border-radius: 6px;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  font-size: 15px;
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.rounded-2xl.contact-field {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.contact-field.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.contact-field.h-\[68px\] {
    gap: 12px;
  }
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .contact-field.desktop-search INPUT{
    width: 250px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.contact-field.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item .mt-1.flex.contact-field.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

.contact-field input,
  .contact-field textarea{
  min-width: 0px;
  flex: 1 1 0%;
  background-color: transparent;
  font-size: 15px;
  --tw-text-opacity: 1;
  color: rgb(38 38 38 / var(--tw-text-opacity, 1));
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.contact-field input::-moz-placeholder, .contact-field textarea::-moz-placeholder{
  --tw-text-opacity: 1;
  color: rgb(115 115 115 / var(--tw-text-opacity, 1));
}

.contact-field input::placeholder,
  .contact-field textarea::placeholder{
  --tw-text-opacity: 1;
  color: rgb(115 115 115 / var(--tw-text-opacity, 1));
}

.contact-field textarea{
  height: 56px;
  resize: none;
  line-height: 1.625;
}

@media (max-width: 1023px) {
  .contact-info-card {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
  }
}

.product-details-hero {
  color: #1b1515;
  padding-top: 0;
  background: #fff;
}

.product-details-breadcrumb {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

@media (min-width: 768px) {
  .product-details-breadcrumb {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }
}

@media (min-width: 1024px) {
  .product-details-breadcrumb {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
}

.product-gallery {
  width: 100%;
}

.product-gallery-main {
  display: grid;
  place-items: center;
  aspect-ratio: 1 / 1;
  border: 1px solid #e8e8e8;
  border-radius: 20px;
  background: #fff;
  padding: clamp(1.25rem, 5vw, 3rem);
}

.product-gallery-main img {
  width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.product-gallery-thumbs {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  margin-top: 1rem;
}

@media (min-width: 640px) {
  .product-gallery-thumbs {
    gap: 0.75rem;
    margin-top: 1.25rem;
  }
}

.product-gallery-nav {
  display: grid;
  flex-shrink: 0;
  place-items: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 999px;
  border: 1px solid #e0e0e0;
  background: #fff;
  color: #1b1515;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
  transition: background-color 200ms ease, color 200ms ease, border-color 200ms ease;
}

.product-gallery-nav:hover {
  background: #b2161d;
  color: #fff;
  border-color: #b2161d;
}

.product-gallery-thumbs-track {
  display: flex;
  flex: 1;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-width: 0;
  overflow-x: auto;
  scroll-behavior: smooth;
  scrollbar-width: none;
  -ms-overflow-style: none;
  padding: 2px 0;
}

.product-gallery-thumbs-track::-webkit-scrollbar {
  display: none;
}

@media (min-width: 640px) {
  .product-gallery-thumbs-track {
    gap: 0.65rem;
  }
}

.product-gallery-thumb {
  flex-shrink: 0;
  display: grid;
  place-items: center;
  width: 3.25rem;
  height: 3.25rem;
  border-radius: 10px;
  border: 2px solid #e8e8e8;
  background: #fff;
  padding: 0.3rem;
  transition: border-color 200ms ease;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
}

@media (min-width: 480px) {
  .product-gallery-thumb {
    width: 3.5rem;
    height: 3.5rem;
    padding: 0.35rem;
  }
}

@media (min-width: 640px) {
  .product-gallery-thumb {
    width: 4rem;
    height: 4rem;
    padding: 0.4rem;
  }
}

@media (min-width: 1024px) {
  .product-gallery-thumb {
    width: 4.5rem;
    height: 4.5rem;
    border-radius: 12px;
    padding: 0.45rem;
  }
}

.product-gallery-thumb.is-active {
  border-color: #b2161d;
  box-shadow: 0 0 0 1px #b2161d;
}

.product-gallery-thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.product-details-info {
  display: flex;
  flex-direction: column;
  gap: 0;
  background: #fff;
  color: #1b1515;
  padding: 1.25rem 1rem;
  border-radius: 0;
}

@media (min-width: 768px) {
  .product-details-info {
    padding: 0 0 0 0.5rem;
    background: #fff;
  }
}

@media (min-width: 1024px) {
  .product-details-info {
    padding-left: 1rem;
  }
}

.product-details-info > * {
  margin-bottom: 1rem;
}

.product-details-info > *:last-child {
  margin-bottom: 0;
}

/* Mobile content order */

.product-details-title {
  order: 1;
}

.product-details-meta--sku {
  order: 2;
}

.product-details-meta--rating {
  order: 3;
}

.product-details-meta--price {
  order: 4;
}

.product-details-divider--1 {
  order: 5;
}

.product-details-desc-lead {
  order: 6;
}

.product-details-desc-body {
  order: 7;
}

.product-details-actions {
  order: 15;
}

.product-details-read-more {
  order: 8;
}

.product-details-divider--2 {
  order: 9;
}

.product-details-features {
  order: 10;
}

.product-details-divider--3 {
  order: 11;
}

.product-details-options {
  order: 12;
}

.product-details-divider--4 {
  order: 13;
  display: none;
}

.product-details-category-link {
  order: 14;
}

@media (min-width: 768px) {
  .product-details-desc-lead {
    order: 6;
  }

  .product-details-desc-body {
    order: 7;
  }

  .product-details-read-more {
    order: 8;
  }

  .product-details-divider--2 {
    order: 9;
  }

  .product-details-features {
    order: 10;
  }

  .product-details-divider--3 {
    order: 11;
  }

  .product-details-options {
    order: 12;
  }

  .product-details-divider--4 {
    order: 13;
    display: block;
  }

  .product-details-actions {
    order: 15;
  }

  .product-details-category-link {
    order: 14;
  }
}

.product-details-title{
  font-size: 24px;
  font-weight: 600;
  line-height: 1.25;
  --tw-text-opacity: 1;
  color: rgb(164 22 26 / var(--tw-text-opacity, 1));
}

@media (max-width: 1023px) {
  
  .cart-summary-item__variants .product-details-title {
    color: #A4161A;
  }
}

@media (min-width: 768px){
  .product-details-title{
    font-size: 28px;
  }
}

@media (min-width: 1024px){
  .product-details-title{
    font-size: 32px;
  }
}

.product-details-meta{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  row-gap: 0.65rem;
  -moz-column-gap: 0.85rem;
       column-gap: 0.85rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.product-details-meta.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.product-details-meta.h-\[68px\] {
    gap: 12px;
  }
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .product-details-meta.desktop-search INPUT{
    width: 250px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.product-details-meta.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item .mt-1.flex.product-details-meta.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item .mt-1.flex.items-center.product-details-meta {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

@media (min-width: 640px){
  .product-details-meta{
    row-gap: 0.75rem;
    -moz-column-gap: 1rem;
         column-gap: 1rem;
    font-size: 1rem;
    line-height: 1.5rem;
  }
}

.product-details-meta__text{
  font-weight: 500;
  --tw-text-opacity: 1;
  color: rgb(154 154 154 / var(--tw-text-opacity, 1));
}

.product-details-meta__brand-label{
  font-weight: 500;
  --tw-text-opacity: 1;
  color: rgb(164 22 26 / var(--tw-text-opacity, 1));
}

@media (max-width: 1023px) {
  
  .cart-summary-item__variants .product-details-meta__brand-label {
    color: #A4161A;
  }
}

.product-details-meta-divider{
  height: 1rem;
  width: 1px;
  flex-shrink: 0;
  --tw-bg-opacity: 1;
  background-color: rgb(102 100 100 / var(--tw-bg-opacity, 1));
}

@media (max-width: 1023px) {
  .cart-summary-item > .grid > .product-details-meta-divider {
    align-self: center;
  }
}

@media (min-width: 1024px) {
  .footer-payments > .product-details-brand {
    width: auto;
    min-width: 4.75rem;
    max-width: none;
    height: 3rem;
    min-height: 3rem;
    flex: 0 0 auto;
    border-radius: 0.375rem;
    padding: 0.375rem 0.625rem;
  }

  .footer-payments > .product-details-brand:last-child {
    grid-column: auto;
    min-width: 6.5rem;
  }

  .footer-payments > .product-details-brand {
    width: auto;
    min-width: 4.75rem;
    max-width: none;
    height: 3rem;
    min-height: 3rem;
    flex: 0 0 auto;
    border-radius: 0.375rem;
    padding: 0.375rem 0.625rem;
  }

  .footer-payments > .product-details-brand:last-child {
    grid-column: auto;
    min-width: 6.5rem;
  }
}

@media (max-width: 1023px) {
  .footer-payments > .product-details-brand {
    width: 100%;
    min-width: 0;
    max-width: none;
    flex: none;
  }

  .footer-payments > .product-details-brand:last-child {
    grid-column: 1 / -1;
  }

  .footer-payments > .product-details-brand {
    width: 100%;
    min-width: 0;
    max-width: none;
    flex: none;
  }

  .footer-payments > .product-details-brand:last-child {
    grid-column: 1 / -1;
  }
}

.product-details-brand{
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}

@media (min-width: 1367px) {
  .footer-payments > .product-details-brand {
    min-width: 5.25rem;
    height: 3rem;
  }
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .product-details-brand.desktop-search INPUT{
    width: 250px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.flex.product-details-brand.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item .product-details-brand[aria-label="Quantity"] {
    min-width: 72px;
    min-height: 34px;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.25rem 0.5rem;
    touch-action: manipulation;
  }

  .cart-summary-item .product-details-brand[aria-label="Quantity"] [data-cart-qty-display] {
    min-width: 0.75rem;
    font-size: 0.8125rem;
    font-weight: 600;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item .product-details-brand[aria-label="Quantity"] {
    min-width: 72px;
    height: 34px;
    justify-content: center;
    gap: 10px;
    padding: 0 8px;
  }

  .footer-payments > .product-details-brand-logo-wrap {
    width: auto;
    min-width: 4.75rem;
    max-width: none;
    height: 3rem;
    min-height: 3rem;
    flex: 0 0 auto;
    border-radius: 0.375rem;
    padding: 0.375rem 0.625rem;
  }

  .footer-payments > .product-details-brand-logo-wrap:last-child {
    grid-column: auto;
    min-width: 6.5rem;
  }

  .footer-payments > .product-details-brand-logo-wrap {
    width: auto;
    min-width: 4.75rem;
    max-width: none;
    height: 3rem;
    min-height: 3rem;
    flex: 0 0 auto;
    border-radius: 0.375rem;
    padding: 0.375rem 0.625rem;
  }

  .footer-payments > .product-details-brand-logo-wrap:last-child {
    grid-column: auto;
    min-width: 6.5rem;
  }
}

@media (max-width: 1023px) {
  .footer-payments > .product-details-brand-logo-wrap {
    width: 100%;
    min-width: 0;
    max-width: none;
    flex: none;
  }

  .footer-payments > .product-details-brand-logo-wrap:last-child {
    grid-column: 1 / -1;
  }

  .footer-payments > .product-details-brand-logo-wrap {
    width: 100%;
    min-width: 0;
    max-width: none;
    flex: none;
  }

  .footer-payments > .product-details-brand-logo-wrap:last-child {
    grid-column: 1 / -1;
  }
}

.product-details-brand-logo-wrap{
  display: inline-flex;
  height: 1.75rem;
  width: 4.75rem;
  align-items: center;
  justify-content: center;
  border-radius: 5px;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  --tw-shadow: 0 0 10px #DEDEDE;
  --tw-shadow-colored: 0 0 10px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.rounded-2xl.product-details-brand-logo-wrap {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

@media (min-width: 1367px) {
  .footer-payments > .product-details-brand-logo-wrap {
    min-width: 5.25rem;
    height: 3rem;
  }
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .product-details-brand-logo-wrap.desktop-search INPUT{
    width: 250px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.flex.product-details-brand-logo-wrap.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item .product-details-brand-logo-wrap[aria-label="Quantity"] {
    min-width: 72px;
    min-height: 34px;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.25rem 0.5rem;
    touch-action: manipulation;
  }

  .cart-summary-item .product-details-brand-logo-wrap[aria-label="Quantity"] [data-cart-qty-display] {
    min-width: 0.75rem;
    font-size: 0.8125rem;
    font-weight: 600;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item .product-details-brand-logo-wrap[aria-label="Quantity"] {
    min-width: 72px;
    height: 34px;
    justify-content: center;
    gap: 10px;
    padding: 0 8px;
  }
}

.product-details-brand-logo{
  height: auto;
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

@media (min-width: 1024px) {
  .footer-payments > .product-details-rating {
    width: auto;
    min-width: 4.75rem;
    max-width: none;
    height: 3rem;
    min-height: 3rem;
    flex: 0 0 auto;
    border-radius: 0.375rem;
    padding: 0.375rem 0.625rem;
  }

  .footer-payments > .product-details-rating:last-child {
    grid-column: auto;
    min-width: 6.5rem;
  }

  .footer-payments > .product-details-rating {
    width: auto;
    min-width: 4.75rem;
    max-width: none;
    height: 3rem;
    min-height: 3rem;
    flex: 0 0 auto;
    border-radius: 0.375rem;
    padding: 0.375rem 0.625rem;
  }

  .footer-payments > .product-details-rating:last-child {
    grid-column: auto;
    min-width: 6.5rem;
  }
}

@media (max-width: 1023px) {
  .footer-payments > .product-details-rating {
    width: 100%;
    min-width: 0;
    max-width: none;
    flex: none;
  }

  .footer-payments > .product-details-rating:last-child {
    grid-column: 1 / -1;
  }

  .footer-payments > .product-details-rating {
    width: 100%;
    min-width: 0;
    max-width: none;
    flex: none;
  }

  .footer-payments > .product-details-rating:last-child {
    grid-column: 1 / -1;
  }
}

.product-details-rating{
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.25rem;
}

@media (min-width: 1367px) {
  .footer-payments > .product-details-rating {
    min-width: 5.25rem;
    height: 3rem;
  }
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .product-details-rating.desktop-search INPUT{
    width: 250px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.flex.product-details-rating.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item .product-details-rating[aria-label="Quantity"] {
    min-width: 72px;
    min-height: 34px;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.25rem 0.5rem;
    touch-action: manipulation;
  }

  .cart-summary-item .product-details-rating[aria-label="Quantity"] [data-cart-qty-display] {
    min-width: 0.75rem;
    font-size: 0.8125rem;
    font-weight: 600;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item .product-details-rating[aria-label="Quantity"] {
    min-width: 72px;
    height: 34px;
    justify-content: center;
    gap: 10px;
    padding: 0 8px;
  }
}

.product-details-price{
  font-size: 24px;
  font-weight: 600;
  line-height: 1.25;
  --tw-text-opacity: 1;
  color: rgb(164 22 26 / var(--tw-text-opacity, 1));
}

@media (max-width: 1023px) {
  
  .cart-summary-item__variants .product-details-price {
    color: #A4161A;
  }
}

@media (min-width: 768px){
  .product-details-price{
    font-size: 28px;
  }
}

@media (min-width: 1024px){
  .product-details-price{
    font-size: 32px;
  }
}

.product-details-divider {
  height: 1px;
  background: #e0e0e0;
  margin-bottom: 1rem !important;
}

.product-details-desc-lead{
  margin-bottom: 0.5rem !important;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.6;
  --tw-text-opacity: 1;
  color: rgb(27 22 22 / var(--tw-text-opacity, 1));
}

.product-details-desc-body{
  margin-bottom: 0px !important;
  font-size: 15px;
  line-height: 1.65;
  --tw-text-opacity: 1;
  color: rgb(102 100 100 / var(--tw-text-opacity, 1));
}

@media (max-width: 767px) {
  .product-details-desc-body {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
}

.product-details-read-more:hover {
  color: #ff9ea1;
}

.product-details-features{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.75rem;
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.product-details-features.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.product-details-features.h-\[68px\] {
    gap: 12px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.product-details-features.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

.product-details-features__row{
  display: flex;
  min-width: 0px;
  flex: 1 1 0%;
  flex-wrap: wrap;
  align-items: center;
  row-gap: 0.65rem;
  -moz-column-gap: 0.85rem;
       column-gap: 0.85rem;
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.product-details-features__row.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.product-details-features__row.h-\[68px\] {
    gap: 12px;
  }
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .product-details-features__row.desktop-search INPUT{
    width: 250px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.product-details-features__row.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item .mt-1.flex.product-details-features__row.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

.product-details-features__label{
  flex-shrink: 0;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(27 22 22 / var(--tw-text-opacity, 1));
}

@media (max-width: 1023px) {
  .cart-summary-item > .grid > .product-details-features__label {
    align-self: center;
  }
}

.product-details-features__check {
  flex-shrink: 0;
  width: 1.375rem;
  height: 1.375rem;
  margin-top: 0.15rem;
}

.product-details-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.product-details-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 3.75rem;
  border-radius: 10px;
  border: 1px solid #e0e0e0;
  background: #f7f7f7;
  padding: 0.5rem 0.75rem;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.1;
}

.product-details-badge__prefix {
  color: #1b1515;
  font-weight: 700;
}

.product-details-badge__value{
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(164 22 26 / var(--tw-text-opacity, 1));
}

@media (max-width: 1023px) {
  
  .cart-summary-item__variants .product-details-badge__value {
    color: #A4161A;
  }
}

.product-details-badge--stacked{
  min-width: 5rem;
  flex-direction: column;
  gap: 0.1rem;
  padding-top: 0.4rem;
  padding-bottom: 0.4rem;
  padding-left: 0.65rem;
  padding-right: 0.65rem;
}

.product-details-badge--stacked small{
  font-size: 0.62rem;
  font-weight: 500;
  --tw-text-opacity: 1;
  color: rgb(27 21 21 / var(--tw-text-opacity, 1));
}

.product-details-badge--stacked strong{
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(164 22 26 / var(--tw-text-opacity, 1));
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.flex.items-center.product-details-badge--stacked strong {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  
  .cart-summary-item__variants .product-details-badge--stacked strong {
    color: #A4161A;
  }
}

.product-details-options {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(0, 1fr);
}

@media (min-width: 640px) {
  .product-details-options {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
  }
}

@media (max-width: 639px) {
  .product-details-options {
    grid-template-columns: 1fr;
  }

  .product-details-option-card {
    width: 100%;
  }
}

.product-details-option-card{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  row-gap: 0.75rem;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  border-radius: 10px;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(224 224 224 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(247 247 247 / var(--tw-bg-opacity, 1));
  padding-top: 0.85rem;
  padding-bottom: 0.85rem;
  padding-left: 1rem;
  padding-right: 1rem;
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.product-details-option-card.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.product-details-option-card.h-\[68px\] {
    gap: 12px;
  }
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .product-details-option-card.desktop-search INPUT{
    width: 250px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.product-details-option-card.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item .mt-1.flex.product-details-option-card.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

.product-details-option-label{
  flex-shrink: 0;
  font-size: 0.9375rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(164 22 26 / var(--tw-text-opacity, 1));
}

@media (max-width: 1023px) {
  .cart-summary-item > .grid > .product-details-option-label {
    align-self: center;
  }

  
  .cart-summary-item__variants .product-details-option-label {
    color: #A4161A;
  }
}

.product-details-colours{
  display: flex;
  flex-wrap: wrap;
  row-gap: 0.85rem;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.product-details-colours.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.product-details-colours.h-\[68px\] {
    gap: 12px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.product-details-colours.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

.product-details-colour{
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.25rem;
  background-color: transparent;
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.product-details-colour.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.product-details-colour.h-\[68px\] {
    gap: 12px;
  }
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .product-details-colour.desktop-search INPUT{
    width: 250px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.product-details-colour.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item .mt-1.flex.product-details-colour.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

.product-details-colour-icon{
  display: grid;
  height: 2rem;
  width: 2rem;
  place-items: center;
  border-radius: 8px;
  border-width: 2px;
  --tw-border-opacity: 1;
  border-color: rgb(224 224 224 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  transition-property: border-color;
  transition-duration: 200ms;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.rounded-2xl.product-details-colour-icon {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item > .product-details-colour-icon {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
  }

  .cart-summary-item > .product-details-colour-icon > .relative {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }

  .cart-summary-item > .product-details-colour-icon > .shrink-0 {
    align-self: center;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .product-details-colour-icon {
    grid-template-columns: 96px minmax(0, 1fr) auto;
    min-height: 120px;
    padding: 12px;
    -moz-column-gap: 22px;
         column-gap: 22px;
  }

  .cart-summary-item > .product-details-colour-icon > .relative {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .product-details-colour-icon > .relative .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .product-details-colour-icon {
    grid-template-columns: 86px minmax(0, 1fr) auto;
    -moz-column-gap: 16px;
         column-gap: 16px;
  }

  .cart-summary-item > .product-details-colour-icon > .relative {
    width: 86px;
    height: 86px;
  }
}

.product-details-colour.is-active .product-details-colour-icon{
  --tw-border-opacity: 1;
  border-color: rgb(164 22 26 / var(--tw-border-opacity, 1));
}

.product-details-colour-icon img{
  height: 100%;
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.product-details-colour-label{
  font-size: 0.75rem;
  line-height: 1rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(27 21 21 / var(--tw-text-opacity, 1));
}

.product-details-wattage{
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.product-details-wattage.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.product-details-wattage.h-\[68px\] {
    gap: 12px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.product-details-wattage.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

.product-details-wattage-btn{
  border-radius: 9999px;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(229 229 229 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-top: 0.45rem;
  padding-bottom: 0.45rem;
  padding-left: 1rem;
  padding-right: 1rem;
  font-size: 0.8125rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(122 122 122 / var(--tw-text-opacity, 1));
  transition-property: background-color,color,border-color;
  transition-duration: 200ms;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.rounded-2xl.product-details-wattage-btn {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

.product-details-wattage-btn.is-active{
  --tw-border-opacity: 1;
  border-color: rgb(27 21 21 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(27 21 21 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.product-details-actions{
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 0.5rem;
  border-radius: 9999px;
  --tw-bg-opacity: 1;
  background-color: rgb(247 247 247 / var(--tw-bg-opacity, 1));
  padding: 0.35rem;
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.product-details-actions.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.product-details-actions.h-\[68px\] {
    gap: 12px;
  }
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .product-details-actions.desktop-search INPUT{
    width: 250px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.product-details-actions.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item .mt-1.flex.product-details-actions.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

@media (min-width: 768px) {
  .product-details-actions{
    flex-wrap: wrap;
    gap: 0.75rem;
    border-radius: 0px;
    background-color: transparent;
    padding: 0px;
  }
}

@media (min-width: 1024px) {
  .footer-payments > .product-details-qty {
    width: auto;
    min-width: 4.75rem;
    max-width: none;
    height: 3rem;
    min-height: 3rem;
    flex: 0 0 auto;
    border-radius: 0.375rem;
    padding: 0.375rem 0.625rem;
  }

  .footer-payments > .product-details-qty:last-child {
    grid-column: auto;
    min-width: 6.5rem;
  }

  .footer-payments > .product-details-qty {
    width: auto;
    min-width: 4.75rem;
    max-width: none;
    height: 3rem;
    min-height: 3rem;
    flex: 0 0 auto;
    border-radius: 0.375rem;
    padding: 0.375rem 0.625rem;
  }

  .footer-payments > .product-details-qty:last-child {
    grid-column: auto;
    min-width: 6.5rem;
  }
}

@media (max-width: 1023px) {
  .footer-payments > .product-details-qty {
    width: 100%;
    min-width: 0;
    max-width: none;
    flex: none;
  }

  .footer-payments > .product-details-qty:last-child {
    grid-column: 1 / -1;
  }

  .footer-payments > .product-details-qty {
    width: 100%;
    min-width: 0;
    max-width: none;
    flex: none;
  }

  .footer-payments > .product-details-qty:last-child {
    grid-column: 1 / -1;
  }
}

.product-details-qty{
  display: inline-flex;
  height: 2.75rem;
  min-width: 7.75rem;
  flex-shrink: 0;
  align-items: center;
  justify-content: space-between;
  border-radius: 9999px;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(229 229 229 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(245 245 245 / var(--tw-bg-opacity, 1));
  padding-left: 1.1rem;
  padding-right: 1.1rem;
  --tw-text-opacity: 1;
  color: rgb(27 21 21 / var(--tw-text-opacity, 1));
}

@media (min-width: 1367px) {
  .footer-payments > .product-details-qty {
    min-width: 5.25rem;
    height: 3rem;
  }
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .product-details-qty.desktop-search INPUT{
    width: 250px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.flex.product-details-qty.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item > .grid > .product-details-qty {
    align-self: center;
  }

  .cart-summary-item .product-details-qty[aria-label="Quantity"] {
    min-width: 72px;
    min-height: 34px;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.25rem 0.5rem;
    touch-action: manipulation;
  }

  .cart-summary-item .product-details-qty[aria-label="Quantity"] [data-cart-qty-display] {
    min-width: 0.75rem;
    font-size: 0.8125rem;
    font-weight: 600;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item .product-details-qty[aria-label="Quantity"] {
    min-width: 72px;
    height: 34px;
    justify-content: center;
    gap: 10px;
    padding: 0 8px;
  }
}

@media (min-width: 768px) {
  .product-details-qty {
    min-width: 8.25rem;
    height: 3rem;
    padding: 0 1.25rem;
  }
}

.product-details-qty-btn{
  display: grid;
  height: 1.25rem;
  width: 1.25rem;
  flex-shrink: 0;
  place-items: center;
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 400;
  line-height: 1;
  --tw-text-opacity: 1;
  color: rgb(27 21 21 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-duration: 200ms;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

@media (max-width: 1023px) {
  .cart-summary-item > .product-details-qty-btn {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
  }

  .cart-summary-item > .product-details-qty-btn > .relative {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }

  .cart-summary-item > .product-details-qty-btn > .shrink-0 {
    align-self: center;
  }

  .cart-summary-item > .grid > .product-details-qty-btn {
    align-self: center;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .product-details-qty-btn {
    grid-template-columns: 96px minmax(0, 1fr) auto;
    min-height: 120px;
    padding: 12px;
    -moz-column-gap: 22px;
         column-gap: 22px;
  }

  .cart-summary-item > .product-details-qty-btn > .relative {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .product-details-qty-btn > .relative .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .product-details-qty-btn {
    grid-template-columns: 86px minmax(0, 1fr) auto;
    -moz-column-gap: 16px;
         column-gap: 16px;
  }

  .cart-summary-item > .product-details-qty-btn > .relative {
    width: 86px;
    height: 86px;
  }
}

.product-details-qty-btn:hover{
  --tw-text-opacity: 1;
  color: rgb(164 22 26 / var(--tw-text-opacity, 1));
}

@media (max-width: 1023px) {
  
  .cart-summary-item__variants .product-details-qty-btn:hover {
    color: #A4161A;
  }
}

.product-details-qty-value {
  flex: 1;
  min-width: 1.25rem;
  text-align: center;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
}

.product-details-add-cart,
  .product-details-quote {
  flex: 1 1 auto;
  min-width: 0;
  min-height: 2.75rem;
  border-radius: 999px;
  padding: 0.65rem 0.75rem;
  font-size: 0.8125rem;
  font-weight: 600;
  white-space: nowrap;
  transition: background-color 200ms ease, color 200ms ease, border-color 200ms ease;
}

@media (min-width: 640px) {
  .product-details-add-cart,
    .product-details-quote {
    font-size: 0.875rem;
    padding: 0.75rem 1.25rem;
  }
}

@media (min-width: 768px) {
  .product-details-add-cart,
    .product-details-quote {
    flex: 1 1 9rem;
    min-height: 3rem;
    padding: 0.75rem 1.5rem;
    font-size: 0.95rem;
  }
}

.product-details-add-cart{
  --tw-bg-opacity: 1;
  background-color: rgb(164 22 26 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.product-details-add-cart:hover {
  background: #8f1a1a;
}

.product-details-quote {
  border: 1px solid #1b1515;
  background: #1b1515;
  color: #fff;
}

.product-details-quote:hover {
  border-color: #333;
  background: #2a2221;
}

.product-details-category-link{
  display: inline-block;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(164 22 26 / var(--tw-text-opacity, 1));
  text-decoration-line: underline;
  text-underline-offset: 3px;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-duration: 200ms;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.flex.items-center.product-details-category-link {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  
  .cart-summary-item__variants .product-details-category-link {
    color: #A4161A;
  }
}

@media (min-width: 640px) {
  .product-details-category-link {
    font-size: 0.9375rem;
  }
}

.product-details-category-link:hover{
  --tw-text-opacity: 1;
  color: rgb(31 25 25 / var(--tw-text-opacity, 1));
}

@media (max-width: 639px) {
  .product-details-option-card {
    flex-direction: row;
    align-items: center;
  }
}

@media (max-width: 479px) {
  .product-details-colours,
    .product-details-wattage {
    flex-wrap: wrap;
  }

  .product-gallery-nav {
    width: 2.25rem;
    height: 2.25rem;
  }
}

.product-info-section {
  background: #fff;
  color: #1b1515;
}

.product-info-layout {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.product-info-row {
  display: grid;
  gap: 1rem;
  grid-template-columns: 1fr;
  align-items: stretch;
}

@media (min-width: 640px) {
  .product-info-layout,
    .product-info-row {
    gap: 1.25rem;
  }
}

@media (min-width: 768px) {
  .product-info-row--top {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .product-info-row--bottom {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .product-info-row--bottom .product-info-card:last-child {
    grid-column: 1 / -1;
  }
}

@media (min-width: 1024px) {
  .product-info-row--top {
    grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr);
  }

  .product-info-row--bottom {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .product-info-row--bottom .product-info-card:last-child {
    grid-column: auto;
  }
}

.product-info-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
  border: 1px solid #ececec;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.product-info-card__header {
  background: #b2161d;
  padding: 0.75rem 1rem;
}

@media (min-width: 640px) {
  .product-info-card__header {
    padding: 0.85rem 1.25rem;
  }
}

.product-info-card__body {
  flex: 1 1 auto;
  min-height: 0;
  padding: 1rem;
}

@media (min-width: 640px) {
  .product-info-card__body {
    padding: 1.25rem 1.5rem 1.5rem;
  }
}

.product-info-card__body--flush {
  padding: 0;
}

.product-info-card__body--documents {
  display: flex;
  flex-direction: column;
  gap: 1.15rem;
  min-height: 0;
  padding-bottom: 1.25rem;
}

@media (min-width: 640px) {
  .product-info-card__body--documents {
    gap: 1.25rem;
    padding-bottom: 1.5rem;
  }
}

.product-info-table {
  width: 100%;
  border-collapse: collapse;
}

.product-info-table th,
  .product-info-table td {
  padding: 0.65rem 0.85rem;
  text-align: left;
  vertical-align: middle;
  border: 1px solid #e0e0e0;
}

@media (min-width: 640px) {
  .product-info-table th,
    .product-info-table td {
    padding: 0.85rem 1.25rem;
  }
}

.product-info-table tbody tr:nth-child(even) th,
  .product-info-table tbody tr:nth-child(even) td {
  background: #fafafa;
}

@media (max-width: 639px) {
  .product-info-card__body--flush {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .product-info-table th,
    .product-info-table td {
    padding: 0.6rem 0.75rem;
    font-size: 0.8125rem;
  }
}

.product-info-sdoc-btn {
  display: block;
  width: 100%;
  margin-top: auto;
  flex-shrink: 0;
  border-radius: 999px;
  background: #1b1515;
  padding: 0.7rem 1.5rem;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.4;
  color: #fff;
  text-align: center;
  transition: background-color 200ms ease;
}

@media (min-width: 640px) {
  .product-info-sdoc-btn {
    padding: 0.75rem 1.5rem;
    font-size: 0.9375rem;
  }
}

.product-info-sdoc-btn:hover {
  background: #b2161d;
}

.product-info-delivery-footer {
  padding: 0.85rem 1rem 1rem;
  border-top: 1px solid #e0e0e0;
}

@media (min-width: 640px) {
  .product-info-delivery-footer {
    padding: 1rem 1.25rem 1.25rem;
  }
}

.product-section-head {
  max-width: 760px;
  margin-bottom: 1.5rem;
}

@media (min-width: 640px) {
  .product-section-head {
    margin-bottom: 2rem;
  }
}

.product-section-title {
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 700;
  line-height: 1.2;
  color: #1b1515;
}

.product-section-subtitle {
  max-width: 52rem;
  line-height: 1.6;
  color: #666;
}

/* ============================================================
     PRODUCT DETAILS — customer reviews grid
     ============================================================ */

.product-customer-reviews {
  background: #fff;
}

.product-customer-reviews__head {
  margin-bottom: 0;
}

/* .product-customer-reviews__panel {
    position: relative;
    overflow: hidden;
    margin-top: 1.5rem;
    background: #f3f4f6;
    padding: 1.5rem 1rem;
  } */

@media (min-width: 640px) {
  .product-customer-reviews__panel {
    /* margin-top: 2rem; */
    padding: 2rem 1.5rem;
  }
}

@media (min-width: 1024px) {
  .product-customer-reviews__panel {
    padding: 2.5rem 0;
  }
}

.product-customer-reviews__panel-inner {
  position: relative;
  z-index: 1;
}

/* .product-customer-reviews__decor {
    position: absolute;
    pointer-events: none;
    z-index: 0;
    width: clamp(200px, 26vw, 360px);
    height: auto;
    opacity: 0.55;
  }

  .product-customer-reviews__decor--top-right {
    top: 0;
    right: 0;
  }

  .product-customer-reviews__decor--bottom-left {
    bottom: 0;
    left: 0;
  } */

.product-customer-reviews__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1.25rem;
  margin-top: 0;
}

@media (min-width: 768px) {
  .product-customer-reviews__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.5rem;
  }
}

@media (min-width: 1024px) {
  .product-customer-reviews__grid {
    gap: 1.75rem;
  }
}

.product-customer-review-card {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  border: 1px solid #e5e5e5;
  border-radius: 12px;
  background: #fff;
  padding: 1.25rem;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

@media (min-width: 640px) {
  .product-customer-review-card {
    padding: 1.5rem;
    gap: 0.875rem;
  }
}

.product-customer-review-card.is-hidden {
  display: none;
}

.product-customer-review-card__avatar {
  position: relative;
  flex-shrink: 0;
  display: grid;
  place-items: center;
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 999px;
  background: #ececec;
  color: #a51d1d;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
}

.product-customer-reviews__footer {
  display: flex;
  justify-content: center;
  margin-top: 2rem;
}

@media (min-width: 640px) {
  .product-customer-reviews__footer {
    margin-top: 2.5rem;
  }
}

.product-customer-reviews__load-more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 14.5rem;
  border: none;
  border-radius: 999px;
  background: #a51d1d;
  padding: 0.6875rem 2.5rem;
  font-size: 1rem;
  font-weight: 600;
  color: #fff;
  transition: background-color 200ms ease;
  cursor: pointer;
}

.product-customer-reviews__load-more:hover,
  .product-customer-reviews__load-more:focus-visible {
  background: #8f1117;
}

.product-customer-reviews__load-more.is-hidden {
  display: none;
}

.product-video-section {
  background: #fff;
}

.product-video-section__head {
  margin-bottom: 0;
}

.product-video-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1.25rem;
  margin-top: 1.5rem;
}

@media (min-width: 768px) {
  .product-video-layout {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 1.25rem;
    align-items: stretch;
    margin-top: 2rem;
  }
}

@media (min-width: 1024px) {
  .product-video-layout {
    gap: 1.5rem;
  }
}

.product-video-player {
  position: relative;
  overflow: hidden;
  width: 100%;
  min-height: 12rem;
  border-radius: 20px;
  aspect-ratio: 16 / 10;
  background: #111;
}

@media (min-width: 768px) {
  .product-video-player {
    min-height: 0;
    height: 100%;
    aspect-ratio: auto;
  }
}

.product-video-player img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.product-video-player__play {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  display: grid;
  width: 4.75rem;
  height: 4.75rem;
  place-items: center;
  border: none;
  border-radius: 999px;
  background: #a51d1d;
  color: #fff;
  cursor: pointer;
  transform: translate(-50%, -50%);
  transition: background-color 200ms ease, transform 200ms ease;
}

@media (min-width: 640px) {
  .product-video-player__play {
    width: 5.25rem;
    height: 5.25rem;
  }
}

@media (min-width: 1024px) {
  .product-video-player__play {
    width: 5.75rem;
    height: 5.75rem;
  }
}

.product-video-player__play-icon {
  width: 1.5rem;
  height: auto;
  margin-left: 0.25rem;
}

@media (min-width: 1024px) {
  .product-video-player__play-icon {
    width: 1.75rem;
  }
}

.product-video-player__play:hover,
  .product-video-player__play:focus-visible {
  background: #8f1117;
  transform: translate(-50%, -50%) scale(1.04);
}

.product-video-player__overlay {
  position: absolute;
  inset: auto 0 0;
  z-index: 1;
  padding: 1.25rem 1rem 1rem;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.72) 50%, rgba(0, 0, 0, 0.9) 100%);
  color: #fff;
}

@media (min-width: 640px) {
  .product-video-player__overlay {
    padding: 1.75rem 1.25rem 1.25rem;
  }
}

@media (min-width: 1024px) {
  .product-video-player__overlay {
    padding: 2rem 1.5rem 1.5rem;
  }
}

.product-video-player__title {
  font-size: 0.9375rem;
  font-weight: 700;
  line-height: 1.35;
}

@media (min-width: 640px) {
  .product-video-player__title {
    font-size: 1rem;
  }
}

@media (min-width: 1024px) {
  .product-video-player__title {
    font-size: 1.0625rem;
  }
}

.product-video-player__text {
  margin-top: 0.35rem;
  font-size: 0.8125rem;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.92);
}

@media (min-width: 640px) {
  .product-video-player__text {
    font-size: 0.875rem;
  }
}

.product-video-benefits {
  display: flex;
  flex-direction: column;
  border: 1px solid #e0e0e0;
  border-radius: 16px;
  background: #fff;
  padding: 1.25rem;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);
}

@media (min-width: 640px) {
  .product-video-benefits {
    padding: 1.5rem;
    border-radius: 18px;
  }
}

@media (min-width: 1024px) {
  .product-video-benefits {
    padding: 2rem;
    border-radius: 20px;
  }
}

.product-video-benefits__title {
  font-size: 1.0625rem;
  font-weight: 700;
  line-height: 1.35;
  color: #a51d1d;
}

@media (min-width: 1024px) {
  .product-video-benefits__title {
    font-size: 1.125rem;
  }
}

.product-video-benefits__intro {
  margin-top: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #666464;
}

@media (min-width: 1024px) {
  .product-video-benefits__intro {
    font-size: 1rem;
  }
}

.product-video-benefits__list {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 0.65rem;
  margin-top: 1rem;
}

.product-video-benefits__item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  border: 1px solid #e8e8e8;
  border-radius: 10px;
  background: #f8f8f8;
  padding: 0.75rem 0.875rem;
  font-size: 0.9375rem;
  line-height: 1.4;
  color: #1b1515;
}

@media (min-width: 1024px) {
  .product-video-benefits__item {
    padding: 0.875rem 1rem;
    font-size: 1rem;
  }
}

.product-video-benefits__item img {
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
}

.related-products-section {
  background: #fff;
}

.related-products-header {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1.25rem;
}

@media (min-width: 640px) {
  .related-products-header {
    margin-bottom: 1.5rem;
  }
}

.related-products-header__copy {
  margin-bottom: 0;
  flex: 1 1 16rem;
}

.related-products-nav {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  gap: 0.65rem;
}

.related-products-nav__btn {
  display: grid;
  place-items: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 999px;
  transition: background-color 200ms ease, border-color 200ms ease, opacity 200ms ease;
}

.related-products-nav__btn--prev {
  border: 1px solid #ddd;
  background: #fff;
}

.related-products-nav__btn--prev:hover:not(:disabled) {
  border-color: #b2161d;
}

.related-products-nav__btn--next {
  border: 1px solid #b2161d;
  background: #b2161d;
}

.related-products-nav__btn--next img {
  filter: brightness(0) invert(1);
}

.related-products-nav__btn--next:hover:not(:disabled) {
  background: #8f1218;
  border-color: #8f1218;
}

.related-products-nav__btn:disabled {
  cursor: not-allowed;
  opacity: 0.45;
}

.related-products-viewport {
  overflow: hidden;
}

.related-products-track {
  display: flex;
  gap: 1rem;
  overflow-x: auto;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.related-products-track::-webkit-scrollbar {
  display: none;
}

@media (min-width: 640px) {
  .related-products-track {
    gap: 1.25rem;
  }
}

.related-product-slide {
  flex: 0 0 calc(100% - 0.01px);
  min-width: 0;
  scroll-snap-align: start;
}

@media (min-width: 640px) {
  .related-product-slide {
    flex-basis: calc((100% - 1.25rem) / 2);
  }
}

@media (min-width: 768px) {
  .related-product-slide {
    flex-basis: calc((100% - 2.5rem) / 3);
  }
}

@media (min-width: 1024px) {
  .related-product-slide {
    flex-basis: calc((100% - 3.75rem) / 4);
  }
}

/* Product info accordion — mobile */

.product-info-card__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  cursor: default;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.product-info-card__title {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.3;
  color: #fff;
}

.product-info-card__toggle {
  display: none;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  color: #fff;
}

.product-info-card__chevron {
  display: block;
}

.product-info-card__chevron--up {
  display: none;
}

.product-info-card.is-open .product-info-card__chevron--down {
  display: none;
}

.product-info-card.is-open .product-info-card__chevron--up {
  display: block;
}

.product-info-features {
  display: flex;
  flex-direction: column;
  gap: 0;
  font-size: 0.9375rem;
  line-height: 1.55;
  color: #1b1616;
}

.product-info-features__item {
  display: flex;
  align-items: flex-start;
  gap: 0.65rem;
  margin-bottom: 0.9375rem;
}

.product-info-features__item:last-child {
  margin-bottom: 0;
}

.product-info-features__item img {
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
}

.product-info-features__accent {
  color: #b2161d;
  font-weight: 700;
}

@media (max-width: 767px) {
  .product-info-section {
    background: #fff;
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }

  .product-info-layout {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
  }

  .product-info-row {
    display: contents;
  }

  .product-info-card {
    border: none;
    border-radius: 12px;
    background: transparent;
    box-shadow: none;
    overflow: hidden;
  }

  .product-info-card.is-open {
    border: 1px solid #e0e0e0;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06);
  }

  .product-info-card__header {
    min-height: 3rem;
    padding: 0.875rem 1.25rem;
    background: #b2161d;
    cursor: pointer;
  }

  .product-info-card:not(.is-open) .product-info-card__header {
    border-radius: 12px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06);
  }

  .product-info-card.is-open .product-info-card__header {
    border-radius: 12px 12px 0 0;
  }

  .product-info-card__toggle {
    display: inline-flex;
  }

  .product-info-card__body {
    display: none;
    background: #fff;
    padding: 1.25rem;
  }

  .product-info-card.is-open .product-info-card__body {
    display: block;
    border-radius: 0 0 12px 12px;
    border-top: 1px solid #e0e0e0;
  }

  .product-info-card.is-open .product-info-card__body--documents {
    display: flex;
    flex-direction: column;
    gap: 1.15rem;
    border-radius: 0 0 12px 12px;
    border-top: 1px solid #e0e0e0;
  }

  .product-info-card__body--flush {
    padding: 0;
    border-top: none;
  }

  .product-info-card.is-open .product-info-card__body--flush {
    border-top: none;
  }

  .product-info-card__body--documents {
    padding: 1.25rem;
  }
}

@media (min-width: 768px) {
  .product-info-card__title {
    font-size: 1.0625rem;
  }

  .product-info-card.is-open .product-info-card__body,
    .product-info-card .product-info-card__body {
    display: block;
  }

  .product-info-card .product-info-card__body--documents {
    display: flex;
  }
}

@media (min-width: 640px) {
  .product-info-features {
    font-size: 0.9375rem;
  }
}

/* Related products — dots on mobile, nav on tablet+ */

.related-products-dots {
  display: flex;
  justify-content: center;
  gap: 0.5rem;
  margin-top: 1rem;
}

@media (min-width: 768px) {
  .related-products-dots {
    display: none;
  }
}

@media (max-width: 767px) {
  .related-products-nav {
    display: none;
  }
}

.blog-details-body h2{
  margin-top: 1.25rem;
  margin-bottom: 0.75rem;
  font-size: 24px;
  font-weight: 800;
  line-height: 1.35;
  --tw-text-opacity: 1;
  color: rgb(23 19 19 / var(--tw-text-opacity, 1));
}

@media (max-width: 1023px) {
  
  .cart-summary-item__variants .blog-details-body h2 {
    color: #A4161A;
  }
}

@media (min-width: 768px){
  .blog-details-body h2{
    font-size: 30px;
  }
}

@media (min-width: 1024px){
  .blog-details-body h2{
    font-size: 38px;
  }
}

.blog-details-product-card__body h3{
  font-size: 16px;
  font-weight: 800;
  line-height: 1.35;
}

@media (min-width: 768px){
  .blog-details-product-card__body h3{
    font-size: 18px;
  }
}

@media (min-width: 1024px){
  .blog-details-product-card__body h3{
    font-size: 22px;
  }
}

.blog-details-product-card__body h3 a{
  --tw-text-opacity: 1;
  color: rgb(164 22 26 / var(--tw-text-opacity, 1));
  text-decoration-line: none;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

@media (max-width: 1023px) {
  
  .cart-summary-item__variants .blog-details-product-card__body h3 a {
    color: #A4161A;
  }
}

.blog-details-product-card__body h3 a:hover{
  --tw-text-opacity: 1;
  color: rgb(23 19 19 / var(--tw-text-opacity, 1));
}

@media (max-width: 1023px) {
  
  .cart-summary-item__variants .blog-details-product-card__body h3 a:hover {
    color: #A4161A;
  }
}

.blog-details-product-card__price{
  margin-bottom: 0.5rem !important;
  font-size: 16px !important;
  font-weight: 600;
}

@media (min-width: 1024px){
  .blog-details-product-card__price{
    font-size: 18px;
  }

  .footer-payments > .blog-details-pill {
    width: auto;
    min-width: 4.75rem;
    max-width: none;
    height: 3rem;
    min-height: 3rem;
    flex: 0 0 auto;
    border-radius: 0.375rem;
    padding: 0.375rem 0.625rem;
  }

  .footer-payments > .blog-details-pill:last-child {
    grid-column: auto;
    min-width: 6.5rem;
  }

  .footer-payments > .blog-details-pill {
    width: auto;
    min-width: 4.75rem;
    max-width: none;
    height: 3rem;
    min-height: 3rem;
    flex: 0 0 auto;
    border-radius: 0.375rem;
    padding: 0.375rem 0.625rem;
  }

  .footer-payments > .blog-details-pill:last-child {
    grid-column: auto;
    min-width: 6.5rem;
  }
}

@media (max-width: 1023px) {
  .footer-payments > .blog-details-pill {
    width: 100%;
    min-width: 0;
    max-width: none;
    flex: none;
  }

  .footer-payments > .blog-details-pill:last-child {
    grid-column: 1 / -1;
  }

  .footer-payments > .blog-details-pill {
    width: 100%;
    min-width: 0;
    max-width: none;
    flex: none;
  }

  .footer-payments > .blog-details-pill:last-child {
    grid-column: 1 / -1;
  }
}

.blog-details-pill{
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  border-radius: 6px;
  --tw-bg-opacity: 1;
  background-color: rgb(178 22 29 / var(--tw-bg-opacity, 1));
  padding-left: 0.65rem;
  padding-right: 0.65rem;
  padding-top: 0.4rem;
  padding-bottom: 0.4rem;
  font-size: 0.75rem;
  line-height: 1rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  text-decoration-line: none;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
}

@media (min-width: 1367px) {
  .footer-payments > .blog-details-pill {
    min-width: 5.25rem;
    height: 3rem;
  }
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .blog-details-pill.desktop-search INPUT{
    width: 250px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.flex.blog-details-pill.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item .blog-details-pill[aria-label="Quantity"] {
    min-width: 72px;
    min-height: 34px;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.25rem 0.5rem;
    touch-action: manipulation;
  }

  .cart-summary-item .blog-details-pill[aria-label="Quantity"] [data-cart-qty-display] {
    min-width: 0.75rem;
    font-size: 0.8125rem;
    font-weight: 600;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item .blog-details-pill[aria-label="Quantity"] {
    min-width: 72px;
    height: 34px;
    justify-content: center;
    gap: 10px;
    padding: 0 8px;
  }
}

.sr-only{
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

.pointer-events-none{
  pointer-events: none;
}

.pointer-events-auto{
  pointer-events: auto;
}

.visible{
  visibility: visible;
}

.invisible{
  visibility: hidden;
}

.absolute{
  position: absolute;
}

.relative{
  position: relative;
}

.sticky{
  position: sticky;
}

.-left-\[0\.35rem\]{
  left: -0.35rem;
}

.-top-1{
  top: -0.25rem;
}

.-top-\[0\.35rem\]{
  top: -0.35rem;
}

.bottom-0{
  bottom: 0px;
}

.bottom-3{
  bottom: 0.75rem;
}

.bottom-\[-2px\]{
  bottom: -2px;
}

.bottom-\[30\%\]{
  bottom: 30%;
}

.left-0{
  left: 0px;
}

.left-3{
  left: 0.75rem;
}

.left-5{
  left: 1.25rem;
}

.left-\[-44px\]{
  left: -44px;
}

.left-\[12px\]{
  left: 12px;
}

.left-\[26px\]{
  left: 26px;
}

.left-\[30px\]{
  left: 30px;
}

.left-\[34\%\]{
  left: 34%;
}

.left-\[45\%\]{
  left: 45%;
}

.right-0{
  right: 0px;
}

.right-2{
  right: 0.5rem;
}

.right-3{
  right: 0.75rem;
}

.right-4{
  right: 1rem;
}

.right-\[-18px\]{
  right: -18px;
}

.right-\[-2px\]{
  right: -2px;
}

.right-\[-68px\]{
  right: -68px;
}

.right-\[-80px\]{
  right: -80px;
}

.right-auto{
  right: auto;
}

.top-0{
  top: 0px;
}

.top-1\/2{
  top: 50%;
}

.top-3{
  top: 0.75rem;
}

.top-4{
  top: 1rem;
}

.top-\[-8px\]{
  top: -8px;
}

.top-\[35px\]{
  top: 35px;
}

.top-full{
  top: 100%;
}

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

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

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

.z-\[100\]{
  z-index: 100;
}

.z-\[10\]{
  z-index: 10;
}

.z-\[1\]{
  z-index: 1;
}

.z-\[60\]{
  z-index: 60;
}

.z-\[70\]{
  z-index: 70;
}

.z-\[800\]{
  z-index: 800;
}

.z-\[999999\]{
  z-index: 999999;
}

.order-1{
  order: 1;
}

.order-2{
  order: 2;
}

.col-span-10{
  grid-column: span 10 / span 10;
}

.col-span-12{
  grid-column: span 12 / span 12;
}

.m-auto{
  margin: auto;
}

.-mx-5{
  margin-left: -1.25rem;
  margin-right: -1.25rem;
}

.mx-auto{
  margin-left: auto;
  margin-right: auto;
}

.my-2{
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}

.my-3{
  margin-top: 0.75rem;
  margin-bottom: 0.75rem;
}

.my-4{
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.my-5{
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
}

.-mb-px{
  margin-bottom: -1px;
}

.mb-1{
  margin-bottom: 0.25rem;
}

.mb-10{
  margin-bottom: 2.5rem;
}

.mb-12{
  margin-bottom: 3rem;
}

.mb-2{
  margin-bottom: 0.5rem;
}

.mb-20{
  margin-bottom: 5rem;
}

.mb-3{
  margin-bottom: 0.75rem;
}

.mb-4{
  margin-bottom: 1rem;
}

.mb-5{
  margin-bottom: 1.25rem;
}

.mb-6{
  margin-bottom: 1.5rem;
}

.mb-8{
  margin-bottom: 2rem;
}

.ml-0{
  margin-left: 0px;
}

.ml-1{
  margin-left: 0.25rem;
}

.ml-12{
  margin-left: 3rem;
}

.ml-2{
  margin-left: 0.5rem;
}

.ml-3{
  margin-left: 0.75rem;
}

.ml-auto{
  margin-left: auto;
}

.mr-1{
  margin-right: 0.25rem;
}

.mr-2{
  margin-right: 0.5rem;
}

.mr-3{
  margin-right: 0.75rem;
}

.mr-4{
  margin-right: 1rem;
}

.mr-auto{
  margin-right: auto;
}

.mt-0\.5{
  margin-top: 0.125rem;
}

.mt-1{
  margin-top: 0.25rem;
}

.mt-10{
  margin-top: 2.5rem;
}

.mt-12{
  margin-top: 3rem;
}

.mt-16{
  margin-top: 4rem;
}

.mt-2{
  margin-top: 0.5rem;
}

.mt-3{
  margin-top: 0.75rem;
}

.mt-4{
  margin-top: 1rem;
}

.mt-5{
  margin-top: 1.25rem;
}

.mt-6{
  margin-top: 1.5rem;
}

.mt-7{
  margin-top: 1.75rem;
}

.mt-72{
  margin-top: 18rem;
}

.mt-8{
  margin-top: 2rem;
}

.mt-96{
  margin-top: 24rem;
}

.mt-auto{
  margin-top: auto;
}

.block{
  display: block;
}

.inline-block{
  display: inline-block;
}

.\!flex{
  display: flex !important;
}

.flex{
  display: flex;
}

.inline-flex{
  display: inline-flex;
}

.table{
  display: table;
}

.table-cell{
  display: table-cell;
}

.grid{
  display: grid;
}

.hidden{
  display: none;
}

.aspect-\[4\/3\]{
  aspect-ratio: 4/3;
}

.\!h-11{
  height: 2.75rem !important;
}

.\!h-14{
  height: 3.5rem !important;
}

.\!h-\[68px\]{
  height: 68px !important;
}

.h-10{
  height: 2.5rem;
}

.h-11{
  height: 2.75rem;
}

.h-12{
  height: 3rem;
}

.h-14{
  height: 3.5rem;
}

.h-2{
  height: 0.5rem;
}

.h-2\.5{
  height: 0.625rem;
}

.h-3{
  height: 0.75rem;
}

.h-4{
  height: 1rem;
}

.h-44{
  height: 11rem;
}

.h-5{
  height: 1.25rem;
}

.h-6{
  height: 1.5rem;
}

.h-7{
  height: 1.75rem;
}

.h-8{
  height: 2rem;
}

.h-9{
  height: 2.25rem;
}

.h-\[1\.35rem\]{
  height: 1.35rem;
}

.h-\[106px\]{
  height: 106px;
}

.h-\[10px\]{
  height: 10px;
}

.h-\[18px\]{
  height: 18px;
}

.h-\[19px\]{
  height: 19px;
}

.h-\[2\.75rem\]{
  height: 2.75rem;
}

.h-\[20px\]{
  height: 20px;
}

.h-\[210px\]{
  height: 210px;
}

.h-\[260px\]{
  height: 260px;
}

.h-\[34\%\]{
  height: 34%;
}

.h-\[39px\]{
  height: 39px;
}

.h-\[4\.5rem\]{
  height: 4.5rem;
}

.h-\[41px\]{
  height: 41px;
}

.h-\[42px\]{
  height: 42px;
}

.h-\[44px\]{
  height: 44px;
}

.h-\[48\%\]{
  height: 48%;
}

.h-\[48px\]{
  height: 48px;
}

.h-\[54px\]{
  height: 54px;
}

.h-\[68px\]{
  height: 68px;
}

.h-\[72px\]{
  height: 72px;
}

.h-auto{
  height: auto;
}

.h-dvh{
  height: 100dvh;
}

.h-full{
  height: 100%;
}

.h-px{
  height: 1px;
}

.h-screen{
  height: 100vh;
}

.max-h-6{
  max-height: 1.5rem;
}

.max-h-\[100px\]{
  max-height: 100px;
}

.max-h-\[22px\]{
  max-height: 22px;
}

.max-h-\[60px\]{
  max-height: 60px;
}

.max-h-\[90vh\]{
  max-height: 90vh;
}

.min-h-0{
  min-height: 0px;
}

.min-h-\[140px\]{
  min-height: 140px;
}

.min-h-\[2\.75rem\]{
  min-height: 2.75rem;
}

.min-h-\[255px\]{
  min-height: 255px;
}

.min-h-\[88px\]{
  min-height: 88px;
}

.\!w-11{
  width: 2.75rem !important;
}

.\!w-14{
  width: 3.5rem !important;
}

.\!w-\[68px\]{
  width: 68px !important;
}

.w-10{
  width: 2.5rem;
}

.w-11{
  width: 2.75rem;
}

.w-14{
  width: 3.5rem;
}

.w-2\.5{
  width: 0.625rem;
}

.w-3{
  width: 0.75rem;
}

.w-4{
  width: 1rem;
}

.w-5{
  width: 1.25rem;
}

.w-6{
  width: 1.5rem;
}

.w-7{
  width: 1.75rem;
}

.w-8{
  width: 2rem;
}

.w-9{
  width: 2.25rem;
}

.w-\[1\.35rem\]{
  width: 1.35rem;
}

.w-\[18\%\]{
  width: 18%;
}

.w-\[18px\]{
  width: 18px;
}

.w-\[192px\]{
  width: 192px;
}

.w-\[19px\]{
  width: 19px;
}

.w-\[200px\]{
  width: 200px;
}

.w-\[20px\]{
  width: 20px;
}

.w-\[245px\]{
  width: 245px;
}

.w-\[246px\]{
  width: 246px;
}

.w-\[247px\]{
  width: 247px;
}

.w-\[250px\]{
  width: 250px;
}

.w-\[34\%\]{
  width: 34%;
}

.w-\[350px\]{
  width: 350px;
}

.w-\[4\.5rem\]{
  width: 4.5rem;
}

.w-\[434px\]{
  width: 434px;
}

.w-\[48\%\]{
  width: 48%;
}

.w-\[50\%\]{
  width: 50%;
}

.w-\[540px\]{
  width: 540px;
}

.w-\[70px\]{
  width: 70px;
}

.w-\[72\%\]{
  width: 72%;
}

.w-\[72px\]{
  width: 72px;
}

.w-\[90\%\]{
  width: 90%;
}

.w-\[95\%\]{
  width: 95%;
}

.w-\[calc\(\(100\%-1\.25rem\)\/3\)\]{
  width: calc((100% - 1.25rem) / 3);
}

.w-\[calc\(100\%-20px\)\]{
  width: calc(100% - 20px);
}

.w-\[min\(92vw\2c 24rem\)\]{
  width: min(92vw, 24rem);
}

.w-auto{
  width: auto;
}

.w-fit{
  width: -moz-fit-content;
  width: fit-content;
}

.w-full{
  width: 100%;
}

.w-max{
  width: -moz-max-content;
  width: max-content;
}

.w-px{
  width: 1px;
}

.min-w-0{
  min-width: 0px;
}

.min-w-\[0\.85rem\]{
  min-width: 0.85rem;
}

.min-w-\[100px\]{
  min-width: 100px;
}

.min-w-\[500px\]{
  min-width: 500px;
}

.min-w-\[560px\]{
  min-width: 560px;
}

.\!max-w-\[min\(100\%\2c 400px\)\]{
  max-width: min(100%, 400px) !important;
}

.max-w-2xl{
  max-width: 42rem;
}

.max-w-3xl{
  max-width: 48rem;
}

.max-w-4xl{
  max-width: 56rem;
}

.max-w-5xl{
  max-width: 64rem;
}

.max-w-\[340px\]{
  max-width: 340px;
}

.max-w-\[9\.5rem\]{
  max-width: 9.5rem;
}

.max-w-full{
  max-width: 100%;
}

.max-w-md{
  max-width: 28rem;
}

.max-w-none{
  max-width: none;
}

.max-w-xl{
  max-width: 36rem;
}

.flex-1{
  flex: 1 1 0%;
}

.flex-none{
  flex: none;
}

.flex-shrink-0{
  flex-shrink: 0;
}

.shrink-0{
  flex-shrink: 0;
}

.border-collapse{
  border-collapse: collapse;
}

.-translate-y-1\/2{
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-x-full{
  --tw-translate-x: 100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-y-3{
  --tw-translate-y: 0.75rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.rotate-180{
  --tw-rotate: 180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.rotate-\[-6deg\]{
  --tw-rotate: -6deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.scale-125{
  --tw-scale-x: 1.25;
  --tw-scale-y: 1.25;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.transform{
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.cursor-pointer{
  cursor: pointer;
}

.resize{
  resize: both;
}

.snap-x{
  scroll-snap-type: x var(--tw-scroll-snap-strictness);
}

.snap-mandatory{
  --tw-scroll-snap-strictness: mandatory;
}

.snap-start{
  scroll-snap-align: start;
}

.snap-center{
  scroll-snap-align: center;
}

.snap-always{
  scroll-snap-stop: always;
}

.list-none{
  list-style-type: none;
}

.grid-cols-1{
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

.grid-cols-10{
  grid-template-columns: repeat(10, minmax(0, 1fr));
}

.grid-cols-12{
  grid-template-columns: repeat(12, minmax(0, 1fr));
}

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

.grid-cols-5{
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

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

.grid-cols-\[auto_minmax\(0\2c 1fr\)_auto\]{
  grid-template-columns: auto minmax(0,1fr) auto;
}

.flex-col{
  flex-direction: column;
}

.flex-wrap{
  flex-wrap: wrap;
}

.place-items-center{
  place-items: center;
}

.items-start{
  align-items: flex-start;
}

.items-end{
  align-items: flex-end;
}

.items-center{
  align-items: center;
}

.items-stretch{
  align-items: stretch;
}

.justify-start{
  justify-content: flex-start;
}

.justify-end{
  justify-content: flex-end;
}

.justify-center{
  justify-content: center;
}

.justify-between{
  justify-content: space-between;
}

.gap-0{
  gap: 0px;
}

.gap-1{
  gap: 0.25rem;
}

.gap-1\.5{
  gap: 0.375rem;
}

.gap-10{
  gap: 2.5rem;
}

.gap-2{
  gap: 0.5rem;
}

.gap-2\.5{
  gap: 0.625rem;
}

.gap-3{
  gap: 0.75rem;
}

.gap-4{
  gap: 1rem;
}

.gap-5{
  gap: 1.25rem;
}

.gap-6{
  gap: 1.5rem;
}

.gap-7{
  gap: 1.75rem;
}

.gap-8{
  gap: 2rem;
}

.gap-\[0\.65rem\]{
  gap: 0.65rem;
}

.gap-\[18px\]{
  gap: 18px;
}

.gap-x-3{
  -moz-column-gap: 0.75rem;
       column-gap: 0.75rem;
}

.gap-x-4{
  -moz-column-gap: 1rem;
       column-gap: 1rem;
}

.gap-x-6{
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
}

.gap-x-8{
  -moz-column-gap: 2rem;
       column-gap: 2rem;
}

.gap-x-\[58px\]{
  -moz-column-gap: 58px;
       column-gap: 58px;
}

.gap-y-1{
  row-gap: 0.25rem;
}

.gap-y-8{
  row-gap: 2rem;
}

.gap-y-\[38px\]{
  row-gap: 38px;
}

.space-y-0 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(0px * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0px * var(--tw-space-y-reverse));
}

.space-y-2 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));
}

.space-y-2\.5 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(0.625rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.625rem * var(--tw-space-y-reverse));
}

.space-y-3 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.75rem * var(--tw-space-y-reverse));
}

.space-y-4 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1rem * var(--tw-space-y-reverse));
}

.space-y-5 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1.25rem * var(--tw-space-y-reverse));
}

.space-y-6 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));
}

.divide-x > :not([hidden]) ~ :not([hidden]){
  --tw-divide-x-reverse: 0;
  border-right-width: calc(1px * var(--tw-divide-x-reverse));
  border-left-width: calc(1px * calc(1 - var(--tw-divide-x-reverse)));
}

.divide-y > :not([hidden]) ~ :not([hidden]){
  --tw-divide-y-reverse: 0;
  border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
  border-bottom-width: calc(1px * var(--tw-divide-y-reverse));
}

.divide-\[\#E0E0E0\] > :not([hidden]) ~ :not([hidden]){
  --tw-divide-opacity: 1;
  border-color: rgb(224 224 224 / var(--tw-divide-opacity, 1));
}

.divide-white\/15 > :not([hidden]) ~ :not([hidden]){
  border-color: rgb(255 255 255 / 0.15);
}

.divide-white\/40 > :not([hidden]) ~ :not([hidden]){
  border-color: rgb(255 255 255 / 0.4);
}

.self-end{
  align-self: flex-end;
}

.self-center{
  align-self: center;
}

.overflow-hidden{
  overflow: hidden;
}

.overflow-x-auto{
  overflow-x: auto;
}

.overflow-y-auto{
  overflow-y: auto;
}

.overflow-x-hidden{
  overflow-x: hidden;
}

.scroll-smooth{
  scroll-behavior: smooth;
}

.truncate{
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.whitespace-nowrap{
  white-space: nowrap;
}

.break-all{
  word-break: break-all;
}

.rounded{
  border-radius: 0.25rem;
}

.rounded-2xl{
  border-radius: 1rem;
}

.rounded-3xl{
  border-radius: 1.5rem;
}

.rounded-\[10px\]{
  border-radius: 10px;
}

.rounded-\[14px\]{
  border-radius: 14px;
}

.rounded-\[15px\]{
  border-radius: 15px;
}

.rounded-\[18px\]{
  border-radius: 18px;
}

.rounded-\[28px\]{
  border-radius: 28px;
}

.rounded-\[30px\]{
  border-radius: 30px;
}

.rounded-\[4px\]{
  border-radius: 4px;
}

.rounded-\[9px\]{
  border-radius: 9px;
}

.rounded-full{
  border-radius: 9999px;
}

.rounded-lg{
  border-radius: 0.5rem;
}

.rounded-md{
  border-radius: 0.375rem;
}

.rounded-sm{
  border-radius: 0.125rem;
}

.rounded-xl{
  border-radius: 0.75rem;
}

.\!border-0{
  border-width: 0px !important;
}

.border{
  border-width: 1px;
}

.border-0{
  border-width: 0px;
}

.border-2{
  border-width: 2px;
}

.border-y{
  border-top-width: 1px;
  border-bottom-width: 1px;
}

.border-b{
  border-bottom-width: 1px;
}

.border-b-\[3px\]{
  border-bottom-width: 3px;
}

.border-l{
  border-left-width: 1px;
}

.border-r{
  border-right-width: 1px;
}

.border-r-0{
  border-right-width: 0px;
}

.border-t{
  border-top-width: 1px;
}

.border-\[\#991b1b\]{
  --tw-border-opacity: 1;
  border-color: rgb(153 27 27 / var(--tw-border-opacity, 1));
}

.border-\[\#A51D1D\]{
  --tw-border-opacity: 1;
  border-color: rgb(165 29 29 / var(--tw-border-opacity, 1));
}

.border-\[\#E0E0E0\]{
  --tw-border-opacity: 1;
  border-color: rgb(224 224 224 / var(--tw-border-opacity, 1));
}

.border-\[\#E6E6E6\]{
  --tw-border-opacity: 1;
  border-color: rgb(230 230 230 / var(--tw-border-opacity, 1));
}

.border-\[\#E8E8E8\]{
  --tw-border-opacity: 1;
  border-color: rgb(232 232 232 / var(--tw-border-opacity, 1));
}

.border-\[\#EAEAEA\]{
  --tw-border-opacity: 1;
  border-color: rgb(234 234 234 / var(--tw-border-opacity, 1));
}

.border-\[\#dedede\]{
  --tw-border-opacity: 1;
  border-color: rgb(222 222 222 / var(--tw-border-opacity, 1));
}

.border-\[\#e5e5e5\]{
  --tw-border-opacity: 1;
  border-color: rgb(229 229 229 / var(--tw-border-opacity, 1));
}

.border-brand-dark{
  --tw-border-opacity: 1;
  border-color: rgb(31 25 25 / var(--tw-border-opacity, 1));
}

.border-brand-red{
  --tw-border-opacity: 1;
  border-color: rgb(164 22 26 / var(--tw-border-opacity, 1));
}

.border-neutral-200{
  --tw-border-opacity: 1;
  border-color: rgb(229 229 229 / var(--tw-border-opacity, 1));
}

.border-transparent{
  border-color: transparent;
}

.border-white\/15{
  border-color: rgb(255 255 255 / 0.15);
}

.border-white\/25{
  border-color: rgb(255 255 255 / 0.25);
}

.border-white\/60{
  border-color: rgb(255 255 255 / 0.6);
}

.border-white\/80{
  border-color: rgb(255 255 255 / 0.8);
}

.border-b-brand-red{
  --tw-border-opacity: 1;
  border-bottom-color: rgb(164 22 26 / var(--tw-border-opacity, 1));
}

.\!bg-brand-red{
  --tw-bg-opacity: 1 !important;
  background-color: rgb(164 22 26 / var(--tw-bg-opacity, 1)) !important;
}

.\!bg-white{
  --tw-bg-opacity: 1 !important;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1)) !important;
}

.bg-\[\#004d3d\]{
  --tw-bg-opacity: 1;
  background-color: rgb(0 77 61 / var(--tw-bg-opacity, 1));
}

.bg-\[\#004d3d\]\/90{
  background-color: rgb(0 77 61 / 0.9);
}

.bg-\[\#147C4B\]{
  --tw-bg-opacity: 1;
  background-color: rgb(20 124 75 / var(--tw-bg-opacity, 1));
}

.bg-\[\#1D6D44\]{
  --tw-bg-opacity: 1;
  background-color: rgb(29 109 68 / var(--tw-bg-opacity, 1));
}

.bg-\[\#1a1514\]{
  --tw-bg-opacity: 1;
  background-color: rgb(26 21 20 / var(--tw-bg-opacity, 1));
}

.bg-\[\#1b1515\]{
  --tw-bg-opacity: 1;
  background-color: rgb(27 21 21 / var(--tw-bg-opacity, 1));
}

.bg-\[\#707070\]{
  --tw-bg-opacity: 1;
  background-color: rgb(112 112 112 / var(--tw-bg-opacity, 1));
}

.bg-\[\#8B1515\]{
  --tw-bg-opacity: 1;
  background-color: rgb(139 21 21 / var(--tw-bg-opacity, 1));
}

.bg-\[\#A51D1D\]{
  --tw-bg-opacity: 1;
  background-color: rgb(165 29 29 / var(--tw-bg-opacity, 1));
}

.bg-\[\#AC373B\]{
  --tw-bg-opacity: 1;
  background-color: rgb(172 55 59 / var(--tw-bg-opacity, 1));
}

.bg-\[\#E6E6E6\]{
  --tw-bg-opacity: 1;
  background-color: rgb(230 230 230 / var(--tw-bg-opacity, 1));
}

.bg-\[\#E8E8E8\]{
  --tw-bg-opacity: 1;
  background-color: rgb(232 232 232 / var(--tw-bg-opacity, 1));
}

.bg-\[\#ECECEC\]{
  --tw-bg-opacity: 1;
  background-color: rgb(236 236 236 / var(--tw-bg-opacity, 1));
}

.bg-\[\#F5F5F5\]{
  --tw-bg-opacity: 1;
  background-color: rgb(245 245 245 / var(--tw-bg-opacity, 1));
}

.bg-\[\#F7F7F7\]{
  --tw-bg-opacity: 1;
  background-color: rgb(247 247 247 / var(--tw-bg-opacity, 1));
}

.bg-\[\#F9F9F9\]{
  --tw-bg-opacity: 1;
  background-color: rgb(249 249 249 / var(--tw-bg-opacity, 1));
}

.bg-\[\#d9d9d9\]{
  --tw-bg-opacity: 1;
  background-color: rgb(217 217 217 / var(--tw-bg-opacity, 1));
}

.bg-\[\#f7f7f7\]{
  --tw-bg-opacity: 1;
  background-color: rgb(247 247 247 / var(--tw-bg-opacity, 1));
}

.bg-\[rgb\(20_124_75_\/_20\%\)\]{
  background-color: rgb(20 124 75 / 20%);
}

.bg-black{
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity, 1));
}

.bg-black\/10{
  background-color: rgb(0 0 0 / 0.1);
}

.bg-brand-dark{
  --tw-bg-opacity: 1;
  background-color: rgb(31 25 25 / var(--tw-bg-opacity, 1));
}

.bg-brand-red{
  --tw-bg-opacity: 1;
  background-color: rgb(164 22 26 / var(--tw-bg-opacity, 1));
}

.bg-brand-soft{
  --tw-bg-opacity: 1;
  background-color: rgb(246 246 246 / var(--tw-bg-opacity, 1));
}

.bg-brand-theme{
  --tw-bg-opacity: 1;
  background-color: rgb(164 22 26 / var(--tw-bg-opacity, 1));
}

.bg-neutral-100{
  --tw-bg-opacity: 1;
  background-color: rgb(245 245 245 / var(--tw-bg-opacity, 1));
}

.bg-neutral-200{
  --tw-bg-opacity: 1;
  background-color: rgb(229 229 229 / var(--tw-bg-opacity, 1));
}

.bg-neutral-300{
  --tw-bg-opacity: 1;
  background-color: rgb(212 212 212 / var(--tw-bg-opacity, 1));
}

.bg-neutral-50{
  --tw-bg-opacity: 1;
  background-color: rgb(250 250 250 / var(--tw-bg-opacity, 1));
}

.bg-transparent{
  background-color: transparent;
}

.bg-white{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.bg-white\/10{
  background-color: rgb(255 255 255 / 0.1);
}

.bg-white\/20{
  background-color: rgb(255 255 255 / 0.2);
}

.bg-white\/70{
  background-color: rgb(255 255 255 / 0.7);
}

.fill-current{
  fill: currentColor;
}

.object-contain{
  -o-object-fit: contain;
     object-fit: contain;
}

.object-cover{
  -o-object-fit: cover;
     object-fit: cover;
}

.object-center{
  -o-object-position: center;
     object-position: center;
}

.p-0{
  padding: 0px;
}

.p-1{
  padding: 0.25rem;
}

.p-10{
  padding: 2.5rem;
}

.p-2{
  padding: 0.5rem;
}

.p-3{
  padding: 0.75rem;
}

.p-4{
  padding: 1rem;
}

.p-5{
  padding: 1.25rem;
}

.p-6{
  padding: 1.5rem;
}

.p-8{
  padding: 2rem;
}

.\!py-12{
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

.px-0\.5{
  padding-left: 0.125rem;
  padding-right: 0.125rem;
}

.px-1{
  padding-left: 0.25rem;
  padding-right: 0.25rem;
}

.px-2{
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

.px-2\.5{
  padding-left: 0.625rem;
  padding-right: 0.625rem;
}

.px-3{
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}

.px-4{
  padding-left: 1rem;
  padding-right: 1rem;
}

.px-5{
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.px-6{
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.px-8{
  padding-left: 2rem;
  padding-right: 2rem;
}

.px-\[0\.65rem\]{
  padding-left: 0.65rem;
  padding-right: 0.65rem;
}

.px-\[30px\]{
  padding-left: 30px;
  padding-right: 30px;
}

.px-\[55px\]{
  padding-left: 55px;
  padding-right: 55px;
}

.py-0\.5{
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
}

.py-1{
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}

.py-1\.5{
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
}

.py-10{
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}

.py-12{
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.py-2{
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.py-2\.5{
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
}

.py-3{
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}

.py-3\.5{
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
}

.py-4{
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.py-5{
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}

.py-6{
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

.py-8{
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.py-\[0\.35rem\]{
  padding-top: 0.35rem;
  padding-bottom: 0.35rem;
}

.py-\[0\.65rem\]{
  padding-top: 0.65rem;
  padding-bottom: 0.65rem;
}

.py-\[37px\]{
  padding-top: 37px;
  padding-bottom: 37px;
}

.\!pb-0{
  padding-bottom: 0px !important;
}

.pb-0{
  padding-bottom: 0px;
}

.pb-1{
  padding-bottom: 0.25rem;
}

.pb-10{
  padding-bottom: 2.5rem;
}

.pb-12{
  padding-bottom: 3rem;
}

.pb-2{
  padding-bottom: 0.5rem;
}

.pb-3{
  padding-bottom: 0.75rem;
}

.pb-4{
  padding-bottom: 1rem;
}

.pb-5{
  padding-bottom: 1.25rem;
}

.pb-6{
  padding-bottom: 1.5rem;
}

.pb-8{
  padding-bottom: 2rem;
}

.pl-0{
  padding-left: 0px;
}

.pl-3{
  padding-left: 0.75rem;
}

.pl-4{
  padding-left: 1rem;
}

.pl-6{
  padding-left: 1.5rem;
}

.pr-0{
  padding-right: 0px;
}

.pr-11{
  padding-right: 2.75rem;
}

.pr-3{
  padding-right: 0.75rem;
}

.pr-4{
  padding-right: 1rem;
}

.pt-0{
  padding-top: 0px;
}

.pt-1{
  padding-top: 0.25rem;
}

.pt-12{
  padding-top: 3rem;
}

.pt-2{
  padding-top: 0.5rem;
}

.pt-3{
  padding-top: 0.75rem;
}

.pt-4{
  padding-top: 1rem;
}

.pt-5{
  padding-top: 1.25rem;
}

.pt-6{
  padding-top: 1.5rem;
}

.pt-8{
  padding-top: 2rem;
}

.pt-9{
  padding-top: 2.25rem;
}

.pt-\[60px\]{
  padding-top: 60px;
}

.text-left{
  text-align: left;
}

.text-center{
  text-align: center;
}

.text-start{
  text-align: start;
}

.font-sans{
  font-family: Poppins, Arial, sans-serif;
}

.text-2xl{
  font-size: 1.5rem;
  line-height: 2rem;
}

.text-3xl{
  font-size: 1.875rem;
  line-height: 2.25rem;
}

.text-\[0\.8125rem\]{
  font-size: 0.8125rem;
}

.text-\[10px\]{
  font-size: 10px;
}

.text-\[11px\]{
  font-size: 11px;
}

.text-\[12px\]{
  font-size: 12px;
}

.text-\[13px\]{
  font-size: 13px;
}

.text-\[14px\]{
  font-size: 14px;
}

.text-\[15px\]{
  font-size: 15px;
}

.text-\[16px\]{
  font-size: 16px;
}

.text-\[17px\]{
  font-size: 17px;
}

.text-\[18px\]{
  font-size: 18px;
}

.text-\[20px\]{
  font-size: 20px;
}

.text-\[22px\]{
  font-size: 22px;
}

.text-\[24px\]{
  font-size: 24px;
}

.text-\[26px\]{
  font-size: 26px;
}

.text-\[28px\]{
  font-size: 28px;
}

.text-\[30px\]{
  font-size: 30px;
}

.text-\[36px\]{
  font-size: 36px;
}

.text-\[50px\]{
  font-size: 50px;
}

.text-base{
  font-size: 1rem;
  line-height: 1.5rem;
}

.text-lg{
  font-size: 1.125rem;
  line-height: 1.75rem;
}

.text-sm{
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.text-xl{
  font-size: 1.25rem;
  line-height: 1.75rem;
}

.text-xs{
  font-size: 0.75rem;
  line-height: 1rem;
}

.font-\[16px\]{
  font-weight: 16px;
}

.font-\[18px\]{
  font-weight: 18px;
}

.font-black{
  font-weight: 900;
}

.font-bold{
  font-weight: 700;
}

.font-extrabold{
  font-weight: 800;
}

.font-medium{
  font-weight: 500;
}

.font-semibold{
  font-weight: 600;
}

.uppercase{
  text-transform: uppercase;
}

.capitalize{
  text-transform: capitalize;
}

.normal-case{
  text-transform: none;
}

.\!leading-\[1\.2\]{
  line-height: 1.2 !important;
}

.leading-6{
  line-height: 1.5rem;
}

.leading-\[1\.25\]{
  line-height: 1.25;
}

.leading-\[20px\]{
  line-height: 20px;
}

.leading-\[22px\]{
  line-height: 22px;
}

.leading-\[24px\]{
  line-height: 24px;
}

.leading-\[25px\]{
  line-height: 25px;
}

.leading-none{
  line-height: 1;
}

.leading-relaxed{
  line-height: 1.625;
}

.leading-snug{
  line-height: 1.375;
}

.leading-tight{
  line-height: 1.25;
}

.tracking-\[0\.5px\]{
  letter-spacing: 0.5px;
}

.tracking-\[3px\]{
  letter-spacing: 3px;
}

.tracking-tight{
  letter-spacing: -0.025em;
}

.tracking-tighter{
  letter-spacing: -0.05em;
}

.\!text-black{
  --tw-text-opacity: 1 !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}

.text-\[\#111214\]{
  --tw-text-opacity: 1;
  color: rgb(17 18 20 / var(--tw-text-opacity, 1));
}

.text-\[\#147C4B\]{
  --tw-text-opacity: 1;
  color: rgb(20 124 75 / var(--tw-text-opacity, 1));
}

.text-\[\#171313\]{
  --tw-text-opacity: 1;
  color: rgb(23 19 19 / var(--tw-text-opacity, 1));
}

.text-\[\#1B1616\]{
  --tw-text-opacity: 1;
  color: rgb(27 22 22 / var(--tw-text-opacity, 1));
}

.text-\[\#4F4F4F\]{
  --tw-text-opacity: 1;
  color: rgb(79 79 79 / var(--tw-text-opacity, 1));
}

.text-\[\#666464\]{
  --tw-text-opacity: 1;
  color: rgb(102 100 100 / var(--tw-text-opacity, 1));
}

.text-\[\#666\]{
  --tw-text-opacity: 1;
  color: rgb(102 102 102 / var(--tw-text-opacity, 1));
}

.text-\[\#6B7280\]{
  --tw-text-opacity: 1;
  color: rgb(107 114 128 / var(--tw-text-opacity, 1));
}

.text-\[\#727272\]{
  --tw-text-opacity: 1;
  color: rgb(114 114 114 / var(--tw-text-opacity, 1));
}

.text-\[\#777\]{
  --tw-text-opacity: 1;
  color: rgb(119 119 119 / var(--tw-text-opacity, 1));
}

.text-\[\#7A7A7A\]{
  --tw-text-opacity: 1;
  color: rgb(122 122 122 / var(--tw-text-opacity, 1));
}

.text-\[\#A51D1D\]{
  --tw-text-opacity: 1;
  color: rgb(165 29 29 / var(--tw-text-opacity, 1));
}

.text-\[\#b2161d\]{
  --tw-text-opacity: 1;
  color: rgb(178 22 29 / var(--tw-text-opacity, 1));
}

.text-\[\#ff9ea1\]{
  --tw-text-opacity: 1;
  color: rgb(255 158 161 / var(--tw-text-opacity, 1));
}

.text-\[18\]{
  color: 18;
}

.text-black{
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1));
}

.text-brand-bodytext{
  --tw-text-opacity: 1;
  color: rgb(102 100 100 / var(--tw-text-opacity, 1));
}

.text-brand-dark{
  --tw-text-opacity: 1;
  color: rgb(31 25 25 / var(--tw-text-opacity, 1));
}

.text-brand-red{
  --tw-text-opacity: 1;
  color: rgb(164 22 26 / var(--tw-text-opacity, 1));
}

.text-brand-theme{
  --tw-text-opacity: 1;
  color: rgb(164 22 26 / var(--tw-text-opacity, 1));
}

.text-brand-yellow{
  --tw-text-opacity: 1;
  color: rgb(255 222 0 / var(--tw-text-opacity, 1));
}

.text-gray-500{
  --tw-text-opacity: 1;
  color: rgb(107 114 128 / var(--tw-text-opacity, 1));
}

.text-neutral-400{
  --tw-text-opacity: 1;
  color: rgb(163 163 163 / var(--tw-text-opacity, 1));
}

.text-neutral-500{
  --tw-text-opacity: 1;
  color: rgb(115 115 115 / var(--tw-text-opacity, 1));
}

.text-neutral-600{
  --tw-text-opacity: 1;
  color: rgb(82 82 82 / var(--tw-text-opacity, 1));
}

.text-neutral-700{
  --tw-text-opacity: 1;
  color: rgb(64 64 64 / var(--tw-text-opacity, 1));
}

.text-neutral-800{
  --tw-text-opacity: 1;
  color: rgb(38 38 38 / var(--tw-text-opacity, 1));
}

.text-neutral-900{
  --tw-text-opacity: 1;
  color: rgb(23 23 23 / var(--tw-text-opacity, 1));
}

.text-transparent{
  color: transparent;
}

.text-white{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.text-white\/55{
  color: rgb(255 255 255 / 0.55);
}

.text-white\/90{
  color: rgb(255 255 255 / 0.9);
}

.text-white\/95{
  color: rgb(255 255 255 / 0.95);
}

.underline{
  text-decoration-line: underline;
}

.line-through{
  text-decoration-line: line-through;
}

.decoration-white{
  text-decoration-color: #fff;
}

.underline-offset-2{
  text-underline-offset: 2px;
}

.opacity-0{
  opacity: 0;
}

.opacity-20{
  opacity: 0.2;
}

.opacity-\[0\.35\]{
  opacity: 0.35;
}

.shadow-2xl{
  --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
  --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[0_4px_12px_rgba\(0\2c 0\2c 0\2c 0\.06\)\]{
  --tw-shadow: 0 4px 12px rgba(0,0,0,0.06);
  --tw-shadow-colored: 0 4px 12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[0_6px_22px_rgba\(0\2c 0\2c 0\2c 0\.08\)\]{
  --tw-shadow: 0 6px 22px rgba(0,0,0,0.08);
  --tw-shadow-colored: 0 6px 22px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[0_8px_24px_rgba\(0\2c 0\2c 0\2c 0\.10\)\]{
  --tw-shadow: 0 8px 24px rgba(0,0,0,0.10);
  --tw-shadow-colored: 0 8px 24px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[0px_2px_4px_rgba\(0\2c 0\2c 0\2c 0\.14\)\]{
  --tw-shadow: 0px 2px 4px rgba(0,0,0,0.14);
  --tw-shadow-colored: 0px 2px 4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[0px_2px_6px_rgba\(0\2c 0\2c 0\2c 0\.14\)\]{
  --tw-shadow: 0px 2px 6px rgba(0,0,0,0.14);
  --tw-shadow-colored: 0px 2px 6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-card{
  --tw-shadow: 0 2px 9px rgba(0,0,0,.28);
  --tw-shadow-colored: 0 2px 9px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-lg{
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-md{
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-sm{
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-xl{
  --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.outline-none{
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.ring-2{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.ring-brand-red{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(164 22 26 / var(--tw-ring-opacity, 1));
}

.ring-offset-2{
  --tw-ring-offset-width: 2px;
}

.brightness-0{
  --tw-brightness: brightness(0);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.invert{
  --tw-invert: invert(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.filter{
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.transition{
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.transition-all{
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.transition-colors{
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.transition-opacity{
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.transition-transform{
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.duration-200{
  transition-duration: 200ms;
}

.duration-300{
  transition-duration: 300ms;
}

.duration-500{
  transition-duration: 500ms;
}

.duration-700{
  transition-duration: 700ms;
}

.ease-in-out{
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.\[-ms-overflow-style\:none\]{
  -ms-overflow-style: none;
}

.\[scrollbar-width\:none\]{
  scrollbar-width: none;
}

/* Variant: Banner where only the image defines the height
   Use on the banner wrapper to remove extra box/padding and let
   the img (or background-image) determine the height. */

.home-banner--image-only {
  /* remove internal padding and background box so only image shows */
  background: transparent !important;
  padding: 0 !important;
  box-shadow: none !important;
}

.home-banner--image-only .home-banner-card {
  /* ensure inner card doesn't add padding or min-height */
  background: transparent !important;
  padding: 0 !important;
  min-height: 0 !important;
  box-shadow: none !important;
}

/* Make the image take full width and auto height; keeps aspect ratio */

.home-banner--image-only img,
.home-banner--image-only .banner-media {
  display: block;
  width: 100%;
  height: auto !important;
  max-height: none !important;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: inherit;
  /* preserve rounded corners from wrapper */
}

/* If the layout uses an extra placeholder box, hide it */

.home-banner--image-only .banner-placeholder {
  display: none !important;
}

/* Ensure the short banner image fills available height on larger layouts */

.home-banner-img-short {
  width: 100%;
  height: auto;
}

@media (min-width: 1024px) {
  .home-banner-img-short {
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

.sale-tab-pill {
  bottom: 0;
  padding: 5px 10px;
  background: #147C4B;
  border-radius: 5px 5px 0px 0px;
}

.products-sale-section {
  background: #fff !important;
}

@media (max-width: 767px) {
  .products-sale-section {
    padding-top: clamp(2.25rem, 8vw, 3.75rem) !important;
    padding-bottom: clamp(2.25rem, 8vw, 3.75rem) !important;
  }

  .products-sale-section .sale-heading-row {
    display: flex;
    margin-bottom: clamp(1.75rem, 7vw, 2.5rem) !important;
    padding-left: 0;
    padding-right: 0;
    gap: 18px !important;
  }

  .products-sale-section .sale-heading-row > div:first-child {
    min-width: 0;
  }

  .products-sale-section .section-heading-front {
    -webkit-text-stroke: 1.5px #b2161d;
  }

  .products-sale-section .sale-heading-copy {
    max-width: min(100%, 360px);
    margin-top: 14px !important;
    color: #6f6a6d;
    font-size: clamp(0.82rem, 3.7vw, 1rem) !important;
    line-height: 1.45;
  }

  .products-sale-section .sale-heading-row > .btn-primary-group {
    display: block;
  }

  .products-sale-section .md\:hidden > .space-y-2 {
    display: flex;
    flex-direction: column;
    gap: clamp(0.9rem, 4vw, 1rem);
  }

  .sale-acc {
    border-color: #e6e6e6 !important;
    border-radius: 15px !important;
    box-shadow:none !important;
  }

  .sale-acc[open] {
    border-color: transparent !important;
    background: white !important;
    box-shadow: none !important;
  }

  .sale-acc > summary {
    min-height: clamp(64px, 17vw, 70px);
    border-radius: 15px !important;
    background: #fff !important;
    padding: 0 clamp(18px, 5.5vw, 24px) !important;
    color: #1f1f1f !important;
    font-size: clamp(1.15rem, 5.3vw, 1.35rem) !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
  }

  .sale-acc[open] > summary {
    min-height: clamp(64px, 17vw, 70px);
    background: #ffebeb !important;
    color: #a51d1d !important;
    border-radius: 15px !important;
  }

  .sale-acc > summary .sale-acc-chevron {
    width: 22px;
    height: 22px;
    color: #6f6f6f !important;
    stroke-width: 2.2;
  }

  .sale-acc[open] > summary .sale-acc-chevron {
    color: #a51d1d !important;
    transform: rotate(180deg);
  }

  .sale-acc[open] > summary .sale-acc-chevron path {
    stroke: #a51d1d !important;
  }

  .sale-acc-panel {
    background: #a51d1d !important;
    /* padding: 16px 0 0 !important; */
    margin-top: 20px !important;
    border-radius: 15px;
  }

  .sale-mobile-featured-slot {
    min-width: 0;
  }

  #sale-mobile-featured {
    border-radius: 8px !important;
    background: #a51d1d !important;
    box-shadow: none !important;
    /* padding: clamp(18px, 5vw, 22px) clamp(28px, 9vw, 34px) clamp(31px, 8vw, 36px) !important; */
  }

  #sale-mobile-featured .sale-featured-overlay {
    opacity: 0;
  }

  #sale-mobile-featured .sale-featured-diamond {
    opacity: 0.13;
    background-size: 182px 182px;
    background-position: -2px -30px, 90px 62px;
  }

  #sale-mobile-featured > p {
    /* font-size: clamp(2.4rem, 14vw, 3.6rem) !important; */
    font-weight: 400 !important;
    letter-spacing: 2px !important;
    opacity: 0.36 !important;
    text-align: center !important;
  }

  #sale-mobile-featured .relative.z-\[1\] {
    margin-top: 20px !important;
    gap: 20px !important;
  }

  #sale-mobile-featured .relative.rounded-2xl.bg-white {
    border-radius: 22px !important;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px) !important;
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none !important;
  }

  #sale-mobile-featured .js-sale-img {
    width: 100%;
    max-width: clamp(190px, 61vw, 242px);
    height: clamp(230px, 72vw, 286px) !important;
    -o-object-fit: contain;
       object-fit: contain;
    margin-top: 0 !important;
  }

  #sale-mobile-featured .js-sale-discount {
    display: none;
  }

  #sale-mobile-featured .absolute.-top-1.left-5 {
    left: -4px !important;
    top: -9px !important;
    width: 98px;
    height: 76px;
  }

  .m-sale-hanger {
    animation: swing 3s ease-in-out infinite;
  }

  #sale-mobile-featured .absolute.-top-1.left-5::before,
  #sale-mobile-featured .absolute.-top-1.left-5::after {
    content: '';
    position: absolute;
    height: 1.4px;
    background: #1f1919;
    z-index: -1;
  }

  #sale-mobile-featured .absolute.-top-1.left-5::before {
    left: 7px;
    top: 19px;
    width: 55px;
    transform: rotate(-20deg);
  }

  #sale-mobile-featured .absolute.-top-1.left-5::after {
    left: 54px;
    top: 10px;
    width: 43px;
    transform: rotate(35deg);
    transform-origin: left center;
  }

  #sale-mobile-featured .absolute.-top-1.left-5 > div {
    position: absolute;
    left: 51px;
    top: 4px;
    width: 10px !important;
    height: 10px !important;
    border-radius: 999px;
    background: #1f1919 !important;
  }

  #sale-mobile-featured .absolute.-top-1.left-5 > span {
    position: absolute;
    left: 0;
    top: 28px;
    min-width: 98px;
    border-radius: 7px !important;
    background: #11814b !important;
    padding: 8px 18px !important;
    color: #fff !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    text-transform: none !important;
    transform: rotate(6deg) !important;
  }

  #sale-mobile-featured .px-0\.5 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  #sale-mobile-featured .js-sale-headline-mobile {
    max-width: 290px;
    color: #fff;
    font-size: clamp(1.45rem, 6.8vw, 1.7rem) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
  }

  #sale-mobile-featured .js-sale-price {
    margin-top: 10px !important;
    color: #fff;
    font-size: clamp(1rem, 4.8vw, 1.2rem) !important;
    font-weight: 600 !important;
  }

  #sale-mobile-featured .px-0\.5 .mt-4 {
    margin-top: 16px !important;
    display: flex;
    align-items: center;
    gap: 8px;
  }

  #sale-mobile-featured .btn-primary {
    --btn-height: 44px;
    --btn-gap: 8px;
  }

  #sale-mobile-featured .btn-primary-text {
    padding: 0 22px !important;
    font-size: 15px !important;
  }

  #sale-mobile-featured .sale-trust-grid {
    grid-template-columns: 1fr;
    gap: 0;
    margin-top: 8px;
    border: 0;
    border-radius: 7px;
    background: rgba(255, 255, 255, 0.14);
    padding: 15px 12px;
  }

  #sale-mobile-featured .sale-trust-grid > div {
    min-height: 0;
    align-items: center;
    gap: 8px;
    border: 0 !important;
    padding: 10px 0;
    font-size: clamp(0.95rem, 4.6vw, 1.1rem);
    line-height: 1.25;
    border-bottom: 1px solid rgba(255, 255, 255, 0.25) !important;
  }

  #sale-mobile-featured .sale-trust-grid > div:first-child {
    padding-top: 0;
  }

  #sale-mobile-featured .sale-trust-grid > div:last-child {
    border: 0 !important;
    padding-bottom: 0;
  }

  #sale-mobile-featured .sale-trust-grid svg {
    width: 21px;
    height: 21px;
  }
}

@media (min-width: 1024px) {
  main > section {
    padding-top: 100px;
    /* padding-bottom: 100px !important; */
  }
}

/* Products on sale — shared tablet+ (768px+) */

@keyframes swing {
  0% {
    transform: rotate(-8deg);
  }

  50% {
    transform: rotate(8deg);
  }

  100% {
    transform: rotate(-8deg);
  }
}

@media (min-width: 768px) {
  .products-sale-section {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .products-sale-section .sale-heading-row {
    margin-bottom: 24px;
    gap: 1.25rem;
  }

  .products-sale-section .section-heading {
    font-size: clamp(2rem, 4.5vw, 3.125rem);
    line-height: 0.95;
    color: #1b1515;
  }

  .products-sale-section .sale-heading-copy {
    max-width: 36rem;
    margin-top: 12px;
    color: #6f6a6d;
    font-size: 15px;
    line-height: 1.45;
  }

  .products-sale-section .sale-heading-row > .btn-primary-group {
    padding-top: 0;
    align-self: flex-start;
  }

  .products-sale-section .sale-heading-row .btn-primary {
    --btn-gap: 4px;
    --btn-height: 44px;
  }

  .products-sale-section .sale-heading-row .btn-primary-text {
    padding: 0 20px;
    font-size: 15px;
  }

  .sale-desktop-layout {
    width: 100%;
    min-width: 0;
    align-items: stretch;
  }

  .sale-thumb-tile {
    position: relative;
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 1px solid #e4e4e4;
    border-radius: 14px;
    background: #f7f7f7;
    padding: 14px;
    transition: border-color 0.2s ease;
  }

  .sale-thumb-tile.sale-tab-active {
    border: 2px solid #A4161A;
  }

  .sale-thumb-tile img {
    width: auto;
    height: auto;
    max-width: 84%;
    max-height: 78%;
    -o-object-fit: contain;
       object-fit: contain;
  }

  .sale-thumb-tile .sale-tab-pill {
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    border-radius: 5px 5px 0 0;
    background: #A4161A;
    padding: 4px 10px;
    color: #fff;
    font-size: 13px;
    font-weight: 500;
    line-height: 1;
    text-transform: none;
    opacity: 1;
  }

  .sale-featured-wrap {
    display: flex;
    flex-direction: column;
    min-width: 0;
    width: 100%;
    height: 100%;
    align-self: stretch;
  }

  /* .sale-featured-card {
    position: relative;
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    width: 100%;
    height: 100%;
    min-height: 100%;
    overflow: hidden;
    border-radius: 12px;
    background: #a51f25;
    color: #fff;
  } */

  .sale-featured-card{
    position: relative;
    display: flex;
    height: 100%;
    min-height: 100%;
    width: 100%;
    flex: 1 1 0%;
    flex-direction: column;
    overflow: hidden;
    border-radius: 0.75rem;
    --tw-bg-opacity: 1;
    background-color: rgb(164 22 26 / var(--tw-bg-opacity, 1));
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  }

  @media (max-width: 767px) {
    #sale-mobile-featured .sale-featured-card.z-\[1\] {
      margin-top: 20px;
      gap: 20px;
    }

    #sale-mobile-featured .sale-featured-card.rounded-2xl.bg-white {
      border-radius: 22px;
      padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
      min-height: clamp(330px, 105vw, 408px);
      box-shadow: none;
    }
  }

  @media (min-width: 1024px) and (max-width: 1366px) {
    footer .sale-featured-card.rounded-3xl.bg-\[\#1a1514\] {
      padding: 2rem 1.25rem;
    }

    .container-page.sale-featured-card.h-\[68px\] > a img {
      max-width: 150px;
      height: auto;
    }

    .container-page.sale-featured-card.h-\[68px\] {
      gap: 12px;
    }

    [data-products-desktop] .sale-featured-card.rounded-3xl {
      padding: 12px;
    }
  }

  @media (max-width: 1023px) {
    .cart-summary-item > .grid > .sale-featured-card {
      width: 64px;
      height: 64px;
      border-radius: 8px;
    }

    .cart-summary-item .mt-1.sale-featured-card.items-center.text-sm {
      margin-top: 0.35rem;
      font-size: 0.75rem;
      line-height: 1.4;
      color: #666464;
    }
  }

  @media (min-width: 1024px) {
    .cart-summary-item > .grid > .sale-featured-card {
      width: 96px;
      height: 96px;
      border-radius: 8px;
    }

    .cart-summary-item > .grid > .sale-featured-card .cart-summary-item__remove {
      top: -6px;
      right: -7px;
      left: auto;
      width: 19px;
      height: 19px;
    }
  }

  @media (min-width: 1024px) and (max-width: 1180px) {
    .cart-summary-item > .grid > .sale-featured-card {
      width: 86px;
      height: 86px;
    }
  }

  .sale-featured-card .sale-featured-overlay {
    opacity: 0;
  }

  .sale-featured-card .sale-featured-diamond {
    opacity: 0.15;
    background-size: 220px 220px;
    background-position: -2px -44px, 110px 80px;
  }

  .sale-featured-watermark {
    pointer-events: none;
    position: absolute;
    left: 16px;
    top: 16px;
    z-index: 1;
    max-width: calc(100% - 32px);
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    color: transparent;
    font-size: clamp(2rem, 5vw, 5.5rem);
    font-weight: 400;
    line-height: 1;
    letter-spacing: 2px;
    text-transform: uppercase;
    opacity: 0.36;
    -webkit-text-stroke: 1.2px rgba(255, 255, 255, 0.35);
  }

  .sale-featured-content {
    position: relative;
    z-index: 2;
    display: flex;
    flex: 1 1 auto;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 20px;
    width: 100%;
    min-width: 0;
    min-height: 0;
    height: 100%;
    box-sizing: border-box;
    padding: 64px 16px 16px;
  }

  .sale-featured-image-card {
    position: relative;
    flex: 0 0 auto;
    width: min(42%, 220px);
    min-width: 160px;
    min-height: 240px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: visible;
    border-radius: 18px;
    background: #f8f8f8;
    padding: 40px 16px 28px;
  }

  .sale-featured-image-card .js-sale-img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 200px;
    -o-object-fit: contain;
       object-fit: contain;
  }

  .sale-hanger {
    position: absolute;
    left: -3px;
    top: 2px;
    z-index: 3;
    width: 98px;
    height: 75px;
    animation: swing 3s ease-in-out infinite;
  }

  .sale-hanger::before,
  .sale-hanger::after {
    content: '';
    position: absolute;
    top: 14px;
    width: 44px;
    height: 1.5px;
    background: #1f1919;
    transform-origin: right center;
    z-index: -1;
  }

  .sale-hanger::before {
    left: 10px;
    top:-4px;
    transform: rotate(-34deg);
  }

  .sale-hanger::after {
    left: 36px;
    top:33px;
    transform: rotate(58deg);
  }

  .sale-hanger span {
    position: absolute;
    left: 51px;
    top: -7px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #1f1919;
  }

  .sale-hanger b {
    position: absolute;
    left: 0;
    top: 24px;
    display: inline-flex;
    min-width: 98px;
    align-items: center;
    justify-content: center;
    transform: rotate(6deg);
    border-radius: 7px;
    background: #11814b;
    padding: 8px 18px;
    color: #fff;
    font-size: 24px;
    font-weight: 700;
    line-height: 1;
  }

  .sale-discount-badge {
    position: absolute;
    right: 10px;
    top: 11px;
    display: inline-flex;
    min-width: 101px;
    height: 31px;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #b2161d;
    color: #fff;
    font-size: 18px;
    font-weight: 500;
    line-height: 1;
  }

  .sale-featured-info {
    flex: 1 1 0;
    display: flex;
    min-width: 0;
    flex-direction: column;
    justify-content: space-between;
    gap: 12px;
    padding-top: 2px;
  }

  .sale-featured-copy h3 {
    max-width: 100%;
    color: #fff;
    font-size: clamp(1.125rem, 2.4vw, 1.5rem);
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0;
  }

  .sale-featured-copy .js-sale-price {
    margin-top: 4px;
    color: #fff;
    font-size: clamp(1rem, 1.8vw, 1.125rem);
    font-weight: 600;
    line-height: 1.2;
  }

  .sale-featured-actions {
    margin-top: 12px;
  }

  .sale-featured-actions .btn-primary {
    --btn-height: 40px;
  }

  .sale-featured-actions .btn-primary-text {
    padding: 0 18px;
    font-size: 14px;
  }

  .sale-featured-card .sale-trust-grid {
    width: 100%;
    align-self: flex-start;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.12);
    overflow: hidden;
  }

  .sale-featured-card .sale-trust-grid > div {
    min-height: 48px;
    align-items: center;
    gap: 6px;
    padding: 8px 12px;
    border: 0 !important;
    color: #fff;
    font-size: clamp(0.75rem, 1.4vw, 0.875rem);
    font-weight: 400;
    line-height: 1.2;
  }

  .sale-featured-card .sale-trust-grid > div:nth-child(2),
  .sale-featured-card .sale-trust-grid > div:nth-child(4) {
    border-left: 1px solid rgba(255, 255, 255, 0.22) !important;
  }

  .sale-featured-card .sale-trust-grid > div:nth-child(3),
  .sale-featured-card .sale-trust-grid > div:nth-child(4) {
    border-top: 1px solid rgba(255, 255, 255, 0.22) !important;
  }

  .sale-featured-card .sale-trust-grid svg {
    width: 18px;
    height: 18px;
  }
}

/* iPad / tablet portrait (768px–1023px) — stack grid above featured */

@media (min-width: 768px) and (max-width: 1023px) {
  .sale-desktop-layout {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .sale-thumb-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-template-rows: repeat(2, minmax(130px, 1fr));
    gap: 14px;
  }

  .sale-thumb-tile {
    min-height: 130px;
  }

  .sale-thumb-tile .sale-tab-pill {
    font-size: 12px;
    padding: 4px 8px;
  }

  .sale-featured-content {
    padding: 86px 16px 16px;
    gap: 16px;
  }

  .sale-featured-image-card {
    width: min(36%, 200px);
    min-width: 150px;
    min-height: 220px;
    padding: 32px 14px 24px;
  }

  .sale-featured-image-card .js-sale-img {
    max-height: 180px;
  }

  .sale-featured-copy h3 {
    font-size: 1.25rem;
  }

  .sale-featured-card .sale-trust-grid > div {
    min-height: 44px;
    padding: 8px 10px;
    font-size: 0.8125rem;
  }

  .sale-hanger {
    width: 74px;
  }

  .sale-hanger b {
    min-width: 72px;
    font-size: 20px;
    padding: 5px 12px;
  }

  .sale-hanger::before {
    left: 4px;
  }

  .sale-hanger span {
    left: 41px;
  }

  .sale-hanger::after {
    left: 23px;
    top: 30px;
  }
}

/* iPad Pro landscape (1024px–1279px) — side-by-side with fluid columns */

@media (min-width: 1024px) and (max-width: 1279px) {
  .products-sale-section {
    --sale-thumb-row: 156px;
    --sale-thumb-gap: 16px;
    --sale-panel-height: calc(3 * var(--sale-thumb-row) + 2 * var(--sale-thumb-gap));
  }

  .products-sale-section .sale-heading-row {
    align-items: flex-end;
  }

  .products-sale-section .sale-heading-row > .btn-primary-group {
    align-self: flex-end;
    padding-top: 40px;
  }

  .products-sale-section .sale-heading-row .btn-primary-text {
    padding: 0 22px;
    font-size: 16px;
  }

  .sale-desktop-layout {
    grid-template-columns: minmax(300px, 40%) minmax(0, 1fr);
    grid-template-rows: 1fr;
    align-items: stretch;
    gap: 18px;
  }

  .sale-thumb-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(3, var(--sale-thumb-row));
    gap: var(--sale-thumb-gap);
    height: var(--sale-panel-height);
    min-height: var(--sale-panel-height);
    align-self: stretch;
  }

  .sale-thumb-tile {
    min-height: 0;
    height: 100%;
  }

  .sale-featured-wrap {
    height: var(--sale-panel-height);
    min-height: var(--sale-panel-height);
    align-self: stretch;
  }

  .sale-featured-card {
    height: 100%;
    min-height: 100%;
  }

  .sale-featured-content {
    flex: 1;
    height: 100%;
    min-height: 100%;
    padding: 72px 20px 20px;
    gap: 22px;
  }

  .sale-featured-image-card {
    width: min(44%, 250px);
    min-width: 180px;
    min-height: 0;
    height: auto;
    align-self: stretch;
    padding: 44px 20px 32px;
  }

  .sale-thumb-tile .sale-tab-pill {
    font-size: 14px;
    padding: 5px 12px;
  }

  .sale-featured-image-card .js-sale-img {
    max-height: 240px;
  }

  .sale-featured-copy h3 {
    font-size: 1.5rem;
    line-height: 1.4;
  }

  .sale-featured-copy .js-sale-price {
    font-size: 1.125rem;
  }

  .sale-featured-actions .btn-primary-text {
    font-size: 15px;
  }

  .sale-featured-card .sale-trust-grid > div {
    min-height: 50px;
    padding: 10px 14px;
    font-size: 0.9375rem;
  }
}

.sale-featured-info, .sale-featured-image-card {
  z-index: 2;
}

.sale-featured-content::before {
  content: "";
  background-image: url("../../../assets/images/bg-square-one.png");
  z-index: 0;
  position: absolute;
  top: 0px;
  right: 0px;
  height: 340px;
  width: 500px;
  background-position: right top;
  background-repeat: no-repeat;
  opacity: 0.2;
}

@media (max-width: 767px) {
  #sale-mobile-featured .sale-featured-content.-top-1.left-5::before {
    left: -4px;
    top: -9px;
    width: 98px;
    height: 76px;
  }

  #sale-mobile-featured .sale-featured-content.-top-1.left-5::before::before,
  #sale-mobile-featured .sale-featured-content.-top-1.left-5::before::after {
    content: '';
    position: absolute;
    height: 1.4px;
    background: #1f1919;
    z-index: -1;
  }

  #sale-mobile-featured .sale-featured-content.-top-1.left-5::before::before {
    left: 7px;
    top: 19px;
    width: 55px;
    transform: rotate(-20deg);
  }

  #sale-mobile-featured .sale-featured-content.-top-1.left-5::before::after {
    left: 54px;
    top: 10px;
    width: 43px;
    transform: rotate(35deg);
    transform-origin: left center;
  }

  #sale-mobile-featured .sale-featured-content.-top-1.left-5 > div::before {
    position: absolute;
    left: 51px;
    top: 4px;
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: #1f1919;
  }

  #sale-mobile-featured .sale-featured-content.-top-1.left-5 > span::before {
    position: absolute;
    left: 0;
    top: 28px;
    min-width: 98px;
    border-radius: 7px;
    background: #11814b;
    padding: 8px 18px;
    color: #fff;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
    text-transform: none;
    transform: rotate(6deg);
  }
}

.sale-featured-content::after {
  content: "";
  background-image: url("../../../assets/images/bg-square-two.png.png");
  z-index: 0;
  position: absolute;
  left: 0px;
  bottom: 0px;
  height: 340px;
  width: 500px;
  background-position: left bottom;
  background-repeat: no-repeat;
  opacity: 0.2;
}

@media (max-width: 767px) {
  #sale-mobile-featured .sale-featured-content.-top-1.left-5::after {
    left: -4px;
    top: -9px;
    width: 98px;
    height: 76px;
  }

  #sale-mobile-featured .sale-featured-content.-top-1.left-5::after::before,
  #sale-mobile-featured .sale-featured-content.-top-1.left-5::after::after {
    content: '';
    position: absolute;
    height: 1.4px;
    background: #1f1919;
    z-index: -1;
  }

  #sale-mobile-featured .sale-featured-content.-top-1.left-5::after::before {
    left: 7px;
    top: 19px;
    width: 55px;
    transform: rotate(-20deg);
  }

  #sale-mobile-featured .sale-featured-content.-top-1.left-5::after::after {
    left: 54px;
    top: 10px;
    width: 43px;
    transform: rotate(35deg);
    transform-origin: left center;
  }

  #sale-mobile-featured .sale-featured-content.-top-1.left-5 > div::after {
    position: absolute;
    left: 51px;
    top: 4px;
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: #1f1919;
  }

  #sale-mobile-featured .sale-featured-content.-top-1.left-5 > span::after {
    position: absolute;
    left: 0;
    top: 28px;
    min-width: 98px;
    border-radius: 7px;
    background: #11814b;
    padding: 8px 18px;
    color: #fff;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
    text-transform: none;
    transform: rotate(6deg);
  }
}

.sale-mobile-featured-slot{
  position: relative;
}

@media (max-width: 767px) {
  #sale-mobile-featured .sale-mobile-featured-slot.z-\[1\] {
    margin-top: 20px;
    gap: 20px;
  }

  #sale-mobile-featured .sale-mobile-featured-slot.rounded-2xl.bg-white {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

@media (min-width: 1024px) and (max-width: 1366px) {
  [data-products-desktop] .sale-mobile-featured-slot.rounded-3xl {
    padding: 12px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item > .grid > .sale-mobile-featured-slot {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .grid > .sale-mobile-featured-slot {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .grid > .sale-mobile-featured-slot .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .grid > .sale-mobile-featured-slot {
    width: 86px;
    height: 86px;
  }
}

.sale-mobile-featured-slot::before {
  content: "";
  background-image: url("../../../assets/images/bg-square-one.png");
  position: absolute;
  top: 0px;
  right: -7px;
  z-index: 2;
  height: 160px;
  width: 200px;
  background-size: 100%;
  background-position: right top;
  background-repeat: no-repeat;
  opacity: 0.5;
}

@media (max-width: 767px) {
  #sale-mobile-featured .sale-mobile-featured-slot.-top-1.left-5::before {
    left: -4px;
    top: -9px;
    width: 98px;
    height: 76px;
  }

  #sale-mobile-featured .sale-mobile-featured-slot.-top-1.left-5::before::before,
  #sale-mobile-featured .sale-mobile-featured-slot.-top-1.left-5::before::after {
    content: '';
    position: absolute;
    height: 1.4px;
    background: #1f1919;
    z-index: -1;
  }

  #sale-mobile-featured .sale-mobile-featured-slot.-top-1.left-5::before::before {
    left: 7px;
    top: 19px;
    width: 55px;
    transform: rotate(-20deg);
  }

  #sale-mobile-featured .sale-mobile-featured-slot.-top-1.left-5::before::after {
    left: 54px;
    top: 10px;
    width: 43px;
    transform: rotate(35deg);
    transform-origin: left center;
  }

  #sale-mobile-featured .sale-mobile-featured-slot.-top-1.left-5 > div::before {
    position: absolute;
    left: 51px;
    top: 4px;
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: #1f1919;
  }

  #sale-mobile-featured .sale-mobile-featured-slot.-top-1.left-5 > span::before {
    position: absolute;
    left: 0;
    top: 28px;
    min-width: 98px;
    border-radius: 7px;
    background: #11814b;
    padding: 8px 18px;
    color: #fff;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
    text-transform: none;
    transform: rotate(6deg);
  }
}

/* .sale-mobile-featured-slot::after {
  content: "";
  background-image: url("../../images/bg-square-two.png.png");
  @apply absolute left-0 bottom-0 h-[340px] bg-no-repeat opacity-50 z-[2] bg-left-bottom bg-[length:100%];
  width: 100%;
} */

.sale-mobile-featured-slot::after {
  content: "";
  background-image: url("../../../assets/images/bg-square-two.png.png");
  position: absolute;
  left: -7px;
  bottom: -7px;
  z-index: 2;
  height: 340px;
  width: 200px;
  background-size: 100%;
  background-position: left bottom;
  background-repeat: no-repeat;
  opacity: 0.3;
}

@media (max-width: 767px) {
  #sale-mobile-featured .sale-mobile-featured-slot.-top-1.left-5::after {
    left: -4px;
    top: -9px;
    width: 98px;
    height: 76px;
  }

  #sale-mobile-featured .sale-mobile-featured-slot.-top-1.left-5::after::before,
  #sale-mobile-featured .sale-mobile-featured-slot.-top-1.left-5::after::after {
    content: '';
    position: absolute;
    height: 1.4px;
    background: #1f1919;
    z-index: -1;
  }

  #sale-mobile-featured .sale-mobile-featured-slot.-top-1.left-5::after::before {
    left: 7px;
    top: 19px;
    width: 55px;
    transform: rotate(-20deg);
  }

  #sale-mobile-featured .sale-mobile-featured-slot.-top-1.left-5::after::after {
    left: 54px;
    top: 10px;
    width: 43px;
    transform: rotate(35deg);
    transform-origin: left center;
  }

  #sale-mobile-featured .sale-mobile-featured-slot.-top-1.left-5 > div::after {
    position: absolute;
    left: 51px;
    top: 4px;
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: #1f1919;
  }

  #sale-mobile-featured .sale-mobile-featured-slot.-top-1.left-5 > span::after {
    position: absolute;
    left: 0;
    top: 28px;
    min-width: 98px;
    border-radius: 7px;
    background: #11814b;
    padding: 8px 18px;
    color: #fff;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
    text-transform: none;
    transform: rotate(6deg);
  }
}

.sale-featured-image-card {
  z-index: 2;
}

/* Full desktop layout (1280px+) */

@media (min-width: 1280px) {
  .products-sale-section {
    --sale-thumb-row: 180px;
    --sale-thumb-gap: 20px;
    --sale-panel-height: calc(3 * var(--sale-thumb-row) + 2 * var(--sale-thumb-gap));
  }

  .products-sale-section .sale-heading-row {
    min-height: 162px;
    padding-top: 9px;
  }

  .products-sale-section .section-heading {
    font-size: 48px;
  }

  .products-sale-section .sale-heading-copy {
    max-width: 650px;
    margin-top: 15px;
    font-size: 17px;
  }

  .products-sale-section .sale-heading-row > .btn-primary-group {
    padding-top: 62px;
  }

  .products-sale-section .sale-heading-row .btn-primary-text {
    padding: 0 22px;
    font-size: 17px;
  }

  .sale-thumb-tile {
    min-height: 180px;
    height: 180px;
    padding: 18px;
  }

  .sale-thumb-tile .sale-tab-pill {
    font-size: 16px;
    padding: 5px 13px;
  }

  .sale-featured-wrap {
    height: var(--sale-panel-height);
    min-height: var(--sale-panel-height);
    align-self: stretch;
  }

  .sale-featured-card {
    height: 100%;
    min-height: 100%;
  }

  .sale-featured-card .sale-featured-diamond {
    background-size: 292px 292px;
    background-position: -2px -44px, 144px 103px;
  }

  .sale-featured-watermark {
    left: 41px;
    top: 35px;
    font-size: 88px;
    letter-spacing: 4px;
  }

  .sale-desktop-layout {
    grid-template-columns: 420px minmax(0, 1fr);
    gap: 20px;
  }

  .sale-thumb-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(3, var(--sale-thumb-row));
    gap: var(--sale-thumb-gap);
    height: var(--sale-panel-height);
    min-height: var(--sale-panel-height);
    align-self: stretch;
  }

  .sale-featured-content {
    display: grid;
    grid-template-columns: 290px minmax(0, 1fr);
    gap: 36px;
    padding: 140px 26px 26px;
    flex-wrap: unset;
  }

  .sale-featured-image-card {
    flex: none;
    width: 290px;
    max-width: none;
    height: 408px;
    min-height: 408px;
    padding: 58px 34px 40px;
  }

  .sale-featured-info {
    flex: unset;
  }

  .sale-featured-image-card .js-sale-img {
    width: 200px;
    height: 300px;
    max-height: none;
  }

  .sale-featured-copy h3 {
    max-width: 495px;
    font-size: 32px;
    line-height: 1.52;
  }

  .sale-featured-copy .js-sale-price {
    font-size: 20px;
  }

  .sale-featured-actions {
    margin-top: 16px;
  }

  .sale-featured-actions .btn-primary {
    --btn-height: 43px;
  }

  .sale-featured-actions .btn-primary-text {
    padding: 0 23px;
    font-size: 16px;
  }

  .sale-featured-card .sale-trust-grid > div {
    min-height: 56px;
    gap: 8px;
    padding: 11px 20px;
    font-size: 16px;
  }

  .sale-featured-card .sale-trust-grid svg {
    width: 22px;
    height: 22px;
  }
}

/* ============================================================
   FOOTER — iPad Pro only (1024px–1366px). Single-row layout like desktop.
   ============================================================ */

@media (min-width: 1024px) and (max-width: 1366px) {
  footer .overflow-hidden.rounded-3xl.bg-\[\#1a1514\] {
    padding: 2rem 1.25rem;
  }

  .footer-main-inner {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    gap: 1.25rem;
    padding-left: 0.25rem;
    padding-right: 0.25rem;
  }

  .footer-accordions {
    display: none !important;
  }

  .footer-brand-col {
    flex: 0 0 22%;
    width: 22%;
    max-width: 22% !important;
    min-width: 0;
    margin: 0;
    align-items: center;
    text-align: center;
  }

  .footer-brand-box {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding: 1.25rem !important;
  }

  .footer-brand-box > div {
    align-items: center;
    text-align: center;
  }

  .footer-follow-heading {
    margin-top: 24px !important;
    text-align: center;
  }

  .footer-brand-col .footer-social-links {
    justify-content: center;
    text-align: center;
  }

  .footer-link-col {
    display: block !important;
    flex: 1 1 0;
    min-width: 0;
    width: auto;
    max-width: none;
  }

  .footer-link-col h3 {
    margin-bottom: 0.75rem;
    font-size: 14px;
  }

  .footer-panel-dark a {
    font-size: 13px !important;
  }

  .footer-link-col ul {
    font-size: 13px;
    line-height: 1.45;
  }

  .footer-link-col li a {
    display: inline-block;
    word-break: break-word;
  }

  .footer-contact-col {
    flex: 0 0 22%;
    width: 22%;
    max-width: 22% !important;
    min-width: 0;
    display: flex !important;
    flex-direction: column !important;
    gap: 0.875rem;
  }

  .footer-contact-col > div {
    min-width: 0;
  }

  .footer-contact-col p,
  .footer-contact-col a {
    font-size: 13px;
  }

  .footer-contact-col .footer-stripe-block {
    padding-top: 0.5rem;
  }
}

/* Swiper-only home page fixes. Keep the existing desktop brands grid and use
   the Swiper carousel exclusively below the desktop breakpoint. */

section[aria-labelledby="brands-heading"] [data-brands-swiper] {
  display: none !important;
}

@media (max-width: 1023px) {
  section[aria-labelledby="brands-heading"] [data-brands-swiper] {
    display: block !important;
  }
}

/* Swiper calculates the horizontal movement while these rules keep every
   review card in a visible row at the same height. */

[data-review-scroller].swiper [data-review-track].swiper-wrapper {
  align-items: stretch !important;
}

[data-review-scroller].swiper .review-card-wrap.swiper-slide {
  display: flex !important;
  height: auto !important;
}

[data-review-scroller].swiper .review-card-wrap.swiper-slide .review-card {
  width: 100%;
  height: 100% !important;
}

.carousel-nav.is-disabled {
  cursor: not-allowed;
  opacity: 0.45;
}

/* Footer — large desktop (1367px+): full reference spacing */

@media (min-width: 1367px) {
  .footer-panel-dark {
    padding: 2.5rem 3rem 0 !important;
  }

  .footer-main-inner {
    gap: 2.5rem;
    padding: 4rem 0 3.5rem !important;
  }

  .footer-brand-col {
    flex: 0 0 320px;
    width: 320px;
    max-width: 320px !important;
  }

  .footer-brand-box {
    max-width: 320px;
    padding: 2rem !important;
  }

  .footer-contact-col {
    flex: 0 0 300px;
    width: 300px;
    max-width: 300px !important;
    gap: 1.5rem !important;
  }

  .footer-link-col h3 {
    margin-bottom: 1.125rem;
  }

  .footer-bottom {
    padding: 2.5rem 0 3rem !important;
  }

  .footer-copyright {
    font-size: 14px;
    max-width: 48%;
  }

  .footer-payments {
    gap: 0.625rem !important;
  }

  .footer-payments > .inline-flex {
    min-width: 5.25rem !important;
    height: 3rem !important;
  }
}

/* ============================================================
   iPad Pro responsive tweaks (1024px — 1366px)
   - show 3 product cards per row
   - adjust header/search sizing and spacing for iPad Pro
   - reduce some section paddings for better fit
   ============================================================ */

@keyframes marquee {
  0% {
    transform: translateX(100%);
  }

  100% {
    transform: translateX(-100%);
  }
}

.animate-marquee {
  animation: marquee 30s linear infinite;
}

@media (max-width: 767px) {
  .animate-marquee-reverse {
    animation: marquee 12s linear infinite reverse;
  }
}

@media (min-width: 1024px) and (max-width: 1366px) {
  /* Products: force 3-column desktop grid on iPad Pro */

  [data-products-desktop] {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 20px !important;
    grid-auto-rows: auto;
  }

  /* Ensure each product card stacks content correctly */

  [data-products-desktop] > article {
    display: flex;
    flex-direction: column;
  }

  /* Header: reduce logo size and search input width so header doesn't overflow */

  .container-page.flex.h-\[68px\] > a img,
  .container-page > a img {
    max-width: 150px;
    height: auto;
  }

  /* Narrow the search control so it fits alongside logo + actions on iPad Pro */

  button[data-open="searchPanel"] {
    width: 360px !important;
    max-width: 55% !important;
  }

  /* Slightly reduce gap between header items */

  .container-page.flex.h-\[68px\] {
    gap: 12px !important;
  }

  /* Main sections: slightly reduce top/bottom padding so content fits better */

  main > section,
  section {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }

  /* Home banner cards: reduce internal padding so titles and CTAs sit closer to media */

  .home-banner-card {
    padding: 18px !important;
    border-radius: 20px !important;
  }

  /* Products card image area: reduce excessive vertical padding that causes tall cards */

  [data-products-desktop] .relative.rounded-3xl {
    padding: 12px !important;
  }

  /* Ensure newsletter and other large section backgrounds align on iPad Pro */

  .newsletter-bg {
    background: linear-gradient(to bottom, #F3F4F6 0 48%, transparent 48%);
  }
}

/* Make Brands behave like a swipeable slider on iPad Pro (1024–1366) */

@media (min-width: 1024px) and (max-width: 1366px) {
  /* Hide the desktop grid of brands and show the marquee variant */

  section[aria-labelledby="brands-heading"] .mt-10 {
    display: none !important;
  }

  section[aria-labelledby="brands-heading"] .mt-8 {
    display: block !important;
  }

  /* Marquee styling similar to mobile but slightly larger tiles for iPad Pro */

  section[aria-labelledby="brands-heading"] .brand-marquee,
  section[aria-labelledby="brands-heading"] .brand-marquee-reverse {
    display: flex !important;
    gap: 16px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding: 8px 12px;
  }

  section[aria-labelledby="brands-heading"] .brand-logo-tile {
    flex: 0 0 auto;
    width: 220px;
    height: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
    scroll-snap-align: center;
    margin-right: 8px;
  }

  section[aria-labelledby="brands-heading"] .brand-logo-tile img {
    max-height: 56px;
    width: auto;
  }

  /* Hide native scrollbar on WebKit to keep it clean */

  section[aria-labelledby="brands-heading"] .brand-marquee::-webkit-scrollbar {
    display: none;
  }
}

/* headre css */

.desktop-search input{
  padding-left: 40px;
}

.nav-link:hover {
  color: rgb(255 158 161 / var(--tw-text-opacity, 1));
}

.side-panel h2 {
  font-size: 18px;
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .items-center.desktop-search INPUT{
    width: 250px;
  }
}

.footer-link-col h3 {
  font-size: 20px;
}

.footer-link-col ul li a, .footer-contact-col a {
  font-size: 16px;
}

.footer-accordions {
  border-color: #f7f7f7;
}

.footer-accordions .footer-accordion {
  border-color: #f7f7f7 !important;
}

@media (max-width: 767px) {
  .subscribe-cta-image {
    margin-top: 0.2rem !important;
  }
}

.login-form
{
  padding-bottom:100px;
}

/* about page css start */

/* about page css end */

/* contact us page css start */

/* contact us page css end */

/* product details page css start */

/* product details page css end */

/* shipping information page css start */

.location-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px 26px;
}

.location-card__link {
  position: absolute;
  right: 16px;
  bottom: 16px;
  z-index: 2;
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  border-radius: 999px;
  background: #fff;
  transition: transform 200ms ease, background-color 200ms ease;
  border: 1px solid #E6E6E6;
}

.location-card__link img {
  width: 22px;
  height: 22px;
}

.location-card__link:hover {
  transform: translateY(-2px);
}

@media (max-width: 767px) {
  .location-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}

.shipping-delivery-card{
  border-radius: 10px;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(224 224 224 / var(--tw-border-opacity, 1));
  padding-top: 21px;
  padding-bottom: 21px;
  padding-left: 81px;
  padding-right: 81px;
  text-align: center;
  --tw-shadow: 0px 2px 6px rgba(0,0,0,0.14);
  --tw-shadow-colored: 0px 2px 6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shipping-delivery-card img{
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0.5rem;
  height: 48px;
  width: 48px;
}

.shipping-delivery-card h3{
  font-size: 18px;
  font-weight: 600;
}

@media (min-width: 1024px){
  .shipping-delivery-card h3{
    font-size: 20px;
  }
}

.shipping-delivery-card p {
  font-size: 0.875rem;
  color: #666464;
  line-height: 1.4;
}

.shipping-section-heading p {
  margin-top: 0.35rem;
  font-size: 0.9375rem;
  line-height: 1.5;
  color: #666464;
}

.shipping-costs-table-wrap {
  margin-top: 1.5rem;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-radius: 10px;
  border: 1px solid #E0E0E0;
}

.table-cell{
  border-top-width: 1px;
  border-right-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(224 224 224 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(249 249 249 / var(--tw-bg-opacity, 1));
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  text-align: left;
  font-size: 0.875rem;
  line-height: 1.25rem;
  --tw-text-opacity: 1;
  color: rgb(23 19 19 / var(--tw-text-opacity, 1));
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.flex.items-center.table-cell {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  
  .cart-summary-item__variants .table-cell {
    color: #A4161A;
  }
}

.table-head-cell{
  border-right-width: 1px;
  border-right-color: rgba(255,255,255,0.35);
  --tw-bg-opacity: 1;
  background-color: rgb(164 22 26 / var(--tw-bg-opacity, 1));
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  text-align: left;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.flex.items-center.table-head-cell {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

.shipping-costs-table {
  width: 100%;
  min-width: 560px;
  border-collapse: collapse;
  background: #F9F9F9;
}

.shipping-costs-table thead th {
  padding: 0.9rem 1.25rem;
  background: #A4161A;
  color: #fff;
  font-size: 0.9375rem;
  font-weight: 700;
  text-align: left;
  border-right: 1px solid rgba(255, 255, 255, 0.35);
}

.shipping-costs-table thead th:last-child {
  border-right: 0;
}

.shipping-costs-table tbody td {
  padding: 0.7rem 1rem;
  font-size: 0.9375rem;
  color: #171313;
  text-align: left;
  border-top: 1px solid #E0E0E0;
  border-right: 1px solid #E0E0E0;
  background: #F9F9F9;
}

.shipping-costs-table tbody td:last-child {
  border-right: 0;
}

.shipping-costs-table tbody tr:last-child td:first-child {
  border-bottom-left-radius: 9px;
}

.shipping-costs-table tbody tr:last-child td:last-child {
  border-bottom-right-radius: 9px;
}

.shipping-costs-table thead th:first-child {
  border-top-left-radius: 9px;
}

.shipping-costs-table thead th:last-child {
  border-top-right-radius: 9px;
}

.delivery-info-card {
  border: 1px solid #F5D0D1;
  border-radius: 14px;
  /* background: #fff; */
  /* padding: 1.5rem; */
}

/* .delivery-info-card h3 {
  font-size: 1.125rem;
  font-weight: 700;
  color: #A4161A;
  line-height: 1.3;
} */

.delivery-info-card__divider {
  margin: 1rem 0 1.25rem;
  height: 1px;
  background: #F5D0D1;
}

.delivery-info-list {
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
}

.delivery-info-list li {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  /* font-size: 0.9375rem;
  color: #171313; */
}

.delivery-info-list img {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
}

.delivery-info-card p {
  font-size: 0.9375rem;
  color: #171313;
  line-height: 1.5;
}

.delivery-info-contact-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 1.25rem;
  min-height: 42px;
  padding: 0.55rem 1.5rem;
  border-radius: 999px;
  background: #171313;
  color: #fff;
  font-size: 0.875rem;
  font-weight: 600;
  transition: background-color 200ms ease;
}

.delivery-info-contact-btn:hover {
  background: #A4161A;
}

/* @media (min-width: 640px) {
  .delivery-info-card {
    padding: 1.75rem 2rem;
  }
} */

.overnight-delivery-panel,
.working-days-panel {
  position: relative;
  overflow: hidden;
  border-radius: 14px;
  padding: 2rem 1.25rem;
}

.overnight-delivery-panel {
  background: #A4161A;
  color: #fff;
}

/* .overnight-delivery-panel__decor,
.working-days-panel__decor {
  position: absolute;
  pointer-events: none;
  width: clamp(180px, 24vw, 280px);
}

.overnight-delivery-panel__decor--top-right,
.working-days-panel__decor--top-right {
  top: 0;
  right: 0;
}

.overnight-delivery-panel__decor--bottom-left,
.working-days-panel__decor--bottom-left {
  bottom: 0;
  left: 0;
} */

.overnight-delivery-panel__header,
.working-days-panel__header {
  position: relative;
  z-index: 1;
  margin: 0 auto;
  max-width: 52rem;
  text-align: center;
}

.overnight-delivery-panel__header h2,
.working-days-panel__header h2 {
  font-size: clamp(1.25rem, 2.4vw, 1.75rem);
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.working-days-panel__header h2 {
  color: #171313;
}

.overnight-delivery-panel__header p,
.working-days-panel__header p {
  margin-top: 0.75rem;
  font-size: clamp(0.875rem, 1.5vw, 1rem);
  line-height: 1.6;
}

.overnight-delivery-panel__header p {
  color: rgba(255, 255, 255, 0.95);
}

.working-days-panel__header p {
  color: #666464;
}

.shipping-city-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.85rem;
  margin-top: 1.75rem;
}

@media (min-width: 640px) {
  .overnight-delivery-panel,
  .working-days-panel {
    padding: 2.5rem 2rem;
  }

  .shipping-city-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
  }
}

@media (min-width: 1024px) {
  .overnight-delivery-panel,
  .working-days-panel {
    padding: 3rem 2.5rem;
  }

  .shipping-city-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.overnight-city-card{
  display: flex;
  min-height: 52px;
  align-items: center;
  gap: 0.65rem;
  border-radius: 10px;
  border-width: 1px;
  border-color: rgba(255,255,255,0.25);
  background-color: rgba(255,255,255,0.12);
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.85rem;
  padding-bottom: 0.85rem;
  font-size: 16px;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  --tw-backdrop-blur: blur(5px);
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.overnight-city-card.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.overnight-city-card.h-\[68px\] {
    gap: 12px;
  }
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .overnight-city-card.desktop-search INPUT{
    width: 250px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.overnight-city-card.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item .mt-1.flex.overnight-city-card.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

@media (min-width: 1024px){
  .overnight-city-card{
    font-size: 20px;
  }
}

.overnight-city-card img {
  width: 18px;
  height: 24px;
  flex-shrink: 0;
}

.working-days-panel {
  border: 1px solid #E6E6E6;
  background: #F6F6F6;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

.working-days-city-card{
  display: flex;
  min-height: 52px;
  align-items: center;
  gap: 0.65rem;
  border-radius: 10px;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(230 230 230 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.85rem;
  padding-bottom: 0.85rem;
  font-size: 16px;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(23 19 19 / var(--tw-text-opacity, 1));
  --tw-shadow: 0 2px 6px rgba(0,0,0,0.08);
  --tw-shadow-colored: 0 2px 6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.rounded-2xl.working-days-city-card {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.working-days-city-card.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.working-days-city-card.h-\[68px\] {
    gap: 12px;
  }
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .working-days-city-card.desktop-search INPUT{
    width: 250px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.working-days-city-card.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item .mt-1.flex.working-days-city-card.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  
  .cart-summary-item__variants .working-days-city-card {
    color: #A4161A;
  }
}

@media (min-width: 1024px){
  .working-days-city-card{
    font-size: 20px;
  }
}

.working-days-city-card img {
  width: 18px;
  height: 24px;
  flex-shrink: 0;
}

.shipping-carriers-slider {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 1.75rem;
}

@media (min-width: 640px) {
  .shipping-carriers-slider {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.1rem;
  }
}

@media (min-width: 1024px) {
  .shipping-carriers-slider {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 1.25rem;
  }
}

@media (max-width: 639px) {
  .shipping-carriers-slider {
    /* display: flex; */
    gap: 0.85rem;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 0.25rem;
    scrollbar-width: none;
  }

  .shipping-carriers-slider::-webkit-scrollbar {
    display: none;
  }

  .shipping-carrier-tile {
    flex: 0 0 72%;
    scroll-snap-align: start;
  }
}

.shipping-carrier-tile {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 88px;
  padding: 1.25rem 1rem;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
  background: #fff;
}

.shipping-carrier-tile img {
  display: block;
  width: auto;
  max-width: 88%;
  max-height: 52px;
  -o-object-fit: contain;
     object-fit: contain;
}

/* shipping information page css end */

/* checkout page css start */

.cart-checkout-section {
  background: #fff;
}

.checkout-steps {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  margin: 0 auto;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.checkout-steps::-webkit-scrollbar {
  display: none;
}

.checkout-step {
  display: flex;
  min-width: -moz-max-content;
  min-width: max-content;
  flex: 0 0 auto;
  align-items: center;
  gap: 0.5rem;
}

.checkout-step__number {
  display: grid;
  flex-shrink: 0;
  place-items: center;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 999px;
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1;
}

.checkout-step.is-active .checkout-step__number {
  background: #A4161A;
  color: #fff;
}

.checkout-step.is-inactive .checkout-step__number {
  border: 1.5px solid #CFCFCF;
  background: #fff;
  color: #9A9A9A;
  font-weight: 600;
}

.checkout-step__label {
  line-height: 1.3;
  white-space: nowrap;
}

.checkout-step.is-completed .checkout-step__number {
  border: none;
  background-color: #147C4B;
  color: transparent;
  font-size: 0;
  line-height: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M3.814 6.312L.969 3.824 0 4.665l3.814 3.335L12 .841 11.038 0 3.814 6.312z' fill='%23fff'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 0.65rem 0.4375rem;
}

.checkout-step.is-completed .checkout-step__label {
  color: #147C4B;
  font-weight: 700;
}

.checkout-step.is-completed + .checkout-step__connector {
  background: #147C4B;
}

.checkout-step__connector {
  flex: 0 0 auto;
  width: 1.75rem;
  height: 1px;
  margin: 0 0.65rem;
  background: #D9D9D9;
}

@media (min-width: 768px) {
  .checkout-step__number {
    width: 2rem;
    height: 2rem;
    font-size: 0.875rem;
  }

  .checkout-step__connector {
    width: 2.25rem;
    margin: 0 0.85rem;
  }
}

.cart-checkout-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
}

@media (min-width: 1024px) {
  .cart-checkout-layout {
    grid-template-columns: minmax(0, 1fr) 320px;
    gap: 1.5rem;
    align-items: start;
  }
}

@media (min-width: 1280px) {
  .cart-checkout-layout {
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 2rem;
  }
}

.cart-items-panel__list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.cart-items-panel {
  border: 1px solid #E6E6E6;
  border-radius: 10px;
  background: #fff;
  padding: 1rem;
}

.cart-summary-section .cart-order-summary__title {
  font-size: 1rem;
  font-weight: 700;
  color: #171313;
}

@media (min-width: 1024px) {
  .cart-summary-section .cart-order-summary__title {
    font-size: 16px;
  }
}

.cart-summary-section .cart-order-summary {
  padding: 1.25rem;
}

.cart-summary-section .cart-order-summary__title {
  margin-bottom: 0.15rem;
}

.cart-summary-section .cart-order-summary__pricing {
  margin-top: 0.5rem;
}

.cart-summary-section .cart-order-summary__row {
  padding: 0.35rem 0;
  font-size: 0.875rem;
  line-height: 1.4;
}

.cart-summary-section .cart-order-summary__row strong {
  font-weight: 600;
}

.cart-summary-section .cart-order-summary__divider {
  margin: 0.75rem 0;
  background: #E6E6E6;
}

.cart-summary-section .cart-order-summary__total {
  padding: 0.35rem 0;
  font-size: 0.875rem;
}

.cart-summary-section .cart-order-summary__field--applied input {
  padding-right: 2.75rem;
}

.cart-summary-section .cart-order-summary__field--applied .cart-order-summary__field-actions {
  right: 0.5rem;
}

.cart-summary-section .cart-order-summary__field--applied .cart-order-summary__clear {
  display: grid;
  place-items: center;
  width: 1.35rem;
  height: 1.35rem;
  border: 0;
  border-radius: 4px;
  background: #A4161A;
  color: #fff;
  font-size: 0.9375rem;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  padding: 0;
}

.cart-summary-section .cart-order-summary__field--applied .cart-order-summary__clear:hover {
  background: #171313;
}

.cart-summary-section .cart-order-summary__field--inline input {
  height: 2.75rem;
  border-color: #E6E6E6;
  border-radius: 10px;
}

.cart-summary-section .cart-summary-input {
  height: 2.75rem;
  border-color: #E6E6E6;
  border-radius: 10px;
}

.cart-summary-section .cart-summary-shipping {
  margin-top: 0.65rem;
}

.cart-summary-section .cart-summary-coupon {
  margin-top: 0.85rem;
}

.cart-summary-section .cart-summary-actions {
  margin-top: 1.25rem;
  gap: 0.65rem;
}

.cart-summary-section .cart-summary-btn {
  min-height: 2.875rem;
  border-radius: 10px;
  font-size: 0.875rem;
  font-weight: 600;
}

.cart-summary-section .cart-summary-btn--secondary {
  background: #707070;
}

.cart-summary-section .cart-summary-radio {
  font-size: 0.875rem;
  line-height: 1.4;
}

.cart-summary-section .cart-summary-radio input[type="radio"] {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  width: 1.125rem;
  height: 1.125rem;
  border: 2px solid #C4C4C4;
  border-radius: 999px;
  background: #fff;
}

.cart-summary-section .cart-summary-radio input[type="radio"]:checked {
  border-color: #A4161A;
  background: radial-gradient(circle, #A4161A 0 38%, #fff 40% 100%);
}

.cart-summary-section .cart-summary-shipping-options {
  gap: 0.65rem;
  margin-top: 0.15rem;
}

.cart-summary-section .cart-summary-applied {
  font-size: 0.8125rem;
}

.cart-summary-radio-dot {
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  flex-shrink: 0;
  border: 2px solid #d6d6d6;
  border-radius: 999px;
  background: #fff;
  transition: border-color 200ms ease, background 200ms ease;
}

.cart-summary-shipping-option:has(.cart-summary-radio-input:checked) {
  border-color: #A4161A;
}

.cart-summary-shipping-option:has(.cart-summary-radio-input:checked) .cart-summary-radio-dot {
  border-color: #A4161A;
  background: radial-gradient(circle, #A4161A 0 48%, #fff 52% 100%);
}

@media (max-width: 1023px) {
  .cart-summary-section {
    background: #fff;
  }

  .cart-summary-section .container-page {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
  }

  .cart-summary-mobile-header,
  .cart-summary-mobile-footer {
    background: #fff;
  }

  .cart-summary-section .listing-breadcrumb {
    margin-bottom: 0.5rem;
  }

  .cart-summary-review {
    background: #fff;
    border: none;
    border-radius: 0;
    box-shadow: none;
  }

  .cart-summary-grid {
    gap: 0 !important;
    margin-top: 0 !important;
  }

  .cart-summary-list {
    gap: 0;
  }

  .cart-summary-item {
    overflow: visible;
    border: none;
    border-radius: 0;
    border-bottom: 1px solid #E6E6E6;
    background: #fff;
  }

  .cart-summary-item:last-child {
    border-bottom: none;
  }

  .cart-summary-item > .grid {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) auto !important;
    align-items: center;
    gap: 10px !important;
    padding: 14px 16px !important;
  }

  .cart-summary-item > .grid > .relative {
    width: 64px !important;
    height: 64px !important;
    border-radius: 8px;
  }

  .cart-summary-item__remove {
    top: -0.35rem !important;
    left: -0.35rem !important;
    right: auto !important;
    width: 18px !important;
    height: 18px !important;
  }

  .cart-summary-item h3 {
    font-size: 0.9375rem;
    line-height: 1.35;
    font-weight: 600;
    color: #171313;
  }

  .cart-summary-item__meta {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.15rem !important;
    margin-top: 0.35rem !important;
    font-size: 0.8125rem;
    line-height: 1.4;
  }

  .cart-summary-item__meta > span {
    display: block;
    width: 100%;
  }

  .cart-summary-item .mt-1.flex.items-center.text-sm {
    margin-top: 0.35rem !important;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item > .grid > .shrink-0 {
    align-self: center;
  }

  .cart-summary-item .inline-flex[aria-label="Quantity"] {
    min-width: 72px;
    min-height: 34px;
    justify-content: center;
    gap: 0.5rem !important;
    padding: 0.25rem 0.5rem !important;
    touch-action: manipulation;
  }

  .cart-summary-item .inline-flex[aria-label="Quantity"] [data-cart-qty-display] {
    min-width: 0.75rem;
    font-size: 0.8125rem;
    font-weight: 600;
  }

  .cart-summary-qty-btn {
    width: 1.75rem;
    height: 1.75rem;
    font-size: 1rem;
    touch-action: manipulation;
  }

  .cart-summary-item__variants {
    border-top: none !important;
    background: transparent !important;
    padding: 0 16px 14px 90px !important;
    font-size: 0.75rem;
    line-height: 1.45;
    gap: 0.35rem 0.85rem !important;
    color: #A4161A;
  }

  .cart-summary-item__variants span,
  .cart-summary-item__variants .text-brand-red,
  .cart-summary-item__variants .text-\[\#171313\] {
    color: #A4161A !important;
  }
}

@media (min-width: 1024px) {
  .cart-summary-section {
    background: #fff;
  }

  .cart-summary-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 372px !important;
    gap: 18px !important;
    align-items: start;
  }

  .cart-summary-review {
    grid-column: auto !important;
    min-height: 866px;
    padding: 24px !important;
    border: 1px solid #E6E6E6 !important;
    border-radius: 12px !important;
    box-shadow: none !important;
    background: #fff;
    overflow: hidden;
  }

  .cart-summary-review h2 {
    font-size: 19px;
    line-height: 1.25;
  }

  .cart-summary-review p {
    font-size: 14px;
  }

  .cart-summary-list {
    gap: 0 !important;
    margin-top: 30px !important;
  }

  .cart-summary-item {
    border: none !important;
    border-radius: 0 !important;
    border-bottom: 1px solid #E6E6E6;
    box-shadow: none !important;
  }

  .cart-summary-item:last-child {
    border-bottom: none;
  }

  .cart-summary-item > .grid {
    grid-template-columns: 96px minmax(0, 1fr) auto !important;
    min-height: 120px;
    padding: 12px !important;
    -moz-column-gap: 22px !important;
         column-gap: 22px !important;
  }

  .cart-summary-item > .grid > .relative {
    width: 96px !important;
    height: 96px !important;
    border-radius: 8px !important;
  }

  .cart-summary-item > .grid > .relative .cart-summary-item__remove {
    top: -6px !important;
    right: -7px !important;
    left: auto !important;
    width: 19px !important;
    height: 19px !important;
  }

  .cart-summary-item h3 {
    font-size: 17px;
    line-height: 1.35;
    font-weight: 500;
  }

  .cart-summary-item h3 + div {
    margin-top: 7px !important;
    gap: 18px !important;
    font-size: 14px;
  }

  .cart-summary-item .inline-flex[aria-label="Quantity"] {
    min-width: 72px;
    height: 34px;
    justify-content: center;
    gap: 10px !important;
    padding: 0 8px !important;
  }

  .cart-summary-item > div:last-child {
    padding: 10px 12px 10px !important;
    gap: 18px !important;
    font-size: 14px !important;
  }

  .cart-summary-sidebar {
    grid-column: auto !important;
    top: 24px !important;
  }

  .cart-summary-card {
    min-height: 765px;
    padding: 24px 20px !important;
    border: 1px solid #E6E6E6 !important;
    border-radius: 10px !important;
    box-shadow: none !important;
    background: #fff;
  }

  .cart-summary-card h3 {
    font-size: 20px !important;
    line-height: 1.25;
  }

  .cart-summary-card h3 + div {
    margin-top: 24px !important;
    gap: 10px !important;
  }

  .cart-summary-card input {
    border-radius: 8px !important;
  }

  .cart-summary-shipping-option {
    min-height: 44px;
    border-radius: 8px !important;
  }

  .cart-summary-card a {
    min-height: 40px !important;
    border-radius: 999px !important;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-grid {
    grid-template-columns: minmax(0, 1fr) 340px !important;
  }

  .cart-summary-item > .grid {
    grid-template-columns: 86px minmax(0, 1fr) auto !important;
    -moz-column-gap: 16px !important;
         column-gap: 16px !important;
  }

  .cart-summary-item > .grid > .relative {
    width: 86px !important;
    height: 86px !important;
  }
}

.cart-summary-field-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.45rem;
}

.cart-summary-field-head__label {
  font-size: 0.8125rem;
  font-weight: 600;
  color: #171313;
}

.cart-summary-field-head__label--accent {
  color: #A4161A;
  font-weight: 700;
}

.cart-summary-applied {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.75rem;
  font-weight: 600;
  color: #147C4B;
}

.cart-summary-applied span[aria-hidden="true"] {
  display: inline-grid;
  place-items: center;
  width: 1rem;
  height: 1rem;
  border-radius: 999px;
  background: #147C4B;
  color: #fff;
  font-size: 0.625rem;
  line-height: 1;
}

.cart-summary-input {
  width: 100%;
  height: 2.5rem;
  margin-bottom: 0.75rem;
  border: 1px solid #E0E0E0;
  border-radius: 8px;
  padding: 0 0.85rem;
  font-size: 0.8125rem;
  color: #171313;
  outline: none;
  background: #fff;
}

.cart-summary-input:focus {
  border-color: #A4161A;
}

.cart-summary-shipping {
  margin-top: 0.85rem;
}

.cart-summary-shipping-options {
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
}

.cart-summary-radio {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  font-size: 0.875rem;
  color: #171313;
  cursor: pointer;
}

.cart-summary-radio input[type="radio"] {
  width: 1rem;
  height: 1rem;
  margin: 0;
  accent-color: #A4161A;
  flex-shrink: 0;
}

.cart-summary-radio__label {
  flex: 1 1 auto;
}

.cart-summary-radio__price {
  font-weight: 600;
  color: #171313;
}

.cart-summary-coupon {
  margin-top: 1rem;
}

.cart-summary-actions {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-top: 1rem;
}

.cart-summary-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 2.75rem;
  width: 100%;
  border-radius: 10px;
  padding: 0.7rem 1.25rem;
  font-size: 0.9375rem;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  transition: background-color 200ms ease, color 200ms ease, border-color 200ms ease;
}

.cart-summary-btn--secondary {
  background: #707070;
  color: #fff;
}

.cart-summary-btn--secondary:hover {
  background: #171313;
}

.cart-summary-btn--dark {
  background: #171313;
  color: #fff;
}

.cart-summary-btn--dark:hover {
  background: #A4161A;
}

.cart-summary-btn--primary {
  background: #A4161A;
  color: #fff;
}

.cart-summary-btn--primary:hover {
  background: #171313;
}

.cart-item-card {
  border: 1px solid #E6E6E6;
  border-radius: 10px;
  background: #fff;
  overflow: hidden;
}

.cart-item-card__main {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 0.85rem 1rem;
  align-items: center;
  padding: 1rem;
}

@media (max-width: 639px) {
  .cart-item-card__main {
    grid-template-columns: auto 1fr;
  }

  .cart-item-card__qty {
    grid-column: 1 / -1;
    justify-self: start;
  }
}

.cart-item-card__media {
  position: relative;
  flex-shrink: 0;
  width: 4.5rem;
  height: 4.5rem;
  border: 1px solid #E6E6E6;
  border-radius: 8px;
  background: #fff;
}

@media (min-width: 640px) {
  .cart-item-card__media {
    width: 5rem;
    height: 5rem;
  }
}

.cart-item-card__remove {
  position: absolute;
  top: -0.4rem;
  right: -0.4rem;
  display: grid;
  place-items: center;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 999px;
  background: #A4161A;
  transition: background-color 200ms ease;
}

.cart-item-card__remove:hover {
  background: #171313;
}

.cart-item-card__qty {
  display: inline-flex;
  align-items: center;
  gap: 0.65rem;
  border: 1px solid #E0E0E0;
  border-radius: 8px;
  background: #fff;
  padding: 0.35rem 0.65rem;
  color: #171313;
}

.cart-item-card__qty-btn {
  display: grid;
  place-items: center;
  width: 1.1rem;
  height: 1.1rem;
  font-size: 0.95rem;
  line-height: 1;
  transition: color 200ms ease;
}

.cart-item-card__qty-btn:hover {
  color: #A4161A;
}

.cart-item-card__qty-value {
  min-width: 0.85rem;
  text-align: center;
  font-size: 0.8125rem;
  font-weight: 600;
}

.cart-sidebar {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  align-self: start;
}

.cart-sidebar__sticky {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

@media (min-width: 1024px) {
  .cart-sidebar__sticky,
  .cart-sidebar > .cart-order-summary {
    position: sticky;
    top: 1.5rem;
  }
}

.cart-order-summary {
  border: 1px solid #E6E6E6;
  border-radius: 10px;
  background: #fff;
  padding: 1rem;
}

.cart-order-summary__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.85rem;
}

.cart-order-summary__title {
  font-size: 1rem;
  font-weight: 700;
  color: #171313;
}

@media (min-width: 1024px) {
  .cart-order-summary__title {
    font-size: 1.125rem;
  }
}

.cart-order-summary__edit-btn {
  flex-shrink: 0;
  border-radius: 999px;
  background: #A4161A;
  padding: 0.4rem 0.9rem;
  color: #fff;
  font-size: 0.6875rem;
  font-weight: 600;
  line-height: 1;
  transition: background-color 200ms ease;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.cart-order-summary__edit-btn:hover {
  background: #171313;
}

.cart-order-summary__divider {
  margin: 0.45rem 0;
  height: 1px;
  background: #ECECEC;
}

.cart-order-summary__pricing {
  margin-top: 0.25rem;
}

.cart-order-summary__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.4rem 0;
  font-size: 0.875rem;
  color: #171313;
}

.cart-order-summary__row strong {
  font-weight: 600;
  color: #171313;
}

.cart-order-summary__total {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.4rem 0;
  font-size: 0.875rem;
  font-weight: 700;
  color: #171313;
}

.cart-order-summary__coupon {
  margin-top: 1rem;
}

.cart-order-summary__field-label {
  display: block;
  margin-bottom: 0.45rem;
  font-size: 0.75rem;
  font-weight: 700;
  color: #A4161A;
}

.cart-order-summary__field {
  display: flex;
  gap: 0.5rem;
}

.cart-order-summary__field--inline {
  position: relative;
  display: block;
}

.cart-order-summary__field--inline input {
  width: 100%;
  min-width: 0;
  height: 2.5rem;
  border: 1px solid #E0E0E0;
  border-radius: 8px;
  padding: 0 5.25rem 0 0.85rem;
  font-size: 0.8125rem;
  color: #171313;
  outline: none;
  background: #fff;
}

.cart-order-summary__field--inline input:focus {
  border-color: #A4161A;
}

.cart-order-summary__field-actions {
  position: absolute;
  right: 0.65rem;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  gap: 0.45rem;
}

.cart-order-summary__apply-link {
  border: 0;
  background: transparent;
  color: #A4161A;
  font-size: 0.8125rem;
  font-weight: 600;
  cursor: pointer;
  padding: 0;
}

.cart-order-summary__apply-link:hover {
  color: #171313;
}

.cart-order-summary__clear {
  display: grid;
  place-items: center;
  width: 1rem;
  height: 1rem;
  border: 0;
  background: transparent;
  color: #A4161A;
  font-size: 1.15rem;
  line-height: 1;
  cursor: pointer;
  padding: 0;
}

.cart-order-summary__field input {
  min-width: 0;
  flex: 1 1 auto;
  height: 2.35rem;
  border: 1px solid #E0E0E0;
  border-radius: 8px;
  padding: 0 0.75rem;
  font-size: 0.8125rem;
  color: #171313;
  outline: none;
  background: #fff;
}

.cart-order-summary__field input:focus {
  border-color: #A4161A;
}

.cart-order-summary__apply-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 4.5rem;
  height: 2.35rem;
  border-radius: 8px;
  background: #A4161A;
  padding: 0 0.85rem;
  color: #fff;
  font-size: 0.8125rem;
  font-weight: 600;
  transition: background-color 200ms ease;
}

.cart-order-summary__apply-btn:hover {
  background: #171313;
}

.cart-delivery-card__divider {
  margin: 0.85rem 0;
  height: 1px;
  background: #ECECEC;
}

.checkout-summary-items {
  display: flex;
  flex-direction: column;
}

.checkout-summary-item {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  padding: 0.85rem 0;
  border-bottom: 1px solid #ECECEC;
}

.checkout-summary-item--has-variants {
  flex-direction: column;
  gap: 0;
  padding-top: 0.85rem;
  padding-bottom: 0;
  border-bottom: 1px solid #ECECEC;
}

.checkout-summary-item--last {
  border-bottom: 1px solid #ECECEC;
}

.checkout-summary-item__main {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  width: 100%;
  padding-bottom: 0.85rem;
}

.checkout-summary-item img {
  flex-shrink: 0;
  width: 3rem;
  height: 3rem;
  border: 1px solid #E6E6E6;
  border-radius: 8px;
  -o-object-fit: contain;
     object-fit: contain;
  background: #fff;
}

.checkout-summary-item__title {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.35;
  color: #171313;
}

.checkout-summary-item__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem 0.85rem;
  margin-top: 0.25rem;
  font-size: 0.75rem;
  line-height: 1.5;
  color: #171313;
}

.checkout-summary-item__meta-label {
  color: #A4161A;
  font-weight: 600;
}

.checkout-summary-item__variants {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  width: calc(100% + 2rem);
  margin: 0 -1rem;
  padding: 0.65rem 1rem;
  border-top: 1px solid #ECECEC;
  background: #F7F7F7;
  font-size: 0.75rem;
  font-weight: 500;
  color: #666464;
}

.checkout-step-panel {
  display: none;
}

.checkout-step-panel.is-active {
  display: block !important;
}

.checkout-guest-overlay {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: none;
}

.checkout-guest-overlay.is-open {
  display: block;
}

.checkout-guest-overlay__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(23, 19, 19, 0.78);
}

.checkout-guest-modal {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 1rem;
  pointer-events: none;
}

.checkout-guest-modal__dialog {
  position: relative;
  width: 100%;
  max-width: 32rem;
  border-radius: 24px;
  background: #fff;
  padding: 2.5rem 2rem 2rem;
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.22);
  pointer-events: auto;
}

@media (min-width: 640px) {
  .checkout-guest-modal__dialog {
    max-width: 34rem;
    padding: 2.75rem 2.25rem 2.25rem;
  }
}

.checkout-guest-modal__close {
  position: absolute;
  top: 1.15rem;
  right: 1.15rem;
  display: grid;
  place-items: center;
  width: 2rem;
  height: 2rem;
  border-radius: 999px;
  background: #A4161A;
  transition: background-color 200ms ease;
}

.checkout-guest-modal__close:hover {
  background: #171313;
}

body.checkout-modal-open .modal-backdrop.is-open {
  display: none !important;
}

.shipping-info-overlay {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: none;
}

.shipping-info-overlay.is-open {
  display: block;
}

.shipping-info-overlay__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(23, 19, 19, 0.78);
}

.shipping-info-modal {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 1rem;
  pointer-events: none;
}

.shipping-info-modal__dialog {
  position: relative;
  width: 100%;
  max-width: 48rem;
  border-radius: 24px;
  background: #fff;
  padding: 1.5rem 1.25rem 1.25rem;
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.22);
  pointer-events: auto;
}

@media (min-width: 640px) {
  .shipping-info-modal__dialog {
    padding: 1.75rem 1.5rem 1.5rem;
  }
}

.shipping-info-modal__close {
  display: grid;
  flex-shrink: 0;
  place-items: center;
  width: 2rem;
  height: 2rem;
  border-radius: 999px;
  background: #A4161A;
  transition: background-color 200ms ease;
}

.shipping-info-modal__close:hover {
  background: #171313;
}

.shipping-info-modal__table-wrap {
  margin-top: 0;
}

.shipping-info-modal .shipping-costs-table tbody tr:nth-child(even) td {
  background: #fff;
}

.checkout-billing-panel {
  border: 1px solid #E6E6E6;
  border-radius: 12px;
  background: #fff;
  padding: 1.25rem;
}

@media (min-width: 640px) {
  .checkout-billing-panel {
    padding: 1.5rem;
  }
}

.checkout-billing-panel__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1.25rem;
}

/* .checkout-billing-panel__header h2 {
  font-size: 1.125rem;
  font-weight: 700;
  color: #171313;
} */

/* .checkout-billing-panel__header p {
  margin-top: 0.35rem;
  font-size: 0.875rem;
  color: #666464;
} */

.checkout-billing-panel__back {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  gap: 0.45rem;
  min-height: 2.25rem;
  border-radius: 999px;
  background: #171313;
  padding: 0.45rem 1rem;
  color: #fff;
  font-size: 0.8125rem;
  font-weight: 600;
  transition: background-color 200ms ease;
}

.checkout-billing-panel__back:hover {
  background: #A4161A;
}

.checkout-billing-form {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.checkout-billing-form__section {
  margin: 0;
  padding: 0;
  border: 1px solid #E6E6E6;
  border-radius: 12px;
  background: #fff;
  overflow: hidden;
}

.checkout-section-card__header{
  display: flex;
  align-items: center;
  gap: 0.5rem;
  border-bottom-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(236 236 236 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1));
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.rounded-2xl.checkout-section-card__header {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

@media (min-width: 1024px) and (max-width: 1366px) {
  .container-page.checkout-section-card__header.h-\[68px\] > a img {
    max-width: 150px;
    height: auto;
  }

  .container-page.checkout-section-card__header.h-\[68px\] {
    gap: 12px;
  }
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .checkout-section-card__header.desktop-search INPUT{
    width: 250px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item .mt-1.checkout-section-card__header.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }

  .cart-summary-item .mt-1.flex.checkout-section-card__header.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

.checkout-section-card__body {
  padding: 1.25rem;
  background: #F7F7F7;
}

@media (min-width: 640px) {
  .checkout-section-card__header {
    padding: 1rem 1.5rem;
  }

  .checkout-section-card__body {
    padding: 1.5rem;
  }
}

.checkout-billing-form__section legend {
  padding: 0;
}

.checkout-billing-form__grid {
  display: grid;
  gap: 0.85rem;
}

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

.checkout-billing-form__grid--3 {
  grid-template-columns: 1fr;
}

@media (min-width: 640px) {
  .checkout-billing-form__grid--2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .checkout-billing-form__grid--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.checkout-billing-field-group {
  display: flex;
  flex-direction: column;
}

.checkout-billing-field {
  display: block;
}

.checkout-billing-field span{
  margin-bottom: 0.25rem;
  display: block;
  font-size: 14px;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(164 22 26 / var(--tw-text-opacity, 1));
}

@media (max-width: 1023px) {
  
  .cart-summary-item__variants .checkout-billing-field span {
    color: #A4161A;
  }
}

.checkout-billing-field input{
  height: 50px;
  width: 100%;
  border-radius: 8px;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(224 224 224 / var(--tw-border-opacity, 1));
  padding-left: 15px;
  padding-right: 15px;
  padding-top: 10px;
  padding-bottom: 10px;
  --tw-text-opacity: 1;
  color: rgb(102 100 100 / var(--tw-text-opacity, 1));
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.checkout-billing-field input:focus {
  border-color: #A4161A;
}

.checkout-billing-checkbox {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  margin-bottom: 0.85rem;
  font-size: 0.875rem;
  color: #171313;
}

.checkout-billing-checkbox input {
  width: 1rem;
  height: 1rem;
  accent-color: #A4161A;
}

.checkout-billing-form__submit {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  min-height: 2.75rem;
  margin-top: 0.5rem;
  border-radius: 999px;
  background: #A4161A;
  padding: 0.7rem 1.25rem;
  color: #fff;
  font-size: 0.9375rem;
  font-weight: 600;
  transition: background-color 200ms ease;
}

.checkout-billing-form__submit:hover {
  background: #171313;
}

.cart-order-summary__cta {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  min-height: 2.75rem;
  margin-top: 1rem;
  border: 0;
  border-radius: 999px;
  background: #A4161A;
  padding: 0.7rem 1.25rem;
  color: #fff;
  font-size: 0.9375rem;
  font-weight: 700;
  cursor: pointer;
  transition: background-color 200ms ease;
}

.cart-order-summary__cta:hover {
  background: #171313;
}

/* 
.checkout-payment-secure {
  display: flex;
  align-items: flex-start;
  gap: 0.45rem;
  margin-top: 0.35rem;
  font-size: 0.75rem;
  line-height: 1.45;
  color: #147C4B;
} */

/* .checkout-billing-note__icon {
  display: inline-grid;
  flex-shrink: 0;
  place-items: center;
  width: 1rem;
  height: 1rem;
  border-radius: 999px;
  background: #147C4B;
  color: #fff;
  font-size: 0.625rem;
  font-weight: 700;
} */

.checkout-address-field {
  position: relative;
}

.checkout-address-field input {
  width: 100%;
  height: 50px;
  border: 1px solid #E0E0E0;
  border-radius: 8px;
  padding: 10px 2.5rem 10px 0.85rem;
  font-size: 0.875rem;
  color: #171313;
  outline: none;
  background: #fff;
}

.checkout-address-field input:focus {
  border-color: #A4161A;
}

.checkout-address-field__pin {
  position: absolute;
  top: 50%;
  right: 0.85rem;
  transform: translateY(-50%);
  pointer-events: none;
}

.checkout-address-selected {
  margin-top: 0.85rem;
  border: 1px solid #E6E6E6;
  border-radius: 8px;
  background: #fff;
  padding: 0.85rem 1rem;
}

.checkout-address-selected__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.5rem;
}

.checkout-address-selected__label {
  font-size: 0.8125rem;
  font-weight: 600;
  color: #A4161A;
}

.checkout-address-selected__text {
  font-size: 0.8125rem;
  line-height: 1.5;
  color: #171313;
}

.checkout-address-selected__manual {
  flex-shrink: 0;
  min-height: 1.75rem;
  border-radius: 999px;
  background: #171313;
  padding: 0.25rem 0.75rem;
  color: #fff;
  font-size: 0.6875rem;
  font-weight: 600;
  transition: background-color 200ms ease;
}

.checkout-address-selected__manual:hover {
  background: #A4161A;
}

.checkout-address-mode {
  display: flex;
  flex-direction: column;
}

.checkout-address-mode[hidden] {
  display: none !important;
}

.checkout-address-manual {
  margin-top: 0.85rem;
  border: 1px solid #E6E6E6;
  border-radius: 8px;
  background: #fff;
  padding: 0.85rem 1rem;
}

.checkout-address-manual__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.85rem;
}

.checkout-address-manual__label {
  font-size: 0.8125rem;
  font-weight: 600;
  color: #A4161A;
}

.checkout-billing-field__group-label {
  display: block;
  margin-bottom: 0.4rem;
  font-size: 0.8125rem;
  font-weight: 600;
  color: #A4161A;
}

.checkout-billing-form__grid--tight {
  margin-top: -0.35rem;
}

.checkout-billing-field--plain span {
  display: none;
}

.checkout-billing-field--plain input {
  margin-top: 0;
}

.checkout-address-mode .checkout-address-selected {
  margin-top: 0.85rem;
}

.checkout-section-card__body > .checkout-billing-field:first-child {
  margin-top: 0;
}

.checkout-address-mode .checkout-billing-btn {
  margin-top: 0.85rem;
}

.checkout-address-mode .checkout-billing-field {
  margin-top: 0.85rem;
}

.checkout-address-manual .checkout-billing-field,
.checkout-address-manual .checkout-billing-form__grid,
.checkout-address-manual .checkout-billing-field__group-label {
  margin-top: 0.85rem;
}

.checkout-address-manual .checkout-billing-field__group-label:first-child,
.checkout-address-manual__header + .checkout-billing-field__group-label {
  margin-top: 0;
}

.checkout-billing-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  width: -moz-fit-content;
  width: fit-content;
  min-height: 2.25rem;
  border: 0;
  border-radius: 8px;
  background: #A4161A;
  padding: 0.45rem 1rem;
  color: #fff;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 200ms ease;
}

.checkout-billing-btn:hover {
  background: #171313;
}

.checkout-billing-link {
  display: inline-flex;
  margin: 0.85rem 0;
  color: #A4161A;
  font-size: 0.8125rem;
  font-weight: 600;
  transition: color 200ms ease;
}

.checkout-billing-link:hover {
  color: #171313;
}

.checkout-billing-field select{
  height: 50px;
  width: 100%;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 8px;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(224 224 224 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 15px;
  padding-right: 15px;
  padding-top: 10px;
  padding-bottom: 10px;
  --tw-text-opacity: 1;
  color: rgb(102 100 100 / var(--tw-text-opacity, 1));
  outline: 2px solid transparent;
  outline-offset: 2px;
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.rounded-2xl.checkout-billing-field select {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

.checkout-billing-field select {
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23666464' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 0.85rem center;
}

.checkout-billing-field select:focus {
  border-color: #A4161A;
}

.checkout-click-collect {
  overflow: hidden;
  border: 1px solid #E6E6E6;
  border-radius: 12px;
  background: #fff;
  padding: 0;
}

/* .checkout-click-collect__header {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  padding: 1rem 1.25rem;
  background: #fff;
  font-size: 0.875rem;
  font-weight: 700;
  color: #171313;
  cursor: pointer;
} */

/* .checkout-click-collect__checkbox {
  flex-shrink: 0;
  width: 1.125rem;
  height: 1.125rem;
  margin: 0;
  border: 1.5px solid #A4161A;
  border-radius: 3px;
  appearance: none;
  background: #fff;
  cursor: pointer;
}

.checkout-click-collect__checkbox:checked {
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='8' viewBox='0 0 10 8' fill='none'%3E%3Cpath d='M1 4.2L3.6 6.8L9 1.2' stroke='%23A4161A' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center;
  background-size: 0.625rem 0.5rem;
} */

/* .checkout-click-collect__info {
  border-top: 1px solid #E6E6E6;
  background: #F7F7F7;
  padding: 0.85rem 1.25rem;
} */

/* .checkout-click-collect.is-collapsed .checkout-click-collect__info {
  display: none;
} */

/* .checkout-click-collect__list {
  margin: 0;
  padding-left: 0;
  list-style: none;
}

.checkout-click-collect__list li {
  position: relative;
  padding-left: 1rem;
  font-size: 0.75rem;
  line-height: 1.5;
  color: #666464;
}

.checkout-click-collect__list li + li {
  margin-top: 0.45rem;
}

.checkout-click-collect__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.45rem;
  width: 0.35rem;
  height: 0.35rem;
  border-radius: 999px;
  background: #A4161A;
}

.checkout-click-collect__list a {
  color: #A4161A;
  font-weight: 600;
}

.checkout-click-collect__list a:hover {
  color: #171313;
} */

.cart-order-summary__order-total {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.4rem 0;
  font-size: 1rem;
  font-weight: 700;
  color: #171313;
}

.cart-order-summary__gst-note {
  margin-top: 0.25rem;
  margin-bottom: 0;
  font-size: 0.6875rem;
  color: #666464;
}

/* .checkout-trust-card {
  border: 1px solid #E6E6E6;
  border-radius: 10px;
  background: #fff;
  padding: 1.25rem;
} */

/* .checkout-trust-card__item {
  display: flex;
  align-items: center;
  gap: 0.85rem;
}

.checkout-trust-card__item + .checkout-trust-card__item {
  margin-top: 1.25rem;
  padding-top: 0;
  border-top: 0;
} */

/* .checkout-trust-card__icon {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
}

.checkout-trust-card__icon img {
  width: 1.5rem;
  height: 1.5rem;
  object-fit: contain;
} */

/* .checkout-trust-card__item h4 {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.35;
  color: #171313;
}

.checkout-trust-card__item p {
  margin-top: 0.2rem;
  font-size: 0.8125rem;
  line-height: 1.45;
  color: #666464;
} */

.checkout-trust-card__quote {
  font-style: italic;
}

.checkout-payment-panel {
  border: 1px solid #E6E6E6;
  border-radius: 12px;
  background: #fff;
  padding: 1.25rem;
}

@media (min-width: 640px) {
  .checkout-payment-panel {
    padding: 1.5rem;
  }
}

.checkout-payment-methods {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
}

.checkout-payment-acc {
  border: 1px solid #E6E6E6;
  border-radius: 10px;
  background: #fff;
  overflow: hidden;
}

.checkout-payment-acc__summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.9rem 1rem;
  cursor: pointer;
  list-style: none;
}

.checkout-payment-acc__summary::-webkit-details-marker {
  display: none;
}

.checkout-payment-acc__title {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.875rem;
  font-weight: 700;
  color: #171313;
}

.checkout-payment-acc__chevron--up {
  display: none;
}

.checkout-payment-acc[open] .checkout-payment-acc__chevron--down {
  display: none;
}

.checkout-payment-acc[open] .checkout-payment-acc__chevron--up {
  display: block;
}

.checkout-payment-acc__body {
  border-top: 1px solid #ECECEC;
  background: #F7F7F7;
  padding: 1rem;
}

.checkout-payment-acc__hint {
  font-size: 0.8125rem;
  line-height: 1.5;
  color: #666464;
}

.checkout-payment-wallets {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
}

.checkout-payment-wallets img {
  height: 1.75rem;
  width: auto;
}

/* Payment option panels */

/* .checkout-pay-option__heading {
  margin: 0 0 0.85rem;
  font-size: 0.875rem;
  font-weight: 700;
  color: #171313;
  text-transform: uppercase;
  letter-spacing: 0.02em;
} */

/* .checkout-pay-option__heading--with-icon {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  text-transform: none;
} */

/* .checkout-pay-link {
  color: #A4161A;
  font-weight: 600;
  text-decoration: none;
}

.checkout-pay-link:hover {
  text-decoration: underline;
} */

/* .checkout-pay-promo {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 0.85rem;
  border: 1px solid #E6E6E6;
  border-radius: 8px;
  background: #fff;
} */

/* .checkout-pay-promo__icon {
  display: grid;
  place-items: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 6px;
  background: #F3F3F3;
} */

/* .checkout-pay-promo__title {
  margin: 0;
  font-size: 0.875rem;
  font-weight: 700;
  color: #171313;
} */

/* .checkout-pay-promo__sub {
  margin: 0.15rem 0 0;
  font-size: 0.75rem;
  color: #666464;
} */

/* .checkout-pay-promo-dots {
  display: flex;
  justify-content: center;
  gap: 0.35rem;
  margin: 0.65rem 0 0.85rem;
}

.checkout-pay-promo-dots span {
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: #D9D9D9;
}

.checkout-pay-promo-dots span.is-active {
  background: #666464;
} */

/* .checkout-pay-card__note {
  margin: 0 0 0.85rem;
  font-size: 0.8125rem;
  line-height: 1.5;
  color: #666464;
} */

/* .checkout-pay-input-wrap {
  position: relative;
  display: block;
}

.checkout-pay-input-wrap input {
  width: 100%;
  height: 2.75rem;
  border: 1px solid #E0E0E0;
  border-radius: 8px;
  padding: 0 2.25rem 0 0.85rem;
  font-size: 0.875rem;
  color: #666464;
  background: #fff;
  outline: none;
}

.checkout-pay-input-wrap input:focus {
  border-color: #A4161A;
}

.checkout-pay-input-wrap__icon {
  position: absolute;
  top: 50%;
  right: 0.75rem;
  transform: translateY(-50%);
  pointer-events: none;
}

.checkout-pay-input-wrap__info {
  position: absolute;
  top: 50%;
  right: 0.75rem;
  transform: translateY(-50%);
  display: grid;
  place-items: center;
  width: 1rem;
  height: 1rem;
  border: 1px solid #999;
  border-radius: 999px;
  font-size: 0.625rem;
  font-weight: 700;
  font-style: italic;
  color: #666464;
  cursor: help;
} */

/* .checkout-pay-card__secure {
  display: flex;
  align-items: flex-start;
  gap: 0.35rem;
  margin: 0.75rem 0 0;
  font-size: 0.75rem;
  line-height: 1.4;
  color: #147C4B;
} */

/* UPI / Scan and Pay */

.checkout-pay-upi__apps {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.65rem;
  margin-bottom: 1rem;
}

.checkout-pay-upi__app {
  display: grid;
  place-items: center;
  width: 3rem;
  height: 3rem;
  border-radius: 10px;
  font-size: 0.625rem;
  border: 2px solid #E0E0E0;
  padding: 5px;
  background-color: white;
}

/* .checkout-pay-upi__app--bhim {
  background: #1B4F8C;
  font-size: 0.5rem;
} */

/* .checkout-pay-upi__app--gpay {
  background: linear-gradient(135deg, #4285F4 0%, #34A853 50%, #FBBC05 75%, #EA4335 100%);
  font-size: 0.875rem;
}

.checkout-pay-upi__app--phonepe {
  background: #5F259F;
}

.checkout-pay-upi__app--paytm {
  background: #00BAF2;
  font-size: 0.45rem;
} */

.checkout-pay-qr {
  display: flex;
  justify-content: center;
  margin-bottom: 0.75rem;
}

.checkout-pay-qr__frame {
  position: relative;
  width: min(100%, 220px);
  aspect-ratio: 1;
  display: grid;
  place-items: center;
}

.checkout-pay-qr__corner {
  position: absolute;
  width: 1.75rem;
  height: 1.75rem;
  border: 3px solid #2563EB;
}

.checkout-pay-qr__corner--tl {
  top: 0;
  left: 0;
  border-right: 0;
  border-bottom: 0;
}

.checkout-pay-qr__corner--tr {
  top: 0;
  right: 0;
  border-left: 0;
  border-bottom: 0;
}

.checkout-pay-qr__corner--bl {
  bottom: 0;
  left: 0;
  border-right: 0;
  border-top: 0;
}

.checkout-pay-qr__corner--br {
  bottom: 0;
  right: 0;
  border-left: 0;
  border-top: 0;
}

.checkout-pay-qr__placeholder {
  position: absolute;
  inset: 1.25rem;
  border-radius: 4px;
  background:
    linear-gradient(90deg, #ECECEC 1px, transparent 1px),
    linear-gradient(#ECECEC 1px, transparent 1px);
  background-size: 12px 12px;
  opacity: 0.55;
}

.checkout-pay-qr__image {
  position: absolute;
  inset: 1.25rem;
  width: calc(100% - 2.5rem);
  height: calc(100% - 2.5rem);
  -o-object-fit: contain;
     object-fit: contain;
  background: #fff;
}

.checkout-pay-qr.is-visible .checkout-pay-qr__placeholder {
  opacity: 0.15;
}

.checkout-pay-qr.is-visible .checkout-pay-qr__btn {
  opacity: 0;
  pointer-events: none;
}

.checkout-pay-qr__btn {
  position: relative;
  z-index: 1;
  border: 0;
  border-radius: 6px;
  background: #2563EB;
  padding: 0.55rem 1rem;
  font-size: 0.8125rem;
  font-weight: 600;
  color: #fff;
  cursor: pointer;
  transition: background-color 200ms ease, opacity 200ms ease;
}

.checkout-pay-qr__btn:hover {
  background: #1D4ED8;
}

.checkout-pay-upi__hint {
  margin: 0;
  text-align: center;
  font-size: 0.8125rem;
  color: #666464;
}

/* Net banking */

.checkout-pay-bank-list,
.checkout-pay-wallet-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.checkout-pay-bank-item,
.checkout-pay-wallet-item {
  border-bottom: 1px dotted #D9D9D9;
}

.checkout-pay-bank-item:last-child,
.checkout-pay-wallet-item:last-child {
  border-bottom: 0;
}

.checkout-pay-bank-item__label{
  margin-right: 15px;
}

.checkout-pay-bank-item__label,
.checkout-pay-wallet-item__label {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 15px;
  cursor: pointer;
}

.checkout-pay-bank-item__label input,
.checkout-pay-wallet-item__label input {
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
  accent-color: #2563EB;
}

.checkout-pay-bank-item__logo,
.checkout-pay-wallet-item__logo {
  display: grid;
  place-items: center;
  flex-shrink: 0;
  width: 3rem;
  height: 3rem;
  border-radius: 10px;
  border: 2px solid #E0E0E0;
  padding: 5px;
}

/* .checkout-pay-bank-item__logo--axis { background: #971B2F; }
.checkout-pay-bank-item__logo--hdfc { background: #004C8F; }
.checkout-pay-bank-item__logo--icici { background: #F58220; }
.checkout-pay-bank-item__logo--kotak { background: #ED1C24; }
.checkout-pay-bank-item__logo--sbi { background: #22409A; } */

.checkout-pay-bank-item__info,
.checkout-pay-wallet-item__info {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  min-width: 0;
}

/* .checkout-pay-bank-item__name,
.checkout-pay-wallet-item__name {
  font-size: 0.875rem;
  font-weight: 500;
  color: #171313;
} */

.checkout-pay-bank-item__name--muted {
  color: #999;
}

.checkout-pay-bank-item__warn {
  font-size: 0.75rem;
  line-height: 1.35;
  color: #E07B00;
}

.checkout-pay-other-banks {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  margin-top: 0.75rem;
  border: 1px solid #E0E0E0;
  border-radius: 8px;
  background: #fff;
  padding: 0.75rem 0.85rem;
  font-size: 0.875rem;
  color: #666464;
  cursor: pointer;
  transition: border-color 200ms ease;
}

.checkout-pay-other-banks:hover {
  border-color: #A4161A;
}

/* Wallet */

/* .checkout-pay-wallet-item__logo--mobikwik { background: #0057FF; }
.checkout-pay-wallet-item__logo--airtel { background: #ED1C24; }
.checkout-pay-wallet-item__logo--payzapp { background: #1B3A6B; font-size: 0.5rem; }
.checkout-pay-wallet-item__logo--ola { background: #4CAF50; } */

/* .checkout-pay-wallet-item__link {
  font-size: 0.8125rem;
} */

.checkout-pay-wallet-item__label:has(input:disabled) {
  cursor: not-allowed;
  opacity: 0.75;
}

/* Bank select modal */

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.checkout-progress-ui.is-hidden {
  display: none;
}

.checkout-alert.is-hidden {
  display: none;
}

.order-confirmation {
  display: flex;
  justify-content: center;
  padding: 0.5rem 0 1rem;
}

.order-confirmation__card {
  width: 100%;
  max-width: 42rem;
  border: 1px solid #E6E6E6;
  border-radius: 16px;
  background: #fff;
  padding: 1.5rem 1.25rem;
}

@media (min-width: 640px) {
  .order-confirmation__card {
    padding: 2rem 1.75rem;
  }
}

.order-confirmation__hero {
  text-align: center;
}

.order-confirmation__success-icon {
  display: inline-grid;
  place-items: center;
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 999px;
  background: #A4161A;
  margin: 0 auto;
}

.order-confirmation__success-icon img {
  width: 1.5rem;
  height: 1.5rem;
}

.order-confirmation__title {
  margin-top: 1rem;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.35;
  color: #171313;
}

@media (min-width: 640px) {
  .order-confirmation__title {
    font-size: 1.25rem;
  }
}

.order-confirmation__message {
  margin-top: 0.65rem;
  font-size: 0.8125rem;
  line-height: 1.55;
  color: #666464;
}

.order-confirmation__message strong {
  color: #A4161A;
  font-weight: 600;
}

.order-confirmation__meta {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.75rem;
  margin-top: 1.25rem;
  border: 1px solid #E6E6E6;
  border-radius: 10px;
  background: #F7F7F7;
  padding: 1rem;
}

.order-confirmation__meta-item span {
  display: block;
  font-size: 0.75rem;
  font-weight: 600;
  color: #A4161A;
}

.order-confirmation__meta-item strong {
  display: block;
  margin-top: 0.25rem;
  font-size: 0.875rem;
  font-weight: 700;
  color: #171313;
}

.order-confirmation__summary {
  margin-top: 1.5rem;
}

.order-confirmation__summary > h3,
.order-confirmation__next > h3 {
  font-size: 1rem;
  font-weight: 700;
  color: #171313;
}

.order-confirmation__items {
  margin-top: 0.85rem;
}

.order-confirmation__item {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  padding: 0.85rem 0;
}

.order-confirmation__item + .order-confirmation__item {
  border-top: 1px solid #ECECEC;
}

.order-confirmation__item-media {
  width: 3.5rem;
  height: 3.5rem;
  flex-shrink: 0;
  border-radius: 8px;
  border: 1px solid #E6E6E6;
  background: #F7F7F7;
  -o-object-fit: contain;
     object-fit: contain;
  padding: 0.25rem;
}

.order-confirmation__item-body h4 {
  font-size: 0.875rem;
  font-weight: 600;
  color: #171313;
}

.order-confirmation__item-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem 0.75rem;
  margin-top: 0.35rem;
  font-size: 0.75rem;
  color: #666464;
}

.order-confirmation__item-meta em {
  font-style: normal;
  color: #A4161A;
  font-weight: 600;
}

.order-confirmation__item-variants {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.5rem;
  border-radius: 6px;
  background: #F7F7F7;
  padding: 0.45rem 0.6rem;
  font-size: 0.6875rem;
  font-weight: 600;
  color: #A4161A;
}

.order-confirmation__pricing {
  margin-top: 0.5rem;
}

.order-confirmation__pricing-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.35rem 0;
  font-size: 0.8125rem;
  color: #171313;
}

.order-confirmation__pricing-row--discount strong {
  color: #A4161A;
}

.order-confirmation__pricing-row--bold {
  font-weight: 700;
}

.order-confirmation__pricing-row--total {
  font-size: 1rem;
  font-weight: 700;
}

.order-confirmation__pricing-divider {
  margin: 0.35rem 0;
  height: 1px;
  background: #ECECEC;
}

.order-confirmation__gst-note {
  margin-top: 0.35rem;
  font-size: 0.6875rem;
  color: #666464;
}

.order-confirmation__info {
  display: grid;
  gap: 1rem;
  margin-top: 1.25rem;
}

@media (min-width: 640px) {
  .order-confirmation__info {
    grid-template-columns: 1fr 1fr;
  }
}

.order-confirmation__info-block h4 {
  font-size: 0.875rem;
  font-weight: 700;
  color: #171313;
}

.order-confirmation__payment-badge {
  display: inline-flex;
  margin-top: 0.5rem;
  border: 1px solid #E6E6E6;
  border-radius: 8px;
  background: #fff;
  padding: 0.5rem 0.75rem;
  font-size: 0.8125rem;
  font-weight: 600;
  color: #171313;
}

.order-confirmation__info-block p {
  margin-top: 0.5rem;
  font-size: 0.8125rem;
  line-height: 1.5;
  color: #666464;
}

.order-confirmation__actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.75rem;
  margin-top: 1.5rem;
}

.order-confirmation__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 2.75rem;
  border-radius: 999px;
  padding: 0.7rem 1rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: #fff;
  text-align: center;
  transition: background-color 200ms ease;
}

.order-confirmation__btn--dark {
  background: #171313;
}

.order-confirmation__btn--dark:hover {
  background: #000;
}

.order-confirmation__btn--red {
  background: #A4161A;
}

.order-confirmation__btn--red:hover {
  background: #171313;
}

.order-confirmation__next {
  margin-top: 1.75rem;
}

.order-confirmation__next-grid {
  display: grid;
  gap: 0.75rem;
  margin-top: 0.85rem;
}

@media (min-width: 640px) {
  .order-confirmation__next-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.order-confirmation__next-card {
  border-radius: 10px;
  background: #A4161A;
  padding: 0.85rem;
  color: #fff;
}

.order-confirmation__next-card h4 {
  font-size: 0.8125rem;
  font-weight: 700;
}

.order-confirmation__next-card p {
  margin-top: 0.35rem;
  font-size: 0.6875rem;
  line-height: 1.45;
  color: rgba(255, 255, 255, 0.92);
}

.checkout-mobile-order-trigger {
  margin-top: 0.25rem;
}

.order-summary-drawer {
  display: flex !important;
  flex-direction: column;
  overflow: hidden !important;
  background: #fff;
}

.order-summary-drawer__scroll {
  flex: 1;
  min-height: 0;
}

.order-summary-drawer__actions {
  margin-top: 1.25rem;
  padding-top: 1rem;
  padding-bottom: 0.5rem;
  border-top: 1px solid #E6E6E6;
}

.order-summary-drawer__actions[hidden] {
  display: none !important;
}

.checkout-drawer__cta {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  min-height: 2.75rem;
  border: 0;
  border-radius: 999px;
  background: #A4161A;
  padding: 0.65rem 1.25rem;
  color: #fff;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  cursor: pointer;
  transition: background-color 200ms ease;
}

.checkout-drawer__cta:hover {
  background: #171313;
}

.checkout-summary-items--drawer {
  margin-bottom: 1rem;
  border: 1px solid #E6E6E6;
  border-radius: 10px;
  background: #fff;
  padding: 0.5rem 0.75rem;
}

.checkout-trust-card--drawer {
  border: 1px solid #E6E6E6;
  border-radius: 10px;
  background: #fff;
}

.checkout-mobile-action-bar {
  position: fixed;
  left: 0;
  right: 0;
  bottom: calc(73px + env(safe-area-inset-bottom));
  z-index: 75;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.85rem 1rem;
  border-top: 1px solid #E6E6E6;
  background: #fff;
  box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.06);
}

body:has(#checkoutOrderSummaryPanel.is-open) .checkout-mobile-action-bar {
  display: none !important;
}

.checkout-mobile-action-bar[hidden] {
  display: none !important;
}

.checkout-mobile-bar__back {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  border: 0;
  border-radius: 999px;
  background: #171313;
  color: #fff;
  cursor: pointer;
  transition: background-color 200ms ease;
}

.checkout-mobile-bar__back:hover {
  background: #A4161A;
}

.checkout-mobile-bar__cta {
  display: inline-flex;
  flex: 1;
  align-items: center;
  justify-content: center;
  min-height: 2.75rem;
  border: 0;
  border-radius: 999px;
  background: #A4161A;
  padding: 0.65rem 1.25rem;
  color: #fff;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  cursor: pointer;
  transition: background-color 200ms ease;
}

.checkout-mobile-bar__cta:hover {
  background: #171313;
}

@media (max-width: 1023px) {
  .cart-checkout-section {
    padding-bottom: calc(5.5rem + 73px + env(safe-area-inset-bottom));
    background: #fff;
  }

  .checkout-steps {
    width: 100%;
    justify-content: center;
  }

  .checkout-step {
    gap: 0;
  }

  .checkout-step__label {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }

  .checkout-mobile-step-title {
    text-align: center;
  }

  .checkout-mobile-step-title h2 {
    font-size: 1.125rem;
    font-weight: 700;
    color: #A4161A;
  }

  .checkout-mobile-step-title p {
    margin-top: 0.35rem;
    font-size: 0.875rem;
    color: #666464;
  }

  .checkout-billing-panel,
  .checkout-payment-panel {
    border: none;
    border-radius: 0;
    background: transparent;
    padding: 0;
  }

  .checkout-billing-panel__header {
    display: none;
  }

  .cart-checkout-layout .cart-sidebar {
    display: none !important;
  }
}

@media (min-width: 1024px) {
  .checkout-mobile-order-trigger,
  .checkout-mobile-action-bar,
  .order-summary-drawer#checkoutOrderSummaryPanel {
    display: none !important;
  }
}

/* checkout page css end */

/* llm info page css start */

.llm-page {
  background: #fff;
  padding-bottom: 2.5rem;
}

.llm-page__section {
  padding: 1.75rem 0;
}

.llm-page__section--last {
  padding-bottom: 3rem;
}

.llm-section-title {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #171313;
}

.llm-section-head {
  margin-bottom: 1.25rem;
}

.llm-section-head .llm-section-title {
  margin-bottom: 0.35rem;
}

.llm-section-head p {
  font-size: 0.875rem;
  line-height: 1.45;
  color: #666464;
}

.llm-summary-card {
  border: 1px solid #E6E6E6;
  border-radius: 8px;
  background: #fff;
  padding: 1.25rem 1.5rem;
}

.llm-summary-card p {
  margin-top: 0.85rem;
  font-size: 0.9375rem;
  line-height: 1.65;
  color: #171313;
}

.llm-summary-card strong {
  color: #A4161A;
  font-weight: 700;
}

.llm-card-grid {
  display: grid;
  gap: 1rem;
}

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

.llm-card-grid--3 {
  grid-template-columns: 1fr;
}

.llm-card-grid--categories {
  gap: 1rem;
}

.llm-info-card,
.llm-category-card {
  border: 1px solid #E6E6E6;
  border-radius: 8px;
  background: #fff;
  padding: 1.25rem 1.35rem;
}

.llm-info-card--stack + .llm-info-card--stack {
  margin-top: 1rem;
}

.llm-info-card h3,
.llm-category-card h3 {
  font-size: 1rem;
  font-weight: 700;
  color: #A4161A;
}

.llm-info-card__intro,
.llm-info-card__text {
  margin-top: 0.65rem;
  font-size: 0.875rem;
  line-height: 1.6;
  color: #171313;
}

.llm-info-card__warning {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  margin-top: 0.65rem;
  font-size: 0.875rem;
  line-height: 1.6;
  color: #171313;
}

.llm-info-card__warning span {
  flex-shrink: 0;
  font-size: 1rem;
  line-height: 1.2;
}

.llm-detail-list {
  margin-top: 0.75rem;
}

.llm-detail-list > div + div {
  margin-top: 0.85rem;
}

.llm-detail-list dt {
  font-size: 0.875rem;
  font-weight: 700;
  color: #A4161A;
}

.llm-detail-list dd {
  margin-top: 0.2rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #171313;
}

.llm-list {
  margin-top: 0.75rem;
  display: grid;
  gap: 0.45rem;
}

.llm-list li {
  position: relative;
  padding-left: 1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #171313;
}

.llm-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 0.35rem;
  height: 0.35rem;
  border-radius: 999px;
  background: #A4161A;
  transform: translateY(-50%);
}

.llm-list--links li::before {
  top: 0.65em;
}

.llm-list--links strong {
  color: #A4161A;
  font-weight: 700;
}

.llm-diff-grid {
  display: grid;
  gap: 0.85rem;
  grid-template-columns: 1fr;
}

.llm-diff-card {
  border-radius: 8px;
  background: #A4161A;
  padding: 1.1rem 1.2rem;
  color: #fff;
}

.llm-diff-card h4 {
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.llm-diff-card p {
  margin-top: 0.45rem;
  font-size: 0.8125rem;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.95);
}

.llm-split-grid {
  display: grid;
  gap: 2rem;
}

.llm-category-card__subtitle {
  margin-top: 0.35rem;
  font-size: 0.875rem;
  font-weight: 700;
  color: #171313;
}

.llm-requirements-block {
  border-radius: 8px;
  background: #F7F7F7;
  padding: 1.25rem 1.35rem;
}

.llm-requirements-block + .llm-requirements-block {
  margin-top: 1rem;
}

.llm-requirements-block p {
  margin-top: 0.85rem;
  font-size: 0.875rem;
  line-height: 1.65;
  color: #171313;
}

@media (min-width: 640px) {
  .llm-diff-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .llm-card-grid--2,
  .llm-card-grid--categories {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .llm-page__section {
    padding: 2rem 0;
  }

  .llm-summary-card,
  .llm-info-card,
  .llm-category-card,
  .llm-requirements-block {
    padding: 1.5rem 1.65rem;
  }

  .llm-card-grid--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .llm-diff-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .llm-split-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2.5rem;
    align-items: start;
  }

  .llm-section-title {
    font-size: 1.25rem;
  }
}

/* llm info page css end */

/* service details page css start */

.service-details-hero {
  background: #fff;
  color: #171313;
  padding: clamp(2.5rem, 6vw, 5rem) 0 clamp(3rem, 6vw, 5rem);
}

.service-details-hero__grid {
  row-gap: clamp(2rem, 4vw, 3rem);
}

.service-details-hero__head {
  text-align: center;
  margin: auto;
  max-width: 64rem;
}

.service-details-hero__title{
  font-size: 28px;
  font-weight: 700;
}

@media (min-width: 768px){
  .service-details-hero__title{
    font-size: 34px;
  }
}

@media (min-width: 1024px){
  .service-details-hero__title{
    font-size: 48px;
  }
}

.service-details-hero__lead{
  margin: auto;
  margin-top: 0.5rem;
  --tw-text-opacity: 1;
  color: rgb(102 100 100 / var(--tw-text-opacity, 1));
}

.service-details-hero__actions{
  margin-top: 1.5rem;
  gap: 1.25rem;
}

.service-details-hero__media img{
  display: block;
  width: 100%;
  border-radius: 1rem;
  -o-object-fit: cover;
     object-fit: cover;
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.service-details-hero__media img.bg-white {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

.service-details-about__title{
  font-size: 24px;
  font-weight: 700;
}

@media (min-width: 768px){
  .service-details-about__title{
    font-size: 30px;
  }
}

@media (min-width: 1024px){
  .service-details-about__title{
    font-size: 44px;
  }
}

.service-details-about__copy p{
  --tw-text-opacity: 1;
  color: rgb(102 100 100 / var(--tw-text-opacity, 1));
}

.service-details-about__copy p + p {
  margin-top: 1.25rem;
}

@media (min-width: 1024px) {
  .service-details-hero__grid {
    row-gap: clamp(2.5rem, 5vw, 4rem);
  }
}

@media (max-width: 639px) {
  .service-details-hero__actions {
    flex-direction: column;
    width: 100%;
  }

  .service-details-hero__actions .btn-primary-group {
    width: 100%;
    justify-content: center;
  }

  .service-details-hero__media img {
    aspect-ratio: 4 / 3;
  }
}

/* service details page css end */

/* service details safety section */

.service-details-safety {
  background: #fff;
  padding: clamp(2rem, 5vw, 3.5rem) 0 clamp(3rem, 6vw, 5rem);
}

.service-details-safety__panel {
  position: relative;
  overflow: hidden;
  border-radius: clamp(14px, 2vw, 20px);
  background: #f5f5f5;
  padding: clamp(2rem, 5vw, 3.5rem) clamp(1.25rem, 4vw, 3rem);
}

.service-details-safety__decor {
  position: absolute;
  pointer-events: none;
  z-index: 0;
  width: clamp(180px, 28vw, 350px);
  opacity: 0.2;
}

.service-details-safety__decor--top-right {
  top: 0;
  right: 0;
}

.service-details-safety__decor--bottom-left {
  bottom: 0;
  left: 0;
}

.service-details-safety__content{
  position: relative;
  margin: auto;
  max-width: 64rem;
  text-align: center;
}

@media (max-width: 767px) {
  #sale-mobile-featured .service-details-safety__content.z-\[1\] {
    margin-top: 20px;
    gap: 20px;
  }

  #sale-mobile-featured .service-details-safety__content.rounded-2xl.bg-white {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

@media (min-width: 1024px) and (max-width: 1366px) {
  [data-products-desktop] .service-details-safety__content.rounded-3xl {
    padding: 12px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item > .grid > .service-details-safety__content {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .grid > .service-details-safety__content {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .grid > .service-details-safety__content .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .grid > .service-details-safety__content {
    width: 86px;
    height: 86px;
  }
}

.service-details-safety__title{
  margin-bottom: 1.25rem;
  font-size: 18px;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(164 22 26 / var(--tw-text-opacity, 1));
}

@media (max-width: 1023px) {
  
  .cart-summary-item__variants .service-details-safety__title {
    color: #A4161A;
  }
}

@media (min-width: 768px){
  .service-details-safety__title{
    font-size: 20px;
  }
}

@media (min-width: 1024px){
  .service-details-safety__title{
    font-size: 24px;
  }
}

.service-details-safety__text{
  --tw-text-opacity: 1;
  color: rgb(27 22 22 / var(--tw-text-opacity, 1));
}

/* service details provide section */

.service-details-provide{
  --tw-bg-opacity: 1;
  background-color: rgb(164 22 26 / var(--tw-bg-opacity, 1));
  padding-bottom: 5rem;
}

.service-details-provide__head {
  max-width: 52rem;
  margin: 0 auto;
  text-align: center;
}

.service-details-provide__title{
  font-size: 24px;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

@media (min-width: 768px){
  .service-details-provide__title{
    font-size: 30px;
  }
}

@media (min-width: 1024px){
  .service-details-provide__title{
    font-size: 44px;
  }
}

.service-details-provide__lead{
  margin-top: 0.5rem;
  max-width: 42rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.service-details-provide__lead strong {
  font-weight: 700;
}

.service-details-provide__cards {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(0.85rem, 2vw, 1.25rem);
  margin-top: clamp(1.75rem, 4vw, 2.5rem);
}

.service-details-feature-card{
  border-radius: 14px;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding: 1.25rem;
  --tw-shadow: 0px 2px 6px rgba(0,0,0,0.14);
  --tw-shadow-colored: 0px 2px 6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.rounded-2xl.service-details-feature-card {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

.service-details-feature-card__icon{
  display: grid;
  height: 69px;
  width: 65px;
  place-items: center;
  border-radius: 10px;
  background-color: #ff90904d;
}

@media (max-width: 1023px) {
  .cart-summary-item > .service-details-feature-card__icon {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
  }

  .cart-summary-item > .service-details-feature-card__icon > .relative {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }

  .cart-summary-item > .service-details-feature-card__icon > .shrink-0 {
    align-self: center;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .service-details-feature-card__icon {
    grid-template-columns: 96px minmax(0, 1fr) auto;
    min-height: 120px;
    padding: 12px;
    -moz-column-gap: 22px;
         column-gap: 22px;
  }

  .cart-summary-item > .service-details-feature-card__icon > .relative {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .service-details-feature-card__icon > .relative .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .service-details-feature-card__icon {
    grid-template-columns: 86px minmax(0, 1fr) auto;
    -moz-column-gap: 16px;
         column-gap: 16px;
  }

  .cart-summary-item > .service-details-feature-card__icon > .relative {
    width: 86px;
    height: 86px;
  }
}

.service-details-feature-card__icon img{
  height: 30px;
  width: 30px;
}

@media (max-width: 1023px) {
  .footer-brand-col .service-details-feature-card__title {
    justify-content: flex-start;
  }
}

.service-details-feature-card__title{
  margin-top: 0.75rem;
  margin-bottom: 0.25rem;
  font-size: 16px;
  font-weight: 700;
}

@media (min-width: 768px){
  .service-details-feature-card__title{
    font-size: 18px;
  }
}

@media (min-width: 1024px){
  .service-details-feature-card__title{
    font-size: 22px;
  }
}

@media (min-width: 640px) {
  .service-details-provide__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .service-details-provide__cards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.25rem;
  }
}

/* service details intro section */

/* service details info cards section */

.service-details-info {
  background: #fff;
  padding: clamp(1.5rem, 4vw, 2.5rem) 0;
}

.service-details-info__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(0.85rem, 2vw, 1.25rem);
}

.service-details-info-card{
  border-radius: 20px;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(224 224 224 / var(--tw-border-opacity, 1));
  padding: 1.75rem;
}

.service-details-info-card__head{
  margin-bottom: 1.25rem;
  border-bottom-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(224 224 224 / var(--tw-border-opacity, 1));
  padding-bottom: 1.25rem;
}

.service-details-info-card__head h3{
  font-size: 18px;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(164 22 26 / var(--tw-text-opacity, 1));
}

@media (max-width: 1023px) {
  
  .cart-summary-item__variants .service-details-info-card__head h3 {
    color: #A4161A;
  }
}

.service-details-info-card__head p{
  margin-top: 0.25rem;
  --tw-text-opacity: 1;
  color: rgb(102 100 100 / var(--tw-text-opacity, 1));
}

@media (max-width: 1023px) {
  .cart-summary-item .service-details-info-card__head p.flex.items-center.text-sm {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.4;
    color: #666464;
  }
}

.service-details-info-card__label{
  margin-bottom: 0.75rem;
  font-weight: 600;
}

.service-details-info-card__list{
  display: grid;
  gap: 0.45rem;
}

@media (max-width: 1023px) {
  .cart-summary-item > .service-details-info-card__list {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
  }

  .cart-summary-item > .service-details-info-card__list > .relative {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }

  .cart-summary-item > .service-details-info-card__list > .shrink-0 {
    align-self: center;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .service-details-info-card__list {
    grid-template-columns: 96px minmax(0, 1fr) auto;
    min-height: 120px;
    padding: 12px;
    -moz-column-gap: 22px;
         column-gap: 22px;
  }

  .cart-summary-item > .service-details-info-card__list > .relative {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .service-details-info-card__list > .relative .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .service-details-info-card__list {
    grid-template-columns: 86px minmax(0, 1fr) auto;
    -moz-column-gap: 16px;
         column-gap: 16px;
  }

  .cart-summary-item > .service-details-info-card__list > .relative {
    width: 86px;
    height: 86px;
  }
}

.service-details-info-card__list li{
  position: relative;
  padding-left: 1.25rem;
}

@media (max-width: 767px) {
  #sale-mobile-featured .service-details-info-card__list li.z-\[1\] {
    margin-top: 20px;
    gap: 20px;
  }

  #sale-mobile-featured .service-details-info-card__list li.rounded-2xl.bg-white {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

@media (min-width: 1024px) and (max-width: 1366px) {
  [data-products-desktop] .service-details-info-card__list li.rounded-3xl {
    padding: 12px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item > .grid > .service-details-info-card__list li {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .grid > .service-details-info-card__list li {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .grid > .service-details-info-card__list li .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .grid > .service-details-info-card__list li {
    width: 86px;
    height: 86px;
  }
}

.service-details-info-card__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 11px;
  width: 11px;
  height: 11px;
  border-radius: 999px;
  background: #a4161a;
  transform: translateY(-50%);
}

@media (min-width: 768px) {
  .service-details-info__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(1rem, 2vw, 1.25rem);
  }
}

/* service details products carousel section */

/* blog details page css start */

/* blog details page css end */

/* solution details page css start */

.solution-details-showcase {
  background: #fff;
  padding: 0 0 clamp(2rem, 5vw, 3.5rem);
}

.solution-details-showcase__hero {
  /* position: relative;
  overflow: hidden;
  border-radius: 0 0 clamp(14px, 2vw, 24px) clamp(14px, 2vw, 24px); */
  position: relative;
}

@media (max-width: 767px) {
  #sale-mobile-featured .solution-details-showcase__hero.z-\[1\] {
    margin-top: 20px;
    gap: 20px;
  }

  #sale-mobile-featured .solution-details-showcase__hero.rounded-2xl.bg-white {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

@media (min-width: 1024px) and (max-width: 1366px) {
  [data-products-desktop] .solution-details-showcase__hero.rounded-3xl {
    padding: 12px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item > .grid > .solution-details-showcase__hero {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .grid > .solution-details-showcase__hero {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .grid > .solution-details-showcase__hero .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .grid > .solution-details-showcase__hero {
    width: 86px;
    height: 86px;
  }
}

.solution-details-showcase__hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(27, 22, 22, 0.15) 0%,    rgba(27, 22, 22, 0.45) 100%);
  pointer-events: none;
  border-radius: 1rem;
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.solution-details-showcase__hero.bg-white::after {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

.solution-details-showcase__hero img{
  width: 100%;
  border-radius: 1rem;
}

@media (max-width: 767px) {
  #sale-mobile-featured .relative.solution-details-showcase__hero img.bg-white {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

.solution-details-showcase__cards{
  margin-top: 2.5rem;
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: 1.25rem;
}

@media (min-width: 1024px) and (max-width: 1366px) {
  section[aria-labelledby="brands-heading"] .solution-details-showcase__cards {
    display: none;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item > .solution-details-showcase__cards {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
  }

  .cart-summary-item > .solution-details-showcase__cards > .relative {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }

  .cart-summary-item > .solution-details-showcase__cards > .shrink-0 {
    align-self: center;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .solution-details-showcase__cards {
    grid-template-columns: 96px minmax(0, 1fr) auto;
    min-height: 120px;
    padding: 12px;
    -moz-column-gap: 22px;
         column-gap: 22px;
  }

  .cart-summary-item > .solution-details-showcase__cards > .relative {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .solution-details-showcase__cards > .relative .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .solution-details-showcase__cards {
    grid-template-columns: 86px minmax(0, 1fr) auto;
    -moz-column-gap: 16px;
         column-gap: 16px;
  }

  .cart-summary-item > .solution-details-showcase__cards > .relative {
    width: 86px;
    height: 86px;
  }
}

.solution-details-data-card{
  padding: 1.5rem;
}

.solution-details-data-card__title{
  margin-top: 0.5rem;
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(31 25 25 / var(--tw-text-opacity, 1));
}

@media (min-width: 768px){
  .solution-details-data-card__title{
    font-size: 1.25rem;
    line-height: 1.75rem;
  }
}

@media (min-width: 1024px){
  .solution-details-data-card__title{
    font-size: 22px;
  }
}

.solution-details-data-card__desc{
  margin-top: 0.5rem;
  --tw-text-opacity: 1;
  color: rgb(102 100 100 / var(--tw-text-opacity, 1));
}

@media (min-width: 640px) {
  .solution-details-showcase__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1024px) {
  .solution-details-showcase__cards {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* solution details page css end */

/* solution details about section */

.solution-details-about__head {
  max-width: 52rem;
  margin: 0 auto;
  text-align: center;
}

.solution-details-about__title{
  font-size: 24px;
  font-weight: 700;
}

@media (min-width: 768px){
  .solution-details-about__title{
    font-size: 30px;
  }
}

@media (min-width: 1024px){
  .solution-details-about__title{
    font-size: 44px;
  }
}

.solution-details-about__intro{
  margin-top: 1rem;
}

@media (max-width: 767px) {
  #sale-mobile-featured .px-0\.5 .solution-details-about__intro {
    margin-top: 16px;
    display: flex;
    align-items: center;
    gap: 8px;
  }
}

.solution-details-about__divider {
  margin: clamp(1.75rem, 4vw, 2.5rem) 0;
  height: 1px;
  background: #e5e5e5;
}

.solution-details-about__row {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  gap: clamp(1.5rem, 4vw, 3rem);
}

.solution-details-about__row + .solution-details-about__row {
  margin-top: clamp(2rem, 5vw, 3.5rem);
}

.solution-details-about__list p{
  position: relative;
  margin-top: 0.65rem;
  padding-left: 1.25rem;
}

@media (max-width: 767px) {
  #sale-mobile-featured .solution-details-about__list p.z-\[1\] {
    margin-top: 20px;
    gap: 20px;
  }

  #sale-mobile-featured .solution-details-about__list p.rounded-2xl.bg-white {
    border-radius: 22px;
    padding: clamp(42px, 12vw, 58px) clamp(16px, 5vw, 22px) clamp(38px, 11vw, 50px);
    min-height: clamp(330px, 105vw, 408px);
    box-shadow: none;
  }
}

@media (min-width: 1024px) and (max-width: 1366px) {
  [data-products-desktop] .solution-details-about__list p.rounded-3xl {
    padding: 12px;
  }
}

@media (max-width: 1023px) {
  .cart-summary-item > .grid > .solution-details-about__list p {
    width: 64px;
    height: 64px;
    border-radius: 8px;
  }
}

@media (min-width: 1024px) {
  .cart-summary-item > .grid > .solution-details-about__list p {
    width: 96px;
    height: 96px;
    border-radius: 8px;
  }

  .cart-summary-item > .grid > .solution-details-about__list p .cart-summary-item__remove {
    top: -6px;
    right: -7px;
    left: auto;
    width: 19px;
    height: 19px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .cart-summary-item > .grid > .solution-details-about__list p {
    width: 86px;
    height: 86px;
  }
}

.solution-details-about__list p:first-child {
  margin-top: 0;
}

.solution-details-about__list p::before {
  content: "";
  position: absolute;
  left: 0px;
  height: 9px;
  width: 9px;
  border-radius: 9999px;
  --tw-bg-opacity: 1;
  background-color: rgb(178 22 29 / var(--tw-bg-opacity, 1));
}

@media (max-width: 767px) {
  #sale-mobile-featured .solution-details-about__list p.-top-1.left-5::before {
    left: -4px;
    top: -9px;
    width: 98px;
    height: 76px;
  }

  #sale-mobile-featured .solution-details-about__list p.-top-1.left-5::before::before,
  #sale-mobile-featured .solution-details-about__list p.-top-1.left-5::before::after {
    content: '';
    position: absolute;
    height: 1.4px;
    background: #1f1919;
    z-index: -1;
  }

  #sale-mobile-featured .solution-details-about__list p.-top-1.left-5::before::before {
    left: 7px;
    top: 19px;
    width: 55px;
    transform: rotate(-20deg);
  }

  #sale-mobile-featured .solution-details-about__list p.-top-1.left-5::before::after {
    left: 54px;
    top: 10px;
    width: 43px;
    transform: rotate(35deg);
    transform-origin: left center;
  }

  #sale-mobile-featured .solution-details-about__list p.-top-1.left-5 > div::before {
    position: absolute;
    left: 51px;
    top: 4px;
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: #1f1919;
  }

  #sale-mobile-featured .solution-details-about__list p.-top-1.left-5 > span::before {
    position: absolute;
    left: 0;
    top: 28px;
    min-width: 98px;
    border-radius: 7px;
    background: #11814b;
    padding: 8px 18px;
    color: #fff;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
    text-transform: none;
    transform: rotate(6deg);
  }
}

.solution-details-about__list p::before {
  top: 0.55em;
}

.solution-details-about__media img{
  width: 100%;
  border-radius: 15px;
  --tw-drop-shadow: drop-shadow(0 4px 4px rgba(0,0,0,0.25));
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

@media (min-width: 1024px) {
  .solution-details-about__row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(2rem, 4vw, 3.5rem);
  }
}

.solution-details-requirements__stack {
  display: flex;
  flex-direction: column;
  gap: clamp(1rem, 2.5vw, 1.5rem);
}

.solution-details-requirements__card{
  border-radius: 25px;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(229 229 229 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(245 245 245 / var(--tw-bg-opacity, 1));
  padding: 1.25rem;
}

@media (min-width: 768px){
  .solution-details-requirements__card{
    padding: 2rem;
  }
}

@media (min-width: 1024px){
  .solution-details-requirements__card{
    padding: 2.5rem;
  }
}

.solution-details-requirements__title{
  margin-bottom: 1rem;
  font-size: 16px;
  font-weight: 700;
  text-transform: uppercase;
  --tw-text-opacity: 1;
  color: rgb(31 25 25 / var(--tw-text-opacity, 1));
}

@media (min-width: 768px){
  .solution-details-requirements__title{
    font-size: 20px;
  }
}

@media (min-width: 1024px){
  .solution-details-requirements__title{
    font-size: 22px;
  }
}

.solution-details-requirements__card p + p{
  margin-top: 1rem;
}

@media (max-width: 767px) {
  #sale-mobile-featured .px-0\.5 .solution-details-requirements__card p + p {
    margin-top: 16px;
    display: flex;
    align-items: center;
    gap: 8px;
  }
}

/* Animation for the Services Content Panel */

[data-service-content] {
  transition: opacity 0.8s ease-in-out, transform 0.8s ease-in-out;
  opacity: 1;
  transform: translateY(0);
}

/* State when the content is being swapped */

[data-service-content].is-transitioning {
  opacity: 0;
  transform: translateY(10px);
}

#service-image {
  transition: transform 0.5s ease;
}

#service-image:hover {
  transform: scale(1.05);
}

/* Animation for Sale Featured Card */

.sale-featured-content {
  transition: opacity 0.25s ease-in-out;
  opacity: 1;
}

/* State when switching items */

.sale-featured-content.is-transitioning {
  opacity: 0;
}

.carousel-nav span {
  padding: 0px 7px;
}

/* 
.trending-card {
  margin-right: 20px !important;
} */

@media (max-width: 767px) {
  [data-products-track]:not(.swiper-wrapper) > .product-mobile-slide {
    min-width: calc((100% - 12px) / 2);
    max-width: calc((100% - 12px) / 2);
    width: calc((100% - 12px) / 2);
    flex: 0 0 calc((100% - 12px) / 2);
    box-sizing: border-box;
  }

  .overflow-x-auto:not(.swiper) .review-card-wrap,
    .overflow-x-auto:not(.swiper) .trending-card,
    [data-trend-scroller]:not(.swiper) .trending-card {
    min-width: 100%;
    max-width: 100%;
    width: 100%;
    flex: 0 0 100%;
    box-sizing: border-box;
  }

  [data-review-scroller]:not(.swiper) .review-card-wrap {
    min-width: 0;
    max-width: 100%;
  }
}

/* Reviews Shell & External Arrow Positioning */

.review-swiper-shell {
  position: relative;
  z-index: 20;
}

.review-external-nav {
  position: absolute;
  top: 70%;
  z-index: 60;
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  border: 0;
  border-radius: 50%;
  background: #ffffff;
  color: #1b1515;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.16);
  transform: translateY(-50%);
  transition: background-color 0.25s ease, color 0.25s ease, transform 0.25s ease;
  cursor: pointer;
}

/* Float over left and right edges */

.review-external-nav--prev {
  left: -22px;
}

.review-external-nav--next {
  right: -22px;
}

.review-external-nav:hover,
.review-external-nav:focus-visible {
  background: #A51D1D;
  color: #ffffff;
  outline: none;
  transform: translateY(-50%) scale(1.06);
}

.review-external-nav:hover img,
.review-external-nav:focus-visible img {
  filter: brightness(0) invert(1);
}

@media (max-width: 767px) {
  .review-external-nav {
    display: none;
  }
}

/* Global Smooth Dots Animation for Banner, Products & Reviews */

.review-dot,
  .swiper-pagination-bullet {
  width: 8px !important;
  height: 8px !important;
  margin: 0 6px !important;
  /* Constant margin prevents jumping */
  border: none !important;
  border-radius: 50% !important;
  background-color: #1b1515 !important;
  padding: 0 !important;
  cursor: pointer !important;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
                background-color 0.3s cubic-bezier(0.4, 0, 0.2, 1),
                box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1),
                opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* Active Dot with Red Ring Effect */

.review-dot.is-active,
  .review-dot.swiper-pagination-bullet-active,
  .swiper-pagination-bullet-active {
  width: 8px !important;
  height: 8px !important;
  margin: 0 6px !important;
  background-color: #A51D1D !important;
  opacity: 1 !important;
  box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #A51D1D !important;
  transform: scale(1.2) !important;
}

/* @media (min-width: 1024px) {
  #topNav {
    pointer-events: auto;
  }

  #topNav.header-nav-hidden {
    pointer-events: none;
  }
} */

/* =========================
   HEADER
========================= */

header {
  position: sticky;
  top: 0;
  z-index: 9999;
  transition: top 0.3s ease;
}

header.header-scrolled {
  top: -54px;
}

/* =========================
   TOP NAV
========================= */

#topNav {
  position: relative;
  z-index: 1000;
  transform: translateY(0);
  opacity: 1;
  transition:
        transform 0.3s ease,
        opacity 0.3s ease;
  overflow: visible;
}

#topNav.header-nav-hidden {
  transform: translateY(-100%);
  opacity: 0;
  pointer-events: none;
}

/* =========================
   CATEGORY NAV
========================= */

.category-nav {
  position: relative;
  z-index: 9999;
  overflow: visible;
}

.category-item {
  position: relative;
}

/* =========================
   CATEGORY DROPDOWN
========================= */

.category-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 99999;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transform: translateY(8px);
  transition:
        opacity 0.2s ease,
        transform 0.2s ease,
        visibility 0.2s ease;
}

.category-item:hover > .category-menu {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

@media (max-width: 1024px) {
  header.header-scrolled {
    top: 0 !important;
  }
}

swiper-container swiper-slide > article,
swiper-container swiper-slide > .review-card-wrap {
  width: 100% !important;
  height: 100% !important;
  box-sizing: border-box !important;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

/* Standardize swiper slide sizing for custom containers */

[data-trend-scroller].swiper .swiper-slide,
[data-review-scroller].swiper .swiper-slide {
  display: flex !important;
  height: auto !important;
  box-sizing: border-box !important;
}

@media (max-width: 1024px) {
  .listing-copy {
    max-height: unset;
  }
}

@media (max-width: 767px) {
  .listing-hero__card > div {
    max-width: 100%;
  }

  .listing-hero__card {
    background-size: cover;
    background-position: center;
  }
}

.shipping-info-modal__dialog {
  position: relative;
  width: 100%;
  max-width: 42rem;
  max-height: 90vh;
  display: flex;
  flex-direction: column;
  border-radius: 16px;
  background: #fff;
  padding: 1.25rem;
  box-sizing: border-box;
  overflow: hidden;
  /* Keeps close button and card background inside the viewport */
  pointer-events: auto;
}

.shipping-costs-table-wrap {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  flex: 1;
  overflow-x: auto !important;
  overflow-y: auto !important;
  border-radius: 10px;
  border: 1px solid #E0E0E0;
  -webkit-overflow-scrolling: touch;
}

.related-swiper-shell {
  position: relative;
  width: 100%;
}

.related-products-swiper {
  width: 100%;
  overflow: hidden;
  position: relative;
  padding: 4px 2px 8px 2px;
}

.related-products-swiper .swiper-wrapper {
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  box-sizing: border-box !important;
}

.related-products-swiper .swiper-slide {
  height: auto !important;
  display: flex !important;
  flex-shrink: 0 !important;
  box-sizing: border-box !important;
}

/* Floating Navigation Buttons */

.related-swiper-btn {
  position: absolute;
  top: -60px;
  z-index: 40;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #ffffff;
  color: #1b1515;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.16);
  transform: translateY(-50%);
  border: none;
  cursor: pointer;
  transition: background-color 0.25s ease, color 0.25s ease, transform 0.25s ease;
}

.related-swiper-btn--prev {
  right: 55px;
}

.related-swiper-btn--next {
  right: 0;
}

.related-swiper-btn:hover {
  background: #A51D1D;
  color: #ffffff;
  transform: translateY(-50%) scale(1.06);
}

@media (max-width: 967px) {
  .related-swiper-btn {
    display: none !important;
  }
}

/* Review-style Pagination Dots */

.related-products-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  margin-top: 1.75rem;
}

.related-products-pagination .review-dot {
  width: 8px !important;
  height: 8px !important;
  margin: 0 6px !important;
  border: none !important;
  border-radius: 50% !important;
  background-color: #1b1515 !important;
  padding: 0 !important;
  cursor: pointer !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.related-products-pagination .review-dot.is-active,
.related-products-pagination .swiper-pagination-bullet-active {
  width: 8px !important;
  height: 8px !important;
  margin: 0 6px !important;
  background-color: #A51D1D !important;
  opacity: 1 !important;
  box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #A51D1D !important;
  transform: scale(1.2) !important;
}

@media (min-width: 1024px){
  @media (max-width: 1023px) {
    .footer-brand-col .lg\:mt-3 {
      justify-content: flex-start;
    }
  }
}

.marker\:content-none *::marker{
  --tw-content: none;
  content: var(--tw-content);
}

.marker\:content-none::marker{
  --tw-content: none;
  content: var(--tw-content);
}

.placeholder\:text-neutral-400::-moz-placeholder{
  --tw-text-opacity: 1;
  color: rgb(163 163 163 / var(--tw-text-opacity, 1));
}

.placeholder\:text-neutral-400::placeholder{
  --tw-text-opacity: 1;
  color: rgb(163 163 163 / var(--tw-text-opacity, 1));
}

.last\:border-b-0:last-child{
  border-bottom-width: 0px;
}

.open\:border-\[\#A51D1D\][open]{
  --tw-border-opacity: 1;
  border-color: rgb(165 29 29 / var(--tw-border-opacity, 1));
}

.open\:shadow-md[open]{
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:-translate-y-1:hover{
  --tw-translate-y: -0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.hover\:border-brand-dark:hover{
  --tw-border-opacity: 1;
  border-color: rgb(31 25 25 / var(--tw-border-opacity, 1));
}

.hover\:border-brand-red:hover{
  --tw-border-opacity: 1;
  border-color: rgb(164 22 26 / var(--tw-border-opacity, 1));
}

.hover\:bg-\[\#2a2221\]:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(42 34 33 / var(--tw-bg-opacity, 1));
}

.hover\:bg-\[\#5a5a5a\]:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(90 90 90 / var(--tw-bg-opacity, 1));
}

.hover\:bg-\[\#8a1215\]:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(138 18 21 / var(--tw-bg-opacity, 1));
}

.hover\:bg-\[\#FAFAFA\]:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(250 250 250 / var(--tw-bg-opacity, 1));
}

.hover\:bg-brand-dark:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(31 25 25 / var(--tw-bg-opacity, 1));
}

.hover\:bg-brand-red:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(164 22 26 / var(--tw-bg-opacity, 1));
}

.hover\:bg-brand-theme:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(164 22 26 / var(--tw-bg-opacity, 1));
}

.hover\:bg-neutral-900:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(23 23 23 / var(--tw-bg-opacity, 1));
}

.hover\:bg-white:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.hover\:pl-2:hover{
  padding-left: 0.5rem;
}

.hover\:text-\[\#ff9ea1\]:hover{
  --tw-text-opacity: 1;
  color: rgb(255 158 161 / var(--tw-text-opacity, 1));
}

.hover\:text-brand-dark:hover{
  --tw-text-opacity: 1;
  color: rgb(31 25 25 / var(--tw-text-opacity, 1));
}

.hover\:text-brand-red:hover{
  --tw-text-opacity: 1;
  color: rgb(164 22 26 / var(--tw-text-opacity, 1));
}

.hover\:text-neutral-800:hover{
  --tw-text-opacity: 1;
  color: rgb(38 38 38 / var(--tw-text-opacity, 1));
}

.hover\:text-white:hover{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.hover\:text-white\/75:hover{
  color: rgb(255 255 255 / 0.75);
}

.hover\:text-white\/80:hover{
  color: rgb(255 255 255 / 0.8);
}

.hover\:underline:hover{
  text-decoration-line: underline;
}

.hover\:opacity-70:hover{
  opacity: 0.7;
}

.hover\:shadow-lg:hover{
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:shadow-md:hover{
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:shadow-xl:hover{
  --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.focus\:border-brand-red:focus{
  --tw-border-opacity: 1;
  border-color: rgb(164 22 26 / var(--tw-border-opacity, 1));
}

.focus\:outline-none:focus{
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.focus\:ring-1:focus{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus\:ring-brand-red:focus{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(164 22 26 / var(--tw-ring-opacity, 1));
}

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

.disabled\:opacity-40:disabled{
  opacity: 0.4;
}

.group[open] .group-open\:rotate-180{
  --tw-rotate: 180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group[open] .group-open\:rounded-b-none{
  border-bottom-right-radius: 0px;
  border-bottom-left-radius: 0px;
}

.group[open] .group-open\:bg-\[\#A51D1D\]{
  --tw-bg-opacity: 1;
  background-color: rgb(165 29 29 / var(--tw-bg-opacity, 1));
}

.group[open] .group-open\:text-white{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.group:hover .group-hover\:pointer-events-auto{
  pointer-events: auto;
}

.group:hover .group-hover\:visible{
  visibility: visible;
}

.group:hover .group-hover\:z-\[80\]{
  z-index: 80;
}

.group:hover .group-hover\:block{
  display: block;
}

.group:hover .group-hover\:translate-y-0{
  --tw-translate-y: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:rotate-180{
  --tw-rotate: 180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:scale-105{
  --tw-scale-x: 1.05;
  --tw-scale-y: 1.05;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:scale-\[1\.03\]{
  --tw-scale-x: 1.03;
  --tw-scale-y: 1.03;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:text-brand-red{
  --tw-text-opacity: 1;
  color: rgb(164 22 26 / var(--tw-text-opacity, 1));
}

.group:hover .group-hover\:opacity-100{
  opacity: 1;
}

.group\/btn:hover .group-hover\/btn\:brightness-0{
  --tw-brightness: brightness(0);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.group:hover .group-hover\:brightness-0{
  --tw-brightness: brightness(0);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.group\/btn:hover .group-hover\/btn\:invert{
  --tw-invert: invert(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.group:hover .group-hover\:invert{
  --tw-invert: invert(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.has-\[\:checked\]\:border-brand-red:has(:checked){
  --tw-border-opacity: 1;
  border-color: rgb(164 22 26 / var(--tw-border-opacity, 1));
}

@media not all and (min-width: 1024px){
  .max-lg\:mx-0{
    margin-left: 0px;
    margin-right: 0px;
  }

  .max-lg\:max-w-none{
    max-width: none;
  }

  .max-lg\:items-start{
    align-items: flex-start;
  }

  .max-lg\:pt-0{
    padding-top: 0px;
  }
}

@media (min-width: 640px){
  .sm\:mx-auto{
    margin-left: auto;
    margin-right: auto;
  }

  .sm\:my-20{
    margin-top: 5rem;
    margin-bottom: 5rem;
  }

  .sm\:mb-10{
    margin-bottom: 2.5rem;
  }

  .sm\:mb-4{
    margin-bottom: 1rem;
  }

  .sm\:mt-10{
    margin-top: 2.5rem;
  }

  .sm\:mt-12{
    margin-top: 3rem;
  }

  .sm\:mt-14{
    margin-top: 3.5rem;
  }

  .sm\:mt-7{
    margin-top: 1.75rem;
  }

  .sm\:mt-8{
    margin-top: 2rem;
  }

  .sm\:block{
    display: block;
  }

  .sm\:inline{
    display: inline;
  }

  .sm\:hidden{
    display: none;
  }

  .sm\:h-5{
    height: 1.25rem;
  }

  .sm\:h-52{
    height: 13rem;
  }

  .sm\:h-\[270px\]{
    height: 270px;
  }

  .sm\:h-\[320px\]{
    height: 320px;
  }

  .sm\:h-\[370px\]{
    height: 370px;
  }

  .sm\:max-h-7{
    max-height: 1.75rem;
  }

  .sm\:min-h-\[330px\]{
    min-height: 330px;
  }

  .sm\:w-\[293px\]{
    width: 293px;
  }

  .sm\:w-\[70\%\]{
    width: 70%;
  }

  .sm\:w-auto{
    width: auto;
  }

  .sm\:min-w-\[5\.25rem\]{
    min-width: 5.25rem;
  }

  .sm\:min-w-\[560px\]{
    min-width: 560px;
  }

  .sm\:max-w-lg{
    max-width: 32rem;
  }

  .sm\:max-w-none{
    max-width: none;
  }

  .sm\:grid-cols-2{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .sm\:flex-row{
    flex-direction: row;
  }

  .sm\:flex-nowrap{
    flex-wrap: nowrap;
  }

  .sm\:items-center{
    align-items: center;
  }

  .sm\:justify-between{
    justify-content: space-between;
  }

  .sm\:gap-10{
    gap: 2.5rem;
  }

  .sm\:gap-3{
    gap: 0.75rem;
  }

  .sm\:gap-5{
    gap: 1.25rem;
  }

  .sm\:gap-7{
    gap: 1.75rem;
  }

  .sm\:gap-8{
    gap: 2rem;
  }

  .sm\:space-y-5 > :not([hidden]) ~ :not([hidden]){
    --tw-space-y-reverse: 0;
    margin-top: calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(1.25rem * var(--tw-space-y-reverse));
  }

  .sm\:rounded-3xl{
    border-radius: 1.5rem;
  }

  .sm\:rounded-\[36px\]{
    border-radius: 36px;
  }

  .sm\:rounded-full{
    border-radius: 9999px;
  }

  .sm\:border-b-0{
    border-bottom-width: 0px;
  }

  .sm\:border-l-0{
    border-left-width: 0px;
  }

  .sm\:p-4{
    padding: 1rem;
  }

  .sm\:p-5{
    padding: 1.25rem;
  }

  .sm\:p-6{
    padding: 1.5rem;
  }

  .sm\:p-7{
    padding: 1.75rem;
  }

  .sm\:p-8{
    padding: 2rem;
  }

  .sm\:p-\[0\.35rem\]{
    padding: 0.35rem;
  }

  .sm\:\!py-16{
    padding-top: 4rem !important;
    padding-bottom: 4rem !important;
  }

  .sm\:px-10{
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }

  .sm\:px-12{
    padding-left: 3rem;
    padding-right: 3rem;
  }

  .sm\:px-2\.5{
    padding-left: 0.625rem;
    padding-right: 0.625rem;
  }

  .sm\:px-4{
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .sm\:px-5{
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .sm\:px-8{
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .sm\:py-0\.5{
    padding-top: 0.125rem;
    padding-bottom: 0.125rem;
  }

  .sm\:py-10{
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }

  .sm\:py-12{
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .sm\:py-14{
    padding-top: 3.5rem;
    padding-bottom: 3.5rem;
  }

  .sm\:py-16{
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .sm\:py-2\.5{
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
  }

  .sm\:py-3{
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
  }

  .sm\:py-4{
    padding-top: 1rem;
    padding-bottom: 1rem;
  }

  .sm\:py-6{
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }

  .sm\:pb-0{
    padding-bottom: 0px;
  }

  .sm\:pb-10{
    padding-bottom: 2.5rem;
  }

  .sm\:pb-12{
    padding-bottom: 3rem;
  }

  .sm\:pb-16{
    padding-bottom: 4rem;
  }

  .sm\:pt-10{
    padding-top: 2.5rem;
  }

  .sm\:pt-8{
    padding-top: 2rem;
  }

  .sm\:text-center{
    text-align: center;
  }

  .sm\:text-2xl{
    font-size: 1.5rem;
    line-height: 2rem;
  }

  .sm\:text-3xl{
    font-size: 1.875rem;
    line-height: 2.25rem;
  }

  .sm\:text-\[14px\]{
    font-size: 14px;
  }

  .sm\:text-\[15px\]{
    font-size: 15px;
  }

  .sm\:text-\[16px\]{
    font-size: 16px;
  }

  .sm\:text-\[18px\]{
    font-size: 18px;
  }

  .sm\:text-\[20px\]{
    font-size: 20px;
  }

  .sm\:text-\[28px\]{
    font-size: 28px;
  }

  .sm\:text-\[44px\]{
    font-size: 44px;
  }

  .sm\:text-base{
    font-size: 1rem;
    line-height: 1.5rem;
  }

  .sm\:text-lg{
    font-size: 1.125rem;
    line-height: 1.75rem;
  }

  .sm\:text-sm{
    font-size: 0.875rem;
    line-height: 1.25rem;
  }

  .sm\:text-xl{
    font-size: 1.25rem;
    line-height: 1.75rem;
  }

  .sm\:text-xs{
    font-size: 0.75rem;
    line-height: 1rem;
  }
}

@media (min-width: 768px){
  .md\:col-span-6{
    grid-column: span 6 / span 6;
  }

  .md\:flex{
    display: flex;
  }

  .md\:grid{
    display: grid;
  }

  .md\:hidden{
    display: none;
  }

  .md\:h-\[20px\]{
    height: 20px;
  }

  .md\:h-\[470px\]{
    height: 470px;
  }

  .md\:w-\[20px\]{
    width: 20px;
  }

  .md\:grid-cols-2{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .md\:flex-row{
    flex-direction: row;
  }

  .md\:items-start{
    align-items: flex-start;
  }

  .md\:justify-start{
    justify-content: flex-start;
  }

  .md\:justify-center{
    justify-content: center;
  }

  .md\:justify-between{
    justify-content: space-between;
  }

  .md\:gap-6{
    gap: 1.5rem;
  }

  .md\:gap-8{
    gap: 2rem;
  }

  .md\:gap-x-8{
    -moz-column-gap: 2rem;
         column-gap: 2rem;
  }

  .md\:overflow-x-visible{
    overflow-x: visible;
  }

  .md\:border-r{
    border-right-width: 1px;
  }

  .md\:p-8{
    padding: 2rem;
  }

  .md\:px-5{
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .md\:py-16{
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .md\:pb-16{
    padding-bottom: 4rem;
  }

  .md\:pt-\[80px\]{
    padding-top: 80px;
  }

  .md\:text-\[15px\]{
    font-size: 15px;
  }

  .md\:text-\[18px\]{
    font-size: 18px;
  }

  .md\:text-\[20px\]{
    font-size: 20px;
  }

  .md\:text-\[24px\]{
    font-size: 24px;
  }

  .md\:text-\[36px\]{
    font-size: 36px;
  }

  .md\:text-\[40px\]{
    font-size: 40px;
  }

  .md\:text-base{
    font-size: 1rem;
    line-height: 1.5rem;
  }
}

@media (min-width: 1024px){
  .lg\:static{
    position: static;
  }

  .lg\:sticky{
    position: sticky;
  }

  .lg\:-right-\[0\.4rem\]{
    right: -0.4rem;
  }

  .lg\:-top-\[0\.4rem\]{
    top: -0.4rem;
  }

  .lg\:left-auto{
    left: auto;
  }

  .lg\:top-6{
    top: 1.5rem;
  }

  .lg\:order-1{
    order: 1;
  }

  .lg\:order-2{
    order: 2;
  }

  .lg\:col-span-2{
    grid-column: span 2 / span 2;
  }

  .lg\:col-span-4{
    grid-column: span 4 / span 4;
  }

  .lg\:col-span-6{
    grid-column: span 6 / span 6;
  }

  .lg\:col-span-8{
    grid-column: span 8 / span 8;
  }

  .lg\:col-start-2{
    grid-column-start: 2;
  }

  .lg\:row-span-2{
    grid-row: span 2 / span 2;
  }

  .lg\:mx-0{
    margin-left: 0px;
    margin-right: 0px;
  }

  .lg\:mb-14{
    margin-bottom: 3.5rem;
  }

  .lg\:mt-0{
    margin-top: 0px;
  }

  .lg\:mt-10{
    margin-top: 2.5rem;
  }

  .lg\:mt-2{
    margin-top: 0.5rem;
  }

  .lg\:mt-3{
    margin-top: 0.75rem;
  }

  .lg\:mt-6{
    margin-top: 1.5rem;
  }

  .lg\:mt-8{
    margin-top: 2rem;
  }

  .lg\:mt-\[30px\]{
    margin-top: 30px;
  }

  .lg\:block{
    display: block;
  }

  .lg\:flex{
    display: flex;
  }

  .lg\:grid{
    display: grid;
  }

  .lg\:hidden{
    display: none;
  }

  .lg\:h-12{
    height: 3rem;
  }

  .lg\:h-20{
    height: 5rem;
  }

  .lg\:h-6{
    height: 1.5rem;
  }

  .lg\:h-60{
    height: 15rem;
  }

  .lg\:h-\[1\.1rem\]{
    height: 1.1rem;
  }

  .lg\:h-\[24px\]{
    height: 24px;
  }

  .lg\:h-\[330px\]{
    height: 330px;
  }

  .lg\:h-\[380px\]{
    height: 380px;
  }

  .lg\:h-full{
    height: 100%;
  }

  .lg\:min-h-0{
    min-height: 0px;
  }

  .lg\:min-h-\[420px\]{
    min-height: 420px;
  }

  .lg\:w-20{
    width: 5rem;
  }

  .lg\:w-6{
    width: 1.5rem;
  }

  .lg\:w-\[1\.1rem\]{
    width: 1.1rem;
  }

  .lg\:w-\[24px\]{
    width: 24px;
  }

  .lg\:w-\[80\%\]{
    width: 80%;
  }

  .lg\:w-auto{
    width: auto;
  }

  .lg\:w-full{
    width: 100%;
  }

  .lg\:min-w-0{
    min-width: 0px;
  }

  .lg\:min-w-\[5\.5rem\]{
    min-width: 5.5rem;
  }

  .lg\:max-w-\[280px\]{
    max-width: 280px;
  }

  .lg\:max-w-\[48\%\]{
    max-width: 48%;
  }

  .lg\:max-w-\[50\%\]{
    max-width: 50%;
  }

  .lg\:max-w-none{
    max-width: none;
  }

  .lg\:flex-1{
    flex: 1 1 0%;
  }

  .lg\:flex-shrink-0{
    flex-shrink: 0;
  }

  .lg\:grid-cols-12{
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }

  .lg\:grid-cols-2{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .lg\:grid-cols-3{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .lg\:grid-cols-4{
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .lg\:grid-cols-\[1fr_0\.9fr\]{
    grid-template-columns: 1fr 0.9fr;
  }

  .lg\:grid-cols-\[43\%_57\%\]{
    grid-template-columns: 43% 57%;
  }

  .lg\:grid-cols-\[5rem_minmax\(0\2c 1fr\)_auto\]{
    grid-template-columns: 5rem minmax(0,1fr) auto;
  }

  .lg\:flex-row{
    flex-direction: row;
  }

  .lg\:flex-nowrap{
    flex-wrap: nowrap;
  }

  .lg\:items-start{
    align-items: flex-start;
  }

  .lg\:items-end{
    align-items: flex-end;
  }

  .lg\:items-center{
    align-items: center;
  }

  .lg\:items-stretch{
    align-items: stretch;
  }

  .lg\:justify-end{
    justify-content: flex-end;
  }

  .lg\:justify-center{
    justify-content: center;
  }

  .lg\:justify-between{
    justify-content: space-between;
  }

  .lg\:gap-0{
    gap: 0px;
  }

  .lg\:gap-10{
    gap: 2.5rem;
  }

  .lg\:gap-12{
    gap: 3rem;
  }

  .lg\:gap-14{
    gap: 3.5rem;
  }

  .lg\:gap-5{
    gap: 1.25rem;
  }

  .lg\:gap-6{
    gap: 1.5rem;
  }

  .lg\:gap-8{
    gap: 2rem;
  }

  .lg\:gap-x-10{
    -moz-column-gap: 2.5rem;
         column-gap: 2.5rem;
  }

  .lg\:gap-x-4{
    -moz-column-gap: 1rem;
         column-gap: 1rem;
  }

  .lg\:gap-x-5{
    -moz-column-gap: 1.25rem;
         column-gap: 1.25rem;
  }

  .lg\:gap-y-10{
    row-gap: 2.5rem;
  }

  .lg\:divide-x > :not([hidden]) ~ :not([hidden]){
    --tw-divide-x-reverse: 0;
    border-right-width: calc(1px * var(--tw-divide-x-reverse));
    border-left-width: calc(1px * calc(1 - var(--tw-divide-x-reverse)));
  }

  .lg\:divide-white\/30 > :not([hidden]) ~ :not([hidden]){
    border-color: rgb(255 255 255 / 0.3);
  }

  .lg\:self-start{
    align-self: flex-start;
  }

  .lg\:overflow-visible{
    overflow: visible;
  }

  .lg\:rounded-2xl{
    border-radius: 1rem;
  }

  .lg\:rounded-xl{
    border-radius: 0.75rem;
  }

  .lg\:rounded-l-2xl{
    border-top-left-radius: 1rem;
    border-bottom-left-radius: 1rem;
  }

  .lg\:border{
    border-width: 1px;
  }

  .lg\:border-b-0{
    border-bottom-width: 0px;
  }

  .lg\:border-r{
    border-right-width: 1px;
  }

  .lg\:border-\[\#E6E6E6\]{
    --tw-border-opacity: 1;
    border-color: rgb(230 230 230 / var(--tw-border-opacity, 1));
  }

  .lg\:border-white\/35{
    border-color: rgb(255 255 255 / 0.35);
  }

  .lg\:bg-transparent{
    background-color: transparent;
  }

  .lg\:bg-white{
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  }

  .lg\:p-10{
    padding: 2.5rem;
  }

  .lg\:p-4{
    padding: 1rem;
  }

  .lg\:p-6{
    padding: 1.5rem;
  }

  .lg\:p-8{
    padding: 2rem;
  }

  .lg\:\!py-20{
    padding-top: 5rem !important;
    padding-bottom: 5rem !important;
  }

  .lg\:px-0{
    padding-left: 0px;
    padding-right: 0px;
  }

  .lg\:px-12{
    padding-left: 3rem;
    padding-right: 3rem;
  }

  .lg\:px-2\.5{
    padding-left: 0.625rem;
    padding-right: 0.625rem;
  }

  .lg\:px-5{
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .lg\:px-9{
    padding-left: 2.25rem;
    padding-right: 2.25rem;
  }

  .lg\:py-0{
    padding-top: 0px;
    padding-bottom: 0px;
  }

  .lg\:py-10{
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }

  .lg\:py-12{
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .lg\:py-16{
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .lg\:py-20{
    padding-top: 5rem;
    padding-bottom: 5rem;
  }

  .lg\:py-6{
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }

  .lg\:pb-0{
    padding-bottom: 0px;
  }

  .lg\:pb-12{
    padding-bottom: 3rem;
  }

  .lg\:pb-20{
    padding-bottom: 5rem;
  }

  .lg\:pr-6{
    padding-right: 1.5rem;
  }

  .lg\:pr-8{
    padding-right: 2rem;
  }

  .lg\:pt-0{
    padding-top: 0px;
  }

  .lg\:pt-12{
    padding-top: 3rem;
  }

  .lg\:pt-\[100px\]{
    padding-top: 100px;
  }

  .lg\:text-center{
    text-align: center;
  }

  .lg\:text-\[0\.95rem\]{
    font-size: 0.95rem;
  }

  .lg\:text-\[16px\]{
    font-size: 16px;
  }

  .lg\:text-\[18px\]{
    font-size: 18px;
  }

  .lg\:text-\[20px\]{
    font-size: 20px;
  }

  .lg\:text-\[22px\]{
    font-size: 22px;
  }

  .lg\:text-\[24px\]{
    font-size: 24px;
  }

  .lg\:text-\[28px\]{
    font-size: 28px;
  }

  .lg\:text-\[32px\]{
    font-size: 32px;
  }

  .lg\:text-\[44px\]{
    font-size: 44px;
  }

  .lg\:text-\[50px\]{
    font-size: 50px;
  }

  .lg\:text-lg{
    font-size: 1.125rem;
    line-height: 1.75rem;
  }

  .lg\:leading-relaxed{
    line-height: 1.625;
  }
}

@media (min-width: 1280px){
  .xl\:col-span-4{
    grid-column: span 4 / span 4;
  }

  .xl\:col-span-8{
    grid-column: span 8 / span 8;
  }

  .xl\:max-w-\[46\%\]{
    max-width: 46%;
  }

  .xl\:gap-8{
    gap: 2rem;
  }
}

.\[\&\:\:-webkit-details-marker\]\:hidden::-webkit-details-marker{
  display: none;
}

.\[\&\:\:-webkit-scrollbar\]\:hidden::-webkit-scrollbar{
  display: none;
}