/* v0.5: 延续已认可的纸白、玻璃、亮蓝与橙色。 */
.hero{min-height:100svh;padding-top:0;isolation:isolate;overflow:hidden}
.hero-layout{position:relative;min-height:100svh;display:flex;align-items:center;padding-block:150px 130px}
.hero-copy{position:relative;z-index:3;width:48%;padding:0;pointer-events:auto}
.hero h1{font-size:clamp(58px,6.1vw,88px)}
.hero-bottom{position:absolute;z-index:4;bottom:0;left:0;right:0;margin-top:0}
.hero-cosmos{inset:0;width:100%;height:100%;transform:none;opacity:1;transition:opacity 950ms var(--ease),transform 1150ms var(--ease)}
.hero-cosmos canvas{width:100%;height:100%}
.hero-cosmos:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#f5f3eef0 0%,#f5f3eeb0 32%,#f5f3ee00 62%);pointer-events:none}
.cosmos-caption{z-index:1;right:6%;bottom:13%}
[data-scene=photo] .hero-cosmos{opacity:0;transform:scale(1.04)}
.hero-atmosphere{z-index:-1}
.hero-art{display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;margin:0!important;z-index:1;opacity:0;visibility:hidden;pointer-events:none;transform:translate3d(4%,0,-30px) scale(1.03);transition:opacity 950ms var(--ease),transform 1150ms var(--ease),visibility 950ms}
[data-scene=photo] .hero-art{opacity:1;visibility:visible;transform:none;pointer-events:auto}
.photo-deck{inset:16% -12% 17% 52%;perspective:1600px;transform:rotate(-7deg);transform-style:preserve-3d}
.photo-deck:before,.photo-deck:after{content:'';position:absolute;left:-80%;right:-20%;height:24px;z-index:6;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='35' height='24'%3E%3Crect x='10' y='6' width='15' height='12' rx='3' fill='%23d6d4cb'/%3E%3C/svg%3E");background-size:35px 24px;opacity:.65;pointer-events:none}
.photo-deck:before{top:-26px}.photo-deck:after{bottom:-26px}
.photo-card{inset:0 auto 0 0;width:75%;border-radius:12px;border:8px solid #faf9f4;box-shadow:12px 24px 40px #2f35452b;transition:transform 1350ms var(--ease),opacity 1350ms var(--ease)}
.photo-card[data-position="0"]{transform:translate3d(0,0,50px) rotateY(-5deg);opacity:1;z-index:4}
.photo-card[data-position="1"]{transform:translate3d(102%,0,-70px) rotateY(-10deg);opacity:.7;z-index:2}
.photo-card[data-position="-1"]{transform:translate3d(-102%,0,-90px) rotateY(10deg);opacity:.22;z-index:1}
.photo-card[data-position="2"]{transform:translate3d(200%,0,-140px) rotateY(-15deg);opacity:.25;z-index:0}
.photo-card img{animation:film-breathe 11s var(--ease) infinite alternate;animation-play-state:paused}
.hero[data-active=true] .hero-art[data-running=true] .photo-card img{animation-play-state:running}
.photo-card figcaption{left:20px;right:20px;bottom:20px;border-radius:10px;padding:12px 16px;font-size:15px}
.photo-controls{left:77%;bottom:9%;z-index:8;pointer-events:auto}
.hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#f5f3ee 0%,#f5f3eedd 30%,#f5f3ee00 62%);pointer-events:none;z-index:7}
@keyframes film-breathe{from{transform:scale(1)}to{transform:scale(1.055)}}
.scene-switch{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;color:var(--blue-deep);overflow:visible}
.theme-icons{position:relative;display:block;width:28px;height:28px;animation:theme-hop 1500ms var(--ease) infinite;animation-play-state:paused}
.scene-switch.is-active .theme-icons{animation-play-state:running}
.theme-icon{position:absolute;inset:0;width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linejoin:round;stroke-linecap:round;opacity:0;transform:scale(.72) rotate(-22deg);transition:opacity 450ms var(--ease),transform 650ms var(--ease)}
[data-scene=globe] .theme-globe,[data-scene=stars] .theme-stars,[data-scene=photo] .theme-photo{opacity:1;transform:none}
[data-scene=photo] .scene-switch{color:#c1602d}
@keyframes theme-hop{0%,42%,100%{transform:none}14%{transform:translateY(-5px) rotate(-7deg)}27%{transform:translateY(1px) rotate(3deg)}35%{transform:translateY(-1px)}}
.desktop-nav .nav-liquid,.desktop-nav .nav-ink{transition-timing-function:var(--ease);transition-duration:600ms}
.approach-section{padding-top:110px}
.method-heading{display:flex;align-items:end;justify-content:space-between;gap:35px}
.method-heading h2{font-size:clamp(35px,4.1vw,58px);font-weight:450;line-height:1.5;letter-spacing:-.03em}
.method-heading>p{font-size:13px;color:var(--muted);max-width:30ch;line-height:2;padding-bottom:8px}
.capability-section{margin-top:15px}
.star-map-guide{text-align:right;font-size:11px;line-height:2;color:#576a86;margin-top:20px}
.capability-layout{position:relative;display:block;height:680px;min-height:0;padding:0;margin-top:0;background:none;border-radius:0;box-shadow:none;isolation:isolate;overflow:clip}
.map-position{position:absolute;inset:0;transition:transform 800ms var(--ease);transform-origin:50% 50%;z-index:1}
.capability-map{position:absolute;inset:0;min-height:0;perspective:1300px;cursor:grab;touch-action:pan-y}
.capability-map.is-dragging{cursor:grabbing;touch-action:none}
.map-orientation{position:absolute;inset:0;transform-style:flat;transition:transform 650ms var(--ease)}
.capability-map.is-dragging .map-orientation{transition:none}
.map-breath{position:absolute;width:740px;height:590px;max-width:95%;left:50%;top:50%;transform:translate(-50%,-50%)}
.map-breath:before{content:'';position:absolute;inset:6% 8%;border-radius:50%;background:radial-gradient(ellipse,#d9e8ff69,transparent 66%);pointer-events:none;animation:map-glow 9s var(--ease) infinite alternate;animation-play-state:paused}
.capability-layout.is-visible:not(.is-interacting) .map-breath:before,.capability-layout.is-visible:not(.is-interacting) .capability-core{animation-play-state:running}
.capability-map svg{width:100%;height:100%}
.capability-map .capability-lines{opacity:.85}
.capability-core{width:125px;height:125px;box-shadow:inset 0 2px 7px #fff,0 16px 35px #4b85d422;animation:map-breathe 9s var(--ease) infinite alternate;animation-play-state:paused}
.capability-core:before,.capability-core:after{content:'';position:absolute;inset:-17px;border:1px solid #aac9f34d;border-radius:50%;transform:rotateX(58deg) rotate(-22deg)}
.capability-core:after{inset:-32px;transform:rotateY(55deg) rotate(22deg)}
.capability-node{font-size:14px;padding:16px 21px;background:#ffffffe0;min-height:50px}
.capability-node:after{content:'';position:absolute;width:7px;height:7px;right:-18px;top:-16px;background:#98bcf9;border-radius:50%;box-shadow:24px 29px 0 -2px #ffae79;opacity:.8;pointer-events:none}
.capability-node[aria-pressed=true]{transform:translate(-50%,-50%) scale(1.06)}
.capability-layout[data-state=detail] .map-position{transform:translateX(-26%) scale(.67)}
.capability-layout.is-interacting .map-breath:before,.capability-layout.is-interacting .capability-core{animation-play-state:paused}
.engine-detail{position:absolute;left:55%;right:3%;top:50%;max-height:96%;padding:20px 0;transform:translate3d(100px,-50%,0);opacity:0;visibility:hidden;transition:transform 800ms var(--ease),opacity 600ms var(--ease),visibility 800ms;z-index:2;border:0}
.capability-layout[data-state=detail] .engine-detail{transform:translate3d(0,-50%,0);opacity:1;visibility:visible}
.capability-layout.instant-state .map-position,.capability-layout.instant-state .engine-detail{transition:none}
.engine-detail h4{font-size:clamp(24px,2.5vw,34px);margin-top:12px}
.engine-back{display:inline-flex;align-items:center;gap:9px;padding:8px 0;margin-bottom:22px;font-size:12px;background:none;color:var(--blue-deep)}
.engine-back .icon{width:13px;height:13px;transform:rotate(-135deg)}
.engine-detail>p:first-of-type{font-size:12px;color:var(--blue-deep);margin-bottom:7px}
.engine-detail>p:not(:first-of-type){font-size:14px;color:var(--muted);line-height:2}
@keyframes map-breathe{from{transform:translate(-50%,-50%) scale(.96)}to{transform:translate(-50%,-50%) scale(1.04)}}
@keyframes map-glow{from{opacity:.5;transform:scale(.94)}to{opacity:1;transform:scale(1.06)}}
.workflow-layout{margin-top:40px}
.about-panorama{position:relative;width:100%;min-height:100svh;display:flex;align-items:center;isolation:isolate;overflow:hidden;padding:120px 0;margin:90px 0 0;border-radius:0;gap:0}
.about-backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% center;z-index:-3}
.about-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#3c160cdc 0%,#4b1e14a1 38%,#4b1e1400 72%)}
.about-content{position:relative;display:flex;flex-direction:column;align-items:start;min-height:60vh;justify-content:center}
.about-panorama .about-copy{width:44%;max-width:540px;color:#fff9ed}
.about-panorama h2{color:#fff9ed;font-size:clamp(36px,4vw,58px);line-height:1.55}
.about-panorama .blue-period{color:#ffd3a8}
.about-panorama .about-copy p{color:#fff2dce8;max-width:40ch}
.about-panorama .about-lead{color:#fff9ed!important}
.about-panorama .about-values{color:#fff4dd;border-color:#ffe7c33b}
.about-panorama .about-values>span{color:#fff4dd}
.about-name{margin-top:35px;color:#fff9ed;font-size:20px;font-weight:500}
.about-name>span{display:block;font-size:10px;font-weight:400;margin-top:9px;letter-spacing:.12em;color:#ffe4c9}
.connect-section{margin-top:100px}
.contact-wechat{position:relative;min-width:190px}
.wechat-panel{position:absolute;right:0;bottom:calc(100% + 10px);margin:0;width:210px;z-index:20;box-shadow:0 15px 40px #32456025}
.wechat-panel:after{content:'';position:absolute;left:0;right:0;bottom:-15px;height:15px}
.wechat-panel>img{width:180px}
@supports(animation-timeline:view()){
  [data-depth]{animation:depth-passage linear both;animation-timeline:view(block);animation-range:cover 0% cover 100%;transform-origin:50% 50%;backface-visibility:hidden}
  @keyframes depth-passage{0%{opacity:.25;transform:perspective(1400px) translateY(35px) rotateX(7deg) scale(.96)}16%,82%{opacity:1;transform:perspective(1400px) translateY(0) rotateX(0) scale(1)}100%{opacity:.25;transform:perspective(1400px) translateY(-28px) rotateX(-6deg) scale(.965)}}
}
@media(max-width:1100px){
  .hero-layout{padding-block:140px 125px}.hero-copy{width:51%}.hero h1{font-size:64px}
  .photo-deck{left:55%;right:-18%}.photo-card{width:83%}.photo-controls{left:78%}
  .capability-layout{height:620px}.capability-node{font-size:12px;padding:14px 16px}.engine-detail{left:54%;right:1%}
  .about-panorama .about-copy{width:49%}
}
@media(max-width:760px){
  .hero{min-height:940px}.hero-layout{min-height:940px;display:block;padding-top:168px;padding-bottom:360px}.hero-copy{width:100%;max-width:480px}.hero h1{font-size:clamp(44px,12vw,66px)}
  .hero-bottom{font-size:10px;flex-direction:column;align-items:start;gap:8px;line-height:1.7;padding-block:17px}.hero-scene-hint{font-size:9px}
  .hero-cosmos{inset:0!important;height:100%!important;width:100%!important}.hero-cosmos:after{background:linear-gradient(180deg,#f5f3ee 0%,#f5f3eedd 42%,#f5f3ee00 73%)}.cosmos-caption{bottom:13%!important;right:8%!important;font-size:12px}
  .scene-switch{width:42px;height:42px}.theme-icon,.theme-icons{width:24px;height:24px}
  .hero-art{inset:0!important;width:100%!important;height:100%!important;align-self:unset!important}
  .photo-deck{inset:auto -12% 13% 28%;height:290px;transform:rotate(-7deg)}.photo-card{width:79%;border-width:6px}.photo-card figcaption{left:10px;right:10px;bottom:10px;padding:8px 11px;font-size:12px}.photo-card figcaption>span{font-size:9px}
  .photo-card[data-position="-1"]{opacity:.6}.hero-art:after{background:linear-gradient(180deg,#f5f3ee 0%,#f5f3ee 47%,#f5f3ee00 67%);z-index:7}.photo-controls{left:50%;bottom:8%;padding:4px 9px}
  .method-heading{display:block}.method-heading h2{font-size:31px}.method-heading>p{font-size:12px;padding:0;margin-top:15px}.approach-section{padding-top:70px}
  .star-map-guide{text-align:left;font-size:10px;margin-top:18px}.capability-layout{height:530px;margin-top:0;padding:0;overflow:clip}
  .map-breath{width:380px;height:410px;max-width:calc(100% - 12px);top:48%}.capability-node{font-size:11px;padding:11px 10px;min-height:40px;gap:5px}.capability-core{width:86px;height:86px}.capability-core>span{font-size:12px}.capability-node:after{display:none}.capability-node[data-engine=extraction]{left:80%!important}.capability-node[data-engine=code]{left:18%!important}
  .capability-layout[data-state=detail]{height:780px}
  .capability-layout[data-state=detail] .map-position{transform:translate(-7%,-30%) scale(.68)}
  .engine-detail{left:8%;right:5%;top:38%;transform:translate3d(70px,0,0);padding:12px 0;max-height:none}
  .capability-layout[data-state=detail] .engine-detail{transform:none}.engine-detail h4{font-size:25px}.engine-back{margin-bottom:14px}.engine-detail ul{margin:17px 0;gap:9px}.engine-io{padding:15px 0}
  .workflow-layout{margin-top:30px}.about-panorama{margin-top:60px;min-height:1050px;padding:450px 0 70px;align-items:end}
  .about-backdrop{object-position:66% center}.about-shade{background:linear-gradient(180deg,#3d1b0c00 0%,#3d1b0c05 26%,#3d1b0cbf 52%,#2c100ce8 100%)}
  .about-panorama .about-copy{width:100%;max-width:440px}.about-content{min-height:0}.about-panorama h2{font-size:36px}.about-panorama .about-copy p{font-size:13px;line-height:2}.about-panorama .about-values{font-size:11px}
  .about-name{font-size:18px}.connect-section{margin-top:65px}.contact-wechat{min-width:0}.wechat-panel{right:auto;left:0;bottom:calc(100% + 10px)}
}
@media(prefers-reduced-motion:reduce){
  [data-depth]{animation:none!important;transform:none!important;opacity:1!important}
  .hero-art,.hero-cosmos,.map-position,.engine-detail,.theme-icon{transition:none!important}
  .map-breath,.photo-card img,.theme-icons{animation:none!important}
  .map-breath{transform:translate(-50%,-50%)}
}
