/* v7 补丁层：只覆盖 v6，不改 site.css / hero.css。 */

@property --beam-r { syntax: "<percentage>"; inherits: false; initial-value: 160%; }
@property --wipe { syntax: "<percentage>"; inherits: false; initial-value: 125%; }

html { overflow-x: clip; }
body { font-weight: 400; }

/* ---------- 硬伤 ---------- */

/* 首屏下三个大数字：Georgia 默认是高低不齐的旧式数字，换成正文同款等高数字 */
.year-facts strong {
  font: 300 clamp(56px, 8.8vw, 124px)/.9 var(--serif);
  letter-spacing: -.02em;
}

/* 产业生态轨道：logo 统一按高度定尺寸，不再随剩余空间撑大 */
.original-orbit-labels li > .original-image--logo {
  width: auto;
  max-width: none;
  height: clamp(20px, 8.4cqw, 55px);
  margin-bottom: 4px;
}

/* 过小的字 */
.original-dial-labels .dial-label { font-size: clamp(11px, 2.7cqw, 18px); }
.dial-center { font-size: clamp(11px, 2.9cqw, 19px); }
.original-axis-labels { font-size: clamp(12px, 1.5vw, 15px); }
.original-light-labels li { font-size: clamp(11px, 2.15cqw, 15px); }
.original-orbit-labels li { font-size: clamp(10px, 2.25cqw, 15px); }
.original-orbit-center { font-size: clamp(10px, 2.3cqw, 16px); }
.original-quote cite, .original-quote footer { font-size: 14px; }
.sample-cards small { font-size: 13px; }

/* 卡片内的图片比例不参与列宽计算，窄屏将三张卡片顺次排开。 */
#research-trends { scroll-margin-top: 72px; }
.research-trend-grid, .research-trend-grid > .original-card { grid-template-columns: minmax(0, 1fr); }
.research-trend-label {
  display: inline-block;
  margin-inline-start: .35em;
  color: var(--gold);
  font: 500 .58em/1.4 var(--sans);
  white-space: nowrap;
}
.research-trend-grid > .original-card > h3 {
  font-size: clamp(22px, 2vw, 28px);
  text-wrap: balance;
}
.research-trend-grid > .original-card > p { max-width: 36em; }
@media (width > 900px) {
  .research-trend-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* 三大趋势插图：窄屏下图比盒子高，压到了标题 */
@media (max-width: 1240px) {
  #research .research-trend { height: 150px; }
}

/* ---------- 层级 ---------- */

/* 「面向人群：」降为标签，后面那句话升为主句 */
.original-section--01 .original-heading { margin-bottom: 12px; }
.original-section--01 .original-heading::after { display: none; }
.original-section--01 .original-title,
.original-section--01 .original-body > h3 {
  color: var(--gold);
  font: 500 clamp(13px, 1.25vw, 16px)/1.5 var(--sans);
  letter-spacing: .2em;
}
#original-01 .original-body > .original-lead {
  max-width: 17em;
  color: var(--ivory);
  font-size: clamp(27px, 3.9vw, 50px);
  font-weight: 500;
  line-height: 1.3;
  text-wrap: balance;
}
.original-section--01 .original-lead::after {
  content: "";
  display: block;
  width: min(310px, 75%);
  height: 1px;
  margin-top: clamp(15px, 2vw, 28px);
  background: linear-gradient(90deg, var(--gold), transparent);
}
.original-body > .report-note { color: var(--quiet); font-size: .94em; }
.samples, .sample-cards > a { scroll-margin-top: 90px; }
/* “…” 收进 logo 墙的末尾 */
.logo-wall-more {
  position: relative;
  margin-top: calc(-1 * clamp(17px, 3.2vw, 36px) - 2.7em) !important;
  padding-right: clamp(14px, 3vw, 30px);
  color: #6f5d47 !important;
  font-size: 22px !important;
  line-height: 1.6;
  text-align: right;
  max-width: none !important;
}

/* ---------- 章节底色交替（整屏通栏） ---------- */
:is(#original-01, #research, #method, #year, #original-10, #original-12, #appointment)::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0 calc(50% - 50vw);
  background: var(--deep);
}

/* ---------- 九年报告：一年一行，左判断右结果 ---------- */
@media (min-width: 681px) {
  .original-report-list { grid-template-columns: 1fr; gap: 0; }
  .original-report-list > li {
    display: grid;
    grid-template-columns: clamp(150px, 17vw, 190px) minmax(0, 1fr);
    align-items: center;
    gap: clamp(22px, 3.4vw, 48px);
    padding-block: 22px;
    border-bottom: 1px solid var(--hair);
  }
  .report-cover { min-height: 158px; }
  .original-report-findings {
    display: grid;
    grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
    grid-template-rows: auto 1fr;
    grid-auto-flow: column;
    column-gap: clamp(20px, 3vw, 44px);
    margin: 0;
    font-size: 1em;
  }
  .original-report-findings dd + dt { margin-top: 0; }
  .original-report-findings dd { margin-top: 6px; }
}
.original-report-findings dt {
  color: var(--gold);
  font: 500 13px/1.5 var(--sans);
  letter-spacing: .1em;
}
.original-report-findings dd:first-of-type {
  color: var(--ivory);
  font-size: clamp(18px, 1.9vw, 24px);
  line-height: 1.42;
}
.original-report-list > li { transition: background-color .6s ease; }
.original-report-list > li:target {
  background: linear-gradient(90deg, #e4bd8c1c, transparent 70%);
}

/* ---------- 一年怎么走：下面的说明改成等宽四列 ---------- */
@media (width > 900px) {
  .original-section--08 .original-body > .original-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    column-gap: clamp(18px, 2.4vw, 32px);
  }
  .original-section--08 .original-body > .original-grid > .original-card:not(:last-child) { margin-right: 0; }
}

/* 港口场景图放大到接近版心宽 */
.original-section--07 .original-body > .original-figure:last-child img {
  width: min(100%, 820px);
  max-height: none;
}

/* ---------- 五个议题：扇区与下方问题联动 ---------- */
.original-dial-labels .dial-label { cursor: pointer; transition: color .25s ease, opacity .25s ease; }
.decision-art.has-active .dial-label:not(.is-active) { opacity: .5; }
.original-dial-labels .dial-label.is-active { color: var(--apricot); }
#decisions .original-table tr { transition: background-color .3s ease; }
#decisions .original-table tr.is-active { background: linear-gradient(90deg, #e4bd8c22, transparent 82%); }
#decisions .original-table tr.is-active th { color: #ffe6bf; }

/* ---------- 桌面吸顶导航 ---------- */
.v7-nav { display: none; }
@media (min-width: 900px) {
  .v7-nav {
    position: fixed;
    z-index: 30;
    inset: 0 0 auto;
    display: block;
    border-bottom: 1px solid var(--hair);
    background: rgba(23, 32, 44, .86);
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
    transform: translateY(-101%);
    transition: transform .35s ease;
  }
  .v7-nav.is-on { transform: none; }
  .v7-nav__in {
    display: flex;
    align-items: center;
    gap: clamp(16px, 2.4vw, 34px);
    width: var(--width);
    min-height: 54px;
    margin-inline: auto;
    font: 400 14px/1.4 var(--sans);
  }
  .v7-nav a { color: var(--soft); text-decoration: none; transition: color .2s ease; }
  .v7-nav a:hover, .v7-nav a.is-current { color: var(--apricot); }
  .v7-nav__brand { margin-right: auto; color: var(--ivory) !important; font: 500 16px/1.3 var(--serif); letter-spacing: .04em; }
  .v7-nav .button { min-height: 34px; padding: 5px 16px; gap: 10px; color: #231d18; font-size: 13px; }
  .v7-nav .button:hover { color: #231d18; }
  .original-section { scroll-margin-top: 62px; }
  .original-report-list > li { scroll-margin-block-start: 76px; }
}

/* ---------- 手机 ---------- */
@media (max-width: 700px) {
  /* 为什么是 BOB：四张卡改单栏 */
  .original-section--05 .original-grid { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
  /* 预约入口改成贴底细条，不再盖正文 */
  .mobile-cta {
    inset: auto 0 0;
    width: 100%;
    min-height: 48px;
    padding: 10px 20px calc(10px + env(safe-area-inset-bottom));
    border: 0;
    border-top: 1px solid #e4bd8c88;
    background: rgba(23, 32, 44, .93);
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
    color: var(--apricot);
    box-shadow: 0 -10px 26px #0d141d77;
  }
  .mobile-cta:hover { background: rgba(23, 32, 44, .93); }

  /* 带图标的表头：图标在上、文字不拆行 */
  #decisions .original-table th,
  #original-12 .original-body > .original-table-wrap:first-child th { width: auto; min-width: 0; white-space: nowrap; }

  /* 三张多列表格改成一行一张卡 */
  :is(#ecosystem, #original-11, #original-13) .original-table thead { display: none; }
  :is(#ecosystem, #original-11, #original-13) .original-table,
  :is(#ecosystem, #original-11, #original-13) .original-table tbody,
  :is(#ecosystem, #original-11, #original-13) .original-table tr,
  :is(#ecosystem, #original-11, #original-13) .original-table th,
  :is(#ecosystem, #original-11, #original-13) .original-table td {
    display: block;
    width: auto !important;
    font-size: 1rem;
  }
  :is(#ecosystem, #original-11, #original-13) .original-table tr {
    padding-block: 18px;
    border-bottom: 1px solid var(--hair);
  }
  :is(#ecosystem, #original-11, #original-13) .original-table th,
  :is(#ecosystem, #original-11, #original-13) .original-table td {
    padding: 0;
    border: 0;
    line-height: 1.75;
  }
  :is(#ecosystem, #original-11, #original-13) .original-table tbody th { padding-bottom: 8px; font-size: 1.12rem; }
  :is(#ecosystem, #original-11, #original-13) .original-table td + td { margin-top: 12px; }
  :is(#ecosystem, #original-11, #original-13) .original-table td[data-label]::before {
    content: attr(data-label);
    display: block;
    margin-bottom: 2px;
    color: var(--gold);
    font: 500 12px/1.6 var(--sans);
    letter-spacing: .1em;
  }
  #ecosystem .original-table th .original-image { max-height: 30px; }
  #original-11 .original-table tr { padding: 16px 14px; border-color: #b8a991; }
  #original-11 .original-table td[data-label]::before { color: #86623a; }
  #original-11 .original-table td:last-child { margin-inline: -8px; padding: 10px 8px; }
}

/* ---------- 动效 ---------- */

/* 章节内容滚到才轻轻显出，只播一次 */
.rv {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity .8s ease-out var(--rv-d, 0ms), transform .8s cubic-bezier(.2, .7, .2, 1) var(--rv-d, 0ms);
}
.rv.in { opacity: 1; transform: none; }

/* 散点插图进场：原图由淡到实，粒子在 interior-motion.js 里聚拢 */
.particle-icon > img { transition: opacity 1.4s ease-out; }
.particle-icon.pre-enter > img { opacity: .3; }

/* 强光图：光从手电处扫到巨人，阴影随后显出 */
.beam-art > img {
  -webkit-mask-image: radial-gradient(circle at 16.33% 77.79%, #000 calc(var(--beam-r) - 16%), transparent var(--beam-r));
  mask-image: radial-gradient(circle at 16.33% 77.79%, #000 calc(var(--beam-r) - 16%), transparent var(--beam-r));
  transition: --beam-r 2.8s cubic-bezier(.3, .1, .2, 1);
}
.beam-art.beam-pre > img { --beam-r: 13%; }
.original-light-labels li { transition: opacity .7s ease; }
.beam-art.beam-pre + figcaption .original-light-labels li { opacity: 0; transition: none; }
.original-light-labels li:nth-child(1) { transition-delay: .2s; }
.original-light-labels li:nth-child(2) { transition-delay: 1s; }
.original-light-labels li:nth-child(3) { transition-delay: 1.9s; }
.original-light-labels li:nth-child(4) { transition-delay: 2.5s; }

/* 一年怎么走：时间轴从诊断亮到固化 */
[data-original-diagram="annual-axis"] > img {
  -webkit-mask-image: linear-gradient(90deg, #000 calc(var(--wipe) - 14%), transparent var(--wipe));
  mask-image: linear-gradient(90deg, #000 calc(var(--wipe) - 14%), transparent var(--wipe));
  transition: --wipe 2.4s ease-in-out;
}
[data-original-diagram="annual-axis"].axis-pre > img { --wipe: 0%; }
.original-phase-labels li { transition: opacity .7s ease, transform .7s ease; }
.axis-pre .original-phase-labels li { opacity: 0; transform: translateY(8px); transition: none; }
.original-phase-labels li:nth-child(1) { transition-delay: .25s; }
.original-phase-labels li:nth-child(2) { transition-delay: .8s; }
.original-phase-labels li:nth-child(3) { transition-delay: 1.4s; }
.original-phase-labels li:nth-child(4) { transition-delay: 2s; }

/* 九年报告：年份点沿时间线依次亮起 */
.original-axis-labels::before { transform-origin: left center; transition: transform 1.5s ease-out; }
.original-axis-labels li { transition: opacity .5s ease calc(var(--i, 0) * 130ms + 150ms); }
.original-axis-labels li::before { transition: transform .5s cubic-bezier(.3, 1.5, .5, 1) calc(var(--i, 0) * 130ms + 150ms); }
.axis-pre .original-axis-labels::before { transform: scaleX(0); transition: none; }
.axis-pre .original-axis-labels li { opacity: 0; transition: none; }
.axis-pre .original-axis-labels li::before { transform: translateX(-50%) scale(0); transition: none; }

/* 页尾场景：左右铺满整屏；缓慢漂移时始终略放大，边缘不露底 */
#appointment .original-body { grid-template-columns: minmax(0, 1fr); }
.original-end { width: 100vw; justify-self: center; }
.original-end > img {
  height: clamp(150px, 22vw, 340px);
  transform-origin: 50% 100%;
  animation: v7-end-drift 13s ease-in-out infinite alternate;
}
@keyframes v7-end-drift {
  from { transform: scale(1.04) translate3d(-.6%, 0, 0); }
  to { transform: scale(1.075) translate3d(.6%, 0, 0); }
}

@media (prefers-reduced-motion: reduce) {
  .rv, .rv.in { opacity: 1; transform: none; transition: none; }
  .particle-icon.pre-enter > img { opacity: 1; }
  .beam-art > img, [data-original-diagram="annual-axis"] > img { -webkit-mask-image: none; mask-image: none; }
  .original-end > img { animation: none; }
  .v7-nav { transition: none; }
}

/* 成果填写示例 */
.sample-page main { width: min(92vw, 710px); }
.paper-full .paper-tag { margin-bottom: 10px; }
.paper-summary {
  margin: 0 0 20px;
  color: #24242b;
  font-size: clamp(16px, 2.5vw, 19px);
  line-height: 1.55;
}
.paper-full dl { margin-block: 0; }
.paper-full dt { font-size: 14px; }
.paper-full dd { font-size: 16px; line-height: 1.65; }
