/* Mixed product/banner carousel: product cards retain their layout; banners fill the whole mosaic cell. */
.kt-c-mixed-carousel .kt-c-product-grid{display:block!important;overflow:hidden!important;padding:0!important;scroll-snap-type:none!important;min-width:0}
.kt-c-mixed-carousel .kt-c-mixed-page{display:none;min-width:0;width:100%;height:100%;align-items:stretch;gap:10px}
.kt-c-mixed-carousel .kt-c-mixed-page.is-active{display:flex}
.kt-c-mixed-carousel .kt-c-mixed-page>.kt-c-mosaic-product-card{min-width:0;flex:1 1 0;max-width:none}
.kt-c-mixed-carousel .kt-c-mixed-banner-page{overflow:hidden}
.kt-c-mixed-carousel .kt-c-mixed-banner{position:relative;display:block;width:100%;height:100%;overflow:hidden;min-width:0}
.kt-c-mixed-carousel .kt-c-mixed-banner img{position:absolute!important;top:0;left:0;width:auto!important;height:100%!important;min-width:0;max-width:none!important;max-height:none!important;object-fit:unset!important;border-radius:0!important;transform:translateX(0);display:block;user-select:none;-webkit-user-drag:none}
/* Banner takes the full tile, including space otherwise occupied by the product title/padding. */
.kt-c-mosaic-cell-products .kt-c-mixed-carousel.kt-c-mixed-show-banner{padding:0!important}
.kt-c-mosaic-cell-products .kt-c-mixed-show-banner>.kt-c-section-head{display:none!important}
.kt-c-mosaic-cell-products .kt-c-mixed-show-banner>.kt-c-product-grid{flex:1 1 100%;height:100%;width:100%;min-height:0}
.kt-c-mosaic-cell-products .kt-c-mixed-show-banner .kt-c-mosaic-product-controls{z-index:7}
.kt-c-mixed-editor{margin:12px 0;padding:12px;border:1px solid #7894ac55;border-radius:9px;min-width:0}
.kt-c-mixed-editor>label{display:grid;gap:5px;margin:10px 0}
.kt-c-mixed-editor legend{font-weight:700}
@media(max-width:650px){.kt-c-mixed-carousel .kt-c-mixed-page>.kt-c-mosaic-product-card:nth-child(n+3){display:none}}
@media(prefers-reduced-motion:reduce){.kt-c-mixed-carousel .kt-c-mixed-banner img{transform:none!important}}

/* V0.31.218: Treat each banner as a full-bleed, animated tile background.
   The section title and all product content are visible only on product slides. */
html body.kt-store-mode .kt-c-mosaic-cell-products .kt-c-mixed-carousel.kt-c-mixed-show-banner,
.kt-c-mosaic-cell-products .kt-c-mixed-carousel.kt-c-mixed-show-banner{
 position:relative!important; padding:0!important; gap:0!important;
 overflow:hidden!important; isolation:isolate;
}
.kt-c-mosaic-cell-products .kt-c-mixed-carousel.kt-c-mixed-show-banner > .kt-c-section-head{
 display:none!important; visibility:hidden!important;
}
.kt-c-mosaic-cell-products .kt-c-mixed-carousel.kt-c-mixed-show-banner > .kt-c-product-grid{
 display:block!important; position:absolute!important; inset:0!important;
 width:100%!important; height:100%!important; min-height:0!important;
 margin:0!important; padding:0!important; overflow:hidden!important;
}
.kt-c-mixed-carousel.kt-c-mixed-show-banner .kt-c-mixed-banner-page.is-active{
 display:block!important; position:absolute!important; inset:0!important;
 width:100%!important; height:100%!important; margin:0!important;
}
.kt-c-mixed-carousel.kt-c-mixed-show-banner .kt-c-mixed-banner{
 position:absolute!important; inset:0!important;
 display:block!important; width:100%!important; height:100%!important;
 overflow:hidden!important; border-radius:0!important;
}
.kt-c-mixed-carousel.kt-c-mixed-show-banner .kt-c-mixed-banner img{
 position:absolute!important; top:50%!important; left:0!important;
 width:var(--kt-mixed-banner-width,auto)!important; height:var(--kt-mixed-banner-height,100%)!important; max-width:none!important;
 max-height:none!important; min-width:0!important; object-fit:unset!important;
 transform:translate3d(0,-50%,0); transform-origin:top left;
 pointer-events:none;
}
/* Navigation remains usable while the headline disappears behind the banner. */
.kt-c-mosaic-cell-products .kt-c-mixed-carousel.kt-c-mixed-show-banner > .kt-c-mosaic-product-controls{
 position:absolute!important; inset:0!important; z-index:8!important; pointer-events:none!important;
}
.kt-c-mosaic-cell-products .kt-c-mixed-carousel.kt-c-mixed-show-banner > .kt-c-mosaic-product-controls button{
 pointer-events:auto!important;
}

/* V0.31.219: Pixel-based height fitting must win over generic shop img selectors. */
.kt-c-mixed-carousel.kt-c-mixed-show-banner .kt-c-mixed-banner img{box-sizing:border-box!important;flex:none!important;}

/* V0.31.221: Fade only when switching to/from a banner, not between product groups.
   The full-height image fit and horizontal pan remain unchanged. */
.kt-c-mixed-carousel > .kt-c-product-grid,
.kt-c-mixed-carousel > .kt-c-section-head{
  opacity:1;transition:opacity 430ms ease-in-out;
}
.kt-c-mixed-carousel.kt-c-mixed-transition-out > .kt-c-product-grid,
.kt-c-mixed-carousel.kt-c-mixed-transition-out > .kt-c-section-head{
  opacity:0!important;transition-duration:220ms;
}
@media(prefers-reduced-motion:reduce){
  .kt-c-mixed-carousel > .kt-c-product-grid,
  .kt-c-mixed-carousel > .kt-c-section-head{transition:none!important}
}
