/* ICYU 1.3.0 — section integration. Never widen a Curtain animated half. */
.icyup-vivian-hidden { display: none !important; }
.icyup-vivian-owner,
.icyup-vivian-path {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #08152A !important;
}
.icyup-vivian-path {
    display: block !important;
    position: relative !important;
    inset: auto !important;
    float: none !important;
    transform: none !important;
    max-height: none !important;
    min-height: 0 !important;
    height: auto !important;
    overflow: visible !important;
}
.icyup-vivian-path::before, .icyup-vivian-path::after { display: none !important; }
.icyup-vivian-path > .ps-scrollbar-x-rail,
.icyup-vivian-path > .ps-scrollbar-y-rail,
.icyup-vivian-path > .ps__rail-x,
.icyup-vivian-path > .ps__rail-y { display: none !important; }
.icyup-products.icyup-in-section {
    padding: 0 0 var(--icyup-section-bottom, 80px);
    max-width: none !important;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior-y: auto;
    -webkit-overflow-scrolling: touch;
    scroll-padding-top: 18px;
    scrollbar-width: thin;
    scrollbar-color: #A7D8E1 #08152A;
}
/* Header clearance is INSIDE the banner, so the artwork reaches both edges. */
.icyup-products.icyup-in-section .icyup-hero-inner { padding-top: var(--icyup-section-top, 80px); }
.icyup-products.icyup-in-section .icyup-panels { padding-top: 20px; }
.icyup-products.icyup-in-section .icyup-category-heading { min-height: 72px; padding-block: 9px; }

/* Curtain: a new sibling of BOTH halves, scoped to the catalog's own block.
   The original half transforms, widths and child order are deliberately retained.
   Only their rendering is suppressed. The block's scale/opacity stays theme-owned. */
.icyup-curtain-block > .icyup-curtain-original,
.icyup-curtain-block > .icyup-curtain-original * { visibility: hidden !important; pointer-events: none !important; }
.icyup-curtain-block > .icyup-curtain-stage {
    box-sizing: border-box !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    background: #08152A !important;
    z-index: 2;
}
.icyup-curtain-stage[data-active="0"] {
    visibility: hidden !important;
    pointer-events: none !important;
}
.icyup-curtain-stage[data-active="1"] { visibility: visible !important; }
.icyup-curtain-stage::before, .icyup-curtain-stage::after { display: none !important; }
@media (min-width: 1200px) {
    .icyup-vivian-curtain > .icyup-curtain-block,
    .icyup-vivian-curtain .icyup-curtain-block { overflow: hidden !important; }
    .icyup-curtain-block > .icyup-curtain-stage {
        position: absolute !important;
        inset: 0 !important;
        height: 100% !important;
        max-height: 100% !important;
        transform: translate3d(0, var(--icyup-entry-y, 100vh), 0) !important;
        overflow: hidden !important;
        transition: none !important;
        will-change: transform;
    }
    .icyup-curtain-stage > .icyup-in-curtain {
        width: 100% !important;
        height: 100% !important;
        max-height: 100% !important;
    }
    .admin-bar .icyup-curtain-block > .icyup-curtain-stage {
        top: 32px !important;
        height: calc(100% - 32px) !important;
    }
}
@media (max-width: 1199px) {
    .icyup-curtain-block > .icyup-curtain-original { display: none !important; }
    .icyup-vivian-curtain,
    .icyup-vivian-curtain .icyup-curtain-block {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
    }
    .icyup-vivian-curtain .icyup-curtain-block {
        position: relative !important;
        inset: auto !important;
        width: 100% !important;
        transform: none !important;
        opacity: 1 !important;
        visibility: visible !important;
        overflow: visible !important;
    }
    .icyup-curtain-block > .icyup-curtain-stage {
        position: relative !important;
        inset: auto !important;
        height: auto !important;
        transform: none !important;
        overflow: visible !important;
    }
    .icyup-curtain-stage > .icyup-in-curtain {
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }
}

/* Other existing adapters: scope stays within the verified owning section. */
.fullscreen-slider-content-wrapper.icyup-vivian-slider-owner {
    position: absolute !important;
    inset: 0 !important;
    height: 100% !important;
    max-height: 100% !important;
    transform: none !important;
    overflow: hidden !important;
}
.icyup-vivian-slider-owner .icyup-vivian-path,
.icyup-vivian-slider-owner .icyup-in-section {
    height: 100% !important;
    max-height: 100% !important;
}
.icyup-vivian-slider-owner .icyup-vivian-path { overflow: hidden !important; }
.FullscreenSlider .swiper-slide.icyup-vivian-slide::before { display: none !important; }
.fixed-content-content-block.icyup-vivian-owner { float: none !important; }
.icyup-vivian-vs-owner {
    width: 100% !important;
    max-width: none !important;
    flex-basis: 100% !important;
    left: 0 !important;
    right: 0 !important;
    float: none !important;
    z-index: 2;
}
.icyup-vivian-vs-peer { visibility: hidden !important; pointer-events: none !important; }
.icyup-vivian-vs-owner > .swiper-wrapper > .swiper-slide { width: 100% !important; }
.vertical-shift-content-wrapper.icyup-vivian-owner { overflow: hidden !important; }
.vertical-shift-content-wrapper.icyup-vivian-owner .icyup-vivian-path,
.vertical-shift-content-wrapper.icyup-vivian-owner .icyup-in-section {
    height: 100% !important;
    max-height: 100% !important;
}
.vertical-shift-content-wrapper.icyup-vivian-owner .icyup-vivian-path { overflow: hidden !important; }
@media (max-width: 760px) {
    .icyup-products.icyup-in-section {
        padding: 0 0 var(--icyup-section-bottom, 80px);
    }
    .icyup-products.icyup-in-section .icyup-hero-inner { padding-top: var(--icyup-section-top-mobile, 72px); }
}

