/** Shopify CDN: Minification failed

Line 232:1 Unexpected "{"
Line 256:0 Unexpected "{"

**/
:root {
  --font-body: "Inter", sans-serif;
  --font-heading: "Inter", sans-serif;

  --font-weight-light: 300;
  --font-weight-medium: 500;

  --letter-spacing-tight: -0.3px;
  --letter-spacing-normal: 0px;
  --letter-spacing-loose: 0.5px;
  --letter-spacing-heading: -0.3px;
  --letter-spacing-body: 0px;

  --line-height-tight: 1.1;
  --line-height-normal: 1.4;
  --line-height-loose: 1.6;

  --font-size-h1: 40px;
  --font-size-h2: 34px;
  --font-size-h3: 28px;
  --font-size-h4: 22px;
  --font-size-h5: 19px;
  --font-size-h6: 17px;

  --font-size-body-large: 19px;
  --font-size-body: 16px;
  --font-size-body-small: 14px;
  --font-size-caption: 12px;

  --min-font-size-h1: 32px;
  --max-font-size-h1: 48px;
  --min-font-size-h2: 28px;
  --max-font-size-h2: 40px;
  --min-font-size-h3: 24px;
  --max-font-size-h3: 32px;
}

h1,
.h1 {
  font-family: var(--font-heading);
  font-weight: var(--font-weight-bold);
  font-size: var(--h1-font-size, var(--font-size-h1));
  line-height: var(--line-height-tight);
  letter-spacing: var(--letter-spacing-heading);
  margin-bottom: 0.5em;
}

h2,
.h2 {
  font-family: var(--font-heading);
  font-weight: var(--font-weight-bold);
  font-size: var(--h2-font-size, var(--font-size-h2));
  line-height: var(--line-height-tight);
  letter-spacing: var(--letter-spacing-heading);
  margin-bottom: 0.5em;
}

h3,
.h3 {
  font-family: var(--font-heading);
  font-weight: var(--font-weight-semibold);
  font-size: var(--h3-font-size, var(--font-size-h3));
  line-height: var(--line-height-tight);
  letter-spacing: var(--letter-spacing-body);
  margin-bottom: 0.5em;
}

h4,
.h4 {
  font-family: var(--font-heading);
  font-weight: var(--font-weight-semibold);
  font-size: var(--h4-font-size, var(--font-size-h4));
  line-height: var(--line-height-normal);
  letter-spacing: var(--letter-spacing-body);
  margin-bottom: 0.5em;
}

h5,
.h5 {
  font-family: var(--font-heading);
  font-weight: var(--font-weight-medium);
  font-size: var(--h5-font-size, var(--font-size-h5));
  line-height: var(--line-height-normal);
  letter-spacing: var(--letter-spacing-body);
  margin-bottom: 0.5em;
}

.subtitle {
  font-size: var(--subtitle-font-size, 18px);
}

h6,
.h6 {
  font-family: var(--font-heading);
  font-weight: var(--font-weight-medium);
  font-size: var(--font-size-h6);
  line-height: var(--line-height-normal);
  letter-spacing: var(--letter-spacing-body);
  margin-bottom: 0.5em;
}

body,
.body {
  font-family: var(--font-body);
  font-weight: var(--font-weight-regular);
  font-size: var(--body-font-size, var(--font-size-body));
  line-height: var(--line-height-normal);
  letter-spacing: var(--letter-spacing-body);
}

.body-large {
  font-family: var(--font-body);
  font-weight: var(--font-weight-regular);
  font-size: var(--font-size-body-large);
  line-height: var(--line-height-normal);
  letter-spacing: var(--letter-spacing-body);
}

.body-small {
  font-family: var(--font-body);
  font-weight: var(--font-weight-regular);
  font-size: var(--font-size-body-small);
  line-height: var(--line-height-normal);
  letter-spacing: var(--letter-spacing-body);
}

.caption {
  font-family: var(--font-body);
  font-weight: var(--font-weight-regular);
  font-size: var(--font-size-caption);
  line-height: var(--line-height-normal);
  letter-spacing: var(--letter-spacing-body);
}

.button-text {
  font-family: var(--font-body);
  font-weight: var(--global-button-font-weight, 700);
  font-size: var(--global-button-font-size, var(--font-size-body-small));
  line-height: 1.2;
  letter-spacing: var(--global-button-letter-spacing, var(--letter-spacing-body));
  text-transform: var(--global-button-text-transform, uppercase);
}

.text-center {
  text-align: center;
}
.text-left {
  text-align: left;
}
.text-right {
  text-align: right;
}

.text-light {
  font-weight: var(--font-weight-light);
}
.text-regular {
  font-weight: var(--font-weight-regular);
}
.text-medium {
  font-weight: var(--font-weight-medium);
}
.text-semibold {
  font-weight: var(--font-weight-semibold);
}
.text-bold {
  font-weight: var(--font-weight-bold);
}

span,
div:not([class^="shopify"]),
p:not([class^="shopify"]),
button:not([class^="shopify"]),
a:not([class^="shopify"]) {
  font-family: var(--font-body-family-override) !important;
}

span[class*="title"],
span[class*="heading"],
span[class*="product-title"],
span[class*="section-title"] {
  font-family: var(--font-heading-family-override) !important;
}

.check-yes,
.check-no,
.text-value,
.feature-name,
.product-subtitle,
.product-title,
.reviewer-name,
.carousel-reviewer-name,
.rating-text,
.unique-rating-text,
.benefit-text,
.counter-prefix,
.counter-number,
.counter-suffix {
  font-family: var(--font-body-family-override) !important;
}

/* App Typography Fixes
   Ensures third-party apps use consistent letter spacing
   Prevents apps from using heading letter spacing inappropriately
*/

/* Target common app selectors and force them to use body letter spacing */
.shopify-app-block,
.shopify-buy-frame,
div[data-shopify-app],
div[data-app-id],
div[class*="app-"],
div[class*="App"],
#bundle-container,
#bundle-app,
[data-bundle-app],
.bundle-builder,
#ReCharge,
[data-rebuy-id],
[data-rebuy-container],
[data-bold-bundle],
[data-loyalty-container],
[data-quickview],
[data-sm-buy],
[data-judge-me],
 {
  --letter-spacing-heading: var(--app-letter-spacing, var(--letter-spacing-body));
  letter-spacing: var(--app-letter-spacing, var(--letter-spacing-body)) ;
}

/* Also target all children of app containers */
.shopify-app-block *,
.shopify-buy-frame *,
div[data-shopify-app] *,
div[data-app-id] *,
div[class*="app-"] *,
div[class*="App"] *,
#bundle-container *,
#bundle-app *,
[data-bundle-app] *,
.bundle-builder *,
#ReCharge *,
[data-rebuy-id] *,
[data-rebuy-container] *,
[data-bold-bundle] *,
[data-loyalty-container] *,
[data-quickview] *,
[data-sm-buy] *,
[data-judge-me] *,
{
  --letter-spacing-heading: var(--app-letter-spacing, var(--letter-spacing-body)) ;
  letter-spacing: var(--app-letter-spacing, var(--letter-spacing-body)) ;
}

/* Fix for frames and iframes which might contain app content */
iframe[src*="app"],
iframe[src*="bundle"],
iframe[src*="recharge"],
iframe[src*="rebuy"],
iframe[src*="loyalty"] {
  --letter-spacing-heading: var(--app-letter-spacing, var(--letter-spacing-body)) !important;
}

/* Fix specific app containers by class name patterns */
[class*="bundle"],
[class*="Bundle"],
[class*="subscription"],
[class*="Subscription"],
[class*="rebuy"],
[class*="Rebuy"],
[class*="recharge"],
[class*="Recharge"],
[class*="quickview"],
[class*="Quickview"] {
  --letter-spacing-heading: var(--app-letter-spacing, var(--letter-spacing-body)) !important;
  letter-spacing: var(--app-letter-spacing, var(--letter-spacing-body)) !important;
}

/* Fix for apps that use letter-spacing directly - only target app elements */
.shopify-app-block[style*="letter-spacing"],
.shopify-buy-frame[style*="letter-spacing"],
div[data-shopify-app][style*="letter-spacing"],
div[data-app-id][style*="letter-spacing"],
div[class*="app-"][style*="letter-spacing"],
div[class*="App"][style*="letter-spacing"],
#bundle-container[style*="letter-spacing"],
#bundle-app[style*="letter-spacing"],
[data-bundle-app][style*="letter-spacing"],
.bundle-builder[style*="letter-spacing"],
#ReCharge[style*="letter-spacing"],
[data-rebuy-id][style*="letter-spacing"],
[data-rebuy-container][style*="letter-spacing"],
[data-bold-bundle][style*="letter-spacing"],
[data-loyalty-container][style*="letter-spacing"],
[data-quickview][style*="letter-spacing"],
[data-sm-buy][style*="letter-spacing"],
[data-judge-me][style*="letter-spacing"],
#judgeme_product_reviews[style*="letter-spacing"] {
  letter-spacing: var(--app-letter-spacing, var(--letter-spacing-body)) !important;
}

/* Exclude shop-product-details blocks from app letter-spacing rules */
.shop-product-section,
.shop-product-info,
.shop-product-info *:not(.shop-product-title):not([class*="product-title"]),
.shop-product-section *:not(.shop-product-title):not([class*="product-title"]),
.blocks-section:not(.shopify-app-block):not([data-shopify-app]):not([data-app-id]):not([class*="app-"]):not(
    [class*="App"]
  ),
.limited-inventory-alert,
.limited-inventory-alert *,
.product-description-block,
.product-description-block * {
  letter-spacing: var(--letter-spacing-body) !important;
}

/* Product title should use heading letter-spacing */
.shop-product-title,
.shop-product-section .shop-product-title,
[class*="product-title-title"] {
  letter-spacing: var(--letter-spacing-heading) !important;
}

@media screen and (max-width: 375px) {
  h1,
  .h1 {
    font-size: var(--min-font-size-h1);
  }
  h2,
  .h2 {
    font-size: var(--min-font-size-h2);
  }
  h3,
  .h3 {
    font-size: var(--min-font-size-h3);
  }
}

@media screen and (min-width: 1440px) {
  h1,
  .h1 {
    font-size: var(--max-font-size-h1);
  }
  h2,
  .h2 {
    font-size: var(--max-font-size-h2);
  }
  h3,
  .h3 {
    font-size: var(--max-font-size-h3);
  }
}
