/* 首页只负责进入案例的过场；案例内容由统一成品页绘制。 */
body.case-story-open,
body.case-story-transitioning { overflow: hidden; }
body.case-story-open > :not(.case-story-overlay) { visibility: hidden !important; }
.case-unified-overlay {
  position: fixed;
  z-index: 2147483000;
  inset: 0;
  background: #eeece6;
  overflow: hidden;
}
.case-unified-frame {
  position: relative;
  z-index: 2;
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  opacity: 0;
  pointer-events: none;
  transition: opacity .68s cubic-bezier(.2,.75,.2,1);
}
.case-unified-frame.is-ready { opacity: 1; pointer-events: auto; }
.case-unified-stage { position: absolute; z-index: 1; inset: 0; pointer-events: none; }
.case-unified-stage h1 {
  position: absolute;
  left: clamp(20px,4vw,64px);
  bottom: clamp(80px,12vh,140px);
  width: min(53%,920px);
  margin: 0;
  color: #171716;
  font: 400 clamp(54px,6vw,112px)/1.08 'Noto Serif SC','Songti SC',SimSun,serif;
  letter-spacing: -.065em;
}
.case-unified-stage img {
  position: absolute;
  top: calc(76px + clamp(105px,15vh,190px));
  right: calc(clamp(30px,5vw,130px) + var(--case-scrollbar-width,0px));
  width: min(34vw,690px);
  height: min(72vh,800px);
  object-fit: cover;
}
.case-flying-cover {
  position: fixed;
  z-index: 2147483001;
  display: block;
  margin: 0;
  object-fit: cover;
  pointer-events: none;
}
@media(max-width:720px) {
  .case-unified-stage img { display: none; }
  .case-unified-stage h1 { top: 117px; bottom: auto; width: auto; font-size: clamp(39px,9vw,64px); }
}
@media(prefers-reduced-motion:reduce) {
  .case-unified-frame { transition: none; }
}

/* 手机案例入口：浅色幕布与详情交叉淡入。 */
@media (max-width: 900px) {
  .case-unified-frame { transition-duration: .42s; }
  .case-unified-stage img { display: none; }
  .case-unified-stage h1 {
    top: 117px; bottom: auto; width: calc(100% - 40px);
    font-size: clamp(32px, 8vw, 54px);
  }
}
@media (prefers-reduced-motion: reduce) {
  .case-unified-frame { transition: none; }
}
/* 手机进场只交接真实详情，避免两套标题的位置及字号造成跳动。 */
@media (max-width: 900px) {
  html.case-story-locked { overflow: hidden; }
  .case-story-overlay .case-unified-stage h1 { display: none; }
}