/* IE Infokacheln – isolated from standard product cards */
#js-product-list .ie-info-grid-item{min-width:0;display:flex;flex-direction:column}
#js-product-list .ie-info-card{width:100%;height:100%;min-width:0;display:flex;flex-direction:column;background:#fff;border-radius:7px;overflow:hidden;box-shadow:0 5px 12px rgba(22,43,74,.10);color:#092b53}
#js-product-list .ie-info-media{width:100%;aspect-ratio:1/1;overflow:hidden;background:#edf2f7;display:flex;align-items:center;justify-content:center}
#js-product-list .ie-info-media img{display:block;width:100%;height:100%;object-fit:cover}
#js-product-list .ie-info-media.ie-info-no-image{background:#e8eef5}
#js-product-list .ie-info-content{flex:1;min-height:120px;padding:13px 12px 16px;text-align:center;display:flex;flex-direction:column;gap:9px;justify-content:flex-start}
#js-product-list .ie-info-title{font-size:16px;line-height:1.4;font-weight:750;color:#092b53;margin:0}
#js-product-list .ie-info-body{font-size:15px;font-weight:700;line-height:1.45;margin:0;color:#425773;white-space:pre-line}

/* Respect editorial position even when shopdesign assigns CSS order to products. */
body#category #js-product-list .ie-info-grid-item[data-ie-info-position="after"]{order:9999!important}
body#category #js-product-list .ie-info-grid-item[data-ie-info-position="before"]{order:-9999!important}

/* Badge aligned with the existing tour date badge, but with freely entered text. */
body#category #js-product-list .ie-info-media{position:relative;aspect-ratio:1.48!important;}
body#category #js-product-list .ie-info-overlay{position:absolute;z-index:5;top:10px;left:10px;max-width:calc(100% - 20px);min-width:64px;min-height:64px;padding:7px 10px;display:flex;align-items:center;justify-content:center;text-align:center;overflow-wrap:anywhere;background:#fff;color:#173a69;border-radius:5px;box-shadow:0 2px 9px #0004;font-size:18.5px!important;line-height:1.1;font-weight:750;pointer-events:none;}
@media(max-width:600px){body#category #js-product-list .ie-info-overlay{font-size:16px!important;}}

/* 1.0.7: Keep image aspect ratio independent of grid-row stretching.
   In a flex column, flex-shrink:1 otherwise compresses the media when
   another card in the same grid row determines the stretched card height. */
body#category #js-product-list .ie-info-card > .ie-info-media {
  flex: 0 0 auto !important;
  flex-shrink: 0 !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1.48 / 1 !important;
  min-height: 0;
}
body#category #js-product-list .ie-info-card > .ie-info-content {
  flex: 1 0 auto;
}

/* 1.0.8: The image height is fixed from the measured card width by JS.
   Avoid auto flex sizing differences between first and subsequent grid rows. */
body#category #js-product-list .ie-info-card > .ie-info-media {
  box-sizing: border-box !important;
  flex-shrink: 0 !important;
  align-self: stretch !important;
}
body#category #js-product-list .ie-info-card > .ie-info-media img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* 1.0.9: media height is synchronized with a real product media box by JS. */
body#category #js-product-list .ie-info-card > .ie-info-media {aspect-ratio:auto!important;position:relative!important;}
