@charset "utf-8";
/* 暖流科技 V5 统一浅色视觉：与原版信息架构解耦；使用暖流橙/供回水蓝。 */
:root{
  --c-bg:#f9fafd;
  --c-bg-soft:#edf1fa;
  --c-bg-canvas:#eaeff9;
  --c-ink:#1a284d;
  --c-ink-2:#3b486d;
  --c-ink-3:#5a698c;
  --c-blue-50:#f5f7fc;
  --c-blue-100:#e7edf8;
  --c-blue-200:#d3dcee;
  --c-line:#dce2ef;
  --c-brand:#f08300;
  --c-brand-d:#ce7100;
  --maxw:1280px;
  --sec-y:98px;
  --shadow-2:0 16px 46px rgba(41,61,115,.07);
  --shadow-3:0 24px 60px rgba(41,61,115,.095);
}
body.v5-site{background:#f9fafd;color:#253256;font-family:var(--f-cn)}
body.v5-site main{overflow:clip}
body.v5-site .nav{background:rgba(251,252,255,.94);backdrop-filter:blur(20px);border-bottom:1px solid rgba(171,184,209,.25);box-shadow:none}
body.v5-site .nav.scrolled{background:rgba(255,255,255,.96);border-color:#dde4f1}
body.v5-site .menu a{font-size:14px;letter-spacing:0}
body.v5-site .btn{border-radius:7px}
body.v5-site .btn-primary{background:#ed8000;color:#fff;border-color:#ed8000;box-shadow:none}
body.v5-site .btn-primary:hover{background:#d77500;border-color:#d77500}
body.v5-site .btn-ghost{background:rgba(255,255,255,.87);border-color:#9cabc9;color:#253256}
body.v5-site .btn-ghost:hover{background:white;border-color:#e88922;color:#b86a06}
body.v5-site .section{background:#fff}
body.v5-site .section.soft{background:#f7faff}
body.v5-site .section .wrap{max-width:1280px}
body.v5-site .sec-head{max-width:940px;margin-bottom:44px}
body.v5-site .sec-head .eyebrow{color:#c8790f;font-size:13px;letter-spacing:.035em;text-transform:none}
body.v5-site .eyebrow::before,body.v5-site .eyebrow::after{display:none!important}
body.v5-site .sec-title{font-size:clamp(30px,3.45vw,45px);line-height:1.29;letter-spacing:-.035em;color:#1a284d;text-wrap:balance;font-weight:650}
body.v5-site .sec-title.sm{font-size:clamp(28px,3vw,40px)}
body.v5-site .sec-head .sec-desc{max-width:800px;color:#5a698c;font-size:16px;line-height:1.9}
body.v5-site .sec-divider,body.v5-site .flowline,body.v5-site .foot-flow{display:none!important}
body.v5-site .section+.section{border:0}
body.v5-site .scene-card::before,body.v5-site .case-card::before,body.v5-site .evidence::before,body.v5-site .kcard::before{display:none!important}
/* Brand hero, image-dominant rather than a stock split-gradient layout */
body.v5-site .hero-v3{
  height:clamp(740px,calc(100svh - 68px),900px);
  min-height:740px;
  max-height:none;
  background:#d9e2f4;
}
body.v5-site .hero-v3 .hero-bg{inset:0;background:#c9d6f1}
body.v5-site .hero-v3 .hero-mosaic{opacity:0!important;visibility:hidden!important;animation:none!important}
body.v5-site .hero-v3 .hero-overview{
  opacity:1!important;
  background-size:cover;
  background-position:50% 51%;
  animation:v5-cinematic 28s ease-in-out infinite alternate!important;
  transform-origin:50% 49%;
  filter:saturate(.93) brightness(1.045);
  will-change:transform;
}
@keyframes v5-cinematic{
  0%{transform:scale(1.015) translate(0,0)}
  100%{transform:scale(1.05) translate(-.35%,-.25%)}
}
body.v5-site .hero-v3 .hero-scrim{
  background:linear-gradient(180deg,rgba(246,249,255,.93) 0%,rgba(246,249,255,.68) 17%,rgba(248,250,255,.1) 47%,rgba(246,249,255,.04) 75%,rgba(230,237,250,.91) 100%);
}
body.v5-site .hero-v3 .hero-inner{
  justify-content:flex-start;
  padding-top:clamp(95px,14vh,140px);
  padding-bottom:175px;
  max-width:1280px;
  min-height:auto;
}
body.v5-site .hero-v3 .hero-title{
  font-family:var(--f-num),var(--f-cn);
  color:#253256;
  font-size:clamp(58px,6.3vw,91px);
  font-weight:690;
  letter-spacing:-.065em;
  line-height:1.08;
  max-width:1060px;
  text-shadow:0 3px 30px rgba(255,255,255,.39);
}
body.v5-site .hero-v3 .hero-title .accent{color:#ed8408}
body.v5-site .hero-v3 .hero-sub{
  display:block;color:#253256;
  font-family:var(--f-cn);
  font-size:clamp(23px,2.36vw,34px);
  letter-spacing:-.025em;
  line-height:1.48;
  margin-top:14px;
  font-weight:600;
}
body.v5-site .hero-v3 .hero-fact{
  color:#3b486d;
  font-size:14px;
  font-weight:560;
  max-width:810px;
  line-height:1.6;
  background:rgba(250,252,255,.74);
  padding:10px 14px;
  border-radius:4px;
  width:fit-content;
  margin-top:20px;
  margin-bottom:22px;
  backdrop-filter:blur(5px);
}
body.v5-site .hero-v3 .hero-actions{gap:12px}
body.v5-site .hero-v3 .hero-actions a{box-shadow:0 8px 25px rgba(30,46,90,.1);font-weight:600}
body.v5-site .hero-scene-nav{
  background:rgba(250,252,255,.85);
  border:1px solid rgba(172,184,209,.55);
  border-radius:9px;
  bottom:24px;left:max(40px,calc((100vw - 1280px)/2));right:max(40px,calc((100vw - 1280px)/2));
  padding:4px;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:2px;
  box-shadow:0 14px 42px rgba(22,40,89,.13);
  backdrop-filter:blur(22px);
}
body.v5-site .hero-scene{
  border:0;border-radius:6px;
  background:transparent;
  box-shadow:none!important;
  min-height:63px;padding:11px 18px;
  display:flex;flex-direction:column;gap:3px;
  transform:none!important;
}
body.v5-site .hero-scene:hover,body.v5-site .hero-scene.is-active{background:#fff8ed;border:0}
body.v5-site .hero-scene strong{font-size:15px}
body.v5-site .hero-scene small{display:none}
body.v5-site .hero-scene span{font-size:11px}
body.v5-site .hero-scene:not(:last-of-type){border-right:1px solid rgba(191,200,218,.37)}
body.v5-site .hero-motion{right:0;bottom:calc(100% + 11px);background:rgba(248,250,255,.9)}
body.v5-site .hero-v3.has-user-art[data-focus="0"] .hero-overview,
body.v5-site .hero-v3.has-user-art[data-focus="1"] .hero-overview,
body.v5-site .hero-v3.has-user-art[data-focus="2"] .hero-overview,
body.v5-site .hero-v3.has-user-art[data-focus="3"] .hero-overview{animation:v5-cinematic 28s ease-in-out infinite alternate}
body.v5-site .hero-v3.has-user-art[data-focus="1"] .hero-overview{background-position:45% 42%}
body.v5-site .hero-v3.has-user-art[data-focus="2"] .hero-overview{background-position:68% 38%}
body.v5-site .hero-v3.has-user-art[data-focus="3"] .hero-overview{background-position:67% 66%}
body.v5-site .hero-v3.motion-paused .hero-overview{animation-play-state:paused!important}
/* A slim, credible proof band */
body.v5-site .v3-proof-band{background:#fff;padding:34px 0;border-color:#e1e7f2}
body.v5-site .v3-proof-inner{max-width:1280px;gap:70px}
body.v5-site .v3-proof-inner>div{padding-left:19px;border-left:2px solid #ee8a10}
body.v5-site .v3-proof-inner strong{font-size:clamp(26px,3vw,40px);color:#253256}
body.v5-site .v3-proof-inner span{font-size:13px;color:#5a698c}
body.v5-site .v3-proof-source{max-width:1280px;text-align:right}
/* Unified SVG technical visuals */
body.v5-site .v5-inline-diagram,body.v5-site .v5-twin-figure,body.v5-site .v5-diagram{
  margin:35px 0 0;
  border:1px solid #dce3f1;
  border-radius:14px;
  background:#f8faff;
  overflow:hidden;
}
body.v5-site .v5-inline-diagram img,body.v5-site .v5-twin-figure img,body.v5-site .v5-diagram img{
  width:100%;height:auto;display:block;object-fit:contain;
}
body.v5-site .v5-inline-diagram figcaption{font-size:13px;color:#717d98;padding:12px 24px 21px;text-align:right}
body.v5-site .v5-duo-heading{display:flex;align-items:end;justify-content:space-between;gap:35px}
body.v5-site .v5-duo-heading h2{font-size:clamp(28px,3vw,41px);line-height:1.35;color:#253256;max-width:790px}
body.v5-site .v5-duo-heading p{color:#5a698c;max-width:460px;font-size:15px;line-height:1.8}
body.v5-site .v5-duo-heading a{color:#c16e08}
body.v5-site .v5-diagram,.v5-inline-diagram{box-shadow:none!important}
body.v5-site .fig-band,body.v5-site .arch-shot{background:#f9fbfe;border-color:#dce3f1;border-radius:14px}
body.v5-site .fig-band img,body.v5-site .arch-shot img{width:100%;height:auto;object-fit:contain}
body.v5-site .fig-cap,body.v5-site .arch-cap{color:#717d98;font-size:13px;text-align:left}
body.v5-site .arch .layer{background:white;border-color:#e1e6f0}
body.v5-site .arch .layer.hl{background:#fdf9f3}
body.v5-site .arch{border-color:#e2e7f2}
body.v5-site .chips12 .chip12{background:#f4f6fb;border-color:#dbe2ef;color:#3b486d}
body.v5-site .flow .st{background:#fff;border-color:#d6ddec;color:#3b486d}
/* Secondary hero: light, consistent scenic art. */
body.v5-site .pagehead.has-photo{background:#e6ecf9;min-height:405px}
body.v5-site .pagehead.has-photo .ph-bg img{
  width:100%;height:100%;object-fit:cover;
  object-position:center 44%;
  filter:saturate(.91) brightness(1.055);
}
body.v5-site .pagehead.has-photo .ph-veil{
  background:linear-gradient(90deg,rgba(246,249,255,.95) 0%,rgba(246,249,255,.79) 34%,rgba(247,250,255,.26) 70%,rgba(255,255,255,.03) 100%);
}
body.v5-site .pagehead.has-photo .pagehead-inner{max-width:1050px;padding-top:calc(var(--nav-h) + 90px);padding-bottom:60px}
body.v5-site .pagehead.has-photo h1{color:#253256;text-shadow:none;font-size:clamp(34px,3.5vw,52px);max-width:980px;line-height:1.3}
body.v5-site .pagehead.has-photo p{color:#5a698c;font-size:16px;max-width:710px}
body.v5-site .v3-scope-note{background:#e9eef9;color:#3b486d}
/* Projects: preserve authentic engineering photographs, unified crop rhythm */
body.v5-site .pcard{border-radius:10px;border-color:#e4e9f2;box-shadow:0 10px 30px rgba(38,56,104,.05)}
body.v5-site .pcard:hover{transform:translateY(-2px);box-shadow:0 19px 45px rgba(38,56,104,.09)}
body.v5-site .pcard .pc-img{background:#d9e0ef;aspect-ratio:16/10;overflow:hidden}
body.v5-site .pcard .pc-img img{height:100%;width:100%;object-fit:cover}
body.v5-site .pcard .pc-body{padding:26px}
body.v5-site .pcard h3{color:#253256;font-size:21px}
body.v5-site .pcard .pc-res{color:#5a698c;font-size:14px;line-height:1.85}
body.v5-site .scene-card{border-color:#e1e7f3;border-radius:10px;box-shadow:0 12px 35px rgba(29,47,95,.055);transition:box-shadow .2s ease}
body.v5-site .scene-card:hover{transform:none;box-shadow:0 15px 42px rgba(29,47,95,.09)}
body.v5-site .scene-card .scene-vis{background:#eaeffa}
body.v5-site .scene-card .scene-vis img{height:100%;width:100%;object-fit:cover}
body.v5-site .scene-card .scene-body h3{color:#253256}
body.v5-site .scene-card .scene-body p{color:#5a698c}
/* Footer intentionally light; official positive logo, no generic energy waves. */
body.v5-site .foot{background:#e6ecf8;color:#3b486d;border-top:1px solid #d6deee}
body.v5-site .foot h4{color:#253256}
body.v5-site .foot a{color:#5a698c}
body.v5-site .foot a:hover{color:#c46e06}
body.v5-site .foot-brand p,body.v5-site .foot-contact{color:#5a698c}
body.v5-site .foot-contact b{color:#3b486d}
body.v5-site .foot-bottom{border-top-color:#ced7e8;color:#5a698c}
body.v5-site .foot-bottom a{color:#5a698c}
body.v5-site .foot .logo-lockup{filter:none}
body.v5-site .flowline,body.v5-site .foot-flow{display:none!important}
@media(max-width:1060px){
  body.v5-site .hero-scene-nav{left:24px;right:24px}
  body.v5-site .hero-v3 .hero-title{font-size:clamp(52px,6.5vw,75px)}
}
@media(max-width:767px){
  :root{--sec-y:65px}
  body.v5-site .hero-v3{height:790px;min-height:790px;max-height:none;padding-top:var(--nav-h)}
  body.v5-site .hero-v3 .hero-inner{
    padding:clamp(86px,12vh,109px) 0 185px;
    justify-content:flex-start;
  }
  body.v5-site .hero-v3 .hero-title{font-size:clamp(40px,10.4vw,52px);line-height:1.06}
  body.v5-site .hero-v3 .hero-sub{font-size:clamp(21px,5.2vw,26px);margin-top:9px;line-height:1.4}
  body.v5-site .hero-v3 .hero-fact{font-size:11.5px;padding:8px 10px;line-height:1.7;margin:19px 0;max-width:100%}
  body.v5-site .hero-v3 .hero-scrim{
    background:linear-gradient(180deg,rgba(248,250,255,.96) 0%,rgba(247,250,255,.89) 36%,rgba(250,252,255,.34) 70%,rgba(237,242,252,.90) 100%);
  }
  body.v5-site .hero-v3 .hero-overview{background-position:center 45%;transform-origin:center center}
  body.v5-site .hero-v3 .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  body.v5-site .hero-v3 .hero-actions .btn{width:100%;min-height:49px;white-space:normal;font-size:12px}
  body.v5-site .hero-scene-nav{left:12px;right:12px;bottom:13px;grid-template-columns:repeat(2,minmax(0,1fr));padding:5px;gap:2px}
  body.v5-site .hero-scene{min-height:61px;padding:8px 12px;gap:2px}
  body.v5-site .hero-scene strong{font-size:13px}
  body.v5-site .hero-scene span{font-size:10px}
  body.v5-site .hero-scene:nth-of-type(2){border-right:0}
  body.v5-site .hero-motion{min-height:34px;min-width:86px;padding:7px 9px}
  body.v5-site .v3-proof-band{padding:23px 0}
  body.v5-site .v3-proof-inner{gap:7px}
  body.v5-site .v3-proof-inner>div{border-left:0;border-top:1px solid #dce3f1;padding:10px 0}
  body.v5-site .pagehead.has-photo{min-height:340px}
  body.v5-site .pagehead.has-photo .pagehead-inner{padding:calc(var(--nav-h) + 76px) 0 40px}
  body.v5-site .pagehead.has-photo h1{font-size:clamp(31px,7.5vw,40px)}
  body.v5-site .pagehead.has-photo p{font-size:13.5px}
  body.v5-site .v5-duo-heading{display:block}
  body.v5-site .v5-duo-heading h2{font-size:29px}
  body.v5-site .v5-diagram,body.v5-site .v5-inline-diagram,body.v5-site .v5-twin-figure{overflow:auto}
  body.v5-site .v5-diagram img,body.v5-site .v5-inline-diagram img,body.v5-site .v5-twin-figure img{width:760px;max-width:none;height:auto}
  body.v5-site .v5-inline-diagram figcaption{font-size:11px;text-align:left;padding:9px 12px}
  body.v5-site .pcard .pc-body{padding:19px}
  body.v5-site .pcard h3{font-size:19px}
}

/* Architecture & technical diagrams are the first substantial object, not below pages of white space. */
body.v5-site .pagehead.has-photo{min-height:340px}
body.v5-site .pagehead.has-photo .pagehead-inner{padding-top:calc(var(--nav-h) + 63px);padding-bottom:43px}
body.v5-site .pagehead.has-photo+.section{padding-top:63px}
body.v5-site .pagehead.has-photo+.section .sec-head{margin-bottom:24px}
body.v5-site .pagehead.has-photo+.section .arch-shot,
body.v5-site .pagehead.has-photo+.section .fig-band{margin-top:24px;margin-bottom:34px}
body.v5-site .arch-shot img[src$=".svg"],body.v5-site .fig-band img[src$=".svg"]{width:100%;height:auto;max-width:none}
@media(max-width:767px){
  body.v5-site .pagehead.has-photo{min-height:315px}
  body.v5-site .pagehead.has-photo+.section{padding-top:44px}
  body.v5-site .pagehead.has-photo+.section .sec-head{margin-bottom:18px}
  body.v5-site .pagehead.has-photo+.section .arch-shot,
  body.v5-site .pagehead.has-photo+.section .fig-band{overflow-x:auto}
  body.v5-site .pagehead.has-photo+.section .arch-shot img[src$=".svg"],
  body.v5-site .pagehead.has-photo+.section .fig-band img[src$=".svg"]{width:760px;max-width:none}
}
@media(prefers-reduced-motion:reduce){
  body.v5-site .hero-v3 .hero-overview{animation:none!important;transform:none!important}
  body.v5-site .scene-card:hover,body.v5-site .pcard:hover{transform:none}
}
