:root {
  --ink: #080706;
  --ink-soft: #12100e;
  --paper: #f6f0e7;
  --paper-muted: #bdb2a4;
  --gold: #cda45b;
  --gold-bright: #f3d895;
  --cinnabar: #bd4836;
  --jade: #3c9d91;
  --blue: #4f77c8;
  --line: rgba(224, 194, 134, .22);
  --body-copy: clamp(19px, 1.36vw, 27px);
  --small-copy: clamp(16px, .94vw, 20px);
  --sans: "Microsoft YaHei UI", "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", system-ui, sans-serif;
  --ease: cubic-bezier(.22, 1, .36, 1);
  --ease-soft: cubic-bezier(.4, 0, .2, 1);
}

* { box-sizing: border-box; }
html, body { width: 100%; height: 100%; margin: 0; overflow: hidden; background: var(--ink); }
body { color: var(--paper); font-family: var(--sans); -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
button { font: inherit; }
button:focus-visible { outline: 2px solid var(--gold-bright); outline-offset: 4px; }
.course-shell, .presentation, .stage, .scene { width: 100%; height: 100%; }

.presentation {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background: linear-gradient(135deg, #070605, #100d0b 58%, #080706);
}

.stage-atmosphere { position: absolute; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; }
.atmosphere-glow {
  position: absolute;
  top: -24vw;
  right: -18vw;
  width: 76vw;
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(205, 164, 91, .16), transparent 64%);
  filter: blur(20px);
  transition: background 1.1s var(--ease-soft), transform 1.1s var(--ease);
}
.presentation[data-tone="red"] .atmosphere-glow { background: radial-gradient(circle, rgba(189, 72, 54, .22), transparent 64%); transform: translate3d(-5vw, 4vh, 0); }
.presentation[data-tone="blue"] .atmosphere-glow { background: radial-gradient(circle, rgba(79, 119, 200, .2), transparent 64%); transform: translate3d(-13vw, 10vh, 0); }
.presentation[data-tone="jade"] .atmosphere-glow { background: radial-gradient(circle, rgba(60, 157, 145, .18), transparent 64%); transform: translate3d(-2vw, 15vh, 0); }
.atmosphere-ring { position: absolute; border: 1px solid rgba(205, 164, 91, .12); border-radius: 50%; transition: transform 1.2s var(--ease), opacity .8s ease; }
.ring-one { right: -8vw; bottom: -28vw; width: 62vw; aspect-ratio: 1; }
.ring-two { right: 7vw; bottom: -12vw; width: 34vw; aspect-ratio: 1; opacity: .6; }
.presentation[data-tone="blue"] .ring-one { transform: translate3d(-8vw, -9vh, 0) scale(.9); }
.presentation[data-tone="jade"] .ring-two { transform: translate3d(-16vw, -5vh, 0) scale(1.16); }
.atmosphere-grid { position: absolute; inset: 0; opacity: .33; background-image: linear-gradient(rgba(205,164,91,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(205,164,91,.035) 1px, transparent 1px); background-size: 68px 68px; mask-image: linear-gradient(90deg, transparent, #000 35%, #000); }

.course-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 40;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 66px;
  padding: 0 clamp(26px, 4vw, 70px);
  border-bottom: 1px solid rgba(224, 194, 134, .13);
  background: linear-gradient(180deg, rgba(8, 7, 6, .92), rgba(8, 7, 6, .28));
  backdrop-filter: blur(14px);
}
.brand-lockup, .chapter-status { display: flex; align-items: center; gap: 12px; }
.brand-lockup { color: rgba(246, 240, 231, .62); font-size: 14px; font-weight: 600; letter-spacing: .08em; }
.brand-seal { display: grid; place-items: center; width: 34px; height: 34px; background: var(--cinnabar); color: #fff; font-size: 19px; font-weight: 900; transform: rotate(-3deg); }
.chapter-status { font-size: 14px; letter-spacing: .08em; }
.chapter-status span { color: var(--gold); font-weight: 800; }
.chapter-status strong { color: rgba(246, 240, 231, .84); font-weight: 600; transition: opacity .35s ease, transform .5s var(--ease); }
.chapter-status.is-updating strong { opacity: 0; transform: translateY(-7px); }

.stage { position: relative; z-index: 1; overflow: hidden; perspective: 1400px; }
.scene {
  --entry-x: 4vw;
  position: absolute;
  inset: 0;
  z-index: 1;
  visibility: hidden;
  opacity: 0;
  transform: translate3d(var(--entry-x), 2vh, -40px) scale(1.018);
  filter: blur(14px);
  pointer-events: none;
  transition: opacity .68s var(--ease-soft), transform .82s var(--ease), filter .68s var(--ease-soft), visibility 0s .82s;
}
.scene.is-active { z-index: 2; visibility: visible; opacity: 1; transform: translate3d(0, 0, 0) scale(1); filter: blur(0); pointer-events: auto; transition-delay: 0s; }
.scene.is-preparing { visibility: visible; transition: none; }
.scene.from-prev { --entry-x: -4vw; }
.scene.is-entering { z-index: 3; visibility: visible; opacity: 1; transform: translate3d(0, 0, 0) scale(1); filter: blur(0); }
.scene.is-leaving { z-index: 2; visibility: visible; opacity: 0; transform: translate3d(-2.4vw, -1vh, -60px) scale(.982); filter: blur(9px); pointer-events: none; transition-delay: 0s; }
.scene.is-leaving.to-prev { transform: translate3d(2.4vw, 1vh, -60px) scale(.982); }
.scene-inner { position: relative; z-index: 3; width: min(2100px, 100%); height: 100%; margin: auto; padding: 100px clamp(48px, 4vw, 88px) 92px; }
.scene-photo, .scene-vignette { position: absolute; inset: 0; }
.scene-photo { background-position: center; background-size: cover; }
.scene-photo-table { background-image: url("../../assets/images/sichuan-table.png"); background-position: 62% center; filter: saturate(.78) contrast(1.08); }
.scene-vignette { z-index: 1; background: linear-gradient(90deg, rgba(8,7,6,.98), rgba(8,7,6,.85) 43%, rgba(8,7,6,.18) 78%, rgba(8,7,6,.66)), linear-gradient(0deg, rgba(8,7,6,.86), transparent 50%); }

h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { font-family: var(--sans); }
h2 { margin-bottom: 0; font-size: clamp(48px, 5.6vw, 106px); font-weight: 900; line-height: 1.08; letter-spacing: -.055em; }
h2 em { color: var(--gold-bright); font-style: normal; }
.eyebrow { margin: 0 0 18px; color: var(--gold); font-size: clamp(14px, 1.1vw, 17px); font-weight: 800; letter-spacing: .1em; }
.eyebrow::before { content: ""; display: inline-block; width: 28px; height: 2px; margin: 0 12px 4px 0; background: var(--cinnabar); }
.hero-line, .statement, .case-lead { color: rgba(246,240,231,.76); font-size: clamp(19px, 1.7vw, 26px); font-weight: 600; line-height: 1.75; }
.compact-copy { counter-increment: lecture-point; display: grid; grid-template-columns: 58px minmax(0, 1fr); align-items: center; gap: 18px; max-width: 900px; min-height: 78px; margin: 14px 0 0; padding: 14px 24px 14px 14px; border: 1px solid rgba(205,164,91,.22); border-left: 3px solid var(--gold); background: linear-gradient(90deg, rgba(205,164,91,.12), rgba(255,255,255,.025) 72%, transparent); color: rgba(246,240,231,.94); font-size: clamp(30px, 2.5vw, 46px); font-weight: 850; line-height: 1.28; letter-spacing: -.025em; }
.compact-copy::before { content: counter(lecture-point, decimal-leading-zero); display: grid; place-items: center; width: 54px; height: 54px; border: 1px solid rgba(205,164,91,.5); border-radius: 50%; color: var(--gold-bright); font-size: 17px; font-weight: 900; letter-spacing: .04em; }
.scene-brief { max-width: 1080px; margin: 24px 0 0; color: rgba(246,240,231,.72); font-size: var(--body-copy); font-weight: 560; line-height: 1.68; letter-spacing: .01em; }
.center-layout .scene-brief { max-width: 1240px; margin-right: auto; margin-left: auto; }
.reveal { opacity: 0; transform: translate3d(0, 20px, 0) scale(.985); filter: blur(7px); transition: opacity .48s ease, transform .68s var(--ease), filter .48s ease; }
.reveal.is-visible { opacity: 1; transform: translate3d(0, 0, 0) scale(1); filter: blur(0); }
.compact-copy.reveal { opacity: 0; clip-path: inset(0 100% 0 0); transform: translate3d(-54px, 0, 0) scale(.975); filter: blur(3px); transition: opacity .28s ease, clip-path .78s var(--ease), transform .78s var(--ease), filter .42s ease; }
.compact-copy.reveal.is-visible { opacity: 1; clip-path: inset(0 0 0 0); transform: translate3d(0, 0, 0) scale(1); filter: blur(0); }
.benefit-grid article.reveal { transform: perspective(900px) translate3d(0, 62px, -80px) rotateX(15deg) scale(.95); transform-origin: center bottom; }
.benefit-grid article.reveal.is-visible { transform: perspective(900px) translate3d(0, 0, 0) rotateX(0) scale(1); }
.role-grid article.reveal { transform: perspective(900px) translate3d(-52px, 0, -50px) rotateY(12deg) scale(.96); transform-origin: left center; }
.role-grid article.reveal:nth-child(even) { transform: perspective(900px) translate3d(52px, 0, -50px) rotateY(-12deg) scale(.96); transform-origin: right center; }
.role-grid article.reveal.is-visible, .role-grid article.reveal:nth-child(even).is-visible { transform: perspective(900px) translate3d(0, 0, 0) rotateY(0) scale(1); }
.knowledge-layers { perspective: 1100px; }
.knowledge-layers article.reveal { transform: perspective(900px) translate3d(0, 70px, -90px) rotateX(18deg) scale(.94); transform-origin: center bottom; transition-duration: .4s, .82s, .48s; }
.knowledge-layers article.reveal.is-visible { transform: perspective(900px) translate3d(0, 0, 0) rotateX(0) scale(1); }
.month-path article.reveal { transform: translate3d(0, 52px, 0) skewY(3deg) scale(.96); transform-origin: left bottom; }
.month-path article.reveal.is-visible { transform: translate3d(0, 0, 0) skewY(0) scale(1); }
.number-list .reveal, .question-stack article.reveal, .vertical-steps article.reveal { transform: translate3d(-64px, 0, 0) scale(.97); }
.number-list .reveal:nth-child(even), .question-stack article.reveal:nth-child(even), .vertical-steps article.reveal:nth-child(even) { transform: translate3d(64px, 0, 0) scale(.97); }
.number-list .reveal.is-visible, .number-list .reveal:nth-child(even).is-visible, .question-stack article.reveal.is-visible, .question-stack article.reveal:nth-child(even).is-visible, .vertical-steps article.reveal.is-visible, .vertical-steps article.reveal:nth-child(even).is-visible { transform: translate3d(0, 0, 0) scale(1); }
.step-rail article.reveal { transform: translate3d(0, 44px, 0) scale(.46); filter: blur(2px); }
.step-rail article.reveal.is-visible { transform: translate3d(0, 0, 0) scale(1); filter: blur(0); }
.case-points span.reveal, .result-equation .reveal { transform: translate3d(0, 24px, 0) scale(.62); transform-origin: center; }
.case-points span.reveal.is-visible, .result-equation .reveal.is-visible { transform: translate3d(0, 0, 0) scale(1); }
.reuse-orbit.reveal { transform: rotate(-9deg) scale(.76); filter: blur(5px); transition: opacity .4s ease, transform .92s var(--ease), filter .52s ease; }
.reuse-orbit.reveal.is-visible { transform: rotate(0) scale(1); filter: blur(0); }
.motion-media { --media-x: 0px; --media-y: 0px; --media-rx: 0deg; --media-ry: 0deg; transform: translate3d(var(--media-x), var(--media-y), 0) rotateX(var(--media-rx)) rotateY(var(--media-ry)); transform-style: preserve-3d; transition: transform .9s var(--ease); will-change: transform; }
.scene-photo.motion-media { transform: translate3d(var(--media-x), var(--media-y), 0) scale(1.035); }
.photo-surface { width: 100%; height: 100%; overflow: hidden; background: #17130f; }
.photo-surface img { display: block; width: 100%; height: 100%; object-fit: cover; transform: scale(1.07); filter: saturate(.82) contrast(1.04); transition: transform 1.35s var(--ease), filter .7s ease; }
.reveal.is-visible .photo-surface img { transform: scale(1); filter: saturate(.96) contrast(1.03); }

.cover-layout { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; }
.cover-layout h2 { max-width: 58%; font-size: clamp(58px, 7.3vw, 116px); }
.cover-layout .scene-brief, .cover-layout .hero-line, .cover-layout .single-question { max-width: 54%; }
.hero-line { margin: 30px 0 0; }
.single-question { display: grid; gap: 7px; max-width: 820px; margin-top: 28px; padding: 18px 24px; border-left: 3px solid var(--cinnabar); background: linear-gradient(90deg, rgba(189,72,54,.2), transparent); }
.single-question span { color: var(--paper-muted); font-size: 13px; font-weight: 700; letter-spacing: .08em; }
.single-question strong { color: #fff; font-size: clamp(20px, 2vw, 30px); font-weight: 800; }
.cover-doubao-sim { position: absolute; top: 50%; right: clamp(48px, 5vw, 96px); display: grid; gap: 14px; width: clamp(390px, 31vw, 570px); padding: clamp(22px, 2vw, 34px); border: 1px solid rgba(133,169,245,.32); border-radius: 28px; background: linear-gradient(145deg, rgba(15,20,34,.94), rgba(8,7,6,.87)); box-shadow: 0 36px 100px rgba(0,0,0,.48), 0 0 70px rgba(79,119,200,.13); transform: translateY(-50%); backdrop-filter: blur(20px); }
.cover-doubao-head { display: flex; align-items: center; justify-content: space-between; color: rgba(246,240,231,.64); font-size: 15px; font-weight: 800; letter-spacing: .08em; }
.cover-doubao-head b { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 50%; background: #2875f5; color: #fff; font-size: 18px; letter-spacing: 0; }
.cover-doubao-query { justify-self: end; max-width: 88%; padding: 18px 22px; border-radius: 24px 24px 6px 24px; background: linear-gradient(135deg, #2d80ff, #1764e8); color: #fff; font-size: clamp(22px, 1.65vw, 30px); font-weight: 900; line-height: 1.45; box-shadow: 0 16px 34px rgba(32,105,237,.24); }
.cover-doubao-answer { display: grid; gap: 12px; padding: 22px 24px; border: 1px solid rgba(255,255,255,.1); border-radius: 24px 24px 24px 6px; background: rgba(255,255,255,.075); }
.cover-doubao-answer span { color: #9bb8f2; font-size: 15px; font-weight: 900; }
.cover-doubao-answer p { margin: 0; color: rgba(246,240,231,.86); font-size: clamp(17px, 1.14vw, 22px); font-weight: 650; line-height: 1.75; }
.cover-doubao-query.reveal { transform: translate3d(60px, 0, -40px) scale(.94); }
.cover-doubao-answer.reveal { transform: perspective(900px) translate3d(0, 38px, -60px) rotateX(10deg) scale(.96); transform-origin: center top; }
.cover-doubao-query.reveal.is-visible, .cover-doubao-answer.reveal.is-visible { transform: translate3d(0, 0, 0) rotateX(0) scale(1); }

.split-layout, .demo-layout, .case-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(520px, .9fr); align-items: center; gap: clamp(56px, 6vw, 116px); }
.section-copy { counter-reset: lecture-point; }
.section-copy h2 { max-width: 920px; }
.shift-visual { display: grid; grid-template-columns: 1fr 70px 1fr; align-items: center; gap: 20px; }
.decision-stage { display: grid; gap: 22px; align-self: center; }
.decision-insights { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.decision-insights article { display: grid; grid-template-columns: auto 1fr; gap: 7px 14px; align-items: center; min-height: 132px; padding: 19px 20px; border: 1px solid rgba(79,119,200,.34); background: linear-gradient(135deg, rgba(79,119,200,.15), rgba(255,255,255,.02)); }
.decision-insights span { grid-row: 1 / 3; display: grid; place-items: center; width: 48px; height: 48px; border: 1px solid rgba(155,184,242,.52); border-radius: 50%; color: #b9cdf7; font-size: 15px; font-weight: 900; }
.decision-insights strong { color: #fff; font-size: clamp(22px, 1.55vw, 29px); font-weight: 900; line-height: 1.3; }
.decision-insights small { color: rgba(246,240,231,.64); font-size: clamp(14px, .9vw, 17px); font-weight: 650; line-height: 1.55; }
.decision-insights.reveal { clip-path: inset(48% 0 48% 0 round 20px); transform: scale(.94); }
.decision-insights.reveal.is-visible { clip-path: inset(0 0 0 0 round 0); transform: scale(1); }
.wide-photo { position: relative; display: grid; grid-template-columns: minmax(190px, .74fr) 1fr; align-items: center; min-height: 154px; margin: 0; overflow: hidden; border: 1px solid var(--line); background: rgba(255,255,255,.025); }
.wide-photo .photo-surface { height: 100%; min-height: 154px; }
.wide-photo figcaption { padding: 24px; color: rgba(246,240,231,.74); font-size: var(--small-copy); font-weight: 650; line-height: 1.7; }
.search-stack { position: relative; display: grid; gap: 12px; padding: 28px; border: 1px solid var(--line); }
.search-stack span { height: 12px; background: linear-gradient(90deg, rgba(246,240,231,.36), transparent); }
.search-stack span:nth-child(2) { width: 84%; }.search-stack span:nth-child(3) { width: 70%; }.search-stack span:nth-child(4) { width: 48%; }
.search-stack small { margin-top: 18px; color: var(--paper-muted); font-weight: 700; }
.flow-arrow { color: var(--gold); font-size: 52px; font-weight: 300; text-align: center; }
.answer-core { display: grid; place-items: center; align-content: center; aspect-ratio: 1; border: 1px solid rgba(205,164,91,.55); border-radius: 50%; box-shadow: 0 0 80px rgba(205,164,91,.12); }
.answer-core b { color: var(--gold-bright); font-size: clamp(48px, 6vw, 80px); font-weight: 900; }
.answer-core small { color: var(--paper-muted); font-weight: 700; }

.demo-layout { grid-template-columns: minmax(0, .9fr) minmax(340px, .7fr); }
.number-list { display: grid; gap: 10px; margin-top: 38px; }
.number-list div { display: flex; align-items: center; gap: 18px; min-height: 58px; border-bottom: 1px solid var(--line); }
.number-list span, .vertical-steps span, .step-rail span { color: var(--cinnabar); font-size: 18px; font-weight: 900; }
.number-list strong { font-size: clamp(26px, 2.25vw, 38px); font-weight: 850; }
.phone-stage { display: grid; place-items: center; }
.phone-shell { position: relative; width: min(340px, 86%); aspect-ratio: 9 / 18.6; overflow: hidden; border: 8px solid #1c1917; border-radius: 44px; background: #f5f4f1; color: #171513; box-shadow: 0 34px 88px rgba(0,0,0,.48), 0 0 90px rgba(79,119,200,.13); transform: perspective(1000px) rotateY(-4deg); }
.phone-top { display: grid; place-items: center; height: 62px; font-weight: 900; }
.phone-chat { display: flex; flex-direction: column; gap: 14px; height: calc(100% - 118px); padding: 18px; }
.chat-welcome { color: #777; font-size: 14px; text-align: center; }
.chat-bubble { padding: 14px 16px; border-radius: 18px; font-size: 15px; font-weight: 650; line-height: 1.55; }
.chat-user { align-self: flex-end; max-width: 88%; border-bottom-right-radius: 5px; background: #2875f5; color: #fff; }
.chat-ai { position: relative; padding-left: 48px; border-bottom-left-radius: 5px; background: #fff; box-shadow: 0 8px 24px rgba(0,0,0,.08); }
.chat-ai span { position: absolute; top: 14px; left: 12px; display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: #111; color: #fff; font-size: 10px; font-weight: 900; }
.chat-ai p { margin: 0; }
.chat-audit { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; }
.chat-audit b { padding: 9px 4px; border: 1px solid #d8d4cc; border-radius: 9px; color: #555; font-size: 12px; text-align: center; }
.phone-input { position: absolute; inset: auto 14px 14px; height: 42px; padding: 12px 16px; border: 1px solid #ddd9d2; border-radius: 22px; color: #999; font-size: 12px; }

.center-layout, .statement-layout, .flow-layout, .finale-layout { display: flex; flex-direction: column; justify-content: center; }
.center-layout { align-items: center; text-align: center; }
.center-layout h2, .flow-layout h2 { max-width: 1520px; }
.three-checks, .word-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; width: min(1540px, 100%); margin-top: 52px; }
.three-checks article, .word-cards article { display: grid; align-content: end; min-height: 240px; padding: 28px; border: 1px solid var(--line); background: linear-gradient(160deg, rgba(255,255,255,.03), rgba(205,164,91,.04)); text-align: left; }
.three-checks span, .word-cards span, .benefit-grid span { color: var(--cinnabar); font-size: 18px; font-weight: 900; }
.three-checks strong, .word-cards strong { margin-top: 82px; font-size: clamp(28px, 3vw, 48px); font-weight: 900; }
.statement-layout { align-items: flex-start; }
.statement-layout h2 { max-width: 1120px; }
.statement { max-width: 980px; margin: 34px 0 0; }
.statement em { color: var(--gold-bright); font-style: normal; font-weight: 900; }
.statement-layout.has-side-visual { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, .54fr); align-items: center; gap: clamp(42px, 7vw, 118px); }
.statement-copy { position: relative; z-index: 2; }
.side-media { position: relative; width: min(420px, 100%); aspect-ratio: 4 / 5; margin: 0; justify-self: end; overflow: hidden; border: 1px solid rgba(205,164,91,.3); background: #17130f; box-shadow: 0 30px 80px rgba(0,0,0,.34); }
.side-media-wide { width: min(520px, 100%); aspect-ratio: 4 / 3; }
.side-media figcaption { position: absolute; inset: auto 0 0; z-index: 2; padding: 28px 22px 18px; background: linear-gradient(0deg, rgba(8,7,6,.94), transparent); color: rgba(246,240,231,.82); font-size: var(--small-copy); font-weight: 700; line-height: 1.55; }

.flow-layout { align-items: flex-start; }
.flow-layout h2 { max-width: 1460px; }
.flow-layout .scene-brief { max-width: 1380px; }
.flow-evidence-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(18px, 2vw, 34px); width: 100%; margin-top: 34px; perspective: 1400px; }
.flow-evidence-card { position: relative; display: grid; grid-template-rows: minmax(0, 1fr) auto; min-width: 0; min-height: clamp(390px, 44vh, 500px); overflow: visible; border: 1px solid rgba(205,164,91,.3); background: linear-gradient(160deg, rgba(255,255,255,.035), rgba(205,164,91,.055)); box-shadow: 0 28px 70px rgba(0,0,0,.28); }
.flow-evidence-card:not(:last-child)::after { content: "→"; position: absolute; z-index: 4; top: 42%; right: calc(clamp(18px, 2vw, 34px) * -.72); color: var(--gold-bright); font-size: 30px; font-weight: 400; transform: translateX(50%); }
.flow-evidence-media { position: relative; height: clamp(220px, 27vh, 310px); margin: 0; overflow: hidden; background: #17130f; }
.flow-evidence-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(8,7,6,.62), transparent 42%); pointer-events: none; }
.flow-evidence-media .photo-surface img { object-position: center; transform: scale(1.1); }
.flow-evidence-document, .flow-evidence-document .photo-surface { background: #f5f3ef; }
.flow-evidence-document .photo-surface img { object-fit: cover; object-position: center top; filter: none; }
.flow-evidence-copy { display: grid; gap: 8px; min-height: 150px; padding: 22px 24px 24px; }
.flow-evidence-copy span { color: var(--paper); font-size: clamp(28px, 2.4vw, 40px); font-weight: 900; line-height: 1.18; }
.flow-evidence-copy strong { color: var(--gold-bright); font-size: clamp(18px, 1.45vw, 25px); font-weight: 850; }
.flow-evidence-copy small { color: rgba(246,240,231,.66); font-size: clamp(15px, 1.05vw, 19px); font-weight: 650; line-height: 1.55; }
.flow-evidence-card.reveal { transform: perspective(1000px) translate3d(-72px, 0, -70px) rotateY(14deg) scale(.95); transform-origin: left center; }
.flow-evidence-card.reveal:nth-child(2) { transform: perspective(1000px) translate3d(0, 70px, -90px) rotateX(16deg) scale(.94); transform-origin: center bottom; }
.flow-evidence-card.reveal:nth-child(3) { transform: perspective(1000px) translate3d(72px, 0, -70px) rotateY(-14deg) scale(.95); transform-origin: right center; }
.flow-evidence-card.reveal.is-visible, .flow-evidence-card.reveal:nth-child(2).is-visible, .flow-evidence-card.reveal:nth-child(3).is-visible { transform: perspective(1000px) translate3d(0, 0, 0) rotateX(0) rotateY(0) scale(1); }

.doubao-path-layout { display: grid; grid-template-columns: minmax(360px, .52fr) minmax(640px, 1.48fr); align-items: center; gap: clamp(40px, 4vw, 78px); }
.doubao-path-heading h2 { max-width: 700px; font-size: clamp(52px, 3.9vw, 72px); }
.doubao-path-heading .scene-brief { max-width: 680px; }
.doubao-simulation-stage { position: relative; width: 100%; height: clamp(550px, 64vh, 690px); perspective: 1600px; }
.doubao-stage-panel { position: absolute; inset: 0; display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(300px, .62fr); min-width: 0; overflow: hidden; border: 1px solid rgba(133,169,245,.35); border-radius: 30px; background: #f5f4f1; box-shadow: 0 40px 110px rgba(0,0,0,.52), 0 0 80px rgba(79,119,200,.1); }
.doubao-stage-panel figure { min-width: 0; height: 100%; margin: 0; overflow: hidden; background: #fff; }
.doubao-stage-panel img { display: block; width: 100%; height: 100%; object-fit: contain; object-position: center; }
.doubao-stage-copy { position: relative; display: flex; flex-direction: column; justify-content: flex-end; gap: 18px; padding: clamp(28px, 3vw, 52px); background: linear-gradient(165deg, #17213b, #0d111d 72%); }
.doubao-stage-copy::before { content: ""; position: absolute; top: 38px; left: clamp(28px, 3vw, 52px); width: 64px; height: 3px; background: linear-gradient(90deg, #62a0ff, transparent); }
.doubao-stage-copy span { color: #9bb8f2; font-size: clamp(15px, 1vw, 19px); font-weight: 900; letter-spacing: .06em; }
.doubao-stage-copy strong { color: #fff; font-size: clamp(34px, 3.1vw, 56px); font-weight: 900; line-height: 1.22; letter-spacing: -.035em; }
.doubao-stage-copy small { color: rgba(246,240,231,.68); font-size: clamp(17px, 1.15vw, 22px); font-weight: 650; line-height: 1.7; }
.doubao-stage-panel.reveal { opacity: 0; pointer-events: none; transition: opacity .44s ease, transform .88s var(--ease), filter .52s ease, clip-path .88s var(--ease); }
.doubao-stage-panel.reveal:nth-child(1) { z-index: 1; clip-path: inset(0 8% 0 0 round 30px); transform: perspective(1200px) translate3d(-90px, 0, -100px) rotateY(8deg) scale(.94); transform-origin: left center; }
.doubao-stage-panel.reveal:nth-child(2) { z-index: 2; clip-path: inset(8% 0 0 0 round 30px); transform: perspective(1200px) translate3d(0, 86px, -120px) rotateX(12deg) scale(.93); transform-origin: center bottom; }
.doubao-stage-panel.reveal:nth-child(3) { z-index: 3; clip-path: inset(0 0 0 8% round 30px); transform: perspective(1200px) translate3d(90px, 0, -100px) rotateY(-8deg) scale(.94); transform-origin: right center; }
.doubao-stage-panel.reveal.is-visible, .doubao-stage-panel.reveal:nth-child(2).is-visible, .doubao-stage-panel.reveal:nth-child(3).is-visible { opacity: 1; clip-path: inset(0 0 0 0 round 30px); transform: perspective(1200px) translate3d(0, 0, 0) rotateX(0) rotateY(0) scale(1); filter: blur(0); pointer-events: auto; }

.benefit-grid, .role-grid, .knowledge-layers, .month-path { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; width: 100%; margin-top: 46px; }
.benefit-grid article, .role-grid article { display: grid; align-content: end; min-height: 270px; padding: 32px; border-top: 2px solid var(--gold); background: linear-gradient(180deg, rgba(205,164,91,.03), rgba(205,164,91,.09)); text-align: left; }
.benefit-grid strong, .role-grid strong { margin-top: 70px; font-size: clamp(34px, 3.3vw, 54px); font-weight: 900; }
.benefit-grid small { margin-top: 10px; color: var(--paper-muted); font-size: var(--small-copy); font-weight: 600; }
.reuse-orbit { position: relative; width: min(650px, 42vw); aspect-ratio: 1; justify-self: center; border: 1px solid rgba(205,164,91,.28); border-radius: 50%; }
.reuse-orbit::before { content: ""; position: absolute; inset: 18%; border: 1px solid rgba(205,164,91,.16); border-radius: 50%; }
.orbit-photo { position: absolute; inset: 8%; overflow: hidden; border-radius: 50%; opacity: .22; }
.orbit-photo::after { content: ""; position: absolute; inset: 0; background: radial-gradient(circle, transparent 18%, rgba(8,7,6,.48) 70%, rgba(8,7,6,.92)); }
.orbit-photo img { width: 100%; height: 100%; object-fit: cover; }
.reuse-core { position: absolute; z-index: 2; inset: 32%; display: grid; place-items: center; border-radius: 50%; background: var(--cinnabar); font-size: clamp(22px, 2vw, 32px); font-weight: 900; text-align: center; }
.reuse-orbit > span { position: absolute; padding: 12px 18px; border: 1px solid rgba(205,164,91,.34); background: rgba(8,7,6,.9); font-size: clamp(17px, 1.3vw, 22px); font-weight: 850; }
.reuse-orbit > span:nth-of-type(1) { top: 4%; left: 40%; }.reuse-orbit > span:nth-of-type(2) { top: 43%; right: -5%; }.reuse-orbit > span:nth-of-type(3) { bottom: 4%; left: 40%; }.reuse-orbit > span:nth-of-type(4) { top: 43%; left: -7%; }

.step-rail { position: relative; display: grid; grid-template-columns: repeat(5, 1fr); gap: 14px; width: 100%; margin-top: 58px; }
.step-rail::before { content: ""; position: absolute; top: 50%; right: 3%; left: 3%; height: 1px; background: linear-gradient(90deg, var(--cinnabar), var(--gold), var(--jade)); }
.step-rail article { position: relative; z-index: 1; display: grid; place-items: center; align-content: center; aspect-ratio: 1; border: 1px solid var(--line); border-radius: 50%; background: var(--ink-soft); }
.step-rail strong { margin-top: 10px; font-size: clamp(30px, 3vw, 46px); font-weight: 900; }
.diagnosis-layout { display: grid; grid-template-columns: minmax(0, .82fr) minmax(620px, 1.18fr); align-items: center; gap: clamp(44px, 5vw, 96px); }
.diagnosis-copy h2 { max-width: 900px; font-size: clamp(58px, 5.5vw, 98px); }
.diagnosis-copy .scene-brief { max-width: 820px; }
.diagnosis-legend { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.diagnosis-legend span { padding: 12px 18px; border: 1px solid rgba(60,157,145,.34); border-radius: 999px; background: rgba(60,157,145,.1); color: #9ad9ce; font-size: clamp(16px, 1.05vw, 20px); font-weight: 850; }
.diagnosis-doubao { position: relative; display: grid; grid-template-rows: auto auto minmax(0, 1fr) auto; gap: 18px; min-height: 610px; padding: 28px; overflow: hidden; border: 1px solid rgba(104,184,171,.36); border-radius: 34px; background: radial-gradient(circle at 92% 8%, rgba(42,126,115,.2), transparent 34%), linear-gradient(160deg, #172622, #0d1513 70%); box-shadow: 0 34px 100px rgba(0,0,0,.45), 0 0 80px rgba(60,157,145,.09); }
.diagnosis-doubao::after { content: ""; position: absolute; right: -12%; bottom: -34%; width: 62%; aspect-ratio: 1; border: 1px solid rgba(104,184,171,.2); border-radius: 50%; box-shadow: 0 0 0 70px rgba(104,184,171,.04), 0 0 0 140px rgba(104,184,171,.025); pointer-events: none; }
.diagnosis-doubao-bar { position: relative; z-index: 2; display: flex; align-items: center; justify-content: space-between; padding-bottom: 16px; border-bottom: 1px solid rgba(255,255,255,.1); }
.diagnosis-doubao-bar span { color: #9ad9ce; font-size: 17px; font-weight: 900; letter-spacing: .08em; }
.diagnosis-doubao-bar b { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: #2875f5; color: #fff; font-size: 17px; }
.diagnosis-query, .diagnosis-answer { position: relative; z-index: 2; padding: 22px 24px; border-radius: 24px; }
.diagnosis-query { justify-self: end; width: min(88%, 720px); border-bottom-right-radius: 7px; background: linear-gradient(135deg, #2d80ff, #1764e8); color: #fff; }
.diagnosis-query span, .diagnosis-answer span { display: block; margin-bottom: 8px; font-size: 15px; font-weight: 900; letter-spacing: .05em; }
.diagnosis-query span { color: rgba(255,255,255,.7); }
.diagnosis-query strong { display: block; font-size: clamp(22px, 1.75vw, 32px); line-height: 1.45; }
.diagnosis-answer { align-self: stretch; border: 1px solid rgba(255,255,255,.1); border-bottom-left-radius: 7px; background: rgba(255,255,255,.065); }
.diagnosis-answer span { color: #9ad9ce; }
.diagnosis-answer p { margin: 0; color: rgba(246,240,231,.88); font-size: clamp(20px, 1.4vw, 27px); font-weight: 680; line-height: 1.72; }
.diagnosis-audit { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.diagnosis-audit article { display: grid; gap: 7px; min-height: 96px; padding: 17px; border: 1px solid rgba(104,184,171,.24); background: rgba(5,13,12,.5); }
.diagnosis-audit span { color: #81cabd; font-size: 14px; font-weight: 900; }
.diagnosis-audit strong { font-size: clamp(17px, 1.15vw, 22px); line-height: 1.4; }
.diagnosis-query.reveal { transform: translate3d(70px, 0, -50px) scale(.94); }
.diagnosis-answer.reveal { clip-path: inset(0 100% 0 0 round 24px); transform: translate3d(-48px, 0, -70px) scale(.96); }
.diagnosis-audit.reveal { transform: perspective(1100px) translate3d(0, 62px, -90px) rotateX(14deg) scale(.94); transform-origin: center bottom; }
.diagnosis-query.reveal.is-visible, .diagnosis-answer.reveal.is-visible, .diagnosis-audit.reveal.is-visible { clip-path: inset(0 0 0 0 round 24px); transform: perspective(1100px) translate3d(0, 0, 0) rotateX(0) scale(1); }
.question-stack, .vertical-steps { display: grid; gap: 12px; }
.question-stack article, .vertical-steps article { display: grid; grid-template-columns: 90px 1fr; align-items: center; min-height: 86px; padding: 18px 24px; border-left: 2px solid var(--jade); background: linear-gradient(90deg, rgba(60,157,145,.12), transparent); }
.question-stack span { color: var(--jade); font-size: 17px; font-weight: 900; }
.question-stack strong, .vertical-steps strong { font-size: clamp(27px, 2.45vw, 40px); font-weight: 850; }
.content-system-scene .scene-inner { position: relative; }
.content-evidence-overlay { position: absolute; z-index: 12; inset: 86px clamp(44px, 4vw, 88px) 78px; display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(300px, .5fr); min-width: 0; overflow: hidden; border: 1px solid rgba(104,184,171,.4); border-radius: 30px; background: rgba(8,14,13,.98); box-shadow: 0 42px 130px rgba(0,0,0,.7), 0 0 110px rgba(60,157,145,.1); }
.content-evidence-image { min-width: 0; height: 100%; padding: 18px; background: #f4f4f4; }
.content-evidence-overlay img { display: block; width: 100%; height: 100%; object-fit: contain; object-position: center; }
.content-evidence-overlay figcaption { display: flex; flex-direction: column; justify-content: flex-end; gap: 18px; padding: clamp(30px, 3.4vw, 58px); background: radial-gradient(circle at 100% 0, rgba(60,157,145,.18), transparent 42%), #101a18; }
.content-evidence-overlay figcaption::before { content: "05"; color: #81cabd; font-size: 18px; font-weight: 900; }
.content-evidence-overlay figcaption span { color: #9ad9ce; font-size: clamp(18px, 1.2vw, 23px); font-weight: 900; }
.content-evidence-overlay figcaption strong { color: #fff; font-size: clamp(28px, 2.5vw, 46px); font-weight: 900; line-height: 1.4; }
.content-evidence-overlay.reveal { clip-path: inset(46% 8% 46% 8% round 30px); transform: perspective(1400px) translate3d(0, 70px, -140px) rotateX(8deg) scale(.9); transform-origin: center bottom; }
.content-evidence-overlay.reveal.is-visible { clip-path: inset(0 0 0 0 round 30px); transform: perspective(1400px) translate3d(0, 0, 0) rotateX(0) scale(1); }
.platform-source-layout { display: grid; grid-template-columns: minmax(340px, .58fr) minmax(720px, 1.42fr); align-items: center; gap: clamp(44px, 5vw, 96px); }
.platform-source-heading h2 { max-width: 780px; font-size: clamp(56px, 5.2vw, 92px); }
.platform-source-heading .scene-brief { max-width: 720px; }
.platform-source-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.platform-source-card { --platform-accent: #69a4ff; position: relative; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-content: start; gap: 10px; min-height: 285px; padding: 26px 28px; overflow: hidden; border: 1px solid color-mix(in srgb, var(--platform-accent) 40%, transparent); background: linear-gradient(145deg, color-mix(in srgb, var(--platform-accent) 13%, transparent), rgba(255,255,255,.018) 62%); }
.platform-source-card::after { content: ""; position: absolute; right: -42px; bottom: -62px; width: 150px; aspect-ratio: 1; border: 1px solid color-mix(in srgb, var(--platform-accent) 28%, transparent); border-radius: 50%; box-shadow: 0 0 0 34px color-mix(in srgb, var(--platform-accent) 5%, transparent); }
.platform-source-card[data-platform="deepseek"] { --platform-accent: #7e8cff; }
.platform-source-card[data-platform="yuanbao"] { --platform-accent: #48d4c5; }
.platform-source-card[data-platform="qwen"] { --platform-accent: #d391ff; }
.platform-source-name { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; padding-bottom: 16px; border-bottom: 1px solid rgba(255,255,255,.1); }
.platform-source-name span { color: var(--platform-accent); font-size: 16px; font-weight: 900; }
.platform-source-name strong { color: #fff; font-size: clamp(34px, 2.7vw, 50px); font-weight: 900; letter-spacing: -.035em; }
.platform-source-card p { margin: 0; padding: 9px 11px; border: 1px solid color-mix(in srgb, var(--platform-accent) 25%, transparent); background: rgba(0,0,0,.2); color: rgba(246,240,231,.9); font-size: clamp(14px, .92vw, 18px); font-weight: 800; line-height: 1.25; text-align: center; }
.platform-source-card p:last-of-type { grid-column: 1 / -1; }
.platform-source-card small { grid-column: 1 / -1; align-self: end; margin-top: 4px; color: rgba(246,240,231,.72); font-size: clamp(15px, 1vw, 19px); font-weight: 700; line-height: 1.45; }
.platform-source-card.reveal { transform: perspective(1100px) translate3d(0, 76px, -100px) rotateX(16deg) scale(.94); transform-origin: center bottom; }
.platform-source-card.reveal:nth-child(2) { transform: perspective(1100px) translate3d(70px, 0, -90px) rotateY(-12deg) scale(.94); transform-origin: right center; }
.platform-source-card.reveal:nth-child(3) { transform: perspective(1100px) translate3d(-70px, 0, -90px) rotateY(12deg) scale(.94); transform-origin: left center; }
.platform-source-card.reveal:nth-child(4) { transform: perspective(1100px) translate3d(0, -60px, -90px) rotateX(-12deg) scale(.94); transform-origin: center top; }
.platform-source-card.reveal.is-visible, .platform-source-card.reveal:nth-child(2).is-visible, .platform-source-card.reveal:nth-child(3).is-visible, .platform-source-card.reveal:nth-child(4).is-visible { transform: perspective(1100px) translate3d(0, 0, 0) rotateX(0) rotateY(0) scale(1); }
.loop-diagram { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; width: 100%; margin-top: 54px; }
.loop-diagram div { position: relative; display: grid; place-items: center; align-content: center; min-height: 210px; border: 1px solid var(--line); border-radius: 50%; }
.loop-diagram div:not(:last-child)::after { content: "→"; position: absolute; right: -27px; color: var(--jade); font-size: 25px; }
.loop-diagram b { font-size: clamp(42px, 5vw, 72px); font-weight: 900; }
.loop-diagram small { margin-top: 8px; color: var(--paper-muted); font-weight: 700; }

.role-grid article { min-height: 230px; border-top-color: var(--blue); }
.role-grid span { color: #9bb8f2; font-size: 18px; font-weight: 850; }
.vertical-steps article { grid-template-columns: 54px 1fr; min-height: 108px; border-left-color: var(--blue); background: linear-gradient(90deg, rgba(79,119,200,.14), transparent); }
.knowledge-layers article { display: grid; gap: 18px; min-height: 270px; padding: 32px; border: 1px solid var(--line); background: rgba(255,255,255,.025); text-align: left; }
.knowledge-layers span { color: var(--gold); font-size: 18px; font-weight: 900; }
.knowledge-layers strong { align-self: end; font-size: clamp(30px, 2.8vw, 44px); font-weight: 900; line-height: 1.34; }
.center-layout > :not(.scene-watermark) { position: relative; z-index: 2; }
.scene-watermark { position: absolute; z-index: 1; right: clamp(30px, 5vw, 90px); bottom: 74px; width: min(38vw, 560px); height: min(34vh, 360px); margin: 0; overflow: hidden; opacity: .12; mask-image: linear-gradient(135deg, transparent, #000 24%, #000 76%, transparent); pointer-events: none; }
.scene-watermark-left { right: auto; left: clamp(30px, 5vw, 90px); opacity: .1; }
.scene-watermark img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(.18) contrast(1.1); }

.case-layout { grid-template-columns: minmax(520px, .78fr) minmax(0, 1.22fr); gap: clamp(54px, 5vw, 96px); }
.case-layout-reverse .case-copy { order: 2; }.case-layout-reverse .case-gallery { order: 1; }
.case-copy h2 { font-size: clamp(68px, 9vw, 136px); }
.case-lead { max-width: 820px; margin: 28px 0 0; }
.case-points { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
.case-points span { padding: 14px 20px; border: 1px solid rgba(205,164,91,.3); color: var(--gold-bright); font-size: clamp(20px, 1.65vw, 28px); font-weight: 850; }
.case-media { position: relative; width: min(430px, 100%); margin: 0; aspect-ratio: 4 / 5; overflow: hidden; border: 1px solid rgba(205,164,91,.28); background: #17130f; box-shadow: 0 28px 70px rgba(0,0,0,.38); }
.case-media img { object-position: center top; }
.case-media figcaption { position: absolute; inset: auto 0 0; z-index: 2; padding: 22px 20px 17px; background: linear-gradient(0deg, rgba(8,7,6,.96), transparent); color: rgba(246,240,231,.84); font-size: var(--small-copy); font-weight: 750; letter-spacing: .035em; }
.case-gallery { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(240px, .72fr); grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 18px; width: min(960px, 100%); height: clamp(500px, 58vh, 680px); justify-self: center; }
.case-gallery .case-main { grid-row: 1 / -1; width: 100%; height: 100%; aspect-ratio: auto; }
.case-mini { position: relative; width: 100%; height: 100%; margin: 0; overflow: hidden; border: 1px solid rgba(205,164,91,.28); background: #17130f; box-shadow: 0 22px 52px rgba(0,0,0,.42); }
.case-mini-top, .case-mini-bottom { min-height: 0; }
.case-gallery-proof .case-main { width: 100%; }
.case-gallery-proof .case-mini-top { width: 100%; }
.evidence-shot { aspect-ratio: auto; background: #f7f7f7; }
.evidence-shot .photo-surface { background: #f7f7f7; }
.evidence-shot .photo-surface img { width: 100%; height: 100%; max-width: 100%; object-fit: contain; object-position: center; transform: none; filter: none; }
.reveal.is-visible .evidence-shot .photo-surface img { transform: none; filter: none; }
.case-mini.evidence-shot { aspect-ratio: auto; }
.proof-float { position: relative; z-index: 3; display: grid; align-content: center; gap: 12px; width: 100%; height: 100%; padding: 28px; border: 1px solid rgba(205,164,91,.28); background: rgba(246,240,231,.96); color: #171513; box-shadow: 0 22px 56px rgba(0,0,0,.36); }
.proof-float span, .proof-float small { color: #68635c; font-size: 14px; font-weight: 800; }
.proof-float strong { font-size: clamp(20px, 2vw, 30px); line-height: 1.4; }
.case-proof { display: flex; flex-direction: column; padding: 22px; background: #f5f4f1; color: #171513; }
.proof-top { padding-bottom: 16px; border-bottom: 1px solid #ded9d0; color: #777; font-size: 13px; font-weight: 800; }
.proof-query { align-self: flex-end; margin-top: 22px; padding: 14px 18px; border-radius: 18px 18px 4px 18px; background: #2875f5; color: #fff; font-size: 18px; font-weight: 900; }
.proof-card { margin-top: 22px; padding: 22px; border-radius: 18px; background: #fff; box-shadow: 0 12px 32px rgba(0,0,0,.08); }
.proof-card span { color: #777; font-size: 12px; font-weight: 800; }
.proof-card strong { display: block; margin-top: 16px; font-size: clamp(24px, 2.3vw, 34px); font-weight: 900; line-height: 1.4; }
.proof-card p { margin: 18px 0 0; color: #65615b; font-size: 15px; font-weight: 600; line-height: 1.7; }
.result-equation { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 16px; margin-top: 58px; }
.result-equation span, .result-equation strong { padding: 20px 28px; border: 1px solid var(--line); font-size: clamp(26px, 2.55vw, 40px); font-weight: 900; }
.result-equation strong { border-color: var(--cinnabar); background: var(--cinnabar); }
.result-equation i { color: var(--gold); font-size: 28px; font-style: normal; }
.case-duo { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; width: min(1500px, 100%); margin-top: 30px; }
.case-duo figure { position: relative; min-height: clamp(320px, 34vh, 450px); margin: 0; overflow: hidden; border: 1px solid var(--line); }
.case-duo figcaption { position: absolute; inset: auto 0 0; z-index: 2; padding: 34px 18px 16px; background: linear-gradient(0deg, rgba(8,7,6,.95), transparent); color: rgba(246,240,231,.88); font-size: var(--small-copy); font-weight: 800; text-align: left; }
.case-conclusion-scene .scene-inner { padding-top: 82px; padding-bottom: 76px; }
.case-conclusion-scene h2 { font-size: clamp(52px, 4.8vw, 82px); }
.case-conclusion-scene .scene-brief { margin-top: 16px; }
.case-conclusion-scene .result-equation { margin-top: 28px; }
.case-conclusion-scene .result-equation span,
.case-conclusion-scene .result-equation strong { padding: 13px 20px; font-size: clamp(21px, 1.9vw, 32px); }
.case-conclusion-scene .case-duo { margin-top: 20px; }
.case-conclusion-scene .case-duo figure { height: clamp(250px, 27vh, 360px); min-height: 0; }
.case-conclusion-scene .case-duo .photo-surface { height: 100%; }

.finale-layout h2 { max-width: 1480px; }
.finale-layout { position: relative; z-index: 3; align-items: flex-start; }
.finale-backdrop { position: absolute; z-index: 1; inset: 9% -4% 8% auto; width: 56%; margin: 0; overflow: hidden; opacity: .16; mask-image: linear-gradient(90deg, transparent, #000 34%, #000 78%, transparent); }
.finale-backdrop::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, var(--ink), transparent 38%), linear-gradient(0deg, var(--ink), transparent 30%, transparent 70%, var(--ink)); }
.finale-backdrop img { width: 100%; height: 100%; object-fit: cover; }
.month-path article { min-height: 210px; padding: 30px; border-top: 2px solid var(--gold); background: linear-gradient(180deg, rgba(205,164,91,.04), rgba(205,164,91,.1)); }
.month-path span { color: var(--gold); font-size: 18px; font-weight: 900; }
.month-path strong { display: block; margin-top: 58px; font-size: clamp(30px, 2.8vw, 44px); font-weight: 900; }
.final-line { margin: 34px 0 0; color: var(--gold-bright); font-size: clamp(20px, 2vw, 30px); font-weight: 900; }

.course-controls { position: fixed; inset: auto 0 0; z-index: 45; display: grid; grid-template-columns: 1fr auto; align-items: center; min-height: 70px; padding: 11px clamp(26px, 4vw, 70px); background: linear-gradient(0deg, rgba(8,7,6,.97), rgba(8,7,6,.5)); backdrop-filter: blur(14px); }
.progress-track { position: absolute; inset: 0 0 auto; height: 2px; background: rgba(255,255,255,.05); }
.progress-track span { display: block; width: 4.55%; height: 100%; background: linear-gradient(90deg, var(--cinnabar), var(--gold)); transition: width .7s var(--ease); }
.control-meta { display: flex; align-items: center; gap: 18px; }
.control-meta span { color: var(--gold); font-size: 14px; font-weight: 900; letter-spacing: .08em; font-variant-numeric: tabular-nums; }
.control-meta small { color: rgba(246,240,231,.5); font-size: 14px; }
.control-actions { display: flex; gap: 10px; }
.control-actions button { display: grid; place-items: center; min-width: 44px; min-height: 44px; border: 1px solid rgba(205,164,91,.28); border-radius: 50%; background: rgba(255,255,255,.02); color: var(--paper); cursor: pointer; transition: background .2s ease, border-color .2s ease, transform .2s ease; }
.control-actions button:hover { border-color: var(--gold); background: rgba(205,164,91,.1); transform: translateY(-2px); }
.control-actions svg, .opening-enter svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }

.opening { position: fixed; inset: 0; z-index: 120; overflow: hidden; background: #050403; transition: opacity .86s var(--ease-soft), visibility 0s .86s, transform .86s var(--ease); }
.opening.is-dismissed { visibility: hidden; opacity: 0; transform: scale(1.025); pointer-events: none; }
.opening-photo { position: absolute; inset: 0; background: url("../../assets/images/sichuan-table.png") center/cover; filter: saturate(.64) brightness(.42) contrast(1.12); opacity: 0; transform: scale(1.08); }
.opening-shade { position: absolute; inset: 0; background: radial-gradient(circle at 70% 45%, transparent, rgba(5,4,3,.38) 48%, rgba(5,4,3,.94) 86%), linear-gradient(90deg, rgba(5,4,3,.96), transparent 72%); }
.opening-copy { position: absolute; z-index: 2; left: clamp(30px, 7vw, 130px); top: 50%; transform: translateY(-48%); }
.opening-kicker, .opening-mark, .opening-copy h1, .opening-subtitle { opacity: 0; transform: translateY(20px); }
.opening-kicker { color: rgba(246,240,231,.58); font-size: 13px; font-weight: 700; letter-spacing: .12em; }
.opening-mark { display: block; margin: 20px 0 5px; color: var(--gold); font-size: clamp(28px, 3vw, 46px); font-weight: 900; letter-spacing: .12em; }
.opening-copy h1 { margin: 0; font-size: clamp(54px, 7vw, 112px); font-weight: 900; line-height: 1.06; letter-spacing: -.055em; }
.opening-copy h1 strong { color: var(--gold-bright); }
.opening-subtitle { margin: 26px 0 0; color: rgba(246,240,231,.62); font-size: 16px; font-weight: 700; letter-spacing: .08em; }
.opening-skip, .opening-enter { position: absolute; z-index: 4; min-width: 44px; min-height: 44px; border: 1px solid rgba(205,164,91,.34); color: var(--paper); cursor: pointer; backdrop-filter: blur(12px); }
.opening-skip { top: 26px; right: 26px; padding: 0 18px; background: rgba(8,7,6,.48); }
.opening-enter { left: clamp(30px, 7vw, 130px); bottom: 7vh; display: flex; align-items: center; gap: 12px; padding: 0 24px; border-color: var(--cinnabar); background: var(--cinnabar); opacity: 0; transform: translateY(12px); pointer-events: none; }
.opening.is-running .opening-photo { animation: openingPhoto 2.2s .1s var(--ease) forwards; }
.opening.is-running .opening-kicker { animation: openingCopy .55s .45s var(--ease) forwards; }
.opening.is-running .opening-mark { animation: openingCopy .55s .75s var(--ease) forwards; }
.opening.is-running .opening-copy h1 { animation: openingCopy .7s 1s var(--ease) forwards; }
.opening.is-running .opening-subtitle { animation: openingCopy .55s 1.55s var(--ease) forwards; }
.opening.is-ready .opening-photo, .opening.is-ready .opening-kicker, .opening.is-ready .opening-mark, .opening.is-ready .opening-copy h1, .opening.is-ready .opening-subtitle { opacity: 1; transform: none; }
.opening.is-ready .opening-enter { opacity: 1; transform: none; pointer-events: auto; transition: opacity .4s ease, transform .55s var(--ease); }
@keyframes openingPhoto { to { opacity: 1; transform: scale(1.015); } }
@keyframes openingCopy { to { opacity: 1; transform: translateY(0); } }

@media (max-width: 1080px) {
  h2 { font-size: clamp(42px, 6.6vw, 76px); }
  .scene-inner { padding-right: 42px; padding-left: 42px; }
  .split-layout, .demo-layout, .case-layout { grid-template-columns: minmax(0, 1fr) minmax(390px, .82fr); gap: 40px; }
  .diagnosis-layout { grid-template-columns: minmax(0, .72fr) minmax(520px, 1.28fr); gap: 34px; }
  .diagnosis-doubao { min-height: 570px; padding: 22px; }
  .platform-source-layout { grid-template-columns: minmax(300px, .52fr) minmax(600px, 1.48fr); gap: 34px; }
  .platform-source-card { min-height: 260px; padding: 23px; }
  .benefit-grid, .role-grid, .knowledge-layers, .month-path { grid-template-columns: repeat(2, 1fr); }
  .benefit-grid article, .role-grid article, .knowledge-layers article { min-height: 170px; }
  .benefit-grid strong, .role-grid strong { margin-top: 36px; }
  .step-rail article { aspect-ratio: auto; min-height: 150px; border-radius: 90px; }
  .case-gallery { height: 540px; }
  .cover-doubao-sim { right: 42px; width: min(38vw, 420px); padding: 22px; }
  .cover-doubao-answer p { font-size: 17px; }
  .doubao-path-layout { grid-template-columns: minmax(300px, .48fr) minmax(520px, 1.52fr); gap: 32px; }
  .doubao-stage-panel { grid-template-columns: minmax(0, 1.5fr) minmax(260px, .62fr); }
}

@media (max-width: 920px) {
  .scene { overflow-y: auto; }
  .scene-inner { min-height: 100%; height: auto; padding: 88px 32px 100px; }
  .split-layout, .demo-layout, .case-layout { grid-template-columns: 1fr; align-content: start; gap: 30px; }
  .diagnosis-layout, .platform-source-layout { grid-template-columns: 1fr; align-content: start; gap: 30px; }
  .diagnosis-copy h2, .platform-source-heading h2 { max-width: 100%; }
  .diagnosis-doubao { min-height: 600px; }
  .platform-source-grid { width: 100%; }
  .statement-layout.has-side-visual { grid-template-columns: 1fr; align-content: start; gap: 30px; }
  .side-media, .side-media-wide { width: min(520px, 76vw); aspect-ratio: 16 / 9; justify-self: center; }
  .case-layout-reverse .case-copy, .case-layout-reverse .case-gallery { order: initial; }
  .case-copy h2 { font-size: clamp(54px, 10vw, 78px); }
  .case-gallery { grid-template-columns: minmax(0, 1.35fr) minmax(220px, .72fr); width: min(760px, 100%); height: 540px; }
  .flow-evidence-grid { grid-template-columns: 1fr; width: min(680px, 100%); margin-right: auto; margin-left: auto; }
  .flow-evidence-card { min-height: 420px; }
  .flow-evidence-card:not(:last-child)::after { top: auto; right: 50%; bottom: calc(clamp(18px, 2vw, 34px) * -.78); transform: translate(50%, 50%) rotate(90deg); }
  .cover-layout h2, .cover-layout .scene-brief, .cover-layout .hero-line, .cover-layout .single-question { max-width: 100%; }
  .cover-doubao-sim { position: relative; top: auto; right: auto; width: min(640px, 100%); margin-top: 28px; transform: none; }
  .decision-insights { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .doubao-path-layout { display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start; gap: 28px; }
  .doubao-path-heading h2 { max-width: 100%; }
  .doubao-simulation-stage { height: 720px; }
  .doubao-stage-panel { grid-template-columns: 1fr; grid-template-rows: minmax(0, 1fr) auto; }
  .doubao-stage-copy { min-height: 210px; }
}

@media (max-width: 760px) {
  html, body { overflow: hidden; }
  .scene-photo.motion-media { transform: none; }
  .course-header { height: 58px; padding: 0 18px; }
  .brand-lockup > span:last-child, .chapter-status strong, .control-meta small { display: none; }
  .scene { overflow-y: auto; }
  .scene-inner { min-height: 100%; height: auto; padding: 84px 20px 100px; }
  h2, .cover-layout h2 { font-size: clamp(40px, 11.5vw, 58px); line-height: 1.12; }
  .eyebrow { font-size: 14px; line-height: 1.55; }
  .scene-brief { margin-top: 18px; font-size: 18px; line-height: 1.7; }
  .split-layout, .demo-layout, .case-layout { grid-template-columns: 1fr; align-content: start; gap: 30px; }
  .center-layout { align-items: stretch; text-align: left; }
  .three-checks, .word-cards, .benefit-grid, .role-grid, .knowledge-layers, .month-path, .step-rail, .loop-diagram { grid-template-columns: 1fr; gap: 10px; margin-top: 28px; }
  .diagnosis-copy h2, .platform-source-heading h2 { font-size: clamp(40px, 11vw, 56px); }
  .diagnosis-legend { gap: 8px; margin-top: 22px; }
  .diagnosis-legend span { padding: 9px 12px; font-size: 15px; }
  .diagnosis-doubao { min-height: 650px; padding: 18px; border-radius: 22px; }
  .diagnosis-query { width: 94%; padding: 17px; }
  .diagnosis-query strong { font-size: 20px; }
  .diagnosis-answer { padding: 18px; }
  .diagnosis-answer p { font-size: 18px; }
  .diagnosis-audit { grid-template-columns: 1fr; gap: 8px; }
  .diagnosis-audit article { min-height: 72px; padding: 13px 15px; }
  .content-system-scene .scene-inner { min-height: 980px; }
  .content-evidence-overlay { inset: 72px 14px 82px; grid-template-columns: 1fr; grid-template-rows: minmax(0, 1fr) auto; border-radius: 22px; }
  .content-evidence-image { padding: 8px; }
  .content-evidence-overlay figcaption { gap: 10px; padding: 20px; }
  .content-evidence-overlay figcaption strong { font-size: 23px; }
  .platform-source-grid { grid-template-columns: 1fr; gap: 12px; }
  .platform-source-card { min-height: 220px; padding: 20px; }
  .platform-source-name strong { font-size: 34px; }
  .platform-source-card p { font-size: 15px; }
  .three-checks article, .word-cards article, .benefit-grid article, .role-grid article, .knowledge-layers article, .month-path article { min-height: 112px; padding: 18px; }
  .three-checks strong, .word-cards strong, .benefit-grid strong, .role-grid strong, .month-path strong { margin-top: 24px; font-size: 27px; }
  .flow-chain i { transform: rotate(90deg); text-align: center; }
  .flow-chain div { min-height: 112px; padding: 20px; }
  .flow-evidence-grid { gap: 22px; margin-top: 26px; }
  .flow-evidence-card { min-height: 360px; }
  .flow-evidence-media { height: 220px; }
  .flow-evidence-copy { min-height: 132px; padding: 18px; }
  .flow-evidence-copy span { font-size: 28px; }
  .shift-visual { grid-template-columns: 1fr 42px 1fr; gap: 8px; }
  .decision-insights { grid-template-columns: 1fr; }
  .decision-insights article { min-height: 112px; padding: 16px; }
  .decision-insights strong { font-size: 24px; }
  .wide-photo { grid-template-columns: 1fr; }
  .wide-photo .photo-surface { min-height: 138px; }
  .wide-photo figcaption { padding: 16px 18px; }
  .search-stack { padding: 16px; }
  .phone-shell { width: min(310px, 86vw); }
  .step-rail::before { display: none; }
  .step-rail article { min-height: 84px; aspect-ratio: auto; border-radius: 16px; }
  .loop-diagram div { min-height: 120px; border-radius: 18px; }
  .loop-diagram div:not(:last-child)::after { right: 50%; bottom: -19px; top: auto; transform: rotate(90deg); }
  .reuse-orbit { width: min(360px, 80vw); }
  .case-layout-reverse .case-copy, .case-layout-reverse .case-gallery { order: initial; }
  .case-gallery { grid-template-columns: 1fr; grid-template-rows: auto; gap: 12px; width: 100%; height: auto; }
  .case-gallery .case-main { grid-row: auto; width: 100%; height: auto; }
  .case-mini, .case-gallery-proof .case-mini-top { width: 100%; height: auto; aspect-ratio: 4 / 3; }
  .case-gallery-proof .case-main { width: 100%; }
  .evidence-shot { aspect-ratio: auto; }
  .evidence-shot .photo-surface { height: auto; }
  .evidence-shot .photo-surface img { width: 100%; height: auto; object-fit: contain; }
  .proof-float { width: 100%; height: auto; min-height: 190px; padding: 22px; }
  .case-copy h2 { font-size: clamp(56px, 16vw, 82px); }
  .result-equation { justify-content: flex-start; margin-top: 30px; }
  .case-duo { grid-template-columns: 1fr; }
  .case-duo figure { min-height: 0; }
  .case-conclusion-scene .case-duo figure { height: auto; }
  .case-conclusion-scene .case-duo .photo-surface { height: auto; }
  .scene-watermark { display: none; }
  .finale-backdrop { width: 88%; opacity: .11; }
  .opening-copy { right: 24px; left: 24px; }
  .opening-copy h1 { font-size: clamp(46px, 13vw, 66px); }
  .opening-enter { left: 24px; bottom: 42px; }
  .course-controls { min-height: 66px; padding: 10px 18px; }
  .cover-doubao-sim { padding: 18px; border-radius: 22px; }
  .cover-doubao-query { padding: 15px 17px; font-size: 21px; }
  .cover-doubao-query.reveal { transform: translate3d(0, 24px, 0) scale(.94); }
  .cover-doubao-answer { padding: 18px; }
  .cover-doubao-answer p { font-size: 17px; }
  .doubao-simulation-stage { height: 650px; }
  .doubao-stage-panel { border-radius: 20px; }
  .doubao-stage-panel.reveal:not(.is-visible) { clip-path: inset(7% 0 0 0 round 20px); transform: perspective(900px) translate3d(0, 44px, -70px) rotateX(8deg) scale(.95); transform-origin: center bottom; }
  .doubao-stage-copy { min-height: 220px; padding: 24px 22px; }
  .doubao-stage-copy::before { top: 22px; left: 22px; }
  .doubao-stage-copy strong { font-size: 32px; }
  .doubao-stage-copy small { font-size: 17px; }
}

.course-lock {
  position: fixed;
  inset: 0;
  z-index: 999;
  display: grid;
  place-items: center;
  overflow: hidden;
  padding: max(24px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));
  background:
    radial-gradient(circle at 78% 24%, rgba(189, 72, 54, .19), transparent 34%),
    radial-gradient(circle at 22% 76%, rgba(205, 164, 91, .13), transparent 38%),
    linear-gradient(135deg, #050403, #110d0a 62%, #080706);
  transition: opacity .56s var(--ease-soft), transform .62s var(--ease), visibility 0s .62s;
}
.course-lock[hidden] { display: none; }
.course-lock::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .28;
  background-image: linear-gradient(rgba(205,164,91,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(205,164,91,.045) 1px, transparent 1px);
  background-size: 64px 64px;
  mask-image: radial-gradient(circle at center, #000, transparent 76%);
}
.course-lock-atmosphere, .course-lock-atmosphere span { position: absolute; border: 1px solid rgba(205, 164, 91, .15); border-radius: 50%; pointer-events: none; }
.course-lock-atmosphere { right: -16vw; bottom: -30vw; width: 72vw; aspect-ratio: 1; }
.course-lock-atmosphere span:first-child { inset: 17%; }
.course-lock-atmosphere span:last-child { inset: 34%; }
.course-lock-card {
  position: relative;
  z-index: 2;
  width: min(620px, 100%);
  padding: clamp(30px, 5vw, 58px);
  border: 1px solid rgba(205, 164, 91, .28);
  background: linear-gradient(145deg, rgba(24, 19, 15, .96), rgba(9, 8, 7, .96));
  box-shadow: 0 34px 100px rgba(0, 0, 0, .52);
  backdrop-filter: blur(20px);
}
.course-lock-brand { display: flex; align-items: center; gap: 13px; color: rgba(246, 240, 231, .64); font-size: 14px; letter-spacing: .08em; }
.course-lock-brand span { display: grid; place-items: center; width: 38px; height: 38px; background: var(--cinnabar); color: #fff; font-size: 20px; font-weight: 900; transform: rotate(-3deg); }
.course-lock-brand strong { font-weight: 700; }
.course-lock-kicker { margin: clamp(42px, 8vh, 72px) 0 12px; color: var(--gold); font-size: 14px; font-weight: 800; letter-spacing: .14em; }
.course-lock-card h1 { margin: 0; color: var(--paper); font-size: clamp(42px, 5vw, 68px); font-weight: 900; line-height: 1.12; letter-spacing: -.045em; }
.course-lock-copy { margin: 18px 0 34px; color: rgba(246, 240, 231, .62); font-size: 17px; line-height: 1.7; }
.course-lock-card label { display: block; margin-bottom: 10px; color: rgba(246, 240, 231, .82); font-size: 15px; font-weight: 800; }
.course-lock-fields { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px; }
.course-lock-input {
  min-width: 0;
  min-height: 52px;
  padding: 0 18px;
  border: 1px solid rgba(205, 164, 91, .34);
  border-radius: 0;
  outline: 0;
  background: rgba(255, 255, 255, .035);
  color: var(--paper);
  font: 800 22px/1 var(--sans);
  letter-spacing: .28em;
  transition: border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.course-lock-input:focus { border-color: var(--gold-bright); background: rgba(255, 255, 255, .06); box-shadow: 0 0 0 3px rgba(205, 164, 91, .12); }
.course-lock-fields button { min-height: 52px; padding: 0 24px; border: 1px solid var(--cinnabar); background: var(--cinnabar); color: #fff; font-weight: 900; cursor: pointer; transition: transform .2s ease, background .2s ease; }
.course-lock-fields button:hover { transform: translateY(-2px); background: #cf513d; }
.course-lock-error { min-height: 24px; margin: 12px 0 0; color: #f28b7b; font-size: 15px; font-weight: 700; }
.course-lock-card.is-error { animation: courseLockError .42s ease; }
.is-course-locked .course-shell { visibility: hidden; }
.is-course-unlocking .course-lock { visibility: hidden; opacity: 0; transform: scale(1.025); pointer-events: none; }
@keyframes courseLockError { 25% { transform: translateX(-9px); } 50% { transform: translateX(8px); } 75% { transform: translateX(-5px); } }

@media (max-width: 760px) {
  .course-lock { align-items: center; padding: max(18px, env(safe-area-inset-top)) 16px max(18px, env(safe-area-inset-bottom)); }
  .course-lock-card { width: 100%; padding: 28px 22px 24px; }
  .course-lock-brand { font-size: 12px; }
  .course-lock-kicker { margin-top: 38px; }
  .course-lock-card h1 { font-size: clamp(38px, 12vw, 52px); }
  .course-lock-copy { margin-bottom: 26px; font-size: 16px; }
  .course-lock-fields { grid-template-columns: 1fr; }
  .course-lock-input, .course-lock-fields button { width: 100%; min-height: 54px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .001ms !important; }
  .scene, .reveal, .opening-photo { filter: none; }
  .motion-media { transform: none !important; }
  .photo-surface img { transform: none !important; }
}
