:root {
  --paper:#f2efe7; --paper-deep:#ddd6c9; --ink:#181817; --red:#bc3028;
  --green:#263b33; --blue:#a8bdc5; --line:#bbb5a8; --muted:#6f6c65; --white:#fffdf7;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:88px; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:"Noto Serif SC","Songti SC",SimSun,serif; overflow-x:hidden; }
a { color:inherit; text-decoration:none; }
button,input,textarea { font:inherit; }
button { color:inherit; }
img { display:block; width:100%; }
[hidden] { display:none !important; }
.site-header { --brand-ground:rgba(24,24,23,.82); position:fixed; inset:0 0 auto; z-index:40; height:84px; padding:0 4vw; display:flex; align-items:center; justify-content:space-between; color:var(--white); border-bottom:1px solid rgba(255,255,255,.28); transition:background .25s,color .25s,height .25s; }
.site-header.scrolled { --brand-ground:var(--paper); height:70px; color:var(--ink); background:rgba(242,239,231,.96); border-bottom-color:var(--line); }
.brand { display:inline-flex; align-items:center; gap:11px; }
.brand-symbol { width:44px; height:44px; flex:0 0 44px; overflow:visible; }
.brand-accent { fill:none; stroke:var(--red); }
.brand-node { fill:var(--brand-ground,var(--paper)); stroke:currentColor; stroke-width:2; }
.brand-name { display:flex; flex-direction:column; white-space:nowrap; }
.brand-zh { font:400 22px/.95 FangSong,STFangsong,"Noto Serif SC",SimSun,serif; letter-spacing:2px; }
.brand-meta { margin-top:5px; font:6px/1 Arial,sans-serif; letter-spacing:1.35px; opacity:.7; }
.desktop-nav { display:flex; gap:24px; font:12px Arial,sans-serif; }
.desktop-nav a { position:relative; padding:8px 0; }
.desktop-nav a:after { content:""; position:absolute; left:0; right:100%; bottom:0; height:2px; background:var(--red); transition:right .25s; }
.desktop-nav a:hover:after,.desktop-nav a.active:after { right:0; }
.header-tools { display:flex; align-items:center; gap:18px; }
.edition { font:9px Arial,sans-serif; letter-spacing:1.3px; opacity:.72; }
.language-switch { min-width:31px; padding:7px 6px; border:1px solid currentColor; text-align:center; font:9px Arial,sans-serif; }
.language-switch:hover { color:var(--white); background:var(--red); border-color:var(--red); }
.header-contact { display:inline-flex; align-items:center; gap:7px; padding-left:18px; border-left:1px solid currentColor; font:11px Arial,sans-serif; }
.header-contact svg { width:15px; }
.icon-button { width:40px; height:40px; padding:0; border:0; background:transparent; display:grid; place-items:center; cursor:pointer; }
.icon-button svg { width:19px; }
.menu-button { display:none; }
.mobile-menu { display:none; }

.hero { position:relative; height:min(880px,96vh); min-height:720px; color:var(--white); overflow:hidden; }
.hero-image,.hero-shade { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.hero-image { object-position:center 48%; filter:saturate(.6) contrast(1.06); transform:scale(1.01); }
.hero-shade { background:linear-gradient(90deg,rgba(8,13,11,.78) 0%,rgba(8,13,11,.38) 50%,rgba(8,13,11,.16) 80%),linear-gradient(0deg,rgba(0,0,0,.5),transparent 60%); }
.hero-topline { position:absolute; top:118px; left:4vw; right:4vw; display:flex; justify-content:space-between; font:9px Arial,sans-serif; letter-spacing:1.8px; opacity:.72; }
.hero-content { position:absolute; top:150px; left:8.5vw; width:min(920px,68vw); }
.eyebrow { margin:0; color:var(--muted); font:9px Arial,sans-serif; letter-spacing:2.2px; }
.eyebrow.light { color:var(--white); opacity:.68; }
.hero h1 { margin:20px 0 28px; font-size:clamp(66px,7.4vw,112px); line-height:.98; letter-spacing:0; }
.hero-lead { width:min(620px,100%); margin:0; color:rgba(255,253,247,.9); font-size:15px; line-height:2; }
.hero-actions { display:flex; align-items:center; gap:28px; margin-top:32px; }
.primary-button { min-height:46px; display:inline-flex; align-items:center; justify-content:center; gap:11px; padding:0 19px; border:1px solid var(--red); background:var(--red); color:var(--white); cursor:pointer; font-size:12px; transition:background .2s,color .2s,border-color .2s; }
.primary-button:hover { color:var(--ink); background:var(--white); border-color:var(--white); }
.primary-button svg { width:16px; }
.quiet-link { display:inline-flex; align-items:center; gap:9px; padding-bottom:6px; border-bottom:1px solid currentColor; font:11px Arial,sans-serif; }
.quiet-link svg { width:14px; }
.voice-fragment { position:absolute; right:4vw; bottom:13%; width:min(430px,36vw); display:grid; grid-template-columns:52px 1fr; gap:15px; align-items:center; padding-top:18px; border-top:1px solid rgba(255,255,255,.55); }
.voice-toggle { width:46px; height:46px; border:1px solid currentColor; border-radius:50%; background:transparent; color:var(--white); cursor:pointer; display:grid; place-items:center; }
.voice-toggle svg { width:16px; }
.voice-copy span { display:block; margin-bottom:8px; opacity:.6; font:8px Arial,sans-serif; letter-spacing:1.2px; }
.voice-copy p { margin:0; min-height:23px; font-size:13px; }
.waveform { grid-column:1/-1; height:30px; display:flex; align-items:center; gap:5px; overflow:hidden; }
.waveform i { width:2px; height:7px; background:rgba(255,255,255,.7); transform-origin:center; }
.waveform.playing i { animation:wave .72s ease-in-out infinite alternate; }
.waveform i:nth-child(2n) { height:18px; animation-delay:-.3s; }
.waveform i:nth-child(3n) { height:12px; animation-delay:-.5s; }
.waveform i:nth-child(4n) { height:24px; animation-delay:-.15s; }
@keyframes wave { to { transform:scaleY(1.8); } }
.hero-index { position:absolute; right:4vw; bottom:5%; margin:0; text-align:right; opacity:.65; font:8px/1.6 Arial,sans-serif; letter-spacing:1px; }

.reveal { opacity:0; transform:translateY(24px); transition:opacity .75s ease,transform .75s ease; }
.reveal.visible { opacity:1; transform:none; }
.section-no { color:var(--red); font:10px Arial,sans-serif; }
.intro { padding:125px 8vw 105px; display:grid; grid-template-columns:.65fr 2.35fr; gap:5vw; border-bottom:1px solid var(--line); }
.intro-aside { display:flex; align-items:flex-start; gap:18px; }
.intro-statement p { margin:0; max-width:990px; font-size:clamp(42px,5.2vw,76px); line-height:1.32; }
.intro-statement span { color:var(--red); }
.intro-foot { grid-column:2; margin-top:68px; display:grid; grid-template-columns:1fr 1.6fr; gap:6vw; align-items:end; }
.intro-foot>p { max-width:330px; margin:0; color:var(--muted); font-size:13px; line-height:2; }
.intro-metrics { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--ink); }
.intro-metrics div { padding:18px 12px 0 0; display:flex; flex-direction:column; gap:8px; }
.intro-metrics div+div { border-left:1px solid var(--line); padding-left:20px; }
.intro-metrics strong { font:34px Arial,sans-serif; }
.intro-metrics span { color:var(--muted); font-size:10px; }

.journey,.cases,.memory-layers { padding:100px 4vw 120px; }
.section-head { display:flex; justify-content:space-between; align-items:end; margin-bottom:50px; padding-bottom:22px; border-bottom:1px solid var(--ink); }
.section-head>div { display:flex; align-items:baseline; gap:20px; }
.section-head h2 { margin:0; font-size:30px; text-wrap:balance; }
.section-head>p { margin:0; text-align:right; color:var(--muted); font:8px/1.6 Arial,sans-serif; letter-spacing:1px; }
.journey-layout { display:grid; grid-template-columns:.72fr 1.32fr .78fr; gap:4.5vw; min-height:560px; align-items:stretch; }
.journey-tabs { border-top:1px solid var(--line); }
.journey-tab { width:100%; min-height:86px; padding:0; border:0; border-bottom:1px solid var(--line); background:transparent; display:grid; grid-template-columns:43px 1fr; align-items:center; text-align:left; cursor:pointer; color:var(--muted); font-size:14px; transition:padding .2s,color .2s; }
.journey-tab span { color:var(--red); font:9px Arial,sans-serif; }
.journey-tab:hover,.journey-tab.active { color:var(--ink); padding-left:10px; }
.journey-tab.active { font-weight:700; }
.journey-stage { position:relative; padding:5px 0 74px; }
.journey-kicker { margin:0 0 55px; color:var(--red); font:9px Arial,sans-serif; letter-spacing:1.5px; }
.journey-stage h3 { margin:0 0 30px; font-size:clamp(45px,4.8vw,72px); line-height:1.15; }
.journey-stage>p:not(.journey-kicker) { max-width:550px; margin:0; color:var(--muted); font-size:14px; line-height:2; }
.journey-meta { margin-top:43px; padding-top:19px; border-top:1px solid var(--line); display:flex; gap:70px; }
.journey-meta div { display:flex; flex-direction:column; gap:8px; }
.journey-meta span { color:var(--muted); font-size:9px; }
.journey-meta strong { font-size:14px; }
.journey-controls { position:absolute; bottom:0; left:0; display:flex; align-items:center; gap:13px; }
.journey-controls button { width:42px; height:42px; border:1px solid var(--ink); background:transparent; display:grid; place-items:center; cursor:pointer; }
.journey-controls button:hover { color:var(--white); background:var(--ink); }
.journey-controls svg { width:16px; }
.journey-controls span { min-width:48px; text-align:center; color:var(--muted); font:9px Arial,sans-serif; }
.artifact { position:relative; z-index:0; min-height:500px; padding:32px 28px 26px; background:#f7f2e8; color:var(--ink); display:flex; flex-direction:column; transform:rotate(1.2deg); border:1px solid #cfc5b5; box-shadow:14px 17px 0 #c6d0c8; transition:transform .35s,box-shadow .35s; }
.artifact:before,.artifact:after { content:""; position:absolute; z-index:-1; pointer-events:none; border:1px solid #cfc5b5; }
.artifact:before { inset:10px -13px -10px 11px; background:#ece4d5; transform:rotate(2.3deg); box-shadow:8px 9px 0 #d7d3c9; }
.artifact:after { inset:5px -7px -5px 6px; background:#fbf8f1; transform:rotate(-1.2deg); }
.artifact:hover { transform:rotate(0); box-shadow:17px 19px 0 #c6d0c8; }
.artifact-top { display:flex; justify-content:space-between; padding-bottom:16px; border-bottom:1px solid #bdb4a5; color:var(--artifact-accent,var(--green)); font:8px Arial,sans-serif; letter-spacing:1px; }
.artifact-axis { display:grid; grid-template-columns:repeat(4,1fr); margin:50px 0 0; color:var(--muted); font:8px Arial,sans-serif; }
.artifact-axis span { position:relative; border-bottom:1px solid #cbc2b4; padding-bottom:10px; }
.artifact-axis span:after { content:""; position:absolute; bottom:-4px; left:0; width:7px; height:7px; border-radius:50%; background:var(--artifact-accent,var(--red)); }
.artifact-lines { display:flex; flex-direction:column; gap:12px; margin:50px 0 40px; }
.artifact-lines i { display:block; width:100%; height:1px; background:#d5cfc3; }
.artifact-lines i:nth-child(2) { width:78%; }
.artifact-lines i:nth-child(3) { width:88%; }
.artifact-lines i:nth-child(4) { width:64%; }
.artifact blockquote { margin:auto 0 22px; font-size:24px; line-height:1.6; }
.artifact>p { margin:0; color:var(--muted); font:8px Arial,sans-serif; letter-spacing:1px; }

.memory-layers { background:var(--white); border-top:1px solid var(--line); }
.layers-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line); }
.layer-card { min-height:230px; padding:25px 24px 27px; background:var(--white); display:flex; flex-direction:column; }
.layer-card span { color:var(--red); font:9px Arial,sans-serif; letter-spacing:1.1px; }
.layer-card h3 { margin:27px 0 11px; font-size:27px; }
.layer-card p { max-width:270px; margin:0; color:var(--muted); font-size:13px; line-height:1.8; }
.layer-card strong { margin-top:auto; padding-top:24px; font-size:11px; font-weight:500; }
.layer-featured { background:var(--green); color:var(--white); }
.layer-featured p { color:#c9d1cb; }
.layer-featured strong { color:#e9eee9; }

.life-map { padding:120px 8vw 135px; display:grid; grid-template-columns:.75fr 1.6fr; gap:7vw; background:var(--paper-deep); }
.life-map-copy { align-self:start; position:sticky; top:120px; }
.life-map-copy h2 { margin:25px 0 30px; font-size:clamp(42px,3.9vw,56px); line-height:1.14; }
.life-map-copy>p:last-child { max-width:340px; margin:0; color:var(--muted); font-size:14px; line-height:2; }
.life-map-board { position:relative; min-height:690px; overflow:hidden; background:#ebe5da; border:1px solid #c7c0b4; box-shadow:14px 16px 0 rgba(38,59,51,.08), inset 19px 0 28px -27px rgba(38,59,51,.58), inset -8px 0 16px -15px rgba(38,59,51,.2); isolation:isolate; }
.map-page { position:absolute; inset:0; z-index:0; overflow:hidden; background:#eee7db; }
.map-page:before { content:""; position:absolute; inset:18px; border:1px solid rgba(38,59,51,.18); box-shadow:inset 10px 0 16px -18px rgba(38,59,51,.6), inset -9px 0 14px -16px rgba(38,59,51,.28); }
.map-page:after { content:""; position:absolute; left:10%; top:18px; bottom:18px; width:1px; background:rgba(157,57,48,.3); box-shadow:2px 0 0 rgba(157,57,48,.07); }
.map-page-meta,.map-page-number { position:absolute; z-index:1; color:rgba(38,59,51,.55); font:8px Arial,sans-serif; letter-spacing:1.4px; }
.map-page-meta { left:14%; top:34px; }
.map-page-number { right:8%; top:34px; }
.map-page-fold { position:absolute; top:0; right:7%; width:1px; height:100%; background:rgba(38,59,51,.08); box-shadow:8px 0 14px rgba(38,59,51,.08); }
.map-connections { position:absolute; inset:0; z-index:1; width:100%; height:100%; overflow:visible; pointer-events:none; }
.map-link { fill:none; stroke:rgba(38,59,51,.4); stroke-width:1.35; vector-effect:non-scaling-stroke; stroke-linecap:round; stroke-dasharray:1 0; transition:stroke .25s,stroke-width .25s,opacity .25s; }
.map-link:nth-child(even) { stroke:rgba(157,57,48,.34); stroke-dasharray:2 3; }
.map-link.active { stroke:var(--red); stroke-width:2.4; opacity:1; }
.map-link.dimmed { opacity:.2; }
.map-point { position:absolute; z-index:2; width:24px; height:24px; padding:0; border:6px solid #eee7db; border-radius:50%; background:var(--green); box-shadow:0 0 0 1px var(--green), 0 3px 8px rgba(38,59,51,.14); cursor:pointer; }
.map-point:after { content:""; position:absolute; inset:-10px; border-radius:50%; border:1px solid transparent; transition:.2s; }
.map-point:hover:after,.map-point.active:after { inset:-15px; border-color:var(--red); }
.map-point.active { box-shadow:0 0 0 1px var(--red), 0 0 0 5px rgba(157,57,48,.12), 0 3px 8px rgba(38,59,51,.14); }
.map-point:focus-visible { outline:2px solid var(--red); outline-offset:8px; }
.map-point span,.map-point b { position:absolute; left:20px; white-space:nowrap; font-style:normal; font-weight:normal; text-align:left; }
.map-point span { top:-14px; color:var(--red); font:9px Arial,sans-serif; }
.map-point b { top:3px; font-size:12px; }
.point-1 { left:11%; top:39%; }.point-2 { left:30%; top:53%; }.point-3 { left:51%; top:32%; }.point-4 { left:70%; top:43%; }.point-5 { left:86%; top:24%; }
.map-story { position:absolute; left:9%; right:9%; bottom:7%; z-index:3; padding:24px 0 0 27%; border-top:1px solid var(--ink); }
.map-story span { color:var(--red); font:9px Arial,sans-serif; letter-spacing:1px; }
.map-story h3 { margin:10px 0 11px; font-size:29px; }
.map-story p { margin:0 0 14px; max-width:560px; color:var(--muted); font-size:13px; line-height:1.85; }
.map-story small { color:var(--muted); font:8px Arial,sans-serif; letter-spacing:1px; }

.interview-essay { padding:110px 8vw 130px; display:grid; grid-template-columns:1.1fr .9fr; gap:10vw; align-items:center; }
.essay-image { position:relative; padding-left:5vw; }
.essay-image:before { content:"INTERVIEW / 07"; position:absolute; left:0; top:0; writing-mode:vertical-rl; color:var(--muted); font:8px Arial,sans-serif; letter-spacing:1.5px; }
.essay-image img { aspect-ratio:5/4; object-fit:cover; filter:saturate(.65); }
.essay-image span { display:block; margin-top:12px; color:var(--muted); font-size:10px; }
.essay-copy { padding-top:70px; }
.quote-mark { color:var(--red); font:110px/.6 Georgia,serif; }
.essay-copy blockquote { margin:34px 0 32px; font-size:clamp(38px,4.3vw,66px); line-height:1.36; }
.essay-copy>p { max-width:330px; color:var(--muted); font-size:13px; line-height:1.9; }

.ai-section { padding:115px 8vw 125px; display:grid; grid-template-columns:.78fr 1.35fr; gap:8vw; align-items:center; background:#202522; color:var(--white); }
.ai-heading h2 { margin:27px 0 29px; font-size:clamp(47px,5.2vw,79px); line-height:1.16; }
.ai-heading>p:not(.eyebrow) { max-width:390px; margin:0; color:#b8bdb7; font-size:14px; line-height:2; }
.ai-principles { display:flex; gap:10px 20px; flex-wrap:wrap; margin-top:36px; }
.ai-principles span { display:flex; align-items:center; gap:7px; color:#cbd0ca; font:9px Arial,sans-serif; }
.ai-principles svg { width:14px; color:var(--red); }
.ai-console { min-width:0; background:#ece9e0; color:var(--ink); box-shadow:16px 18px 0 var(--red); }
.console-toolbar { height:64px; padding:0 20px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); }
.mode-tabs { height:100%; display:flex; }
.mode-tab { min-width:70px; padding:0 11px; border:0; border-bottom:2px solid transparent; background:transparent; display:flex; align-items:center; justify-content:center; gap:6px; cursor:pointer; color:var(--muted); font-size:10px; }
.mode-tab svg { width:15px; }
.mode-tab.active { color:var(--ink); border-bottom-color:var(--red); }
.live-status { font:8px Arial,sans-serif; letter-spacing:1px; color:var(--muted); }
.live-status i { display:inline-block; width:6px; height:6px; margin-right:5px; border-radius:50%; background:#54a05a; }
.console-main { display:grid; grid-template-columns:.7fr 1.3fr; min-height:440px; }
.archive-visual { position:relative; overflow:hidden; background:#c4cbc6; }
.archive-visual img { width:100%; height:100%; object-fit:cover; object-position:center; filter:saturate(.55); }
.archive-visual:after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(0,0,0,.55),transparent 45%); }
.digital-scan { position:absolute; z-index:2; left:10%; right:10%; top:15%; aspect-ratio:1; border:1px solid rgba(255,255,255,.55); }
.digital-scan:before,.digital-scan:after { content:""; position:absolute; background:var(--red); }
.digital-scan:before { left:-1px; right:-1px; top:50%; height:1px; opacity:.7; }
.digital-scan:after { top:-1px; bottom:-1px; left:50%; width:1px; opacity:.4; }
.archive-visual>span { position:absolute; z-index:3; left:18px; bottom:18px; color:var(--white); font:9px Arial,sans-serif; letter-spacing:1px; }
.conversation { min-width:0; padding:35px 30px; display:flex; flex-direction:column; }
.conversation .question,.conversation .answer { margin:0; padding:13px 15px; font-size:13px; line-height:1.8; }
.conversation .question { align-self:flex-end; max-width:82%; background:#d7d4cc; }
.conversation .answer { align-self:flex-start; max-width:92%; margin-top:18px; color:var(--white); background:var(--red); }
.answer-source { display:block; margin-top:12px; color:var(--muted); font:10px/1.6 Arial,sans-serif; }
.prompt-row { display:flex; gap:7px; flex-wrap:wrap; margin-top:auto; padding-top:24px; }
.prompt-row button { padding:7px 10px; border:1px solid var(--line); background:transparent; color:var(--muted); cursor:pointer; font-size:9px; }
.prompt-row button:hover { color:var(--red); border-color:var(--red); }
.console-input { min-height:72px; padding:12px 20px; display:flex; align-items:center; justify-content:space-between; gap:20px; border-top:1px solid var(--line); }
.console-input>span { color:var(--muted); font-size:10px; }
#talkButton { min-width:118px; height:42px; padding:0 14px; border:1px solid var(--ink); background:transparent; display:flex; align-items:center; justify-content:center; gap:8px; cursor:pointer; font-size:10px; }
#talkButton svg { width:15px; }
#talkButton.listening { color:var(--white); background:var(--red); border-color:var(--red); animation:pulse 1s infinite alternate; }
@keyframes pulse { to { box-shadow:0 0 0 6px rgba(188,48,40,.16); } }

.cases { background:var(--white); }
.case-explorer { display:grid; grid-template-columns:.72fr 1.8fr; gap:4vw; }
.case-disclaimer { max-width:760px; margin:-24px 0 43px; color:var(--muted); font-size:12px; line-height:1.8; }
.case-tabs { border-top:1px solid var(--ink); }
.case-tab { width:100%; padding:24px 0; border:0; border-bottom:1px solid var(--line); background:transparent; display:grid; grid-template-columns:55px 1fr; text-align:left; cursor:pointer; transition:padding .2s; }
.case-tab:hover,.case-tab.active { padding-left:13px; }
.case-tab span { grid-row:1/3; color:var(--red); font:9px Arial,sans-serif; padding-top:5px; }
.case-tab strong { font-size:22px; }
.case-tab small { margin-top:7px; color:var(--muted); font:9px Arial,sans-serif; }
.case-stage { position:relative; min-height:610px; overflow:hidden; background:var(--ink); color:var(--white); }
.case-stage>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:saturate(.65); transition:opacity .25s,transform .45s; }
.case-stage:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(0,0,0,.75),rgba(0,0,0,.15)); }
.case-overlay { position:absolute; z-index:2; left:7%; bottom:9%; width:min(580px,70%); }
.case-overlay>span { color:#d7d5d0; font:9px Arial,sans-serif; letter-spacing:1px; }
.case-overlay h3 { margin:19px 0 22px; font-size:clamp(36px,3.5vw,50px); line-height:1.25; }
.case-overlay p { max-width:480px; margin:0; color:#d3d1cb; font-size:13px; line-height:1.9; }
.case-products { display:flex; flex-wrap:wrap; gap:8px; margin-top:27px; }
.case-products span { padding:7px 10px; border:1px solid rgba(255,255,255,.45); font:9px Arial,sans-serif; }

.trust { padding:110px 8vw; display:grid; grid-template-columns:.55fr 1.35fr 1fr; gap:6vw; align-items:center; border-bottom:1px solid var(--line); }
.trust-mark { color:var(--red); font:140px/1 Arial,sans-serif; transform:rotate(-15deg); }
.trust h2 { margin:23px 0 0; font-size:clamp(43px,4.7vw,70px); line-height:1.2; }
.trust-points { border-top:1px solid var(--line); }
.trust-points p { display:grid; grid-template-columns:28px 1fr; gap:10px; margin:0; padding:17px 0; border-bottom:1px solid var(--line); font-size:12px; line-height:1.8; }
.trust-points span { color:var(--red); font:9px Arial,sans-serif; padding-top:4px; }

.contact { padding:115px 8vw 125px; display:grid; grid-template-columns:.9fr 1.1fr; gap:11vw; align-items:center; background:#d5cec1; }
.contact-copy h2 { margin:25px 0 28px; font-size:clamp(44px,4.2vw,60px); line-height:1.14; }
.contact-copy>p:not(.eyebrow) { max-width:380px; color:var(--muted); font-size:13px; line-height:2; }
.contact-index { display:flex; gap:14px 22px; flex-wrap:wrap; margin-top:36px; color:var(--muted); font:9px Arial,sans-serif; }
.contact-index span { padding-left:12px; border-left:2px solid var(--red); }
.consult-wizard { min-height:520px; padding:30px 34px; background:var(--paper); display:flex; flex-direction:column; }
.wizard-head { display:flex; justify-content:space-between; align-items:center; padding-bottom:19px; border-bottom:1px solid var(--line); }
.wizard-head>span { color:var(--muted); font:9px Arial,sans-serif; letter-spacing:1px; }
.wizard-progress { display:flex; gap:5px; }
.wizard-progress i { width:28px; height:2px; background:#c7c2b7; }
.wizard-progress i.active { background:var(--red); }
.form-step { flex:1; padding:39px 0 25px; }
.form-step h3,.wizard-success h3 { margin:0 0 28px; font-size:29px; }
.form-hint { margin:-17px 0 24px; color:var(--muted); font-size:11px; }
.option-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.option-grid label { cursor:pointer; }
.option-grid input { position:absolute; opacity:0; pointer-events:none; }
.option-grid span { min-height:88px; padding:15px; border:1px solid var(--line); display:flex; flex-direction:column; justify-content:space-between; font-size:13px; transition:.2s; }
.option-grid svg { width:20px; color:var(--muted); }
.option-grid input:checked+span { border-color:var(--red); color:var(--red); box-shadow:inset 0 -3px var(--red); }
.option-grid input:checked+span svg { color:var(--red); }
.field-row { display:flex; flex-direction:column; gap:8px; margin-bottom:22px; }
.field-row label { color:var(--muted); font-size:10px; }
.field-row input,.field-row textarea { padding:10px 0; border:0; border-bottom:1px solid var(--ink); border-radius:0; outline:0; background:transparent; resize:vertical; font-size:14px; }
.wizard-actions { min-height:48px; display:flex; justify-content:space-between; align-items:center; margin-top:auto; }
.back-button { min-height:44px; border:0; background:transparent; display:flex; align-items:center; gap:8px; cursor:pointer; color:var(--muted); font-size:11px; }
.back-button svg { width:15px; }
.dark-button { margin-left:auto; background:var(--ink); border-color:var(--ink); }
.dark-button:hover { color:var(--white); background:var(--red); border-color:var(--red); }
.wizard-success { flex:1; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:28px 0 8px; }
.wizard-success>.success-mark { width:44px; height:44px; padding:11px; margin-bottom:21px; border-radius:50%; color:var(--white); background:var(--red); }
.wizard-success h3 { margin-bottom:9px; }
.wizard-success>p { margin:0; color:var(--muted); font-size:12px; line-height:1.7; }
.summary-list { width:100%; margin:25px 0 22px; border-top:1px solid var(--line); }
.summary-list>div { display:grid; grid-template-columns:82px 1fr; gap:14px; padding:10px 0; border-bottom:1px solid var(--line); }
.summary-list dt { color:var(--muted); font-size:10px; }
.summary-list dd { min-width:0; margin:0; overflow-wrap:anywhere; font-size:12px; line-height:1.55; }
.summary-actions { display:flex; align-items:center; gap:18px; }
.summary-actions .dark-button { margin:0; }
.copy-feedback { min-height:18px; margin-top:8px; color:var(--red); font-size:10px; }
.consent-row { display:flex; align-items:flex-start; gap:9px; margin-top:10px; color:var(--muted); font-size:11px; line-height:1.75; }
.consent-row input { flex:0 0 auto; width:15px; height:15px; margin-top:2px; accent-color:var(--red); }
.consent-row a { color:var(--red); text-decoration:underline; text-underline-offset:3px; }

footer { --brand-ground:var(--ink); padding:58px 4vw 25px; display:grid; grid-template-columns:.5fr 1.4fr 1fr; gap:4vw; align-items:center; background:var(--ink); color:var(--white); }
.footer-brand .brand-symbol { width:64px; height:64px; flex-basis:64px; }
.footer-brand .brand-zh { font-size:31px; letter-spacing:4px; }
.footer-brand .brand-meta { margin-top:8px; font-size:7px; letter-spacing:1.8px; }
footer>p { font-size:14px; }
.privacy-summary { grid-column:1/-1; max-width:800px; margin:4px 0 0; color:#b8bbb4; font-size:11px; line-height:1.8; }
.footer-links { display:flex; justify-content:flex-end; gap:24px; font:11px Arial,sans-serif; }
.copyright { grid-column:1/-1; margin:30px 0 0; padding-top:20px; border-top:1px solid #454743; color:#92968f; font:8px Arial,sans-serif; letter-spacing:1px; }

html[lang="en"] body { font-family:Georgia,"Times New Roman",serif; }
html[lang="en"] .brand-zh { font-family:Georgia,"Times New Roman",serif; font-size:14px; line-height:.88; letter-spacing:1.5px; }
html[lang="en"] .brand-meta { margin-top:6px; font-size:5.2px; letter-spacing:1px; }
html[lang="en"] .footer-brand .brand-zh { font-size:22px; line-height:.9; letter-spacing:2.2px; }
html[lang="en"] .footer-brand .brand-meta { margin-top:8px; font-size:7px; letter-spacing:1.4px; }
html[lang="en"] .hero-content { width:min(980px,74vw); }
html[lang="en"] .hero h1 { max-width:940px; font-size:clamp(62px,6.5vw,98px); line-height:1; }
html[lang="en"] .hero-lead,html[lang="en"] .intro-foot>p,html[lang="en"] .journey-stage>p:not(.journey-kicker),html[lang="en"] .life-map-copy>p:last-child,html[lang="en"] .ai-heading>p:not(.eyebrow),html[lang="en"] .case-disclaimer,html[lang="en"] .case-overlay p,html[lang="en"] .contact-copy>p { font-family:Arial,sans-serif; }
html[lang="en"] .intro-statement p { font-size:clamp(42px,4.7vw,70px); line-height:1.18; }
html[lang="en"] .journey-stage h3 { font-size:clamp(42px,4.2vw,64px); }
html[lang="en"] .life-map-copy h2 { font-size:clamp(40px,3.5vw,52px); }
html[lang="en"] .map-point b { max-width:110px; white-space:normal; line-height:1.25; }
html[lang="en"] .essay-copy blockquote { font-size:clamp(36px,3.8vw,58px); }
html[lang="en"] .ai-heading h2 { font-size:clamp(44px,4.8vw,70px); }
html[lang="en"] .contact-copy h2 { font-size:clamp(46px,5vw,74px); }

@media(max-width:1000px) {
  .desktop-nav { gap:18px; }
  .edition { display:none; }
  .voice-fragment { width:380px; }
  .journey-layout { grid-template-columns:.65fr 1.35fr; }
  .artifact { display:none; }
  .life-map { grid-template-columns:.7fr 1.4fr; padding-left:5vw; padding-right:5vw; }
  .ai-section { grid-template-columns:.7fr 1.3fr; padding-left:5vw; padding-right:5vw; }
  .console-main { grid-template-columns:.58fr 1.42fr; }
}
@media(max-width:760px) {
  .site-header { height:70px; padding:0 20px; }
  .desktop-nav,.header-contact,.edition,.language-switch { display:none; }
  .menu-button { display:grid; color:inherit; }
  .mobile-menu { position:fixed; z-index:35; inset:70px 0 auto; padding:16px 20px 22px; background:var(--paper); border-bottom:1px solid var(--ink); }
  .mobile-menu.open { display:block; }
  .mobile-menu nav { display:grid; grid-template-columns:repeat(3,1fr); }
  .mobile-menu a { padding:14px 0; text-align:center; font-size:13px; }
  .mobile-menu .mobile-language { grid-column:1/-1; margin-top:6px; padding-top:17px; border-top:1px solid var(--line); color:var(--red); font-family:Arial,sans-serif; }
  .hero { height:92vh; min-height:710px; }
  .hero-image { object-position:58% center; }
  .hero-topline { top:97px; left:20px; right:20px; }
  .hero-topline span:last-child { display:none; }
  .hero-content { top:auto; left:20px; right:20px; bottom:170px; width:auto; }
  .hero h1 { font-size:clamp(54px,15vw,76px); line-height:1.02; }
  .hero-lead { max-width:350px; font-size:13px; line-height:1.85; }
  .hero-actions { gap:18px; flex-wrap:wrap; }
  .voice-fragment { left:20px; right:20px; bottom:38px; width:auto; }
  .hero-index { display:none; }
  .intro { padding:75px 20px; display:block; }
  .intro-aside { margin-bottom:35px; }
  .intro-statement p { font-size:37px; }
  .intro-foot { margin-top:46px; display:block; }
  .intro-metrics { margin-top:38px; }
  .intro-metrics strong { font-size:26px; }
  .journey,.cases,.memory-layers { padding:75px 20px 85px; }
  .section-head { align-items:flex-start; margin-bottom:38px; }
  .section-head h2 { font-size:24px; line-height:1.4; }
  .section-head>p { display:none; }
  .journey-layout { display:block; min-height:0; }
  .journey-tabs { display:flex; overflow-x:auto; border-top:0; border-bottom:1px solid var(--line); scrollbar-width:none; }
  .journey-tabs::-webkit-scrollbar { display:none; }
  .journey-tab { min-width:134px; min-height:66px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:7px; border-bottom:3px solid transparent; font-size:11px; }
  .journey-tab.active { border-bottom-color:var(--red); padding-left:0; }
  .journey-stage { padding:45px 0 66px; }
  .journey-kicker { margin-bottom:28px; }
  .journey-stage h3 { font-size:45px; }
  .layers-grid { grid-template-columns:1fr; }
  .layer-card { min-height:205px; }
  .layer-card h3 { margin-top:22px; font-size:25px; }
  .journey-meta { gap:44px; }
  .life-map { padding:75px 20px 90px; display:block; }
  .life-map-copy { position:static; }
  .life-map-copy h2 { font-size:50px; }
  .life-map-board { min-height:610px; margin-top:45px; }
  .map-point span,.map-point b { left:14px; }
  .point-5 span,.point-5 b { left:auto; right:14px; text-align:right; }
  .point-1 { left:8%; top:25%; }.point-2 { left:28%; top:40%; }.point-3 { left:50%; top:25%; }.point-4 { left:68%; top:40%; }.point-5 { left:83%; top:17%; }
  .map-story { left:7%; right:7%; bottom:6%; padding:22px 0 0; }
  .map-story h3 { font-size:26px; }
  .interview-essay { padding:75px 20px 90px; display:block; }
  .essay-image { padding-left:26px; }
  .essay-copy { padding-top:65px; }
  .essay-copy blockquote { font-size:40px; }
  .ai-section { padding:80px 20px 90px; display:block; }
  .ai-heading h2 { font-size:48px; }
  .ai-console { margin-top:48px; box-shadow:8px 10px 0 var(--red); }
  .console-toolbar { height:58px; padding:0 12px; }
  .mode-tab { min-width:50px; }
  .mode-tab span { display:none; }
  .console-main { display:block; }
  .archive-visual { height:260px; }
  .conversation { min-height:330px; padding:26px 18px; }
  .console-input { align-items:flex-start; flex-direction:column; }
  #talkButton { width:100%; }
  .case-explorer { display:block; }
  .case-disclaimer { margin:-13px 0 30px; font-size:11px; }
  .case-tabs { display:flex; overflow-x:auto; margin-bottom:25px; scrollbar-width:none; }
  .case-tabs::-webkit-scrollbar { display:none; }
  .case-tab { min-width:230px; padding:16px 12px 16px 0; }
  .case-tab:hover,.case-tab.active { padding-left:8px; }
  .case-stage { min-height:620px; }
  .case-overlay { left:20px; right:20px; bottom:32px; width:auto; }
  .case-overlay h3 { font-size:34px; }
  .trust { padding:75px 20px; display:block; }
  .trust-mark { font-size:95px; }
  .trust h2 { font-size:44px; }
  .trust-points { margin-top:45px; }
  .contact { padding:75px 20px 85px; display:block; }
  .contact-copy h2 { font-size:45px; }
  html[lang="en"] .hero h1 { font-size:52px; line-height:1.02; }
  html[lang="en"] .hero-lead { font-size:12px; line-height:1.7; }
  html[lang="en"] .intro-statement p { font-size:36px; }
  html[lang="en"] .journey-stage h3 { font-size:40px; }
  html[lang="en"] .life-map-copy h2 { font-size:44px; }
  html[lang="en"] .map-point b { max-width:78px; font-size:10px; }
  html[lang="en"] .ai-heading h2 { font-size:43px; }
  html[lang="en"] .contact-copy h2 { font-size:43px; }
  .consult-wizard { min-height:540px; margin-top:50px; padding:25px 20px; }
  .option-grid { gap:8px; }
  .option-grid span { min-height:82px; }
  .consent-row { font-size:11px; }
  .wizard-success { justify-content:flex-start; }
  .summary-list>div { grid-template-columns:72px 1fr; }
  .summary-actions { width:100%; align-items:stretch; flex-direction:column; gap:2px; }
  .summary-actions .primary-button { justify-content:center; }
  .summary-actions .back-button { justify-content:center; }
  footer { display:block; padding:55px 20px 25px; }
  footer>p { margin:28px 0; }
  .footer-links { justify-content:flex-start; flex-wrap:wrap; }
  .copyright { margin-top:35px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { animation:none !important; transition:none !important; } .reveal { opacity:1; transform:none; } }
