/** Shopify CDN: Minification failed

Line 9140:0 Unexpected "}"

**/
/*! tailwindcss v4.1.11 | MIT License | https://tailwindcss.com */
@layer properties;
body, html {
  min-height: 100vh;
}
body {
  display: flex;
  flex-direction: column;
  font-family: var(--font-primary--family);
  background-color: var(--color-background);
  color: var(--color-foreground);
  min-height: 100svh;
}
button {
  cursor: pointer;
}
*, *::before, *::after {
  box-sizing: border-box;
}
html, body {
  margin: 0;
  overflow-x: hidden;
}
body {
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}
img, picture, video, canvas, svg {
  display: block;
  max-width: 100%;
}
input, button, textarea, select {
  font: inherit;
}
p, h1, h2, h3, h4, h5, h6 {
  overflow-wrap: break-word;
}
p {
  text-wrap: pretty;
}
h1, h2, h3, h4, h5, h6 {
  text-wrap: balance;
}
#root, #__next {
  isolation: isolate;
}
button {
  cursor: pointer;
  color: inherit;
}
.disable-pointer-events {
  pointer-events: none;
}
:root {
  --spacing-0-5: 2px;
  --spacing-1: 4px;
  --spacing-1-5: 6px;
  --spacing-2: 8px;
  --spacing-2-5: 10px;
  --spacing-3: 12px;
  --spacing-3-5: 14px;
  --spacing-4: 16px;
  --spacing-5: 20px;
  --spacing-6: 24px;
  --spacing-7: 28px;
  --spacing-8: 32px;
  --spacing-9: 36px;
  --spacing-10: 40px;
  --spacing-11: 44px;
  --spacing-12: 48px;
  --spacing-14: 56px;
  --spacing-16: 64px;
  --spacing-20: 80px;
  --spacing-24: 96px;
  --spacing-28: 112px;
  --spacing-32: 128px;
  --spacing-36: 144px;
  --spacing-40: 160px;
  --spacing-44: 176px;
  --spacing-48: 192px;
  --spacing-52: 208px;
  --spacing-56: 224px;
  --spacing-60: 240px;
  --spacing-64: 256px;
  --spacing-72: 288px;
  --spacing-80: 320px;
  --spacing-96: 384px;
  --page-width: 90rem;
}
.container, .container-xl {
  max-width: 90vw;
}
@media (min-width: 1600px) {
  .container {
    max-width: 1440px;
  }
  .container-xl {
    max-width: 90vw;
  }
}
:root {
  --color-gray: #aaa;
  --color-transparent-white: #ffffff26;
  --color-black: black;
  --color-white: #ffffff;
  --color-transparent: transparent;
  --color-foreground: var(--color-black);
  --color-background: var(--color-white);
  --color-border: var(--color-gray);
  --color-outline: var(--color-gray);
  --color-error: #dc2626;
  --color-success: #059669;
  --color-blue-50: #eff6ff;
  --color-blue-100: #dbeafe;
  --color-blue-200: #bfdbfe;
  --color-blue-300: #93c5fd;
  --color-blue-400: #60a5fa;
  --color-blue-500: #3b82f6;
  --color-blue-600: #2563eb;
  --color-blue-700: #1d4ed8;
  --color-blue-800: #1e40af;
  --color-blue-900: #1e3a8a;
  --color-blue-950: #172554;
  --color-green-50: #f0fdf4;
  --color-green-100: #dcfce7;
  --color-green-200: #bbf7d0;
  --color-green-300: #86efac;
  --color-green-400: #4ade80;
  --color-green-500: #22c55e;
  --color-green-600: #16a34a;
  --color-green-700: #15803d;
  --color-green-800: #14532d;
  --color-green-900: #144124;
  --color-green-950: #052e16;
  --color-red-50: #fdedee;
  --color-red-100: #fbdbdd;
  --color-red-200: #f9c4c8;
  --color-red-300: #f6a4ad;
  --color-red-400: #f27888;
  --color-red-500: #ef4461;
  --color-red-600: #e22d51;
  --color-red-700: #c01e43;
  --color-red-800: #9f1c3b;
  --color-red-900: #871937;
  --color-red-950: #45091c;
  --color-neutral-50: #fafafa;
  --color-neutral-100: #f5f5f5;
  --color-neutral-200: #e5e5e5;
  --color-neutral-300: #d4d4d4;
  --color-neutral-400: #a3a3a3;
  --color-neutral-500: #737373;
  --color-neutral-600: #525252;
  --color-neutral-700: #404040;
  --color-neutral-800: #262626;
  --color-neutral-900: #171717;
  --color-neutral-950: #0a0a0a;
}
.color-option.black-family {
  background-color: #000;
}
.color-option.floral-family {
  background-image: url("/cdn/shop/files/Screenshot_2023-05-05_at_7.27.41_AM.png?v=1683307681");
}
.color-option.green-family, .color-option.alpine-green {
  background-color: green;
}
.color-option.pink-family {
  background-color: pink;
}
.color-option.white-family, .color-option.white-palm {
  background-color: #fff;
}
.color-option.purple-family {
  background-color: purple;
}
.color-option.prints-family {
  background-image: url("/cdn/shop/files/Screenshot_2023-03-24_at_9.37.39_AM.png?v=1679665154");
}
.color-option.yellow-family {
  background-color: yellow;
}
.color-option.black, .color-option.black-splatter-print {
  background-color: #000;
}
.color-option.nero-black {
  background-color: #000;
}
.color-option.french-blue {
  background-color: #7d87a4;
}
.color-option.desert-rose {
  background-color: #d2634f;
}
.color-option.purple-rose {
  background-color: #dabdd4;
}
.color-option.new-mosto {
  background-color: #4b2731;
}
.color-option.dusty-pink {
  background-color: #e7c1bd;
}
.color-option.blue-family {
  background-color: #468ac0;
}
.color-option.berry, .color-option.wine {
  background-color: #781327;
}
.color-option.grigio-grey {
  background-color: #ccc;
}
.color-option.sachet-pink {
  background-color: #e68090;
}
.color-option.kawaii {
  background-color: #e68090;
}
.color-option.placid-blue {
  background-color: #a1b9ca;
}
.color-option.milky-blue, .color-option.sky-blue {
  background-color: #93c3c8;
}
.color-option.bright-pink {
  background-color: #fd896c;
}
.color-option.light-pink {
  background-color: #e3c6c1;
}
.color-option.purple-marl {
  background-color: #816066;
}
.color-option.light-grey {
  background-color: #ccc;
}
.color-option.peony-pink {
  background-color: #f08173;
}
.color-option.peony {
  background-color: #dd9496;
}
.color-option.lavender {
  background-color: #c4afc8;
}
.color-option.digital-zig-zag, .color-option.orchid-pink {
  background-color: #c47783;
}
.color-option.burgundy {
  background-color: #59272c;
}
.color-option.orchid-mist {
  background-color: #c57d8a;
}
.color-option.navy-leopard {
  background-color: #324972;
}
.color-option.yellow-floral {
  background-color: #feea83;
}
.color-option.galaxia {
  background-color: #4d636b;
}
.color-option.purple {
  background-color: #ad7eeb;
}
.color-option.rosewood {
  background-color: #d75d7a;
}
.color-option.air-blue-melange {
  background-color: #a2c3d8;
}
.color-option.tan {
  background-color: #cfa77e;
}
.color-option.cream, .color-option.ivory {
  background-color: #f1dece;
}
.color-option.white-w--white-trim {
  background-color: #fff;
}
.color-option.ice-blue {
  background-color: #22a2d2;
}
.color-option.coronet-blue {
  background-color: #7288a0;
}
.color-option.stone {
  background-color: #e7dfd8;
}
.color-option.geranio {
  background-color: #df5c67;
}
.color-option.red-family {
  background-color: #ff4d4d;
}
.color-option.white-geranio {
  background-color: #df5c67;
  background-image: linear-gradient(90deg, #fff 50%, #df5c67 50%);
}
.color-option.pink-coral {
  background-color: #df5c67;
  background-image: linear-gradient(90deg, #fff 50%, #df5c67 50%);
}
.color-option.black-rose-gold {
  background-image: linear-gradient(90deg, #000 50%, #b88d6e 50%);
}
.color-option.navy-tan {
  background-image: linear-gradient(90deg, #424d54 50%, #c9b2a2 50%);
}
.color-option.grey-pink {
  background-color: #df5c67;
  background-image: linear-gradient(90deg, #777 50%, pink 50%);
}
.color-option.black-grey {
  background-color: #000;
  background-image: linear-gradient(90deg, #777 50%, #000 50%);
}
.color-option.navy-blue {
  background-color: #000;
  background-image: linear-gradient(90deg, #8bb2c0 50%, navy 50%);
}
.color-option.white-new-bordeau, .color-option.new-mosto-pink-rose {
  background-color: #841d30;
  background-image: linear-gradient(90deg, #fff 50%, #841d30 50%);
}
.color-option.cielo-blue {
  background-color: #a8cbe7;
}
.color-option.celeste, .color-option.blue-lace {
  background-color: #a8cbe7;
}
.color-option.grey-blue {
  background-color: #4e5969;
}
.color-option.white-grey-cielo {
  background-image: linear-gradient(90deg, #fff 50%, #a8cbe7 50%) !important;
}
.color-option.green-camo {
  background-color: #4e4b2c;
}
.color-option.grey-white-rose {
  background-image: linear-gradient(90deg, #fff 50%, #ab9b9c 50%);
}
.color-option.camo {
  background-image: url("/cdn/shop/files/camo-1.png?v=1623166693");
}
.color-option.melange-blue {
  background-color: #8ba0b2;
}
.color-option.melange-pink {
  background-color: #e48385;
}
.color-option.white-blue-tie-dye {
  background-image: url("/cdn/shop/files/Screenshot_2023-05-12_at_9.09.05_AM.png?v=1683896957");
}
.color-option.multi-palm {
  background-image: url("/cdn/shop/files/Screenshot_2024-08-07_at_3.43.24_PM.png?v=1723059816");
}
.color-option.blue-butterfly-toile {
  background-image: url("/cdn/shop/files/Screenshot_2024-08-07_at_3.41.24_PM.png?v=1723059711");
}
.color-option.graphic-green-cactus {
  background-image: url("/cdn/shop/files/Screenshot_2024-08-07_at_3.39.18_PM.png?v=1723059571");
}
.color-option.mosaic-floral {
  background-image: url("/cdn/shop/files/Screenshot_2024-08-07_at_3.40.14_PM.png?v=1723059631");
}
.color-option.pressed-floral, .color-option.bouclé-texture-print {
  background-image: url("/cdn/shop/files/Screenshot_2023-05-05_at_7.27.41_AM.png?v=1683307681");
}
.color-option.lattice-floral {
  background-image: url("/cdn/shop/files/Screenshot_2023-03-24_at_9.37.39_AM.png?v=1679665154");
}
.color-option.bandana-print {
  background-image: url("/cdn/shop/files/Screenshot_2022-11-11_at_8.27.56_AM.png?v=1668173309");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
.color-option.stardust-grey, .color-option.stardust-print {
  background-image: url("/cdn/shop/files/Screen_Shot_2022-07-22_at_9.45.30_AM.png?v=1658497548");
}
.color-option.constellation-print {
  background-image: url("/cdn/shop/files/Screen_Shot_2022-07-22_at_10.06.50_AM.png?v=1658498835");
}
.color-option.navy-star-print {
  background-image: url("/cdn/shop/files/Screen_Shot_2022-07-22_at_9.51.39_AM.png?v=1658497908");
  background-repeat: round;
}
.color-option.lux-floral-yellow {
  background-image: url("/cdn/shop/files/Screen_Shot_2022-02-18_at_10.24.34_AM.png?v=1645197885");
}
.color-option.hydrangea-print {
  background-image: url("/cdn/shop/files/Screen_Shot_2021-12-10_at_2.45.55_PM.png?v=1639165620");
}
.color-option.hot-house-print {
  background-image: url("/cdn/shop/files/Screen_Shot_2021-12-10_at_2.49.22_PM.png?v=1639165772");
}
.color-option.green-plaid {
  background-image: url("/cdn/shop/files/Screen_Shot_2021-12-10_at_2.47.13_PM.png?v=1639165772");
}
.color-option.white-palm {
  background-image: url("/cdn/shop/files/Screenshot_2024-08-07_at_3.45.06_PM.png?v=1723059916");
}
.color-option.white-floral-chorus {
  background-image: url("/cdn/shop/files/Screenshot_2024-08-07_at_3.45.53_PM.png?v=1723059963");
}
.color-option.navy-graphic-floral {
  background-image: url("/cdn/shop/files/Screenshot_2023-06-02_at_10.41.00_AM.png?v=1685716893");
}
.color-option.club-house-floral {
  background-image: url("/cdn/shop/files/Screenshot_2023-06-02_at_10.41.00_AM.png?v=1685716893");
}
.color-option.navy-graphic-floral {
  background-image: url("/cdn/shop/files/Screenshot_2023-06-02_at_10.41.16_AM.png?v=1685716893");
}
.color-option.neutral-rattan {
  background-image: url("/cdn/shop/files/Screenshot_2023-06-09_at_8.21.26_AM.png?v=1686313306");
}
.color-option.blue-rattan {
  background-image: url("/cdn/shop/files/Screenshot_2023-06-09_at_8.21.14_AM.png?v=1686313306");
}
.color-option.cloud-floral, .color-option.floral {
  background-image: url("/cdn/shop/files/Screen_Shot_2021-07-15_at_3.32.52_PM.png?v=1626377602");
}
.color-option.multi-beaded {
  background-image: url("/cdn/shop/files/Screen_Shot_2021-06-01_at_11.59.24_AM.png?v=1622573980");
}
.color-option.white-check-floral {
  background-image: url("/cdn/shop/files/Screenshot_2023-03-17_at_9.21.33_AM.png?v=1679059324");
}
.color-option.blue-boucle {
  background-image: url("/cdn/shop/files/Screenshot_2023-03-17_at_9.22.46_AM.png?v=1679059378");
}
.color-option.tie-dye {
  background-image: url("/cdn/shop/files/tie-dye.png?v=1622573827");
}
.color-option.plaid {
  background-image: url("/cdn/shop/files/plaid_copy.png?v=1623167101");
}
.color-option.summer-floral-pink {
  background-image: url("/cdn/shop/files/Screenshot_2023-01-27_at_2.24.18_PM.png?v=1674847549");
}
.color-option.red-white-blue, .color-option.america-navy, .color-option.america-white {
  background: linear-gradient(to right, red 33.3%, white 33.3%, white 66.6%, navy 66.6%);
}
.color-option.blue-navy {
  background-image: linear-gradient(90deg, blue 50%, navy 50%) !important;
}
.color-option.navy-red {
  background-image: linear-gradient(90deg, navy 50%, red 50%) !important;
}
.color-option.new-mosto-flamingo-venere {
  background-image: linear-gradient(90deg, #ed818f 50%, #29101f 50%) !important;
}
.color-option.amparo-blue-navy {
  background-image: linear-gradient(90deg, #3434b1 50%, #2b61c5 50%) !important;
}
.color-option.white-bordeaux {
  background-image: linear-gradient(90deg, #fff 50%, #510f20 50%) !important;
}
.color-option.navy-cielo {
  background-image: linear-gradient(90deg, navy 50%, #a8cbe7 50%);
}
.color-option.white-navy, .color-option.navy-white-check, .color-option.navy-white-stripe, .color-option.blue-and-white-stripe, .color-option.white-navy-crackle, .color-option.navy-white, .color-option.blue-houndstooth {
  background-image: linear-gradient(90deg, rgb(255, 255, 255) 50%,rgb(50, 54, 80) 50%);
}
.color-option.white-new-bordeaux {
  background-image: linear-gradient(90deg, #fff 50%, #5a150f 50%);
}
.color-option.white-purple {
  background-image: linear-gradient(90deg, #fff 50%, #ad92b4 50%);
}
.color-option.grey-lt-grey {
  background-image: linear-gradient(90deg, #ccc 50%, #222 50%);
}
.color-option.white-grey, .color-option.white-marl-grey, color-option.white-grey-black {
  background-image: linear-gradient(90deg, #fff 50%, #ccc 50%);
}
.color-option.green-navy {
  background-image: linear-gradient(90deg, rgb(128 139 91) 50%, navy 50%);
}
.color-option.white-black, .color-option.white-black-check {
  background-image: linear-gradient(90deg, rgb(255, 255, 255) 50%, #000 50%);
}
.color-option.white-coral {
  background-image: linear-gradient(90deg, #fff 50%, #fe0a43 50%);
}
.color-option.black-white, .color-option.black-white-graffiti {
  background-image: linear-gradient(90deg, #000 50%, rgb(255, 255, 255) 50%);
}
.color-option.yellow-navy {
  background-image: linear-gradient(90deg, #fdd250 50%, #011428 50%) !important;
}
.color-option.multi {
  background: linear-gradient(to right, red 33.3%, #f5b40c 33.3%, #f5b40c 66.6%, blue 66.6%);
}
.color-option.pink-navy {
  background-image: linear-gradient(90deg, pink 50%, #011428 50%) !important;
}
.color-option.white-pink {
  background-image: linear-gradient(90deg, white 50%, pink 50%) !important;
}
.color-option.grey-chambray, .color-option.grey-melange {
  background-color:rgb(152, 150, 158);
}
.color-option.blue-chambray {
  background-color: #5b87c9;
}
.color-option.navy-stripe-print {
  background: repeating-linear-gradient(180deg, #606dbc, #606dbc 1px, #46529a 1px, #465298 4px);
}
.color-option.wg, .color-option.white-green {
  background-image: linear-gradient(90deg, #fff 50%,rgb(51, 83, 76) 50%) !important;
}
.color-option.eggplant-pink, .color-option.eggplant {
  background-color: #b55580 !important;
}
.color-option.army-navy {
  background-color: #65825f !important;
}
.color-option.military-green {
  background-color: #65825f !important;
}
.color-option.thyme {
  background-color: #65825f !important;
}
.color-option.white, .color-option.marl {
  background-color: #fff;
}
.color-option.blue {
  background-color: #425b95;
}
.color-option.marl-pink, .color-option.pink-marl {
  background-color: #f7a49f;
}
.color-option.marl-grey {
  background-color: #a5a5a5;
}
.color-option.dark-grey-marl {
  background-color: #625c5c;
}
.color-option.dusty-blue {
  background-color: #8cb4bc;
}
.color-option.oxford-tan {
  background-color: #e8d0c7;
}
.color-option.grey-stripe {
  background-color: #b9b7c4;
}
.color-option.jam {
  background-color: #840f2d;
}
.color-option.poblano {
  background-color: #2e5888;
}
.color-option.thistle {
  background-color: #d7cfd6;
}
.color-option.navy, .color-option.twilight, .color-option.blue-black-twill, .color-option.twill, .color-option.navy-navy {
  background-color:rgb(50, 54, 80);
}
.color-option.grey, .color-option.grey-marl {
  background-color: grey;
}
.color-option.red {
  background-color: #c92c2f;
}
.color-option.charcoal---black {
  background-color: #4e4440;
}
.color-option.hunter-green {
  background-color: #298229;
}
.color-option.tomato {
  background-color: tomato;
}
.color-option.olive {
  background-color: olive;
}
.color-option.neon-yellow {
  background-color: #e5f55b;
}
.color-option.light-yellow {
  background-color: #ffe9bb;
}
.color-option.amber-yellow {
  background-color: #fec664;
}
.color-option.powder-pink {
  background-color: #efc9c4;
}
.color-option.mily-blue {
  background-color: #a8cfd3;
}
.color-option.white-navy-red {
  background: linear-gradient(to right, white 0, white 33%, navy 33%, navy 66%, red 66%, red 100%);
}
.color-option.bloom {
  background-color: #c3adf9;
}
.color-option.coral, .color-option.sunkist-coral {
  background-color: #fe0a43 !important;
}
.color-option.red-brick {
  background-color: #a52e2e;
}
.color-option.heather-silver {
  background-color: silver;
}
.color-option.heather-navy {
  background-color: #3a6396;
}
.color-option.white-w-navy-trim {
  background-color: #fff !important;
}
.color-option.navy-w-white-trim {
  background-color: navy !important;
}
.color-option.bw {
  background-image: linear-gradient(90deg, #fff 50%, #000 50%) !important;
}
.color-option.white-with-black-white-queen {
  background-image: linear-gradient(90deg, #fff 50%, #000 50%) !important;
}
.color-option.oatmeal {
  background-image: linear-gradient(90deg, #fff 50%, #f1d4cb 50%) !important;
}
.color-option.nb {
  background-image: linear-gradient(90deg, #fff 50%, #182d6d 50%) !important;
}
.color-option.cream-pink {
  background-image: linear-gradient(90deg,rgb(212, 193, 171) 50%, pink 50%) !important;
}
.color-option.perf-papaya {
  background-color: #ffb014 !important;
}
.color-option.papaya {
  background-color: #ffb014 !important;
}
.color-option.charcoal-black {
  background-color: #383234 !important;
}
.color-option.cut-draw {
  background-image: url("/cdn/shop/files/Cut.png?v=1600440286");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
.color-option.lips {
  background-image: url("/cdn/shop/files/Lips.png?v=1600440286");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
.color-option.bump-run {
  background-image: url("/cdn/shop/files/Bump.png?v=1600440286");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
.color-option.breakfast-ball {
  background-image: url("/cdn/shop/files/Breakfast.png?v=1600440286");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
.color-option.good-good {
  background-image: url("/cdn/shop/files/Good.png?v=1600440286");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
.color-option.aces {
  background-image: url("/cdn/shop/files/Aces.png?v=1600440286");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
.color-option.right {
  background-image: url("/cdn/shop/files/Right.jpg?6567735940946075326");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
.color-option.left {
  background-image: url("/cdn/shop/files/Left.jpg?6567735940946075326");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
.color-option.baja-blue {
  background-color: #7f7adb !important;
}
.color-option.light-blue {
  background-color: #b5cfe6 !important;
}
.color-option.mauve {
  background-color: #da798a;
}
.color-option.mais {
  background-color: #fcd316;
}
.color-option.deep-heather {
  background-color: #444c50;
}
.color-option.green {
  background-color: #6b684e;
}
.color-option.peach {
  background-color: pink;
}
.color-option.oil-wash-black {
  background-color: #4a4a4a;
}
.color-option.jungle {
  background-color: #847653;
}
.color-option.navy {
  background-color:rgb(50, 54, 80);
}
.color-option.enthusiasmo {
  background-color: #ecbbc3;
}
.color-option.yellow {
  background-color: #fff01f;
}
.color-option.heather {
  background-color: grey;
}
.color-option.bordeaux {
  background-color: #bb2819;
}
.color-option.new-bordeaux {
  background-color: #a53e5f;
}
.color-option.flamingo, .color-option.new-mosto--flamingo--venere, .color-option.venere {
  background-color: pink !important;
}
.color-option.fuxia {
  background-color: #cd0345;
}
.color-option.rave {
  background-color: #f45a99;
}
.color-option.acqua {
  background-color: #aacde1;
}
.color-option.rosso-red {
  background-color: #d71a2b;
}
.color-option.amparo-blue {
  background-color: #395bc4 !important;
}
.color-option.navy-black {
  background-color: #07225f;
}
.color-option.limone, .color-option.yellow-clear {
  background-color: #ffeb00;
}
.color-option.blue-pavone {
  background-color: #15dfe8;
}
.color-option.ruby-wine {
  background-color: #7b3d54;
}
.color-option.rose-gold {
  background-color: #dec6be !important;
}
.color-option.teal {
  background-color: teal;
}
.color-option.dove-grey {
  background-color: #dad5d5 !important;
}
.color-option.maroon {
  background-color: maroon;
}
.color-option.pink {
  background-color: pink;
}
.color-option.raspberry {
  background-color: pink;
}
.color-option.iris-rhapsody-print {
  background-image: url("/cdn/shop/files/Screenshot_2025-09-23_at_10.11.53_AM.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
.color-option.deep-coral {
  background-color: #e4676d;
}
.color-option.pine-green {
  background-color: #223f3b;
}
.color-option.white-tan {
  background-image: linear-gradient(90deg, #edd6bf 50%,rgb(255, 255, 255) 50%) !important;
}
.color-option.navy-stripe {
  background-image: linear-gradient(90deg, navy 50%, white 50%);
}
.color-option.plum {
  background-color:rgb(86, 67, 103);
}
.color-option.space-blue {
  background-color:rgb(40, 56, 78);
}
.color-option.floral-camo-purple {
  background-image: linear-gradient(90deg,rgb(65, 52, 95) 50%,rgb(255, 255, 255) 50%);
}
.color-option.lily-of-the-valley-navy {
  background-color: navy;
}
.color-option.grey-white {
  background-image: url("/cdn/shop/files/Screenshot_2025-09-23_at_2.43.04_PM.png?v=1758653001")
}
.color-option.multi-navy {
  background-image: url("/cdn/shop/files/Screenshot_2025-09-23_at_2.42.53_PM.png?v=1758653001")
}
.color-option.blue-black-floral {
  background-image: linear-gradient(90deg,rgb(109, 176, 247) 50%, navy 50%)
}
.color-option.winter-white-boucle {
  background-image: url("/cdn/shop/files/Screenshot_2025-09-24_at_12.56.49_PM.png?v=1758733028");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
.color-option.leopard-toile {
  background-image: url("/cdn/shop/files/Screenshot_2025-09-24_at_1.07.21_PM.png?v=1758733653");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
.color-option.blue-summer-blossom {
  background-image: url("/cdn/shop/files/Screenshot_2025-09-24_at_1.09.45_PM.png?v=1758733795");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
.color-option.multi-coral {
  background-image: url("/cdn/shop/files/Screenshot_2025-09-24_at_1.12.28_PM.png?v=1758733956");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
.color-option.neutral-snakeskin {
  background-image: url("/cdn/shop/files/Screenshot_2025-09-24_at_1.14.24_PM.png?v=1758734085");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
.color-option.blue-ombre-snake {
  background-image: url("/cdn/shop/files/Screenshot_2025-09-24_at_1.16.07_PM.png?v=1758734179");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
.color-option.lemon-print {
  background-image: url("/cdn/shop/files/Screenshot_2025-09-24_at_1.18.42_PM.png?v=1758734716");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
.color-option.blue-ground-floral {
  background-image: url("/cdn/shop/files/Screenshot_2025-09-24_at_1.50.22_PM.png?v=1758736235");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
.color-option.diffused-floral-print {
  background-image: url("/cdn/shop/files/Screenshot_2025-09-24_at_2.06.56_PM.png?v=1758737227");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
.color-option.sunset-park-floral {
  background-image: url("/cdn/shop/files/Screenshot_2025-09-24_at_2.09.45_PM.png?v=1758737396");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
:root {
  --font-family-primary: "Nexa", "Work Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
    "Helvetica Neue", Arial, sans-serif;
  --font-family-secondary: Georgia, "Times New Roman", Times, serif;
  --font-family-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace;
  --font-weight-light: 300;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-size-xs: 0.75rem;
  --font-size-sm: 0.875rem;
  --font-size-base: 1rem;
  --font-size-lg: 1.125rem;
  --font-size-xl: 1.25rem;
  --font-size-2xl: 1.5rem;
  --font-size-3xl: 1.875rem;
  --font-size-4xl: 2.25rem;
  --font-size-5xl: 3rem;
  --font-size-6xl: 3.75rem;
  --font-size-7xl: 4.5rem;
  --font-size-8xl: 6rem;
  --font-size-9xl: 8rem;
  --line-height-none: 1;
  --line-height-tight: 1.25;
  --line-height-snug: 1.375;
  --line-height-normal: 1.5;
  --line-height-relaxed: 1.625;
  --line-height-loose: 2;
  --letter-spacing-tighter: -0.05em;
  --letter-spacing-tight: -0.025em;
  --letter-spacing-normal: 0em;
  --letter-spacing-wide: 0.025em;
  --letter-spacing-wider: 0.05em;
  --letter-spacing-widest: 0.1em;
}
@media screen and (min-width: 48rem) {
  :root {
    --font-size-4xl: 2.5rem;
    --font-size-5xl: 3.5rem;
    --font-size-6xl: 4.5rem;
    --font-size-7xl: 6rem;
    --font-size-8xl: 8rem;
    --font-size-9xl: 10rem;
  }
}
html {
  font-family: var(--font-family-primary);
  font-size: var(--font-size-base);
  line-height: var(--line-height-normal);
  font-weight: var(--font-weight-regular);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}
h1 {
  font-family: var(--font-family-primary);
  font-size: var(--font-size-5xl);
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-none);
  letter-spacing: var(--letter-spacing-tight);
}
h2 {
  font-family: var(--font-family-primary);
  font-size: var(--font-size-4xl);
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-tight);
  letter-spacing: var(--letter-spacing-tight);
}
h3 {
  font-family: var(--font-family-primary);
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-tight);
  letter-spacing: var(--letter-spacing-normal);
}
h4 {
  font-family: var(--font-family-primary);
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-tight);
  letter-spacing: var(--letter-spacing-normal);
}
h5 {
  font-family: var(--font-family-primary);
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-relaxed);
  letter-spacing: var(--letter-spacing-normal);
}
h6 {
  font-family: var(--font-family-primary);
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-relaxed);
  letter-spacing: var(--letter-spacing-normal);
}
p {
  font-family: var(--font-family-primary);
  font-size: var(--font-size-base);
  line-height: var(--line-height-normal);
  text-wrap: pretty;
  overflow-wrap: break-word;
}
h1, h2, h3, h4, h5, h6 {
  text-wrap: balance;
  overflow-wrap: break-word;
}
dt {
  font-weight: var(--font-weight-semibold);
}
dd {
  margin-left: 0;
  margin-bottom: 0.5rem;
}
input, button, textarea, select {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
@media print {
  h1, h2, h3, h4, h5, h6 {
    page-break-after: avoid;
    page-break-inside: avoid;
  }
}
p, a, li, button, input {
  font-size: 13px;
}
.headline-7xl {
  font-size: 72px;
}
.h3 {
  font-size: 36px;
}
.h4 {
  font-size: 16px;
}
.menu-link {
  font-size: 16px;
}
.caption {
  font-size: 20px;
}
.p1 {
  font-size: 18px;
}
.p2 {
  font-size: 16px;
}
.p3 {
  font-size: 14px;
}
.p4 {
  font-size: 12px;
}
button, .button, .shopify-payment-button__button--unbranded {
  display: inline-block;
  padding: 10px;
  background-color: var(--color-background);
  border: 1px solid var(--color-transparent-white);
  color: var(--color-foreground);
  text-decoration: none;
}
button[aria-disabled="true"], .button[aria-disabled="true"] {
  opacity: 0.6;
  cursor: not-allowed;
}
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
      "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-blue-500: oklch(62.3% 0.214 259.815);
    --color-neutral-50: oklch(98.5% 0 0);
    --color-neutral-100: oklch(97% 0 0);
    --color-neutral-200: oklch(92.2% 0 0);
    --color-neutral-400: oklch(70.8% 0 0);
    --color-neutral-500: oklch(55.6% 0 0);
    --color-neutral-600: oklch(43.9% 0 0);
    --color-neutral-700: oklch(37.1% 0 0);
    --color-neutral-800: oklch(26.9% 0 0);
    --color-black: #000;
    --color-white: #fff;
    --spacing: 0.25rem;
    --text-base: 1rem;
    --text-lg: 1.125rem;
    --text-2xl: 1.5rem;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b, strong {
    font-weight: bolder;
  }
  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol, ul, menu {
    list-style: none;
  }
  img, svg, video, canvas, audio, iframe, embed, object {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer utilities {
  .visible {
    visibility: visible;
  }
  .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;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .static {
    position: static;
  }
  .sticky {
    position: sticky;
  }
  .order-first {
    order: -9999;
  }
  .order-last {
    order: 9999;
  }
  .container {
    width: 100%;
    @media (width >= 40rem) {
      max-width: 40rem;
    }
    @media (width >= 48rem) {
      max-width: 48rem;
    }
    @media (width >= 64rem) {
      max-width: 64rem;
    }
    @media (width >= 80rem) {
      max-width: 80rem;
    }
    @media (width >= 96rem) {
      max-width: 96rem;
    }
  }
  .mx-auto {
    margin-inline: auto;
  }
  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }
  .mb-2 {
    margin-bottom: calc(var(--spacing) * 2);
  }
  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }
  .mb-8 {
    margin-bottom: calc(var(--spacing) * 8);
  }
  .mb-10 {
    margin-bottom: calc(var(--spacing) * 10);
  }
  .block {
    display: block;
  }
  .contents {
    display: contents;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline {
    display: inline;
  }
  .transform {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
  }
  .resize {
    resize: both;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .items-center {
    align-items: center;
  }
  .justify-between {
    justify-content: space-between;
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .rounded {
    border-radius: 0.25rem;
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .bg-black {
    background-color: var(--color-black);
  }
  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }
  .py-20 {
    padding-block: calc(var(--spacing) * 20);
  }
  .text-center {
    text-align: center;
  }
  .text-\[11px\] {
    font-size: 11px;
  }
  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  .text-white {
    color: var(--color-white);
  }
  .capitalize {
    text-transform: capitalize;
  }
  .lowercase {
    text-transform: lowercase;
  }
  .uppercase {
    text-transform: uppercase;
  }
  .underline {
    text-decoration-line: underline;
  }
  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .blur {
    --tw-blur: blur(8px);
    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, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, visibility, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .md\:mb-0 {
    @media (width >= 48rem) {
      margin-bottom: calc(var(--spacing) * 0);
    }
  }
  .md\:block {
    @media (width >= 48rem) {
      display: block;
    }
  }
  .md\:flex {
    @media (width >= 48rem) {
      display: flex;
    }
  }
}
*:focus-visible {
  outline: 1px solid var(--color-outline);
  outline-offset: 0;
}
*:focus {
  outline: 1px solid var(--color-outline);
  outline-offset: 0;
}
*:focus:not(:focus-visible) {
  outline: none;
}
.visually-hidden {
  position: absolute;
  clip-path: inset(50%);
  width: 1px;
  height: 1px;
  overflow: hidden;
  white-space: nowrap;
}
.skip-to-content-link:focus {
  z-index: 9999;
  position: static;
  clip-path: none;
  width: auto;
  height: auto;
  overflow: visible;
}
.embla {
  position: relative;
  width: 100%;
}
.embla__viewport {
  overflow: hidden;
  width: 100%;
}
.embla__container {
  display: flex;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -webkit-tap-highlight-color: transparent;
}
.embla__slide {
  position: relative;
  padding: 0;
  flex-shrink: 0;
}
.embla__controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
}
.embla__button {
  background: #fff;
  border: none;
  border-radius: 50%;
  width: 38px;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s ease;
  color: #333;
  border: 1px solid #333;
}
.embla__button svg {
  width: 30px;
  height: 30px;
}
.embla__button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  transform: none;
}
.embla__dots {
  display: flex;
  gap: 0.5rem;
}
.embla__dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #ddd;
  border: none;
  cursor: pointer;
  transition: all 0.3s ease;
}
.embla__dot.is-selected {
  background: #007bff;
  transform: scale(1.2);
}
.embla[data-products-per-row="2"] .embla__slide {
  min-width: calc(100% / 2);
}
.embla[data-products-per-row="3"] .embla__slide {
  min-width: calc(100% / 3);
}
.embla[data-products-per-row="4"] .embla__slide {
  min-width: calc(100% / 4);
}
.embla[data-products-per-row="5"] .embla__slide {
  min-width: calc(100% / 5);
}
.embla[data-products-per-row="6"] .embla__slide {
  min-width: calc(100% / 6);
}
.embla__controls[data-show-arrows="false"] .embla__button {
  display: none;
}
.embla__controls[data-show-dots="false"] .embla__dots {
  display: none;
}
.embla.loading {
  opacity: 0;
  transition: opacity 0.3s ease;
}
.embla.loaded {
  opacity: 1;
}
.embla__button:focus, .embla__dot:focus {
  outline: 2px solid #007bff;
  outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) {
  .embla__slide, .embla__button, .embla__dot {
    transition: none;
  }
}
.placeholder-svg {
  width: 100%;
  height: 100%;
  background: #f8f9fa;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #6c757d;
}
[data-modal-component] {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 1000;
  &[data-modal-component="show"] {
    display: grid;
    place-items: center;
  }
  [data-modal-overlay], [data-modal-content] {
    grid-area: 1 / 1;
  }
  [data-modal-overlay] {
    position: absolute;
    inset: 0;
    background: var(--color-black, black);
    opacity: 0.5;
    cursor: pointer;
    z-index: 1;
  }
  [data-modal-content] {
    position: relative;
    background: var(--color-white, #fff);
    padding: var(--spacing-8, 32px);
    max-width: 90vw;
    width: 100%;
    height: 100%;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--spacing-8, 32px);
    z-index: 2;
  }
  [data-modal-close] {
    position: absolute;
    top: var(--spacing-2, 8px);
    right: var(--spacing-2, 8px);
    z-index: 3;
    background: none;
    border: none;
    cursor: pointer;
    color: var(--color-black, black);
  }
}
mega-menu {
  display: list-item;
  position: relative;
}
mega-menu .mega-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
}
mega-menu .menu-link:focus {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
mega-menu .mega-menu-content {
  padding: 1.5rem;
}
@media (max-width: 768px) {
  mega-menu .mega-menu {
    position: static;
    min-width: auto;
    width: 100%;
    margin-top: 0.5rem;
  }
  mega-menu .mega-menu[data-state="open"] {
    transform: none;
  }
}
mobile-menu {
  display: block;
}
.mobile-menu-container {
  position: relative;
}
.mobile-menu-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.5);
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 999;
  pointer-events: none;
}
mobile-menu[data-state="open"] .mobile-menu-overlay {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.mobile-menu-content {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: white;
  transform: translateX(-100%);
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  display: flex;
  flex-direction: column;
  z-index: 1000;
  overflow: hidden;
}
mobile-menu[data-state="open"] .mobile-menu-content {
  transform: translateX(0);
}
.mobile-menu-header {
  display: flex;
  justify-content: flex-end;
  padding: 1rem;
  min-height: 70px;
  align-items: center;
}
.mobile-menu-close {
  background: none;
  border: none;
  padding: 0.5rem;
  cursor: pointer;
  position: relative;
  width: 40px;
  height: 40px;
}
.close-icon {
  position: relative;
  width: 24px;
  height: 24px;
}
.close-icon::before, .close-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 24px;
  height: 2px;
  background: #000;
  transform-origin: center;
}
.close-icon::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.close-icon::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.mobile-navigation {
  flex: 1;
  overflow: hidden;
  position: relative;
}
.mobile-menu-pane {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: rgb(244, 244, 244);
  transform: translateX(100%);
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  overflow-y: auto;
  z-index: 1;
  will-change: transform;
  visibility: hidden;
}
.mobile-menu-pane[data-pane="main"] {
  transform: translateX(0);
  z-index: 5;
  visibility: visible;
}
.mobile-menu-pane[data-active="true"] {
  transform: translateX(0);
  z-index: 10;
  visibility: visible;
}
.mobile-menu-pane[data-pane="main"][data-active="false"] {
  transform: translateX(-100%);
  z-index: 1;
}
.mobile-menu-pane[data-active="false"]:not([data-pane="main"]) {
  transform: translateX(100%);
  pointer-events: none;
}
.mobile-menu-pane[data-active="true"] {
  pointer-events: auto;
}
.mobile-menu-pane[data-single-child="true"] .mobile-menu-item {
  border-bottom: 1px solid #e8e8e8;
}
.mobile-menu-pane[data-single-child="true"] .mobile-menu-link {
  padding: 1rem 1.5rem;
  color: #333;
  font-size: 13px;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 0.5px;
}
.mobile-menu-pane[data-single-child="true"] .mobile-menu-back {
  color: #888;
  font-size: 12px;
}
.mobile-menu-pane[data-single-child="true"] .mobile-menu-back:hover {
  color: #555;
}
.mobile-menu-pane[data-single-child="true"]::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, #e0e0e0 0%, #f0f0f0 50%, #e0e0e0 100%);
  z-index: 1;
}
.mobile-menu-pane-header {
  min-height: 90px;
  display: flex;
  align-items: center;
  padding: 1rem;
}
.mobile-menu-pane-header.with-back-button {
  min-height: 0px;
  margin-top: 90px;
}
.mobile-menu-pane-header-right, .mobile-menu-pane-header-left {
  flex: 1;
}
.mobile-menu-back {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  background: none;
  border: none;
  padding: 0.5rem;
  cursor: pointer;
  color: #666;
  font-size: 13px;
  text-transform: uppercase;
  transition: color 0.2s ease;
}
.mobile-menu-back:hover {
  color: #000;
}
.mobile-menu-back-arrow {
  width: 16px;
  height: 16px;
}
.mobile-menu-pane-title {
  margin: 0;
  font-size: 1.25rem;
  font-weight: 600;
  color: #000;
  flex: 1;
  text-align: center;
}
.mobile-menu-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.mobile-menu-item {
  border-bottom: 1px solid #f0f0f0;
}
.mobile-menu-list.primary-menu .mobile-menu-link {
  font-size: 19px;
}
.mobile-menu-link {
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 1.25rem 1.5rem;
  text-decoration: none;
  color: #000;
  font-weight: 500;
  transition: background-color 0.2s ease;
  background: none;
  border: none;
  cursor: pointer;
  text-align: left;
  font-size: 13px;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 0.5px;
}
.mobile-menu-link:hover {
  background-color: #f8f8f8;
}
.mobile-menu-arrow {
  width: 16px;
  height: 16px;
  transition: transform 0.2s ease;
}
.mobile-menu-trigger[aria-expanded="true"] .mobile-menu-arrow {
  transform: rotate(90deg);
}
.mobile-menu-footer {
  padding: 1rem 1.5rem;
  border-top: 1px solid #e5e5e5;
  background: #f8f8f8;
}
.mobile-menu-actions {
  display: flex;
  justify-content: center;
}
.mobile-account-link {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  text-decoration: none;
  color: #666;
  font-size: 0.875rem;
  transition: color 0.2s ease;
}
.mobile-account-link:hover {
  color: #000;
}
.mobile-account-link svg {
  width: 20px;
  height: 20px;
}
body[data-mobile-menu-open="true"] {
  overflow: hidden;
}
body.overflow-hidden {
  overflow: hidden;
}
html.overflow-hidden {
  overflow: hidden;
}
@media (min-width: 769px) {
  mobile-menu {
    display: none;
  }
}
.mobile-menu-close:focus, .mobile-menu-back:focus, .mobile-menu-link:focus {
  outline: 2px solid #007bff;
  outline-offset: 2px;
}
@media (prefers-contrast: high) {
  .mobile-menu-overlay {
    background: rgba(0, 0, 0, 0.8);
  }
  .mobile-menu-link, .mobile-menu-back {
    border-bottom: 2px solid #000;
  }
}
@media (prefers-reduced-motion: reduce) {
  .mobile-menu-content, .mobile-menu-pane {
    transition: none;
  }
}
.variant-selector {
  margin-bottom: 1.5rem;
}
.variant-selector__option {
  margin-bottom: 1rem;
}
.variant-selector__label {
  display: block;
  font-weight: 600;
  margin-bottom: 0.5rem;
  font-size: 0.875rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.variant-selector__current-value {
  font-weight: normal;
  color: #666;
  text-transform: none;
}
.variant-selector__color-options, .variant-selector__size-options {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.variant-selector__color-option {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 2px solid #e5e5e5;
  border-radius: 50%;
  background: white;
  cursor: pointer;
  transition: all 0.2s ease;
  padding: 0;
  position: relative;
}
.variant-selector__color-option:hover {
  border-color: #999;
  transform: scale(1.05);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}
.variant-selector__color-option[data-active="true"] {
  border-color: #000;
  border-width: 3px;
  transform: scale(1.1);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}
.variant-selector__color-option:hover::before {
  content: "";
  position: absolute;
  top: -4px;
  left: -4px;
  right: -4px;
  bottom: -4px;
  border: 2px solid #999;
  border-radius: 50%;
  opacity: 0.3;
  pointer-events: none;
}
.variant-selector__color-option[data-active="true"]::before {
  content: "";
  position: absolute;
  top: -4px;
  left: -4px;
  right: -4px;
  bottom: -4px;
  border: 2px solid #000;
  border-radius: 50%;
  opacity: 0.5;
  pointer-events: none;
}
.variant-selector__size-option {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 0.75rem;
  border: 2px solid #e5e5e5;
  border-radius: 4px;
  background: white;
  cursor: pointer;
  transition: all 0.2s ease;
  font-size: 12px;
  justify-content: center;
}
.variant-selector__size-option:hover {
  border-color: #999;
}
.variant-selector__size-option[data-active="true"] {
  border-color: #000;
  background: #000;
  color: white;
}
.variant-selector__color-option[data-unavailable="true"] {
  opacity: 0.6;
  position: relative;
  cursor: pointer;
  background: #f5f5f5;
  border-color: #ccc;
}
.variant-selector__color-option[data-unavailable="true"]::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2px;
  height: 20px;
  background: #999;
  transform: translate(-50%, -50%) rotate(45deg);
}
.variant-selector__size-option[data-unavailable="true"] {
  opacity: 0.6;
  position: relative;
  cursor: not-allowed;
  background: #f5f5f5;
  border-color: #ccc;
  color: #000;
}
.variant-selector__size-option[data-unavailable="true"]::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2px;
  height: 20px;
  background: #999;
  transform: translate(-50%, -50%) rotate(45deg);
}
.variant-selector__color-swatch {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  border: none;
  display: block;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.variant-selector__color-option.color-option.black-family .variant-selector__color-swatch {
  background-color: #000;
}
.variant-selector__color-option.color-option.floral-family .variant-selector__color-swatch {
  background-image: url("/cdn/shop/files/Screenshot_2023-05-05_at_7.27.41_AM.png?v=1683307681");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.variant-selector__color-option.color-option.green-family .variant-selector__color-swatch, .variant-selector__color-option.color-option.alpine-green .variant-selector__color-swatch {
  background-color: green;
}
.variant-selector__color-option.color-option.pink-family .variant-selector__color-swatch {
  background-color: pink;
}
.variant-selector__color-option.color-option.white-family .variant-selector__color-swatch, .variant-selector__color-option.color-option.white-palm .variant-selector__color-swatch {
  background-color: #fff;
}
.variant-selector__color-option.color-option.purple-family .variant-selector__color-swatch {
  background-color: purple;
}
.variant-selector__color-option.color-option.prints-family .variant-selector__color-swatch {
  background-image: url("/cdn/shop/files/Screenshot_2023-03-24_at_9.37.39_AM.png?v=1679665154");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.variant-selector__color-option.color-option.yellow-family .variant-selector__color-swatch {
  background-color: yellow;
}
.variant-selector__color-option.color-option.black .variant-selector__color-swatch, .variant-selector__color-option.color-option.black-splatter-print .variant-selector__color-swatch {
  background-color: #000;
}
.variant-selector__color-option.color-option.nero-black .variant-selector__color-swatch {
  background-color: #000;
}
.variant-selector__color-option.color-option.french-blue .variant-selector__color-swatch {
  background-color: #7d87a4;
}
.variant-selector__color-option.color-option.desert-rose .variant-selector__color-swatch {
  background-color: #d2634f;
}
.variant-selector__color-option.color-option.purple-rose .variant-selector__color-swatch {
  background-color: #dabdd4;
}
.variant-selector__color-option.color-option.new-mosto .variant-selector__color-swatch {
  background-color: #4b2731;
}
.variant-selector__color-option.color-option.dusty-pink .variant-selector__color-swatch {
  background-color: #e7c1bd;
}
.variant-selector__color-option.color-option.blue-family .variant-selector__color-swatch {
  background-color: #468ac0;
}
.variant-selector__color-option.color-option.berry .variant-selector__color-swatch, .variant-selector__color-option.color-option.wine .variant-selector__color-swatch {
  background-color: #781327;
}
.variant-selector__color-option.color-option.grigio-grey .variant-selector__color-swatch {
  background-color: #ccc;
}
.variant-selector__color-option.color-option.sachet-pink .variant-selector__color-swatch {
  background-color: #e68090;
}
.variant-selector__color-option.color-option.kawaii .variant-selector__color-swatch {
  background-color: #e68090;
}
.variant-selector__color-option.color-option.placid-blue .variant-selector__color-swatch {
  background-color: #a1b9ca;
}
.variant-selector__color-option.color-option.milky-blue .variant-selector__color-swatch, .variant-selector__color-option.color-option.sky-blue .variant-selector__color-swatch {
  background-color: #93c3c8;
}
.variant-selector__color-option.color-option.bright-pink .variant-selector__color-swatch {
  background-color: #fd896c;
}
.variant-selector__color-option.color-option.light-pink .variant-selector__color-swatch {
  background-color: #e3c6c1;
}
.variant-selector__color-option.color-option.purple-marl .variant-selector__color-swatch {
  background-color: #816066;
}
.variant-selector__color-option.color-option.light-grey .variant-selector__color-swatch {
  background-color: #ccc;
}
.variant-selector__color-option.color-option.peony-pink .variant-selector__color-swatch {
  background-color: #f08173;
}
.variant-selector__color-option.color-option.peony .variant-selector__color-swatch {
  background-color: #dd9496;
}
.variant-selector__color-option.color-option.lavender .variant-selector__color-swatch {
  background-color: #c4afc8;
}
.variant-selector__color-option.color-option.digital-zig-zag .variant-selector__color-swatch, .variant-selector__color-option.color-option.orchid-pink .variant-selector__color-swatch {
  background-color: #c47783;
}
.variant-selector__color-option.color-option.burgundy .variant-selector__color-swatch {
  background-color: #59272c;
}
.variant-selector__color-option.color-option.orchid-mist .variant-selector__color-swatch {
  background-color: #c57d8a;
}
.variant-selector__color-option.color-option.navy-leopard .variant-selector__color-swatch {
  background-color: #324972;
}
.variant-selector__color-option.color-option.yellow-floral .variant-selector__color-swatch {
  background-color: #feea83;
}
.variant-selector__color-option.color-option.galaxia .variant-selector__color-swatch {
  background-color: #4d636b;
}
.variant-selector__color-option.color-option.purple .variant-selector__color-swatch {
  background-color: #ad7eeb;
}
.variant-selector__color-option.color-option.rosewood .variant-selector__color-swatch {
  background-color: #d75d7a;
}
.variant-selector__color-option.color-option.air-blue-melange .variant-selector__color-swatch {
  background-color: #a2c3d8;
}
.variant-selector__color-option.color-option.tan .variant-selector__color-swatch {
  background-color: #cfa77e;
}
.variant-selector__color-option.color-option.cream .variant-selector__color-swatch, .variant-selector__color-option.color-option.ivory .variant-selector__color-swatch {
  background-color: #f1dece;
}
.variant-selector__color-option.color-option.white-w--white-trim .variant-selector__color-swatch {
  background-color: #fff;
}
.variant-selector__color-option.color-option.ice-blue .variant-selector__color-swatch {
  background-color: #22a2d2;
}
.variant-selector__color-option.color-option.coronet-blue .variant-selector__color-swatch {
  background-color: #7288a0;
}
.variant-selector__color-option.color-option.stone .variant-selector__color-swatch {
  background-color: #e7dfd8;
}
.variant-selector__color-option.color-option.geranio .variant-selector__color-swatch {
  background-color: #df5c67;
}
.variant-selector__color-option.color-option.red-family .variant-selector__color-swatch {
  background-color: #ff4d4d;
}
.variant-selector__color-option.color-option.white-geranio .variant-selector__color-swatch {
  background-color: #df5c67;
  background-image: linear-gradient(90deg, #fff 50%, #df5c67 50%);
}
.variant-selector__color-option.color-option.pink-coral .variant-selector__color-swatch {
  background-color: #df5c67;
  background-image: linear-gradient(90deg, #fff 50%, #df5c67 50%);
}
.variant-selector__color-option.color-option.black-rose-gold .variant-selector__color-swatch {
  background-image: linear-gradient(90deg, #000 50%, #b88d6e 50%);
}
.variant-selector__color-option.color-option.navy-tan .variant-selector__color-swatch {
  background-image: linear-gradient(90deg, #424d54 50%, #c9b2a2 50%);
}
.variant-selector__color-option.color-option.grey-pink .variant-selector__color-swatch {
  background-color: #df5c67;
  background-image: linear-gradient(90deg, #777 50%, pink 50%);
}
.variant-selector__color-option.color-option.black-grey .variant-selector__color-swatch {
  background-color: #000;
  background-image: linear-gradient(90deg, #777 50%, #000 50%);
}
.variant-selector__color-option.color-option.navy-blue .variant-selector__color-swatch {
  background-color: #000;
  background-image: linear-gradient(90deg, #8bb2c0 50%, navy 50%);
}
.variant-selector__color-option.color-option.white-new-bordeau .variant-selector__color-swatch, .variant-selector__color-option.color-option.new-mosto-pink-rose .variant-selector__color-swatch {
  background-color: #841d30;
  background-image: linear-gradient(90deg, #fff 50%, #841d30 50%);
}
.variant-selector__color-option.color-option.cielo-blue .variant-selector__color-swatch {
  background-color: #a8cbe7;
}
.variant-selector__color-option.color-option.celeste .variant-selector__color-swatch, .variant-selector__color-option.color-option.blue-lace .variant-selector__color-swatch {
  background-color: #a8cbe7;
}
.variant-selector__color-option.color-option.grey-blue .variant-selector__color-swatch {
  background-color: #4e5969;
}
.variant-selector__color-option.color-option.white-grey-cielo .variant-selector__color-swatch {
  background-image: linear-gradient(90deg, #fff 50%, #a8cbe7 50%);
}
.variant-selector__color-option.color-option.green-camo .variant-selector__color-swatch {
  background-color: #4e4b2c;
}
.variant-selector__color-option.color-option.grey-white-rose .variant-selector__color-swatch {
  background-image: linear-gradient(90deg, #fff 50%, #ab9b9c 50%);
}
.variant-selector__color-option.color-option.camo .variant-selector__color-swatch {
  background-image: url("/cdn/shop/files/camo-1.png?v=1623166693");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.variant-selector__color-option.color-option.melange-blue .variant-selector__color-swatch {
  background-color: #8ba0b2;
}
.variant-selector__color-option.color-option.melange-pink .variant-selector__color-swatch {
  background-color: #e48385;
}
.variant-selector__color-option.color-option.white-blue-tie-dye .variant-selector__color-swatch {
  background-image: url("/cdn/shop/files/Screenshot_2023-05-12_at_9.09.05_AM.png?v=1683896957");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.variant-selector__color-option.color-option.multi-palm .variant-selector__color-swatch {
  background-image: url("/cdn/shop/files/Screenshot_2024-08-07_at_3.43.24_PM.png?v=1723059816");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.variant-selector__color-option.color-option.blue-butterfly-toile .variant-selector__color-swatch {
  background-image: url("/cdn/shop/files/Screenshot_2024-08-07_at_3.41.24_PM.png?v=1723059711");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.variant-selector__color-option.color-option.graphic-green-cactus .variant-selector__color-swatch {
  background-image: url("/cdn/shop/files/Screenshot_2024-08-07_at_3.39.18_PM.png?v=1723059571");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.variant-selector__color-option.color-option.mosaic-floral .variant-selector__color-swatch {
  background-image: url("/cdn/shop/files/Screenshot_2024-08-07_at_3.40.14_PM.png?v=1723059631");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.variant-selector__color-option.color-option.pressed-floral .variant-selector__color-swatch, .variant-selector__color-option.color-option.bouclé-texture-print .variant-selector__color-swatch {
  background-image: url("/cdn/shop/files/Screenshot_2023-05-05_at_7.27.41_AM.png?v=1683307681");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.variant-selector__color-option.color-option.lattice-floral .variant-selector__color-swatch {
  background-image: url("/cdn/shop/files/Screenshot_2023-03-24_at_9.37.39_AM.png?v=1679665154");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.variant-selector__color-option.color-option.bandana-print .variant-selector__color-swatch {
  background-image: url("/cdn/shop/files/Screenshot_2022-11-11_at_8.27.56_AM.png?v=1668173309");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.variant-selector__color-option.color-option.stardust-grey .variant-selector__color-swatch, .variant-selector__color-option.color-option.stardust-print .variant-selector__color-swatch {
  background-image: url("/cdn/shop/files/Screen_Shot_2022-07-22_at_9.45.30_AM.png?v=1658497548");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.variant-selector__color-name {
  display: none;
}
.variant-selector__color-option[style*="--fallback-color"] .variant-selector__color-swatch {
  background-color: var(--fallback-color) !important;
}
.variant-selector__color-option[style*="--custom-color-url"] .variant-selector__color-swatch {
  background-image: var(--custom-color-url) !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}
.variant-selector__dropdown {
  width: 100%;
  padding: 0.75rem;
  border: 2px solid #e5e5e5;
  border-radius: 4px;
  background: white;
  font-size: 0.875rem;
  cursor: pointer;
}
.variant-selector__dropdown:focus {
  outline: none;
  border-color: #000;
}
.variant-selector__dropdown option[data-unavailable="true"] {
  color: #999;
  font-style: italic;
}
@media (max-width: 768px) {
  .variant-selector__color-options, .variant-selector__size-options {
    gap: 0.25rem;
  }
  .variant-selector__color-option {
    width: 35px;
    height: 35px;
  }
  .variant-selector__size-option {
    padding: 0.375rem 0.5rem;
    font-size: 0.75rem;
    min-width: 50px;
  }
}
.review-form-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  display: flex;
  align-items: center;
  height: 100vh;
  z-index: 10000;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.5s ease, visibility 0.5s ease;
}
.review-form-modal[data-active="true"] {
  opacity: 1 !important;
  visibility: visible !important;
  display: flex !important;
}
.review-form-modal__backdrop {
  background-color: rgba(0, 0, 0, 0.85);
  position: absolute;
  top: 0;
  height: 100vh;
  width: 100%;
}
.review-form-modal__content {
  z-index: 2000;
  flex: 1;
  margin: 0 auto;
  max-width: 80vw;
  padding-bottom: 100px;
  max-height: 100vh;
  overflow-y: auto;
}
.review-form-modal__form-container {
  border-radius: 4px;
  background-color: #fff;
  position: relative;
  padding: 20px;
  border: 1px solid #fff;
}
.review-form-modal__form-title {
  text-align: right;
  position: relative;
}
.review-form-modal__form-title h4 {
  background-color: #000;
  border-radius: 4px;
  margin: 0;
  line-height: 1;
  color: #fff;
  text-align: center;
  text-transform: uppercase;
  padding: 10px;
  margin-bottom: 0px;
  font-size: 13px;
  font-weight: bold;
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
}
.review-form-modal__close-btn {
  position: absolute;
  top: -50px;
  right: -100px;
}
.review-form-modal__close-btn button {
  -webkit-appearance: none;
  background-color: transparent;
  color: #fff;
  border: none;
  line-height: 1;
  cursor: pointer;
  padding: 0;
}
.review-form-modal__close-btn svg {
  height: 40px;
  width: 40px;
}
.review-form-modal__form {
  margin-bottom: 0px;
}
.review-form-modal__input-container {
  margin-bottom: 20px;
  display: flex;
  flex-wrap: wrap;
}
.review-form-modal__input-container:last-child {
  margin-bottom: 0px;
}
.review-form-modal__input-container.mb-sm {
  margin-bottom: 10px;
}
.review-form-modal__input-container.hidden {
  display: none;
}
.review-form-modal__input-container label {
  display: block;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 1px;
  margin-bottom: 5px;
  flex: 1 1 100%;
}
.review-form-modal__mini-label {
  display: block;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 1px;
  margin-bottom: 5px;
}
.review-form-modal__input-container input, .review-form-modal__input-container textarea {
  flex: 1;
  font-family: Helvetica Neue, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;
  border-radius: 4px;
  border: 1px solid #ccc;
}
.review-form-modal__input-container input {
  height: 40px;
  padding-left: 10px;
  font-size: 15px;
}
.review-form-modal__input-container input.hidden {
  display: none;
}
.review-form-modal__input-container textarea {
  min-height: 200px;
  padding-top: 5px;
  padding-left: 10px;
  font-size: 15px;
}
.review-form-modal__input-container button {
  color: #fff;
  background-color: #000;
  text-transform: uppercase;
  font-weight: bold;
  font-size: 13px;
  border: 1px solid #ccc;
  border-radius: 4px;
  line-height: 1;
  padding: 10px 20px;
  min-width: 120px;
  cursor: pointer;
  transition: all 0.25s ease;
}
.review-form-modal__input-container button:hover {
  color: #000;
  background-color: #fff;
}
.review-form-modal__input-container button:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.review-form-modal__stars-label {
  display: block;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 1px;
  margin-bottom: 5px;
  flex: 1 1 100%;
}
.review-form-modal__radio-stars {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  position: relative;
  line-height: 1;
  font-size: 0;
}
.review-form-modal__radio-star {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 5px 2px;
  width: 1em;
  color: rgba(0, 0, 0, 0.25);
  font-size: 25px !important;
  white-space: nowrap;
  transition: color 0.2s ease;
  flex-shrink: 0;
}
.review-form-modal__radio-star .icon-star {
  fill: white;
  stroke: black;
  stroke-width: 1.5;
  transition: fill 0.2s ease, stroke 0.2s ease;
}
.review-form-modal__radio-star--active svg {
  fill: black;
}
.review-form-modal__radio-star:hover .icon-star, .review-form-modal__radio-star:hover ~ .review-form-modal__radio-star .icon-star {
  fill: black;
  stroke: black;
}
.review-form-modal__radio-star--active .icon-star {
  fill: black;
  stroke: black;
}
.review-form-modal__star-total {
  pointer-events: none;
  position: absolute;
  right: -2rem;
  bottom: 12px;
  color: gray;
  font-size: 12.5px;
}
.review-form-modal__sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  margin: -1px;
  padding: 0;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.review-form-modal__recaptcha-container {
  margin-bottom: 20px;
}
.review-form-modal__confirmation-container {
  text-align: center;
  padding: 40px 0;
}
.review-form-modal__confirmation-container h4 {
  margin-bottom: 0px;
}
body[data-modal-open] {
  overflow: hidden !important;
}
@media (max-width: 768px) {
  .review-form-modal__content {
    max-width: 90vw;
    padding-bottom: 0px;
  }
  .review-form-modal__close-btn {
    right: -50px;
  }
  .review-form-modal__form-title h4 {
    position: relative;
    right: auto;
    margin-bottom: 20px;
  }
}
@media (min-width: 769px) {
  .review-form-modal__content {
    max-width: 650px;
    padding-bottom: 0px;
  }
}
.accordion {
  width: 100%;
}
.accordion-item {
  border: 1px solid var(--color-border);
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
  transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  background: #fff;
}
.accordion-item:hover {
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
  transform: translateY(-2px);
}
.accordion-trigger {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 1.25rem 1.75rem;
  background: none;
  border: none;
  cursor: pointer;
  text-align: left;
  transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  position: relative;
  overflow: hidden;
  gap: 1rem;
}
.accordion-trigger:hover::before {
  opacity: 1;
}
.accordion-title {
  font-weight: 600;
  font-size: 1.125rem;
  color: var(--color-text);
  position: relative;
  z-index: 1;
  transition: color 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  flex: 1;
  line-height: 1.4;
  word-wrap: break-word;
  hyphens: auto;
}
.accordion-trigger:hover .accordion-title {
  color: var(--color-primary, #000);
}
.accordion-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 1;
  transition: all 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  color: var(--color-text-secondary);
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  margin-top: 0.125rem;
}
.accordion-icon svg {
  transition: all 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.accordion-trigger[aria-expanded="true"] .accordion-icon {
  transform: rotate(90deg) scale(1.05);
  color: var(--color-primary, #000);
}
.accordion-trigger[aria-expanded="true"] .accordion-icon svg {
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.1));
}
.accordion-content {
  max-height: 0;
  overflow: hidden;
  transition: all 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  opacity: 0;
  transform: translateY(-8px);
}
.accordion-content[data-state="expanded"] {
  max-height: 2000px;
  opacity: 1;
  transform: translateY(0);
}
.accordion-body {
  padding: 0 1.75rem 1.75rem;
  color: var(--color-text-secondary);
  line-height: 1.7;
  position: relative;
  word-wrap: break-word;
  overflow-wrap: break-word;
}
.accordion-body::before {
  content: "";
  position: absolute;
  top: 0;
  left: 1.75rem;
  right: 1.75rem;
  height: 1px;
  background: #eaeaea;
  opacity: 0;
  transition: opacity 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.accordion-content[data-state="expanded"] .accordion-body::before {
  opacity: 1;
}
.accordion-content[data-state="collapsed"] {
  display: none;
}
.accordion-content[data-state="expanded"] {
  display: block;
}
@keyframes accordionFadeIn {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.accordion-content[data-state="expanded"] .accordion-body {
  animation: accordionFadeIn 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.15s both;
}
@keyframes ripple {
  to {
    transform: scale(3.5);
    opacity: 0;
  }
}
@media (max-width: 768px) {
  .accordion-trigger {
    padding: 1rem 1.25rem;
    gap: 0.75rem;
  }
  .accordion-title {
    font-size: 1rem;
    line-height: 1.3;
  }
  .accordion-icon {
    width: 20px;
    height: 20px;
    margin-top: 0.0625rem;
  }
  .accordion-body {
    padding: 0 1.25rem 1.25rem;
    font-size: 0.9375rem;
    line-height: 1.6;
  }
  .accordion-body::before {
    left: 1.25rem;
    right: 1.25rem;
  }
}
@media (max-width: 480px) {
  .accordion-trigger {
    padding: 0.875rem 1rem;
    gap: 0.5rem;
  }
  .accordion-title {
    font-size: 0.9375rem;
    line-height: 1.25;
  }
  .accordion-icon {
    width: 18px;
    height: 18px;
  }
  .accordion-body {
    padding: 0 1rem 1rem;
    font-size: 0.875rem;
    line-height: 1.5;
  }
  .accordion-body::before {
    left: 1rem;
    right: 1rem;
  }
  .accordion-item {
    border-radius: 8px;
  }
}
@media (max-width: 360px) {
  .accordion-trigger {
    padding: 0.75rem 0.875rem;
  }
  .accordion-title {
    font-size: 0.875rem;
  }
  .accordion-icon {
    width: 16px;
    height: 16px;
  }
  .accordion-body {
    padding: 0 0.875rem 0.875rem;
    font-size: 0.8125rem;
  }
  .accordion-body::before {
    left: 0.875rem;
    right: 0.875rem;
  }
}
@media (hover: none) and (pointer: coarse) {
  .accordion-trigger {
    min-height: 44px;
  }
  .accordion-trigger:hover {
    transform: none;
  }
  .accordion-item:hover {
    transform: none;
  }
}
header {
  border-bottom: 1px solid var(--color-transparent-white);
}
.shopify-section-group-header-group {
  z-index: 1002;
  position: relative;
}
header .menu-list {
  gap: 1rem;
}
.top-bar {
  background-color: #000;
  padding: 0.5rem 0;
  color: #fff;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.top-bar.fill-height {
  padding: 1rem 0;
}
.top-bar p {
  color: #fff;
  text-align: center;
  margin: 0;
  font-size: 12px;
  text-transform: uppercase;
  font-weight: 600;
}
.header-outer-container {
  position: fixed;
  left: 0;
  right: 0;
  top: 60px;
  width: 100%;
  z-index: 1000;
  transition: top 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.header-outer-container[data-scroll-state="scrolled"] {
  top: 20px;
}
.header-outer-container[data-mobile-menu-open="true"] {
  top: 10px;
}
.header-transition {
  transition: top 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.header {
  padding: 10px 0;
  position: relative;
  border-radius: 70px;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 10px 0px;
  border: 1px solid rgb(222, 222, 222);
  overflow: visible;
  background-color: #fff;
  transition: border-radius 0.2s ease-out;
}
.header[data-mega-menu-open="true"] {
  border-radius: 40px 40px 0 0;
}
.header-container {
  padding: 0 1rem;
}
.logo {
  flex: 2;
}
.logo h1 {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--color-text);
}
.logo .desktop {
  display: none;
}
.logo .desktop svg {
  max-width: 180px;
  height: auto;
}
.logo .mobile svg {
  max-width: 100px;
  height: auto;
  margin: 0 auto;
}
.navigation {
  flex: 1;
  display: none;
  justify-content: center;
}
.menu-list {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 0;
}
.menu-link {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  text-decoration: none;
  color: var(--color-text);
  padding: 0.5rem 1rem;
  border-radius: 50px;
  transition: all 0.2s ease-out;
}
.menu-link:hover {
  background-color: rgba(0, 0, 0, 0.05);
}
.menu-arrow {
  transition: transform 0.2s ease-out;
}
.menu-link-item[data-state="open"] .menu-arrow {
  transform: rotate(180deg);
}
.header-actions {
  flex: 1;
  display: flex;
  justify-content: flex-end;
}
.mobile-header-actions {
  flex: 1;
  position: relative;
  left: -8px;
}
.header-actions .menu-list {
  align-items: center;
  gap: 0;
}
.header-action-button {
  padding: 0 10px;
}
.header-action-button.search-button {
  background-color: transparent;
  border: none;
  padding: 0;
  cursor: pointer;
  width: 26px;
  height: 26px;
}
.header-action-button.search-button svg {
  stroke-width: 1px;
  position: relative;
  top: 3px;
}
.header-action-button.cart-button {
  position: relative;
  padding-right: 0px;
}
.header-action-button.cart-button sup {
  position: absolute;
  left: 5px;
  top: 4.5px;
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  display: flex;
}
.header-action-button.cart-button svg {
  width: 26px;
  height: 26px;
  color: #000;
}
.header-action-button.cart-button svg path {
  fill: #000;
}
.mega-menu {
  position: fixed;
  top: 121px;
  left: 0;
  right: 0;
  width: 100%;
  min-height: 300px;
  border: 1px solid rgb(222, 222, 222);
  border-top: none;
  border-radius: 0 0 70px 70px;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 10px 0px;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease-out, visibility 0.2s ease-out, transform 0.2s ease-out;
  pointer-events: none;
  z-index: 999;
  background: white;
  transform: translateY(-10px);
  margin: 0 auto;
}
.header-outer-container[data-scroll-state="scrolled"] ~ .mega-menu, .header-outer-container[data-scroll-state="scrolled"] .mega-menu {
  top: 88px;
}
.mega-menu-container {
  padding: 1.5rem 3rem 2rem;
  display: flex;
  gap: 2rem;
}
.mega-menu[data-state="open"] {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}
.mega-menu[data-state="closed"] {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(-10px);
}
.menu-link-item[data-state="open"] .menu-link {
  background-color: white;
  border-radius: 50px 50px 0 0;
  border: 1px solid rgb(222, 222, 222);
  border-bottom: none;
  box-shadow: rgba(0, 0, 0, 0.1) 0px -5px 10px 0px;
  z-index: 1001;
  transition: all 0.2s ease-out;
}
.mega-menu-container {
  overflow: hidden;
}
.mega-menu-container .shopify-block {
  flex: 0 0 20%;
}
.mega-menu-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 2rem;
}
.mega-menu-column {
  display: flex;
  flex-direction: column;
}
.mega-menu-title {
  font-size: 1.125rem;
  font-weight: 600;
  margin-bottom: 1rem;
  color: var(--color-text);
}
.mega-menu-link {
  display: block;
  text-decoration: none;
  color: var(--color-text);
  transition: color 0.2s ease;
  font-size: 13px;
  text-transform: uppercase;
  margin-bottom: 15px;
  opacity: 0.5;
  font-weight: 600;
  transition: all 0.2s ease;
}
.mega-menu-link:first-child, .mega-menu-link:last-child {
  font-weight: 600;
  color: #000;
}
.mega-menu-link:first-child {
  opacity: 1;
}
.mega-menu-link:last-child {
  border-bottom: 1px solid #000;
  display: inline-flex;
  margin-bottom: 0px;
}
.mega-menu-link:hover {
  opacity: 1;
}
.mega-menu-image-column {
  grid-column: span 1;
}
.mega-menu-image-cta {
  text-align: center;
}
.mega-menu-image-cta a {
  text-decoration: none;
  color: inherit;
}
.mega-menu-image {
  width: 100%;
  height: auto;
  border-radius: 0.5rem;
  margin-bottom: 1rem;
}
.mega-menu-image-title {
  font-size: 1.125rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
  color: var(--color-text);
}
.mega-menu-image-text {
  font-size: 0.875rem;
  color: var(--color-text-secondary);
  line-height: 1.4;
}
.header-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.3);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease-out, visibility 0.2s ease-out;
  z-index: 998;
  pointer-events: none;
}
.header-overlay.overlay-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
@media (max-width: 768px) {
  .header-outer-container[data-scroll-state="scrolled"] {
    top: 10px;
  }
  .header-outer-container[data-mobile-menu-open="true"] {
    top: 10px;
  }
  .mega-menu {
    position: static;
    width: 100%;
    min-height: auto;
    margin-top: 0.5rem;
    transform: none;
    left: auto;
    border-radius: 20px;
    border: 1px solid rgb(222, 222, 222);
  }
  .mega-menu[data-state="open"] {
    transform: none;
  }
  .mega-menu[data-state="closed"] {
    transform: none;
  }
  .mega-menu-container {
    max-width: none;
    padding: 1rem;
  }
  .mega-menu-grid {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
  .menu-link-item[data-state="open"] .menu-link {
    border-radius: 50px;
    border: none;
    box-shadow: none;
  }
}
@media (min-width: 992px) {
  .header {
    padding: 15px 0;
  }
  .navigation {
    display: flex;
  }
  .logo .desktop {
    display: block;
  }
  .logo .mobile {
    display: none;
  }
  .mobile-header-actions {
    display: none;
  }
}
@media (min-width: 1200px) {
  .header-container {
    padding: 0 2rem;
  }
  header .logo {
    max-width: 180px;
  }
  .header-actions {
    flex: 0 0 190px;
  }
}
.footer-social-logo img {
  max-width: 240px;
  width: 100%;
}
.footer-top__menu-title {
  font-size: 13px;
  text-transform: uppercase;
  font-weight: 600;
  margin-bottom: 0.75rem;
}
.footer-top__menu-item a {
  font-size: 13px;
  text-transform: uppercase;
  margin-bottom: 0.5rem;
}
.full-width-slider {
  width: 100%;
  position: relative;
  overflow: hidden;
}
.full-width-slider .slide-content {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  max-width: 100vw;
  display: block;
}
.full-width-slider .slide-content--clickable {
  text-decoration: none;
  color: inherit;
  cursor: pointer;
  transition: transform 0.3s ease;
}
.full-width-slider .slide-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
  display: block;
}
.full-width-slider .desktop-image {
  display: block;
}
.full-width-slider .mobile-image {
  display: none;
}
@media (max-width: 768px) {
  .full-width-slider .desktop-image {
    display: none;
  }
  .full-width-slider .mobile-image {
    display: block;
  }
}
.full-width-slider .embla__slide {
  height: 80vh;
}
@media (min-width: 768px) {
  .full-width-slider[data-slide-height="small"] .embla__slide {
    height: 300px;
  }
  .full-width-slider[data-slide-height="medium"] .embla__slide {
    height: 400px;
  }
  .full-width-slider[data-slide-height="large"] .embla__slide {
    height: 500px;
  }
  .full-width-slider[data-slide-height="full"] .embla__slide {
    height: calc(100vh - 3rem);
  }
}
.full-width-slider .slide-text-content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2rem;
  z-index: 2;
}
.full-width-slider .slide-text-inner {
  max-width: 600px;
  text-align: center;
}
.full-width-slider .slide-text-content[data-text-color="white"] .slide-text-inner {
  color: white;
}
.full-width-slider .slide-text-content[data-text-color="black"] .slide-text-inner {
  color: #000;
}
.full-width-slider .slide-text-content[data-text-color="light"] .slide-text-inner {
  color: #f8f8f8;
}
.full-width-slider .slide-text-content[data-text-color="dark"] .slide-text-inner {
  color: #333;
}
@media (min-width: 769px) {
  .full-width-slider .slide-text-content {
    max-width: 90vw;
    margin: 0 auto;
  }
  .full-width-slider .slide-text-inner {
    max-width: 800px;
  }
  .full-width-slider .slide-text-content[data-position="top-left"] {
    align-items: flex-start;
    justify-content: flex-start;
  }
  .full-width-slider .slide-text-content[data-position="top-center"] {
    align-items: flex-start;
    justify-content: center;
  }
  .full-width-slider .slide-text-content[data-position="top-right"] {
    align-items: flex-start;
    justify-content: flex-end;
  }
  .full-width-slider .slide-text-content[data-position="center-left"] {
    align-items: center;
    justify-content: flex-start;
  }
  .full-width-slider .slide-text-content[data-position="center"] {
    align-items: center;
    justify-content: center;
  }
  .full-width-slider .slide-text-content[data-position="center-right"] {
    align-items: center;
    justify-content: flex-end;
  }
  .full-width-slider .slide-text-content[data-position="bottom-left"] {
    align-items: flex-end;
    justify-content: flex-start;
  }
  .full-width-slider .slide-text-content[data-position="bottom-center"] {
    align-items: flex-end;
    justify-content: center;
  }
  .full-width-slider .slide-text-content[data-position="bottom-right"] {
    align-items: flex-end;
    justify-content: flex-end;
  }
  .full-width-slider .slide-text-inner[data-alignment="left"] {
    text-align: left;
  }
  .full-width-slider .slide-text-inner[data-alignment="center"] {
    text-align: center;
  }
  .full-width-slider .slide-text-inner[data-alignment="right"] {
    text-align: right;
  }
  .full-width-slider .slide-text-content[data-position="top-left"] .slide-text-inner, .full-width-slider .slide-text-content[data-position="center-left"] .slide-text-inner, .full-width-slider .slide-text-content[data-position="bottom-left"] .slide-text-inner {
    max-width: 500px;
  }
  .full-width-slider .slide-text-content[data-position="top-right"] .slide-text-inner, .full-width-slider .slide-text-content[data-position="center-right"] .slide-text-inner, .full-width-slider .slide-text-content[data-position="bottom-right"] .slide-text-inner {
    max-width: 500px;
  }
  .full-width-slider .slide-text-content[data-position="top-center"] .slide-text-inner, .full-width-slider .slide-text-content[data-position="center"] .slide-text-inner, .full-width-slider .slide-text-content[data-position="bottom-center"] .slide-text-inner {
    max-width: 800px;
  }
}
.full-width-slider .slide-text-inner[data-alignment="left"] {
  text-align: left;
}
.full-width-slider .slide-text-inner[data-alignment="center"] {
  text-align: center;
}
.full-width-slider .slide-text-inner[data-alignment="right"] {
  text-align: right;
}
.full-width-slider .slide-text-content[data-position="top-left"] {
  align-items: flex-start;
  justify-content: flex-start;
}
.full-width-slider .slide-text-content[data-position="top-center"] {
  align-items: flex-start;
  justify-content: center;
}
.full-width-slider .slide-text-content[data-position="top-right"] {
  align-items: flex-start;
  justify-content: flex-end;
}
.full-width-slider .slide-text-content[data-position="center-left"] {
  align-items: center;
  justify-content: flex-start;
}
.full-width-slider .slide-text-content[data-position="center"] {
  align-items: center;
  justify-content: center;
}
.full-width-slider .slide-text-content[data-position="center-right"] {
  align-items: center;
  justify-content: flex-end;
}
.full-width-slider .slide-text-content[data-position="bottom-left"] {
  align-items: flex-end;
  justify-content: flex-start;
}
.full-width-slider .slide-text-content[data-position="bottom-center"] {
  align-items: flex-end;
  justify-content: center;
}
.full-width-slider .slide-text-content[data-position="bottom-right"] {
  align-items: flex-end;
  justify-content: flex-end;
}
.full-width-slider .slide-heading {
  font-size: 3rem;
  font-weight: 700;
  margin: 0 0 1rem 0;
  line-height: 1.2;
}
.full-width-slider .slide-subheading {
  font-size: 1.25rem;
  margin: 0 0 2rem 0;
  line-height: 1.5;
  opacity: 0.9;
}
.full-width-slider .slide-button {
  display: inline-block;
  padding: 12px 16px;
  background-color: white;
  color: #000;
  text-decoration: none;
  border-radius: 4px;
  font-weight: 600;
  transition: all 0.3s ease;
  border: 2px solid transparent;
  pointer-events: none;
  border: 1px solid #000;
}
.full-width-slider .slide-text-content[data-text-color="white"] .slide-button {
  background-color: white;
  color: #000;
  border-color: white;
  border: 1px solid #000;
}
.full-width-slider .slide-text-content[data-text-color="black"] .slide-button {
  background-color: #000;
  color: white;
  border-color: #000;
}
.full-width-slider .slide-text-content[data-text-color="light"] .slide-button {
  background-color: #f8f8f8;
  color: #000;
  border: 1px solid #000;
  border-color: #f8f8f8;
}
.full-width-slider .slide-text-content[data-text-color="dark"] .slide-button {
  background-color: #333;
  color: white;
  border-color: #333;
}
.full-width-slider .slide-content--clickable .slide-button {
  pointer-events: none;
}
.full-width-slider .slide-content:not(.slide-content--clickable) .slide-button:hover {
  background-color: transparent;
  transform: translateY(-2px);
}
.full-width-slider .slide-content:not(.slide-content--clickable) .slide-text-content[data-text-color="white"] .slide-button:hover {
  color: white;
  border-color: white;
}
.full-width-slider .slide-content:not(.slide-content--clickable) .slide-text-content[data-text-color="black"] .slide-button:hover {
  color: #000;
  border-color: #000;
}
.full-width-slider .slide-content:not(.slide-content--clickable) .slide-text-content[data-text-color="light"] .slide-button:hover {
  color: #f8f8f8;
  border-color: #f8f8f8;
}
.full-width-slider .slide-content:not(.slide-content--clickable) .slide-text-content[data-text-color="dark"] .slide-button:hover {
  color: #333;
  border-color: #333;
}
@media (min-width: 769px) {
  .full-width-slider .slide-heading {
    font-size: 4rem;
    margin: 0 0 1.5rem 0;
  }
  .full-width-slider .slide-subheading {
    font-size: 1.5rem;
    margin: 0 0 2.5rem 0;
  }
  .full-width-slider .slide-button {
    font-size: 1.1rem;
  }
  .full-width-slider .slide-text-content[data-position="top-left"] .slide-text-inner, .full-width-slider .slide-text-content[data-position="top-right"] .slide-text-inner {
    margin-top: 2rem;
  }
  .full-width-slider .slide-text-content[data-position="bottom-left"] .slide-text-inner, .full-width-slider .slide-text-content[data-position="bottom-right"] .slide-text-inner {
    margin-bottom: 2rem;
  }
}
@media (max-width: 768px) {
  .full-width-slider .slide-heading {
    font-size: 2rem;
  }
  .full-width-slider .slide-subheading {
    font-size: 1rem;
  }
  .full-width-slider .slide-button {
    padding: 0.75rem 1.5rem;
  }
}
.full-width-slider .embla__slide {
  flex: 0 0 100%;
}
.full-width-slider .embla__controls {
  position: absolute;
  bottom: 2rem;
  right: 2rem;
  display: flex;
  align-items: center;
  gap: 1rem;
  z-index: 10;
}
.full-width-slider .embla__button {
  background: rgba(255, 255, 255, 0.9);
  border: none;
  border-radius: 50%;
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s ease;
  color: #333;
  border: 1px solid #ccc;
}
.full-width-slider .embla__button svg path {
  stroke-width: 1px;
}
.full-width-slider .embla__button:hover {
  background: white;
  transform: scale(1.1);
}
.full-width-slider .embla__button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  transform: none;
}
.full-width-slider .embla__buttons {
  display: flex;
  gap: 0.5rem;
}
.full-width-slider .embla__dots {
  display: flex;
  gap: 0.25rem;
}
.full-width-slider .embla__dot {
  width: 30px;
  height: 5px;
  border-radius: 0;
  background: rgba(255, 255, 255, 0.5);
  border: 1px solid #ccc;
  cursor: pointer;
  transition: all 0.3s ease;
  padding: 0;
}
.full-width-slider .embla__dot:hover {
  background: rgba(255, 255, 255, 0.8);
}
.full-width-slider .embla__dot.is-selected {
  background: #000;
  border: 1px solid #000;
}
.full-width-slider .embla__controls[data-show-arrows="false"] .embla__buttons {
  display: none;
}
.full-width-slider .embla__controls[data-show-dots="false"] .embla__dots {
  display: none;
}
@media (max-width: 768px) {
  .full-width-slider .embla__controls {
    bottom: 1rem;
    right: 1rem;
    gap: 0.75rem;
  }
  .full-width-slider .embla__button {
    width: 40px;
    height: 40px;
  }
  .full-width-slider .embla__dot {
    width: 6px;
    height: 6px;
  }
  .full-width-slider .embla__buttons {
    gap: 0.25rem;
  }
}
.full-width-slider.loading {
  opacity: 0;
  transition: opacity 0.3s ease;
}
.full-width-slider.loaded {
  opacity: 1;
}
.full-width-slider .embla__button:focus, .full-width-slider .embla__dot:focus {
  outline: 2px solid white;
  outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) {
  .full-width-slider .embla__slide, .full-width-slider .slide-button, .full-width-slider .embla__button, .full-width-slider .embla__dot {
    transition: none;
  }
}
@media (max-width: 991px) {
  .home-main-slider {
    margin-top: 44px;
  }
  .home-main-slider .slide-button {
    display: none !important;
  }
}
.product-slider {
  padding: 4rem 0 3rem;
}
.section-title {
  font-size: 2rem;
  font-weight: 700;
  margin: 0;
  color: #333;
}
.section-subtitle {
  font-size: 1rem;
  color: #666;
  margin: 0;
  line-height: 1.5;
}
.product-slider .embla__container {
  margin: 0 -0.25rem;
}
.product-slider .embla__viewport {
  padding: 0 0 1rem;
}
.product-slider .embla__slide {
  flex: 0 0 100%;
}
.product-slider .embla__slide product-card {
  padding: 0 0.5rem;
}
@media (max-width: 768px) {
  .section-title {
    font-size: 1.5rem;
  }
  .product-slider {
    padding: 1.5rem 0;
  }
}
@media (min-width: 768px) {
  .product-slider .embla__slide product-card {
    padding: 0;
  }
  .product-slider .embla__slide {
    flex: 0 0 25%;
    min-width: 25%;
    max-width: 25%;
    padding: 0 10px;
  }
}
.custom-items-slider {
  padding: 0 0 4rem;
}
.section-title {
  font-size: 2rem;
  font-weight: 700;
  margin: 0;
  color: #333;
}
.section-subtitle {
  font-size: 1rem;
  color: #666;
  margin: 0;
  line-height: 1.5;
}
.custom-items-slider .embla__container {
  margin: 0 -0.25rem;
}
.custom-items-slider .embla__viewport {
  padding: 0 0 1rem;
}
.custom-items-slider .embla__slide {
  padding: 0 0.5rem;
}
.custom-item-card {
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.custom-item-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
}
.custom-item-image {
  position: relative;
  overflow: hidden;
}
.custom-item-main-image, .custom-item-hover-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: opacity 0.3s ease;
}
.custom-item-hover-image {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}
.custom-item-card:hover .custom-item-main-image {
  opacity: 0;
}
.custom-item-card:hover .custom-item-hover-image {
  opacity: 1;
}
.custom-item-content {
  padding: 1.5rem;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.custom-item-heading {
  font-size: 1.25rem;
  font-weight: 600;
  margin: 0;
  color: var(--text-color, #333);
  line-height: 1.3;
}
.custom-item-caption {
  font-size: 0.875rem;
  color: var(--text-color, #333);
  margin: 0;
  line-height: 1.5;
  opacity: 0.8;
  flex-grow: 1;
}
.custom-item-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.75rem 1.5rem;
  background: var(--text-color, #333);
  color: #fff;
  text-decoration: none;
  border-radius: 4px;
  font-weight: 500;
  font-size: 0.875rem;
  transition: background-color 0.3s ease, transform 0.2s ease;
  align-self: flex-start;
  margin-top: auto;
}
.custom-item-cta:hover {
  background: var(--text-color, #333);
  opacity: 0.9;
  transform: translateY(-1px);
}
@media (max-width: 768px) {
  .section-title {
    font-size: 1.5rem;
  }
  .custom-items-slider {
    padding: 1.5rem 0;
  }
  .custom-item-content {
    padding: 1rem;
  }
  .custom-item-heading {
    font-size: 1.125rem;
  }
  .custom-item-cta {
    padding: 0.625rem 1.25rem;
    font-size: 0.8125rem;
  }
}
@media (min-width: 768px) {
  .custom-items-slider .embla__slide {
    flex: 0 0 25%;
    min-width: 25%;
    max-width: 25%;
  }
  .custom-items-slider[data-items-per-row="2"] .embla__slide {
    flex: 0 0 50%;
    min-width: 50%;
    max-width: 50%;
  }
  .custom-items-slider[data-items-per-row="3"] .embla__slide {
    flex: 0 0 33.333%;
    min-width: 33.333%;
    max-width: 33.333%;
  }
  .custom-items-slider[data-items-per-row="5"] .embla__slide {
    flex: 0 0 20%;
    min-width: 20%;
    max-width: 20%;
  }
  .custom-items-slider[data-items-per-row="6"] .embla__slide {
    flex: 0 0 16.666%;
    min-width: 16.666%;
    max-width: 16.666%;
  }
}
@media (max-width: 480px) {
  .custom-items-slider .embla__slide {
    flex: 0 0 100%;
    min-width: 100%;
    max-width: 100%;
  }
}
.custom-items-slider.loading {
  opacity: 0.6;
}
.custom-items-slider.loaded {
  opacity: 1;
}
.featured-cards-section {
  padding: 0 0 2rem;
}
.section-header {
  text-align: center;
}
.section-header--left {
  text-align: left;
}
.section-header--right {
  text-align: right;
}
.section-title {
  font-size: 1.75rem;
  font-weight: 700;
  margin: 0;
  color: var(--color-text);
}
.section-subtitle {
  font-size: 1rem;
  color: var(--color-text-secondary);
  margin: 0;
  line-height: 1.6;
}
.featured-cards-grid {
  display: grid;
  gap: 1.5rem;
  grid-template-columns: repeat(12, 1fr);
}
.featured-card-wrapper--full {
  grid-column: span 12;
}
.featured-card-wrapper--half {
  grid-column: span 6;
}
.featured-card-wrapper--third {
  grid-column: span 4;
}
@media (max-width: 480px) {
  .featured-cards-section {
    padding: 1rem 0;
  }
  .section-header {
    text-align: center;
  }
  .section-title {
    font-size: 1.25rem;
    margin: 0 0 0.5rem 0;
  }
  .section-subtitle {
    font-size: 0.8125rem;
  }
  .featured-cards-grid {
    grid-template-columns: 1fr;
    gap: 0.75rem;
  }
  .featured-card-wrapper--full, .featured-card-wrapper--half, .featured-card-wrapper--third {
    grid-column: span 1;
  }
  .featured-card__content {
    padding: 0.875rem;
  }
  .featured-card__title {
    font-size: 0.9375rem;
    margin: 0 0 0.375rem 0;
  }
  .featured-card__caption {
    font-size: 0.75rem;
    margin: 0 0 0.625rem 0;
  }
  .featured-card__cta {
    padding: 0.4375rem 0.875rem;
    font-size: 0.75rem;
  }
}
@media (min-width: 481px) and (max-width: 767px) {
  .featured-cards-section {
    padding: 1.5rem 0;
  }
  .section-header {
    text-align: center;
  }
  .section-title {
    font-size: 1.5rem;
    margin: 0 0 0.5rem 0;
  }
  .section-subtitle {
    font-size: 0.875rem;
  }
  .featured-cards-grid {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
  .featured-card-wrapper--full, .featured-card-wrapper--half, .featured-card-wrapper--third {
    grid-column: span 1;
  }
  .featured-card__image {
    min-height: 250px;
  }
  .featured-card__overlay {
    padding: 1.5rem 1rem 1rem;
    background: linear-gradient( to top, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0.7) 30%, rgba(0, 0, 0, 0.3) 60%, rgba(0, 0, 0, 0) 100% );
  }
  .featured-card__title {
    font-size: 1.125rem;
    margin: 0 0 0.5rem 0;
  }
  .featured-card__caption {
    font-size: 0.8125rem;
    margin: 0 0 0.75rem 0;
  }
  .featured-card__cta {
    padding: 0.5rem 1rem;
    font-size: 0.8125rem;
  }
  .featured-card__content {
    padding: 1rem;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .featured-cards-section {
    padding: 0 0 2.5rem;
  }
  .section-title {
    font-size: 2rem;
  }
  .section-subtitle {
    font-size: 1.125rem;
  }
  .featured-cards-grid {
    gap: 1.75rem;
  }
  .featured-card-wrapper--half {
    grid-column: span 6;
  }
  .featured-card-wrapper--third {
    grid-column: span 6;
  }
  .featured-card__image {
    min-height: 280px;
  }
  .featured-card__overlay {
    padding: 1.75rem 1.25rem 1.25rem;
    background: linear-gradient( to top, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0.7) 30%, rgba(0, 0, 0, 0.3) 60%, rgba(0, 0, 0, 0) 100% );
  }
  .featured-card__title {
    font-size: 1.125rem;
  }
  .featured-card__cta {
    padding: 0.625rem 1.25rem;
  }
  .featured-card__content {
    padding: 1.25rem;
  }
}
@media (min-width: 1024px) and (max-width: 1279px) {
  .featured-cards-section {
    padding: 0 0 3rem;
  }
  .section-title {
    font-size: 2.25rem;
  }
  .featured-cards-grid {
    gap: 2rem;
  }
  .featured-card-wrapper--half {
    grid-column: span 6;
  }
  .featured-card-wrapper--third {
    grid-column: span 4;
  }
  .featured-card__image {
    min-height: 320px;
  }
  .featured-card__overlay {
    padding: 2rem 1.5rem 1.5rem;
    background: linear-gradient( to top, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0.7) 30%, rgba(0, 0, 0, 0.3) 60%, rgba(0, 0, 0, 0) 100% );
  }
  .featured-card__title {
    font-size: 24px;
  }
  .featured-card__content {
    padding: 1.5rem;
  }
}
@media (min-width: 1280px) {
  .featured-cards-section {
    padding: 0 0 4rem;
  }
  .section-title {
    font-size: 2.5rem;
  }
  .section-subtitle {
    font-size: 1.125rem;
  }
  .featured-cards-grid {
    gap: 2rem;
  }
  .featured-card__image {
    min-height: 350px;
  }
  .featured-card__overlay {
    padding: 2.5rem 2rem 2rem;
    background: linear-gradient( to top, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0.7) 30%, rgba(0, 0, 0, 0.3) 60%, rgba(0, 0, 0, 0) 100% );
  }
  .featured-card__title {
    font-size: 24px;
  }
  .featured-card__cta {
    padding: 0.75rem 1.5rem;
  }
  .featured-card__content {
    padding: 1.5rem;
  }
}
.featured-cards-grid--2-cols {
  grid-template-columns: repeat(12, 1fr);
}
.featured-cards-grid--3-cols {
  grid-template-columns: repeat(12, 1fr);
}
.featured-cards-grid--4-cols {
  grid-template-columns: repeat(12, 1fr);
}
@media (max-width: 767px) {
  .featured-cards-grid--2-cols, .featured-cards-grid--3-cols, .featured-cards-grid--4-cols {
    grid-template-columns: 1fr;
  }
}
.featured-card {
  position: relative;
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.featured-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
}
.featured-card__image {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 300px;
}
.featured-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}
.featured-card__img img {
  min-height: 300px;
  object-fit: cover;
}
.featured-card:hover .featured-card__img {
  transform: scale(1.05);
}
.featured-card__overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient( to top, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0.7) 30%, rgba(0, 0, 0, 0.3) 60%, rgba(0, 0, 0, 0) 100% );
  padding: 2rem 1.5rem 1.5rem;
  color: #fff;
}
.featured-card__content {
  padding: 1.25rem;
  flex: 1;
  display: flex;
  flex-direction: column;
  background: #fff;
}
.featured-card__title {
  font-size: 24px;
  font-weight: 600;
  margin: 0;
  color: #fff;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}
.featured-card__caption {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.9);
  margin: 0 0 1rem 0;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
}
.featured-card__cta {
  display: inline-flex;
  align-items: center;
  padding: 0.75rem 1.5rem;
  background: var(--color-primary, #fff);
  color: var(--color-primary, #000);
  text-decoration: none;
  border-radius: 6px;
  font-weight: 600;
  font-size: 0.875rem;
  transition: all 0.2s ease;
  align-self: flex-start;
  border: none;
  cursor: pointer;
  text-shadow: none;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}
.featured-card__cta:hover {
  background: var(--color-primary-dark, #f0f0f0);
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
}
.featured-card .featured-card__content .featured-card__title {
  color: var(--color-text);
  text-shadow: none;
}
.featured-card .featured-card__content .featured-card__caption {
  color: var(--color-text-secondary);
  text-shadow: none;
}
.press-callout-section {
  padding: 0 0 4rem;
  width: 100%;
}
.press-callout-container {
  display: flex;
}
.press-callout__image-column {
  flex: 0 0 auto;
  display: flex;
}
.press-callout__image {
  max-width: 450px;
  height: auto;
  border-radius: 8px;
}
.press-callout__image img {
  height: 100% !important;
}
.press-callout__content-column {
  flex: 1;
  display: flex;
  align-items: center;
  border-radius: 20px;
}
.press-callout__content {
  flex: 1;
  padding: 2rem;
  border-radius: 12px;
  background-color: rgba(0, 0, 0, 0.05);
}
.press-callout__headline {
  font-size: 2.5rem;
  font-weight: 600;
  color: var(--color-text);
  margin: 0;
  text-align: left;
}
.press-callout__logo {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
}
.press-callout__logo-img {
  max-width: 120px;
  height: auto;
  border-radius: 4px;
  padding-right: 40px;
}
.order-first {
  order: -1;
}
.order-last {
  order: 1;
}
@media (max-width: 768px) {
  .press-callout-container {
    flex-direction: column;
    gap: 0;
    text-align: center;
  }
  .press-callout__content-column {
    flex-direction: column;
    gap: 0;
  }
  .press-callout__image {
    max-width: 100%;
    border-bottom-right-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
  }
  .press-callout__headline {
    text-align: center;
  }
  .press-callout__logo-img {
    max-width: 100px;
    padding-right: 0;
    padding-bottom: 24px;
  }
  .order-first, .order-last {
    order: unset;
  }
}
@media (max-width: 480px) {
  .press-callout-section {
    padding: 0 0 2rem;
  }
  .press-callout-container {
    padding: 0 1rem;
  }
  .press-callout__content {
    padding: 1.5rem 1.5rem 1rem;
  }
  .press-callout__headline {
    font-size: 1.25rem;
  }
}
@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
.text-marquee-container__inner {
  display: flex;
  animation: 60s linear 0s infinite normal none running scroll;
  white-space: nowrap;
  max-width: 100vw;
}
.text-marquee-item {
  flex-shrink: 0;
  position: relative;
  margin: 0;
  padding: 0;
  width: auto;
}
.text-marquee-section {
  position: relative;
  padding: var(--padding-y, 2rem) 0;
  overflow: hidden;
  width: 100%;
  background-color: var(--background-color, #f8f9fa);
  display: block;
  margin-bottom: 4rem;
}
.text-marquee-container {
  width: 100%;
  position: relative;
}
.text-marquee-section .embla {
  overflow: hidden;
  max-width: 100vw;
}
.text-marquee-section .embla__viewport {
  overflow: hidden;
  max-width: 100vw;
}
.text-marquee-section .embla__container {
  display: flex;
  align-items: center;
  user-select: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  gap: 0;
  margin: 0;
  padding: 0;
  will-change: transform;
  transform: translateZ(0);
  width: fit-content;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.text-marquee-section .embla__slide {
  flex-shrink: 0;
  position: relative;
  margin: 0;
  padding: 0;
  width: auto;
  flex: 0 0 auto;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.text-marquee-item {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  position: relative;
  margin: 0;
  padding: 0;
  width: auto;
  flex: 0 0 auto;
  transform: translate3d(0, 0, 0);
}
.text-marquee-text {
  color: var(--text-color, #333333);
  font-size: 70px;
  font-weight: var(--font-weight, 500);
  text-transform: var(--text-transform, none);
  white-space: nowrap;
  margin: 0;
  padding: 0 1.5rem;
  user-select: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  display: inline-block;
  width: auto;
}
.text-marquee-item::before {
  content: var(--divider-symbol, "•");
  color: var(--divider-color, #666666);
  font-size: var(--font-size, 1.125rem);
  font-weight: var(--font-weight, 500);
  opacity: 0.7;
  position: relative;
  top: -2px;
  margin-right: 0;
}
.text-marquee-section .embla__container > .embla__slide:first-child .text-marquee-item::before {
  display: none;
}
@media (max-width: 768px) {
  .text-marquee-section {
    padding: calc(var(--padding-y, 2rem) * 0.75) 0;
  }
  .text-marquee-text {
    font-size: calc(var(--font-size, 1.125rem) * 0.9);
    padding: 0 1rem;
  }
  .text-marquee-item::before {
    font-size: calc(var(--font-size, 1.125rem) * 0.9);
  }
  .text-marquee__play-btn {
    width: 2rem;
    height: 2rem;
    font-size: 0.75rem;
    right: 0.75rem;
  }
}
@media (max-width: 480px) {
  .text-marquee-section {
    padding: calc(var(--padding-y, 2rem) * 0.5) 0;
  }
  .text-marquee-text {
    font-size: calc(var(--font-size, 1.125rem) * 0.8);
    padding: 0 0.75rem;
  }
  .text-marquee-item::before {
    font-size: calc(var(--font-size, 1.125rem) * 0.8);
  }
  .text-marquee__play-btn {
    width: 1.75rem;
    height: 1.75rem;
    font-size: 0.625rem;
    right: 0.5rem;
  }
}
@media (prefers-contrast: high) {
  .text-marquee-text {
    color: #000000;
  }
  .text-marquee-item::before {
    color: #000000;
    opacity: 1;
  }
  .text-marquee__play-btn {
    background: rgba(0, 0, 0, 0.3);
    border-color: #000000;
    color: #000000;
  }
}
@media (prefers-color-scheme: dark) {
  .text-marquee-section {
    background-color: var(--background-color-dark, #1a1a1a);
  }
  .text-marquee-text {
    color: var(--text-color-dark, #ffffff);
  }
  .text-marquee-item::before {
    color: var(--divider-color-dark, #cccccc);
  }
  .text-marquee__play-btn {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.2);
    color: var(--text-color-dark, #ffffff);
  }
  .text-marquee__play-btn:hover {
    background: rgba(255, 255, 255, 0.2);
    border-color: rgba(255, 255, 255, 0.3);
  }
}
.text-statement-section {
  width: 100%;
  background-color: var(--background-color, transparent);
  padding: var(--padding-y, 3rem) var(--padding-x, 1rem);
  margin: 0;
}
.text-statement-container {
  max-width: 1200px;
  margin: 0 auto;
  width: 100%;
}
.text-statement-content {
  color: var(--text-color, #333333);
  font-weight: 600;
  line-height: 1.2;
  margin: 0;
  padding: 0;
}
.text-statement-content[data-heading-size="medium"] {
  font-size: clamp(1.5rem, 4vw, 2.5rem);
}
.text-statement-content[data-heading-size="large"] {
  font-size: clamp(2rem, 6vw, 3.5rem);
}
.text-statement-content[data-alignment="left"] {
  text-align: left;
}
.text-statement-content[data-alignment="center"] {
  text-align: center;
}
.text-statement-content[data-alignment="right"] {
  text-align: right;
}
@media (max-width: 768px) {
  .text-statement-section {
    padding: calc(var(--padding-y, 3rem) * 0.75) calc(var(--padding-x, 1rem) * 0.75);
  }
  .text-statement-content[data-heading-size="medium"] {
    font-size: clamp(1.25rem, 5vw, 2rem);
  }
  .text-statement-content[data-heading-size="large"] {
    font-size: clamp(1.75rem, 7vw, 2.75rem);
  }
}
@media (max-width: 480px) {
  .text-statement-section {
    padding: calc(var(--padding-y, 3rem) * 0.5) calc(var(--padding-x, 1rem) * 0.5);
  }
  .text-statement-content[data-heading-size="medium"] {
    font-size: clamp(1.125rem, 6vw, 1.75rem);
  }
  .text-statement-content[data-heading-size="large"] {
    font-size: clamp(1.5rem, 8vw, 2.25rem);
  }
}
@media (prefers-contrast: high) {
  .text-statement-content {
    color: #000000;
  }
  .text-statement-section {
    background-color: #ffffff;
  }
}
@media (prefers-color-scheme: dark) {
  .text-statement-content {
    color: #ffffff;
  }
  .text-statement-section {
    background-color: #1a1a1a;
  }
}
.text-statement-content:focus {
  outline: 2px solid #007acc;
  outline-offset: 2px;
}
@media print {
  .text-statement-section {
    background-color: transparent !important;
    color: #000000 !important;
  }
  .text-statement-content {
    color: #000000 !important;
  }
}
.media-banner {
  width: 100%;
  padding: 0 0 4rem;
}
.media-banner__container {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  align-items: center;
  text-align: center;
}
.media-banner[data-grid-style="row"] .media-banner__container {
  flex-direction: row;
  justify-content: space-between;
  text-align: left;
  align-items: flex-start;
  position: relative;
}
.media-banner[data-grid-style="stacked"] .media-banner__container {
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.media-banner__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: relative;
}
.media-banner__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.media-banner__image-mobile {
  display: none;
}
.media-banner__overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
}
.media-banner__content {
  position: absolute;
  top: auto;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 0px 40px 40px;
  z-index: 2;
  display: flex;
  justify-content: space-between;
}
.media-banner__title {
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.2;
  margin: 0;
  color: var(--color-text);
}
.media-banner__caption p {
  font-size: 18px;
}
.media-banner[data-grid-style="row"] .media-banner__caption {
  flex: 1;
  margin-right: 2rem;
}
.media-banner__cta-container {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
}
.media-banner__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.75rem 1.5rem;
  background-color: var(--color-primary);
  color: white;
  text-decoration: none;
  border-radius: 0.375rem;
  font-weight: 600;
  font-size: 1rem;
  transition: all 0.2s ease-in-out;
  min-width: 120px;
  background-color: #fff;
  color: #000;
  border: 1px solid #000;
}
.media-banner__cta:hover {
  background-color: black;
  color: white;
}
.media-banner__cta:focus {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
@media (max-width: 768px) {
  .media-banner__image-desktop {
    display: none;
  }
  .media-banner__image-mobile {
    display: block;
  }
  .media-banner__container {
    gap: 1rem;
  }
  .media-banner[data-grid-style="row"] .media-banner__container {
    flex-direction: column;
    text-align: center;
    align-items: center;
  }
  .media-banner[data-grid-style="row"] .media-banner__caption {
    margin-right: 0;
    margin-bottom: 1rem;
  }
  .media-banner[data-layout="boxed"] .media-banner__container {
    flex-direction: column;
    text-align: left;
    align-items: flex-start;
  }
  .media-banner[data-layout="boxed"] .media-banner__image {
    order: 1;
    width: 100%;
    height: auto;
    max-height: 300px;
    object-fit: cover;
  }
  .media-banner[data-layout="boxed"] .media-banner__content {
    position: relative;
    padding: 1.5rem 1rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    align-items: flex-start;
    order: 2;
  }
  .media-banner[data-layout="boxed"] .media-banner__content-text {
    text-align: left;
  }
  .media-banner[data-layout="boxed"] .media-banner__cta-container {
    justify-content: flex-start;
    align-items: flex-start;
  }
  .media-banner[data-layout="boxed"] .media-banner__title, .media-banner[data-layout="boxed"] .media-banner__caption {
    color: #000 !important;
  }
  .media-banner__title {
    font-size: 2rem;
  }
  .media-banner__caption {
    font-size: 1rem;
  }
  .media-banner__cta {
    padding: 0.625rem 1.25rem;
    font-size: 0.875rem;
  }
}
@media (max-width: 480px) {
  .media-banner__title {
    font-size: 1.75rem;
  }
  .media-banner__caption {
    font-size: 0.875rem;
  }
  .media-banner__cta {
    width: 100%;
    max-width: 280px;
  }
  .media-banner[data-layout="boxed"] .media-banner__content {
    padding: 1rem 0.75rem;
  }
}
.email-cta-section {
  padding: 0 0 4rem;
  padding-top: var(--padding-y, 4rem);
  padding-bottom: var(--padding-y, 4rem);
}
.email-cta-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 1rem;
}
.email-cta__pre-form {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 2rem;
}
.email-cta-content {
  flex: 1;
}
.email-cta-headline {
  font-size: 3.5rem;
  font-weight: 500;
  line-height: 1.1;
  margin: 0 0 1rem 0;
  font-family: "Nexa", "Work Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}
.email-cta-headline--success {
  text-align: center;
}
.email-cta-form {
  flex: 1;
}
.email-capture__form-wrapper {
  max-width: 100%;
  margin: 0 auto;
  overflow: hidden;
  display: flex;
  border-radius: 4px;
}
.email-capture__input {
  width: 100%;
  padding: 10px 10px 10px 15px;
  min-height: 48px;
  font-size: 18px;
  font-family: "Nexa", "Work Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  border: 1px solid #ccc;
  border-right: none;
  border-radius: 4px 0 0 4px;
  outline: none;
}
.email-capture__input:focus {
  outline: none;
  border-color: #000;
}
.email-capture__input:focus-visible {
  outline: none;
}
#email_signup {
  max-width: 100%;
  margin-bottom: 15px;
}
.klaviyo_submit_button {
  background-color: #000 !important;
  color: #fff;
  border: none;
  border-radius: 0 4px 4px 0;
  padding: 10px 15px;
  min-height: 48px;
  font-size: 16px;
  font-weight: 500;
  cursor: pointer;
}
.email-cta-caption {
  font-size: 1rem;
  line-height: 1.5;
  margin: 1rem 0 0 0;
  color: inherit;
  opacity: 0.8;
}
.email-cta__post-form {
  text-align: center;
}
@media (max-width: 768px) {
  .email-cta__pre-form {
    flex-direction: column;
    gap: 1.5rem;
    align-items: stretch;
  }
  .email-cta-content {
    order: 1;
    text-align: center;
  }
  .email-cta-form {
    order: 2;
  }
  .email-cta-headline {
    font-size: 2.5rem;
    margin-bottom: 1.5rem;
  }
  .email-capture__form-wrapper {
    flex-direction: row;
  }
  .email-capture__input {
    border-radius: 4px 0 0 4px;
    border-right: none;
  }
  .klaviyo_submit_button {
    border-radius: 0 4px 4px 0;
  }
  .email-cta-container {
    max-width: 90vw;
  }
}
.single-product-container {
  padding: 8rem 0 0;
}
.single-product-container .container {
  display: flex;
  gap: 2rem;
}
.single-product-container .product-images {
  flex: 1;
}
.single-product-container .product-info {
  flex: 1;
}
.product-info__inner {
  max-width: 550px;
  margin: 0 auto;
  padding: 0 40px;
}
.product-info__header h1 {
  color: rgb(0, 0, 0);
  margin: 0px;
  font-weight: 600;
  line-height: 1.5;
  font-size: 26px;
}
.product-info__header p {
  font-size: 21px;
  font-weight: 600;
  color: rgb(0, 0, 0);
}
.product-price {
  font-size: 21px;
  font-weight: 600;
  color: rgb(0, 0, 0);
}
.product-price--regular {
  font-size: 21px;
  font-weight: 600;
  color: rgb(0, 0, 0);
}
.product-price--sale {
  font-size: 21px;
  font-weight: 600;
  color: #dc3545;
}
.product-price--compare {
  font-size: 21px;
  font-weight: 600;
  color: #666;
  text-decoration: line-through;
  margin-left: 0.5rem;
}
.product-info__lead-copy {
  margin-top: 20px;
}
.product-info__final-sale {
  border: 1px solid #d3d5d7;
  display: inline-block;
  padding: 3px 10px;
  border-radius: 4px;
  margin-top: 5px;
  font-size: 17px;
}
.product-info .accordion {
  margin-top: 1rem;
}
.product-info .accordion-item {
  border: 1px solid rgba(0, 0, 0, 0.08);
  background: linear-gradient(135deg, #fff 0%, #fafafa 100%);
}
.product-info .accordion-body {
  padding-top: 1.5rem;
}
.product-info .accordion-body h3 {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 10px;
}
.product-info .accordion-body p, .product-info .accordion-body a, .product-info .accordion-body ul li {
  margin: 0 0 20px;
  font-size: 16px;
  color: rgba(0, 0, 0, 0.8);
}
.product-info .accordion-body a {
  color: #000;
  text-decoration: none;
}
.product-info .accordion-body ul li {
  list-style: disc;
  margin-left: 20px;
  margin-bottom: 10px;
}
.product-form {
  margin-top: 2rem;
}
.product-form__add-to-cart {
  width: 100%;
}
.add-to-cart__loading, .add-to-cart__success {
  display: none;
}
.product-form__add-to-cart .add-to-cart__button {
  width: 100%;
  padding: 1rem 2rem;
  background-color: #000;
  color: #fff;
  border: none;
  border-radius: 4px;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}
.product-form__add-to-cart .add-to-cart__button:hover:not(:disabled) {
  background-color: #333;
}
.product-form__add-to-cart .add-to-cart__button:disabled {
  background-color: #ccc;
  cursor: not-allowed;
}
.product-form__add-to-cart .add-to-cart__quantity {
  display: none;
}
.product-form__add-to-cart .quantity-input {
  width: 60px;
  text-align: center;
  padding: 0.5rem;
  border: 1px solid #ddd;
  border-radius: 4px;
}
.product-form__add-to-cart .quantity-btn {
  width: 40px;
  height: 40px;
  border: 1px solid #ddd;
  background: #fff;
  border-radius: 4px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
}
.product-form__add-to-cart .quantity-btn:hover {
  background-color: #f5f5f5;
}
@media (max-width: 768px) {
  .single-product-container {
    padding: 6rem 0 0;
  }
  .product-form {
    margin-top: 1rem;
  }
  .single-product-container .container {
    flex-direction: column;
    gap: 1rem;
  }
  .single-product-container .product-images {
    order: 1;
  }
  .single-product-container .product-info {
    order: 2;
  }
  .product-info__inner {
    padding: 0;
  }
  .product-info__header h1 {
    font-size: 22px;
  }
  .product-info__header p {
    font-size: 18px;
  }
  .product-price, .product-price--regular, .product-price--sale, .product-price--compare {
    font-size: 18px;
  }
}
.press-section {
  padding: 4rem 0;
}
.press-header {
  text-align: center;
}
.press-header--left {
  text-align: left;
}
.press-header--right {
  text-align: right;
}
.press-title {
  font-size: 2.5rem;
  font-weight: 700;
  margin-bottom: 1rem;
  color: var(--color-text);
}
.press-subtitle {
  font-size: 1.125rem;
  color: var(--color-text-secondary);
  max-width: 600px;
  margin: 0 auto;
}
.press-header--left .press-subtitle, .press-header--right .press-subtitle {
  margin: 0;
}
.press-content {
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 3rem;
  align-items: start;
}
.press-main {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
.press-item {
  border-bottom: 1px solid var(--color-border);
  padding-bottom: 3rem;
}
.press-item:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.press-item__grid {
  display: grid;
  grid-template-columns: 300px 1fr;
  gap: 2rem;
  align-items: start;
}
.press-item__image-column {
  flex-shrink: 0;
}
.press-item__image {
  width: 100%;
  height: 200px;
  object-fit: cover;
  border-radius: 8px;
}
.press-item__content-column {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.press-item__title {
  font-size: 1.5rem;
  font-weight: 600;
  color: var(--color-text);
  margin: 0;
}
.press-item__caption {
  font-size: 1rem;
  line-height: 1.6;
  color: var(--color-text-secondary);
  margin: 0;
}
.press-item__cta {
  display: inline-flex;
  align-items: center;
  padding: 0.75rem 1.5rem;
  background-color: #2a2a2a;
  color:rgb(255, 255, 255);
  text-decoration: none;
  border-radius: 6px;
  border-color: #000;
  font-size: 1rem;
  font-weight: 1000;
  transition: background-color 0.2s ease;
  align-self: flex-start;
}
.press-item__cta:hover {
  background-color:rgb(100, 100, 100);
}
.press-sidebar {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  position: sticky;
  top: 2rem;
}
.press-sidebar-cta {
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  transition: transform 0.2s ease;
}
.press-sidebar-cta:hover {
  transform: translateY(-2px);
}
.press-sidebar-cta__image {
  position: relative;
  width: 100%;
}
.press-sidebar-cta__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.press-sidebar-cta__link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.logo-grid__outer-container {
  border: 1px solid #ccc;
  border-radius: 8px;
  padding: 1rem;
}
.press-sidebar-logo-grid-title {
  font-size: 1.3rem;
  font-weight: 600;
  color: var(--color-text);
  margin-bottom: 1rem;
  text-align: center;
}
.press-sidebar .logo-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}
.press-sidebar .logo-grid .logo-item img {
  max-height: 40px;
  object-fit: contain;
}
@media (max-width: 1024px) {
  .press-content {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .press-sidebar {
    position: static;
    order: -1;
  }
  .press-item__grid {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
  .press-item__image-column {
    order: -1;
  }
}
@media (max-width: 768px) {
  .press-section {
    padding: 2rem 0;
  }
  .press-title {
    font-size: 2rem;
  }
  .press-item__title {
    font-size: 1.25rem;
  }
  .press-main {
    gap: 2rem;
  }
  .press-item {
    padding-bottom: 2rem;
  }
}
@media (max-width: 480px) {
  .press-title {
    font-size: 1.75rem;
  }
  .press-item__image {
    height: 150px;
  }
  .press-sidebar-cta__image {
    height: 150px;
  }
}
.services-section .container {
  padding: 4rem 4rem;
  margin: 0 auto 4rem;
}
.services-section .container {
  background-color: #000;
  border-radius: 20px;
}
.services-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--spacing-12);
  align-items: start;
}
.services-header {
  text-align: left;
  margin-bottom: 15px;
}
.services-title {
  font-size: 2rem;
  font-weight: 600;
  color: #fff;
  margin: 0;
  line-height: 1.2;
}
.services-body {
  text-align: left;
  margin-bottom: 25px;
}
.services-description {
  max-width: 500px;
  color: #fff;
}
.services-description p {
  margin: 0;
  font-size: 18px;
}
.services-description p:last-child {
  margin-bottom: 0;
}
.services-list {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-4);
}
.service-item {
  border: 1px solid #ccc;
  border-radius: 10px;
  padding: 1rem;
  text-align: left;
  transition: all 0.3s ease;
  color: #fff;
}
.service-item:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow-lg);
  border-color: var(--color-primary);
}
.service-name {
  font-size: var(--text-lg);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text);
  margin: 0;
}
.services-cta {
  text-align: left;
}
.services-cta-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1rem 2rem;
  background-color: #000;
  color: #fff;
  text-decoration: none;
  border-radius: 10px;
  font-weight: 600;
  font-size: 1.2rem;
  transition: all 0.3s ease;
  border: 2px solid #fff;
  line-height: 1;
}
.services-cta-button:hover {
  background-color: var(--color-primary-dark);
  transform: translateY(-1px);
  box-shadow: var(--shadow-md);
}
.services-cta-button:focus {
  outline: none;
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px var(--color-primary-alpha);
}
@media (max-width: 768px) {
  .services-layout {
    grid-template-columns: 1fr;
    gap: var(--spacing-8);
  }
  .services-title {
    font-size: var(--text-2xl);
  }
  .services-description {
    font-size: var(--text-base);
  }
  .service-item {
    padding: var(--spacing-4);
  }
  .service-name {
    font-size: var(--text-base);
  }
}
@media (max-width: 480px) {
  .services-section {
    padding: var(--spacing-8) 0;
  }
  .services-container {
    padding: 0 var(--spacing-4);
  }
  .services-header {
    margin-bottom: var(--spacing-6);
  }
  .services-body {
    margin-bottom: var(--spacing-8);
  }
  .services-list {
    margin-bottom: var(--spacing-8);
  }
}
[data-component="spacer"] {
  width: 100%;
  height: var(--spacer-height-mobile);
  display: block;
}
@media (min-width: 768px) {
  [data-component="spacer"] {
    height: var(--spacer-height-desktop);
  }
}
[data-component="spacer"] {
  flex-shrink: 0;
  flex-grow: 0;
}
.page-content {
  padding-top: 10rem;
  padding-bottom: 4rem;
}
.page-content__title {
  text-align: center;
  font-size: 32px;
  margin-bottom: 40px;
}
@media (min-width: 1200px) {
  .page-container.container {
    max-width: 1000px;
  }
}
.product-reviews {
  background-color: #000;
  padding: 40px 0;
  position: relative;
  margin-top: 40px;
}
.product-reviews__container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}
.product-reviews__title-wrapper {
  margin-bottom: 30px;
}
.product-reviews__title-container h4 {
  text-align: center;
  font-weight: bold;
  font-size: 17px;
  margin: 0;
  color: #fff;
}
.product-reviews__content {
  position: relative;
}
.product-reviews__reviews-container {
  max-width: 650px;
  margin: 0 auto;
}
.product-reviews__review-item {
  margin-bottom: 40px;
}
.product-reviews__review-inner {
  max-width: 650px;
  margin: 0 auto;
}
.product-reviews__review-title {
  margin-bottom: 10px;
}
.product-reviews__stars-container {
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  gap: 2px;
}
.product-reviews__stars-container svg {
  fill: #fff;
  stroke: #fff;
  flex-shrink: 0;
}
.product-reviews__review-title h4 {
  color: #fff;
  margin-bottom: 10px;
  font-size: 16px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.product-reviews__review-title h4 span {
  font-size: 13px;
  color: #ccc;
  margin-left: 10px;
  font-weight: normal;
}
.product-reviews__review-body p {
  color: #fff;
  margin-bottom: 10px;
  font-family: Helvetica Neue, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;
  font-size: 14px;
  line-height: 1.5;
}
.product-reviews__review-body p:last-child {
  margin-bottom: 0;
}
.product-reviews__review-body p strong {
  font-weight: bold;
}
.product-reviews__no-reviews-container {
  padding: 20px 0 70px;
  text-align: center;
}
.product-reviews__no-reviews-container h4 {
  color: #fff;
  margin: 0;
  text-align: center;
  font-size: 16px;
}
.product-reviews__more-reviews-container {
  text-align: center;
  margin-bottom: 50px;
}
.product-reviews__more-reviews-container button {
  max-width: 180px;
  width: 100%;
  font-size: 13px;
  font-weight: bold;
  text-transform: uppercase;
  color: #fff;
  background-color: transparent;
  border: 1px solid #fff;
  border-radius: 4px;
  padding: 7px 0;
  cursor: pointer;
  transition: all 0.25s ease;
}
.product-reviews__more-reviews-container button:hover {
  background-color: #fff;
  color: #000;
}
.product-reviews__button-container {
  text-align: center;
  position: absolute;
  bottom: 0;
  width: 100%;
}
.product-reviews__button-container button {
  -webkit-appearance: none;
  border: none;
  background-color: #fff;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 12px;
  padding: 20px;
  border: 1px solid #fff;
  line-height: 1;
  max-width: 180px;
  width: 100%;
  cursor: pointer;
  transition: all 0.25s ease;
}
.product-reviews__button-container button:hover {
  background-color: #000;
  color: #fff;
}
.product-reviews__button-container button:active, .product-reviews__button-container button:focus {
  background-color: #000;
  color: #fff;
  outline: 0;
}
@media (max-width: 768px) {
  .product-reviews {
    padding: 30px 0;
  }
  .product-reviews__container {
    padding: 0 15px;
  }
  .product-reviews__review-title h4 {
    flex-direction: column;
    align-items: flex-start;
  }
  .product-reviews__review-title h4 span {
    margin-left: 0;
    margin-top: 5px;
  }
  .product-reviews__button-container button {
    max-width: 160px;
    padding: 15px;
    font-size: 11px;
  }
}
.product-recommendations {
  padding: 0 0 80px;
}
.product-recommendations__container {
  max-width: 90vw;
  margin: 0 auto;
}
.product-recommendations__title-wrapper {
  text-align: center;
  margin-bottom: 30px;
}
.product-recommendations__title {
  font-size: 40px;
  font-weight: 600;
  margin: 0;
  color: #000;
}
.product-recommendations__grid {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.product-recommendations__item {
  flex: 0 0 calc(25% - 15px);
  display: flex;
}
.product-recommendations__item-inner {
  flex: 1;
}
.product-recommendations .product-card {
  background: white;
  border-radius: 8px;
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  height: 100%;
  display: flex;
  flex-direction: column;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.product-recommendations .product-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
}
.product-recommendations .product-card__image {
  position: relative;
  overflow: hidden;
}
.product-recommendations .product-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}
.product-recommendations .product-card:hover .product-card__image img {
  transform: scale(1.05);
}
.product-recommendations .product-card__content {
  padding: 1rem;
  flex: 1;
  display: flex;
  flex-direction: column;
}
.product-recommendations .product-card__title {
  margin: 0;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.4;
}
.product-recommendations .product-card__title a {
  color: #000;
  text-decoration: none;
  transition: color 0.2s ease;
}
.product-recommendations .product-card__title a:hover {
  color: #666;
}
.product-recommendations .product-card__variant {
  font-size: 0.875rem;
  color: #666;
  margin: 0.25rem 0;
  font-weight: 400;
}
.product-recommendations .product-card__price {
  margin-top: auto;
  font-weight: 600;
}
.product-recommendations .product-card__price--sale {
  color: #e74c3c;
}
.product-recommendations .product-card__price--compare {
  color: #999;
  text-decoration: line-through;
  font-weight: 400;
}
.product-recommendations__loading, .product-recommendations__no-recommendations {
  text-align: center;
  padding: 40px 20px;
  color: #666;
}
.product-recommendations__loading p, .product-recommendations__no-recommendations p {
  margin: 0;
  font-size: 16px;
}
@media (max-width: 1024px) {
  .product-recommendations__item {
    flex: 0 0 calc(50% - 10px);
  }
  .product-recommendations__title {
    font-size: 32px;
  }
}
@media (max-width: 768px) {
  .product-recommendations {
    padding: 0 0 60px;
  }
  .product-recommendations__container {
    max-width: 95vw;
  }
  .product-recommendations__title {
    font-size: 28px;
    margin-bottom: 20px;
  }
  .product-recommendations__grid {
    gap: 15px;
  }
  .product-recommendations__item {
    flex: 0 0 calc(50% - 7.5px);
  }
  .product-recommendations .product-card__content {
    padding: 0.75rem;
  }
  .product-recommendations .product-card__title {
    font-size: 0.9rem;
  }
}
@media (max-width: 480px) {
  .product-recommendations__item {
    flex: 0 0 100%;
  }
  .product-recommendations__title {
    font-size: 24px;
  }
  .product-recommendations .product-card__content {
    padding: 0.5rem;
  }
  .product-recommendations .product-card__title {
    font-size: 0.85rem;
  }
}
.faq-section {
  padding: 4rem 0;
  background: var(--color-background, #fff);
}
.faq-container {
  max-width: var(--container-max-width, 1200px);
  margin: 0 auto;
  padding: 0 var(--container-padding, 1rem);
}
.faq-header {
  text-align: center;
  margin-bottom: 3rem;
}
.faq-title {
  font-size: clamp(2rem, 5vw, 3rem);
  font-weight: 700;
  color: var(--color-text, #000);
  margin-bottom: 1rem;
  line-height: 1.2;
}
.faq-subtitle {
  font-size: 1.125rem;
  color: var(--color-text-secondary, #666);
  max-width: 600px;
  margin: 0 auto;
  line-height: 1.6;
}
.faq-content {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 3rem;
  align-items: start;
}
.faq-nav {
  position: sticky;
  top: 2rem;
}
.faq-nav-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.faq-nav-button {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 1rem 1.25rem;
  background: var(--color-background, #fff);
  border: 2px solid var(--color-border, #e5e5e5);
  border-radius: 12px;
  cursor: pointer;
  text-align: left;
  transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  font-weight: 500;
  color: var(--color-text, #000);
  position: relative;
  overflow: hidden;
}
.faq-nav-button::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: var(--color-primary, #000);
  opacity: 0;
  transition: opacity 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  z-index: 0;
}
.faq-nav-button:hover::before {
  opacity: 0.05;
}
.faq-nav-button:hover {
  border-color: var(--color-primary, #000);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.faq-nav-button--active {
  background: var(--color-primary, #000);
  border-color: var(--color-primary, #000);
  color: var(--color-background, #fff);
}
.faq-nav-button--active::before {
  opacity: 0;
}
.faq-nav-text {
  position: relative;
  z-index: 1;
  font-weight: 600;
  flex: 1;
  margin-right: 0.5rem;
}
.faq-nav-count {
  position: relative;
  z-index: 1;
  background: rgba(0, 0, 0, 0.1);
  color: inherit;
  padding: 0.25rem 0.5rem;
  border-radius: 6px;
  font-size: 0.875rem;
  font-weight: 600;
  min-width: 24px;
  text-align: center;
  flex-shrink: 0;
}
.faq-nav-button--active .faq-nav-count {
  background: rgba(255, 255, 255, 0.2);
}
.faq-categories {
  position: relative;
}
.faq-category {
  display: none;
  opacity: 0;
  transform: translateY(20px);
  transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.faq-category--active {
  display: block;
  opacity: 1;
  transform: translateY(0);
}
.faq-category-header {
  margin-bottom: 2rem;
  padding-bottom: 1.5rem;
  border-bottom: 2px solid var(--color-border, #e5e5e5);
}
.faq-category-title {
  font-size: 1.75rem;
  font-weight: 700;
  color: var(--color-text, #000);
  margin-bottom: 0.5rem;
}
.faq-category-description {
  font-size: 1.125rem;
  color: var(--color-text-secondary, #666);
  line-height: 1.6;
  margin: 0;
}
.faq-accordion {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.faq-answer-image {
  margin-top: 1rem;
  border-radius: 8px;
  overflow: hidden;
}
.faq-answer-image img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 8px;
}
@media (max-width: 1024px) {
  .faq-content {
    grid-template-columns: 1fr 1.5fr;
    gap: 2rem;
  }
}
@media (max-width: 768px) {
  .faq-section {
    padding: 2rem 0;
  }
  .faq-container {
    padding: 0 1rem;
  }
  .faq-content {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .faq-nav {
    position: static;
    margin-bottom: 1rem;
  }
  .faq-nav-list {
    flex-direction: row;
    overflow-x: auto;
    padding-bottom: 0.5rem;
    gap: 0.75rem;
    scrollbar-width: thin;
    scrollbar-color: var(--color-border, #e5e5e5) transparent;
  }
  .faq-nav-list::-webkit-scrollbar {
    height: 4px;
  }
  .faq-nav-list::-webkit-scrollbar-track {
    background: transparent;
  }
  .faq-nav-list::-webkit-scrollbar-thumb {
    background: var(--color-border, #e5e5e5);
    border-radius: 2px;
  }
  .faq-nav-list::-webkit-scrollbar-thumb:hover {
    background: var(--color-text-secondary, #666);
  }
  .faq-nav-item {
    flex-shrink: 0;
  }
  .faq-nav-button {
    white-space: nowrap;
    min-width: 180px;
    max-width: 200px;
    padding: 0.875rem 1rem;
  }
  .faq-nav-text {
    font-size: 0.875rem;
    margin-right: 0.375rem;
  }
  .faq-nav-count {
    font-size: 0.75rem;
    padding: 0.125rem 0.375rem;
    min-width: 20px;
  }
  .faq-header {
    margin-bottom: 2rem;
  }
  .faq-title {
    font-size: clamp(1.75rem, 4vw, 2.5rem);
  }
  .faq-subtitle {
    font-size: 1rem;
  }
  .faq-category-title {
    font-size: 1.5rem;
  }
  .faq-category-description {
    font-size: 1rem;
  }
  .faq-answer-image {
    margin-top: 0.875rem;
  }
}
@media (max-width: 480px) {
  .faq-section {
    padding: 1.5rem 0;
  }
  .faq-container {
    padding: 0 0.75rem;
  }
  .faq-nav-button {
    min-width: 140px;
    max-width: 160px;
    padding: 0.75rem 0.875rem;
  }
  .faq-nav-text {
    font-size: 0.8125rem;
    margin-right: 0.25rem;
  }
  .faq-nav-count {
    font-size: 0.6875rem;
    padding: 0.125rem 0.25rem;
    min-width: 18px;
  }
  .faq-header {
    margin-bottom: 1.5rem;
  }
  .faq-title {
    font-size: clamp(1.5rem, 3.5vw, 2rem);
  }
  .faq-subtitle {
    font-size: 0.9375rem;
  }
  .faq-category-title {
    font-size: 1.375rem;
  }
  .faq-category-description {
    font-size: 0.9375rem;
  }
  .faq-category-header {
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
  }
  .faq-accordion {
    gap: 0.75rem;
  }
  .faq-answer-image {
    margin-top: 0.75rem;
    border-radius: 6px;
  }
  .faq-answer-image img {
    border-radius: 6px;
  }
}
@media (max-width: 360px) {
  .faq-nav-button {
    min-width: 120px;
    max-width: 140px;
    padding: 0.625rem 0.75rem;
  }
  .faq-nav-text {
    font-size: 0.75rem;
  }
  .faq-nav-count {
    font-size: 0.625rem;
    min-width: 16px;
  }
  .faq-answer-image {
    margin-top: 0.625rem;
    border-radius: 4px;
  }
  .faq-answer-image img {
    border-radius: 4px;
  }
}
.faq-nav-button:focus-visible {
  outline: 2px solid var(--color-primary, #000);
  outline-offset: 2px;
}
.faq-category[data-active="false"] {
  display: none;
}
.faq-category[data-active="true"] {
  display: block;
  animation: fadeInUp 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.faq-section[data-loading="true"] {
  opacity: 0.6;
  pointer-events: none;
}
@media print {
  .faq-nav {
    display: none;
  }
  .faq-content {
    grid-template-columns: 1fr;
  }
  .faq-category {
    display: block !important;
    opacity: 1 !important;
    transform: none !important;
    page-break-inside: avoid;
  }
  .accordion-content[data-state="collapsed"] {
    display: block !important;
    max-height: none !important;
    opacity: 1 !important;
  }
}
.friends-of-foray-form {
  width: 100%;
}
.friends-of-foray-form__banner {
  width: 100%;
}
.friends-of-foray-form__banner-image {
  width: 100%;
  height: auto;
  display: block;
}
.friends-of-foray-form__banner-image--desktop {
  display: none;
}
.friends-of-foray-form__banner-image--mobile {
  display: block;
}
.friends-of-foray-form__container {
  padding: 0 0 4rem;
  max-width: 90vw;
  margin: 0 auto;
}
.friends-of-foray-form__content {
  flex: 1;
}
.friends-of-foray-form__title {
  text-align: center;
  margin: 0 0 20px;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 19px;
  font-weight: bold;
}
.friends-of-foray-form__description {
  text-align: center;
  font-weight: 500;
  color: #777;
  margin-bottom: 30px;
}
.friends-of-foray-form__form {
  width: 100%;
}
.friends-of-foray-form__input-group {
  display: flex;
  margin-bottom: 10px;
}
.friends-of-foray-form__input-group--split {
  gap: 20px;
}
.friends-of-foray-form__label {
  flex: 1;
  display: flex;
}
.friends-of-foray-form__input {
  width: 100%;
  padding: 10px 15px;
  font-size: 14px;
  font-family: inherit;
  border: 1px solid #ccc;
  background-color: #fff;
  transition: border-color 0.25s ease;
}
.friends-of-foray-form__input:focus {
  outline: none;
  border-color: #000;
}
.friends-of-foray-form__input::placeholder {
  color: #999;
}
.friends-of-foray-form__submit {
  background-color: #000;
  color: #fff;
  font-family: inherit;
  border: 1px solid #000;
  text-transform: uppercase;
  font-size: 13px;
  font-weight: bold;
  letter-spacing: 1px;
  padding: 10px 15px;
  min-width: 110px;
  margin-top: 10px;
  cursor: pointer;
  transition: all 0.25s ease;
}
.friends-of-foray-form__submit:hover {
  background-color: #fff;
  color: #000;
}
.friends-of-foray-form__submit:focus {
  outline: none;
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.2);
}
@media (min-width: 768px) {
  .friends-of-foray-form__container {
    max-width: 800px;
  }
  .friends-of-foray-form__banner-image--desktop {
    display: block;
  }
  .friends-of-foray-form__banner-image--mobile {
    display: none;
  }
  .friends-of-foray-form__input-group--split {
    flex-direction: row;
  }
  .friends-of-foray-form__input-group--split .friends-of-foray-form__label:first-child {
    margin-right: 20px;
  }
}
@media (max-width: 767px) {
  .friends-of-foray-form__input-group--split {
    flex-direction: column;
    gap: 10px;
  }
  .friends-of-foray-form__input-group--split .friends-of-foray-form__label:first-child {
    margin-right: 0;
  }
}
.friends-of-foray-form__input[data-error="true"] {
  border-color: #e74c3c;
}
.friends-of-foray-form__input[data-error="true"]:focus {
  border-color: #e74c3c;
  box-shadow: 0 0 0 2px rgba(231, 76, 60, 0.2);
}
.friends-of-foray-form[data-loading="true"] {
  opacity: 0.6;
  pointer-events: none;
}
.friends-of-foray-form[data-loading="true"] .friends-of-foray-form__submit {
  position: relative;
}
.friends-of-foray-form[data-loading="true"] .friends-of-foray-form__submit::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 16px;
  height: 16px;
  margin: -8px 0 0 -8px;
  border: 2px solid transparent;
  border-top: 2px solid currentColor;
  border-radius: 50%;
  animation: spin 1s linear infinite;
}
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.sourcing {
  width: 100%;
}
.sourcing__container {
  padding: 2.5rem 0;
  max-width: 90vw;
  margin: 0 auto;
}
.sourcing__content {
  display: flex;
  flex-direction: column;
  gap: 4rem;
}
.sourcing__text-content {
  flex: 1;
  margin-bottom: 0;
}
.sourcing__text-inner {
  max-width: 90%;
}
.sourcing__title {
  margin: 0 0 1.5rem;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 1.5rem;
  font-weight: bold;
}
.sourcing__content-text {
  font-size: 1rem;
  line-height: 1.6;
}
.sourcing__content-text p {
  margin-bottom: 1rem;
}
.sourcing__content-text p:last-child {
  margin-bottom: 0;
}
.sourcing__form-container {
  flex: 1;
}
.sourcing__form-inner {
  max-width: 90%;
}
.sourcing__form-title {
  margin: 0 0 0.625rem;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 0.875rem;
  font-weight: bold;
}
.sourcing__success-message {
  padding: 1rem;
  background-color: #f8f9fa;
  border: 1px solid #dee2e6;
  border-radius: 4px;
  color: #155724;
  font-size: 1rem;
  line-height: 1.5;
}
.sourcing__form {
  width: 100%;
}
.sourcing__input-group {
  display: flex;
  margin-bottom: 0.625rem;
}
.sourcing__input-group--split {
  gap: 1.25rem;
}
.sourcing__label {
  flex: 1;
  display: flex;
}
.sourcing__input, .sourcing__textarea {
  width: 100%;
  padding: 0.625rem 0.9375rem;
  font-size: 0.875rem;
  font-family: inherit;
  border: 1px solid #ccc;
  background-color: #fff;
  transition: border-color 0.25s ease;
}
.sourcing__textarea {
  resize: vertical;
  min-height: 120px;
}
.sourcing__input:focus, .sourcing__textarea:focus {
  outline: none;
  border-color: #000;
}
.sourcing__input::placeholder, .sourcing__textarea::placeholder {
  color: #999;
}
.sourcing__submit {
  background-color: #000;
  color: #fff;
  font-family: inherit;
  border: 1px solid #000;
  text-transform: uppercase;
  font-size: 0.8125rem;
  font-weight: bold;
  letter-spacing: 1px;
  padding: 0.3125rem 0.625rem;
  min-width: 110px;
  cursor: pointer;
  transition: all 0.25s ease;
}
.sourcing__submit:hover {
  background-color: #fff;
  color: #000;
}
.sourcing__submit:focus {
  outline: none;
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.2);
}
@media (min-width: 768px) {
  .sourcing__container {
    max-width: 1200px;
  }
  .sourcing__content {
    flex-direction: row;
    gap: 3rem;
  }
  .sourcing__text-content {
    margin-bottom: 0;
  }
  .sourcing__input-group--split {
    flex-direction: row;
  }
  .sourcing__input-group--split .sourcing__label:first-child {
    margin-right: 1.25rem;
  }
}
@media (max-width: 767px) {
  .sourcing__input-group--split {
    flex-direction: column;
    gap: 0.625rem;
  }
  .sourcing__input-group--split .sourcing__label:first-child {
    margin-right: 0;
  }
  .sourcing__text-inner, .sourcing__form-inner {
    max-width: 100%;
  }
}
.sourcing__input[data-error="true"], .sourcing__textarea[data-error="true"] {
  border-color: #e74c3c;
}
.sourcing__input[data-error="true"]:focus, .sourcing__textarea[data-error="true"]:focus {
  border-color: #e74c3c;
  box-shadow: 0 0 0 2px rgba(231, 76, 60, 0.2);
}
.sourcing[data-loading="true"] {
  opacity: 0.6;
  pointer-events: none;
}
.sourcing[data-loading="true"] .sourcing__submit {
  position: relative;
}
.sourcing[data-loading="true"] .sourcing__submit::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 16px;
  height: 16px;
  margin: -8px 0 0 -8px;
  border: 2px solid transparent;
  border-top: 2px solid currentColor;
  border-radius: 50%;
  animation: spin 1s linear infinite;
}
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.product-card {
  background: white;
  border-radius: 8px;
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.product-card:hover {
  transform: translateY(-4px);
}
.product-card__image {
  position: relative;
  overflow: hidden;
}
.product-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  min-height: 450px;
  transition: transform 0.3s ease, opacity 0.3s ease;
}
.product-card__image-main {
  position: relative;
  z-index: 2;
}
.product-card__image-hover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
  opacity: 0;
  transition: opacity 0.5s ease;
  pointer-events: none;
  object-fit: cover;
  min-height: 450px;
}
.product-card:hover .product-card__image-main {
  transform: scale(1.05);
}
.product-card:hover .product-card__image-hover {
  opacity: 1;
}
.collection-products {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  margin-bottom: 4rem;
}
.card-style-grid {
  box-shadow: none;
  border-radius: 0;
  margin-bottom: 20px;
}
.card-style-grid:hover {
  transform: none;
}
.product-card__quick-shop {
  position: absolute;
  bottom: 1rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  opacity: 1;
  transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
  width: 100%;
  max-width: 90%;
  margin: 0 auto;
}
.product-card:hover .product-card__quick-shop {
  opacity: 1;
  visibility: visible;
}
.quick-shop__button {
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(8px);
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 6px;
  padding: 0.75rem 1.5rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: #000;
  cursor: pointer;
  transition: all 0.2s ease;
  white-space: nowrap;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  position: relative;
  overflow: hidden;
  min-width: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.quick-shop__button:hover {
  background: rgba(255, 255, 255, 1);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
  min-width: 250px;
  width: auto;
}
.quick-shop__button:active {
  transform: translateY(0);
}
.quick-shop__text {
  transition: opacity 0.2s ease;
}
.quick-shop__button:hover .quick-shop__text {
  opacity: 0;
}
.quick-shop__button--view-product:hover .quick-shop__text {
  opacity: 1;
}
.quick-shop__sizes {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.25rem;
  padding: 0.5rem;
  opacity: 0;
  transition: opacity 0.2s ease;
  pointer-events: none;
}
.quick-shop__button:hover .quick-shop__sizes {
  opacity: 1;
  pointer-events: auto;
}
.quick-shop__size-option {
  background: #fff;
  color: #000;
  border: 1px solid #000;
  border-radius: 4px;
  padding: 0.25rem 0.25rem 0.1rem;
  font-size: 11px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
  height: 25px;
  min-width: 30px;
  text-align: center;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
  transition: all 0.2s ease;
}
.quick-shop__size-option:hover:not(:disabled) {
  background: #000;
  color: #fff;
  transform: translateY(-1px);
}
.quick-shop__size-option:active:not(:disabled) {
  transform: translateY(0);
}
.quick-shop__size-option.unavailable {
  background: #adb5bd;
  color: #6c757d;
  cursor: not-allowed;
  text-decoration: line-through;
  opacity: 0.6;
  position: relative;
}
.quick-shop__size-option.unavailable::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  height: 1px;
  background: #6c757d;
  transform: rotate(-45deg);
}
.quick-shop__size-option.unavailable:hover {
  background: #adb5bd;
  transform: none;
  opacity: 0.6;
  cursor: not-allowed;
}
.quick-shop__size-option.unavailable:focus {
  outline: 2px solid #dc3545;
  outline-offset: 2px;
}
.quick-shop__size-option.loading {
  background: #6c757d;
  cursor: not-allowed;
}
.quick-shop__size-option.loading:hover {
  background: #6c757d;
  transform: none;
}
.product-card__content {
  padding: 1rem;
  flex-grow: 1;
}
.product-card__title {
  font-size: 13px;
  font-weight: 600;
  margin: 0;
  line-height: 1.3;
}
.product-card__title a {
  color: #333;
  text-decoration: none;
  transition: color 0.3s ease;
}
.product-card__title a:hover {
  color: #007bff;
}
.product-card__price {
  margin-top: auto;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
  margin-bottom: 1rem;
}
.product-card__price--regular {
  font-size: 13px;
  color: #777;
  font-weight: 600;
}
.product-card__price--sale {
  font-size: 13px;
  font-weight: 700;
  color: #dc3545;
}
.product-card__price--compare {
  font-size: 13px;
  color: #666;
  text-decoration: line-through;
  font-weight: 600;
}
.product-card__variants {
  margin-top: auto;
}
.variant-group {
  margin-bottom: 0.75rem;
}
.variant-group:last-child {
  margin-bottom: 0;
}
.variant-label {
  font-size: 0.75rem;
  font-weight: 600;
  color: #666;
  margin-bottom: 0.5rem;
  display: block;
}
.variant-options {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.variant-option {
  background: #f8f9fa;
  border: 1px solid #e9ecef;
  border-radius: 4px;
  padding: 0.5rem 0.75rem;
  font-size: 0.75rem;
  font-weight: 500;
  color: #495057;
  cursor: pointer;
  transition: all 0.2s ease;
}
.variant-option.color-option {
  width: 1.5rem;
  height: 1.5rem;
  padding: 0;
  border-radius: 50%;
  position: relative;
  border: 1px solid #000;
}
.variant-option.color-option::before {
  content: "";
  position: absolute;
  top: -2px;
  left: -2px;
  right: -2px;
  bottom: -2px;
  border: 2px solid transparent;
  border-radius: 50%;
  transition: border-color 0.2s ease;
}
.variant-option.length-option {
  padding: 0.25rem 0.5rem;
  font-size: 0.75rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.025em;
  border-radius: 4px;
  min-width: 2.5rem;
  text-align: center;
  transition: all 0.2s ease;
}
.variant-option.length-option:hover {
  background: #e9ecef;
  border-color: #adb5bd;
  transform: translateY(-1px);
}
.variant-option.length-option.selected {
  background: #000;
  border-color: #000;
  color: white;
}
.variant-option.length-option[data-active="true"] {
  background: #000;
  border-color: #000;
  color: white;
}
.variant-option.length-option.unavailable {
  opacity: 0.5;
  cursor: not-allowed;
  background: #f8f9fa;
  color: #adb5bd;
}
.product-data {
  display: none;
}
.placeholder-svg {
  width: 100%;
  height: 100%;
  min-height: 450px;
  background: #f8f9fa;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #adb5bd;
}
.variant-option:focus {
  outline: 2px solid #007bff;
  outline-offset: 2px;
}
.product-card__image-final-sale {
  position: absolute;
  right: 15px;
  top: 15px;
  z-index: 100;
  background: #000;
  color: #fff;
  padding: 4px 7px 0px;
  border-radius: 10px;
  text-transform: uppercase;
  font-size: 11px;
  font-weight: bold;
}
@media (prefers-reduced-motion: reduce) {
  .product-card, .product-card__image img, .product-card__image-main, .product-card__image-hover, .product-card__quick-shop, .quick-shop__button, .quick-shop__text, .quick-shop__sizes, .quick-shop__size-option, .variant-option {
    transition: none;
  }
}
@media (hover: none) and (pointer: coarse) {
  .product-card__image-hover {
    opacity: 0;
  }
  .product-card:active .product-card__image-hover {
    opacity: 1;
  }
}
@media (max-width: 768px) {
  .product-card__content {
    padding: 0.75rem 0;
  }
  .product-card__title {
    font-size: 13px;
  }
  .product-card__price--regular, .product-card__price--sale {
    font-size: 13px;
  }
  .variant-option {
    padding: 0.375rem 0.5rem;
    font-size: 0.7rem;
  }
  .variant-option.color-option {
    width: 1.75rem;
    height: 1.75rem;
  }
  .variant-option.length-option {
    padding: 0.2rem 0.4rem;
    font-size: 0.65rem;
    min-width: 2rem;
  }
  .product-card__quick-shop {
    bottom: 0.5rem;
  }
  .quick-shop__button {
    padding: 0.5rem 1rem;
    font-size: 12px;
    text-transform: uppercase;
    min-width: 100px;
  }
  .quick-shop__button:hover {
    min-width: 160px;
  }
  .quick-shop__sizes {
    gap: 0.125rem;
    padding: 0.375rem;
  }
  .quick-shop__size-option {
    padding: 0.375rem 0.5rem;
    font-size: 0.7rem;
    min-width: 1.5rem;
  }
}
@media (max-width: 480px) {
  .quick-shop__button {
    min-width: 90px;
  }
  .quick-shop__button:hover {
    min-width: 140px;
  }
  .quick-shop__sizes {
    gap: 0.125rem;
  }
  .quick-shop__size-option {
    padding: 0.25rem 0.375rem;
    font-size: 0.65rem;
    min-width: 1.25rem;
  }
}
@media (min-width: 992px) {
  .product-card {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  }
  .product-card:hover {
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
  }
  .product-card__quick-shop {
    opacity: 0;
    visibility: hidden;
  }
}
@media (min-width: 1200px) {
  .collection-products {
    border-left: 1px solid #e0e0e0;
    border-top: 1px solid #e0e0e0;
  }
  .card-style-grid {
    border-bottom: 1px solid #e0e0e0;
    border-right: 1px solid #e0e0e0;
  }
}
[data-component="cart"] {
  position: fixed;
  top: 0;
  right: 0;
  width: 100%;
  height: 100vh;
  z-index: 1000;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
[data-component="cart"][data-active="true"] {
  opacity: 1;
  visibility: visible;
}
[data-cart-overlay] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(4px);
  cursor: pointer;
}
[data-cart-drawer] {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  max-width: 550px;
  height: 100%;
  background: white;
  transform: translateX(100%);
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  display: flex;
  flex-direction: column;
  box-shadow: -4px 0 20px rgba(0, 0, 0, 0.15);
}
[data-component="cart"][data-active="true"] [data-cart-drawer] {
  transform: translateX(0);
}
[data-cart-header] {
  padding: 1.5rem;
  border-bottom: 1px solid #e5e7eb;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: white;
  position: sticky;
  top: 0;
  z-index: 10;
}
[data-cart-title] {
  font-size: 1.25rem;
  font-weight: 600;
  margin: 0;
  color: #111827;
}
[data-close="cart"] {
  background: none;
  border: none;
  padding: 0.5rem;
  cursor: pointer;
  border-radius: 0.375rem;
  transition: background-color 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
}
[data-close="cart"]:hover {
  background-color: #f3f4f6;
}
[data-close="cart"]::before {
  content: "×";
  font-size: 1.5rem;
  line-height: 1;
  color: #6b7280;
}
[data-cart-content] {
  flex: 1;
  overflow-y: auto;
  padding: 1rem;
  display: flex;
  flex-direction: column;
}
[data-cart-items] {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
[data-cart-item] {
  display: flex;
  gap: 1rem;
  align-items: center;
  padding: 1rem;
  border: 1px solid #e5e7eb;
  margin-bottom: 20px;
  border-radius: 0.5rem;
  background: white;
  transition: box-shadow 0.2s ease;
}
[data-cart-item]:hover {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
[data-cart-item__image] {
  flex-shrink: 0;
  width: 80px;
  height: 80px;
  border-radius: 0.375rem;
  overflow: hidden;
  background: #f9fafb;
}
.cart-item__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  max-width: 135px;
  min-width: 135px;
}
.cart-item__content {
  flex: 1;
}
.cart-item__title {
  font-size: 16px;
  margin-bottom: 10px;
}
.cart-item__price {
  font-size: 14px;
  font-weight: 600;
  margin: 10px 0;
  color: #000;
}
.cart-item__option {
  font-size: 12px;
  font-weight: 600;
  color: #777;
  margin: 0;
  line-height: 1.4;
}
.cart-item__option span {
  color: rgb(74, 74, 74);
}
.cart-item--unified {
  border-left: 3px solid #3b82f6;
  background-color: #f8fafc;
}
.cart-item--unified .cart-item__additional-product {
  margin-top: 0.75rem;
  padding-top: 0.75rem;
  border-top: 1px solid #e5e7eb;
}
.cart-item__additional-title {
  font-size: 0.875rem;
  font-weight: 600;
  color: #3b82f6;
  margin: 0 0 0.5rem 0;
}
.cart-item__option--additional {
  font-size: 0.8125rem;
  color: #6b7280;
  margin: 0.25rem 0;
}
.cart-item__option--additional span {
  font-weight: 500;
  color: #9ca3af;
}
.cart-item__quantity-display {
  font-size: 0.875rem;
  font-weight: 600;
  color: #374151;
  min-width: 2rem;
  text-align: center;
}
.add-to-cart__additional-info {
  margin-top: 0.5rem;
}
.add-to-cart__additional-text {
  font-size: 0.875rem;
  color: var(--color-text-secondary, #6b7280);
  margin: 0;
  text-align: center;
  font-style: italic;
}
.cart-item__controls {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.cart-item__quantity {
  font-size: 12px;
  font-weight: 600;
  color: #777;
  margin: 0;
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.cart-item__quantity span {
  color: rgb(74, 74, 74);
}
[data-quantity-btn] {
  background: transparent;
  border: none;
  border-radius: 0.25rem;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-weight: 600;
  transition: all 0.2s ease;
  opacity: 1;
}
[data-quantity-btn] svg {
  width: 1.5rem;
  height: 1.5rem;
  stroke-width: 1;
}
[data-quantity-btn]:hover {
  opacity: 0.7;
}
[data-quantity-btn]:active {
  transform: scale(0.95);
}
[data-quantity-input] {
  width: 2rem;
  height: 2rem;
  text-align: center;
  border: 1px solid #d1d5db;
  border-radius: 0.25rem;
  font-size: 13px;
  font-weight: 500;
}
[data-quantity-input]:focus {
  outline: none;
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}
.cart-item__remove-button {
  background-color: transparent;
  border: 1px solid rgb(0, 0, 0);
  font-size: 10px;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 1px;
  padding: 5px 5px 3px;
  line-height: 1;
  border-radius: 4px;
}
.cart-item__remove-button:hover {
  background-color: rgb(0, 0, 0);
  color: #fff;
}
.cart-item__remove svg {
  width: 1.3rem;
  height: 1.3rem;
  stroke-width: 1;
  position: relative;
  top: 3px;
}
[data-cart-empty] {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 3rem 1rem;
  text-align: center;
  color: #6b7280;
}
[data-cart-empty]::before {
  content: "🛒";
  font-size: 3rem;
  margin-bottom: 1rem;
}
[data-cart-empty__title] {
  font-size: 1.125rem;
  font-weight: 500;
  margin: 0 0 0.5rem 0;
  color: #374151;
}
[data-cart-empty__text] {
  font-size: 0.875rem;
  margin: 0;
  line-height: 1.5;
}
[data-cart-footer] {
  padding: 1.5rem;
  border-top: 1px solid #e5e7eb;
  background: white;
  position: sticky;
  bottom: 0;
}
[data-cart-summary] {
  margin-bottom: 1rem;
}
[data-cart-summary__row] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.5rem;
}
[data-cart-summary__row]:last-child {
  margin-bottom: 0;
  font-weight: 600;
  font-size: 1.125rem;
  color: #111827;
  border-top: 1px solid #e5e7eb;
  padding-top: 0.5rem;
}
[data-cart-summary__label] {
  color: #6b7280;
  font-size: 0.875rem;
}
[data-cart-summary__value] {
  font-weight: 500;
  color: #111827;
}
[data-cart-actions] {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
[data-cart-checkout] {
  background: #000;
  color: white;
  border: none;
  border-radius: 0.5rem;
  padding: 1rem;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.2s ease;
  text-decoration: none;
  text-align: center;
  display: block;
}
[data-cart-checkout]:hover {
  background: #333;
}
[data-cart-checkout]:active {
  transform: translateY(1px);
}
[data-remove-all="cart"] {
  background: none;
  border: 1px solid #dc2626;
  color: #dc2626;
  border-radius: 0.5rem;
  padding: 0.75rem;
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
}
[data-remove-all="cart"]:hover {
  background: #dc2626;
  color: white;
}
[data-component="cart"][data-updating="true"] {
  pointer-events: none;
}
[data-component="cart"][data-updating="true"]::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2rem;
  height: 2rem;
  border: 2px solid #e5e7eb;
  border-top: 2px solid #3b82f6;
  border-radius: 50%;
  animation: spin 1s linear infinite;
  z-index: 1001;
}
@keyframes spin {
  0% {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  100% {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}
[data-component="cart"][data-has-items="false"] [data-cart-items] {
  display: none;
}
[data-component="cart"][data-has-items="false"] [data-cart-empty] {
  display: flex;
}
[data-component="cart"][data-has-items="true"] [data-cart-empty] {
  display: none;
}
body[data-cart-open] {
  overflow: hidden;
}
@media (max-width: 768px) {
  [data-cart-drawer] {
    max-width: 100%;
  }
  [data-cart-header] {
    padding: 1rem;
  }
  [data-cart-content] {
    padding: 0.75rem;
  }
  [data-cart-footer] {
    padding: 1rem;
  }
  [data-cart-item] {
    padding: 0.75rem;
  }
  [data-cart-item__image] {
    width: 60px;
    height: 60px;
  }
}
@media (max-width: 480px) {
  [data-cart-item__title] {
    font-size: 0.8rem;
  }
  [data-quantity-btn] {
    width: 1.75rem;
    height: 1.75rem;
  }
  [data-quantity-input] {
    width: 2.5rem;
    height: 1.75rem;
  }
}
[data-component="cart"]:focus-within {
  outline: none;
}
[data-component="cart"] *:focus {
  outline: 2px solid #3b82f6;
  outline-offset: 2px;
}
@media (prefers-contrast: high) {
  [data-cart-drawer] {
    border-left: 2px solid #000;
  }
  [data-cart-item] {
    border: 2px solid #000;
  }
  [data-quantity-btn] {
    border: 2px solid #000;
  }
}
@media (prefers-reduced-motion: reduce) {
  [data-component="cart"], [data-cart-drawer], [data-cart-item], [data-quantity-btn] {
    transition: none;
  }
  [data-component="cart"][data-updating="true"]::after {
    animation: none;
  }
}
.cart-item__final-sale {
  color: red;
  font-weight: bold;
  text-transform: uppercase;
  font-size: 11px;
  margin-top: -5px;
  margin-bottom: 5px;
}
.cart-trigger {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 1rem;
  background: none;
  border: 1px solid #d1d5db;
  border-radius: 0.375rem;
  color: #374151;
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
  text-decoration: none;
  position: relative;
}
.cart-trigger:hover {
  background: #f3f4f6;
  border-color: #9ca3af;
  color: #111827;
}
.cart-trigger:active {
  transform: translateY(1px);
}
.cart-trigger:focus {
  outline: none;
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}
.cart-trigger svg {
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
}
.cart-trigger__text {
  white-space: nowrap;
}
.cart-trigger__count {
  position: absolute;
  top: -0.25rem;
  right: -0.25rem;
  background: #dc2626;
  color: white;
  font-size: 0.75rem;
  font-weight: 600;
  min-width: 1.25rem;
  height: 1.25rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 0.25rem;
  line-height: 1;
}
.cart-trigger--icon-only {
  padding: 0.5rem;
  border-radius: 50%;
  width: 2.5rem;
  height: 2.5rem;
  justify-content: center;
}
.cart-trigger--icon-only .cart-trigger__text {
  display: none;
}
.cart-trigger--compact {
  padding: 0.375rem 0.75rem;
  font-size: 0.8rem;
}
.cart-trigger--compact svg {
  width: 1rem;
  height: 1rem;
}
.cart-trigger--primary {
  background: #059669;
  border-color: #059669;
  color: white;
}
.cart-trigger--primary:hover {
  background: #047857;
  border-color: #047857;
  color: white;
}
.cart-trigger[data-loading="true"] {
  pointer-events: none;
  opacity: 0.6;
}
.cart-trigger[data-loading="true"]::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1rem;
  height: 1rem;
  border: 2px solid transparent;
  border-top: 2px solid currentColor;
  border-radius: 50%;
  animation: spin 1s linear infinite;
  transform: translate(-50%, -50%);
}
@keyframes spin {
  0% {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  100% {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}
@media (max-width: 768px) {
  .cart-trigger {
    padding: 0.375rem 0.75rem;
    font-size: 0.8rem;
  }
  .cart-trigger svg {
    width: 1.125rem;
    height: 1.125rem;
  }
  .cart-trigger__count {
    min-width: 1.125rem;
    height: 1.125rem;
    font-size: 0.7rem;
  }
}
@media (max-width: 480px) {
  .cart-trigger {
    padding: 0.25rem 0.5rem;
  }
  .cart-trigger--icon-only {
    width: 2.25rem;
    height: 2.25rem;
  }
}
@media (prefers-contrast: high) {
  .cart-trigger {
    border: 2px solid #000;
  }
  .cart-trigger__count {
    border: 2px solid #000;
  }
}
@media (prefers-reduced-motion: reduce) {
  .cart-trigger, .cart-trigger:active {
    transition: none;
    transform: none;
  }
  .cart-trigger[data-loading="true"]::after {
    animation: none;
  }
}
.cart-addons {
  margin-top: 2rem;
  padding-top: 2rem;
  border-top: 1px solid #e5e5e5;
}
.cart-addons__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1.5rem;
}
.cart-addons__title {
  font-size: 1.25rem;
  font-weight: 600;
  margin: 0;
  color: #333;
}
.cart-addons__slider {
  position: relative;
}
.cart-product-card {
  display: flex;
  flex-direction: column;
  background: white;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
  overflow: hidden;
  transition: all 0.3s ease;
  height: 100%;
}
.cart-product-card:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  transform: translateY(-2px);
}
.cart-product-card__image {
  position: relative;
  aspect-ratio: 1;
  overflow: hidden;
}
.cart-product-card__image-main {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}
.cart-product-card:hover .cart-product-card__image-main {
  transform: scale(1.05);
}
.cart-product-card__content {
  padding: 1rem;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
.cart-product-card__title {
  font-size: 0.875rem;
  font-weight: 500;
  margin: 0 0 0.5rem 0;
  line-height: 1.3;
}
.cart-product-card__title a {
  color: #333;
  text-decoration: none;
}
.cart-product-card__title a:hover {
  color: #666;
}
.cart-product-card__price {
  margin-bottom: 1rem;
  font-size: 0.875rem;
}
.cart-product-card__price--sale {
  color: #e53e3e;
  font-weight: 600;
}
.cart-product-card__price--compare {
  color: #666;
  text-decoration: line-through;
  margin-left: 0.5rem;
  font-size: 0.75rem;
}
.cart-product-card__price--regular {
  color: #333;
  font-weight: 600;
}
.cart-product-card .variant-selector {
  margin-bottom: 1rem;
  max-width: 100%;
  overflow: hidden;
}
.cart-product-card .variant-selector__option {
  margin-bottom: 0.75rem;
}
.cart-product-card .variant-selector__label {
  font-size: 0.75rem;
  font-weight: 500;
  color: #666;
  margin-bottom: 0.5rem;
  display: block;
}
.cart-product-card .variant-selector__current-value {
  color: #333;
  font-weight: 600;
}
.cart-product-card .variant-selector__color-options {
  display: flex;
  gap: 0.25rem;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  -ms-overflow-style: none;
  padding: 5px;
  max-width: 100%;
  flex-wrap: nowrap;
}
.cart-product-card .variant-selector__color-options::-webkit-scrollbar {
  display: none;
}
.cart-product-card .variant-selector__color-option {
  width: 24px;
  height: 24px;
  border: 1px solid #ccc;
  border-radius: 50%;
  cursor: pointer;
  padding: 0;
  position: relative;
  transition: all 0.2s ease;
  flex-shrink: 0;
}
.cart-product-card .variant-selector__color-option:hover {
  transform: scale(1.1);
}
.cart-product-card .variant-selector__color-option[data-active="true"] {
  border-color: #333;
}
.cart-product-card .variant-selector__color-option[data-unavailable="true"] {
  opacity: 0.3;
  cursor: not-allowed;
}
.cart-product-card .variant-selector__color-swatch {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  border: none;
  display: block;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.cart-product-card .variant-selector__color-name {
  display: none;
}
.cart-product-card .variant-selector__size-options {
  display: flex;
  gap: 0.25rem;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  -ms-overflow-style: none;
  padding-bottom: 2px;
  max-width: 100%;
  flex-wrap: nowrap;
}
.cart-product-card .variant-selector__size-options::-webkit-scrollbar {
  display: none;
}
.cart-product-card .variant-selector__size-option {
  padding: 0.25rem 0.5rem;
  border: 1px solid #ddd;
  background: white;
  border-radius: 4px;
  font-size: 0.75rem;
  cursor: pointer;
  transition: all 0.2s ease;
  min-width: 32px;
  text-align: center;
  flex-shrink: 0;
}
.cart-product-card .variant-selector__size-option:hover {
  border-color: #333;
}
.cart-product-card .variant-selector__size-option[data-active="true"] {
  background: #333;
  color: white;
  border-color: #333;
}
.cart-product-card .variant-selector__dropdown {
  width: 100%;
  padding: 0.5rem;
  border: 1px solid #ddd;
  border-radius: 4px;
  font-size: 0.875rem;
  background: white;
}
.cart-product-card__add-to-cart {
  margin-top: auto;
  padding: 0.75rem 1rem;
  background: #333;
  color: white;
  border: none;
  border-radius: 4px;
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.cart-product-card__add-to-cart:hover:not(:disabled) {
  background: #555;
  transform: translateY(-1px);
}
.cart-product-card__add-to-cart:disabled {
  background: #ccc;
  cursor: not-allowed;
  transform: none;
}
.cart-addons .embla__slide {
  flex: 0 0 calc(320px - 1rem);
  min-width: 0;
  padding: 0 0.5rem;
}
.cart-addons .embla__controls {
  position: relative;
  bottom: auto;
  right: auto;
  left: auto;
  transform: none;
  margin: 0;
}
.cart-addons .embla__controls .embla__buttons {
  display: flex;
  justify-content: flex-end;
  gap: 5px;
}
.cart-addons .embla__button {
  width: 32px;
  height: 32px;
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid #ddd;
}
.cart-addons .embla__dots {
  display: none;
}
@media (max-width: 768px) {
  .cart-addons {
    margin-top: 1.5rem;
    padding-top: 1.5rem;
  }
  .cart-addons__header {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
  }
  .cart-addons__title {
    font-size: 1.125rem;
    margin: 0;
  }
  .cart-addons .embla__slide {
    flex: 0 0 calc(50% - 0.5rem);
    padding: 0 0.25rem;
  }
  .cart-product-card__content {
    padding: 0.75rem;
  }
  .cart-product-card__title {
    font-size: 0.8rem;
  }
  .cart-product-card__price {
    font-size: 0.8rem;
  }
  .cart-product-card__add-to-cart {
    padding: 0.5rem 0.75rem;
    font-size: 0.8rem;
  }
  .cart-addons .embla__button {
    width: 28px;
    height: 28px;
  }
  .cart-addons .embla__dot {
    width: 16px;
    height: 2px;
  }
}
@media (max-width: 480px) {
  .cart-addons .embla__slide {
    flex: 0 0 calc(100% - 0.5rem);
  }
}
.header-search-form {
  position: absolute;
  top: calc(100% - 1px);
  left: 0;
  right: 0;
  background: #fff;
  border-bottom: 1px solid #e5e7eb;
  border-radius: 0 0 50px 50px;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 10px 0px;
  z-index: 1002;
  transform: translateY(-100%);
  opacity: 0;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  max-height: 80vh;
  overflow-y: auto;
}
.header-search-form.search-form-open {
  transform: translateY(0);
  opacity: 1;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 10px 0px;
}
html.frozen-scroll, body.frozen-scroll {
  overflow: hidden !important;
  position: fixed !important;
  width: 100% !important;
  height: 100% !important;
}
.search-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  z-index: 999;
  opacity: 0;
  transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  cursor: pointer;
}
.search-overlay.search-overlay-active {
  opacity: 1;
}
.header[data-search-open="true"] {
  border-radius: 40px 40px 0 0;
}
.search-form-container {
  margin: 0 auto;
  padding: 20px;
  min-height: 70vh;
}
.header-search-empty-state {
  margin-top: 40px;
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
}
.header-search-results {
  margin-top: 20px;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
.search-results-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 24px;
  padding-bottom: 16px;
  border-bottom: 1px solid #e5e7eb;
}
.search-results-title {
  font-size: 20px;
  font-weight: 600;
  color: #111827;
  margin: 0;
}
.search-results-meta {
  display: flex;
  align-items: center;
  gap: 16px;
}
.search-results-count {
  font-size: 14px;
  color: #6b7280;
}
.search-results-clear {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 6px 12px;
  background: #f3f4f6;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  font-size: 12px;
  color: #374151;
  cursor: pointer;
  transition: all 0.2s ease;
}
.search-results-clear:hover {
  background: #e5e7eb;
  border-color: #9ca3af;
}
.search-results-content {
  display: grid;
  grid-template-columns: 250px 1fr;
  gap: 32px;
}
.search-results-filters {
  background: #f9fafb;
  border-radius: 8px;
  padding: 20px;
  height: fit-content;
}
.search-filter-group {
  margin-bottom: 24px;
}
.search-filter-group:last-child {
  margin-bottom: 0;
}
.search-filter-title {
  font-size: 14px;
  font-weight: 600;
  color: #374151;
  margin: 0 0 12px 0;
}
.search-filter-options {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.search-filter-option {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: #6b7280;
  cursor: pointer;
}
.search-filter-option input[type="checkbox"] {
  width: 16px;
  height: 16px;
  accent-color: #000;
}
.search-sort-select {
  width: 100%;
  padding: 8px 12px;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  font-size: 14px;
  color: #374151;
  background: #fff;
}
.search-results-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.search-result-item {
  display: flex;
  gap: 16px;
  padding: 16px;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  transition: all 0.2s ease;
  cursor: pointer;
  text-decoration: none;
  color: inherit;
}
.search-result-item:hover {
  border-color: #000;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  transform: translateY(-2px);
}
.search-result-image {
  width: 80px;
  height: 80px;
  border-radius: 6px;
  overflow: hidden;
  flex-shrink: 0;
  background: #f3f4f6;
}
.search-result-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.search-result-content {
  flex: 1;
  min-width: 0;
}
.search-result-title {
  font-size: 16px;
  font-weight: 500;
  color: #111827;
  margin: 0 0 4px 0;
  line-height: 1.4;
}
.search-result-title mark {
  background-color: #fef3c7;
  color: #92400e;
  padding: 0 2px;
  border-radius: 2px;
}
.search-result-meta {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 8px;
}
.search-result-type {
  font-size: 12px;
  color: #6b7280;
  text-transform: uppercase;
  font-weight: 500;
  display: none;
}
.search-result-price {
  font-size: 14px;
  font-weight: 600;
  color: #000;
}
.search-result-description {
  font-size: 14px;
  color: #6b7280;
  line-height: 1.5;
  margin: 0;
}
.search-results-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
  margin-top: 32px;
  padding-top: 24px;
  border-top: 1px solid #e5e7eb;
}
.search-pagination-prev, .search-pagination-next {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 8px 16px;
  background: #fff;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  font-size: 14px;
  color: #374151;
  cursor: pointer;
  transition: all 0.2s ease;
}
.search-pagination-prev:hover, .search-pagination-next:hover {
  background: #f9fafb;
  border-color: #9ca3af;
}
.search-pagination-prev:disabled, .search-pagination-next:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.search-pagination-info {
  font-size: 14px;
  color: #6b7280;
}
@media (max-width: 768px) {
  .search-results-content {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .search-results-filters {
    order: 2;
  }
  .search-results-list {
    order: 1;
  }
  .search-result-item {
    flex-direction: column;
    gap: 12px;
  }
  .search-result-image {
    width: 100%;
    height: 120px;
  }
}
.search-loading, .search-error, .search-no-results {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 60px 20px;
  text-align: center;
}
.search-loading-spinner {
  width: 32px;
  height: 32px;
  border: 3px solid #f3f4f6;
  border-top: 3px solid #000;
  border-radius: 50%;
  animation: spin 1s linear infinite;
  margin-bottom: 16px;
}
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.search-loading p, .search-error p, .search-no-results p {
  color: #6b7280;
  margin: 0;
}
.search-error-icon, .search-no-results-icon {
  color: #6b7280;
  margin-bottom: 16px;
}
.search-error h3, .search-no-results h3 {
  color: #111827;
  margin: 0 0 8px 0;
  font-size: 18px;
  font-weight: 600;
}
.search-retry-button {
  margin-top: 16px;
  padding: 8px 16px;
  background: #000;
  color: #fff;
  border: none;
  border-radius: 6px;
  font-size: 14px;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.search-retry-button:hover {
  background: #333;
}
.search-result-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: #f3f4f6;
  color: #9ca3af;
}
.search-result-compare-price {
  text-decoration: line-through;
  color: #6b7280;
  margin-right: 8px;
}
.header-search-section-title {
  font-size: 18px;
  font-weight: 600;
  margin: 0 0 16px 0;
  color: #111827;
}
.header-search-quick-links {
  margin-bottom: 40px;
}
.header-quick-links-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 16px;
}
.header-quick-link-item {
  display: flex;
  align-items: center;
  padding: 16px;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  text-decoration: none;
  color: inherit;
  transition: all 0.2s ease;
}
.header-quick-link-item:hover {
  border-color: var(--color-primary, #000);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  transform: translateY(-2px);
}
.header-quick-link-icon {
  width: 40px;
  height: 40px;
  background: #f3f4f6;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 12px;
  color: var(--color-primary, #000);
}
.header-quick-link-content h5 {
  margin: 0 0 2px 0;
  font-size: 14px;
  font-weight: 600;
  color: #111827;
}
.header-quick-link-content p {
  margin: 0;
  font-size: 12px;
  color: #6b7280;
}
.header-search-categories {
  margin-bottom: 40px;
}
.header-categories-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 16px;
}
.header-category-item {
  text-decoration: none;
  color: inherit;
  transition: transform 0.2s ease;
  text-align: center;
}
.header-category-item:hover {
  transform: translateY(-4px);
}
.header-category-image {
  aspect-ratio: 1;
  border-radius: 8px;
  overflow: hidden;
  margin-bottom: 8px;
  background: #f3f4f6;
}
.header-category-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.2s ease;
}
.header-category-item:hover .header-category-image img {
  transform: scale(1.05);
}
.header-category-item h5 {
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  color: #111827;
}
.header-search-featured-cta {
  background: #f9fafb;
  border-radius: 12px;
  padding: 24px;
}
.header-featured-cta-content {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 20px;
  align-items: center;
}
.header-featured-cta-image {
  width: 120px;
  height: 120px;
  border-radius: 8px;
  overflow: hidden;
  background: #e5e7eb;
  flex-shrink: 0;
}
.header-featured-cta-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.header-featured-cta-text h4 {
  margin: 0 0 8px 0;
  font-size: 18px;
  font-weight: 600;
  color: #111827;
}
.header-featured-cta-text p {
  margin: 0 0 16px 0;
  font-size: 14px;
  color: #6b7280;
  line-height: 1.5;
}
.header-featured-cta-button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  background: var(--color-primary, #000);
  color: #fff;
  text-decoration: none;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 600;
  transition: all 0.2s ease;
}
.header-featured-cta-button:hover {
  background: #333;
  transform: translateY(-1px);
}
.search-autocomplete {
  position: relative;
  width: 100%;
  max-width: 600px;
}
.search-form {
  position: relative;
}
.search-input-wrapper {
  display: flex;
  align-items: center;
  background: #fff;
  border: 2px solid #e5e7eb;
  border-radius: 8px;
  overflow: hidden;
  transition: border-color 0.2s ease;
}
.search-input-wrapper:focus-within {
  border-color: var(--color-primary, #000);
}
.search-input-prefix, .search-input-suffix {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 12px;
  color: #6b7280;
}
.search-input {
  flex: 1;
  border: none;
  outline: none;
  padding: 12px 0;
  font-size: 16px;
  background: transparent;
}
.search-input::placeholder {
  color: #9ca3af;
}
.search-submit {
  background: none;
  border: none;
  cursor: pointer;
  padding: 8px;
  color: #6b7280;
  transition: color 0.2s ease;
}
.search-submit:hover {
  color: var(--color-primary, #000);
}
.inline-search-results {
  background: #f9fafb;
  border-bottom: 1px solid #e5e7eb;
  margin-bottom: 40px;
}
.search-results-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 20px;
}
.search-suggestions {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-top: none;
  border-radius: 0 0 8px 8px;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1);
  z-index: 1003;
  max-height: 400px;
  overflow-y: auto;
}
.suggestions-list {
  padding: 8px 0;
}
.suggestion-item {
  display: flex;
  align-items: center;
  padding: 12px 16px;
  cursor: pointer;
  transition: background-color 0.2s ease;
  border: none;
  background: none;
  width: 100%;
  text-align: left;
}
.suggestion-item:hover, .suggestion-item.selected {
  background-color: #f9fafb;
}
.suggestion-image {
  width: 40px;
  height: 40px;
  object-fit: cover;
  border-radius: 4px;
  margin-right: 12px;
}
.suggestion-content {
  flex: 1;
  min-width: 0;
}
.suggestion-title {
  font-weight: 500;
  color: #111827;
  margin-bottom: 4px;
  line-height: 1.4;
}
.suggestion-title mark {
  background-color: #fef3c7;
  color: #92400e;
  padding: 0 2px;
  border-radius: 2px;
}
.suggestion-vendor {
  font-size: 14px;
  color: #6b7280;
  margin-bottom: 2px;
}
.suggestion-price {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-primary, #000);
}
.search-results {
  max-width: 1200px;
  margin: 0 auto;
  padding: 20px;
}
.search-results-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 24px;
  gap: 16px;
}
.search-box {
  flex: 1;
  max-width: 400px;
}
.sort-by {
  min-width: 200px;
}
.search-results-content {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 32px;
}
.search-filters {
  background: #f9fafb;
  border-radius: 8px;
  padding: 20px;
  height: fit-content;
}
.filters-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
  padding-bottom: 12px;
  border-bottom: 1px solid #e5e7eb;
}
.filters-header h3 {
  margin: 0;
  font-size: 18px;
  font-weight: 600;
}
.clear-filters {
  background: none;
  border: none;
  color: #6b7280;
  font-size: 14px;
  cursor: pointer;
  text-decoration: underline;
}
.clear-filters:hover {
  color: var(--color-primary, #000);
}
.filter-section {
  margin-bottom: 24px;
}
.filter-section h4 {
  margin: 0 0 12px 0;
  font-size: 16px;
  font-weight: 500;
  color: #374151;
}
.ais-SearchBox {
  width: 100%;
}
.ais-SearchBox-form {
  display: flex;
  align-items: center;
  background: #fff;
  border: 2px solid #e5e7eb;
  border-radius: 8px;
  overflow: hidden;
}
.ais-SearchBox-input {
  flex: 1;
  border: none;
  outline: none;
  padding: 12px 16px;
  font-size: 16px;
}
.ais-SearchBox-submit, .ais-SearchBox-reset {
  background: none;
  border: none;
  padding: 12px;
  cursor: pointer;
  color: #6b7280;
}
.ais-SearchBox-submit:hover, .ais-SearchBox-reset:hover {
  color: var(--color-primary, #000);
}
.ais-SortBy {
  width: 100%;
}
.ais-SortBy-select {
  width: 100%;
  padding: 8px 12px;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  background: #fff;
  font-size: 14px;
}
.hits {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 24px;
}
.search-hit {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  overflow: hidden;
  transition: box-shadow 0.2s ease;
}
.search-hit:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.search-hit-image {
  aspect-ratio: 1;
  overflow: hidden;
}
.search-hit-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.2s ease;
}
.search-hit:hover .search-hit-image img {
  transform: scale(1.05);
}
.search-hit-content {
  padding: 16px;
}
.search-hit-title {
  margin: 0 0 8px 0;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
}
.search-hit-title a {
  color: #111827;
  text-decoration: none;
}
.search-hit-title a:hover {
  color: var(--color-primary, #000);
}
.search-hit-vendor {
  margin: 0 0 8px 0;
  font-size: 14px;
  color: #6b7280;
}
.search-hit-price {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
}
.search-hit-current-price {
  font-weight: 600;
  color: var(--color-primary, #000);
}
.search-hit-compare-price {
  font-size: 14px;
  color: #6b7280;
  text-decoration: line-through;
}
.search-hit-description {
  margin: 0;
  font-size: 14px;
  color: #6b7280;
  line-height: 1.5;
}
.search-empty {
  text-align: center;
  padding: 60px 20px;
}
.search-empty-icon {
  color: #9ca3af;
  margin-bottom: 24px;
}
.search-empty h3 {
  margin: 0 0 12px 0;
  font-size: 24px;
  font-weight: 600;
  color: #111827;
}
.search-empty p {
  margin: 0 0 32px 0;
  font-size: 16px;
  color: #6b7280;
}
.search-empty-suggestions {
  text-align: left;
  max-width: 400px;
  margin: 0 auto;
}
.search-empty-suggestions h4 {
  margin: 0 0 12px 0;
  font-size: 16px;
  font-weight: 500;
  color: #374151;
}
.search-empty-suggestions ul {
  margin: 0;
  padding-left: 20px;
  color: #6b7280;
}
.search-empty-suggestions li {
  margin-bottom: 8px;
}
.pagination {
  margin-top: 40px;
  display: flex;
  justify-content: center;
}
.ais-Pagination {
  display: flex;
  align-items: center;
  gap: 8px;
}
.ais-Pagination-item {
  list-style: none;
}
.ais-Pagination-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  text-decoration: none;
  color: #374151;
  font-weight: 500;
  transition: all 0.2s ease;
}
.ais-Pagination-link:hover {
  background-color: #f9fafb;
  border-color: #9ca3af;
}
.ais-Pagination-item--selected .ais-Pagination-link {
  background-color: var(--color-primary, #000);
  border-color: var(--color-primary, #000);
  color: #fff;
}
.ais-Pagination-item--disabled .ais-Pagination-link {
  opacity: 0.5;
  cursor: not-allowed;
}
.ais-RefinementList {
  font-size: 14px;
}
.ais-RefinementList-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.ais-RefinementList-item {
  margin-bottom: 8px;
}
.ais-RefinementList-label {
  display: flex;
  align-items: center;
  cursor: pointer;
  padding: 4px 0;
}
.ais-RefinementList-checkbox {
  margin-right: 8px;
}
.ais-RefinementList-count {
  margin-left: auto;
  background: #e5e7eb;
  color: #374151;
  padding: 2px 6px;
  border-radius: 12px;
  font-size: 12px;
  font-weight: 500;
}
.ais-RefinementList-showMore {
  background: none;
  border: none;
  color: var(--color-primary, #000);
  font-size: 14px;
  cursor: pointer;
  text-decoration: underline;
  margin-top: 8px;
}
.ais-RangeInput {
  display: flex;
  align-items: center;
  gap: 8px;
}
.ais-RangeInput-input {
  width: 80px;
  padding: 6px 8px;
  border: 1px solid #d1d5db;
  border-radius: 4px;
  font-size: 14px;
}
.ais-RangeInput-submit {
  background: var(--color-primary, #000);
  color: #fff;
  border: none;
  padding: 6px 12px;
  border-radius: 4px;
  font-size: 14px;
  cursor: pointer;
}
.ais-RangeInput-submit:hover {
  opacity: 0.9;
}
@media (max-width: 768px) {
  .search-results-content {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .search-filters {
    order: 2;
  }
  .search-results-main {
    order: 1;
  }
  .hits {
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 16px;
  }
  .search-results-header {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }
  .search-box {
    max-width: none;
  }
  .sort-by {
    min-width: auto;
  }
  .header-search-form {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    transform: translateY(-100%);
    border-radius: 0;
  }
  .header-search-form.search-form-open {
    transform: translateY(0);
  }
  .search-form-container {
    padding: 16px;
  }
  .header-search-form {
    border-radius: 0 0 20px 20px;
  }
  .header-search-empty-state {
    margin-top: 20px;
    padding: 0 16px;
  }
  .header-quick-links-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }
  .header-quick-link-item {
    padding: 12px;
  }
  .header-quick-link-icon {
    width: 32px;
    height: 32px;
    margin-right: 8px;
  }
  .header-quick-link-content h5 {
    font-size: 13px;
  }
  .header-quick-link-content p {
    font-size: 11px;
  }
  .header-categories-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
  }
  .header-category-item h5 {
    font-size: 12px;
  }
  .header-search-featured-cta {
    padding: 16px;
  }
  .header-featured-cta-content {
    grid-template-columns: 1fr;
    gap: 16px;
    text-align: center;
  }
  .header-featured-cta-image {
    width: 80px;
    height: 80px;
    margin: 0 auto;
  }
  .header-featured-cta-text h4 {
    font-size: 16px;
  }
  .header-featured-cta-text p {
    font-size: 13px;
  }
  .header-search-section-title {
    font-size: 16px;
    margin-bottom: 12px;
  }
  .header-search-quick-links, .header-search-categories {
    margin-bottom: 24px;
  }
}
@media (max-width: 480px) {
  .header-quick-links-grid {
    grid-template-columns: 1fr;
  }
  .header-categories-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .header-search-empty-state {
    padding: 0 12px;
  }
}
.enhanced-search-autocomplete {
  position: relative;
  width: 100%;
}
.enhanced-search-form {
  position: relative;
}
.enhanced-search-input-wrapper {
  display: flex;
  align-items: center;
  background: #fff;
  border: 2px solid #e5e7eb;
  border-radius: 8px;
  overflow: hidden;
  transition: border-color 0.2s ease;
}
.enhanced-search-input-wrapper:focus-within {
  border-color: var(--color-primary, #000);
}
.enhanced-search-input-prefix, .enhanced-search-input-suffix {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 12px;
  color: #6b7280;
}
.enhanced-search-input {
  flex: 1;
  border: none;
  outline: none;
  padding: 12px 0;
  font-size: 16px;
  background: transparent;
}
.enhanced-search-input::placeholder {
  color: #9ca3af;
}
.enhanced-search-submit {
  background: none;
  border: none;
  cursor: pointer;
  padding: 8px;
  color: #6b7280;
  transition: color 0.2s ease;
}
.enhanced-search-submit:hover {
  color: var(--color-primary, #000);
}
.enhanced-search-suggestions {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-top: none;
  border-radius: 0 0 8px 8px;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1);
  z-index: 1003;
  max-height: 500px;
  overflow-y: auto;
}
.enhanced-suggestions-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 16px;
  border-bottom: 1px solid #f3f4f6;
  background: #f9fafb;
}
.enhanced-suggestions-header h4 {
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  color: #374151;
}
.enhanced-suggestions-count {
  font-size: 12px;
  color: #6b7280;
  background: #e5e7eb;
  padding: 2px 8px;
  border-radius: 12px;
}
.enhanced-suggestions-list {
  padding: 8px 0;
}
.enhanced-suggestion-item {
  display: flex;
  align-items: center;
  padding: 12px 16px;
  cursor: pointer;
  transition: background-color 0.2s ease;
  border: none;
  background: none;
  width: 100%;
  text-align: left;
  gap: 12px;
}
.enhanced-suggestion-item:hover, .enhanced-suggestion-item.selected {
  background-color: #f9fafb;
}
.enhanced-suggestion-image {
  width: 48px;
  height: 48px;
  border-radius: 6px;
  overflow: hidden;
  flex-shrink: 0;
  background: #f3f4f6;
  display: flex;
  align-items: center;
  justify-content: center;
}
.enhanced-suggestion-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.enhanced-suggestion-placeholder {
  color: #9ca3af;
}
.enhanced-suggestion-content {
  flex: 1;
  min-width: 0;
}
.enhanced-suggestion-title {
  font-weight: 500;
  color: #111827;
  margin-bottom: 4px;
  line-height: 1.4;
  font-size: 14px;
}
.enhanced-suggestion-title mark {
  background-color: #fef3c7;
  color: #92400e;
  padding: 0 2px;
  border-radius: 2px;
}
.enhanced-suggestion-vendor {
  font-size: 12px;
  color: #6b7280;
  margin-bottom: 2px;
}
.enhanced-suggestion-type {
  font-size: 12px;
  color: #6b7280;
  margin-bottom: 4px;
  text-transform: capitalize;
}
.enhanced-suggestion-price {
  display: flex;
  align-items: center;
  gap: 6px;
}
.enhanced-suggestion-current-price {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-primary, #000);
}
.enhanced-suggestion-compare-price {
  font-size: 12px;
  color: #6b7280;
  text-decoration: line-through;
}
.enhanced-suggestion-arrow {
  color: #9ca3af;
  flex-shrink: 0;
}
.enhanced-suggestions-footer {
  padding: 12px 16px;
  border-top: 1px solid #f3f4f6;
  background: #f9fafb;
  text-align: center;
}
.enhanced-view-all-results {
  background: var(--color-primary, #000);
  color: #fff;
  border: none;
  padding: 8px 16px;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.enhanced-view-all-results:hover {
  background: #333;
}
@media (max-width: 768px) {
  .enhanced-search-suggestions {
    max-height: 400px;
  }
  .enhanced-suggestion-item {
    padding: 10px 12px;
    gap: 10px;
  }
  .enhanced-suggestion-image {
    width: 40px;
    height: 40px;
  }
  .enhanced-suggestion-title {
    font-size: 13px;
  }
  .enhanced-suggestion-vendor, .enhanced-suggestion-type {
    font-size: 11px;
  }
  .enhanced-suggestion-current-price {
    font-size: 13px;
  }
  .enhanced-suggestions-header {
    padding: 10px 12px;
  }
  .enhanced-suggestions-header h4 {
    font-size: 13px;
  }
  .enhanced-suggestions-footer {
    padding: 10px 12px;
  }
  .enhanced-view-all-results {
    padding: 6px 12px;
    font-size: 13px;
  }
}
@media (max-width: 480px) {
  .enhanced-search-suggestions {
    max-height: 350px;
  }
  .enhanced-suggestion-item {
    padding: 8px 10px;
    gap: 8px;
  }
  .enhanced-suggestion-image {
    width: 36px;
    height: 36px;
  }
  .enhanced-suggestion-title {
    font-size: 12px;
  }
  .enhanced-suggestion-vendor, .enhanced-suggestion-type {
    font-size: 10px;
  }
  .enhanced-suggestion-current-price {
    font-size: 12px;
  }
}
.custom-search-widget {
  position: relative;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}
.custom-search-form {
  position: relative;
}
.custom-search-input-wrapper {
  display: flex;
  align-items: center;
  background: #fff;
  border: 2px solid #e5e7eb;
  border-radius: 8px;
  overflow: hidden;
  transition: border-color 0.2s ease;
}
.custom-search-input-wrapper:focus-within {
  border-color: var(--color-primary, #000);
}
.custom-search-input-prefix, .custom-search-input-suffix {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 12px;
  color: #6b7280;
}
.custom-search-input {
  flex: 1;
  border: none;
  outline: none;
  padding: 12px 0;
  font-size: 16px;
  background: transparent;
}
.custom-search-input::placeholder {
  color: #9ca3af;
}
.custom-search-submit {
  background: none;
  border: none;
  cursor: pointer;
  padding: 8px;
  color: #6b7280;
  transition: color 0.2s ease;
}
.custom-search-submit:hover {
  color: var(--color-primary, #000);
}
.custom-search-empty-state {
  margin-left: auto;
  margin-right: auto;
  margin-top: 20px;
}
.custom-search-widget[data-has-query="true"] .custom-search-layout {
  display: none !important;
}
.custom-search-layout {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 40px;
  align-items: start;
  margin-top: 20px;
}
.custom-search-section-title {
  font-size: 18px;
  font-weight: 600;
  margin: 0 0 16px 0;
  color: #111827;
}
.custom-search-collections {
  background: #fff;
  border-radius: 8px;
  padding: 20px;
  border: 1px solid #e5e7eb;
}
.custom-collections-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.custom-collections-list li {
  margin-bottom: 8px;
}
.custom-collections-list a {
  display: block;
  padding: 8px 12px;
  color: #374151;
  text-decoration: none;
  border-radius: 6px;
  transition: all 0.2s ease;
  font-size: 14px;
}
.custom-collections-list a:hover {
  background: #f3f4f6;
  color: var(--color-primary, #000);
  transform: translateX(4px);
}
.custom-search-categories {
  background: #fff;
  border-radius: 8px;
  padding: 20px;
  border: 1px solid #e5e7eb;
}
.custom-categories-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}
.custom-category-group {
  display: flex;
  flex-direction: column;
}
.custom-category-title {
  font-size: 16px;
  font-weight: 600;
  margin: 0 0 12px 0;
  color: #111827;
  padding-bottom: 8px;
  border-bottom: 2px solid #e5e7eb;
}
.custom-category-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.custom-category-list li {
  margin-bottom: 6px;
}
.custom-category-list a {
  display: block;
  padding: 6px 8px;
  color: #6b7280;
  text-decoration: none;
  border-radius: 4px;
  transition: all 0.2s ease;
  font-size: 13px;
}
.custom-category-list a:hover {
  background: #f3f4f6;
  color: var(--color-primary, #000);
  transform: translateX(2px);
}
.custom-search-cta {
  background: #f9fafb;
  border-radius: 12px;
  padding: 24px;
  border: 1px solid #e5e7eb;
}
.custom-cta-content {
  display: flex;
  flex-direction: column;
  gap: 16px;
  text-align: center;
}
.custom-cta-image {
  width: 100%;
  aspect-ratio: 1;
  border-radius: 8px;
  overflow: hidden;
  background: #e5e7eb;
}
.custom-cta-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.custom-cta-text h4 {
  margin: 0 0 8px 0;
  font-size: 18px;
  font-weight: 600;
  color: #111827;
}
.custom-cta-text p {
  margin: 0 0 16px 0;
  font-size: 14px;
  color: #6b7280;
  line-height: 1.5;
}
.custom-cta-button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 20px;
  background: var(--color-primary, #000);
  color: #fff;
  text-decoration: none;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 600;
  transition: all 0.2s ease;
}
.custom-cta-button:hover {
  background: var(--color-primary, #000);
  color: #fff;
  transform: translateY(-1px);
}
}
.custom-search-suggestions {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-top: none;
  border-radius: 0 0 8px 8px;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1);
  z-index: 1003;
  max-height: 500px;
  overflow-y: auto;
}
.custom-suggestions-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 16px;
  border-bottom: 1px solid #f3f4f6;
  background: #f9fafb;
}
.custom-suggestions-header h4 {
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  color: #374151;
}
.custom-suggestions-count {
  font-size: 12px;
  color: #6b7280;
  background: #e5e7eb;
  padding: 2px 8px;
  border-radius: 12px;
}
.custom-suggestions-list {
  padding: 8px 0;
}
.custom-suggestion-item {
  display: flex;
  align-items: center;
  padding: 12px 16px;
  cursor: pointer;
  transition: background-color 0.2s ease;
  border: none;
  background: none;
  width: 100%;
  text-align: left;
  gap: 12px;
  text-decoration: none;
  color: inherit;
}
.custom-suggestion-item:hover, .custom-suggestion-item.selected {
  background-color: #f9fafb;
}
.custom-suggestion-image {
  width: 48px;
  height: 48px;
  border-radius: 6px;
  overflow: hidden;
  flex-shrink: 0;
  background: #f3f4f6;
  display: flex;
  align-items: center;
  justify-content: center;
}
.custom-suggestion-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.custom-suggestion-placeholder {
  color: #9ca3af;
}
.custom-suggestion-content {
  flex: 1;
  min-width: 0;
}
.custom-suggestion-title {
  font-weight: 500;
  color: #111827;
  margin-bottom: 4px;
  line-height: 1.4;
  font-size: 14px;
}
.custom-suggestion-title mark {
  background-color: #fef3c7;
  color: #92400e;
  padding: 0 2px;
  border-radius: 2px;
}
.custom-suggestion-vendor {
  font-size: 12px;
  color: #6b7280;
  margin-bottom: 2px;
}
.custom-suggestion-type {
  font-size: 12px;
  color: #6b7280;
  margin-bottom: 4px;
  text-transform: capitalize;
}
.custom-suggestion-price {
  display: flex;
  align-items: center;
  gap: 6px;
}
.custom-suggestion-current-price {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-primary, #000);
}
.custom-suggestion-compare-price {
  font-size: 12px;
  color: #6b7280;
  text-decoration: line-through;
}
.custom-suggestion-arrow {
  color: #9ca3af;
  flex-shrink: 0;
}
.custom-suggestions-footer {
  padding: 12px 16px;
  border-top: 1px solid #f3f4f6;
  background: #f9fafb;
  text-align: center;
}
.custom-view-all-results {
  background: var(--color-primary, #000);
  color: #fff;
  border: none;
  padding: 8px 16px;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.custom-view-all-results:hover {
  background: #333;
}
.custom-search-no-results {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-top: none;
  border-radius: 0 0 8px 8px;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1);
  z-index: 1003;
  max-height: 300px;
  overflow-y: auto;
}
.custom-no-results-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 40px 20px;
  text-align: center;
}
.custom-no-results-content h4 {
  margin: 0 0 12px 0;
  font-size: 18px;
  font-weight: 600;
  color: #111827;
}
.custom-no-results-content p {
  margin: 0 0 24px 0;
  font-size: 14px;
  color: #6b7280;
  line-height: 1.5;
  max-width: 300px;
}
.custom-no-results-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: center;
}
@media (max-width: 768px) {
  .custom-search-empty-state {
    margin-top: 20px;
    padding: 0 16px;
  }
  .custom-search-layout {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .custom-search-collections, .custom-search-categories, .custom-search-cta {
    padding: 16px;
  }
  .custom-categories-columns {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .custom-cta-content {
    gap: 12px;
  }
  .custom-cta-text h4 {
    font-size: 16px;
  }
  .custom-cta-text p {
    font-size: 13px;
  }
  .custom-cta-button {
    padding: 8px 16px;
    font-size: 13px;
  }
  .custom-search-suggestions {
    max-height: 400px;
  }
  .custom-suggestion-item {
    padding: 10px 12px;
    gap: 10px;
  }
  .custom-suggestion-image {
    width: 40px;
    height: 40px;
  }
  .custom-suggestion-title {
    font-size: 13px;
  }
  .custom-suggestion-vendor, .custom-suggestion-type {
    font-size: 11px;
  }
  .custom-suggestion-current-price {
    font-size: 13px;
  }
  .custom-suggestions-header {
    padding: 10px 12px;
  }
  .custom-suggestions-header h4 {
    font-size: 13px;
  }
  .custom-suggestions-footer {
    padding: 10px 12px;
  }
  .custom-view-all-results {
    padding: 6px 12px;
    font-size: 13px;
  }
  .custom-search-no-results {
    max-height: 250px;
  }
  .custom-no-results-content {
    padding: 30px 16px;
  }
  .custom-no-results-content h4 {
    font-size: 16px;
  }
  .custom-no-results-content p {
    font-size: 13px;
    max-width: 250px;
  }
}
@media (max-width: 480px) {
  .custom-search-empty-state {
    padding: 0 12px;
  }
  .custom-search-collections, .custom-search-categories, .custom-search-cta {
    padding: 12px;
  }
  .custom-categories-columns {
    gap: 16px;
  }
  .custom-category-title {
    font-size: 14px;
  }
  .custom-category-list a {
    font-size: 12px;
    padding: 4px 6px;
  }
  .custom-collections-list a {
    font-size: 13px;
    padding: 6px 8px;
  }
  .custom-search-suggestions {
    max-height: 350px;
  }
  .custom-suggestion-item {
    padding: 8px 10px;
    gap: 8px;
  }
  .custom-suggestion-image {
    width: 36px;
    height: 36px;
  }
  .custom-suggestion-title {
    font-size: 12px;
  }
  .custom-suggestion-vendor, .custom-suggestion-type {
    font-size: 10px;
  }
  .custom-suggestion-current-price {
    font-size: 12px;
  }
  .custom-search-no-results {
    max-height: 200px;
  }
  .custom-no-results-content {
    padding: 24px 12px;
  }
  .custom-no-results-content h4 {
    font-size: 15px;
  }
  .custom-no-results-content p {
    font-size: 12px;
    max-width: 200px;
  }
  .custom-no-results-actions {
    gap: 8px;
  }
}
@media (max-width: 480px) {
  .hits {
    grid-template-columns: 1fr;
  }
  .search-results {
    padding: 16px;
  }
  .search-form-container {
    padding: 12px;
  }
}
infinite-scroll {
  display: block;
  width: 100%;
}
infinite-scroll[data-loading="true"] {
  position: relative;
}
infinite-scroll[data-loading="true"]::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 40px;
  height: 40px;
  border: 3px solid #f3f3f3;
  border-top: 3px solid #007bff;
  border-radius: 50%;
  animation: spin 1s linear infinite;
  z-index: 10;
}
@keyframes spin {
  0% {
    transform: translateX(-50%) rotate(0deg);
  }
  100% {
    transform: translateX(-50%) rotate(360deg);
  }
}
[data-infinite-scroll-sentinel] {
  height: 1px;
  width: 100%;
  position: relative;
  z-index: -1;
  pointer-events: none;
}
[data-infinite-scroll-end] {
  text-align: center;
  padding: 2rem;
  color: #666;
  font-size: 0.875rem;
  border-top: 1px solid #e0e0e0;
  border-right: 1px solid #e0e0e0;
  border-bottom: 1px solid #e0e0e0;
  margin-top: 2rem;
  grid-column: 1 / -1;
  width: 100%;
}
[data-infinite-scroll-error] {
  text-align: center;
  padding: 2rem;
  color: #dc3545;
  border-top: 1px solid #e0e0e0;
  margin-top: 2rem;
  grid-column: 1 / -1;
  width: 100%;
}
[data-infinite-scroll-no-results] {
  text-align: center;
  padding: 2rem;
  color: #666;
  border-top: 1px solid #e0e0e0;
  margin-top: 2rem;
  grid-column: 1 / -1;
  width: 100%;
}
[data-infinite-scroll-no-results] p {
  margin: 0 0 1rem 0;
  font-weight: 500;
}
[data-infinite-scroll-no-results] button {
  background: #007bff;
  color: white;
  border: none;
  padding: 0.5rem 1rem;
  border-radius: 4px;
  cursor: pointer;
  font-size: 0.875rem;
  transition: background-color 0.2s ease;
}
[data-infinite-scroll-no-results] button:hover {
  background: #0056b3;
}
[data-infinite-scroll-no-results] button:active {
  background: #004085;
}
[data-infinite-scroll-error] p {
  margin: 0 0 1rem 0;
  font-weight: 500;
}
[data-infinite-scroll-error] button {
  background: #007bff;
  color: white;
  border: none;
  padding: 0.5rem 1rem;
  border-radius: 4px;
  cursor: pointer;
  font-size: 0.875rem;
  transition: background-color 0.2s ease;
}
[data-infinite-scroll-error] button:hover {
  background: #0056b3;
}
[data-infinite-scroll-error] button:active {
  background: #004085;
}
.product-card[data-loading="true"] {
  opacity: 0.6;
  pointer-events: none;
}
.product-card[data-loading="true"]::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);
  animation: shimmer 1.5s infinite;
  z-index: 1;
}
@keyframes shimmer {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(100%);
  }
}
@media (max-width: 768px) {
  infinite-scroll[data-loading="true"]::after {
    width: 30px;
    height: 30px;
    border-width: 2px;
  }
  [data-infinite-scroll-end], [data-infinite-scroll-error], [data-infinite-scroll-no-results] {
    padding: 1.5rem;
    font-size: 0.8rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  infinite-scroll[data-loading="true"]::after, .product-card[data-loading="true"]::before {
    animation: none;
  }
}
[data-infinite-scroll-error] button:focus {
  outline: 2px solid #007bff;
  outline-offset: 2px;
}
@media (prefers-contrast: high) {
  [data-infinite-scroll-end] {
    border-top-color: #000;
    color: #000;
  }
  [data-infinite-scroll-error], [data-infinite-scroll-no-results] {
    border-top-color: #000;
    color: #000;
  }
  [data-infinite-scroll-error] button, [data-infinite-scroll-no-results] button {
    background: #000;
    color: #fff;
    border: 2px solid #000;
  }
}
.collection-banner {
  position: relative;
}
.collection-banner .desktop-image {
  display: none;
}
.collection-banner .mobile-image {
  display: block;
}
.collection-header {
  padding: 2rem 0;
  border-bottom: 1px solid var(--color-border);
  margin-bottom: 2rem;
}
.collection-header__content {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 2rem;
}
.collection-header__title h1 {
  margin: 0 0 0.5rem 0;
  font-size: 2rem;
  font-weight: 700;
  color: var(--color-foreground);
}
.collection-header__description {
  margin: 0;
  color: var(--color-neutral-600);
  font-size: 1rem;
  line-height: 1.5;
}
.collection-header__controls {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.collection-header__filter-btn {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.75rem 1.5rem;
  background: var(--color-background);
  border: 1px solid var(--color-border);
  border-radius: 0.5rem;
  color: var(--color-foreground);
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
}
.collection-header__filter-btn:hover {
  background: var(--color-neutral-50);
  border-color: var(--color-neutral-400);
}
.collection-header__filter-btn[aria-expanded="true"] {
  background: var(--color-foreground);
  color: var(--color-background);
  border-color: var(--color-foreground);
}
.collection-header__filter-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.25rem;
  height: 1.25rem;
  padding: 0 0.25rem;
  background: var(--color-neutral-200);
  border-radius: 0.625rem;
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--color-neutral-700);
}
.collection-header__filter-btn[aria-expanded="true"] .collection-header__filter-count {
  background: var(--color-background);
  color: var(--color-foreground);
}
.collection-header__filter-icon {
  font-size: 1rem;
  font-weight: 600;
  transition: transform 0.2s ease;
}
.collection-header__filter-btn[aria-expanded="true"] .collection-header__filter-icon {
  transform: rotate(45deg);
}
.collection-filter {
  position: fixed;
  top: 0;
  right: -400px;
  width: 400px;
  height: 100vh;
  background: var(--color-background);
  border-left: 1px solid var(--color-border);
  z-index: 2000;
  transition: right 0.3s ease;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
}
.collection-filter[data-state="expanded"] {
  right: 0;
}
.collection-filter-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.5);
  z-index: 1000;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
}
.collection-filter-overlay[data-state="visible"] {
  opacity: 1;
  visibility: visible;
}
.collection-filter__panel {
  position: relative;
  width: 100%;
  max-width: 400px;
  height: 100vh;
  background: var(--color-background);
  border-left: 1px solid var(--color-border);
  display: flex;
  flex-direction: column;
  transform: translateX(100%);
  transition: transform 0.3s ease;
  overflow: hidden;
}
.collection-filter__panel-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0;
  padding: 0.75rem 2rem 0.75rem 2rem;
  border-bottom: 1px solid var(--color-border);
}
.collection-filter__panel-title {
  margin: 0;
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--color-foreground);
}
.collection-filter__close-btn {
  background: none;
  border: none;
  padding: 0.5rem;
  cursor: pointer;
  color: var(--color-neutral-600);
  font-size: 1.5rem;
  line-height: 1;
  transition: color 0.2s ease;
}
.collection-filter__close-btn:hover {
  color: var(--color-foreground);
}
.collection-filter__form {
  flex: 1;
  padding: 2rem 2rem 2rem 2rem;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.collection-filter__group {
  border-bottom: 1px solid var(--color-border);
  padding-bottom: 1.5rem;
}
.collection-filter__group:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.collection-filter__group-title {
  margin: 0 0 1rem 0;
  font-size: 1rem;
  font-weight: 600;
  color: var(--color-foreground);
}
.collection-filter__group-content {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.collection-filter__select {
  width: 100%;
  padding: 0.75rem;
  border: 1px solid var(--color-border);
  border-radius: 0.5rem;
  background: var(--color-background);
  font-size: 0.875rem;
  color: var(--color-foreground);
  cursor: pointer;
  transition: border-color 0.2s ease;
}
.collection-filter__select:focus {
  outline: none;
  border-color: var(--color-blue-500);
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}
.collection-filter__checkbox {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  cursor: pointer;
  transition: opacity 0.2s ease;
}
.collection-filter__checkbox:has(input:disabled) {
  opacity: 0.5;
  cursor: not-allowed;
}
.collection-filter__checkbox input[type="checkbox"] {
  width: 1.25rem;
  height: 1.25rem;
  margin: 0;
  border: 1px solid var(--color-border);
  border-radius: 0.25rem;
  background: var(--color-background);
  cursor: pointer;
  transition: all 0.2s ease;
}
.collection-filter__checkbox input[type="checkbox"]:checked {
  background: var(--color-blue-500);
  border-color: var(--color-blue-500);
}
.collection-filter__checkbox input[type="checkbox"]:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}
.collection-filter__checkbox input[type="checkbox"]:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}
.collection-filter__checkbox-text {
  font-size: 0.875rem;
  color: var(--color-foreground);
  line-height: 1.4;
}
.collection-filter__count {
  color: var(--color-neutral-500);
  font-size: 0.875rem;
  margin-left: 0.25rem;
}
.collection-filter__color-tabs {
  display: flex;
  gap: 0.5rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid var(--color-border);
}
.collection-filter__color-tab {
  padding: 0.5rem 1rem;
  background: none;
  border: none;
  border-bottom: 2px solid transparent;
  color: var(--color-neutral-600);
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
}
.collection-filter__color-tab:hover {
  color: var(--color-foreground);
}
.collection-filter__color-tab.active {
  color: var(--color-foreground);
  border-bottom-color: var(--color-foreground);
}
.collection-filter__color-panel {
  display: none;
}
.collection-filter__color-panel.active {
  display: block;
}
.collection-filter__color-options {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.collection-filter__color-option {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.5rem;
  border-radius: 0.375rem;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.collection-filter__color-option:hover {
  background-color: var(--color-neutral-50);
}
.collection-filter__color-option input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.collection-filter__color-option input[type="checkbox"]:checked + .variant-option {
  border-color: var(--color-foreground);
}
.collection-filter__color-option input[type="checkbox"]:checked + .variant-option::before {
  border-color: var(--color-foreground);
}
.collection-filter__color-option input[type="checkbox"]:disabled + .variant-option {
  opacity: 0.5;
  cursor: not-allowed;
}
.collection-filter__color-text {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.875rem;
  color: var(--color-foreground);
  flex: 1;
}
.collection-filter__color-option .variant-option.color-option {
  width: 1.5rem;
  height: 1.5rem;
  padding: 0;
  border-radius: 50%;
  position: relative;
  border: 1px solid var(--color-border);
  cursor: pointer;
  transition: all 0.2s ease;
}
.collection-filter__color-option .variant-option.color-option::before {
  content: "";
  position: absolute;
  top: -2px;
  left: -2px;
  right: -2px;
  bottom: -2px;
  border: 2px solid transparent;
  border-radius: 50%;
  transition: border-color 0.2s ease;
}
.collection-filter__color-option .variant-option.color-option:hover {
  transform: scale(1.1);
}
.collection-filter__color-option .variant-option.color-option:focus {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}
.collection-filter__no-colors {
  color: var(--color-neutral-500);
  font-size: 0.875rem;
  text-align: center;
  padding: 1rem;
  margin: 0;
}
.collection-filter__price-range {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}
.collection-filter__price-label {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.collection-filter__price-text {
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--color-neutral-600);
}
.collection-filter__price-input {
  padding: 0.75rem;
  border: 1px solid var(--color-border);
  border-radius: 0.5rem;
  background: var(--color-background);
  font-size: 0.875rem;
  color: var(--color-foreground);
  transition: border-color 0.2s ease;
}
.collection-filter__price-input:focus {
  outline: none;
  border-color: var(--color-blue-500);
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}
.collection-filter__actions {
  position: sticky;
  bottom: 20px;
  background: var(--color-background);
  border-top: 1px solid var(--color-border);
  padding: 1.5rem 2rem;
  margin: 0;
  display: flex;
  gap: 1rem;
  z-index: 10;
}
.collection-filter__apply, .collection-filter__clear {
  flex: 1;
  padding: 0.75rem 1rem;
  border: 1px solid var(--color-border);
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
}
.collection-filter__apply {
  background: var(--color-foreground);
  color: var(--color-background);
  border-color: var(--color-foreground);
}
.collection-filter__apply:hover {
  background: var(--color-neutral-800);
  border-color: var(--color-neutral-800);
}
.collection-filter__clear {
  background: var(--color-background);
  color: var(--color-foreground);
}
.collection-filter__clear:hover {
  background: var(--color-neutral-50);
  border-color: var(--color-neutral-400);
}
.collection-filter__active {
  position: sticky;
  top: 0;
  background: var(--color-background);
  border-bottom: 1px solid var(--color-border);
  padding: 1rem 2rem;
  margin: 0;
  display: none;
  z-index: 10;
}
.collection-filter__active[data-state="visible"] {
  display: block;
}
.collection-filter__active-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.75rem;
}
.collection-filter__active-title {
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--color-neutral-600);
}
.collection-filter__clear-all {
  background: none;
  border: none;
  color: var(--color-neutral-600);
  font-size: 12px;
  text-transform: uppercase;
  text-decoration: underline;
  cursor: pointer;
  padding: 0;
  transition: color 0.2s ease;
}
.collection-filter__clear-all:hover {
  color: var(--color-foreground);
}
.collection-filter__active-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.collection-filter__active-tag {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.25rem 0.75rem;
  background: var(--color-neutral-100);
  border: 1px solid var(--color-neutral-200);
  border-radius: 1rem;
  font-size: 0.75rem;
  color: var(--color-neutral-700);
}
.collection-filter__active-remove {
  background: none;
  border: none;
  padding: 0;
  color: var(--color-neutral-500);
  font-size: 1rem;
  line-height: 1;
  cursor: pointer;
  transition: color 0.2s ease;
}
.collection-filter__active-remove:hover {
  color: var(--color-neutral-700);
}
@media (max-width: 768px) {
  .collection-header__content {
    flex-direction: column;
    gap: 1rem;
  }
  .collection-header__title h1 {
    font-size: 1.5rem;
  }
  .collection-filter {
    width: 100vw;
    right: -100vw;
  }
  .collection-filter__panel {
    padding: 1.5rem;
  }
  .collection-filter__actions {
    padding: 1rem 1.5rem;
    margin: 0 -1.5rem -1.5rem -1.5rem;
  }
  .collection-filter__active {
    padding: 1rem 1.5rem;
    margin: 0 -1.5rem 1.5rem -1.5rem;
  }
}
@media (min-width: 992px) {
  .collection-banner .desktop-image {
    display: block;
  }
  .collection-banner .mobile-image {
    display: none;
  }
}
@media (prefers-contrast: high) {
  .collection-filter {
    border-left-width: 2px;
  }
  .collection-filter-overlay {
    background: rgba(0, 0, 0, 0.8);
  }
  .collection-header__filter-btn, .collection-filter__apply, .collection-filter__clear {
    border-width: 2px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .collection-filter, .collection-filter-overlay, .collection-header__filter-icon {
    transition: none;
  }
}
product-gallery {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
}
.product-gallery__thumbnails {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  flex-shrink: 0;
}
.product-gallery__thumbnails ul {
  margin: 0 0 10px;
  padding: 0;
  list-style: none;
  max-width: 120px;
  max-height: 370px;
  overflow-y: auto;
  padding-right: 20px;
}
@media (min-width: 992px) {
  .product-gallery__thumbnails ul {
    max-height: 550px;
  }
}
.product-gallery__thumbnails ul::-webkit-scrollbar {
  width: 5px;
  background-color: #f5f5f5;
}
.product-gallery__thumbnails ul::-webkit-scrollbar-thumb {
  background-color: #000000;
}
.product-gallery__thumbnails ul::-webkit-scrollbar-track {
  -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
  background-color: #f5f5f5;
}
.product-gallery__thumbnails ul li {
  margin-bottom: 5px;
  display: flex;
}
.product-gallery__thumbnail {
  width: 80px;
  border: 2px solid transparent;
  border-radius: 4px;
  overflow: hidden;
  cursor: pointer;
  transition: border-color 0.2s ease;
  background: none;
  padding: 0;
}
.product-gallery__thumbnail[data-active="true"] {
  border-color: #000;
}
.product-gallery__thumbnail:hover {
  border-color: #666;
}
.product-gallery__thumbnail-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.product-gallery__main {
  flex: 1;
  min-height: 400px;
}
.product-gallery__main-image {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.product-gallery__image {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  max-width: 500px;
}
.product-gallery__image-final-sale {
  position: absolute;
  right: 15px;
  top: 15px;
  z-index: 100;
  background: #000;
  color: #fff;
  padding: 2px 7px 0px;
  border-radius: 10px;
  text-transform: uppercase;
  font-size: 11px;
  font-weight: bold;
}
.product-gallery__main-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  margin: 0 auto;
  max-width: 500px;
}
@media (max-width: 768px) {
  product-gallery {
    gap: 0.75rem;
  }
  .product-gallery__thumbnails ul {
    max-width: 80px;
    max-height: 300px;
    padding-right: 10px;
  }
  .product-gallery__thumbnail {
    width: 60px;
    height: 60px;
  }
  .product-gallery__main {
    min-height: 300px;
  }
  .product-gallery__main-image img {
    max-width: 100%;
  }
}
@media (max-width: 480px) {
  product-gallery {
    gap: 0.5rem;
  }
  .product-gallery__thumbnails ul {
    max-width: 70px;
    max-height: 250px;
  }
  .product-gallery__thumbnail {
    width: 50px;
    height: 50px;
  }
  .product-gallery__main {
    min-height: 250px;
  }
}
product-image-slider {
  display: block;
  width: 100%;
  margin: 4rem auto;
  overflow: hidden;
}
product-image-slider .embla {
  position: relative;
  width: 100%;
}
product-image-slider .embla__viewport {
  overflow: hidden;
  width: 100%;
}
product-image-slider .embla__container {
  display: flex;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -webkit-tap-highlight-color: transparent;
}
product-image-slider .embla__slide {
  position: relative;
  padding: 0 10px;
  flex-shrink: 0;
  min-width: calc(100% / 4);
  flex: 0 0 25%;
}
product-image-slider .embla__slide-image {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
  border-radius: 8px;
}
product-image-slider .embla__controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  pointer-events: none;
  padding: 0 1rem;
}
product-image-slider .embla__button {
  background: rgba(255, 255, 255, 0.9);
  border: none;
  border-radius: 50%;
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s ease;
  color: #333;
  border: 1px solid rgba(0, 0, 0, 0.1);
  pointer-events: auto;
  backdrop-filter: blur(4px);
}
product-image-slider .embla__button:hover {
  background: rgba(255, 255, 255, 1);
  transform: scale(1.1);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
product-image-slider .embla__button svg {
  width: 20px;
  height: 20px;
  stroke-width: 2;
}
product-image-slider .embla__button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  transform: none;
  pointer-events: none;
}
@media (max-width: 1024px) {
  product-image-slider .embla__slide {
    min-width: calc(100% / 3);
  }
}
@media (min-width: 1024px) {
  product-image-slider:not([data-enable-on-desktop="true"]) .embla__container {
    display: flex;
    gap: 1rem;
    flex-wrap: nowrap;
    justify-content: center;
  }
  product-image-slider:not([data-enable-on-desktop="true"]) .embla__slide {
    min-width: auto;
    flex: 0 0 25%;
    padding: 0;
  }
}
@media (max-width: 768px) {
  product-image-slider .embla {
    max-width: 100%;
  }
  product-image-slider .embla__slide {
    min-width: calc(100% / 2);
  }
  product-image-slider .embla__controls {
    padding: 0 0.5rem;
  }
  product-image-slider .embla__button {
    width: 36px;
    height: 36px;
  }
  product-image-slider .embla__button svg {
    width: 16px;
    height: 16px;
  }
}
@media (max-width: 480px) {
  product-image-slider .embla__slide {
    min-width: 100%;
  }
}
product-image-slider .embla.loading {
  opacity: 0;
  transition: opacity 0.3s ease;
}
product-image-slider .embla.loaded {
  opacity: 1;
}
product-image-slider .embla__button:focus {
  outline: 2px solid #007bff;
  outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) {
  product-image-slider .embla__slide, product-image-slider .embla__button {
    transition: none;
  }
}
product-image-slider .embla__slide[style*="display: none"] {
  display: none !important;
}
.breadcrumbs {
  margin-bottom: 1.5rem;
  font-size: 0.875rem;
  line-height: 1.4;
}
.breadcrumbs__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 0.5rem;
}
.breadcrumbs__item {
  display: flex;
  align-items: center;
  color: #666;
  font-size: 16px;
}
.breadcrumbs__item:not(:last-child)::after {
  content: "/";
  margin-left: 0.5rem;
  color: #ccc;
  font-weight: 300;
}
.breadcrumbs__link {
  color: #777;
  text-decoration: none;
  transition: color 0.2s ease;
  border-radius: 2px;
  padding: 0.25rem 0.5rem;
  margin: -0.25rem -0.5rem;
  font-size: 16px;
  font-weight: 600;
}
.breadcrumbs__link:hover, .breadcrumbs__link:focus {
  color: #000;
  text-decoration: underline;
  outline: none;
}
.breadcrumbs__link:focus-visible {
  outline: 2px solid #000;
  outline-offset: 2px;
}
.breadcrumbs__item--current {
  color: #000;
  font-weight: 500;
}
.breadcrumbs__text {
  color: inherit;
  font-weight: inherit;
}
.breadcrumbs__item--current .breadcrumbs__link[href*="/collections/"] {
  color: #000;
  font-weight: 700;
}
.breadcrumbs__item--current .breadcrumbs__link[href*="/collections/"]:hover, .breadcrumbs__item--current .breadcrumbs__link[href*="/collections/"]:focus {
  color: #000;
  text-decoration: underline;
}
@media (max-width: 768px) {
  .breadcrumbs {
    font-size: 0.8rem;
    margin-bottom: 1rem;
  }
  .breadcrumbs__list {
    gap: 0.25rem;
  }
  .breadcrumbs__item:not(:last-child)::after {
    margin-left: 0.25rem;
  }
  .breadcrumbs__link {
    padding: 0.125rem 0.25rem;
    margin: -0.125rem -0.25rem;
  }
}
@media (prefers-contrast: high) {
  .breadcrumbs__link {
    text-decoration: underline;
  }
  .breadcrumbs__link:hover, .breadcrumbs__link:focus {
    text-decoration: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .breadcrumbs__link {
    transition: none;
  }
}
.additional-product-selector {
  margin-top: 1.5rem;
  padding: 1.5rem;
}
.additional-product-selector__header {
  margin-bottom: 1rem;
}
.additional-product-selector__title {
  font-size: 1.125rem;
  font-weight: 600;
  color: var(--color-text);
  margin: 0 0 0.5rem 0;
}
.additional-product-selector__subtitle {
  font-size: 0.875rem;
  color: var(--color-text-secondary);
  margin: 0;
}
.additional-product-selector__options {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.additional-product-selector__size-option {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 0.75rem;
  border: 2px solid #e5e5e5;
  border-radius: 4px;
  background: white;
  cursor: pointer;
  transition: all 0.2s ease;
  font-size: 12px;
  min-width: 75px;
  justify-content: center;
}
.additional-product-selector__size-option:hover {
  border-color: #999;
}
.additional-product-selector__size-option[data-active="true"] {
  border-color: #000;
  background: #000;
  color: white;
}
.additional-product-selector__size-option[data-unavailable="true"] {
  opacity: 0.6;
  position: relative;
  cursor: not-allowed;
  background: #f5f5f5;
  border-color: #ccc;
}
.additional-product-selector__size-option[data-unavailable="true"]::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2px;
  height: 20px;
  background: #999;
  transform: translate(-50%, -50%) rotate(45deg);
}
@media (max-width: 768px) {
  .additional-product-selector {
    margin-top: 1rem;
    padding: 1rem;
  }
  .additional-product-selector__options {
    gap: 0.25rem;
  }
  .additional-product-selector__size-option {
    padding: 0.375rem 0.5rem;
    font-size: 0.75rem;
    min-width: 50px;
  }
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-border-style: solid;
      --tw-font-weight: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
    }
  }
}

