/** Shopify CDN: Minification failed

Line 265:53 Unexpected "{"

**/
/*
  Sticky Add-to-Cart Styles
  Defines styles for the sticky add-to-cart bar, including layout, buttons, and modal.
  Optimized for performance with consolidated rules and minimal overrides.
*/

:root {
  --m-translate-y: 100%;
  --m-box-shadow-color: 0, 0, 0;
  --m-duration-default: 0.25s;
}

/* Section: Main Container */
.m-sticky-addtocart {
  position: fixed;
  z-index: 40;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgb(var(--color-background));
  color: rgb(var(--color-foreground));
  transform: translate3d(0, var(--m-translate-y), 0);
  transition: transform var(--m-duration-default) cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 0 10px 0 rgba(var(--m-box-shadow-color), 0.09);
}

.m-sticky-addtocart .container-full,
.m-sticky-addtocart .container {
  display: flex;
  justify-content: center;
}

/* Section: Left Block (Product Info) */
.m-sticky-addtocart--leftblock {
  padding-right: 8px;
}
.m-sticky-addtocart--image {
  padding: 6px 0;
  width: 60px;
  flex: 1 0 auto;
  cursor: pointer;
}
.m-sticky-addtocart--title {
  padding: 14px 0;
}
.m-sticky-addtocart--title h3 {
  font-weight: 500;
  cursor: pointer;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}
.m-sticky-addtocart--title .m-price {
  font-size: 15px;
}

/* Section: Right Block (Form and Buttons) */
.m-sticky-addtocart--rightblock {
  display: flex;
  padding: 14px 0;
  flex-shrink: 0;
  align-items: center;
}
.m-sticky-addtocart--quantity {
  margin-right: 20px;
  display: flex;
}
.m-sticky-addtocart--addon {
  margin-left: 20px;
}
.m-sticky-addtocart .m-product-option--dropdown-select {
  border-radius: 4px;
  border: 1px solid rgb(var(--color-border));
  padding-left: 16px;
  margin-right: 20px;
  min-height: 46px;
  max-width: 200px;
}
.sticky-atc-row--variants {
  display: flex;
  align-items: center;
  gap: 10px;
}
.sticky-atc-row--buttons {
  display: flex;
  align-items: center;
  gap: 12px;
}
.sticky-atc-row--buttons > * {
  flex: 1 1 auto;
  min-width: 0;
  height: 46px;
  line-height: 46px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.sticky-atc-row--buttons .m-add-to-cart--text {
  white-space: nowrap;
}
.custom-subscribe-button {
  background-color: #F9A446;
  color: #000000;
  border-color: #F9A446;
  height: 46px;
}

.m-add-to-cart {
  background-color: #3C8243;
  color: #ffffff;
  border-color: #3C8243;
  height: 46px;
}

/* Section: Modal Styles */
.custom-modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 15px;
}
.custom-modal-content {
  background-color: #fff;
  padding: 25px;
  border-radius: 8px;
  max-width: 500px;
  width: 100%;
  position: relative;
  text-align: center;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
}
.custom-modal-content h3 {
  margin-top: 0;
}
.custom-modal-close {
  position: absolute;
  top: 10px;
  right: 15px;
  font-size: 28px;
  line-height: 1;
  border: none;
  background: transparent;
  cursor: pointer;
  padding: 0;
}
.custom-modal-content .policy-details {
  text-align: left;
  margin-bottom: 20px;
}
.custom-modal-select-label {
  display: block;
  margin-bottom: 5px;
  font-weight: bold;
}
.custom-modal-select {
  width: 100%;
}

/* Section: Desktop Styles */
@media screen and (min-width: 768px) {
  .m-sticky-addtocart--rightblock {
    width: auto;
  }
  .m-sticky-addtocart--title {
    margin-left: 20px;
    display: none;
  }
  .m-sticky-addtocart--quantity {
    display: flex;
  }
  .m-sticky-addtocart .m-product-dynamic-checkout {
    margin-left: 20px;
  }
  .m-sticky-addtocart--image {
    margin-right: 15px;
  }
  sticky-atc.m-flex {
    justify-content: center;
    gap: 20px;
  }
}

/* Section: Mobile Styles */
@media screen and (max-width: 767px) {
  .m-sticky-addtocart {
    font-size: 15px;
  }
  .m-sticky-addtocart .m-product-option--dropdown-select {
    margin-right: 10px;
    max-width: 60%;
  }
  .m-sticky-addtocart .m-add-to-cart {
    min-width: auto;
    padding: 8px 12px;
  }
  .m-sticky-addtocart .m-add-to-cart.show-dynamic-checkout,
  .m-sticky-addtocart.enable-dynamic-checkout .btn-back-in-stock,
  .m-sticky-addtocart .foxkit-preorder-note,
  .m-sticky-addtocart .shopify-payment-button__more-options {
    display: none;
  }
  .mobile-layout-stacked {
    flex-direction: column;
    gap: 8px;
    align-items: center;
  }
  .sticky-atc-row--variants {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 8px;
    justify-content: center;
  }
  .sticky-atc-row--variants > .m-product-option--dropdown-select {
    flex: 0 1 60%;
    min-width: 120px;
  }
  .sticky-atc-row--variants > .m-sticky-addtocart--quantity {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #e5e5e5;
    border-radius: 4px;
    flex: 0 1 80px;
  }
  .m-sticky-addtocart--quantity .m-product-quantity-input,
  .m-sticky-addtocart--quantity .m-product-quantity-button {
    border: none;
    background-color: transparent;
  }
  .m-sticky-addtocart--quantity .m-product-quantity-input {
    width: 30px;
  }
  .sticky-atc-row--buttons {
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content: center;
    width: 100%;
    padding: 0 8px;
  }
  
  .sticky-atc-row--buttons .m-add-to-cart {
    flex: 0 1 45%; /* Equal width, slightly less than 50% */
    min-width: 150px; /* Increased to match ATC size and fit S&S text */
    max-width: 45%; /* Cap to prevent overflow */
    font-size: 0.85rem;
    padding: 8px 12px;
    white-space: nowrap; /* Prevent wrapping, but allow full text */
    box-sizing: border-box;
  }
  .sticky-atc-row--buttons .custom-subscribe-button, {
     flex: 0 1 45%; /* Equal width, slightly less than 50% */
    min-width: 200px; /* Increased to match ATC size and fit S&S text */
    max-width: 45%; /* Cap to prevent overflow */
    font-size: 0.85rem;
    padding: 8px 12px;
    white-space: nowrap; /* Prevent wrapping, but allow full text */
    box-sizing: border-box;
  }
}