@charset "UTF-8";
*,
::before,
::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  border-width: 0;
  /* 2 */
  border-style: solid;
  /* 2 */
  border-color: #e5e7eb;
  /* 2 */ }

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

/*
      1. Use a consistent sensible line-height in all browsers.
      2. Prevent adjustments of font size after orientation changes in iOS.
      3. Use a more readable tab size.
      4. Use the user's configured `sans` font-family by default.
      5. Use the user's configured `sans` font-feature-settings by default.
      6. Use the user's configured `sans` font-variation-settings by default.
      7. Disable tap highlights on iOS
    */
html,
:host {
  line-height: 1.5;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -moz-tab-size: 4;
  /* 3 */
  -o-tab-size: 4;
  tab-size: 4;
  /* 3 */
  font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  /* 4 */
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  /* 5 */
  font-variation-settings: normal;
  /* 6 */
  -webkit-tap-highlight-color: transparent;
  /* 7 */ }

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

/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/
hr {
  height: 0;
  /* 1 */
  color: inherit;
  /* 2 */
  border-top-width: 1px;
  /* 3 */ }

/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/
abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted; }

/*
Remove the default font size and weight for headings.
*/
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit; }

/*
Reset links to optimize for opt-in styling instead of opt-out.
*/
a {
  color: inherit;
  text-decoration: inherit; }

/*
Add the correct font weight in Edge and Safari.
*/
b,
strong {
  font-weight: bolder; }

/*
1. Use the user's configured `mono` font-family by default.
2. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. Correct the odd `em` font sizing in all browsers.
*/
code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  /* 1 */
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  /* 2 */
  font-variation-settings: normal;
  /* 3 */
  font-size: 1em;
  /* 4 */ }

/*
Add the correct font size in all browsers.
*/
small {
  font-size: 80%; }

/*
Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

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

/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  -webkit-font-feature-settings: inherit;
          font-feature-settings: inherit;
  /* 1 */
  font-variation-settings: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  font-weight: inherit;
  /* 1 */
  line-height: inherit;
  /* 1 */
  letter-spacing: inherit;
  /* 1 */
  color: inherit;
  /* 1 */
  margin: 0;
  /* 2 */
  padding: 0;
  /* 3 */ }

/*
Remove the inheritance of text transform in Edge and Firefox.
*/
button,
select {
  text-transform: none; }

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/
button,
input:where([type="button"]),
input:where([type="reset"]),
input:where([type="submit"]) {
  -webkit-appearance: button;
  /* 1 */
  background-color: transparent;
  /* 2 */
  background-image: none;
  /* 2 */ }

/*
Use the modern Firefox focus style for all focusable elements.
*/
:-moz-focusring {
  outline: auto; }

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

/*
Add the correct vertical alignment in Chrome and Firefox.
*/
progress {
  vertical-align: baseline; }

/*
Correct the cursor style of increment and decrement buttons in Safari.
*/
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto; }

/*
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */ }

/*
Remove the inner padding in Chrome and Safari on macOS.
*/
::-webkit-search-decoration {
  -webkit-appearance: none; }

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/*
Add the correct display in Chrome and Safari.
*/
summary {
  display: list-item; }

/*
Removes the default spacing and border for appropriate elements.
*/
blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0; }

fieldset {
  margin: 0;
  padding: 0; }

legend {
  padding: 0; }

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

/*
Reset default styling for dialogs.
*/
dialog {
  padding: 0; }

/*
Prevent resizing textareas horizontally by default.
*/
textarea {
  resize: vertical; }

/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/
input::-moz-placeholder,
textarea::-moz-placeholder {
  opacity: 1;
  /* 1 */
  color: #9ca3af;
  /* 2 */ }

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

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

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

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

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

/*
Set the default cursor for buttons.
*/
button,
[role="button"] {
  cursor: pointer; }

/*
Make sure disabled buttons don't get the pointer cursor.
*/
:disabled {
  cursor: default; }

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

/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/
img,
video {
  max-width: 100%;
  height: auto; }

/* Make elements with the HTML hidden attribute stay hidden by default */
[hidden]:where(:not([hidden="until-found"])) {
  display: none; }

:root {
  --color-white: #ffffff;
  --color-black: #000000;
  --color-red: #e31836;
  --color-blue: #3478bb;
  --color-yellow: #febf69;
  --color-orange: #e66b00;
  --color-green: #2eae30;
  --color-tan-100: #e1c399;
  --color-tan-200: #e4be8e;
  --color-tan-300: #e1c399;
  --color-gray-100: #f6f6f6;
  --color-gray-200: #eaeaea;
  --color-gray-300: #cbcbcb;
  --color-gray-400: #a3a3a3;
  --color-gray-500: #666666;
  --color-gray-700: #3d3d3d;
  --color-gray-900: #0f0f0f;
  --color-error-text: #a11111;
  --color-error-bg: #fff7f7;
  --color-error-icon: #a11111;
  --color-success-text: #2eae30;
  --color-success-bg: #f6fff7;
  --color-success-icon: #2eae30;
  --color-warning-text: #a16411;
  --color-warning-bg: #fff6e9;
  --color-warning-icon: #a16411;
  --color-info-text: #3478bb;
  --color-info-bg: #e8f4ff;
  --color-info-icon: #3478bb;
  --font-family-gotham: Gotham, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
        "Segoe UI Symbol", "Noto Color Emoji";
  --font-family-antonio: Antonio, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
        "Segoe UI Symbol", "Noto Color Emoji";
  --font-family-bondi: "Bodoni 72", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
        "Segoe UI Symbol", "Noto Color Emoji";
  --font-family-heading: var(--font-family-gotham);
  --font-family-body: var(--font-family-gotham);
  --font-family-alt: var(--font-family-antonio);
  --min-scale-width: 390;
  --max-scale-width: 1440;
  --scale: calc((var(--max-scale-width) / var(--min-scale-width)) * 1dvw);
  --text-xs: clamp(12px, var(--scale), 12px);
  --text-sm: clamp(13px, var(--scale), 14px);
  --text-md: clamp(14px, var(--scale), 16px);
  --text-lg: clamp(16px, var(--scale), 18px);
  --text-xl: clamp(18px, var(--scale), 20px);
  --text-2xl: clamp(20px, var(--scale), 24px);
  --text-3xl: clamp(24px, var(--scale), 36px);
  --text-4xl: clamp(36px, var(--scale), 48px);
  --navbar-height: 0px;
  --header-height: 0px;
  --search-input-height: 0px;
  --header-total-height: var(--header-height);
  --admin-bar-height: 0px;
  --alert-bar-height: 0px;
  --promotion-bar-height: 0px;
  --container-max-width: calc(var(--max-scale-width) * 1px);
  --container-max-width-sm: 1124px;
  --container-max-width-md: 1280px;
  --container-padding-x: 15px;
  --outline: 1px solid var(--color-gray-300);
  --outline-offset: 1px;
  --z-index-0: 0;
  --z-index-1: 10;
  --z-index-2: 20;
  --z-index-3: 30;
  --z-index-4: 40;
  --z-index-5: 50;
  --z-index-6: 60;
  --z-index-7: 70;
  --z-index-8: 80;
  --z-index-9: 90;
  --z-index-10: 100;
  --z-index-max: 9999; }
  @media (min-width: 1281px) {
    :root {
      --container-padding-x: 60px; } }

html {
  max-width: 100dvw;
  overflow-x: hidden;
  --rewards-modal-bg: linear-gradient(0deg, #e1c399 0%, #e1c399 100%),
        url(../img/rewards-bg.png) lightgray 50% / cover no-repeat; }

body {
  font-family: var(--font-family-body);
  font-weight: 400;
  max-width: 100dvw; }

.body {
  margin-bottom: 0; }

.container {
  --container-padding-y: 0;
  padding: var(--container-padding-y) var(--container-padding-x); }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--font-family-heading); }

p {
  font-family: var(--font-family-body);
  font-size: var(--text-md); }

h1 {
  font-size: var(--text-4xl);
  font-style: normal;
  font-weight: 700;
  line-height: 110%;
  /* 52.8px */
  letter-spacing: 4.8px;
  text-transform: uppercase; }

h2 {
  font-size: var(--text-3xl);
  font-style: normal;
  font-weight: 700;
  line-height: 110%;
  /* 39.6px */
  letter-spacing: 3.6px;
  text-transform: uppercase; }

h3 {
  font-size: var(--text-2xl);
  font-style: normal;
  font-weight: 700;
  line-height: 110%;
  /* 26.4px */
  text-transform: uppercase; }

h4 {
  font-size: var(--text-xl);
  font-style: normal;
  font-weight: 500;
  line-height: 120%;
  /* 24px */
  letter-spacing: 0.4px;
  text-transform: uppercase; }

.text-lg {
  font-size: var(--text-lg);
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  /* 27px */
  letter-spacing: 0.9px; }

.text-md {
  font-size: var(--text-md);
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  /* 24px */
  letter-spacing: 0.8px; }

.text-sm {
  font-size: var(--text-sm);
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  /* 21px */
  letter-spacing: 0.28px; }

.text-xs {
  font-size: var(--text-xs);
  font-style: normal;
  font-weight: 500;
  line-height: 16px;
  /* 100% */
  letter-spacing: 0.32px; }

.subheader {
  font-size: var(--text-md);
  font-style: normal;
  font-weight: 700;
  line-height: 110%;
  /* 17.6px */
  letter-spacing: 4.8px;
  text-transform: uppercase; }

.button {
  font-family: var(--font-family-alt);
  font-size: var(--text-md);
  font-style: normal;
  font-weight: 700;
  line-height: 1;
  /* 16px */
  letter-spacing: 0.8px;
  text-transform: uppercase;
  height: 49px;
  margin: 0;
  overflow: unset;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 17px 24px 16px 24px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 0px;
          flex: 1 0 0;
  -ms-flex-item-align: stretch;
      align-self: stretch;
  gap: 6px;
  -webkit-transition: color 300ms ease, background-color 300ms ease, border-color 300ms ease, fill 300ms ease, stroke 300ms ease;
  transition: color 300ms ease, background-color 300ms ease, border-color 300ms ease, fill 300ms ease, stroke 300ms ease;
  background-color: var(--bg-color);
  color: var(--text-color);
  border-color: var(--border-color); }
  .button:hover {
    background-color: var(--bg-color);
    color: var(--text-color);
    border-color: var(--border-color); }
  .button .icon {
    width: auto;
    height: 24px;
    -webkit-transition: unset;
    transition: unset; }

a.button {
  color: var(--text-color); }

.button--primary {
  --text-color: var(--color-white);
  --bg-color: var(--color-black);
  --border-color: var(--color-black); }
  .button--primary:hover {
    --bg-color: var(--color-white);
    --text-color: var(--color-black);
    --border-color: var(--color-black); }

.button--tertiary {
  --text-color: var(--color-black);
  --bg-color: var(--color-yellow);
  --border-color: var(--color-yellow); }
  .button--tertiary:hover {
    --bg-color: var(--color-white);
    --text-color: var(--color-black);
    --border-color: var(--color-black); }

.button--gray {
  --text-color: var(--color-black);
  --bg-color: var(--color-gray-200);
  --border-color: var(--color-gray-200); }
  .button--gray:hover {
    --bg-color: var(--color-gray-300);
    --text-color: var(--color-black);
    --border-color: var(--color-gray-300); }

.button--outline {
  --text-color: var(--color-black);
  --bg-color: var(--color-white);
  --border-color: var(--color-black); }
  .button--outline:hover, .button--outline:focus {
    --bg-color: var(--color-black);
    --text-color: var(--color-white);
    --border-color: var(--color-black); }
  .button--outline:focus-visible {
    outline: 2px solid var(--color-black);
    outline-offset: 2px; }

.button--ghost {
  --text-color: var(--color-black);
  --bg-color: transparent;
  --border-color: transparent;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 12px 0; }
  .button--ghost:hover {
    --bg-color: transparent;
    --text-color: var(--color-gray-700);
    --border-color: transparent; }

.button--small {
  font-size: var(--text-sm);
  padding: 12px 16px;
  height: 40px; }

.button--medium {
  font-size: var(--text-md);
  padding: 16px 24px; }

.button--large {
  font-size: var(--text-lg);
  padding: 24px 32px; }

.bg-black {
  background-color: var(--color-black); }

.text-white {
  color: var(--color-white); }

.text-black {
  color: var(--color-black); }

.text-red {
  color: var(--color-red); }

.text-blue {
  color: var(--color-blue); }

.text-yellow {
  color: var(--color-yellow); }

.text-orange {
  color: var(--color-orange); }

.text-tan-100 {
  color: var(--color-tan-100); }

.text-tan-200 {
  color: var(--color-tan-200); }

.text-gray-100 {
  color: var(--color-gray-100); }

.text-gray-200 {
  color: var(--color-gray-200); }

.text-gray-300 {
  color: var(--color-gray-300); }

.text-gray-400 {
  color: var(--color-gray-400); }

.text-gray-700 {
  color: var(--color-gray-700); }

.text-gray-900 {
  color: var(--color-gray-900); }

.text-xs {
  font-size: var(--text-xs); }

.text-sm {
  font-size: var(--text-sm); }

.text-md {
  font-size: var(--text-md); }

.text-lg {
  font-size: var(--text-lg); }

.text-xl {
  font-size: var(--text-xl); }

.text-2xl {
  font-size: var(--text-2xl); }

.text-3xl {
  font-size: var(--text-3xl); }

.text-4xl {
  font-size: var(--text-4xl); }

.font-thin {
  font-weight: 100; }

.font-extralight {
  font-weight: 200; }

.font-light {
  font-weight: 300; }

.font-normal {
  font-weight: 400; }

.font-medium {
  font-weight: 500; }

.font-semibold {
  font-weight: 600; }

.font-bold {
  font-weight: 700; }

.font-extrabold {
  font-weight: 800; }

.font-black {
  font-weight: 900; }

.font-gotham {
  font-family: var(--font-family-gotham); }

.font-antonio {
  font-family: var(--font-family-antonio); }

.font-bondi {
  font-family: var(--font-family-bondi); }

@media (min-width: 1025px) {
  .md\:text-white {
    color: var(--color-white); }
  .md\:text-black {
    color: var(--color-black); }
  .md\:text-red {
    color: var(--color-red); }
  .md\:text-blue {
    color: var(--color-blue); }
  .md\:text-yellow {
    color: var(--color-yellow); }
  .md\:text-orange {
    color: var(--color-orange); }
  .md\:text-tan-100 {
    color: var(--color-tan-100); }
  .md\:text-tan-200 {
    color: var(--color-tan-200); }
  .md\:text-gray-100 {
    color: var(--color-gray-100); }
  .md\:text-gray-200 {
    color: var(--color-gray-200); }
  .md\:text-gray-300 {
    color: var(--color-gray-300); }
  .md\:text-gray-400 {
    color: var(--color-gray-400); }
  .md\:text-gray-700 {
    color: var(--color-gray-700); }
  .md\:text-gray-900 {
    color: var(--color-gray-900); }
  .md\:text-xs {
    font-size: var(--text-xs); }
  .md\:text-sm {
    font-size: var(--text-sm); }
  .md\:text-md {
    font-size: var(--text-md); }
  .md\:text-lg {
    font-size: var(--text-lg); }
  .md\:text-xl {
    font-size: var(--text-xl); }
  .md\:text-2xl {
    font-size: var(--text-2xl); }
  .md\:text-3xl {
    font-size: var(--text-3xl); }
  .md\:text-4xl {
    font-size: var(--text-4xl); } }

dropdown-select:focus-visible,
button:focus-visible,
select:focus-visible,
.button:focus-visible {
  outline: 1px solid var(--color-gray-300);
  outline-offset: 1px; }

@media (min-width: 1025px) {
  .productCarousel-slide .card {
    margin: 0 auto; } }

.productCarousel-slide .card-img-container {
  max-width: 240px; }

.product-uom-form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 12px; }

.line-clamp-1 {
  display: -webkit-box;
  -webkit-line-clamp: 1;
  line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis; }

.line-clamp-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis; }

.line-clamp-3 {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis; }

.swiper-pagination .swiper-pagination-bullet,
.slick-dots li button::before {
  width: 12px;
  height: 12px;
  border: 1px solid;
  border-color: var(--color-black);
  background: var(--color-black);
  opacity: 1; }

.swiper-pagination .swiper-pagination-bullet-active,
.slick-dots li.slick-active button::before {
  border: 1px solid;
  border-color: var(--color-black);
  background: transparent; }

#search-sidebar {
  display: none; }

.tabs {
  all: unset; }
  .tabs * {
    all: unset; }

.hide-on-mobile {
  display: none; }

@media (min-width: 1025px) {
  .hide-on-desktop {
    display: none; }
  .hide-on-mobile {
    display: unset; } }

.fluid {
  --min-size: 14;
  --max-size: 16;
  --min-vw: 390;
  --max-vw: 1440;
  font-size: calc( (var(--min-size) * 1px) + (var(--max-size) - var(--min-size)) * ((100vw - (var(--min-vw) * 1px)) / (var(--max-vw) - var(--min-vw)))); }
  .fluid-xs {
    --min-size: 14;
    --max-size: 16; }
  .fluid-sm {
    --min-size: 16;
    --max-size: 18; }
  .fluid-md {
    --min-size: 18;
    --max-size: 20; }
  .fluid-lg {
    --min-size: 20;
    --max-size: 24; }
  .fluid-xl {
    --min-size: 24;
    --max-size: 32; }
  .fluid-2xl {
    --min-size: 32;
    --max-size: 40; }
  .fluid-3xl {
    --min-size: 40;
    --max-size: 48; }

[hidden] {
  visibility: hidden; }

.swiper {
  width: 100% !important; }

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

.w-full {
  width: 100%; }

.alertBox {
  color: var(--text-color);
  background-color: var(--bg-color);
  border: 1px solid var(--bg-color); }

.alertBox--error {
  --text-color: var(--color-error-text);
  --bg-color: var(--color-error-bg);
  --icon-color: var(--color-error-icon);
  --border-color: var(--color-error-bg); }

.alertBox--success {
  --text-color: var(--color-success-text);
  --bg-color: var(--color-success-bg);
  --icon-color: var(--color-success-icon);
  --border-color: var(--color-success-bg); }

.alertBox--warning {
  --text-color: var(--color-warning-text);
  --bg-color: var(--color-warning-bg);
  --icon-color: var(--color-warning-icon);
  --border-color: var(--color-warning-bg); }

.alertBox--info {
  --text-color: var(--color-info-text);
  --bg-color: var(--color-info-bg);
  --icon-color: var(--color-info-icon);
  --border-color: var(--color-info-bg); }

.alertBox-message {
  color: var(--text-color); }

/* Loading Spinner - Global styles for all pages */
.loading-spinner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 2rem; }
  .loading-spinner .spinner {
    width: 40px;
    height: 40px;
    border: 4px solid var(--color-gray-200);
    border-top: 4px solid var(--color-black);
    border-radius: 50%;
    -webkit-animation: spin 1s linear infinite;
            animation: spin 1s linear infinite; }
  .loading-spinner p {
    margin-top: 1rem;
    color: var(--color-gray-500);
    font-size: var(--text-sm); }

.yotpo-empty-state {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .yotpo-empty-state svg {
    width: 64px; }

@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

.prose {
  --background-color: var(--color-white);
  --border-color: var(--color-black);
  --heading-color: var(--color-gray-900);
  --link-color: var(--color-gray-700);
  --text-color: var(--color-gray-500);
  --max-width: 90ch;
  color: var(--text-color);
  max-width: var(--max-width); }

.prose :where(p) {
  margin-top: 1.25em;
  margin-bottom: 1.25em; }

.prose :where([class~="lead"]) {
  color: var(--text-color);
  font-size: 1.25em;
  line-height: 1.6;
  margin-top: 1.2em;
  margin-bottom: 1.2em; }

.prose :where(a) {
  color: var(--link-color);
  text-decoration: underline;
  font-weight: 400; }

.prose :where(strong) {
  color: var(--heading-color);
  font-weight: 600; }

.prose :where(a strong) {
  color: inherit; }

.prose :where(blockquote strong) {
  color: inherit; }

.prose :where(thead th strong) {
  color: inherit; }

.prose :where(ol) {
  list-style-type: decimal;
  margin-top: 1.25em;
  margin-bottom: 1.25em;
  -webkit-padding-start: 1.625em;
          padding-inline-start: 1.625em; }

.prose :where(ol[type="A"]) {
  list-style-type: upper-alpha; }

.prose :where(ol[type="a"]) {
  list-style-type: lower-alpha; }

.prose :where(ol[type="A"]) {
  list-style-type: upper-alpha; }

.prose :where(ol[type="a"]) {
  list-style-type: lower-alpha; }

.prose :where(ol[type="I"]) {
  list-style-type: upper-roman; }

.prose :where(ol[type="i"]) {
  list-style-type: lower-roman; }

.prose :where(ol[type="I"]) {
  list-style-type: upper-roman; }

.prose :where(ol[type="i"]) {
  list-style-type: lower-roman; }

.prose :where(ol[type="1"]) {
  list-style-type: decimal; }

.prose :where(ul) {
  list-style-type: disc;
  margin-top: 1.25em;
  margin-bottom: 1.25em;
  -webkit-padding-start: 1.625em;
          padding-inline-start: 1.625em; }

.prose :where(ol > li)::marker {
  font-weight: 400;
  color: var(--text-color); }

.prose :where(ul > li)::marker {
  color: var(--text-color); }

.prose :where(dt) {
  color: var(--text-color);
  font-weight: 600;
  margin-top: 1.25em; }

.prose :where(hr) {
  border-color: var(--text-color);
  border-top-width: 1px;
  margin-top: 3em;
  margin-bottom: 3em; }

.prose :where(blockquote) {
  font-weight: 500;
  font-style: italic;
  color: var(--text-color);
  border-inline-start-width: 0.25rem;
  border-inline-start-color: var(--text-color);
  quotes: "“" "”" "‘" "’";
  margin-top: 1.6em;
  margin-bottom: 1.6em;
  -webkit-padding-start: 1em;
          padding-inline-start: 1em; }

.prose :where(blockquote p:first-of-type)::before {
  content: open-quote; }

.prose :where(blockquote p:last-of-type)::after {
  content: close-quote; }

.prose :where(h1) {
  color: var(--heading-color);
  font-weight: 800;
  font-size: 2.25em;
  margin-top: 0;
  margin-bottom: 0.8888889em;
  line-height: 1.1111111; }

.prose :where(h1 strong) {
  font-weight: 900;
  color: inherit; }

.prose :where(h2) {
  color: var(--heading-color);
  font-weight: 700;
  font-size: 1.5em;
  margin-top: 2em;
  margin-bottom: 1em;
  line-height: 1.3333333; }

.prose :where(h2 strong) {
  font-weight: 800;
  color: inherit; }

.prose :where(h3) {
  color: var(--heading-color);
  font-weight: 600;
  font-size: 1.25em;
  margin-top: 1.6em;
  margin-bottom: 0.6em;
  line-height: 1.6; }

.prose :where(h3 strong) {
  font-weight: 700;
  color: inherit; }

.prose :where(h4) {
  color: var(--heading-color);
  font-weight: 600;
  margin-top: 1.5em;
  margin-bottom: 0.5em;
  line-height: 1.5; }

.prose :where(h4 strong) {
  font-weight: 700;
  color: inherit; }

.prose :where(img) {
  margin-top: 2em;
  margin-bottom: 2em; }

.prose :where(picture) {
  display: block;
  margin-top: 2em;
  margin-bottom: 2em; }

.prose :where(video) {
  margin-top: 2em;
  margin-bottom: 2em; }

.prose :where(kbd) {
  font-weight: 500;
  font-family: inherit;
  color: var(--text-color);
  font-size: 0.875em;
  border-radius: 0.3125rem;
  padding-top: 0.1875em;
  -webkit-padding-end: 0.375em;
          padding-inline-end: 0.375em;
  padding-bottom: 0.1875em;
  -webkit-padding-start: 0.375em;
          padding-inline-start: 0.375em; }

.prose :where(code) {
  color: var(--text-color);
  font-weight: 600;
  font-size: 0.875em; }

.prose :where(code)::before {
  content: "`"; }

.prose :where(code)::after {
  content: "`"; }

.prose :where(a code) {
  color: inherit; }

.prose :where(h1 code) {
  color: inherit; }

.prose :where(h2 code) {
  color: inherit;
  font-size: 0.875em; }

.prose :where(h3 code) {
  color: inherit;
  font-size: 0.9em; }

.prose :where(h4 code) {
  color: inherit; }

.prose :where(blockquote code) {
  color: inherit; }

.prose :where(thead th code) {
  color: inherit; }

.prose :where(pre) {
  color: var(--text-color);
  background-color: var(--text-color);
  overflow-x: auto;
  font-weight: 400;
  font-size: 0.875em;
  line-height: 1.7142857;
  margin-top: 1.7142857em;
  margin-bottom: 1.7142857em;
  border-radius: 0.375rem;
  padding-top: 0.8571429em;
  -webkit-padding-end: 1.1428571em;
          padding-inline-end: 1.1428571em;
  padding-bottom: 0.8571429em;
  -webkit-padding-start: 1.1428571em;
          padding-inline-start: 1.1428571em; }

.prose :where(pre code) {
  background-color: transparent;
  border-width: 0;
  border-radius: 0;
  padding: 0;
  font-weight: inherit;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  line-height: inherit; }

.prose :where(pre code)::before {
  content: none; }

.prose :where(pre code)::after {
  content: none; }

.prose :where(table) {
  width: 100%;
  table-layout: auto;
  margin-top: 2em;
  margin-bottom: 2em;
  font-size: 0.875em;
  line-height: 1.7142857; }

.prose :where(thead) {
  border-bottom-width: 1px;
  border-bottom-color: var(--border-color); }

.prose :where(thead th) {
  color: var(--text-color);
  font-weight: 600;
  vertical-align: bottom;
  -webkit-padding-end: 0.5714286em;
          padding-inline-end: 0.5714286em;
  padding-bottom: 0.5714286em;
  -webkit-padding-start: 0.5714286em;
          padding-inline-start: 0.5714286em; }

.prose :where(tbody tr) {
  border-bottom-width: 1px;
  border-bottom-color: var(--border-color); }

.prose :where(tbody tr:last-child) {
  border-bottom-width: 0; }

.prose :where(tbody td) {
  vertical-align: baseline; }

.prose :where(tfoot) {
  border-top-width: 1px;
  border-top-color: var(--border-color); }

.prose :where(tfoot td) {
  vertical-align: top; }

.prose :where(th, td) {
  text-align: start; }

.prose :where(figure > *) {
  margin-top: 0;
  margin-bottom: 0; }

.prose :where(figcaption) {
  color: var(--text-color);
  font-size: 0.875em;
  line-height: 1.4285714;
  margin-top: 0.8571429em; }

.prose :where(picture > img) {
  margin-top: 0;
  margin-bottom: 0; }

.prose :where(li) {
  margin-top: 0.5em;
  margin-bottom: 0.5em; }

.prose :where(ol > li) {
  -webkit-padding-start: 0.375em;
          padding-inline-start: 0.375em; }

.prose :where(ul > li) {
  -webkit-padding-start: 0.375em;
          padding-inline-start: 0.375em; }

.prose :where(.prose > ul > li p) {
  margin-top: 0.75em;
  margin-bottom: 0.75em; }

.prose :where(.prose > ul > li > p:first-child) {
  margin-top: 1.25em; }

.prose :where(.prose > ul > li > p:last-child) {
  margin-bottom: 1.25em; }

.prose :where(.prose > ol > li > p:first-child) {
  margin-top: 1.25em; }

.prose :where(.prose > ol > li > p:last-child) {
  margin-bottom: 1.25em; }

.prose :where(ul ul, ul ol, ol ul, ol ol) {
  margin-top: 0.75em;
  margin-bottom: 0.75em; }

.prose :where(dl) {
  margin-top: 1.25em;
  margin-bottom: 1.25em; }

.prose :where(dd) {
  margin-top: 0.5em;
  -webkit-padding-start: 1.625em;
          padding-inline-start: 1.625em; }

.prose :where(hr + *) {
  margin-top: 0; }

.prose :where(h2 + *) {
  margin-top: 0; }

.prose :where(h3 + *) {
  margin-top: 0; }

.prose :where(h4 + *) {
  margin-top: 0; }

.prose :where(thead th:first-child) {
  -webkit-padding-start: 0;
          padding-inline-start: 0; }

.prose :where(thead th:last-child) {
  -webkit-padding-end: 0;
          padding-inline-end: 0; }

.prose :where(tbody td, tfoot td) {
  padding-top: 0.5714286em;
  -webkit-padding-end: 0.5714286em;
          padding-inline-end: 0.5714286em;
  padding-bottom: 0.5714286em;
  -webkit-padding-start: 0.5714286em;
          padding-inline-start: 0.5714286em; }

.prose :where(tbody td:first-child, tfoot td:first-child) {
  -webkit-padding-start: 0;
          padding-inline-start: 0; }

.prose :where(tbody td:last-child, tfoot td:last-child) {
  -webkit-padding-end: 0;
          padding-inline-end: 0; }

.prose :where(figure) {
  margin-top: 2em;
  margin-bottom: 2em; }

.prose :where(.prose > :first-child) {
  margin-top: 0; }

.prose :where(.prose > :last-child) {
  margin-bottom: 0; }

@-webkit-keyframes slideDown {
  from {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px); }
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@keyframes slideDown {
  from {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px); }
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@-webkit-keyframes overflow {
  from {
    overflow: hidden; }
  to {
    overflow: visible; } }

@keyframes overflow {
  from {
    overflow: hidden; }
  to {
    overflow: visible; } }

@-webkit-keyframes visibility {
  from {
    visibility: hidden;
    pointer-events: none; }
  to {
    visibility: visible;
    pointer-events: auto; } }

@keyframes visibility {
  from {
    visibility: hidden;
    pointer-events: none; }
  to {
    visibility: visible;
    pointer-events: auto; } }

@-webkit-keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

.productGrid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.5rem;
  list-style: none;
  margin: 0;
  padding: 0; }
  @media (max-width: 1200px) {
    .productGrid {
      grid-template-columns: repeat(3, 1fr); } }
  @media (max-width: 900px) {
    .productGrid {
      grid-template-columns: repeat(2, 1fr); } }
  @media (max-width: 600px) {
    .productGrid {
      grid-template-columns: repeat(2, 1fr);
      gap: 1rem; } }
  .productGrid .product {
    width: 100%;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    margin: 0;
    padding: 0; }

.category-index {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 24px;
  padding-bottom: 80px;
  position: relative;
  /* When a category has no subcategory cards below the hero, the hero butts
       straight against the product toolbar (the flex gap doesn't apply — the
       page renders inline-block). Add breathing room in that case only. */ }
  .category-index .productGrid:before,
  .category-index .productGrid:after {
    content: unset;
    display: unset; }
  .category-index .productGrid .product {
    width: 100%; }
  .category-index .pagination-wrapper {
    margin-top: 0;
    padding-top: 5px; }
  .category-index:not(:has(.subcategories)) .themevale_category-toolbar {
    margin-top: 40px; }
  .category-index section.categoryIndexHero {
    position: relative;
    /* Positioning context for the absolute banner image */
    width: 100%;
    min-height: 400px;
    /* Grows to fit the overlaid description when expanded */
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    /* Clip the banner image to the hero bounds */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(25%, rgba(0, 0, 0, 0)), to(#000000));
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 25%, #000000 100%); }
    .category-index section.categoryIndexHero .categoryIndexHero__image {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
         object-fit: cover;
      /* Cover the entire area, cropping if necessary */
      -o-object-position: center;
         object-position: center;
      /* Center the image */ }
    .category-index section.categoryIndexHero .categoryIndexHero__content {
      position: relative;
      z-index: 2;
      width: 100%;
      min-height: 400px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      padding: 20px var(--container-padding-x) 40px;
      color: var(--color-tan-200);
      /* Default text color */
      -webkit-box-pack: end;
          -ms-flex-pack: end;
              justify-content: flex-end;
      gap: 16px;
      /* Description overlaid inside the hero (TOG-1459) */ }
      .category-index section.categoryIndexHero .categoryIndexHero__content ul.breadcrumbs {
        margin-top: 0;
        margin-bottom: auto;
        /* Pin breadcrumbs to the top; keep title + description at the bottom */
        list-style: none;
        color: white; }
      .category-index section.categoryIndexHero .categoryIndexHero__content li.breadcrumb::before {
        color: white; }
      .category-index section.categoryIndexHero .categoryIndexHero__content li.breadcrumb a {
        color: white;
        text-decoration: none;
        color: var(--Primary-White, #fff);
        font-family: Gotham;
        font-size: 12px;
        font-style: normal;
        font-weight: 500;
        line-height: 110%;
        /* 13.2px */
        letter-spacing: 1.2px;
        text-transform: uppercase; }
      .category-index section.categoryIndexHero .categoryIndexHero__content li.breadcrumb .breadcrumb-label {
        color: var(--Primary-White, #fff);
        font-family: Gotham;
        font-size: 12px;
        font-style: normal;
        font-weight: 500;
        line-height: 110%;
        /* 13.2px */
        letter-spacing: 1.2px;
        text-transform: uppercase; }
      .category-index section.categoryIndexHero .categoryIndexHero__content .breadcrumbs__link:hover {
        background-color: rgba(0, 0, 0, 0.5); }
      .category-index section.categoryIndexHero .categoryIndexHero__content .breadcrumbs__separator {
        margin: 0 5px;
        color: white; }
      .category-index section.categoryIndexHero .categoryIndexHero__content .categoryIndexHero__title {
        font-size: 2.5rem;
        /* Adjust as needed */
        margin: 0;
        -ms-flex-item-align: start;
            align-self: flex-start;
        /* Align to the left */ }
      .category-index section.categoryIndexHero .categoryIndexHero__content .category-description {
        display: block;
        width: 100%;
        max-width: 760px;
        margin: 0;
        padding: 0;
        background: transparent;
        /* Not the standalone gray box anymore */
        color: var(--color-white);
        /* Prose defaults links/bold to dark grays that fail contrast on the
                   dark overlay — force white (WCAG AA), keeping the underline so links
                   stay distinguishable by more than color. */
        /* Collapsed: clamp the first paragraph to keep the hero compact. */ }
        .category-index section.categoryIndexHero .categoryIndexHero__content .category-description p {
          color: inherit;
          margin: 0 0 8px; }
        .category-index section.categoryIndexHero .categoryIndexHero__content .category-description a {
          color: var(--color-white);
          text-decoration: underline; }
        .category-index section.categoryIndexHero .categoryIndexHero__content .category-description strong,
        .category-index section.categoryIndexHero .categoryIndexHero__content .category-description b {
          color: var(--color-white); }
        .category-index section.categoryIndexHero .categoryIndexHero__content .category-description:not(.is-expanded) p:first-child {
          display: -webkit-box;
          -webkit-box-orient: vertical;
          -webkit-line-clamp: 3;
          line-clamp: 3;
          overflow: hidden;
          margin-bottom: 0; }
        .category-index section.categoryIndexHero .categoryIndexHero__content .category-description .read_more-btn {
          margin-top: 4px;
          border-radius: 24px;
          color: var(--color-white);
          border: 1px solid var(--color-white);
          background-color: transparent;
          font-family: var(--font-family-gotham);
          font-weight: 500;
          font-size: 14px;
          line-height: 24px;
          padding: 4px 14px;
          cursor: pointer;
          -webkit-transition: background-color 0.2s ease, color 0.2s ease;
          transition: background-color 0.2s ease, color 0.2s ease; }
          .category-index section.categoryIndexHero .categoryIndexHero__content .category-description .read_more-btn:hover, .category-index section.categoryIndexHero .categoryIndexHero__content .category-description .read_more-btn:focus {
            background-color: var(--color-white);
            color: var(--color-black); }
    .category-index section.categoryIndexHero::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: -webkit-gradient(linear, left top, left bottom, color-stop(25%, rgba(0, 0, 0, 0)), to(#000000));
      background: linear-gradient(180deg, rgba(0, 0, 0, 0) 25%, #000000 100%);
      z-index: 1; }
    .category-index section.categoryIndexHero .categoryIndexHero__content {
      z-index: 2;
      /* Ensure content is above the gradient */ }
  .category-index .banner-img {
    /* Gradient */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(25%, rgba(0, 0, 0, 0)), to(#000000));
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 25%, #000000 100%); }
  .category-index .banner-img img {
    -o-object-fit: cover;
       object-fit: cover; }
  .category-index .title-container-cstm-category {
    position: absolute;
    bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 30%;
    width: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(#000000));
    background: linear-gradient(180deg, rgba(0, 0, 0, 0), #000000 100%);
    padding: 1rem; }
    .category-index .title-container-cstm-category h1.page-heading {
      color: var(--color-tan-200);
      padding: 0;
      font-size: 2.5rem; }
  .category-index section.subcategories {
    padding-top: 24px;
    padding-bottom: 24px; }
    @media (min-width: 1025px) {
      .category-index section.subcategories {
        padding-bottom: 48px; } }
  .category-index .categories-boxes {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    list-style: none;
    padding: 0;
    margin: 0; }
    @media (min-width: 1025px) {
      .category-index .categories-boxes {
        grid-template-columns: repeat(3, 1fr);
        gap: 24px; } }
    .category-index .categories-boxes .list-item {
      height: 100%; }
    .category-index .categories-boxes .box {
      display: block;
      position: relative;
      width: 100%;
      aspect-ratio: 1 / 1;
      border-radius: 0;
      border: 1px solid var(--color-gray-200);
      overflow: hidden; }
      @media (min-width: 1025px) {
        .category-index .categories-boxes .box {
          display: grid;
          grid-template-columns: 0.75fr 1fr;
          gap: 16px;
          aspect-ratio: unset;
          height: 100%;
          padding: 8px; } }
      .category-index .categories-boxes .box .box__image {
        width: 100%;
        height: 100%; }
        @media (min-width: 1025px) {
          .category-index .categories-boxes .box .box__image {
            width: 180px;
            height: 180px; } }
        .category-index .categories-boxes .box .box__image img {
          width: 100%;
          height: 100%;
          -o-object-fit: cover;
             object-fit: cover; }
      .category-index .categories-boxes .box .box__content {
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-pack: end;
            -ms-flex-pack: end;
                justify-content: flex-end;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        gap: 6px;
        padding: 12px 8px;
        background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.7)));
        background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.7) 100%); }
        @media (min-width: 1025px) {
          .category-index .categories-boxes .box .box__content {
            position: static;
            -webkit-box-pack: center;
                -ms-flex-pack: center;
                    justify-content: center;
            gap: 8px;
            padding: 0;
            background: none;
            width: 100%; } }
        .category-index .categories-boxes .box .box__content .box__content-title {
          color: var(--color-white);
          font-size: var(--text-base);
          font-weight: 500;
          text-align: center; }
          @media (min-width: 1025px) {
            .category-index .categories-boxes .box .box__content .box__content-title {
              color: var(--color-gray-900);
              font-size: var(--text-lg); } }
        .category-index .categories-boxes .box .box__content .box__content-link {
          background: var(--color-tan-100);
          color: var(--color-gray-900);
          font-size: var(--text-xs);
          text-decoration: none;
          padding: 4px 12px 6px;
          border-radius: 24px;
          font-family: var(--font-family-alt);
          text-transform: uppercase; }
          @media (min-width: 1025px) {
            .category-index .categories-boxes .box .box__content .box__content-link {
              font-size: var(--text-sm);
              padding: 6px 16px 8px; } }
  .category-index #related-blogs-section {
    scroll-margin-top: 100px; }
    .category-index #related-blogs-section .relatedBlogPosts__title {
      margin-bottom: 24px; }
      @media (min-width: 1025px) {
        .category-index #related-blogs-section .relatedBlogPosts__title {
          margin-bottom: 32px; } }
    .category-index #related-blogs-section .blogPage__related {
      padding: 0; }
    .category-index #related-blogs-section .blogPage__grid {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: 24px; }
      @media (min-width: 1025px) {
        .category-index #related-blogs-section .blogPage__grid {
          display: grid;
          grid-template-columns: 1fr 1fr 1fr;
          gap: 48px; } }
    .category-index #related-blogs-section .blogCard__thumbnail {
      margin: 0 0 24px; }
      .category-index #related-blogs-section .blogCard__thumbnail img {
        height: 250px;
        width: 100%;
        -o-object-fit: cover;
           object-fit: cover; }
    .category-index #related-blogs-section .blogCard__heading {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: 14px; }
    .category-index #related-blogs-section .blogCard__title {
      margin: 0;
      color: #0f0f0f;
      font-family: Gotham;
      font-size: 24px;
      font-style: normal;
      font-weight: 700;
      line-height: 110%;
      text-transform: uppercase;
      line-clamp: 2;
      display: -webkit-box;
      -webkit-line-clamp: 2;
      -webkit-box-orient: vertical;
      overflow: hidden;
      text-overflow: ellipsis; }
    .category-index #related-blogs-section .blogCard__date-author {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      gap: 4px;
      color: var(--color-gray-700);
      font-family: Gotham;
      font-size: 18px;
      font-style: normal;
      font-weight: 500;
      line-height: 150%;
      letter-spacing: 0.9px; }
    .category-index #related-blogs-section .blogCard__content {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: 14px; }
    .category-index #related-blogs-section .blogCard__summary {
      display: -webkit-box;
      -webkit-line-clamp: 4;
      line-clamp: 4;
      -webkit-box-orient: vertical;
      color: #5f5f5f;
      font-family: Gotham;
      font-size: 16px;
      font-style: normal;
      font-weight: 400;
      line-height: 150%;
      letter-spacing: 0.32px;
      margin-bottom: 24px;
      overflow: hidden;
      text-overflow: ellipsis; }
    .category-index #related-blogs-section .blogCard__footer .button {
      margin-top: 0; }
  .category-index [data-sub-layout] {
    max-width: 100%; }
  .category-index [data-sub-layout-container] {
    gap: 24px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap; }
    @media (min-width: 1025px) {
      .category-index [data-sub-layout-container] {
        gap: 36px;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row; } }
    .category-index [data-sub-layout-container] img {
      aspect-ratio: 4/3;
      -o-object-fit: cover;
         object-fit: cover; }
  .category-index .productList .productList__item img {
    aspect-ratio: 4/3; }
  .category-index [data-section="category-popular"] {
    margin-top: 0;
    background-color: var(--color-gray-100); }
    .category-index [data-section="category-popular"] .container {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: 16px;
      padding: 20px;
      overflow: hidden;
      padding: clamp(42px, var(--scale), 20px) clamp(20px, var(--scale), 80px); }
      @media (min-width: 1025px) {
        .category-index [data-section="category-popular"] .container {
          gap: 12px; } }
    .category-index [data-section="category-popular"] .page-heading {
      margin: 0; }
    .category-index [data-section="category-popular"] .heading {
      margin: 0; }
    .category-index [data-section="category-popular"] .slick-dotted.slick-slider {
      margin-bottom: 0; }
    .category-index [data-section="category-popular"] .popular-products-content .productCarousel .productCarousel-slide {
      padding: 6px; }
    .category-index [data-section="category-popular"] .popular-products-content .productCarousel .card {
      background-color: var(--color-white);
      border-radius: 12px;
      -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
              box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
      overflow: hidden;
      -webkit-transition: -webkit-box-shadow 0.2s ease;
      transition: -webkit-box-shadow 0.2s ease;
      transition: box-shadow 0.2s ease;
      transition: box-shadow 0.2s ease, -webkit-box-shadow 0.2s ease;
      padding: 16px; }
      .category-index [data-section="category-popular"] .popular-products-content .productCarousel .card:hover {
        -webkit-box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
                box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); }
    .category-index [data-section="category-popular"] .popular-products-content .productGrid .product {
      background-color: var(--color-white);
      border-radius: 12px;
      -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
              box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
      overflow: hidden;
      -webkit-transition: -webkit-box-shadow 0.2s ease;
      transition: -webkit-box-shadow 0.2s ease;
      transition: box-shadow 0.2s ease;
      transition: box-shadow 0.2s ease, -webkit-box-shadow 0.2s ease;
      padding: 16px; }
      .category-index [data-section="category-popular"] .popular-products-content .productGrid .product:hover {
        -webkit-box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
                box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); }
  .category-index .category-faq-section {
    max-width: var(--container-max-width-sm);
    margin: 0 auto;
    width: 100%;
    padding: 24px; }
    @media (min-width: 1025px) {
      .category-index .category-faq-section {
        padding: 0 80px; } }
    .category-index .category-faq-section .faq-section {
      margin-top: 16px; }
      .category-index .category-faq-section .faq-section [slot="answer"] p {
        margin-top: 0 !important;
        font-size: var(--text-sm); }
      .category-index .category-faq-section .faq-section .description {
        margin: 0;
        font-size: var(--text-sm); }

/* =============================================================================
   Category description modal — the "dark feature modal" (TOG-1475)
   Figma: Website-Design-Edits, node 4713:11532 (desktop) / 4714:11572 (mobile).

   Opened by the hero's Read More button so long category copy no longer stretches
   the hero. Kept at the top level (not nested under .category-index) because the
   dialog is position: fixed and must not inherit the page's layout context.
   ========================================================================== */
.categoryDescriptionModal {
  position: fixed;
  inset: 0;
  z-index: var(--z-index-max);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 20px;
  /* 35px black square with a 20px glyph, per the design. */
  /* Fixed 244px band. The image is cloned from the hero at open time — category
       banners are wide, so cover-crop them against the design's black backdrop. */
  /* The text pane is what scrolls when the copy outruns the modal. The glow is a
       transcription of the design's radial gradient: a ~450px circle centred 224px
       below the pane, so it stays pinned to the bottom edge at any height. */
  /* Bodoni body copy, per the design — .prose defaults to Gotham and dark text. */
  /* The design specifies the same 52px/41px pane padding and 28px heading on mobile
       (390px frame → 350px panel, which the 20px outer padding above reproduces). Below
       the narrowest designed width, 41px of padding leaves too little measure to read —
       ease it off there only. */ }
  .categoryDescriptionModal[hidden] {
    display: none; }
  .categoryDescriptionModal .categoryDescriptionModal__overlay {
    position: absolute;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.5); }
  .categoryDescriptionModal .categoryDescriptionModal__dialog {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    /* Wrapped in calc() so Dart Sass emits the CSS min() instead of trying to evaluate
           its own min() over mixed units — same workaround as the rewards signup modal. */
    width: calc(min(556px, 100%));
    max-height: calc(min(799px, 90dvh));
    overflow: hidden;
    background-color: var(--color-black); }
    .categoryDescriptionModal .categoryDescriptionModal__dialog:focus {
      outline: none; }
    .categoryDescriptionModal .categoryDescriptionModal__dialog:focus-visible {
      outline: 2px solid var(--color-white);
      outline-offset: -2px; }
  .categoryDescriptionModal .categoryDescriptionModal__close {
    position: absolute;
    top: 15px;
    right: 15px;
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 35px;
    height: 35px;
    padding: 0;
    margin: 0;
    border: 0;
    background-color: var(--color-black);
    color: var(--color-white);
    cursor: pointer; }
    .categoryDescriptionModal .categoryDescriptionModal__close .icon {
      width: 20px;
      height: 20px;
      fill: currentColor; }
    .categoryDescriptionModal .categoryDescriptionModal__close:hover, .categoryDescriptionModal .categoryDescriptionModal__close:focus-visible {
      color: var(--color-tan-200); }
  .categoryDescriptionModal .categoryDescriptionModal__media {
    position: relative;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    height: 244px;
    background-color: var(--color-black);
    /* Same black fade the category hero uses (`section.categoryIndexHero` / `.banner-img`),
           so the band blends into the dark text pane instead of ending on a hard edge. */ }
    .categoryDescriptionModal .categoryDescriptionModal__media::after {
      content: "";
      position: absolute;
      inset: 0;
      background: -webkit-gradient(linear, left top, left bottom, color-stop(25%, rgba(0, 0, 0, 0)), to(#000000));
      background: linear-gradient(180deg, rgba(0, 0, 0, 0) 25%, #000000 100%);
      pointer-events: none; }
  .categoryDescriptionModal .categoryDescriptionModal__image {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center; }
  .categoryDescriptionModal .categoryDescriptionModal__content {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    overflow-y: auto;
    padding: 52px 41px;
    background-image: radial-gradient(450px 450px at 50% calc(100% + 224px), var(--color-red) 0%, #aa1229 25%, #720c1b 50%, #550914 62.5%, #39060e 75%, #1c0307 87.5%, #0e0203 93.75%, var(--color-black) 100%);
    color: var(--color-white);
    text-align: center; }
  .categoryDescriptionModal .categoryDescriptionModal__title {
    margin: 0 0 12px;
    font-family: var(--font-family-gotham);
    font-size: 28px;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: 2.8px;
    text-transform: uppercase;
    color: var(--color-white); }
  .categoryDescriptionModal .categoryDescriptionModal__body {
    font-family: var(--font-family-bondi);
    font-size: 16px;
    line-height: 1.5;
    letter-spacing: 0.8px;
    color: var(--color-white);
    /* Keep links legible on the dark pane (AA) and distinguishable by more than
           colour — same treatment as the hero description. */ }
    .categoryDescriptionModal .categoryDescriptionModal__body p,
    .categoryDescriptionModal .categoryDescriptionModal__body ul,
    .categoryDescriptionModal .categoryDescriptionModal__body ol {
      margin: 0 0 12px;
      color: inherit; }
    .categoryDescriptionModal .categoryDescriptionModal__body > :last-child {
      margin-bottom: 0; }
    .categoryDescriptionModal .categoryDescriptionModal__body h2,
    .categoryDescriptionModal .categoryDescriptionModal__body h3,
    .categoryDescriptionModal .categoryDescriptionModal__body h4,
    .categoryDescriptionModal .categoryDescriptionModal__body h5,
    .categoryDescriptionModal .categoryDescriptionModal__body h6 {
      color: var(--color-white);
      font-family: var(--font-family-gotham); }
    .categoryDescriptionModal .categoryDescriptionModal__body a {
      color: var(--color-white);
      text-decoration: underline; }
    .categoryDescriptionModal .categoryDescriptionModal__body strong,
    .categoryDescriptionModal .categoryDescriptionModal__body b {
      color: var(--color-white); }
    .categoryDescriptionModal .categoryDescriptionModal__body img {
      max-width: 100%;
      height: auto; }
  @media (max-width: 379px) {
    .categoryDescriptionModal .categoryDescriptionModal__content {
      padding: 40px 24px; } }

.cigar-brands-page .brand img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover; }
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNhdGVnb3J5LXBhZ2UiLCIuLi8uLi9ob21lL2FhcmVuL3d3dy9yZXNldC5zY3NzIiwiLi4vLi4vaG9tZS9hYXJlbi93d3cvdGhlbWUuc2NzcyIsIi4uLy4uL2hvbWUvYWFyZW4vd3d3L3Rvb2xzL3Rvb2xraXQuc2NzcyIsIi4uLy4uL2hvbWUvYWFyZW4vd3d3L3Byb3NlLnNjc3MiLCIuLi8uLi9ob21lL2FhcmVuL3d3dy9rZXlmcmFtZXMuc2NzcyIsIi4uLy4uL2hvbWUvYWFyZW4vd3d3L2xheW91dHMvcHJvZHVjdHMvcHJvZHVjdEdyaWRPdmVycmlkZS5zY3NzIiwiLi4vLi4vaG9tZS9hYXJlbi93d3cvcGFnZXMvY2F0ZWdvcnkuc2NzcyIsIi4uLy4uL2hvbWUvYWFyZW4vd3d3L3BhZ2VzL2NpZ2FyLWJyYW5kcy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0FoQjs7O0VBR0ksOEJBQXNCO1VBQXRCLHNCQUFzQjtFQUFFLE1BQUE7RUFDeEIsZUFBZTtFQUFFLE1BQUE7RUFDakIsbUJBQW1CO0VBQUUsTUFBQTtFQUNyQixxQkFBcUI7RUFBRSxNQUFBLEVBQU87O0FBR2xDOztFQUVJLGdCQUFhLEVBQUE7O0FBR2pCOzs7Ozs7OztLRFdLO0FDREw7O0VBRUksZ0JBQWdCO0VBQUUsTUFBQTtFQUNsQiw4QkFBOEI7RUFBRSxNQUFBO0VBQ2hDLGdCQUFnQjtFQUFFLE1BQUE7RUFDbEIsY0FBYztFQUNkLFdBQVc7RUFBRSxNQUFBO0VBQ2IsK0hBQ3NCO0VBQUUsTUFBQTtFQUN4QixxQ0FBNkI7VUFBN0IsNkJBQTZCO0VBQUUsTUFBQTtFQUMvQiwrQkFBK0I7RUFBRSxNQUFBO0VBQ2pDLHdDQUF3QztFQUFFLE1BQUEsRUFBTzs7QUFHckQ7OztDRFdDO0FDTkQ7RUFDSSxTQUFTO0VBQUUsTUFBQTtFQUNYLG9CQUFvQjtFQUFFLE1BQUEsRUFBTzs7QUFHakM7Ozs7Q0RZQztBQ05EO0VBQ0ksU0FBUztFQUFFLE1BQUE7RUFDWCxjQUFj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 */