/* A real pumping cycle, scrubbed by the unchanged Scrollcraft engine. */
.field-hero{height:auto;min-height:0;max-height:none;overflow:visible;display:block}
.hero-stage{position:sticky;top:0;height:100svh;min-height:590px;overflow:hidden;isolation:isolate;background:#102b43}
.field-hero-content{padding-top:clamp(70px,12vh,125px)}
.field-hero-content h1{max-width:680px;font-size:clamp(68px,6.2vw,96px)}
.hero-world{position:absolute;inset:0;height:100%;width:100%}
.world-motion{position:absolute;inset:0;z-index:2;opacity:0;pointer-events:none;transform-origin:80% 85%;transform:scale(calc(1 + var(--hero-p,0)*.025));mask-image:linear-gradient(90deg,transparent 18%,#000 48%);transition:opacity .35s}
.hero-stage .world-motion video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:right bottom;max-width:none}
.field-hero.sc-has-clip .world-motion{opacity:1}
.field-hero.sc-has-clip .world-subject,.field-hero.sc-has-clip .world-poster{opacity:0!important}
.field-hero .world-back{transform:translateY(calc(var(--hero-p,0)*28px)) scale(1.04)}
.field-hero .world-near{transform:translateY(calc(var(--hero-p,0)*-84px)) scale(1.025);height:38%;bottom:-45px}
.field-hero[data-sc-act=flow]{height:auto!important}
.field-hero[data-sc-act=flow] .hero-stage{position:relative;height:calc(100svh - 108px);min-height:590px}
.field-hero[data-sc-act=flow] .world-motion{display:none}
.field-hero[data-sc-act=flow] .world-subject{opacity:1!important}
.field-enhanced .field-service-group:not([hidden]){animation:service-arrive .4s cubic-bezier(.2,.7,.25,1) both}
@keyframes service-arrive{from{opacity:.25;transform:translateY(13px)}to{opacity:1;transform:translateY(0)}}
.field-focus-ring{transition:opacity .3s,transform .65s cubic-bezier(.2,.7,.25,1);transform:translate(-50%,-50%) scale(.7)}
.field-board[data-focus=operating] .ring-operating,.field-board[data-focus=maintenance] .ring-maintenance,.field-board[data-focus=support] .ring-support{transform:translate(-50%,-50%) scale(1)}
@media(min-width:761px) and (max-height:700px){.hero-stage{min-height:0}.field-hero-content{padding-top:55px}.field-hero-content h1{font-size:76px}.field-hero-content p{margin-block:20px 25px}}
@media(max-width:760px){
  .hero-stage{display:flex;flex-direction:column;justify-content:center;min-height:0;height:100svh}
  .field-hero-content{order:0;flex:none;padding-top:28px;padding-bottom:22px;width:calc(100% - 40px)}
  .field-hero-content h1{font-size:clamp(43px,8.7vw,65px);max-width:100%;line-height:1.04}
  .field-hero-content p{font-size:12px;margin:17px 0 20px;line-height:1.75}
  .hero-world{position:relative;inset:auto;order:1;flex:none;min-height:0;height:clamp(250px,42svh,350px);width:100%;background:#102b43}
  .hero-world:after{background:linear-gradient(#102b43 0%,#102b4300 13%)}
  .world-motion{inset:0;height:100%;transform:none;mask-image:none}
  .hero-stage .world-motion video{object-fit:contain;object-position:center;background:#102b43}
  .field-hero .world-near{height:32%;bottom:-20px;transform:translateY(calc(var(--hero-p,0)*-32px)) scale(1.025)}
  .field-hero .world-back{transform:translateY(calc(var(--hero-p,0)*14px)) scale(1.04)}
  .field-hero[data-sc-act=flow] .hero-stage{height:auto;min-height:0}
  .field-hero[data-sc-act=flow] .hero-world{height:300px;flex:none}
}
@media(max-width:760px) and (max-height:720px){
  .field-hero-content{padding-top:22px;padding-bottom:19px}
  .field-hero-content h1{font-size:43px}
  .field-hero-content p{font-size:11px;margin:14px 0 17px}
  .hero-world{min-height:0}
}
html.motion-off .world-motion{display:none}
html.motion-off .field-service-group{animation:none!important}
@media(prefers-reduced-motion:reduce){.world-motion{display:none}.field-service-group{animation:none!important}.field-focus-ring{transition:none!important}}
