/* VAV: review corrections, 17 Oct 2026 — approved layout only. */

/* Carry the lower sections' existing PA-053 dark woven environment into Cases. */
.cases-section{
  background-color:var(--vav-dark-knit,#080909)!important;
  background-image:linear-gradient(rgba(5,6,6,.70),rgba(5,6,6,.70)),
    url("./production-assets/PA-053_TEXTILE_CONTACTS_ENV_MASTER.webp")!important;
  background-position:center top!important;
  background-size:var(--vav-dark-knit-size,650px) auto!important;
  background-repeat:repeat!important;
  background-attachment:scroll!important;
  isolation:isolate!important;
}
.cases-section::before,.cases-section::after{
  content:none!important;
  display:none!important;
}

/* The opened case remains the same-sized scene: no jump in width or height. */
@media(min-width:901px){
  .case-card-rzd.is-expanded:not(.is-mobile-overlay){
    height:var(--case-locked-height,78svh)!important;
    min-height:0!important;
    max-height:calc(100svh - 112px)!important;
    box-sizing:border-box!important;
  }
}
.case-card-rzd .case-rzd-expanded>.case-rzd-close{
  position:absolute!important;
  z-index:150!important;
  top:18px!important;
  right:18px!important;
  left:auto!important;
  bottom:auto!important;
  display:grid!important;
  place-items:center!important;
  width:46px!important;
  height:46px!important;
  min-height:46px!important;
  padding:0!important;
  border:1px solid rgba(255,255,255,.90)!important;
  border-radius:50%!important;
  background:#f6f5f1!important;
  box-shadow:0 6px 22px rgba(0,0,0,.25)!important;
  color:#101010!important;
  cursor:pointer!important;
  font-size:22px!important;
  font-weight:500!important;
  opacity:1!important;
  pointer-events:auto!important;
}
.case-card-rzd .case-rzd-expanded>.case-rzd-close span{
  display:block!important;font-size:26px!important;
  font-weight:400!important;opacity:1!important;
}
.case-card-rzd .case-rzd-expanded>.case-rzd-close:hover,
.case-card-rzd .case-rzd-expanded>.case-rzd-close:focus-visible{
  background:#111!important;color:#fff!important;border-color:#fff!important;
  outline:2px solid rgba(255,255,255,.6)!important;outline-offset:2px!important;
}
.case-rzd-progress{
  display:flex!important;
  height:12px!important;
  justify-content:stretch!important;
  align-items:center!important;
  padding:0!important;
  bottom:16px!important;
  left:34px!important;
  right:34px!important;
  grid-template-columns:none!important;
  pointer-events:none!important;
}
.case-rzd-progress>span,.case-rzd-swipe-hint{
  display:none!important;
}
.case-rzd-progress>i{
  flex:1!important;min-width:0!important;height:2px!important;
}
@media(max-width:900px){
  .case-card-rzd.is-mobile-overlay{
    max-height:calc(100dvh - var(--mobile-case-top,72px) - 8px)!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  .case-card-rzd .case-rzd-expanded>.case-rzd-close{
    top:12px!important;right:12px!important;
    width:44px!important;height:44px!important;min-height:44px!important;
  }
  .case-rzd-progress{left:16px!important;right:16px!important;bottom:12px!important}
}
@media(prefers-reduced-motion:reduce){
  .case-rzd-track{animation:none!important}
}


/* Remove only the idle textile gap after the final collapsed desktop case. */
@media (min-width:901px) {
  .cases-section{padding-bottom:0!important;min-height:0!important}
  .cases-section .cases-stack{padding-bottom:0!important;margin-bottom:0!important}
  .cases-section .case-card:last-child{margin-bottom:0!important}
  .cases-section + .proof-dark{margin-top:0!important}
}


/* 18 Oct desktop case fix: fixed centre on open, no auto-scroll or height jump. */
@media (min-width:901px){
  body > .case-card-rzd.is-desktop-overlay{
    position:fixed!important;
    top:var(--desktop-case-top,92px)!important;
    left:var(--desktop-case-left,16px)!important;
    width:var(--desktop-case-width,calc(100vw - 32px))!important;
    height:var(--case-locked-height,70svh)!important;
    min-height:0!important;
    max-height:none!important;
    max-width:none!important;
    margin:0!important;
    transform:none!important;
    z-index:1600!important;
  }
  .cases-section .cases-stack{padding-bottom:0!important;margin-bottom:0!important;min-height:0!important}
  .cases-section{padding-bottom:0!important;margin-bottom:0!important;min-height:0!important}
  .cases-section .case-card-rzd:last-child{margin-bottom:0!important}
}
