/** Shopify CDN: Minification failed

Line 120:104 Unexpected "/"

**/
@charset "UTF-8";

/* HOMEPAGE CUSTOMIZATIONS */ 

/* line height on hero slider */
@media (min-width: 1200px) {
  .slideshow .slideshow__slide-heading {
    font-size: 66px !important;
    line-height: 1;
  }
  .slideshow .slideshow__slide-description {
    font-size: 24px!important;
    line-height: 1.2!important;
  }
} /* Align slideshow images to bottom center */
.slideshow__slide-media {
  object-position: center bottom !important;
} /* Align pug/vacuum image to bottom */
.image-with-text__image {
  object-position: center bottom !important;
} /* Adjust featured product layout */
.product-media {
  width: calc(46.383% - 16px)!important;
  margin-right: 62px!important;
}
.product-media + .product-form {
  width: calc(53.617% - 16px)!important;
} /* reduce padding on heading section */

@media (min-width: 768px) {
  .text-section {
    padding-bottom: 24px!important;
  }
} /* reduce size of icons */
@media (min-width: 768px) {
  .benefits .benefits__icon-wrapper {
    width: 70px!important;
    height: 70px!important;
    margin-bottom: 14px!important;
  }

.article-card__author {
  display: none!important;
}

} /* reduce newsletter padding */
@media (min-width: 992px) {
  .newsletter
    .newsletter__wrapper.newsletter__wrapper--bg-img
    .newsletter__content {
    padding-top: min(8.5%, 206px)!important;
    padding-bottom: min(8.5%, 206px)!important;
  }
} /* remove opaque block from button section */
.banner .banner__content {
  padding: 0px !important;
  background: rgba(255, 255, 255, 0) !important;
} /* END HOMEPAGE CUSTOMIZATIONS */ 

/* CONTACT PAGE CUSTOMIZATIONS */
.store-location .store-location__image {
  object-position: center bottom !important;
} /* change footer menu titles */
.footer .footer__navigation-heading {
  color: white !important;
}
body {
  background-color: #f0efec !important;
}

/* Reduce padding between product description and vendor info on desktop */
@media (min-width: 992px) {
  .product-description-wrapper {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-bottom: 4px !important;
  }

  .product-vendor {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 14px !important;
  }
}

/* Hide only author (second info item) */
.article-sidebar__article-info-item:last-child {
  display: none !important;
}


/* Make all buttons use a font weight of 600 */
button,
.shopify-payment-button__button,
.button,
.btn,
input[type="submit"],
a.button {
  font-weight: 600 !important;
}



/* PRODUCT TEMPLATE PAGE CUSTOMIZATIONS */


body.template-product {
  background-color: #f0efec!important;
}

.product-sticky-add-to-cart {
  background-color: #fff!important;
}

.pp-w-auto pp-h-auto pp-object-contain pp-object-center pp-max-w-full pp-max-h-full pp-absolute pp-top-1/2 pp-left-1/2 -pp-translate-x-1/2 -pp-translate-y-1/2 {
  border-radius: 20px!important;
}

/* MOBILE CUSTOMIZATIONS */
@media (max-width: 1199.98px) {
  .product-media {
    width: 100% !important;
  margin-right: 0 !important;}

.product-media + .product-form {
    width: 100%!important;}

}

/* --- Slideshow height: mobile override --- */
@media (max-width: 749px) {
  /* 1) Override the variable most themes use */
  .slideshow.js-slideshow,
  .js-slideshow.slideshow {
    --height-mobile: 60vh !important;   /* Try 60–70vh to taste */
  }

  /* 2) Fallback: force inner containers to respect the height */
  .slideshow .slideshow__container,
  .slideshow .slideshow__slider,
  .slideshow .slideshow__slide,
  .slideshow .slideshow__slide-box,
  .slideshow .slideshow__media-wrapper,
  .slideshow .slideshow__media {
    height: 60vh !important;
    max-height: 60vh !important;
  }

  /* 3) Ensure image/video fills the tighter box nicely */
  .slideshow .slideshow__media img,
  .slideshow .slideshow__media video {
    object-fit: cover;
    width: 100%;
    height: 100%;
  }
}



/* ==== OCU Upsell Widget Custom Styles ==== */
#ocu-widget {
  background: #fff;
  border: 1px solid #e6e6e6;
  border-radius: 12px;
  padding: 24px;
  margin-top: 4px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04);
}

/* Heading */
#ocu-widget .ocu-title p span {
  font-family: var(--font-heading-family, inherit)!important;
  font-size: 1.2rem;
  line-height: 24px;
  font-weight: 700;
  color: var(--color-foreground, #222);
  display: block;
  text-align: left;
  margin-bottom: 2px!important;
}

/* General text styling to match theme */
#ocu-widget p, 
#ocu-widget span, 
#ocu-widget label {
  font-family: var(--font-body-family, inherit);
  color: var(--color-foreground, #222);
  font-size: 0.9rem!important;
  line-height: 1.5;
}

/* Product cards inside the box */
#ocu-widget .ocu-product-card {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  padding: 16px;
  transition: box-shadow 0.2s ease-in-out;
padding-bottom: 0px!important;}

#ocu-widget .ocu-product-card:hover {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

/* Optional: Add subtle separation between multiple offers */
#ocu-widget .ocu-product-card + .ocu-product-card {
  margin-top: 16px;
}

.ocu-widget {
  margin-top: 0px!important;
}

/* Hide OCU total savings summary on cart page only */
.template-cart .ocu-total-savings,
.template-cart .ocu-cart__total-savings,
.template-cart div[data-ocu-total-savings] {
  display: none !important;
}





/* ============================================
   PagePilot Variables Recreation
   ============================================ */
:root {
  /* --- Brand colors --- */
  --pp-brand-color: #2531B7;
  --pp-brand-color-hover: #1b2590;
  --pp-accent-color: #00C26F;
  --pp-border-color: rgba(0, 0, 0, 0.08);

  /* --- Text colors --- */
  --pp-text-color: #111111;
  --pp-text-muted: #666666;
  --pp-heading-color: #111111;

  /* --- Font sizes --- */
  --pp-body-font-size: 18px;
  --pp-heading-font-size: 1.65rem;
  --pp-heading-lg: 2.25rem;
  --pp-heading-xl: 2.75rem;
  --pp-heading-2xl: 3.25rem;

  /* --- Border radii --- */
  --pp-border-radius: 16px;
  --pp-border-radius-sm: 8px;

  /* --- Buttons --- */
  --pp-button-padding-y: 14px;
  --pp-button-padding-x: 32px;
  --pp-button-radius: 24px;
  --pp-button-font-weight: 600;

  /* --- Layout spacing --- */
  --pp-section-padding: 60px;
  --pp-gap: 40px;


  /* --- Buttons --- */
--pp-button-background-color: #2531b7;
--pp-button-text-color: #ffffff
}
