.zh-site .hz-carousel{--hero-rail-clearance:max(0px,calc(96px - max(4vw,calc((100vw - 1680px)/2))))}
.zh-site .hz-carousel .hz-hero-layout{
  grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);
  gap:clamp(24px,3vw,64px);
  min-height:clamp(400px,30vw,520px);
  padding:clamp(24px,1.7vw,32px) calc(64px + var(--hero-rail-clearance)) clamp(24px,1.7vw,32px) 64px;
}
.zh-site .hz-carousel .hero-copy{min-width:0;min-height:0;padding:0}
.zh-site .hz-carousel .hz-slide-title{font-size:clamp(34px,4.05vw,68px);line-height:1.15;overflow-wrap:break-word}
.zh-site .hz-carousel .hz-hero-label{font-size:clamp(12px,1.1vw,16px);letter-spacing:.02em}
.zh-site .hz-carousel .hz-lead{font-size:clamp(13px,1.15vw,18px);line-height:1.7}
.zh-site .hz-carousel .hz-lead-topic{font-size:clamp(14px,1.3vw,20px);line-height:1.6}
.zh-site .hz-carousel .hz-hero-checks{gap:6px clamp(10px,1.2vw,22px)}
.zh-site .hz-carousel .hz-hero-checks span{font-size:clamp(11px,1vw,14px)}
.zh-site .hz-carousel .hero-actions .button{max-width:100%;white-space:normal}
.zh-site .hz-carousel .carousel-art{
  display:block;width:100%;max-width:none;min-width:0;min-height:0;height:auto;
  aspect-ratio:8/5;margin:0;container-type:inline-size;align-self:center;
}
/* Place the controls within the same frame and reserve space for the contact rail. */
.zh-site .hz-carousel .hz-carousel-controls{width:92%;max-width:1680px;left:50%;right:auto;transform:translateX(-50%)}
.zh-site .hz-carousel .hz-carousel-arrow[data-slide-prev]{left:0}
.zh-site .hz-carousel .hz-carousel-arrow[data-slide-next]{right:var(--hero-rail-clearance)}

/* The first illustration uses proportional node positions instead of fixed heights. */
.zh-site .hz-carousel .overview-tech .tech-node{height:21%;padding:clamp(4px,1.5cqw,10px);gap:clamp(3px,1.5cqw,9px)}
.zh-site .hz-carousel .overview-tech .tech-node-stock,.zh-site .hz-carousel .overview-tech .tech-node-finance{top:12%}
.zh-site .hz-carousel .overview-tech .tech-node-factory,.zh-site .hz-carousel .overview-tech .tech-node-retail{top:40.5%}
.zh-site .hz-carousel .overview-tech .tech-node-cloud,.zh-site .hz-carousel .overview-tech .tech-node-mobile{bottom:10.5%}
.zh-site .hz-carousel .overview-tech .tech-node-title{gap:clamp(3px,1.2cqw,8px)}
.zh-site .hz-carousel .overview-tech .tech-node b{font-size:clamp(10px,2.85cqw,18px)}
.zh-site .hz-carousel .overview-tech .tech-node small{font-size:clamp(7px,2cqw,13px)}
.zh-site .hz-carousel .overview-tech .tech-node svg{width:clamp(13px,4.5cqw,28px);height:clamp(13px,4.5cqw,28px)}
.zh-site .hz-carousel .overview-tech .tech-hub{padding:clamp(4px,1.2cqw,8px)}
.zh-site .hz-carousel .overview-tech .tech-hub-disc{gap:clamp(3px,1.4cqw,10px);padding:clamp(4px,2.2cqw,14px) 3px}
.zh-site .hz-carousel .overview-tech .tech-hub strong{font-size:clamp(8px,2.6cqw,17px)}
.zh-site .hz-carousel .overview-tech .tech-hub span{font-size:clamp(7px,2cqw,13px)}
.zh-site .hz-carousel .overview-tech .tech-topline{top:3.5%;left:4%;right:4%;font-size:clamp(8px,2cqw,13px)}
.zh-site .hz-carousel .overview-tech figcaption{bottom:3%;font-size:clamp(8px,2cqw,13px)}

/* Scene photographs and captions grow together. */
.zh-site .hz-carousel .scene-art .scene-kicker{top:4%;left:3%;max-width:94%;font-size:clamp(10px,2.2cqw,15px);padding:clamp(4px,1.2cqw,8px) clamp(8px,2.2cqw,15px)}
.zh-site .hz-carousel .scene-art .scene-flow,.zh-site .hz-carousel .scene-art .scene-production,.zh-site .hz-carousel .scene-art .scene-service-note{left:3%;right:3%;bottom:4%;padding:clamp(9px,2.6cqw,20px)}
.zh-site .hz-carousel .scene-art .scene-flow{gap:clamp(3px,1.5cqw,10px)}
.zh-site .hz-carousel .scene-art .scene-flow b{font-size:clamp(11px,2.6cqw,18px)}
.zh-site .hz-carousel .scene-art .scene-flow small{font-size:clamp(8px,2cqw,13px)}
.zh-site .hz-carousel .scene-art .scene-flow i{font-size:clamp(12px,3cqw,20px)}
.zh-site .hz-carousel .scene-art .scene-production>strong,.zh-site .hz-carousel .scene-art .scene-service-note strong{font-size:clamp(13px,3.2cqw,22px)}
.zh-site .hz-carousel .scene-art .scene-production span{font-size:clamp(10px,2.3cqw,15px);padding:3px clamp(4px,1.8cqw,12px)}
.zh-site .hz-carousel .scene-art .scene-service-note span{font-size:clamp(10px,2.2cqw,15px)}
.zh-site .hz-carousel .scene-art .scene-service-note small{font-size:clamp(9px,1.8cqw,12px)}
.zh-site .hz-carousel .scene-art .scene-ledger{left:auto;right:3%;bottom:4%;width:60%;max-width:94%;padding:clamp(9px,2.4cqw,18px)}
.zh-site .hz-carousel .scene-art .scene-ledger>strong{font-size:clamp(11px,2.8cqw,18px)}
.zh-site .hz-carousel .scene-art .scene-ledger>div{font-size:clamp(10px,2.2cqw,15px);padding:clamp(3px,1cqw,7px) 0}

@media(max-width:1180px){
  .zh-site .hz-carousel{--hero-rail-clearance:0px}
}
@media(min-width:721px) and (max-width:980px){
  .zh-site .hz-carousel .hz-hero-layout{padding-left:60px;padding-right:60px;gap:24px;min-height:400px}
  .zh-site .hz-carousel .hz-slide-title{font-size:clamp(28px,4.05vw,40px)}
  .zh-site .hz-carousel .hz-carousel-controls{width:100%}
  .zh-site .hz-carousel .hz-carousel-arrow[data-slide-prev]{left:8px}
  .zh-site .hz-carousel .hz-carousel-arrow[data-slide-next]{right:8px}
}
@media(max-width:720px){
  .zh-site .hz-carousel .hz-hero-layout{grid-template-columns:minmax(0,1fr);gap:22px;padding:24px 40px 28px;min-height:0}
  .zh-site .hz-carousel .hz-slide-title{font-size:clamp(26px,7.8vw,46px);line-height:1.2}
  .zh-site .hz-carousel .carousel-art{aspect-ratio:7/5}
  .zh-site .hz-carousel .hz-carousel-controls{width:100%}
  .zh-site .hz-carousel .hz-carousel-arrow[data-slide-prev]{left:4px}
  .zh-site .hz-carousel .hz-carousel-arrow[data-slide-next]{right:4px}
  .zh-site .hz-carousel .hero-actions{gap:8px}
  .zh-site .hz-carousel .hero-actions .button{font-size:12px;padding:9px 12px}
}
