/* T04 atmospheric sky composition / 云层之上
   明亮通透的高海拔大气：淡雅大气蓝白底、深群青文字、一抹黎明暖色。
   展示字体 Jost（OFL，见 fonts/t04-jost-OFL.txt），正文沿用 DM Sans（--font）。
   所有规则以 .template-t04 为作用域；未启用 JS 时内容完整可见，入场隐藏只在 html.t4-enter 下生效。 */
@font-face{font-family:T04Jost;src:url(fonts/t04-jost.ttf) format('truetype');font-weight:100 900;font-display:swap}

.template-t04{
  --t4-g:clamp(20px,5vw,72px);
  --t4-ink:#13235c;
  --t4-ink-deep:#0c1847;
  --t4-dawn:#c8823c;
  --t4-dawn-light:#e7b47e;
  --t4-mist:#b9c5e0;
  --t4-display:T04Jost,var(--font),Arial,sans-serif;
  --t4-ease:cubic-bezier(.16,.84,.24,1);
  background:var(--bg);color:var(--text);font-size:17px;line-height:1.65;overflow-x:clip;
}
.template-t04 ::selection{background:#f2d6b6;color:var(--t4-ink)}
.template-t04 p{color:var(--muted)}
.template-t04 h1,.template-t04 h2,.template-t04 h3,.template-t04 h4{font-family:var(--t4-display);color:var(--text);letter-spacing:-.01em}
.template-t04 :is(a,button,input,textarea,summary,select):focus-visible{outline:2px solid var(--t4-ink);outline-offset:4px;box-shadow:0 0 0 7px rgba(200,130,60,.28)}
.template-t04 :is(.t4-dark,.site-footer) :focus-visible{outline-color:#fff}
.template-t04 main{display:block}
.t4-wrap{width:min(1320px,calc(100% - 2*var(--t4-g)));margin-inline:auto}
.t4-page img{display:block;max-width:none}

/* ---------- 共享排版元件 ---------- */
.t4-display{font-family:var(--t4-display);font-weight:200;font-size:clamp(44px,7.6vw,132px);line-height:.98;letter-spacing:-.02em;color:var(--t4-ink);text-wrap:balance;hyphens:manual;overflow-wrap:break-word}
.t4-display-2{font-family:var(--t4-display);font-weight:200;font-size:clamp(40px,6.2vw,104px);line-height:1;letter-spacing:-.02em;text-wrap:balance}
.t4-section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);gap:28px 72px;align-items:end;margin-bottom:clamp(48px,6vw,84px)}
.t4-section-head h2{font-size:clamp(36px,4.8vw,72px);font-weight:250;line-height:1.02;letter-spacing:-.02em;text-wrap:balance;max-width:14em}
.t4-section-head p{margin:0;font-size:17px;max-width:42ch}
.t4-lead{font-family:var(--t4-display);font-size:clamp(26px,2.9vw,42px);line-height:1.24;font-weight:300;letter-spacing:-.01em;color:var(--t4-ink)!important;text-wrap:pretty;max-width:26em}
.t4-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 18px}
.t4-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 28px;border-radius:999px;border:1px solid transparent;font-family:var(--t4-display);font-size:16px;font-weight:500;letter-spacing:.01em;line-height:1.2;text-align:center;transition:background-color .3s,color .3s,border-color .3s}
.t4-btn-solid{background:var(--t4-ink);color:#fff}
.t4-btn-solid:hover{background:var(--t4-ink-deep)}
.t4-btn-ghost{border-color:rgba(19,35,92,.32);color:var(--t4-ink);background:rgba(255,255,255,.42);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.t4-btn-ghost:hover{background:#fff;border-color:var(--t4-ink)}
.t4-link{display:inline-block;font-family:var(--t4-display);font-size:17px;font-weight:500;color:var(--t4-ink);padding-bottom:3px;background:linear-gradient(var(--t4-dawn),var(--t4-dawn)) 0 100%/0 2px no-repeat,linear-gradient(rgba(19,35,92,.35),rgba(19,35,92,.35)) 0 100%/100% 1px no-repeat;transition:background-size .45s var(--t4-ease);overflow-wrap:anywhere}
.t4-link:hover{background-size:100% 2px,100% 1px}

/* ---------- 页眉（覆盖在天空上） ---------- */
.template-t04 .site-header{position:absolute;top:0;left:0;right:0;width:min(1320px,calc(100% - 2*var(--t4-g)));margin-inline:auto;padding:26px 0;border:0;background:transparent;border-radius:0;gap:40px;z-index:50}
.template-t04 .brand{font-family:var(--t4-display);font-size:19px;font-weight:450;letter-spacing:0;color:var(--t4-ink);gap:12px;max-width:44%}
.template-t04 .brand img{width:34px;height:34px}
.template-t04 .nav-links{gap:34px;font-family:var(--t4-display);font-size:16px;font-weight:450;letter-spacing:.01em}
.template-t04 .nav-links a{position:relative;color:var(--t4-ink);padding:8px 0}
.template-t04 .nav-links a:hover,.template-t04 .nav-links a[aria-current=page]{color:var(--t4-ink)}
.template-t04 .nav-links a[aria-current=page]:after{transform:scaleX(1)}
.template-t04 .nav-links a:after{background:var(--t4-dawn);height:2px;bottom:1px}
.template-t04 .header-action{gap:0;min-height:44px;padding:0 22px;border-radius:999px;border:1px solid rgba(19,35,92,.28);background:rgba(255,255,255,.5);color:var(--t4-ink);font-family:var(--t4-display);font-size:16px;font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.template-t04 .header-action:hover,.template-t04 .header-action:focus-visible{background:var(--t4-ink);color:#fff;transform:none}
.template-t04 .button>span[aria-hidden]{display:none}
.template-t04 .menu-toggle{border:1px solid rgba(19,35,92,.3);border-radius:999px;background:rgba(255,255,255,.55);color:var(--t4-ink);font-size:18px;min-width:46px;min-height:46px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}

/* ---------- 首页：固定天空 + 首屏 + 磨砂大气层 ---------- */
.t4-ascent{position:relative;isolation:isolate}
.t4-sky{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;z-index:0;background:#dfe8f2}
.t4-sky-media{position:absolute;inset:0;transform:scale(var(--t4-zoom,1));transform-origin:62% 46%}
.t4-sky img{width:100%;height:100%;object-fit:cover;object-position:62% 50%}
.t4-sky-veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(238,243,248,.38) 0,rgba(238,243,248,0) 26%,rgba(238,243,248,0) 62%,rgba(238,243,248,.5) 100%)}
.t4-hero{position:relative;z-index:1;margin-top:-100vh;margin-top:-100svh;min-height:100vh;min-height:100svh;display:grid;grid-template-rows:1fr auto;padding:clamp(128px,19vh,200px) 0 clamp(28px,5vh,52px)}
.t4-hero-head{width:min(1320px,calc(100% - 2*var(--t4-g)));margin-inline:auto;transform:translate3d(0,calc(var(--t4-lift,0) * -1px),0);opacity:var(--t4-fade,1)}
.t4-hero-head h1{max-width:12.5em}
.t4-hero-foot{position:relative;width:min(1320px,calc(100% - 2*var(--t4-g)));margin-inline:auto;display:flex;justify-content:space-between;align-items:center;gap:22px 40px;flex-wrap:wrap;padding-top:26px}
.t4-horizon{position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,rgba(19,35,92,.42),rgba(19,35,92,.2) 40%,rgba(200,130,60,.95) 66%,rgba(19,35,92,.14));transform-origin:0 50%}
.t4-hero-industry{display:flex;align-items:center;gap:14px;margin:0;font-family:var(--t4-display);font-size:18px;font-weight:450;color:var(--t4-ink)}
.t4-sun{width:11px;height:11px;border-radius:50%;background:var(--t4-dawn);box-shadow:0 0 0 6px rgba(200,130,60,.18),0 0 24px 6px rgba(231,180,126,.55);flex-shrink:0}

.t4-layer{position:relative;z-index:2;min-height:92vh;min-height:92svh;display:flex;align-items:center;padding:clamp(96px,15vh,170px) 0;background:rgba(241,245,250,.6);-webkit-backdrop-filter:blur(28px) saturate(1.15);backdrop-filter:blur(28px) saturate(1.15);box-shadow:inset 0 1px 0 rgba(255,255,255,.85)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.t4-layer{background:rgba(241,245,250,.93)}}
.t4-layer-grid{display:grid;grid-template-columns:minmax(160px,3fr) minmax(0,9fr);gap:28px 56px;align-items:start}
.t4-layer-title{font-size:18px;font-weight:500;letter-spacing:0;padding-top:.55em;overflow-wrap:anywhere}
.t4-layer-copy{display:grid;gap:30px;justify-items:start}
.t4-layer-copy>p:not(.t4-lead){max-width:46ch;margin:0}

/* ---------- 分层业务带 ---------- */
.t4-strata{background:var(--surface);padding-top:clamp(96px,12vw,170px)}
.t4-band{position:relative;background:var(--t4-band,#f4f7fb);transition:background-color .5s}
.t4-band-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) auto;gap:18px 64px;align-items:baseline;padding:clamp(38px,4.6vw,66px) 0}
.t4-band-rich{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr) minmax(0,.8fr) auto}
.t4-band h3{font-size:clamp(28px,3.2vw,48px);font-weight:300;line-height:1.06;letter-spacing:-.015em;hyphens:auto;overflow-wrap:break-word;min-width:0}
.t4-band h3 a{color:var(--t4-ink)}
.t4-band h3 a:after{content:"";position:absolute;inset:0;z-index:1}
.t4-band h3 a:focus-visible{outline:0;box-shadow:none}
.t4-band:has(a:focus-visible){outline:2px solid var(--t4-ink);outline-offset:-8px}
.t4-band p{margin:0;font-size:17px;max-width:46ch;color:#41517a}
.t4-band-cue{font-family:var(--t4-display);font-size:16px;font-weight:500;color:var(--t4-ink);white-space:nowrap;padding-bottom:3px;background:linear-gradient(var(--t4-dawn),var(--t4-dawn)) 0 100%/0 2px no-repeat,linear-gradient(rgba(19,35,92,.35),rgba(19,35,92,.35)) 0 100%/100% 1px no-repeat;transition:background-size .45s var(--t4-ease)}
.t4-band:hover{background:#fff}
.t4-band:hover .t4-band-cue{background-size:100% 2px,100% 1px}
.t4-band-topics h4{font-size:14px;font-weight:500;color:var(--muted);letter-spacing:.01em;margin-bottom:10px}
.t4-band-topics ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.t4-band-topics li{font-size:16px;color:var(--t4-ink);padding-left:20px;position:relative}
.t4-band-topics li:before{content:"";position:absolute;left:0;top:.8em;width:10px;height:1px;background:var(--t4-dawn)}

/* ---------- 玻璃大气层图片段（左文右图，出血到右缘） ---------- */
.t4-atmos{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;background:var(--bg);overflow:hidden}
.t4-atmos-copy{padding:clamp(80px,10vw,140px) clamp(32px,5vw,80px) clamp(80px,10vw,140px) max(var(--t4-g),calc((100vw - 1320px) / 2));display:grid;gap:28px;justify-items:start}
.t4-atmos-copy h2{font-size:clamp(34px,3.8vw,58px);font-weight:250;line-height:1.04;letter-spacing:-.02em;text-wrap:balance}
.t4-atmos-copy p{margin:0;max-width:38ch}
.t4-atmos-frame{margin:0;height:min(94vh,920px);min-height:520px;overflow:hidden;background:#e6edf5}
.t4-atmos-frame img,.t4-principles-figure img{width:100%;height:100%;object-fit:cover;object-position:52% 50%;transform:scale(var(--t4-settle,1));transform-origin:50% 60%}

/* ---------- 深群青问题段 ---------- */
.t4-dark{background:var(--t4-ink);color:#eef3f8}
.t4-dark p{color:var(--t4-mist)}
.t4-dark h2,.t4-dark h3,.t4-dark h4{color:#fff}
.t4-questions{padding:clamp(96px,12vw,170px) 0}
.t4-q-list{display:grid}
.t4-q{display:grid;grid-template-columns:minmax(150px,2fr) minmax(0,5fr) minmax(0,4fr);gap:20px 56px;padding:clamp(36px,4vw,56px) 0;border-top:1px solid rgba(238,243,248,.16)}
.t4-q h3{font-size:17px;font-weight:500;letter-spacing:.005em;color:var(--t4-dawn-light);padding-top:.35em}
.t4-q-text{margin:0;font-family:var(--t4-display);font-size:clamp(24px,2.3vw,34px);line-height:1.24;font-weight:300;color:#fff!important;text-wrap:pretty}
.t4-q-body p{margin:0;font-size:16px}
.t4-q h4{font-size:14px;font-weight:500;color:#dbe3f3;margin:22px 0 12px;letter-spacing:.01em}
.t4-q ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.t4-q li{font-size:14px;line-height:1.3;padding:7px 13px;border:1px solid rgba(238,243,248,.26);border-radius:999px;color:#eef3f8}

/* ---------- 爬升航迹流程（真实序列，才使用编号） ---------- */
.t4-steps{background:var(--bg);padding:clamp(96px,12vw,170px) 0}
.t4-route{--t4-lh:clamp(150px,15vw,220px);position:relative;padding-top:var(--t4-lh)}
.t4-route-line{position:absolute;left:0;top:0;width:100%;height:var(--t4-lh);overflow:visible}
.t4-route-line path{fill:none;vector-effect:non-scaling-stroke}
.t4-route-ghost{stroke:rgba(19,35,92,.2);stroke-width:1;stroke-dasharray:2 7}
.t4-route-trace{stroke:var(--t4-ink);stroke-width:1.5;stroke-dasharray:1 1;stroke-dashoffset:calc(1 - var(--t4-draw,1))}
.t4-route-sun{position:absolute;right:-7px;top:calc(var(--t4-lh) * .07 - 7px);width:14px;height:14px;border-radius:50%;background:var(--t4-dawn);box-shadow:0 0 0 7px rgba(200,130,60,.16),0 0 30px 10px rgba(231,180,126,.45)}
.t4-step-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--t4-count,4),minmax(0,1fr))}
.t4-step-list li{position:relative;padding:34px 36px 0 0;min-width:0}
.t4-waypoint{position:absolute;left:-7px;top:calc(var(--t4-y) * var(--t4-lh) - var(--t4-lh) - 7px);width:14px;height:14px;border-radius:50%;border:1.5px solid var(--t4-ink);background:var(--t4-ink);transition:background-color .4s}
.t4-step-no{display:block;font-family:var(--t4-display);font-size:15px;font-weight:500;color:var(--muted);letter-spacing:.04em;margin-bottom:14px}
.t4-step-list h3{font-size:clamp(22px,1.9vw,27px);font-weight:400;line-height:1.15;margin-bottom:14px;overflow-wrap:break-word}
.t4-step-list p{margin:0;font-size:16px}

/* ---------- 地平线邀请段 ---------- */
.t4-closing{position:relative;min-height:min(100svh,940px);display:flex;align-items:flex-start;overflow:hidden;background:#e4ecf5}
.t4-closing-sky{position:absolute;inset:0}
.t4-closing-sky img{width:100%;height:100%;object-fit:cover;object-position:50% 62%}
.t4-closing-copy{position:relative;padding:clamp(110px,13vw,190px) 0 clamp(260px,30vw,400px);display:grid;gap:30px;justify-items:start}
.t4-closing-copy h2{color:var(--t4-ink);max-width:11.5em}
.t4-closing-copy>p{margin:0;max-width:46ch;color:#33436c;font-size:18px}

/* ---------- 内页首屏 ---------- */
.t4-intro{position:relative;min-height:clamp(600px,86svh,900px);display:flex;align-items:flex-end;overflow:hidden;padding:170px 0 clamp(56px,7vw,100px);background:#e4ecf5}
.t4-intro-sky{position:absolute;inset:0}
.t4-intro-sky img{width:100%;height:100%;object-fit:cover;object-position:55% 48%}
.t4-intro-sky:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(238,243,248,.3) 0,rgba(238,243,248,0) 30%,rgba(238,243,248,.2) 62%,var(--bg) 100%)}
.t4-intro-services .t4-intro-sky:after{background:linear-gradient(180deg,rgba(238,243,248,.3) 0,rgba(238,243,248,0) 30%,rgba(249,251,253,.45) 66%,var(--surface) 100%)}
.t4-intro-copy{position:relative}
.t4-intro h1{font-size:clamp(42px,6.8vw,116px);max-width:13em}
.t4-intro-detail h1{font-size:clamp(40px,6vw,100px)}
.t4-intro-lead{margin:30px 0 0;max-width:44ch;font-size:clamp(18px,1.45vw,21px);line-height:1.6;color:#2c3c66}
.t4-crumb{margin:0 0 26px}

/* ---------- 关于页 ---------- */
.t4-essay{padding:clamp(80px,10vw,150px) 0}
.t4-essay-grid,.t4-scope-grid,.t4-faq-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:40px clamp(40px,6vw,104px);align-items:start}
.t4-essay h2,.t4-scope h2,.t4-faq h2{font-size:clamp(32px,3.6vw,54px);font-weight:250;line-height:1.05;letter-spacing:-.02em;text-wrap:balance}
.t4-essay-copy,.t4-scope-main{display:grid;gap:26px;justify-items:start}
.t4-essay-copy p:not(.t4-lead){margin:0;max-width:52ch}
.t4-principles{background:var(--surface);padding:clamp(80px,10vw,150px) 0}
.t4-principles-grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:48px clamp(40px,7vw,120px);align-items:center}
.t4-principles-figure{margin:0;aspect-ratio:4/5;overflow:hidden;background:#e6edf5}
.t4-principles-copy h2{font-size:clamp(32px,3.6vw,54px);font-weight:250;line-height:1.05;margin-bottom:clamp(36px,4vw,56px)}
.t4-principle-list{display:grid;gap:clamp(30px,3.4vw,46px)}
.t4-principle-list article{padding-left:28px;border-left:1px solid var(--line)}
.t4-principle-list h3{font-size:clamp(22px,2vw,28px);font-weight:400;margin-bottom:10px}
.t4-principle-list p{margin:0;max-width:44ch}

/* ---------- 业务详情 ---------- */
.t4-scope{padding:clamp(80px,10vw,150px) 0}
.t4-scope-side{display:grid;gap:24px;position:sticky;top:40px}
.t4-scope-side p{margin:0;max-width:40ch}
.t4-question{margin:0;font-family:var(--t4-display);font-size:clamp(26px,2.6vw,38px);line-height:1.22;font-weight:300;color:var(--t4-ink)!important;text-wrap:pretty}
.t4-scope-main>p{margin:0;max-width:56ch}
.t4-scope-main h3{font-size:20px;font-weight:500;margin-top:14px}
.t4-topics{list-style:none;margin:0;padding:0;width:100%;display:grid}
.t4-topics li{position:relative;padding:16px 0 16px 30px;border-top:1px solid var(--line);color:var(--t4-ink);font-size:17px}
.t4-topics li:last-child{border-bottom:1px solid var(--line)}
.t4-topics li:before{content:"";position:absolute;left:0;top:1.55em;width:14px;height:1px;background:var(--t4-dawn)}
.t4-note{font-size:15px!important}
.t4-faq{background:var(--surface);padding:clamp(80px,10vw,150px) 0}
.t4-faq-list details{border-top:1px solid var(--line)}
.t4-faq-list details:last-child{border-bottom:1px solid var(--line)}
.t4-faq-list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:26px 0;font-family:var(--t4-display);font-size:clamp(19px,1.6vw,23px);font-weight:400;color:var(--t4-ink)}
.t4-faq-list summary::-webkit-details-marker{display:none}
.t4-faq-list summary:after{content:"";flex-shrink:0;width:16px;height:16px;background:linear-gradient(var(--t4-ink),var(--t4-ink)) center/16px 1.5px no-repeat,linear-gradient(var(--t4-ink),var(--t4-ink)) center/1.5px 16px no-repeat;transition:transform .35s var(--t4-ease)}
.t4-faq-list details[open] summary:after{transform:rotate(45deg)}
.t4-faq-list details p{margin:0;padding:0 48px 28px 0;max-width:60ch}
.t4-detail .t4-strata{padding-top:clamp(80px,10vw,140px)}

/* ---------- 联系页 / 政策页 / 404（engine 统一 markup，仅重设计样式） ---------- */
.template-t04 .page-intro{width:100%;max-width:none;margin:0;display:block;border:0;border-radius:0;padding:200px max(var(--t4-g),calc((100% - 1320px) / 2)) clamp(64px,8vw,110px);background:linear-gradient(180deg,rgba(238,243,248,.25) 0,rgba(238,243,248,0) 34%,rgba(238,243,248,.35) 70%,var(--bg) 100%),url(optimized/premium-t04-horizon-1600-7337c1b9fa86.webp) 50% 66%/cover no-repeat,#e4ecf5}
.template-t04 .page-intro .eyebrow{text-transform:none;letter-spacing:.01em;font-family:var(--t4-display);font-size:18px;font-weight:450;color:var(--t4-ink);margin-bottom:22px;display:flex;align-items:center;gap:14px}
.template-t04 .page-intro .eyebrow:before{content:"";width:11px;height:11px;border-radius:50%;background:var(--t4-dawn);box-shadow:0 0 0 6px rgba(200,130,60,.18)}
.template-t04 .page-intro h1{font-family:var(--t4-display);font-weight:200;font-size:clamp(42px,6.4vw,104px);line-height:1;letter-spacing:-.02em;max-width:13em;color:var(--t4-ink);text-wrap:balance}
.template-t04 .page-intro h1+p{margin-top:28px;max-width:44ch;font-size:19px;color:#2c3c66;overflow-wrap:anywhere}

.template-t04 .contact-layout{width:min(1320px,calc(100% - 2*var(--t4-g)));margin-inline:auto;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(40px,6vw,104px);padding:clamp(32px,4vw,64px) 0 clamp(96px,11vw,160px)}
.template-t04 .contact-details{gap:30px}
.template-t04 .contact-card{border-top:1px solid var(--line);padding-top:20px}
.template-t04 .contact-details h3{font-family:var(--t4-display);font-size:15px;font-weight:500;color:var(--muted);letter-spacing:.01em;margin-bottom:8px}
.template-t04 .contact-details a,.template-t04 .contact-details p{font-size:19px;color:var(--t4-ink);line-height:1.5}
.template-t04 .contact-details a{background:linear-gradient(rgba(19,35,92,.3),rgba(19,35,92,.3)) 0 100%/100% 1px no-repeat;padding-bottom:2px}
.template-t04 .contact-details a:hover{background-image:linear-gradient(var(--t4-dawn),var(--t4-dawn));background-size:100% 2px}
.template-t04 .contact-form{background:#fff;border:1px solid var(--line);border-radius:0;padding:clamp(24px,4vw,56px);box-shadow:0 50px 90px -50px rgba(19,35,92,.35)}
.template-t04 .form-mode-note{font-size:15px;color:#41517a;background:var(--bg);padding:13px 18px;border:0;border-left:2px solid var(--t4-dawn);margin-bottom:34px}
.template-t04 .form-grid{gap:26px 24px}
.template-t04 .field{gap:10px}
.template-t04 .field label{font-family:var(--t4-display);font-size:16px;font-weight:500;color:var(--t4-ink)}
.template-t04 .field label span{font-weight:400;color:var(--muted)}
.template-t04 .field input,.template-t04 .field textarea{min-height:54px;padding:14px 16px;font-size:17px;background:var(--surface);color:var(--t4-ink);border:1px solid #aebcd2;border-radius:0;transition:border-color .2s,background-color .2s}
.template-t04 .field textarea{min-height:160px}
.template-t04 .field input:hover,.template-t04 .field textarea:hover{border-color:#7f90b2}
.template-t04 .field input:focus,.template-t04 .field textarea:focus{background:#fff;border-color:var(--t4-ink)}
.template-t04 .field input:focus-visible,.template-t04 .field textarea:focus-visible{outline:2px solid var(--t4-ink);outline-offset:2px;box-shadow:0 0 0 6px rgba(200,130,60,.22)}
.template-t04 .field input:user-invalid,.template-t04 .field textarea:user-invalid{border-color:#a3322a}
.template-t04 .sms-consent{margin-top:32px;padding:24px;border:1px solid var(--line);border-radius:0;background:var(--bg)}
.template-t04 .sms-consent label{gap:14px;font-size:16px;line-height:1.55;color:var(--t4-ink);cursor:pointer}
.template-t04 .sms-consent input{appearance:none;-webkit-appearance:none;width:22px;height:22px;margin:1px 0 0;border:1.5px solid var(--t4-ink);border-radius:0;background:#fff;display:grid;place-content:center;cursor:pointer;transition:background-color .2s}
.template-t04 .sms-consent input:before{content:"";width:11px;height:6px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:translateY(-2px) rotate(-45deg) scale(0);transition:transform .2s var(--t4-ease)}
.template-t04 .sms-consent input:checked{background:var(--t4-ink)}
.template-t04 .sms-consent input:checked:before{transform:translateY(-2px) rotate(-45deg) scale(1)}
.template-t04 .sms-consent input:focus-visible{outline:2px solid var(--t4-ink);outline-offset:3px}
.template-t04 .sms-consent p{font-size:15px;line-height:1.7;margin:14px 0 0 36px;color:#41517a}
.template-t04 .sms-consent a{color:var(--t4-ink);text-decoration-color:var(--t4-dawn);text-decoration-thickness:1px}
.template-t04 .contact-form .button,.template-t04 .not-found .button{gap:0;margin-top:30px;min-height:54px;padding:0 34px;border:0;border-radius:999px;background:var(--t4-ink);color:#fff;font-family:var(--t4-display);font-size:17px;font-weight:500;transition:background-color .3s}
.template-t04 .contact-form .button:hover,.template-t04 .not-found .button:hover{background:var(--t4-ink-deep);transform:none}
.template-t04 .contact-form .button[disabled]{opacity:.5;cursor:not-allowed}
.template-t04 .form-status{font-size:16px;color:var(--t4-ink);margin-top:18px}
.template-t04 .form-status:not(:empty){padding:14px 18px;background:#fbf3ea;border-left:2px solid var(--t4-dawn)}

.template-t04 .legal-layout{width:min(1320px,calc(100% - 2*var(--t4-g)));margin-inline:auto;grid-template-columns:240px minmax(0,780px);gap:clamp(40px,7vw,120px);padding:clamp(32px,4vw,56px) 0 clamp(96px,11vw,160px)}
.template-t04 .legal-index{top:32px;font-family:var(--t4-display);font-size:17px;gap:14px;padding-left:22px;border-left:1px solid var(--line);color:var(--muted)}
.template-t04 .legal-index a{color:#41517a}
.template-t04 .legal-index a:hover{color:var(--t4-ink)}
.template-t04 .legal-copy .form-mode-note{margin-bottom:44px}
.template-t04 .legal-copy section{margin-bottom:52px}
.template-t04 .legal-copy h2{font-size:clamp(25px,2.3vw,34px);font-weight:300;letter-spacing:-.01em;margin-bottom:20px}
.template-t04 .legal-copy p,.template-t04 .legal-copy li{font-family:var(--font),Arial,sans-serif;font-size:17px;line-height:1.85;color:#33436c}
.template-t04 .legal-copy a{color:var(--t4-ink);text-decoration:underline;text-decoration-color:var(--t4-dawn);text-underline-offset:3px}
.template-t04 .policy-placeholder{padding:28px 30px;background:#fff;border:1px solid var(--line);border-radius:0}
.template-t04 .policy-placeholder p{font-size:16px}

.template-t04 .not-found{width:100%;max-width:none;margin:0;min-height:100svh;padding:180px var(--t4-g) 120px;align-content:center;background:linear-gradient(180deg,rgba(238,243,248,.2),rgba(238,243,248,0) 50%,rgba(238,243,248,.3)),url(optimized/premium-t04-horizon-1600-7337c1b9fa86.webp) 50% 66%/cover no-repeat,#e4ecf5}
.template-t04 .not-found .eyebrow{text-transform:none;letter-spacing:.01em;font-family:var(--t4-display);font-size:18px;font-weight:450;color:var(--t4-ink);margin:0}
.template-t04 .not-found h1{font-family:var(--t4-display);font-weight:200;font-size:clamp(96px,18vw,260px);line-height:.9;letter-spacing:-.03em;color:var(--t4-ink)}
.template-t04 .not-found p{font-size:19px;color:#2c3c66}

/* ---------- 页脚 ---------- */
.template-t04 .site-footer{margin:0;border:0;background:var(--t4-ink);color:#e6ecf6;padding:clamp(72px,8vw,120px) 0 34px}
.template-t04 .footer-main,.template-t04 .footer-bottom{width:min(1320px,calc(100% - 2*var(--t4-g)))}
.template-t04 .footer-main{align-items:flex-start}
.template-t04 .footer-main .brand{color:#fff;font-family:var(--t4-display);font-size:clamp(24px,2.6vw,36px);font-weight:300;letter-spacing:-.01em;gap:16px;max-width:52%}
.template-t04 .footer-main .brand img{width:42px;height:42px}
.template-t04 .footer-links{gap:clamp(40px,6vw,104px)}
.template-t04 .footer-links div{font-size:16px;gap:12px}
.template-t04 .footer-links h4{font-family:var(--t4-display);font-size:15px;font-weight:450;text-transform:none;letter-spacing:.01em;color:#a9b8da;margin-bottom:6px}
.template-t04 .footer-links a{color:#eef3f8;overflow-wrap:anywhere;width:fit-content;background:linear-gradient(var(--t4-dawn-light),var(--t4-dawn-light)) 0 100%/0 1px no-repeat;transition:background-size .4s var(--t4-ease)}
.template-t04 .footer-links a:hover{background-size:100% 1px}
.template-t04 .footer-bottom{margin-top:clamp(56px,7vw,96px);padding-top:24px;border-top:1px solid rgba(238,243,248,.16);font-size:14px;color:#aab8d8}
.template-t04 .motion-control{font-size:13px;letter-spacing:.01em;border-radius:999px;border-color:rgba(19,35,92,.2);background:rgba(249,251,253,.86);color:var(--t4-ink);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 10px 30px -12px rgba(19,35,92,.35)}

/* ---------- 首屏入场（仅 JS 加类后生效；无 JS / 减少动画时内容始终可见） ---------- */
.t4-word{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.1em;margin-bottom:-.1em}
.t4-word>span{display:inline-block}
html.t4-enter .t4-word>span{transform:translateY(110%)}
html.t4-enter .t4-sky-media img,html.t4-enter .t4-intro-sky img{transform:scale(1.1);filter:brightness(1.14) saturate(.6)}
html.t4-enter .t4-horizon{transform:scaleX(0)}
html.t4-enter :is(.t4-hero-industry,.t4-hero .t4-actions,.t4-intro-lead,.t4-crumb,.site-header){opacity:0;transform:translateY(12px)}
html.t4-enter.t4-enter-go .t4-word>span{transform:none;transition:transform 1.3s var(--t4-ease);transition-delay:calc(.3s + var(--i,0) * 70ms)}
html.t4-enter.t4-enter-go :is(.t4-sky-media img,.t4-intro-sky img){transform:none;filter:none;transition:transform 2.8s cubic-bezier(.2,.7,.2,1),filter 2.6s ease}
html.t4-enter.t4-enter-go .t4-horizon{transform:none;transition:transform 1.8s var(--t4-ease) .8s}
html.t4-enter.t4-enter-go :is(.t4-hero-industry,.t4-hero .t4-actions,.t4-intro-lead,.t4-crumb,.site-header){opacity:1;transform:none;transition:opacity 1s ease 1.15s,transform 1.2s var(--t4-ease) 1.15s}
html.t4-enter.t4-enter-go .site-header{transition-delay:.9s}
@media (min-width:761px){html.t4-live .t4-step-list li:not(.is-reached) .t4-waypoint{background:var(--bg)}}
.motion-paused .t4-sky-media,.motion-paused [data-t4-settle] img{transform:none}
.motion-paused .t4-hero-head{transform:none;opacity:1}

/* ---------- 响应式 ---------- */
@media (max-width:1050px){
  .t4-section-head{grid-template-columns:1fr;gap:22px}
  .t4-band-grid,.t4-band-rich{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px 40px}
  .t4-band-rich .t4-band-topics{grid-column:2}
  .t4-band-cue{grid-column:1}
  .t4-q{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .t4-q h3{grid-column:1/-1}
  .t4-atmos{grid-template-columns:1fr}
  .t4-atmos-copy{padding:clamp(72px,10vw,110px) var(--t4-g) 48px}
  .t4-atmos-frame{height:min(70vh,640px);min-height:380px}
  .t4-step-list{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:48px}
  .t4-route{padding-top:0}
  .t4-route-line,.t4-route-sun{display:none}
  .t4-step-list li{padding:0 28px 0 30px;border-left:1px solid rgba(19,35,92,.2)}
  .t4-waypoint{top:0;left:-7px}
  .t4-principles-grid{grid-template-columns:1fr 1fr;gap:48px}
  .template-t04 .nav-links{gap:24px}
}
@media (max-width:760px){
  .template-t04{font-size:16px}
  .template-t04 .site-header{padding:16px 0;gap:14px}
  .template-t04 .brand{font-size:17px;max-width:calc(100% - 64px)}
  .template-t04 .brand img{width:30px;height:30px}
  .template-t04 .menu-toggle{display:inline-flex;align-items:center;justify-content:center}
  .template-t04 .site-header .nav-links{position:absolute;top:calc(100% - 4px);left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:8px 22px;font-size:19px;background:rgba(249,251,253,.96);border:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 30px 60px -30px rgba(19,35,92,.4)}
  .template-t04 .site-header .nav-links a{padding:15px 0;border-bottom:1px solid var(--line)}
  .template-t04 .site-header .nav-links a:last-child{border-bottom:0}
  .template-t04 .site-header .nav-links a:after{display:none}
  .template-t04 .site-header .nav-links a[aria-current=page]{color:var(--t4-ink);box-shadow:inset 3px 0 0 var(--t4-dawn);padding-left:14px}
  .t4-display{font-size:clamp(38px,11.4vw,64px);line-height:1.02}
  .t4-hero{padding-top:118px}
  .t4-hero-foot{flex-direction:column;align-items:flex-start}
  .t4-hero-foot .t4-actions{width:100%}
  .t4-hero-foot .t4-btn{flex:1 1 auto}
  .t4-layer{min-height:0;padding:88px 0}
  .t4-layer-grid{grid-template-columns:1fr;gap:18px}
  .t4-layer-title{padding-top:0}
  .t4-lead{font-size:clamp(23px,6.4vw,28px)}
  .t4-strata{padding-top:88px}
  .t4-section-head{margin-bottom:40px}
  .t4-section-head h2{font-size:clamp(32px,9vw,44px)}
  .t4-band-grid,.t4-band-rich{grid-template-columns:1fr;gap:14px;padding:34px 0}
  .t4-band-rich .t4-band-topics,.t4-band-cue{grid-column:auto;justify-self:start}
  .t4-band h3{font-size:clamp(26px,7.4vw,34px)}
  .t4-q{grid-template-columns:1fr;gap:14px}
  .t4-q-text{font-size:23px}
  .t4-questions,.t4-steps{padding:88px 0}
  .t4-step-list{grid-template-columns:1fr;row-gap:40px}
  .t4-atmos-copy h2{font-size:clamp(30px,8.4vw,40px)}
  .t4-atmos-frame{height:auto;min-height:0;aspect-ratio:4/3}
  .t4-closing{min-height:0}
  .t4-closing-copy{padding:96px 0 220px}
  .t4-display-2{font-size:clamp(36px,10.4vw,56px)}
  .t4-closing-copy .t4-actions{flex-direction:column;align-items:flex-start}
  .t4-intro{min-height:0;padding:136px 0 56px}
  .t4-intro-sky img{object-position:60% 40%}
  .t4-intro h1,.t4-intro-detail h1{font-size:clamp(36px,10.6vw,58px)}
  .t4-essay-grid,.t4-scope-grid,.t4-faq-grid,.t4-principles-grid{grid-template-columns:1fr}
  .t4-scope-side{position:static}
  .t4-principles-figure{aspect-ratio:4/3}
  .t4-faq-list details p{padding-right:0}
  .template-t04 .page-intro{padding:136px var(--t4-g) 56px}
  .template-t04 .page-intro h1{font-size:clamp(38px,11vw,60px)}
  .template-t04 .page-intro h1+p{font-size:17px}
  .template-t04 .contact-layout,.template-t04 .legal-layout{grid-template-columns:1fr;gap:40px}
  .template-t04 .contact-form{padding:24px 20px}
  .template-t04 .sms-consent{padding:18px}
  .template-t04 .sms-consent p{margin-left:0}
  .template-t04 .legal-index{position:static}
  .template-t04 .footer-main .brand{max-width:100%}
  .template-t04 .motion-control{font-size:13px}
}
@media (prefers-reduced-motion:reduce){
  .t4-sky-media,.t4-hero-head,[data-t4-settle] img{transform:none!important;opacity:1!important}
  .t4-route-trace{stroke-dashoffset:0!important}
  .t4-btn,.t4-link,.t4-band,.t4-band-cue,.t4-faq-list summary:after,.template-t04 .sms-consent input:before{transition:none!important}
}
/* V7 / Atmosphere: a quiet luminous perspective selector. */
body.template-t04 .v7-t4-hero-summary{font-size:18px;line-height:1.65;max-width:48ch;margin:0 0 24px;color:inherit}
.v7-air-questions{padding:110px 0;background:#e4edf3;color:#19374f}.v7-air-questions header{display:grid;grid-template-columns:1.35fr 1fr;gap:8vw;margin-bottom:60px}.v7-air-questions h2{font-size:clamp(40px,5vw,68px);letter-spacing:-.045em;line-height:1.08;margin:0;max-width:16ch}.v7-air-questions header>p{font-size:18px;line-height:1.7;max-width:42ch;margin:8px 0}.v7-air-tabs{display:flex;flex-wrap:wrap;border-bottom:1px solid #9bb2c2;gap:12px}.v7-air-tabs button{padding:20px 22px;border:0;border-bottom:3px solid transparent;background:transparent;color:#34556d;font:inherit;cursor:pointer}.v7-air-tabs button[aria-selected=true]{color:#163952;border-color:#163952;background:#f2f7fa}.v7-air-panel{display:grid;grid-template-columns:1.35fr 1fr;gap:8vw;padding-top:45px}.v7-air-panel h3{font-size:clamp(28px,3vw,42px);line-height:1.2;max-width:24ch;margin:0 0 24px}.v7-air-panel p{font-size:18px;line-height:1.7;max-width:50ch}.v7-air-panel aside{background:#f2f7fa;padding:30px 36px;border-radius:2px}.v7-air-panel h4{font-size:15px;margin:0 0 20px}.v7-air-panel ul{line-height:1.8;padding-left:18px;margin-bottom:25px}.v7-air-panel a{color:inherit;display:inline-block;text-underline-offset:5px}
body.flagship-v6.template-t04 .t4-intro-about{min-height:520px}body.flagship-v6.template-t04 .t4-essay{padding-block:90px}body.flagship-v6.template-t04 .t4-scope{padding-top:75px}
@media(max-width:760px){.v7-air-questions{padding:66px 0}.v7-air-questions header,.v7-air-panel{grid-template-columns:1fr;gap:28px}.v7-air-questions header{margin-bottom:32px}.v7-air-questions h2{font-size:40px}.v7-air-tabs{gap:4px}.v7-air-tabs button{padding:15px 12px;font-size:14px;text-align:left;flex:1 1 40%}.v7-air-panel aside{padding:26px}.v7-air-panel{padding-top:28px}body.template-t04 .v7-t4-hero-summary{font-size:16px;margin-top:14px;max-width:34ch}body.flagship-v6.template-t04 .t4-hero{min-height:780px}}
body.template-t04 .v7-air-questions h2,body.template-t04 .v7-air-panel h3{font-family:var(--t4-display);font-weight:400}
body.template-t04 .site-footer .footer-bottom,body.template-t04 .site-footer .footer-bottom p{color:#b7c5e2;opacity:1}
