/** Shopify CDN: Minification failed

Line 821:0 Unexpected "}"
Line 1107:6 Expected "=" but found whitespace
Line 1283:0 Expected "]" to go with "["

**/
/* Fix ONLY the horizontal scroll bar at bottom of page */
body {
  overflow-x: hidden !important;
  max-width: 100vw !important;
}

/* Fix desktop footer that causes overflow */
@media screen and (min-width: 990px) {
  .footer__content-bottom-wrapper:last-of-type {
    left: 0 !important;
    right: 0 !important;
    padding-left: 3rem !important;
  }
}

/* Hide slider on desktop only (for grid view) */
@media screen and (min-width: 990px) {
  .lb-grid-mode slider-component {
    display: none !important;
  }
}

/* Dawn uses variables for page width + side padding in many versions */
:root{
  --page-width: 100%;
  --page-width-margin: 0px;
}
/* Hard-set page-width padding to zero in case your Dawn version doesn't use vars */
.page-width,
.page-width--narrow,
.page-width--wide{
  padding-left: 0 !important;
  padding-right: 0 !important;
  max-width: 100% !important;
}

/* Contact page ONLY - Add 50px left/right padding to page heading section */
body.template-page-contact .page-width--narrow {
  padding-left: 25px !important;
  padding-right: 25px !important;
}

@media screen and (min-width: 750px) {
  body.template-page-contact .page-width--narrow {
    padding-left: 50px !important;
    padding-right: 50px !important;
  }
}

/* Contact form section ONLY - Add 50px left/right padding */
.contact.page-width--narrow {
  padding-left: 25px !important;
  padding-right: 25px !important;
}

@media screen and (min-width: 750px) {
  .contact.page-width--narrow {
    padding-left: 50px !important;
    padding-right: 50px !important;
  }
}

/* Remove ALL underlines from entire store */
* {
  text-decoration: none !important;
}

a,
a:hover,
a:focus,
a:active,
a:visited {
  text-decoration: none !important;
}

/* Remove any pseudo-element underlines */
*::before,
*::after {
  text-decoration: none !important;
  border-bottom: none !important;
}
/* Password page - Email input field text */
.password-page input[type="email"],
.password input[type="email"],
input[type="email"] {
  font-size: 16px; /* change this number */
}

/* Password page - Button text */
.password-page button,
.password button,
.password-page input[type="submit"],
.password input[type="submit"] {
  font-size: 16px; /* change this number */
}

/* Password page - "Enter with password" link text */
.password-page a,
.password a,
.password-link {
  font-size: 18px; /* change this number */
}

.page-width {
  max-width: 1920px;
}

/* Control the width of the country/region selector button in footer */
.footer__localization .disclosure__button,
.footer__localization .localization-form__select {
  min-width: 80px;
  max-width: 120px;
  width: auto;
  padding: 8px 30px 8px 12px;
}

/* Control the dropdown popup width */
.footer__localization .country-selector,
.footer__localization .disclosure__list-wrapper {
  min-width: 150px;
  max-width: 200px;
}

/* Make it responsive on desktop */
@media screen and (min-width: 750px) {
  .footer__localization .disclosure__button,
  .footer__localization .localization-form__select {
    min-width: 100px;
    max-width: 140px;
  }
}

/* Footer email signup - text sizes */
.footer__newsletter input[type="email"] {
  font-size: 16px; /* Change this for input field text */
}

.footer__newsletter button[type="submit"] {
  font-size: 16px; /* Change this for button text */
}

/* Also target the inline styles to override */
.footer__newsletter input[type="email"],
.footer__newsletter button {
  font-size: 16px !important; /* Change both to same size */
}

/* Target the actual link text inside the heading */
.card__information h3 a,
.card__information .card__heading a,
.product-card__title {
  font-size: 15px !important;
  line-height: 1.4 !important;
}

/* Add left padding to product titles only */
.card__information h3 a,
.card__information .card__heading a,
.product-card__title {
  padding-left: 15px;
}

/* Price */
/* Price */
.price {
  font-size: 15px !important;
}

#shopify-section-template--21287228735740__featured_collection .price {
  padding-left: 15px;
}

/* Footer copyright - centered, solid black, custom size */
.footer__copyright,
.footer__content-bottom p,
.footer__content-bottom-wrapper p,
.footer__content-bottom {
  color: #000000 !important;
  font-size: 14px !important;
  line-height: 1.4;
  text-align: center !important;
}

/* Center the entire bottom wrapper */
.footer__content-bottom-wrapper {
  justify-content: center !important;
  text-align: center !important;
}

/* Desktop - align copyright left with payment icons */
@media screen and (min-width: 990px) {
  .footer__content-bottom-wrapper:last-of-type {
    position: absolute;
    bottom: -70px;
    left: 3rem;
    text-align: left !important;
    justify-content: flex-start !important;
  }
  
  .footer__copyright {
    text-align: left !important;
    transform: translateY(-70px) !important;
  }
}

/* Remove any links styling in copyright */
.footer__copyright a,
.footer__content-bottom a {
  color:rgb(51, 30, 30) !important;
  text-decoration: none;
}

/* Footer copyright size - all parts */
.footer__content-bottom p.caption,
.footer__content-bottom-wrapper p.caption,
.footer__copyright.caption,
.footer__content-bottom small,
.footer__content-bottom span {
  font-size: 14px !important;
}

/* All links and text nodes in copyright area */
.footer__copyright a,
.footer__content-bottom p.caption a,
.footer__content-bottom p.caption *,
.footer__copyright * {
  font-size: 14px !important;
}

/* Add back horizontal padding but remove vertical */
.footer__content-bottom-wrapper {
  padding-left: 3rem !important;
  padding-right: 3rem !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Target only the vertical space below payment/localization */

/* Announcement bar text size */
.announcement-bar__message {
  font-size: 1.5rem;
  line-height: 1.2;
}

/* Sticky announcement bar above header */
:root {
  --announcement-bar-height: 0px;
}

.announcement-bar-section {
  position: sticky;
  top: 0;
  z-index: 100;
}

.shopify-section-header-sticky {
  top: var(--announcement-bar-height);
}

.shopify-section-header-hidden {
  top: calc(var(--announcement-bar-height) - var(--header-height));
}
.footer__content-bottom {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Payment icon positioning - DESKTOP ONLY */
@media screen and (min-width: 990px) {
  .footer__payment {
    transform: translateY(0px);
  }
  
  .footer__localization {
    transform: translateY(0px);
  }
}

/* Remove padding only from featured collection section (home) */
#shopify-section-featured_collection .page-width {
  padding-left: 0 !important;
  padding-right: 0 !important;
  max-width: 100% !important;
}

/* Remove gaps between product cards in featured collection */
#shopify-section-featured_collection .grid {
  gap: 0 !important;
  column-gap: 0 !important;
}

/* Home featured collection (template--2127287375740__featured_collection): 2-up on mobile only */
/* Mobile breakpoint (0-749px): ensure 2-column layout */
@media screen and (max-width: 749px) {
  #shopify-section-template--2127287375740__featured_collection .product-grid .grid__item {
    width: calc(50% - var(--grid-mobile-horizontal-spacing) / 2) !important;
    max-width: 50% !important;
    flex: 0 0 calc(50% - var(--grid-mobile-horizontal-spacing) / 2) !important;
  }
}

/* Home featured collection: 3-up between 750px-1080px */
@media screen and (min-width: 750px) and (max-width: 1080px) {
  #shopify-section-featured_collection .grid__item {
    width: 33.333333% !important;
    max-width: 33.333333% !important;
    flex: 0 0 33.333333% !important;
  }
}

/* Set product images to square and fill their container */
#shopify-section-featured_collection .product-card__media img,
#shopify-section-featured_collection .card__media img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
}

/* Home featured collection: 2-up from 0-500px */
@media screen and (max-width: 749px) {
  #shopify-section-featured_collection .grid__item {
    width: 50% !important;
    max-width: 50% !important;
    flex: 0 0 50% !important;
  }

  #shopify-section-featured_collection .card__information {
    padding-left: 10px !important;
  }
}

/* Home page: 2-up on mobile */
@media screen and (max-width: 749px) {
  .template-index .product-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .template-index .product-grid .grid__item {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
}

/* Home page: 3-up between 500px-1080px */
@media screen and (min-width: 500px) and (max-width: 1080px) {
  .template-index .product-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .template-index .product-grid .grid__item {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
}

/* Add 10px left padding to product card content in featured collection */
#shopify-section-featured_collection .card__content,
#shopify-section-featured_collection .card__information {
  padding-left: 25px !important;
}

/* Tablet down: reduce to half (12.5px) */
@media (max-width: 989px) {
  #shopify-section-featured_collection .card__content,
  #shopify-section-featured_collection .card__information {
    padding-left: 16px !important;
        padding-right: 16px !important;
  }
}


/* Set header left and right padding to 10px */
.header-wrapper .page-width,
.header .page-width {
  padding-left: 30px !important;
  padding-right: 30px !important;
}

/* Collection pages (template only) - Remove ALL padding from containers */
body.template-collection .collection .page-width,
body.template-collection .template-collection .page-width,
body.template-collection .collection-product-grid-container,
body.template-collection .collection .product-grid-container {
  padding-left: 0 !important;
  padding-right: 0 !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Collection pages (template only) - Target the product grid section specifically */
body.template-collection [id*="product-grid"] .page-width,
body.template-collection [id*="product-grid"] {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Collection pages (template only) - Remove gaps between product cards */
body.template-collection .collection .grid,
body.template-collection .template-collection .grid,
body.template-collection .collection .product-grid,
body.template-collection .template-collection .product-grid {
  gap: 0 !important;
  column-gap: 0 !important;
  row-gap: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Collection pages (template only) - Set each product card to exactly 1/3 width */
/* Scoped to body.template-collection to exclude featured-collection sections on homepage */
body.template-collection .collection .grid__item,
body.template-collection .template-collection .grid__item,
body.template-collection .collection .product-grid .grid__item {
  width: 33.333333% !important;
  max-width: 33.333333% !important;
  flex: 0 0 33.333333% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Collection pages - Set product images to square and fill container */
body.template-collection .collection .product-card__media img,
body.template-collection .collection .card__media img,
body.template-collection .template-collection .product-card__media img,
body.template-collection .template-collection .card__media img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
}

/* Collection pages - Add padding to product card titles and prices */
body.template-collection .collection .card__information,
body.template-collection .template-collection .card__information {
  padding-left: 50px !important;
}

/* Collection pages (template only) - Mobile: one product full width */
@media screen and (max-width: 749px) {
  body.template-collection .collection .grid__item,
  body.template-collection .template-collection .grid__item {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
  
  body.template-collection .collection .card__information,
  body.template-collection .template-collection .card__information {
    padding-left: 10px !important;
  }
}

/* Remove hover animation on product cards - instant switch */
.card__media img,
.product-card__media img,
.card__inner img,
.media img {
  transition: none !important;
  animation: none !important;
}

/* Instant image swap on hover - no fade */
.card--media .card__inner .card__media img:first-child,
.card--card .card__inner .card__media img:first-child,
.product-card .card__inner .card__media img:first-child {
  transition: opacity 0s !important;
}

.card--media .card__inner .card__media img:last-child,
.card--card .card__inner .card__media img:last-child,
.product-card .card__inner .card__media img:last-child {
  transition: opacity 0s !important;
}

/* Remove any transform animations on hover */
.card:hover img,
.product-card:hover img {
  transform: none !important;
  transition: none !important;
}

/* Collection banner - Make heading text smaller */
.collection-hero__title,
.collection__title,
[id*="banner"] .banner__heading,
.template-collection .banner__heading {
  font-size: 32px !important;
}

/* Collection banner - Make description text smaller */
.collection-hero__description,
.collection__description,
[id*="banner"] .banner__text,
.template-collection .banner__text {
  font-size: 16px !important;
}

/* Collection banner - Adjust overall height */
[id*="banner"],
.template-collection .banner {
  min-height: 70px !important;
  max-height: 70px !important;
}

/* Collection banner - Center text vertically */
[id*="banner"] .banner__content,
.template-collection .banner__content,
[id*="banner"] .banner__box,
.template-collection .banner__box {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: flex-start !important;
  height: 100% !important;
}

/* Country/region selector popup - Match button styling and position */
.footer__localization .disclosure__list-wrapper,
.footer__localization .country-selector {
  /* Position directly above the button */
  bottom: 100% !important;
  top: auto !important;
  margin-bottom: 0px !important;
  
  /* Match button width */
  min-width: 80px !important;
  max-width: 120px !important;
  width: 120px !important;
  
  /* Height exactly 3x the button height (button is ~40px with padding) */
  height: 120px !important;
  max-height: 120px !important;
  overflow-y: auto !important;
  
  /* Match button border and corner radius */
  border: 1px solid #000000 !important;
  border-radius: 0px !important;
  
  /* Clean up appearance */
  box-shadow: none !important;
  padding: 0 !important;
}

/* Desktop version */
@media screen and (min-width: 750px) {
  .footer__localization .disclosure__list-wrapper,
  .footer__localization .country-selector {
    min-width: 100px !important;
    max-width: 140px !important;
    width: 140px !important;
    height: 132px !important;
    max-height: 132px !important;
  }
}

/* Style the items inside the popup */
.footer__localization .disclosure__item {
  border: none !important;
  padding: 8px 12px !important;
}

/* Desktop product page: lock 2/3 media (left) + 1/3 info (right) */
@media (min-width: 990px) {
  .product .product__grid {
    display: flex !important;
    gap: 0 !important;
    align-items: flex-start !important;
  }

  /* Left: photos */
  .product .product__media-wrapper {
    flex: 0 0 66.666667% !important;
    max-width: 66.666667% !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  /* Right: info */
  .product .product__info-wrapper {
    flex: 0 0 33.333333% !important;
    max-width: 33.333333% !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  /* Padding INSIDE the info only (doesn't break the 1/3 edge) */
  .product .product__info-wrapper .product__info-container {
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
  }

  /* Full-width buy buttons */
  .product .product-form__buttons,
  .product .product-form__submit,
  .product .shopify-payment-button,
  .product .shopify-payment-button__button {
    width: 100% !important;
    max-width: none !important;
  }
}



/* Remove page-width container padding */
.template-product .page-width {
  padding: 0 !important;
  max-width: 100% !important;
}

/* Mobile - stack full width */
@media screen and (max-width: 989px) {
  .product .grid__item:first-child,
  .product .grid__item:last-child {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
}

@media screen and (min-width: 990px) {
  /* Hide slider controls/thumbnails when grid mode is active */
  media-gallery.lb-grid-mode .slider-buttons,
  media-gallery.lb-grid-mode .thumbnail-slider,
  media-gallery.lb-grid-mode .product__media-sublist {
    display: none !important;
  }

  /* Remove any styling from media only (no borders/shadows/radius) */
  media-gallery.lb-grid-mode .product__media,
  media-gallery.lb-grid-mode .media,
  media-gallery.lb-grid-mode img,
  media-gallery.lb-grid-mode video,
  media-gallery.lb-grid-mode model-viewer {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
  }
}

/* Mobile slider customization */
@media screen and (max-width: 989px) {
  .lb-custom-mobile {
    position: relative;
  }
  
  /* Full width images */
  .lb-custom-mobile slider-component,
  .lb-custom-mobile .slider {
    padding: 0 !important;
  }
  
  .lb-custom-mobile .slider__slide {
    width: 100% !important;
    padding: 0 !important;
  }
  
  /* Arrows on sides */
  .lb-custom-mobile .slider-buttons {
    position: absolute !important;
    top: 50% !important;
    left: 0 !important;
    right: 0 !important;
    transform: translateY(-50%) !important;
    width: 100% !important;
    display: flex !important;
    justify-content: space-between !important;
    pointer-events: none !important;
    z-index: 2 !important;
  }
  
  .lb-custom-mobile .slider-button {
    pointer-events: auto !important;
    background: rgba(255, 255, 255, 0.9) !important;
    border: none !important;
    width: 44px !important;
    height: 44px !important;
    border-radius: 50% !important;
    margin: 0 1rem !important;
  }
  
  /* Pill dots at bottom */
  .lb-custom-mobile .slider-counter {
    position: absolute !important;
    bottom: 1rem !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    display: flex !important;
    gap: 0.5rem !important;
    z-index: 2 !important;
  }
  
  .lb-custom-mobile .slider-counter__link .dot {
    width: 8px !important;
    height: 8px !important;
    border-radius: 4px !important;
    background: rgba(255, 255, 255, 0.6) !important;
    transition: width 0.3s ease !important;
  }
  
  .lb-custom-mobile .slider-counter__link[aria-current="true"] .dot {
    width: 24px !important;
    background: rgba(255, 255, 255, 1) !important;
  }
}

/* FIX: Make title stick with the rest of the product info (desktop only) */
@media screen and (min-width: 750px) {
  :root {
    --lb-sticky-top: calc(var(--announcement-bar-height) + 80px);
  }

  /* Keep split media layout active on tablet+ (disable default layout) */
  .product--split-media .product__media-layout--default {
    display: none !important;
  }

  .product--split-media .product__media-layout--split {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0 !important;
  }

  .product--split-media:not(.product--no-media) .product__media-wrapper {
    max-width: 66.666667% !important;
    width: 66.666667% !important;
  }

  .product--split-media:not(.product--no-media) .product__info-wrapper {
    max-width: 33.333333% !important;
    width: 33.333333% !important;
  }

  /* Make the whole info column sticky (includes title) */
  body.template-product .product__info-wrapper {
    position: sticky !important;
    top: var(--lb-sticky-top) !important;
    align-self: flex-start !important;
    height: fit-content !important;
  }

  /* Cancel any inner sticky that starts below the title */
  body.template-product .product__info-container,
  body.template-product .product__info-wrapper .product__info-container {
    position: static !important;
    top: auto !important;
  }

  /* Sticky fails if ancestors have overflow/transform */
  body.template-product .product,
  body.template-product .product__media-wrapper,
  body.template-product .product__info-wrapper {
    overflow: visible !important;
    transform: none !important;
  }
}

@media screen and (max-width: 749px) {
  .product--split-media .product__media-layout--split {
    display: none !important;
  }

  .product--split-media .product__media-layout--default {
    display: block !important;
  }
}

/* Narrower widths: match header + announcement combined height */
@media screen and (min-width: 750px) and (max-width: 989px) {
  :root {
    --lb-sticky-top: calc(var(--announcement-bar-height) + var(--header-height));
  }
}

/* Product media sticky: account for announcement + header height */
@media screen and (min-width: 750px) {
  body.template-product .product--split-media .product__media-split-col--primary,
  body.template-product .product__media-split-col--primary {
    top: var(--lb-sticky-top) !important;
  }
}

/* Sticky product info */
@media screen and (min-width: 990px) {
  .product__info-container {
    position: sticky;
    top: var(--lb-sticky-top);
    align-self: flex-start;
  }
  
  /* Adjust the top offset if you have a sticky header */
  .shopify-section-header-sticky .product__info-container {
    top: calc(var(--announcement-bar-height) + var(--header-height) + 80px);
  }
}
  
  media-gallery[id^="MediaGallery-"].lb-grid-mode slider-component {
    display: none !important;
  }
}

/* Footer styling - TABLET + MOBILE */
@media screen and (max-width: 1024px) {
  /* Stack footer elements vertically, centered */
  .footer__content-bottom {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    transform: translateY(-2rem);
    margin-top: 0rem;
  }

  .footer__content-bottom-wrapper {
    justify-content: center !important;
    text-align: center !important;
  }

  .footer__content-bottom-wrapper:not(.footer__content-bottom-wrapper--center) .footer__copyright {
    text-align: center !important;
  }

  .footer__column--info {
    align-items: center !important;
  }

  .footer__payment,
  .footer-block--newsletter,
  .localization-form {
    margin: 0.5rem 0;
  }

  .footer__payment {
    margin-bottom: 1.5rem;
    transform: translateY(6rem) !important;
  }


  
  .footer .localization-form {
    margin-top: 0.5rem;
    transform: translateY(-1rem);
  }

  .footer__copyright {
    transform: translateY(-8rem);
    margin-top: 0.5rem;
  }
}

/* Make product images full width on mobile */
@media screen and (max-width: 989px) {
  .product__media-wrapper,
  media-gallery,
  slider-component,
  .slider,
  .product__media-list,
  .product__media-item,
  .product__media,
  .product__media img {
    width: 100% !important;
    max-width: 100% !important;
  }
  
  .product__media-wrapper {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  
  .product__media img,
  .product__media video {
    width: 100%;
    height: auto;
    object-fit: cover;
  }
}

/* Product page - Scale elements between mobile and desktop (tablet range) */
@media screen and (min-width: 750px) and (max-width: 989px) {
  
  /* Keep product info content centered and constrained */
  .product__info-wrapper {
    max-width: 600px !important;
    margin: 0 auto !important;
    padding: 20px !important;
  }
  
  /* Remove any max-width restrictions on product form */
  .product-form,
  .product-form__buttons,
  .product__info-container {
    max-width: 100% !important;
  }
  
  
  /* Add to cart button - FULL WIDTH - multiple selectors for specificity */
  .product-form__submit,
  button[name="add"],
  .product-form button[type="submit"],
  .product-form__buttons button[type="submit"],
  #product-form button[type="submit"],
  .product-form .button,
  form[action*="/cart/add"] button[type="submit"],
  .shopify-payment-button__button {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
  }
  
  /* PayPal button container - FULL WIDTH */
  .shopify-payment-button,
  .shopify-payment-button__button,
  .shopify-payment-button__button--unbranded,
  .product-form__buttons .shopify-payment-button,
  [data-shopify="payment-button"] {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    padding: 0 !important;
  }
  
  /* More payment options link */
  .product-form__submit + .shopify-payment-button + *,
  .product-form__buttons > *,
  .additional-checkout-buttons {
    text-align: center !important;
    width: 100% !important;
  }
  
  /* Collapsible accordion sections - ALWAYS FULL WIDTH */
  .product__accordion,
  details.collapsible-content,
  .accordion,
  .product-accordion,
  .product__info-wrapper details,
  collapsible-content,
  .collapsible-content,
  [id*="Description"],
  [id*="Shipping"],
  [id*="ProductCare"] {
    width: 100% !important;
    max-width: 100% !important;
  }
  
  .accordion summary,
  details.collapsible-content summary,
  collapsible-content summary {
    padding: 15px 0 !important;
    font-size: 16px !important;
    width: 100% !important;
  }
  
  /* Recommended products section - ALWAYS FULL WIDTH */
  .product-recommendations,
  [id*="product-recommendations"],
  .recommendations {
    width: 100% !important;
    max-width: 100% !important;
    padding: 20px !important;
  }
  
  .product-recommendations .card__information {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
  
  /* Email signup section - 75% width as requested */
  .newsletter-form,
  .footer__newsletter,
  [id*="newsletter"] form,
  form[action*="/contact#ContactFooter"],
  .product-recommendations ~ * form,
  .newsletter form {
    width: 75% !important;
    max-width: 75% !important;
    margin: 0 auto !important;
  }
  
  .newsletter-form__field-wrapper,
  .footer__newsletter .field,
  .newsletter .field {
    width: 100% !important;
  }
  
  .newsletter-form input[type="email"],
  .footer__newsletter input[type="email"],
  .newsletter input[type="email"] {
    width: 100% !important;
  }
  
  .newsletter-form button,
  .footer__newsletter button,
  .newsletter button {
    width: 100% !important;
    margin-top: 10px !important;
  }
  
  /* GET EARLY ACCESS section specifically */
  .product__text.inline-richtext + * form,
  .product-recommendations + * form,
  section[id*="newsletter"] form,
  .newsletter-section form {
    width: 75% !important;
    max-width: 75% !important;
    margin: 0 auto !important;
  }
  
  .product__text.inline-richtext + * .field,
  .product-recommendations + * .field {
    width: 100% !important;
  }
  
  .product__text.inline-richtext + * input,
  .product-recommendations + * input {
    width: 100% !important;
  }
  
  .product__text.inline-richtext + * button,
  .product-recommendations + * button {
    width: 100% !important;
  }
}

/* Product page - Scale elements for mobile sizes */
@media screen and (max-width: 749px) {
  
  /* Keep product info content centered and constrained */
  .product__info-wrapper {
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 20px !important;
  }
  
  /* Remove any max-width restrictions on product form */
  .product-form,
  .product-form__buttons,
  .product__info-container {
    max-width: 100% !important;
  }
  
  /* Add to cart button - FULL WIDTH - multiple selectors for specificity */
  .product-form__submit,
  button[name="add"],
  .product-form button[type="submit"],
  .product-form__buttons button[type="submit"],
  #product-form button[type="submit"],
  .product-form .button,
  form[action*="/cart/add"] button[type="submit"],
  .shopify-payment-button__button {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
  }
  
  /* PayPal button container - FULL WIDTH */
  .shopify-payment-button,
  .shopify-payment-button__button,
  .shopify-payment-button__button--unbranded,
  .product-form__buttons .shopify-payment-button,
  [data-shopify="payment-button"] {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    padding: 0 !important;
  }
  
  /* More payment options link */
  .product-form__submit + .shopify-payment-button + *,
  .product-form__buttons > *,
  .additional-checkout-buttons {
    text-align: center !important;
    width: 100% !important;
  }
  
  /* Collapsible accordion sections - ALWAYS FULL WIDTH */
  .product__accordion,
  details.collapsible-content,
  .accordion,
  .product-accordion,
  .product__info-wrapper details,
  collapsible-content,
  .collapsible-content,
  [id*="Description"],
  [id*

/* Force PayPal buttons to 100% width on mobile/tablet */
@media screen and (max-width: 1024px) {
  .shopify-payment-button,
  .shopify-payment-button__button,
  .shopify-payment-button__button--unbranded,
  [data-shopify="payment-button"] {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }
  
  /* Target iframe inside PayPal button */
  .shopify-payment-button iframe,
  .shopify-payment-button__button iframe,
  .shopify-payment-button__button--unbranded iframe,
  [data-shopify="payment-button"] iframe {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
  }
  
  /* Target all divs inside PayPal button */
  .shopify-payment-button div,
  .shopify-payment-button__button div,
  .shopify-payment-button__button--unbranded div,
  [data-shopify="payment-button"] div {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
  }
  
  /* Use higher specificity to override inline styles */
  .product-form__buttons .shopify-payment-button,
  .product-form__buttons .shopify-payment-button__button,
  .product-form__buttons .shopify-payment-button__button--unbranded,
  .product-form__buttons [data-shopify="payment-button"] {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }
}


@media screen and (min-width: 990px) {
  body.template-product media-gallery.lb-photos-grid .lb-force-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    list-style: none !important;
    transform: none !important;
  }

  body.template-product media-gallery.lb-photos-grid .lb-force-grid > .lb-force-grid-item {
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: none !important;
    transform: none !important;
  }
}

/* =========================
   LB PRODUCT PAGE: 3 THIRDS (DESKTOP ONLY)
   Left 1/3 = photo 1
   Mid  1/3 = photo 2
   Right 1/3 = product info
   Extra photos continue below in same 2-up grid
   ========================= */
@media screen and (min-width: 990px) {
  body.template-product.lb-3col-product .product__grid {
    display: flex !important;
    gap: 0 !important;
    align-items: flex-start !important;
  }

  /* Left + Middle combined (2/3 total) */
  body.template-product.lb-3col-product .product__media-wrapper {
    flex: 0 0 66.666667% !important;
    max-width: 66.666667% !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  /* Right column (1/3) */
  body.template-product.lb-3col-product .product__info-wrapper {
    flex: 0 0 33.333333% !important;
    max-width: 33.333333% !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  /* Keep spacing inside info, not on the column */
  body.template-product.lb-3col-product .product__info-wrapper .product__info-container {
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
  }

  /* Force the media list into 2 columns (so each is 1/3 of page) */
  body.template-product.lb-3col-product media-gallery.lb-3col .product__media-list.lb-force-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0 !important;                 /* no gaps between left+middle */
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    width: 100% !important;
  }

  body.template-product.lb-3col-product media-gallery.lb-3col .product__media-list.lb-force-grid > li {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: none !important;
  }

  /* Remove any extra spacing Dawn adds */
  body.template-product.lb-3col-product media-gallery.lb-3col .product__media,
  body.template-product.lb-3col-product media-gallery.lb-3col .media {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  body.template-product.lb-3col-product media-gallery.lb-3col img,
  body.template-product.lb-3col-product media-gallery.lb-3col video,
  body.template-product.lb-3col-product media-gallery.lb-3col model-viewer {
    display: block !important;
    width: 100% !important;
    height: auto !important;
  }

  /* Hide slider UI + thumbnails on desktop (but NOT the whole slider-component) */
  body.template-product.lb-3col-product media-gallery.lb-3col .slider-buttons,
  body.template-product.lb-3col-product media-gallery.lb-3col .thumbnail-slider,
  body.template-product.lb-3col-product media-gallery.lb-3col .product__media-sublist {
    display: none !important;
  }
}

@media screen and (max-width: 749px) {
  .product__media-list {
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    display: flex;
    flex-wrap: nowrap;
  }

  .product__media-list::-webkit-scrollbar {
    display: none;
  }

  .product__media-list .slider__slide {
    scroll-snap-align: start;
    flex: 0 0 100%;
    min-width: 100%;
  }
}
