/**
 * [INPUT]: 依赖 Archivo 与 Noto Sans SC 字体、组件语义类名、旧版项目自有场景视觉和真实业务照片
 * [OUTPUT]: 对外提供荧光信号令牌、电影式图片布局、受控中英文行宽、日期选择器、四类业务专属场景构图与全站响应式样式
 * [POS]: WordPress 表现层唯一全局样式真源，以旧版高对比现场气质统领可信内容与转化路径
 * [PROTOCOL]: 变更时更新此头部，然后检查 CLAUDE.md
 */

@import url('../fonts/noto-sans-sc-a.css');
@import url('../fonts/noto-sans-sc-b.css');
@font-face { font-family: 'Archivo Variable'; src: url('../fonts/archivo-latin.woff2') format('woff2'); font-style: normal; font-weight: 100 900; font-display: swap; }

.admin-bar .site-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .site-header { top: 46px; } }

/* ---------- 01. 基础与令牌 ---------- */
:root {
  --ink: #070b0f;
  --graphite: #0e151b;
  --graphite-2: #172129;
  --steel: #7f909c;
  --steel-light: #c5cfd5;
  --silver: #dfe5e8;
  --paper: #f0f3f4;
  --white: #ffffff;
  --signal: #c8ff1a;
  --signal-dark: #486300;
  --signal-bright: #d8ff3e;
  --line-dark: rgba(255, 255, 255, 0.16);
  --line-light: rgba(11, 16, 21, 0.18);
  --font: 'Archivo Variable', 'Noto Sans SC Variable', sans-serif;
  --shell: min(1500px, calc(100vw - 80px));
  --section-space: clamp(96px, 10vw, 176px);
  --header-height: 82px;
  --ease: cubic-bezier(0.23, 1, 0.32, 1);
  --ease-move: cubic-bezier(0.77, 0, 0.175, 1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--ink); -webkit-tap-highlight-color: transparent; -webkit-text-size-adjust: 100%; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: var(--font); font-size: 16px; line-height: 1.6; text-rendering: optimizeLegibility; }
body.locale-zh { line-height: 1.75; }
body.menu-open { overflow: hidden; }
img, svg, canvas { display: block; max-width: 100%; }
button, input, select, textarea { font: inherit; font-size: 1rem; }
button, a { touch-action: manipulation; user-select: none; -webkit-user-select: none; }
a { color: inherit; text-decoration: none; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { font-weight: 560; letter-spacing: -0.035em; line-height: .98; text-wrap: balance; }
h1 { font-size: clamp(3.25rem, 6.2vw, 6.5rem); }
h2 { font-size: clamp(2.35rem, 4.3vw, 4.8rem); }
h3 { font-size: clamp(1.25rem, 1.9vw, 2rem); }
p { color: #52616c; }
:focus-visible { outline: 3px solid var(--signal); outline-offset: 3px; box-shadow: 0 0 0 6px var(--white); }
::selection { color: var(--white); background: var(--signal); }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; z-index: 999; top: 12px; left: 12px; padding: 10px 16px; color: var(--white); background: var(--signal); transform: translateY(-160%); }
.skip-link:focus { transform: translateY(0); }
.page-shell { width: var(--shell); margin-inline: auto; }
.section { padding-block: var(--section-space); }
.section-light { background: var(--paper); }
.section-silver { background: var(--silver); }
.section-graphite { color: var(--white); background: var(--graphite); }
.section-coordinate, .footer-label { margin-bottom: 34px; color: #51616d; font-size: 0.72rem; font-weight: 690; letter-spacing: 0.13em; text-transform: uppercase; }
.section-graphite .section-coordinate { color: #91a2ae; }
.button { display: inline-flex; min-height: 54px; align-items: center; justify-content: space-between; gap: 32px; padding: 13px 18px; border: 1px solid currentColor; border-radius: 2px; font-size: 0.86rem; font-weight: 690; letter-spacing: 0.015em; transition: color 180ms ease, background 180ms ease, border-color 180ms ease, transform 160ms var(--ease); }
.button:active { transform: scale(.97); }
.button-signal { color: var(--white); border-color: var(--signal); background: var(--signal); }
.button-dark { color: var(--white); border-color: var(--ink); background: var(--ink); }
.button-small { min-height: 44px; gap: 20px; padding: 9px 13px; }
.text-link { display: inline-flex; align-items: center; gap: 16px; padding-block: 10px; border-bottom: 1px solid currentColor; color: var(--ink); font-size: 0.9rem; font-weight: 650; }
.text-link-light { color: var(--white); }
.location-line { display: flex; align-items: center; gap: 12px; margin-bottom: 30px; color: #b5c3cc; font-size: 0.78rem; font-weight: 610; letter-spacing: 0.08em; text-transform: uppercase; }

/* ---------- 02. 页眉 ---------- */
.header-scroll-marker { position: absolute; top: 0; left: 0; width: 1px; height: 1px; }
.site-header { position: sticky; z-index: 100; top: 0; height: calc(var(--header-height) + env(safe-area-inset-top, 0px)); padding-top: env(safe-area-inset-top, 0px); color: var(--white); background: rgba(7,11,15,.94); border-bottom: 1px solid var(--line-dark); backdrop-filter: blur(18px); transition: background 220ms ease, border-color 220ms ease; }
.site-header.is-scrolled { background: rgba(7,11,15,.985); border-color: rgba(255,255,255,.22); }
.header-shell { width: var(--shell); height: 100%; margin-inline: auto; display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.brand { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 10px; color: var(--white); }
.brand .brand-emblem { width: 64px; height: 43px; object-fit: contain; }
.brand-wordmark { display: grid; line-height: 1; }
.brand-wordmark strong { font-size: 0.94rem; font-weight: 760; letter-spacing: 0.08em; text-transform: uppercase; }
.brand-wordmark strong em { color: #ff4545; font-style: normal; }
.brand-wordmark small { margin-top: 7px; color: #91a2ae; font-size: 0.5rem; font-weight: 560; letter-spacing: 0.12em; text-transform: uppercase; }
.desktop-nav { display: flex; align-items: center; justify-content: center; gap: clamp(14px, 1.6vw, 30px); }
.desktop-nav a { position: relative; color: #a8b6bf; font-size: 0.76rem; font-weight: 600; white-space: nowrap; }
.desktop-nav a::after { content: ''; position: absolute; right: 0; bottom: -12px; left: 0; height: 2px; background: var(--signal); transform: scaleX(0); transform-origin: left; transition: transform 220ms ease; }
.desktop-nav a[aria-current='page'] { color: var(--white); }
.desktop-nav a[aria-current='page']::after { transform: scaleX(1); }
.header-actions { display: flex; flex: 0 0 auto; align-items: center; gap: 18px; }
.language-link, .header-phone { color: #a8b6bf; font-size: 0.75rem; font-weight: 630; }
.menu-button { display: none; width: 44px; height: 44px; padding: 12px; border: 1px solid var(--line-dark); border-radius: 0; background: transparent; }
.menu-button span:not(.sr-only) { display: block; width: 100%; height: 1px; margin-block: 5px; background: var(--white); }
.mobile-menu { position: fixed; inset: var(--header-height) 0 0; padding: 28px 24px; color: var(--white); background: var(--ink); overflow: auto; }
.mobile-menu[hidden] { display: none; }
.mobile-menu nav { display: grid; }
.mobile-menu nav a { display: flex; justify-content: space-between; padding: 17px 0; border-bottom: 1px solid var(--line-dark); font-size: 1.35rem; font-weight: 560; }
.mobile-contact { display: grid; gap: 12px; margin-top: 30px; color: #a8b6bf; }

/* ---------- 03. 首页首屏 ---------- */
.home-hero { position: relative; min-height: calc(100svh - var(--header-height)); display: grid; grid-template-rows: minmax(0, 1fr) auto; overflow: hidden; color: var(--white); background: var(--ink); isolation: isolate; }
.home-hero-visual { position: absolute; z-index: -2; inset: 0; margin: 0; overflow: hidden; background: var(--ink); }
.home-hero-visual > picture { position: absolute; inset: 0; width: 100%; height: 100%; overflow: hidden; }
.home-hero-visual > img, .home-hero-visual > picture img { position: absolute; top: 0; left: 66%; width: auto; min-width: 100%; max-width: none; height: 100%; object-fit: initial; transform: translateX(-66%); }
.hero-image-veil { position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg, rgba(7,11,15,.98) 0%, rgba(7,11,15,.9) 29%, rgba(7,11,15,.42) 58%, rgba(7,11,15,.08) 100%), linear-gradient(180deg, rgba(7,11,15,.08) 52%, rgba(7,11,15,.86) 100%); }
.hero-aperture { position: absolute; z-index: 2; top: 0; bottom: 0; left: 0; width: 18%; opacity: 0; pointer-events: none; background: linear-gradient(90deg, transparent, rgba(115,197,255,.3), rgba(255,255,255,.82), rgba(115,197,255,.14), transparent); filter: blur(1px); mix-blend-mode: screen; will-change: transform, opacity; }
.home-hero-visual figcaption { position: absolute; z-index: 3; right: 30px; bottom: 26px; color: rgba(255,255,255,.66); font-size: .62rem; letter-spacing: .04em; }
.hero-grid { position: relative; z-index: 3; min-height: calc(100svh - var(--header-height) - 116px); display: grid; grid-template-columns: minmax(0, 1fr) 300px; align-items: center; gap: 72px; padding-block: clamp(64px, 8vw, 112px); }
.hero-copy { max-width: 1000px; }
.hero-copy h1 { max-width: 1000px; margin-bottom: 34px; font-size: clamp(3.55rem, 5.5vw, 5.85rem); text-wrap: balance; }
.hero-lede { max-width: 720px; margin-bottom: 38px; color: #c4cdd2; font-size: clamp(1.03rem, 1.3vw, 1.24rem); line-height: 1.58; }
.hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 25px; }
.home-hero .text-link { color: var(--white); }
.hero-service-stamp { align-self: end; display: grid; gap: 15px; padding: 18px 0 6px; border-top: 1px solid rgba(255,255,255,.48); }
.hero-service-stamp span { color: var(--signal-bright); font-size: .68rem; }
.hero-service-stamp strong { max-width: 28ch; color: #d9e0e4; font-size: .68rem; font-weight: 590; letter-spacing: .08em; line-height: 1.65; }
.hero-trust { position: relative; z-index: 3; min-height: 116px; display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid rgba(255,255,255,.22); }
.hero-trust > div { display: grid; align-content: center; gap: 7px; padding-right: 36px; border-right: 1px solid rgba(255,255,255,.18); }
.hero-trust > div + div { padding-left: 36px; }
.hero-trust span { color: #8a9aa4; font-size: .64rem; letter-spacing: .11em; text-transform: uppercase; }
.hero-trust strong { font-size: .9rem; font-weight: 590; }

/* ---------- 04. 首页内容 ---------- */
.services-section { color: var(--white); background: var(--graphite); }
.editorial-intro { display: block; max-width: 1120px; margin-bottom: 80px; }
.editorial-intro h2 { max-width: 1020px; margin-bottom: 32px; }
.editorial-intro > div > p { max-width: 720px; color: #99a8b1; font-size: 1.06rem; }
.service-index { border-top: 1px solid var(--line-dark); }
.service-index-row { display: grid; grid-template-columns: 64px .72fr 1fr 30px; align-items: center; gap: 35px; min-height: 144px; border-bottom: 1px solid var(--line-dark); transition: color 180ms ease, background-color 180ms ease, transform 160ms var(--ease); }
.service-index-row:active { color: var(--signal-bright); transform: scale(.995); }
.service-number { color: #71818b; font-size: .7rem; letter-spacing: .1em; }
.service-index-row h3, .service-index-row p { margin: 0; }
.service-index-row p { max-width: 610px; color: #91a1aa; }
.service-arrow { font-size: 1.3rem; }
.package-section { background: #090e12; }
.package-header { display: grid; grid-template-columns: 1.2fr .62fr; gap: 80px; align-items: end; margin-bottom: 76px; }
.package-header h2 { max-width: 900px; margin: 0; }
.package-header > p { color: #9cafba; font-size: 1.02rem; }
.package-matrix { border-top: 1px solid var(--line-dark); }
.matrix-axis { display: grid; grid-template-columns: 1fr 1fr 1fr; padding: 10px 0; color: #8297a4; border-bottom: 1px solid var(--line-dark); font-size: .62rem; letter-spacing: .1em; }
.matrix-axis span:nth-child(2) { text-align: center; }.matrix-axis span:last-child { text-align: right; }
.package-row { display: grid; grid-template-columns: 1.05fr 1.25fr 1fr .7fr; align-items: center; gap: 32px; min-height: 158px; border-bottom: 1px solid var(--line-dark); }
.package-identity span, .package-spec span { color: #718590; font-size: .65rem; letter-spacing: .09em; text-transform: uppercase; }
.package-identity h3 { margin: 8px 0 0; font-size: 1.45rem; }
.package-measure { display: flex; align-items: center; gap: 24px; }
.screen-outline { width: calc(118px * var(--package-scale)); height: calc(66px * var(--package-scale)); min-width: 48px; border: 1px solid var(--signal-bright); box-shadow: 8px 8px 0 rgba(0,111,214,.2); }
.package-measure strong { display: grid; white-space: nowrap; font-size: 1rem; }.package-measure strong small { margin-top: 4px; color: #718590; font-size: .68rem; font-weight: 560; }
.package-spec { display: grid; grid-template-columns: repeat(2, auto); gap: 7px 20px; }.package-spec div { display: grid; gap: 3px; }.package-spec strong { font-size: .85rem; font-weight: 620; }.package-spec p { grid-column: 1 / -1; margin: 5px 0 0; color: #9cafba; font-size: .8rem; }
.package-row > a { justify-self: end; color: var(--signal-bright); font-size: .76rem; font-weight: 650; }
.package-note { display: flex; gap: 15px; margin-top: 24px; color: #758893; font-size: .74rem; }
.package-note p { color: inherit; }
.process-section { background: #e7ecee; }
.process-title { display: block; margin-bottom: 72px; }
.process-title h2 { max-width: 980px; }
.process-track { display: grid; grid-template-columns: repeat(4, 1fr); margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--line-light); }
.process-track li { min-height: 330px; display: flex; flex-direction: column; gap: 70px; padding: 30px 28px 34px 0; border-bottom: 1px solid var(--line-light); }
.process-track li + li { padding-left: 28px; border-left: 1px solid var(--line-light); }
.process-number { color: #005aa8; font-size: .77rem; font-weight: 720; }
.process-track h3 { margin-bottom: 12px; }
.process-track p { max-width: 300px; margin: 0; }
.evidence-section { color: var(--white); background: var(--ink); }
.evidence-grid { min-height: 690px; display: grid; grid-template-columns: .92fr 1.08fr; }
.evidence-display { position: relative; display: grid; align-items: center; overflow: hidden; border-right: 1px solid var(--line-dark); }
.evidence-figure { position: relative; z-index: 2; color: var(--white); font-size: clamp(12rem, 28vw, 31rem); font-weight: 330; letter-spacing: -.09em; line-height: .7; }
.evidence-beam { position: absolute; top: 8%; bottom: 8%; left: 55%; width: 1px; background: linear-gradient(transparent, var(--signal-bright), transparent); box-shadow: 0 0 46px 10px rgba(0,111,214,.22); }
.evidence-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(60px, 8vw, 130px); }
.evidence-copy h2 { max-width: 760px; font-size: clamp(2.6rem, 4.4vw, 5rem); }.evidence-copy > p { max-width: 650px; margin-bottom: 34px; color: #9baab3; }
.evidence-copy .button { align-self: flex-start; }
.evidence-copy .button-dark { color: var(--ink); border-color: var(--white); background: var(--white); }
.area-section { padding-block: var(--section-space); color: var(--white); background: var(--graphite); border-top: 1px solid var(--line-dark); }
.area-grid { display: grid; grid-template-columns: .75fr 1.25fr; align-items: center; gap: 90px; }
.area-grid h2 { max-width: 720px; }.area-grid p { max-width: 650px; color: #9fadb5; font-size: 1.05rem; }
.coverage-stage { min-height: 490px; display: flex; flex-direction: column; justify-content: center; padding: 48px; border-left: 1px solid var(--line-dark); overflow: hidden; }
.coverage-origin { color: var(--signal-bright); font-size: .68rem; letter-spacing: .11em; }
.coverage-stage strong { margin: 42px 0; color: var(--white); font-size: clamp(3.5rem, 7.2vw, 8rem); font-weight: 420; letter-spacing: -.065em; line-height: .8; }
.coverage-rule { display: block; width: 100%; height: 1px; background: linear-gradient(90deg, var(--signal), transparent); }
.closing-cta { padding-block: clamp(85px, 10vw, 150px); color: var(--white); background: #05080b; border-top: 1px solid var(--line-dark); }
.closing-grid { display: grid; grid-template-columns: 1.25fr .65fr; gap: 100px; align-items: end; }
.closing-grid h2 { margin: 0; }.closing-grid p { color: #aab8c1; }.closing-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 24px; }

/* ---------- 05. 业务详情 ---------- */
.service-hero { position: relative; min-height: calc(100svh - var(--header-height)); display: grid; align-items: center; color: var(--white); background: #070b0f; overflow: hidden; }
.service-hero-grid { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0,.76fr) minmax(560px,1.24fr); align-items: center; gap: clamp(52px, 6vw, 112px); padding-block: clamp(62px, 6.5vw, 104px); }
.service-hero-copy { position: relative; z-index: 5; min-width: 0; }
.service-hero h1 { max-width: 8.5ch; margin-bottom: 28px; font-size: clamp(3.25rem, 4.7vw, 5.25rem); line-height: .94; }
.service-hero .hero-lede { width: 100%; max-width: 45ch; color: #b5c1c8; font-size: clamp(.98rem, 1.15vw, 1.12rem); line-height: 1.62; overflow-wrap: anywhere; }
.service-operating-line { max-width: 620px; margin: 36px 0 0; padding-top: 17px; color: #8ea0ab; border-top: 1px solid rgba(255,255,255,.2); font-size: .72rem; font-weight: 610; letter-spacing: .045em; }
.service-brief { max-width: 620px; margin-top: 34px; padding: 20px 0 0 24px; border-top: 1px solid rgba(255,255,255,.2); border-left: 1px solid var(--signal); }
.service-brief span { color: var(--signal-bright); font-size: .64rem; font-weight: 690; letter-spacing: .08em; text-transform: uppercase; }
.service-brief p { margin: 10px 0 0; color: #c1ccd3; font-size: .84rem; line-height: 1.58; }
.service-application-figure { position: relative; min-height: 650px; margin: 0; overflow: hidden; border: 1px solid rgba(255,255,255,.22); background: #081018; isolation: isolate; }
.service-application-figure::before { content: ''; position: absolute; z-index: 2; inset: 0; pointer-events: none; background: linear-gradient(180deg, rgba(4,10,15,.01) 45%, rgba(4,10,15,.74)); }
.service-image-plane { position: absolute; inset: 0; overflow: hidden; }
.service-image-plane img { position: absolute; top: -4%; left: 0; width: 100%; height: 108%; object-fit: cover; object-position: var(--service-visual-focus); will-change: transform; }
.service-light-pass { position: absolute; z-index: 3; top: 0; bottom: 0; left: 0; width: 18%; opacity: 0; pointer-events: none; background: linear-gradient(90deg, transparent, rgba(115,197,255,.26), rgba(255,255,255,.64), transparent); mix-blend-mode: screen; will-change: transform, opacity; }
.service-visual-data { position: absolute; z-index: 4; top: 24px; right: 26px; display: grid; gap: 11px; justify-items: end; color: var(--white); text-align: right; }
.service-visual-data > span { font-size: .68rem; font-weight: 700; letter-spacing: .06em; }
.service-visual-data ul { display: flex; gap: 15px; margin: 0; padding: 0; list-style: none; color: #b9c6ce; font-size: .62rem; }
.service-visual-data li + li::before { content: '/'; margin-right: 15px; color: var(--signal-bright); }
.service-application-figure figcaption { position: absolute; z-index: 4; right: 0; bottom: 0; display: grid; gap: 5px; width: min(430px, 74%); padding: 17px 20px 20px; color: var(--white); border-top: 1px solid rgba(255,255,255,.3); background: rgba(7,11,15,.88); }
.service-application-figure figcaption strong { font-size: .72rem; font-weight: 690; letter-spacing: .02em; }
.service-application-figure figcaption span { color: #aebbc4; font-size: .64rem; line-height: 1.45; }

/* 租赁：画面向舞台侧展开，文案像制作台一样压在暗场边缘。 */
.service-rentals .service-hero-grid { grid-template-columns: minmax(360px,.64fr) minmax(650px,1.36fr); gap: clamp(28px, 3.5vw, 66px); }
.service-application-rentals { min-height: 720px; margin-right: calc((100vw - var(--shell)) / -2); border-right: 0; }
.service-application-rentals figcaption { left: 0; right: auto; border-right: 1px solid rgba(255,255,255,.22); }

/* 固装：建筑照片贴近视口边缘，明暗边界直接表达“嵌入建筑”。 */
.service-installation { background: #0a0d10; }
.service-installation .service-hero-grid { grid-template-columns: minmax(390px,.82fr) minmax(620px,1.18fr); gap: 0; width: 100%; }
.service-installation .service-hero-copy { width: min(650px, calc((100vw - var(--shell)) / 2 + 610px)); padding: 0 clamp(44px, 5.5vw, 104px) 0 max(40px, calc((100vw - var(--shell)) / 2)); }
.service-application-installation { min-height: calc(100svh - var(--header-height)); border-block: 0; border-right: 0; }
.service-application-installation::before { background: linear-gradient(90deg, rgba(7,11,15,.42), transparent 36%), linear-gradient(180deg, transparent 62%, rgba(7,11,15,.58)); }
.service-application-installation .service-light-pass { top: 0; right: 0; bottom: auto; width: auto; height: 18%; background: linear-gradient(180deg, transparent, rgba(255,255,255,.5), rgba(115,197,255,.2), transparent); }

/* 销售：像产品摄影台，画面更低更宽，硬件细节优先。 */
.service-displays { background: linear-gradient(180deg, #070b0f, #0a1117); }
.service-displays .service-hero-grid { grid-template-columns: minmax(360px,.72fr) minmax(620px,1.28fr); align-items: center; }
.service-application-displays { min-height: 590px; margin-block: 40px; border-color: rgba(115,197,255,.35); }
.service-application-displays::before { background: linear-gradient(90deg, rgba(5,10,14,.3), transparent 45%), linear-gradient(180deg, transparent 64%, rgba(5,10,14,.82)); }
.service-application-displays .service-visual-data { top: auto; right: auto; bottom: 24px; left: 26px; align-items: start; justify-items: start; text-align: left; }
.service-application-displays figcaption { top: 0; right: 0; bottom: auto; border-top: 0; border-bottom: 1px solid rgba(255,255,255,.3); }

/* 维修：紧凑诊断视角占据画面，说明板像真实工单贴在右下角。 */
.service-support .service-hero-grid { grid-template-columns: minmax(380px,.86fr) minmax(600px,1.14fr); gap: clamp(42px, 5vw, 88px); }
.service-application-support { min-height: 680px; border-color: rgba(255,255,255,.18); }
.service-application-support .service-image-plane img { object-position: var(--service-visual-focus); }
.service-application-support figcaption { right: 24px; bottom: 24px; border: 1px solid rgba(255,255,255,.24); }
.proof-grid { display: grid; grid-template-columns: .78fr 1.22fr; gap: 100px; }
.proof-lead h2 { max-width: 680px; font-size: clamp(2.3rem, 4vw, 4.7rem); }
.proof-list { border-top: 1px solid var(--line-light); }
.proof-list article { display: grid; grid-template-columns: 60px .7fr 1fr; gap: 25px; padding: 40px 0; border-bottom: 1px solid var(--line-light); }.proof-list article > span { color: var(--signal-dark); font-size: .68rem; font-weight: 700; }.proof-list h3, .proof-list p { margin: 0; }
.compact-package-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line-dark); border-left: 1px solid var(--line-dark); }
.compact-package-grid article { min-height: 320px; display: flex; flex-direction: column; padding: 28px; border-right: 1px solid var(--line-dark); border-bottom: 1px solid var(--line-dark); }.compact-package-grid article > span { color: var(--signal-bright); font-size: .7rem; }.compact-package-grid h3 { margin: 35px 0 12px; }.compact-package-grid strong { font-size: 1.2rem; }.compact-package-grid p { color: #91a3ae; font-size: .82rem; }.compact-package-grid a { margin-top: auto; color: var(--signal-bright); font-size: .76rem; }
.workflow-grid, .deliverables-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 100px; }.workflow-grid h2, .deliverables-grid h2 { font-size: clamp(2.3rem, 4vw, 4.7rem); }
.workflow-grid ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--line-light); }.workflow-grid li { display: grid; grid-template-columns: 55px 1fr; gap: 22px; padding: 36px 0; border-bottom: 1px solid var(--line-light); }.workflow-grid li > span { color: var(--signal-dark); font-size: .7rem; font-weight: 650; }.workflow-grid h3 { margin-bottom: 10px; }.workflow-grid p { margin: 0; }
.deliverables-section { background: var(--white); }.deliverables-grid ul { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--line-light); }.deliverables-grid li { display: grid; grid-template-columns: 60px 1fr; padding: 24px 0; border-bottom: 1px solid var(--line-light); font-size: 1.1rem; }.deliverables-grid li span { color: #52616c; font-size: .68rem; }
.rental-faq-section { color: var(--white); background: #080d12; border-top: 1px solid var(--line-dark); }
.rental-faq-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(70px, 9vw, 150px); align-items: start; }
.rental-faq-heading { position: sticky; top: calc(var(--header-height) + 40px); }
.rental-faq-section .section-coordinate { color: #91a2ae; }
.rental-faq-heading h2 { max-width: 640px; font-size: clamp(2.6rem, 4.7vw, 5.2rem); }
.rental-faq-heading > p:last-child { max-width: 460px; color: #93a4ae; }
.rental-faq-list { border-top: 1px solid var(--line-dark); }
.rental-faq-list details { border-bottom: 1px solid var(--line-dark); }
.rental-faq-list summary { min-height: 104px; display: grid; grid-template-columns: 58px 1fr 26px; align-items: center; gap: 22px; cursor: pointer; list-style: none; }
.rental-faq-list summary::-webkit-details-marker { display: none; }
.rental-faq-list summary span { color: var(--signal-bright); font-size: .68rem; font-weight: 700; }
.rental-faq-list summary strong { font-size: clamp(1.05rem, 1.4vw, 1.32rem); font-weight: 560; }
.rental-faq-list summary i { position: relative; width: 18px; height: 18px; }
.rental-faq-list summary i::before, .rental-faq-list summary i::after { content: ''; position: absolute; top: 50%; left: 0; width: 18px; height: 1px; background: var(--signal-bright); transition: transform 220ms var(--ease); }
.rental-faq-list summary i::after { transform: rotate(90deg); }
.rental-faq-list details[open] summary i::after { transform: rotate(0); }
.rental-faq-list details p { max-width: 700px; margin: -12px 44px 34px 80px; color: #aab8c0; }

/* ---------- 06. 项目、联系与信息页 ---------- */
.page-intro { position: relative; min-height: min(780px, calc(100svh - var(--header-height))); display: grid; align-content: center; padding-block: clamp(92px, 10vw, 164px) 0; color: var(--white); background: #070b0f; overflow: hidden; isolation: isolate; }
.page-intro::before { content: ''; position: absolute; z-index: -1; inset: 0; pointer-events: none; background: radial-gradient(circle at 76% 32%, rgba(0,111,214,.17), transparent 29%), linear-gradient(90deg, transparent 0 49.92%, rgba(255,255,255,.06) 50%, transparent 50.08%); }
.page-intro::after { content: ''; position: absolute; z-index: -1; right: -8vw; bottom: -36%; width: 48vw; aspect-ratio: 1; border: 1px solid rgba(115,197,255,.16); transform: rotate(24deg); }
.intro-grid { display: grid; grid-template-columns: 1.1fr .55fr; gap: 100px; align-items: end; }.intro-grid h1 { max-width: 1000px; margin: 0; }.intro-grid > p { color: #a8b6bf; font-size: 1.08rem; }
.page-intro-copy h1 { max-width: 1000px; margin: 0 0 34px; font-size: clamp(3.4rem, 6.4vw, 7.2rem); }
.page-intro-copy > p:last-child { max-width: 720px; margin: 0; color: #a8b6bf; font-size: clamp(.96rem, 1.1vw, 1.08rem); }
.projects-intro { border-bottom: 1px solid var(--line-dark); }
.projects-intro-grid, .about-intro-grid, .contact-intro-grid { display: grid; grid-template-columns: minmax(0,1.12fr) minmax(340px,.58fr); gap: clamp(70px, 9vw, 150px); align-items: center; padding-bottom: clamp(70px, 8vw, 120px); }
.projects-intro-signal { position: relative; min-height: 330px; display: grid; align-content: end; padding: 34px; border: 1px solid rgba(255,255,255,.2); background: linear-gradient(145deg, rgba(255,255,255,.035), rgba(0,111,214,.09)); overflow: hidden; }
.projects-intro-signal::before { content: ''; position: absolute; top: 0; bottom: 0; left: 58%; width: 1px; background: linear-gradient(transparent, var(--signal-bright), transparent); box-shadow: 0 0 36px 8px rgba(0,111,214,.18); }
.projects-intro-signal > span { position: absolute; top: 28px; left: 30px; color: #90a3af; font-size: .62rem; letter-spacing: .14em; }
.projects-intro-signal strong { position: relative; font-size: clamp(9rem, 16vw, 15rem); font-weight: 340; letter-spacing: -.11em; line-height: .7; }
.projects-intro-signal i { position: absolute; width: 8px; height: 8px; border-radius: 50%; background: var(--signal-bright); box-shadow: 0 0 18px rgba(115,197,255,.8); }
.projects-intro-signal i:nth-of-type(1) { top: 26%; left: 18%; }.projects-intro-signal i:nth-of-type(2) { top: 40%; right: 14%; }.projects-intro-signal i:nth-of-type(3) { right: 34%; bottom: 18%; }.projects-intro-signal i:nth-of-type(4) { bottom: 27%; left: 13%; }
.page-intro-ledger { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--line-dark); }
.page-intro-ledger span { min-height: 92px; display: grid; align-content: center; gap: 7px; color: #71838f; border-right: 1px solid var(--line-dark); font-size: .61rem; letter-spacing: .09em; text-transform: uppercase; }
.page-intro-ledger span + span { padding-left: 28px; }.page-intro-ledger strong { color: #d4dce1; font-size: .72rem; font-weight: 600; }
.projects-gallery { color: var(--white); background: var(--ink); }
.project-story { min-height: min(900px, 92svh); display: grid; grid-template-columns: 1.38fr .62fr; border-bottom: 1px solid var(--line-dark); }
.project-story-reverse { grid-template-columns: .62fr 1.38fr; }
.project-story-reverse figure { order: 2; }
.project-story figure { position: relative; min-width: 0; margin: 0; overflow: hidden; background: #05080b; }
.project-story figure::after { content: ''; position: absolute; z-index: 1; inset: 0; pointer-events: none; background: linear-gradient(180deg, transparent 68%, rgba(7,11,15,.42)); }
.project-media { position: relative; top: -2%; display: block; width: 100%; height: 104%; object-fit: cover; object-position: var(--media-focus); will-change: transform; }
.project-video { top: 0; height: 100%; background: #05080b; }
.project-media-portrait { background: repeating-linear-gradient(90deg, #05080b 0 1px, #0c1a25 1px 72px); }
.project-media-portrait .project-video { width: 100%; padding: clamp(24px, 4vw, 72px); object-fit: contain; background: radial-gradient(circle at 50% 50%, rgba(0,111,214,.16), transparent 38%); }
.project-media-badge { position: absolute; z-index: 2; top: 18px; left: 20px; padding: 8px 10px; color: var(--ink); background: var(--signal-bright); font-size: .58rem; font-weight: 750; letter-spacing: .08em; }
.project-media-wide .project-photo-source, .project-media-portrait .project-photo-source { top: 18px; bottom: auto; }
.project-photo-source { position: absolute; z-index: 2; right: 20px; bottom: 18px; padding: 8px 10px; color: rgba(255,255,255,.8); background: rgba(7,11,15,.72); font-size: .58rem; letter-spacing: .08em; text-transform: uppercase; backdrop-filter: blur(10px); }
.project-copy { position: relative; display: flex; flex-direction: column; justify-content: center; padding: clamp(48px, 6vw, 102px); background: #0d141a; overflow: hidden; }
.project-index-watermark { position: absolute; right: -18px; bottom: -32px; color: #60717d; font-size: clamp(9rem, 19vw, 18rem); font-weight: 350; letter-spacing: -.1em; line-height: .8; pointer-events: none; }
.project-meta { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-bottom: 18px; color: var(--signal-bright); border-bottom: 1px solid var(--line-dark); font-size: .66rem; letter-spacing: .08em; text-transform: uppercase; }
.project-copy h2 { margin: 36px 0 24px; font-size: clamp(2.4rem, 4vw, 4.7rem); }
.project-copy > p { color: #a4b2ba; }
.project-copy ul { margin: 28px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--line-dark); }
.project-copy li { padding: 13px 0; color: #d6dde1; border-bottom: 1px solid var(--line-dark); font-size: .82rem; }
.project-disclosure { margin-top: 34px; color: #788b97 !important; font-size: .72rem; }
.operating-base-card, .contact-brief-card { position: relative; padding: 32px; border: 1px solid rgba(255,255,255,.22); background: rgba(13,21,27,.82); box-shadow: 24px 24px 0 rgba(0,111,214,.08); }
.operating-base-card::before, .contact-brief-card::before { content: ''; position: absolute; top: -1px; left: -1px; width: 72px; height: 2px; background: var(--signal-bright); }
.operating-base-card > span, .contact-brief-card > span { color: var(--signal-bright); font-size: .65rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.operating-base-card > strong { display: block; margin: 54px 0 42px; font-size: clamp(2.35rem, 4vw, 4.2rem); font-weight: 450; letter-spacing: -.055em; line-height: .86; }
.operating-base-card dl { margin: 0; border-top: 1px solid var(--line-dark); }.operating-base-card dl > div { display: grid; grid-template-columns: .72fr 1fr; gap: 18px; padding: 14px 0; border-bottom: 1px solid var(--line-dark); }.operating-base-card dt { color: #7f929d; font-size: .65rem; }.operating-base-card dd { margin: 0; font-size: .76rem; }
.contact-brief-card ol { margin: 42px 0 28px; padding: 0; list-style: none; border-top: 1px solid var(--line-dark); }.contact-brief-card li { display: grid; grid-template-columns: 46px 1fr; padding: 14px 0; border-bottom: 1px solid var(--line-dark); color: #d2dbe0; font-size: .84rem; }.contact-brief-card li b { color: var(--signal-bright); font-size: .65rem; }.contact-brief-card small { color: #8396a2; font-size: .68rem; }
.contact-methods { color: var(--white); background: var(--graphite); }.contact-method-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-left: 1px solid var(--line-dark); }.contact-method-grid > * { min-height: 170px; display: flex; flex-direction: column; justify-content: space-between; padding: 25px; border-right: 1px solid var(--line-dark); transition: background-color 180ms ease, color 180ms ease; }.contact-method-grid span { color: #7f929d; font-size: .67rem; letter-spacing: .12em; text-transform: uppercase; }.contact-method-grid strong { font-size: .9rem; font-weight: 560; overflow-wrap: anywhere; }.contact-method-grid i { align-self: end; font-style: normal; }
.company-office-evidence, .office-visit { background: var(--white); }
.office-evidence-grid { display: grid; grid-template-columns: 1.22fr .78fr; min-height: 680px; border: 1px solid var(--line-light); }
.office-evidence-media, .office-building-media { position: relative; margin: 0; overflow: hidden; background: var(--ink); }
.office-evidence-media img, .office-building-media img { width: 100%; height: 100%; object-fit: cover; }
.office-evidence-media img { object-position: 50% 50%; }
.office-evidence-media figcaption, .office-building-media figcaption { position: absolute; bottom: 0; left: 0; padding: 10px 13px; color: var(--white); background: rgba(11,16,21,.9); font-size: .68rem; font-weight: 620; letter-spacing: .04em; }
.office-evidence-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(48px, 6vw, 96px); background: var(--paper); }
.office-evidence-copy h2 { font-size: clamp(2.3rem, 4vw, 4.7rem); }
.office-evidence-copy p { max-width: 570px; }
.office-evidence-copy address, .office-visit-copy address { margin-top: 32px; padding-top: 18px; color: var(--ink); border-top: 1px solid var(--line-light); font-size: .78rem; font-style: normal; font-weight: 620; }
.office-visit-grid { display: grid; grid-template-columns: 1.12fr .88fr; gap: 1px; background: var(--line-light); border: 1px solid var(--line-light); }
.office-building-media { min-height: 840px; }
.office-building-media img { object-position: 50% 56%; }
.office-visit-details { display: grid; grid-template-rows: auto minmax(0, 1fr); gap: 1px; background: var(--line-light); }
.office-visit-copy { padding: clamp(42px, 5vw, 78px); background: var(--paper); }
.office-visit-copy h2 { font-size: clamp(2.15rem, 3.4vw, 4rem); }
.office-visit-copy p { max-width: 560px; }
.office-location-ledger { display: grid; align-content: end; padding: clamp(42px, 5vw, 78px); color: var(--white); background: var(--ink); }
.office-location-ledger div { display: grid; gap: 8px; padding: 22px 0; border-top: 1px solid var(--line-dark); }
.office-location-ledger span { color: var(--steel); font-size: .68rem; font-weight: 620; letter-spacing: .12em; text-transform: uppercase; }
.office-location-ledger strong { font-size: clamp(1rem, 1.4vw, 1.3rem); font-weight: 560; }
.inquiry-section { background: var(--paper); }.inquiry-layout { display: grid; grid-template-columns: .5fr 1fr; gap: 100px; align-items: start; }.inquiry-layout aside { position: sticky; top: calc(var(--header-height) + 35px); }.inquiry-layout aside h2 { font-size: clamp(2.25rem, 3.5vw, 4rem); }.inquiry-layout aside ul { margin-top: 35px; padding-left: 20px; color: #596a75; }
.inquiry-form { min-width: 0; border-top: 2px solid var(--ink); }.form-section { min-width: 0; padding: 38px 0 50px; border-bottom: 1px solid var(--line-light); }.form-section-title { display: grid; grid-template-columns: 50px 1fr; align-items: center; margin-bottom: 30px; }.form-section-title span { color: var(--signal-dark); font-size: .68rem; }.form-section-title h2 { margin: 0; font-size: 1.5rem; }.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 25px; }.form-grid > *, .inquiry-form label { min-width: 0; }.inquiry-form label { display: grid; gap: 8px; color: #354650; font-size: .72rem; font-weight: 620; }.inquiry-form input, .inquiry-form select, .inquiry-form textarea { width: 100%; min-width: 0; min-height: 52px; padding: 12px 13px; color: var(--ink); border: 1px solid #aab6bd; border-radius: 0; background: var(--white); }.inquiry-form textarea { resize: vertical; }.inquiry-form input:focus, .inquiry-form select:focus, .inquiry-form textarea:focus { border-color: var(--signal); outline: 2px solid rgba(0,111,214,.25); }.inquiry-form [aria-invalid='true'] { border-color: #9d1c1c; }
.date-picker-control { position: relative; min-height: 52px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 12px 13px; color: var(--ink); border: 1px solid #aab6bd; background: var(--white); cursor: pointer; }
.inquiry-form .date-picker-input { position: absolute; z-index: 2; inset: -1px; width: auto; height: auto; min-height: 0; padding: 0; opacity: 0; border: 0; cursor: pointer; color-scheme: light; }
.date-picker-value { color: #38464e; font-size: 1rem; font-weight: 560; }
.date-picker-icon { flex: 0 0 auto; width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.date-picker-control:focus-within { border-color: var(--signal); outline: 2px solid rgba(72,99,0,.24); }
.date-field:has(.date-picker-input[aria-invalid='true']) .date-picker-control { border-color: #9d1c1c; }
.field-wide { margin-bottom: 26px; }.field-with-note { overflow-x: clip; }.field-with-note small, .file-field small { color: #596a75; font-weight: 450; line-height: 1.55; }.form-summary, .form-error { margin: 15px 0 0; padding: 12px; color: #821616; border: 1px solid #bd2727; background: #fff0f0; }.form-summary { margin: 0 0 28px; }.honeypot { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }.form-submit { display: grid; gap: 22px; padding-top: 38px; }.consent { grid-template-columns: 22px 1fr; align-items: start; }.consent input { min-height: auto; margin-top: 3px; }.form-submit .button { justify-self: start; }.form-submit > p { max-width: 660px; font-size: .72rem; }
.principles-grid { display: grid; grid-template-columns: .7fr 1.3fr; gap: 100px; }.principles-grid > div > h2 { font-size: clamp(2.25rem, 4vw, 4.7rem); }.principle-list { border-top: 1px solid var(--line-light); }.principle-list article { display: grid; grid-template-columns: .72fr 1fr; gap: 24px; padding: 35px 0; border-bottom: 1px solid var(--line-light); }.principle-list h3, .principle-list p { margin: 0; }
.about-area .area-grid { align-items: start; }.about-area h2 { font-size: clamp(2.3rem, 4vw, 4.8rem); }.about-area p { color: #a9b8c1; }.coverage-ledger { display: grid; border-top: 1px solid var(--line-dark); }.coverage-ledger span { margin-top: 22px; color: #728691; font-size: .65rem; letter-spacing: .13em; }.coverage-ledger strong { padding: 10px 0 22px; border-bottom: 1px solid var(--line-dark); font-size: 1rem; font-weight: 560; }
.legal-page { padding-block: clamp(100px, 11vw, 170px); }.legal-header { display: grid; grid-template-columns: minmax(0,1fr) 330px; gap: clamp(70px, 10vw, 170px); align-items: end; margin-bottom: 110px; }.legal-page h1 { font-size: clamp(3.2rem, 6vw, 6.8rem); }.legal-header > div > p:last-child { max-width: 750px; font-size: 1.05rem; }.legal-register { margin: 0; border-top: 2px solid var(--ink); }.legal-register > div { display: grid; grid-template-columns: .8fr 1fr; gap: 20px; padding: 14px 0; border-bottom: 1px solid var(--line-light); }.legal-register dt { color: #53646e; font-size: .64rem; text-transform: uppercase; }.legal-register dd { margin: 0; font-size: .7rem; font-weight: 650; text-align: right; }.legal-sections { margin-left: min(24vw, 350px); border-top: 1px solid var(--line-light); counter-reset: legal-section; }.legal-sections section { counter-increment: legal-section; position: relative; display: grid; grid-template-columns: .55fr 1fr; gap: 50px; padding: 46px 0; border-bottom: 1px solid var(--line-light); }.legal-sections section::before { content: '0' counter(legal-section); position: absolute; top: 50px; left: -78px; color: var(--signal-dark); font-size: .66rem; font-weight: 700; }.legal-sections h2 { font-size: 1.45rem; }.legal-sections p { margin: 0; }
.thanks-page { min-height: calc(100svh - var(--header-height)); display: grid; align-items: center; padding-block: clamp(80px, 9vw, 140px); color: var(--white); background: #070b0f; }.thanks-grid { display: grid; grid-template-columns: .72fr 1fr; gap: clamp(70px, 9vw, 150px); align-items: center; }.success-receipt { position: relative; min-height: 620px; display: flex; flex-direction: column; justify-content: space-between; padding: 34px; border: 1px solid rgba(255,255,255,.2); background: linear-gradient(155deg, rgba(255,255,255,.04), rgba(0,111,214,.09)); overflow: hidden; }.success-receipt::after { content: ''; position: absolute; inset: 18%; border: 1px solid rgba(115,197,255,.22); transform: rotate(-10deg); }.receipt-status { z-index: 2; display: flex; align-items: center; gap: 12px; color: #dce5e9; font-size: .66rem; letter-spacing: .12em; }.receipt-status span { width: 9px; height: 9px; border-radius: 50%; background: var(--signal-bright); box-shadow: 0 0 22px 5px rgba(115,197,255,.36); }.receipt-grid { position: absolute; inset: 20% 12%; display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; transform: perspective(700px) rotateY(-15deg) rotateX(8deg); }.receipt-grid i { border: 1px solid rgba(115,197,255,.25); background: rgba(0,111,214,.08); }.receipt-grid i:nth-child(5) { border-color: var(--signal-bright); background: rgba(115,197,255,.28); box-shadow: 0 0 40px rgba(0,111,214,.28); }.receipt-route { z-index: 2; display: grid; grid-template-columns: auto 1fr auto 1fr auto; align-items: center; gap: 13px; color: #8295a1; font-size: .56rem; letter-spacing: .08em; }.receipt-route b { height: 1px; background: linear-gradient(90deg, var(--signal-bright), rgba(115,197,255,.15)); }.thanks-copy > p { color: #aebbc3; }.thanks-grid h1 { font-size: clamp(3rem, 5.5vw, 6rem); }.reference-box { position: relative; margin: 34px 0 24px; padding: 22px; color: var(--white); border: 1px solid var(--line-dark); background: var(--graphite); }.reference-box span { display: block; color: #8195a1; font-size: .65rem; text-transform: uppercase; }.reference-box strong { display: block; margin-top: 8px; color: var(--white); font-size: 1.4rem; }.reference-box i { position: absolute; right: 20px; bottom: 20px; color: #738792; font-size: .62rem; font-style: normal; }.thanks-next-steps { margin: 0 0 28px; padding: 0; list-style: none; border-top: 1px solid var(--line-dark); }.thanks-next-steps li { display: grid; grid-template-columns: 52px 1fr; padding: 13px 0; color: #ccd6db; border-bottom: 1px solid var(--line-dark); font-size: .78rem; }.thanks-next-steps span { color: var(--signal-bright); font-size: .62rem; }.thanks-note { font-size: .82rem; }.thanks-page .text-link { color: var(--white); }
.not-found { position: relative; min-height: calc(100svh - var(--header-height)); display: grid; align-items: center; color: var(--white); background: var(--ink); overflow: hidden; }.page-404 { background: var(--ink); }.not-found-copy { position: relative; z-index: 2; }.not-found-copy > span { color: var(--signal-bright); font-size: .7rem; letter-spacing: .14em; }.not-found h1 { max-width: 950px; margin: 30px 0; }.not-found p { max-width: 650px; color: #a9b8c1; }.not-found-copy > div { display: flex; gap: 28px; align-items: center; margin-top: 30px; }.not-found-signal { position: absolute; right: -3vw; display: grid; place-items: center; width: min(56vw, 900px); aspect-ratio: 1; color: rgba(255,255,255,.035); border: 1px solid rgba(115,197,255,.12); transform: rotate(12deg); }.not-found-signal strong { font-size: clamp(12rem, 28vw, 31rem); font-weight: 340; letter-spacing: -.12em; transform: rotate(-12deg); }.not-found-signal span, .not-found-signal i { position: absolute; width: 6%; aspect-ratio: 1; border: 1px solid var(--signal-bright); }.not-found-signal span { top: 34%; left: 47%; background: var(--signal); box-shadow: 0 0 50px rgba(0,111,214,.5); animation: lost-pixel 2.4s var(--ease) infinite alternate; }.not-found-signal i:nth-of-type(1) { top: 18%; left: 18%; opacity: .25; }.not-found-signal i:nth-of-type(2) { right: 14%; bottom: 20%; opacity: .35; }.not-found-signal i:nth-of-type(3) { right: 28%; top: 22%; opacity: .18; }

/* ---------- 07. 页脚与显现动效 ---------- */
.site-footer { color: var(--white); background: #080c10; }.footer-signal { height: 6px; display: grid; grid-template-columns: 4fr 1fr 2fr 3fr; gap: 3px; }.footer-signal span { background: var(--signal); }.footer-signal span:nth-child(2) { background: var(--signal-bright); }.footer-signal span:nth-child(3) { background: #274967; }.footer-signal span:nth-child(4) { background: #17314a; }
.footer-shell { width: var(--shell); margin-inline: auto; display: grid; grid-template-columns: .85fr 1.15fr; gap: 100px; padding-block: 90px; }.brand-footer { display: block; width: min(250px, 100%); margin-bottom: 30px; }.brand-footer .footer-official-logo { width: 100%; height: auto; }.footer-brand p, .footer-brand address { max-width: 450px; color: #93a2aa; font-size: .82rem; font-style: normal; }.footer-links { display: grid; grid-template-columns: repeat(3, 1fr); gap: 55px; }.footer-links > div { display: grid; align-content: start; gap: 11px; }.footer-links a, .footer-links span { color: #a7b5bd; font-size: .78rem; }.footer-label { margin-bottom: 12px; color: #84959f; }
.footer-base { width: var(--shell); margin-inline: auto; display: flex; justify-content: space-between; padding: 20px 0 32px; color: #84959f; border-top: 1px solid var(--line-dark); font-size: .65rem; letter-spacing: .08em; text-transform: uppercase; }

/* ---------- 09. 旧版视觉融合：现场图片 + 荧光信号 ---------- */
:focus-visible { outline-color: var(--signal); }
::selection { color: var(--ink); background: var(--signal); }
.skip-link { color: var(--ink); background: var(--signal); }
.button-signal { color: var(--ink); border-color: var(--signal); background: var(--signal); }
.desktop-nav a::after { background: var(--signal); }
.location-line::before { content: ''; flex: 0 0 auto; width: 7px; height: 7px; background: var(--signal); box-shadow: 0 0 18px rgba(200,255,26,.45); }

.home-hero { min-height: max(760px, calc(100svh - var(--header-height))); }
.home-hero-visual > img,
.home-hero-visual > picture img { top: 0; left: 0; width: 100%; min-width: 0; height: 100%; object-fit: cover; object-position: center; transform: none; }
.hero-image-veil { background: linear-gradient(90deg, rgba(4,7,9,.97) 0%, rgba(4,7,9,.9) 27%, rgba(4,7,9,.48) 49%, rgba(4,7,9,.08) 75%), linear-gradient(180deg, rgba(4,7,9,.04) 48%, rgba(4,7,9,.83) 100%); }
.hero-copy h1 { max-width: 11ch; font-size: clamp(4.2rem, 7.2vw, 7.8rem); letter-spacing: -.055em; line-height: .86; }
.hero-copy h1 span,
.hero-copy h1 strong { display: block; font: inherit; }
.hero-copy h1 strong { color: var(--signal); }
.hero-service-stamp { border-top-color: rgba(216,255,62,.76); }
.hero-service-stamp span,
.package-row > a { color: var(--signal); }
.hero-aperture { width: 7%; background: linear-gradient(90deg, transparent, rgba(200,255,26,.08), rgba(255,255,255,.36), rgba(200,255,26,.08), transparent); filter: blur(5px); }
.hero-trust strong { color: #f4f7f0; }

.services-section { padding-top: clamp(96px, 10vw, 164px); color: var(--ink); background: #eef0eb; }
.home-capability-grid { display: grid; grid-template-columns: minmax(320px,.72fr) minmax(520px,1.28fr); gap: clamp(55px,8vw,140px); align-items: center; margin-bottom: clamp(70px,8vw,120px); }
.home-capability-grid .editorial-intro { display: block; margin: 0; }
.home-capability-grid .editorial-intro h2 { max-width: 8ch; font-size: clamp(3rem,5vw,6rem); }
.home-capability-grid .editorial-intro p { max-width: 34rem; margin-top: 28px; color: #3d4940; }
.home-capability-media { position: relative; aspect-ratio: 1.38; margin: 0; overflow: hidden; background: var(--ink); box-shadow: 34px 34px 0 rgba(10,16,13,.08); }
.home-capability-media img { width: 100%; height: 100%; object-fit: cover; }
.home-capability-media figcaption { position: absolute; right: 0; bottom: 0; padding: 10px 13px; color: rgba(255,255,255,.82); background: rgba(4,7,9,.82); font-size: .6rem; letter-spacing: .05em; }
.service-index { border-top: 1px solid rgba(7,11,15,.22); }
.service-index-row { color: var(--ink); }
.service-index-row p { color: #455149; }
.service-index-row:hover { color: #273900; background: rgba(200,255,26,.2); }
.service-number { color: var(--signal-dark); }

.package-section { position: relative; isolation: isolate; overflow: hidden; background: #06090b; }
.package-row { background: rgba(255,255,255,.012); }
.screen-outline { border-color: var(--signal); box-shadow: 8px 8px 0 rgba(200,255,26,.15); }
.package-note > span { color: var(--ink); background: var(--signal); }

.service-hero { min-height: max(700px, calc(100svh - var(--header-height))); }
.service-application-figure { background: #050809; }
.service-application-figure::before { background: linear-gradient(90deg, rgba(4,7,9,.65), rgba(4,7,9,.04) 66%), linear-gradient(180deg, transparent 55%, rgba(4,7,9,.82)); }
.service-visual-data li + li::before,
.service-brief span,
.project-meta,
.contact-brief-card li b,
.contact-brief-card > span,
.operating-base-card > span,
.rental-faq-list summary span { color: var(--signal); }
.service-brief { border-left-color: var(--signal); }
.service-light-pass { background: linear-gradient(90deg, transparent, rgba(200,255,26,.2), rgba(255,255,255,.48), rgba(200,255,26,.12), transparent); }
.service-application-figure figcaption { border-top-color: rgba(216,255,62,.5); background: rgba(4,7,9,.9); }
.service-application-figure figcaption span { color: #c3cbc0; }

.page-intro::before { background: radial-gradient(circle at 76% 32%, rgba(200,255,26,.11), transparent 30%), linear-gradient(90deg, transparent 0 49.92%, rgba(255,255,255,.05) 50%, transparent 50.08%); }
.page-intro::after { border-color: rgba(200,255,26,.17); }
.projects-intro-signal::before { background: linear-gradient(transparent, var(--signal), transparent); box-shadow: 0 0 36px 8px rgba(200,255,26,.12); }
.projects-intro-signal i { background: var(--signal); box-shadow: 0 0 18px rgba(200,255,26,.58); }
.project-copy { background: #0b100e; }
.project-index-watermark { color: #39423d; }

.about-area { position: relative; isolation: isolate; overflow: hidden; background: #070a09; }
.about-area-visual { position: absolute; z-index: -2; inset: 0; margin: 0; }
.about-area-visual::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(5,8,7,.96) 0%, rgba(5,8,7,.78) 48%, rgba(5,8,7,.62) 100%), linear-gradient(180deg, rgba(5,8,7,.32), rgba(5,8,7,.86)); }
.about-area-visual img { width: 100%; height: 100%; object-fit: cover; object-position: center; filter: saturate(.75) contrast(1.08); }
.about-area-visual figcaption { position: absolute; right: 24px; bottom: 18px; color: rgba(255,255,255,.62); font-size: .6rem; }
.about-area .area-grid { position: relative; z-index: 1; }
.coverage-ledger { background: rgba(5,8,7,.46); backdrop-filter: blur(6px); }
.operating-base-card::before,
.contact-brief-card::before { background: var(--signal); }
.operating-base-card,
.contact-brief-card { box-shadow: 24px 24px 0 rgba(200,255,26,.06); }

.footer-signal span { background: var(--signal); }
.footer-signal span:nth-child(2) { background: #f0ffb8; }
.footer-signal span:nth-child(3) { background: #708f10; }
.footer-signal span:nth-child(4) { background: #26320b; }

@media (min-width: 801px) {
  .service-hero-grid,
  .service-rentals .service-hero-grid,
  .service-installation .service-hero-grid,
  .service-displays .service-hero-grid,
  .service-support .service-hero-grid { position: relative; min-height: max(700px, calc(100svh - var(--header-height))); grid-template-columns: 1fr; align-items: center; gap: 0; width: var(--shell); padding-block: clamp(72px,8vw,120px); }
  .service-hero-copy,
  .service-installation .service-hero-copy { width: min(40%,560px); padding: 0; }
  .service-hero h1 { max-width: 8.5ch; font-size: clamp(3.35rem,4.6vw,5.15rem); }
  .locale-zh .service-hero h1 { max-width: 7ch; font-size: clamp(3.15rem,4.15vw,4.7rem); line-height: 1.02; }
  .service-application-figure,
  .service-application-rentals,
  .service-application-installation,
  .service-application-displays,
  .service-application-support { position: absolute; z-index: -1; top: 0; right: calc((100vw - var(--shell)) / -2); bottom: 0; width: min(60vw,1120px); min-height: 100%; margin: 0; border-block: 0; border-right: 0; }
  .service-image-plane img { object-position: var(--service-visual-focus); }
  .service-application-figure figcaption,
  .service-application-rentals figcaption,
  .service-application-installation figcaption,
  .service-application-displays figcaption,
  .service-application-support figcaption { top: auto; right: 0; bottom: 0; left: auto; width: min(430px,58%); border: 0; border-top: 1px solid rgba(216,255,62,.42); }
  .service-visual-data,
  .service-application-displays .service-visual-data { top: 26px; right: 28px; bottom: auto; left: auto; align-items: end; justify-items: end; text-align: right; }
}

@keyframes completion-pulse {
  from { opacity: .3; transform: scale(.94); }
  to { opacity: 1; transform: scale(1.03); }
}

@keyframes lost-pixel {
  from { opacity: .38; transform: translate3d(-10px, 8px, 0) scale(.82); }
  to { opacity: 1; transform: translate3d(12px, -9px, 0) scale(1.08); }
}

@media (hover: hover) and (pointer: fine) {
  .button:hover { transform: translateY(-2px); }
  .button-signal:hover { color: var(--ink); border-color: var(--signal-bright); background: var(--signal-bright); }
  .evidence-copy .button-dark:hover { color: var(--white); border-color: var(--signal); background: var(--signal); }
  .desktop-nav a:hover { color: var(--white); }
  .desktop-nav a:hover::after { transform: scaleX(1); }
  .service-index-row:hover { color: var(--signal-bright); background: rgba(255,255,255,.025); transform: translateX(6px); }
  .contact-method-grid a:hover { color: var(--signal-bright); background: rgba(255,255,255,.035); }
  .footer-links a:hover { color: var(--signal-bright); }
}

/* ---------- 08. 响应式与无动效 ---------- */
@media (max-width: 1420px) { .header-phone { display: none; }.desktop-nav { gap: 15px; } }
@media (min-width: 801px) {
  .locale-zh .hero-copy h1 { font-size: clamp(3.2rem, 5vw, 5.55rem); }
  .locale-zh .hero-title-line { display: block; }
}
@media (max-width: 1160px) {
  :root { --shell: min(100% - 48px, 1080px); }
  .desktop-nav, .header-actions > .button, .header-phone { display: none; }.menu-button { display: block; }
  .hero-grid { grid-template-columns: minmax(0,1fr) 240px; gap: 46px; }.hero-copy h1 { font-size: clamp(3.35rem, 6.6vw, 5.1rem); }
  .service-hero-grid, .service-rentals .service-hero-grid, .service-installation .service-hero-grid, .service-displays .service-hero-grid, .service-support .service-hero-grid { grid-template-columns: 1fr; gap: 0; width: var(--shell); }
  .service-hero-copy, .service-installation .service-hero-copy { width: min(38%,410px); padding: 0; }
  .service-hero h1 { font-size: clamp(3rem,5.4vw,4.2rem); }
  .service-application-figure, .service-application-installation { min-height: 570px; }
  .service-application-rentals { margin-right: 0; }
  .service-application-displays { margin-block: 28px; }
  .package-row { grid-template-columns: 1fr 1fr; padding-block: 30px; }.package-row > a { justify-self: start; }
  .compact-package-grid { grid-template-columns: repeat(2,1fr); }
  .contact-method-grid { grid-template-columns: repeat(2,1fr); }
  .projects-intro-grid, .about-intro-grid, .contact-intro-grid { grid-template-columns: minmax(0,1fr) 320px; gap: 54px; }
  .rental-faq-grid { gap: 65px; }
}
@media (max-width: 800px) {
  :root { --shell: calc(100% - 36px); --header-height: 72px; --section-space: 82px; }
  h1 { font-size: clamp(2.75rem, 12vw, 4.7rem); }.location-line { font-size: .65rem; }
  .brand .brand-emblem { width: 58px; height: 39px; }.brand-wordmark strong { font-size: .8rem; }.brand-wordmark small { font-size: .43rem; letter-spacing: .09em; }.language-link { font-size: .7rem; }.header-actions { gap: 12px; }
  .home-hero { min-height: calc(100svh - var(--header-height)); }.hero-grid { min-height: calc(100svh - var(--header-height)); grid-template-columns: 1fr; align-content: center; gap: 0; padding-block: 72px 58px; }.hero-copy { max-width: none; }.hero-copy h1 { max-width: 11ch; margin-bottom: 26px; font-size: clamp(3.05rem, 13.2vw, 4.35rem); line-height: .9; }.hero-lede { max-width: 31rem; margin-bottom: 30px; font-size: 1rem; }.hero-service-stamp { display: none; }.home-hero-visual > img, .home-hero-visual > picture img { left: 0; width: 100%; object-fit: cover; object-position: 64% center; transform: none; }.hero-image-veil { background: linear-gradient(90deg, rgba(4,7,9,.94), rgba(4,7,9,.56) 78%, rgba(4,7,9,.22)), linear-gradient(180deg, rgba(4,7,9,.05), rgba(4,7,9,.9)); }.home-hero-visual figcaption { right: 18px; bottom: 14px; font-size: .56rem; }
  .hero-trust { grid-template-columns: 1fr; padding-bottom: 26px; }.hero-trust > div, .hero-trust > div + div { padding: 20px 0; border-right: 0; border-bottom: 1px solid var(--line-dark); }
  .editorial-intro, .home-capability-grid, .process-title, .package-header, .area-grid, .closing-grid, .service-hero-grid, .proof-grid, .workflow-grid, .deliverables-grid, .intro-grid, .inquiry-layout, .principles-grid, .footer-shell, .thanks-grid, .projects-intro-grid, .about-intro-grid, .contact-intro-grid, .legal-header, .rental-faq-grid { grid-template-columns: 1fr; gap: 45px; }
  .home-capability-grid { margin-bottom: 64px; }.home-capability-grid .editorial-intro h2 { max-width: 10ch; font-size: clamp(2.8rem,12vw,4.5rem); }.home-capability-media { aspect-ratio: 4 / 3; box-shadow: 14px 14px 0 rgba(10,16,13,.08); }
  .editorial-intro { margin-bottom: 50px; }.service-index-row { grid-template-columns: 42px 1fr 28px; gap: 15px; padding-block: 25px; }.service-index-row p { grid-column: 2 / -1; }.matrix-axis { display: none; }.package-row { grid-template-columns: 1fr; gap: 20px; padding-block: 34px; }.package-measure { justify-content: space-between; }.package-row > a { justify-self: stretch; min-height: 48px; display: flex; align-items: center; justify-content: space-between; border-top: 1px solid var(--line-dark); padding-top: 16px; }
  .process-track { grid-template-columns: 1fr; }.process-track li, .process-track li + li { min-height: 0; display: grid; grid-template-columns: 50px 1fr; gap: 15px; padding: 30px 0; border-left: 0; }.process-track p { max-width: 32rem; }.evidence-grid { grid-template-columns: 1fr; min-height: 0; }.evidence-display { min-height: 330px; border-right: 0; border-bottom: 1px solid var(--line-dark); }.evidence-copy { padding: 72px 0 82px; }.coverage-stage { min-height: 350px; padding: 42px 0; border-top: 1px solid var(--line-dark); border-left: 0; }.closing-grid { align-items: start; }
  .service-hero { min-height: auto; }
  .service-hero-grid, .service-rentals .service-hero-grid, .service-installation .service-hero-grid, .service-displays .service-hero-grid, .service-support .service-hero-grid { grid-template-columns: 1fr; gap: 46px; width: var(--shell); padding-block: 78px 64px; }
  .service-installation .service-hero-copy { width: auto; padding: 0; }
  .service-hero h1, .locale-zh .service-hero h1 { max-width: 10ch; margin-bottom: 24px; font-size: clamp(2.75rem,11.5vw,3.8rem); line-height: .97; }
  .service-hero .hero-lede { max-width: 34rem; font-size: .98rem; }
  .service-operating-line { margin-top: 30px; }
  .service-brief { max-width: none; margin-top: 26px; }
  .proof-list article { grid-template-columns: 45px 1fr; }.proof-list article p { grid-column: 2; }.principle-list article { grid-template-columns: 1fr; }
  .service-application-figure, .service-application-installation, .service-application-rentals, .service-application-displays, .service-application-support { min-height: 0; margin: 0; border: 1px solid rgba(255,255,255,.2); }
  .service-image-plane { position: relative; inset: auto; display: block; width: 100%; aspect-ratio: 4 / 3; }
  .service-image-plane img { position: absolute; top: 0; left: 0; display: block; width: 100%; height: 100%; object-fit: cover; }
  .service-application-figure figcaption, .service-application-rentals figcaption, .service-application-installation figcaption, .service-application-displays figcaption, .service-application-support figcaption { position: relative; inset: auto; grid-template-columns: 1fr; width: 100%; padding: 18px 20px; border: 0; border-top: 1px solid rgba(255,255,255,.24); }
  .service-visual-data { top: 16px; right: 16px; bottom: auto; left: auto; max-width: calc(100% - 32px); align-items: end; justify-items: end; text-align: right; }
  .service-visual-data ul { gap: 10px; flex-wrap: wrap; justify-content: flex-end; }.service-visual-data li + li::before { margin-right: 10px; }
  .service-light-pass { display: none; }
  .compact-package-grid { grid-template-columns: 1fr; }.compact-package-grid article { min-height: 250px; }.project-story, .project-story-reverse { grid-template-columns: 1fr; min-height: 0; }.project-story-reverse figure { order: 0; }.project-story figure { aspect-ratio: var(--media-ratio); }.project-media-portrait .project-video { padding: 20px; }.project-copy { padding: 65px 24px; }
  .office-evidence-grid, .office-visit-grid { grid-template-columns: 1fr; min-height: 0; }.office-evidence-media { aspect-ratio: 4 / 3; }.office-evidence-copy { padding: 65px 24px; }.office-building-media { min-height: 0; aspect-ratio: 4 / 5; }.office-visit-copy, .office-location-ledger { padding: 65px 24px; }
  .page-intro { min-height: auto; padding-top: 78px; }.page-intro::after { right: -22vw; bottom: -12%; width: 86vw; }.page-intro-copy h1 { font-size: clamp(3rem, 13.5vw, 4.7rem); }.projects-intro-grid, .about-intro-grid, .contact-intro-grid { padding-bottom: 64px; }.projects-intro-signal { min-height: 270px; }.page-intro-ledger { grid-template-columns: 1fr; }.page-intro-ledger span, .page-intro-ledger span + span { min-height: 72px; padding: 0; border-right: 0; border-bottom: 1px solid var(--line-dark); }
  .operating-base-card, .contact-brief-card { padding: 25px; box-shadow: 12px 12px 0 rgba(0,111,214,.08); }.operating-base-card > strong { margin-block: 42px 34px; }.rental-faq-heading { position: static; }.rental-faq-list summary { grid-template-columns: 42px 1fr 22px; gap: 12px; }.rental-faq-list details p { margin: -8px 22px 30px 54px; }
  .contact-method-grid { grid-template-columns: 1fr; }.contact-method-grid > * { min-height: 130px; }.inquiry-layout aside { position: static; }.form-grid { grid-template-columns: 1fr; }.legal-header { margin-bottom: 72px; }.legal-sections { margin-left: 0; }.legal-sections section { grid-template-columns: 1fr; gap: 10px; padding-left: 40px; }.legal-sections section::before { top: 50px; left: 0; }.footer-links { grid-template-columns: 1fr 1fr; }.footer-base { align-items: flex-start; gap: 20px; flex-direction: column; }.success-receipt { min-height: 430px; }.not-found-signal { right: -35vw; width: 112vw; opacity: .72; }.not-found h1 { max-width: 9ch; }
}
@media (max-width: 480px) {
  :root { --shell: calc(100% - 28px); }.brand { gap: 8px; }.brand .brand-emblem { width: 52px; height: 35px; }.brand-wordmark small { display: none; }.hero-actions, .closing-actions, .not-found-copy > div { align-items: stretch; flex-direction: column; }.hero-actions .button, .closing-actions .button, .not-found-copy .button { width: 100%; }.hero-actions .text-link { align-self: flex-start; }
  .service-index-row { grid-template-columns: 32px 1fr 20px; }.footer-links { grid-template-columns: 1fr; }.evidence-display { min-height: 280px; }.coverage-stage strong { font-size: 3.25rem; }.inquiry-form .button { width: 100%; }
  .projects-intro-signal { min-height: 230px; }.projects-intro-signal strong { font-size: 9.2rem; }.success-receipt { min-height: 350px; padding: 24px; }.receipt-route { gap: 8px; }.reference-box i { position: static; display: block; margin-top: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .success-signal i, .not-found-signal span { animation: none !important; }
  .button, .button:hover, .button:active, .service-index-row, .service-index-row:hover, .service-index-row:active { transform: none !important; }
  .button, .service-index-row { transition-property: color, background-color, border-color; }
  [data-reveal], [data-hero-item], [data-page-intro-item], [data-hero-trust], [data-image-reveal], [data-hero-brand] { opacity: 1 !important; visibility: visible !important; transform: none !important; clip-path: none !important; }
  .hero-aperture, .service-light-pass { display: none !important; }
  .project-video { transform: none !important; }
}
