.seo-collection-container{padding-bottom:40px}body .shopify-section-group-footer-group.index-section--footer{margin-bottom:63px!important}.cart-threshold-wrapper{position:relative;padding:15px 30px 80px;background:#fff;border-bottom:1px solid #e8e8e8;text-align:center;margin-bottom:10px;line-height:1.2}.threshold-header,.threshold-footer{font-family:var(--typeHeaderPrimary),sans-serif;font-size:13px;font-weight:600;color:#2b2b2b;display:block}.threshold-header strong{color:#129513;font-weight:600!important;transform:scale(1.2)}.threshold-footer{position:absolute;bottom:0;width:calc(100% - 60px)}.threshold-footer a{text-decoration:underline;color:#e30505}.multi-stage-bar{position:relative;height:8px;background:#eee;border-radius:10px;margin:0 15px 0 0}.bar-fill{height:8px;background:#54c63a;border-radius:10px;width:0%;position:relative;overflow:hidden;transition:width .8s cubic-bezier(.22,1,.36,1)}.bar-fill:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transform:translate(-100%)}.bar-fill.animating:after{animation:shine .7s ease-in-out}@keyframes shine{0%{transform:translate(-100%)}to{transform:translate(100%)}}.milestone{position:absolute;top:50%;transform:translate(-50%,-50%);width:14px;height:14px;background:#fff;border:2px solid #eeeeee;border-radius:50%;z-index:2;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.milestone.active:after{content:"\2713";color:#54c63a;font-size:9px;font-weight:700;animation:popIn .4s cubic-bezier(.175,.885,.32,1.275);top:0;position:absolute;left:2px}@media(max-width:767px){.milestone.active:after{top:2px;left:3px;font-size:7px}}@keyframes popIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.milestone.active{background:#fff;border-color:#54c63a;transform:translate(-50%,-50%) scale(1.2)}.m-label{position:absolute;top:20px;left:50%;transform:translate(-50%);font-size:10px;font-weight:700;color:#999;white-space:nowrap;transition:color .3s ease}.milestone.active .m-label{color:#129513}.milestone.active .m-label small,.milestone.active .m-label b{color:#444;letter-spacing:0}.milestone:last-child.active{background:#f5be1c;border-color:#f5be1c}.milestone:last-child.active:after{color:#fff}@media screen and (max-width:480px){.cart-threshold-wrapper{padding-bottom:75px}.threshold-header,.threshold-footer{font-size:11px}.m-label{font-size:9px;line-height:1.15}}.product-section[data-product-handle=agaaz-50ml] #simple-bundles-io-options select#perfume-1 optgroup[label]{font-size:0}.product-section[data-product-handle=agaaz-50ml] #simple-bundles-io-options select#perfume-1 optgroup[label] option{font-size:16px}@media only screen and (min-width:769px){#shopify-section-template--29005208092753__text_columns_rQ7VQJ .grid--uniform .medium-up--one-half:nth-of-type(odd),.grid--uniform .medium-up--one-third:nth-of-type(3n+1){clear:none}#shopify-section-template--29005208092753__text_columns_rQ7VQJ .grid--uniform .medium-up--one-half{width:25%}}@media only screen and (max-width:768px){#shopify-section-template--29005208092753__text_columns_rQ7VQJ .grid--uniform .medium-up--one-half{width:50%}}

/* ═══════════════════════════════════════════════════
   GRID PRODUCT IMAGE FIX
   Root cause: .image-element starts at opacity:0.
   theme.js (Impulse) drives AOS.init() + the
   ImageElement custom component that adds .aos-animate
   / .loaded to make images visible. Without theme.js
   loaded, images stay invisible on all devices.

   Fix 1 (primary): theme.js is now loaded in the layout.
   Fix 2 (safety net): force opacity:1 on grid product
   images so they are always visible regardless of AOS.
   ═══════════════════════════════════════════════════ */

/* Force grid product images visible — overrides .image-element { opacity:0 } */
.grid-product .image-element,
.grid-product .grid-product__image {
  opacity: 1 !important;
}

/* Ensure the padding-bottom ratio container works */
.image-wrap {
  position: relative !important;
  overflow: hidden;
  display: block !important;
}

/* Fill the ratio box */
.image-wrap img.grid-product__image,
.image-wrap img.image-element {
  position: absolute !important;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 0 !important;
  display: block !important;
  opacity: 1 !important;
}

/* Ensure the mask fills the full column (not 30% from hotspot leak) */
.grid-product .grid-product__image-mask {
  width: 100% !important;
  flex: none !important;
  background: #f0ece3;
  overflow: hidden;
}

/* Ensure image wrapper is block, not flex */
.grid-product .grid__item-image-wrapper {
  display: block !important;
  position: relative;
}

.grid-product {
  min-width: 0;
}