/* Warmflow V5: single calm hero scale and original scene-led banners.
   Scoped to classes added in October 2026. Single grid aligns title to every page. */
body.v5-site .wf-unified-pagehead,
body.v5-site .pagehead.has-photo.wf-unified-pagehead{
  position:relative;display:flex!important;align-items:center!important;
  height:clamp(390px,28vw,478px)!important;min-height:0!important;
  max-height:478px!important;
  padding:0!important;margin:0!important;
  background:#eff4fd!important;overflow:hidden!important;
  border-bottom:1px solid #dce4f4!important;
}
body.v5-site .wf-unified-pagehead .ph-bg{position:absolute;inset:0;z-index:0;}
body.v5-site .wf-unified-pagehead .ph-bg img{
  width:100%;height:100%;object-fit:cover!important;
  object-position:center 58%!important;
  opacity:1!important;filter:none!important;display:block;
}
body.v5-site .wf-unified-pagehead .ph-veil{
  position:absolute;inset:0;z-index:1;
  background:linear-gradient(90deg,
    rgba(248,250,255,.97) 0%,rgba(247,250,255,.94) 21%,
    rgba(246,249,255,.77) 38%,rgba(245,248,255,.27) 58%,
    rgba(239,244,255,.02) 77%)!important;
}
body.v5-site .wf-unified-pagehead .pagehead-inner{
  position:relative;z-index:2;display:flex;flex-direction:column;
  align-items:flex-start;justify-content:center;
  width:100%!important;max-width:1230px!important;
  margin:0 auto!important;box-sizing:border-box;
  padding:calc(var(--nav-h,70px) + 24px) 28px 28px!important;
}
body.v5-site .wf-unified-pagehead .pagehead-inner h1{
  color:#253256!important;font-size:clamp(35px,3.2vw,50px)!important;
  line-height:1.23!important;font-weight:750!important;
  letter-spacing:-.035em!important;text-shadow:none!important;
  margin:0 0 18px!important;max-width:none!important;
  text-wrap:balance;
}
body.v5-site .wf-unified-pagehead .pagehead-inner p{
  margin:0!important;color:#5a698c!important;
  font-size:clamp(14px,1.09vw,16px)!important;
  line-height:1.85!important;
  max-width:540px!important;
  text-wrap:pretty;
}
body.v5-site .wf-unified-case-head .pagehead-inner h1{
  font-size:clamp(36px,3.2vw,49px)!important;
}
body.v5-site .wf-unified-case-head .wf-case-banner-link{
  margin-top:20px;font-size:14px!important;color:#b6680d!important;
  text-decoration:none;border-bottom:1px solid #de912f;padding-bottom:6px;
  font-weight:650;
}
body.v5-site .wf-unified-case-head .wf-case-banner-link:focus-visible{
  outline:3px solid #2856c2;outline-offset:4px
}
body.v5-site .wf-unified-pagehead .pagehead-inner>*{opacity:1!important;transform:none!important;}
/* FinSim is a static conceptual interpretation of the actual hydraulic-analysis UI.
   No uncontrolled autoplay and no fictitious operating values. */
body.v5-site .wf-finsim-ui .wf-hammer-chart{margin-top:8px;}
body.v5-site .wf-finsim-ui .wf-waterhammer{position:relative;}
body.v5-site .wf-finsim-ui .wf-ui-network{
  background:rgba(255,255,255,.83);
}
body.v5-site .wf-finsim-ui .wf-hammer-head{
  gap:12px;align-items:flex-start;
}
body.v5-site .wf-finsim-ui .wf-hammer-head>div span{
  font-size:11px!important;line-height:1.5
}
body.v5-site .wf-finsim-ui .wf-static-label{
  flex:0 0 auto;color:#5a698c;border:1px solid #d6e0f4;
  background:#eff4fd;padding:6px 10px;border-radius:6px;
  font-size:11px;font-weight:630
}
body.v5-site .wf-finsim-ui .wf-hammer-chart path:not(.wf-hammer-cursor){
  transition:none!important;animation:none!important;
}
body.v5-site .wf-finsim-ui .wf-hammer-cursor{display:none!important;}
@media(max-width:767px){
 body.v5-site .wf-unified-pagehead,
 body.v5-site .pagehead.has-photo.wf-unified-pagehead{
  height:clamp(440px,70vh,575px)!important;
  min-height:440px!important;max-height:none!important;
  align-items:flex-start!important;
 }
 body.v5-site .wf-unified-pagehead .ph-bg img{
  object-fit:cover!important;object-position:70% 72%!important;
 }
 body.v5-site .wf-unified-pagehead .ph-veil{
  background:linear-gradient(180deg,
    rgba(250,252,255,.99) 0%,rgba(248,250,255,.97) 38%,
    rgba(246,249,255,.72) 63%,rgba(247,250,255,.10) 100%)!important;
 }
 body.v5-site .wf-unified-pagehead .pagehead-inner{
  padding:calc(var(--nav-h,65px) + 39px) 19px 0!important;
  align-items:flex-start!important;justify-content:flex-start!important;
 }
 body.v5-site .wf-unified-pagehead .pagehead-inner h1{
  font-size:clamp(31px,8vw,42px)!important;margin:0 0 11px!important;
 }
 body.v5-site .wf-unified-pagehead .pagehead-inner p{
  font-size:14px!important;max-width:95%!important;line-height:1.7!important;
 }
 body.v5-site .wf-unified-case-head .wf-case-banner-link{margin-top:14px}
}
/* Keep the scene and first content row unobstructed on narrow screens. */
@media(max-width:767px){
 body.v5-site:has(.wf-unified-pagehead) .mcta{display:none!important}
}
/* 2026-10-30 Solutions banner: 长输管线主体位于画面中下部，
   上移取景窗口让管线与热源侧电厂同框，避免按 58% 取景时烟囱被切。 */
body.v5-site .wf-unified-pagehead.wf-solutions-head .ph-bg img{
  object-position:center 56%!important;
}
@media(max-width:767px){
 body.v5-site .wf-unified-pagehead.wf-solutions-head .ph-bg img{
  object-position:46% 50%!important;
 }
}
@media(prefers-reduced-motion:reduce){
 body.v5-site .wf-finsim-ui *{animation:none!important;transition:none!important}
}