/* 首页 v1.14 本地候选
   页面签名：全球门户 → 公司与信任 → 咨询 → 产品 → 重点议题 → 研究 → 动态 → 客户实践。
   本文件只作用于首页，不覆盖共享页面组件。 */

.ztc-home-v2 {
    --home-ink: #102A54;
    --home-deep: #072A4A;
    --home-deep-2: #0A3A66;
    --home-blue: var(--ztc-action);
    --home-accent: var(--ztc-brand-primary);
    --home-cyan: var(--ztc-brand-cyan);
    --home-paper: #F4F8FC;
    --home-line: #DCE6EF;
    --home-gradient: var(--ztc-banner-luminous);
    overflow: clip;
    background: #fff;
}

/* Keep short, high-value phrases intact while allowing the full sentence to reflow. */

/* Progressive enhancement for Chinese copy; unsupported browsers keep normal wrapping. */
@supports (word-break: auto-phrase) {
    .ztc-home-v2 :where(h1, h2, h3, p, li) { word-break: auto-phrase; }
}

.home2-kicker {
    margin: 0 0 20px;
    color: var(--home-blue);
    font-family: var(--ztc-sans);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .2em;
    line-height: 1.4;
}

.home2-kicker::before {
    content: "";
    display: inline-block;
    width: 24px;
    height: 2px;
    margin-right: 11px;
    vertical-align: .25em;
    background: var(--home-accent);
}

.home2-kicker--light { color: #9EDFF4; }
.home2-kicker--light::before { background: var(--home-cyan); }

/* 首页首屏使用浅底全球资产，初始导航切为可读的浅底状态。 */
body.home .ztc-header--overlay { color: var(--home-ink); }
body.home .ztc-header--overlay .ztc-header-inner {
    background: rgba(255, 255, 255, .92);
    border-color: rgba(0, 103, 180, .18);
    box-shadow: 0 10px 34px rgba(10, 43, 76, .10);
}
body.home .ztc-header--overlay .ztc-logo-white { opacity: 0; }
body.home .ztc-header--overlay .ztc-logo-color { opacity: 1; }
body.home .ztc-header--overlay .ztc-nav-toggle,
body.home .ztc-header--overlay .ztc-nav-link,
body.home .ztc-header--overlay .ztc-dropdown-toggle,
body.home .ztc-header--overlay .ztc-icon-link { color: var(--home-ink); }
body.home .ztc-header--overlay .ztc-btn-nav-ghost {
    color: var(--home-blue);
    border-color: rgba(0, 103, 180, .55);
}
body.home .ztc-hamburger {
    min-width: 44px;
    min-height: 44px;
    align-items: center;
    justify-content: center;
}
body.home .ztc-totop-float {
    opacity: 0;
    pointer-events: none;
    transform: translateY(10px);
}
body.home.home2-past-hero .ztc-totop-float {
    opacity: 1;
    pointer-events: auto;
    transform: none;
}

/* --------------------------------------------------------------------------
   Screen 1 · 全球信号场
   -------------------------------------------------------------------------- */
.home2-hero {
    --home-solar-dx: 0%;
    --home-solar-dy: 0%;
    --home-shadow-dx: 0%;
    --home-shadow-dy: 0%;
    --home-solar-opacity: .72;
    --home-shadow-opacity: .58;
    position: relative;
    isolation: isolate;
    display: flex;
    min-height: calc(100svh - var(--ztc-topbar-h));
    flex-direction: column;
    justify-content: flex-end;
    overflow: hidden;
    background:
        radial-gradient(ellipse at 82% 46%, rgba(255, 255, 255, .62) 0%, rgba(97, 204, 240, .24) 34%, transparent 64%),
        radial-gradient(ellipse at 73% 67%, rgba(14, 85, 145, .055) 0%, transparent 55%),
        radial-gradient(ellipse at 61% 112%, rgba(0, 142, 211, .12) 0%, transparent 48%),
        linear-gradient(118deg, #fbfdff 0%, #eff8fd 45%, #dceff9 100%);
}

.home2-hero::before {
    content: "";
    position: absolute;
    z-index: 0;
    inset: 0;
    background:
        radial-gradient(ellipse 49% 76% at 25% 51%, rgba(255, 255, 255, .97) 0%, rgba(255, 255, 255, .87) 44%, rgba(255, 255, 255, .35) 72%, transparent 91%),
        radial-gradient(ellipse 36% 32% at 57% 9%, rgba(255, 255, 255, .42), transparent 78%);
    pointer-events: none;
}

.home2-hero-media {
    position: absolute;
    z-index: 1;
    inset: 0;
    overflow: hidden;
    isolation: isolate;
    pointer-events: none;
}

.home2-hero-media::before,
.home2-hero-media::after {
    content: "";
    position: absolute;
    z-index: 0;
    pointer-events: none;
}

.home2-hero-media::before {
    inset: -16%;
    background:
        radial-gradient(ellipse 35% 27% at 78% 38%, rgba(255, 255, 255, .82) 0%, rgba(97, 204, 240, .18) 40%, transparent 76%),
        radial-gradient(ellipse 42% 56% at 86% 61%, rgba(0, 142, 211, .1) 0%, transparent 72%);
    opacity: var(--home-solar-opacity);
    will-change: transform, opacity;
    animation: home2-ambient-field-a 22s ease-in-out infinite alternate;
}

.home2-hero-media::after {
    inset: -10%;
    background:
        radial-gradient(ellipse 38% 46% at 70% 62%, rgba(16, 91, 151, .11) 0%, transparent 74%),
        radial-gradient(ellipse 31% 41% at 84% 38%, rgba(255, 255, 255, .58) 0%, transparent 75%);
    opacity: var(--home-shadow-opacity);
    will-change: transform, opacity;
    animation: home2-ambient-field-b 28s ease-in-out -9s infinite alternate;
}

@keyframes home2-ambient-field-a {
    0% { transform: translate3d(calc(var(--home-solar-dx) - 1.4%), calc(var(--home-solar-dy) - .8%), 0) scale(.98); }
    100% { transform: translate3d(calc(var(--home-solar-dx) + 1.8%), calc(var(--home-solar-dy) + 1.2%), 0) scale(1.035); }
}

@keyframes home2-ambient-field-b {
    0% { transform: translate3d(calc(var(--home-shadow-dx) + 1.2%), calc(var(--home-shadow-dy) + .8%), 0) scale(1.02); }
    100% { transform: translate3d(calc(var(--home-shadow-dx) - 1.7%), calc(var(--home-shadow-dy) - 1.1%), 0) scale(.97); }
}

.home2-hero-globe {
    --gg-primary: #008ED3;
    --gg-navy: #0067B4;
    --gg-deep: #071D35;
    --gg-cyan: #61CCF0;
    position: absolute;
    z-index: 2;
    top: 53%;
    right: max(12px, calc((100vw - 1500px) / 2 + 12px));
    width: min(64vw, 100svh, 890px);
    transform: translateY(-50%);
    filter: drop-shadow(0 34px 54px rgba(7, 42, 74, .11));
    opacity: 1;
    pointer-events: auto;
}

.home2-hero-inner {
    position: relative;
    z-index: 2;
    display: flex;
    width: 100%;
    flex: 1;
    align-items: center;
    padding-top: 164px;
    padding-bottom: 72px;
    pointer-events: none;
}

.home2-hero-copy {
    width: min(590px, 42%);
    pointer-events: auto;
}

.home2-hero-copy :where(a, button) { pointer-events: auto; }

.home2-hero-copy h1 {
    margin: 0;
    max-width: 640px;
    color: var(--home-ink);
    font-size: clamp(54px, 5.4vw, 76px);
    font-weight: 600;
    letter-spacing: -.02em;
    line-height: 1.04;
    text-wrap: balance;
}

.home2-hero-copy h1 span {
    display: block;
    margin-top: 8px;
    color: var(--home-blue);
}

.home2-hero-lead {
    max-width: 590px;
    margin: 30px 0 0;
    color: #334E6F;
    font-size: clamp(18px, 1.55vw, 21px);
    font-weight: 500;
    line-height: 1.85;
    text-wrap: balance;
}

.home2-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 38px;
}

.home2-btn {
    display: inline-flex;
    min-height: 50px;
    align-items: center;
    justify-content: center;
    padding: 12px 30px;
    border: 1px solid var(--home-blue);
    border-radius: 999px;
    font-size:14px;
    font-weight: 650;
    transition: color .24s ease, background-color .24s ease, transform .24s ease;
}

.home2-btn--primary { color: #fff; background: var(--home-blue); }
.home2-btn--secondary { color: var(--home-blue); background: rgba(255, 255, 255, .72); }
.home2-btn:hover { transform: translateY(-2px); }
.home2-btn--primary:hover { color: #fff; background: var(--ztc-action-hover); }
.home2-btn--secondary:hover { color: #fff; background: var(--home-blue); }

.home2-next {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    gap: 9px;
    margin-top: 28px;
    color: #49637F;
    font-size: 13px;
    font-weight: 600;
}

.home2-next svg { transition: transform .24s ease; }
.home2-next:hover { color: var(--home-blue); }
.home2-next:hover svg { transform: translateY(3px); }

/* --------------------------------------------------------------------------
   Desktop fullscreen · 全球信息屏
   默认不参与首页排版；只有地球组件确认进入全屏后才显示与运行。
   -------------------------------------------------------------------------- */
.home2-global-screen {
    display: none;
}

body:is(.home2-globe-fullscreen, .home2-screen-lock) {
    overflow: hidden;
    overscroll-behavior: none;
}

@media (min-width: 992px) and (pointer: fine) {
    .home2-hero:is(:fullscreen, :-webkit-full-screen, .is-globe-fullscreen) {
        --home2-fullscreen-globe-cap: 1240px;
        position: fixed;
        z-index: 2500;
        inset: 0;
        width: 100vw;
        height: 100dvh;
        min-height: 100dvh;
        max-height: none;
        padding: 0;
        justify-content: center;
        overflow: hidden;
        overscroll-behavior: none;
        background:
            radial-gradient(ellipse at 84% 46%, rgba(255, 255, 255, .68) 0%, rgba(97, 204, 240, .25) 36%, transparent 65%),
            radial-gradient(ellipse at 72% 68%, rgba(14, 85, 145, .065) 0%, transparent 57%),
            radial-gradient(ellipse at 56% 112%, rgba(0, 142, 211, .13) 0%, transparent 51%),
            linear-gradient(118deg, #fbfdff 0%, #eff8fd 45%, #dceff9 100%);
    }

    .home2-hero:is(:fullscreen, :-webkit-full-screen, .is-globe-fullscreen)::before {
        background:
            radial-gradient(ellipse 44% 78% at 19% 50%, rgba(255, 255, 255, .98) 0%, rgba(255, 255, 255, .91) 49%, rgba(255, 255, 255, .48) 75%, transparent 94%),
            radial-gradient(ellipse 39% 34% at 55% 5%, rgba(255, 255, 255, .44), transparent 80%);
    }

    .home2-hero:is(:fullscreen, :-webkit-full-screen, .is-globe-fullscreen) .home2-hero-inner {
        visibility: hidden;
        opacity: 0;
        pointer-events: none;
    }

    .home2-hero:is(:fullscreen, :-webkit-full-screen, .is-globe-fullscreen) .home2-hero-media {
        position: absolute;
        inset: 0;
        height: auto;
        overflow: hidden;
    }

    .home2-hero:is(:fullscreen, :-webkit-full-screen, .is-globe-fullscreen) .home2-hero-media::before {
        inset: -22%;
        opacity: calc(var(--home-solar-opacity) + .08);
    }

    .home2-hero:is(:fullscreen, :-webkit-full-screen, .is-globe-fullscreen) .home2-hero-media::after {
        inset: -17%;
        opacity: calc(var(--home-shadow-opacity) + .06);
    }

    .home2-hero:is(:fullscreen, :-webkit-full-screen, .is-globe-fullscreen) .home2-hero-globe {
        top: 50%;
        right: clamp(40px, 4.5vw, 88px);
        left: auto;
        width: min(72vw, 96dvh, var(--home2-fullscreen-globe-cap));
        max-width: none;
        transform: translateY(-50%);
        filter: drop-shadow(0 38px 64px rgba(7, 42, 74, .13));
        transition: width .72s cubic-bezier(.16, 1, .3, 1), right .72s cubic-bezier(.16, 1, .3, 1), filter .72s ease;
    }

    .home2-hero:is(:fullscreen, :-webkit-full-screen, .is-globe-fullscreen) .home2-global-screen {
        position: absolute;
        z-index: 3;
        top: 0;
        bottom: 0;
        left: clamp(44px, 4.6vw, 88px);
        display: grid;
        width: clamp(300px, 28vw, 400px);
        height: min(88dvh, 760px);
        align-self: center;
        grid-template-rows: auto 224px;
        align-content: center;
        gap: clamp(18px, 2.2vh, 24px);
        margin: auto 0;
        padding: 0;
        color: var(--home-ink);
        pointer-events: auto;
        animation: home2-screen-enter .72s cubic-bezier(.16, 1, .3, 1) both;
    }

    .home2-global-screen__time {
        display: grid;
        grid-template-rows: auto auto auto;
        gap: 6px;
        min-height: 0;
    }

    .home2-global-screen__clock,
    [data-home2-screen-clock] {
        display: block;
        color: var(--home-ink);
        font-family: var(--ztc-mono, "SFMono-Regular", Consolas, monospace);
        font-size: clamp(52px, 6.6vh, 76px);
        font-weight: 450;
        font-variant-numeric: tabular-nums;
        letter-spacing: -.045em;
        line-height: .96;
    }

    .home2-global-screen__date,
    [data-home2-screen-date] {
        color: #49637f;
        font-size: clamp(12px, 1.35vh, 14px);
        font-weight: 600;
        letter-spacing: .04em;
        line-height: 1.5;
    }

    .home2-global-screen__calendar,
    [data-home2-screen-calendar] {
        width: 100%;
        margin-top: clamp(7px, 1vh, 11px);
        padding: clamp(10px, 1.35vh, 14px) 0 clamp(11px, 1.5vh, 15px);
        border-top: 1px solid rgba(0, 103, 180, .15);
        border-bottom: 1px solid rgba(0, 103, 180, .15);
    }

    [data-home2-calendar-title] {
        margin: 0;
        color: var(--home-ink);
        font-size: clamp(14px, 1.55vh, 16px);
        font-weight: 700;
        letter-spacing: .015em;
        text-align: center;
    }

    .home2-global-screen__calendar-header {
        display: grid;
        grid-template-columns: 44px minmax(0, 1fr) 44px;
        min-height: 44px;
        align-items: center;
        gap: 6px;
        margin-bottom: 2px;
    }

    :is([data-home2-calendar-prev], [data-home2-calendar-next], .home2-global-screen__calendar-button) {
        display: inline-flex;
        width: 44px;
        height: 44px;
        align-items: center;
        justify-content: center;
        padding: 0;
        border: 0;
        border-radius: 50%;
        background: transparent;
        color: #496b8a;
        cursor: pointer;
        transition: color .2s ease, background-color .2s ease;
    }

    :is([data-home2-calendar-prev], [data-home2-calendar-next], .home2-global-screen__calendar-button):hover {
        color: var(--home-blue);
        background: rgba(0, 142, 211, .07);
    }

    :is([data-home2-calendar-prev], [data-home2-calendar-next], .home2-global-screen__calendar-button):focus-visible {
        outline: 2px solid var(--home-blue);
        outline-offset: 1px;
    }

    :is([data-home2-calendar-prev], [data-home2-calendar-next], .home2-global-screen__calendar-button):disabled {
        opacity: .3;
        cursor: default;
    }

    .home2-global-screen__calendar-grid {
        display: grid;
        grid-template-columns: repeat(7, minmax(0, 1fr));
        align-items: center;
    }

    .home2-calendar-row { display: contents; }

    .home2-calendar-weekday,
    .home2-calendar-day {
        display: inline-flex;
        height: clamp(24px, 3.05vh, 32px);
        align-items: center;
        justify-content: center;
        color: #365675;
        font-family: var(--ztc-sans);
        font-size: clamp(10px, 1.25vh, 12px);
        font-variant-numeric: tabular-nums;
    }

    .home2-calendar-weekday {
        height: clamp(19px, 2.3vh, 25px);
        color: #7890a8;
        font-size:var(--ztc-fs-micro);
        font-weight: 650;
    }

    .home2-calendar-day {
        justify-self: center;
        width: clamp(24px, 2.8vh, 30px);
        height: clamp(24px, 2.8vh, 30px);
        border-radius: 50%;
    }

    .home2-calendar-day.is-adjacent-month { color: rgba(54, 86, 117, .28); }
    .home2-calendar-day.is-today {
        color: #fff;
        background: var(--home-blue);
        box-shadow: 0 0 0 4px rgba(0, 103, 180, .09);
        font-weight: 750;
    }

    .home2-global-screen__content {
        display: grid;
        height: 224px;
        grid-template-rows: 44px 170px;
        gap: 10px;
        min-height: 0;
    }

    .home2-global-screen__brand {
        display: inline-flex;
        width: fit-content;
        min-height: 44px;
        align-items: center;
    }

    .home2-global-screen__logo {
        display: block;
        width: clamp(94px, 6.7vw, 118px);
        height: auto;
        object-fit: contain;
        object-position: left center;
    }

    .home2-global-screen__feed,
    [data-home2-screen-feed] {
        display: grid;
        height: 170px;
        min-height: 170px;
        max-height: 170px;
        grid-template-rows: 18px 58px 23px 44px;
        gap: 7px;
        align-content: stretch;
        overflow: hidden;
    }

    .home2-global-screen__feed-meta {
        display: flex;
        overflow: hidden;
        min-height: 18px;
        align-items: center;
        flex-wrap: wrap;
        gap: 7px;
        color: #66809a;
        font-size: 11px;
        font-weight: 650;
        letter-spacing: .08em;
        line-height: 1.45;
        text-transform: uppercase;
        white-space: nowrap;
        transition: opacity .22s ease, transform .22s ease;
    }

    .home2-global-screen__feed-channel,
    [data-home2-screen-feed-channel] { color: var(--home-blue); }

    .home2-global-screen__feed-date,
    [data-home2-screen-feed-date] { color: #7890a8; }

    .home2-global-screen__feed-title,
    [data-home2-screen-feed-title] {
        display: -webkit-box;
        overflow: hidden;
        color: var(--home-ink);
        font-family: var(--ztc-serif);
        font-size: clamp(20px, 2.05vh, 25px);
        font-weight: 650;
        letter-spacing: -.015em;
        line-height: 1.46;
        height: 58px;
        min-height: 58px;
        max-height: 58px;
        text-wrap: balance;
        transition: color .2s ease, opacity .22s ease, transform .22s ease;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }

    :is(a[data-home2-feed-title], a[data-home2-screen-feed-title]):hover { color: var(--home-blue); }
    :is(a[data-home2-feed-title], a[data-home2-screen-feed-title]):focus-visible {
        border-radius: 4px;
        outline: 2px solid var(--home-blue);
        outline-offset: 4px;
    }

    .home2-global-screen__feed-summary,
    [data-home2-screen-feed-summary] {
        display: -webkit-box;
        overflow: hidden;
        margin: 0;
        height: 23px;
        min-height: 23px;
        max-height: 23px;
        color: #526d88;
        font-size: clamp(12px, 1.35vh, 14px);
        line-height: 1.65;
        transition: opacity .22s ease, transform .22s ease;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 1;
    }

    :is([data-home2-feed-summary], [data-home2-screen-feed-summary])[hidden] {
        display: -webkit-box;
        visibility: hidden;
    }

    .home2-global-screen__feed-footer {
        display: grid;
        grid-template-columns: auto minmax(72px, 1fr) 44px;
        gap: 12px;
        align-items: center;
        height: 44px;
        margin: 0;
    }

    .home2-global-screen__feed-count,
    [data-home2-screen-feed-count] {
        min-width: 48px;
        color: #66809a;
        font-family: var(--ztc-mono, "SFMono-Regular", Consolas, monospace);
        font-size:var(--ztc-fs-micro);
        font-variant-numeric: tabular-nums;
        letter-spacing: .08em;
    }

    .home2-global-screen__feed-progress {
        position: relative;
        display: block;
        height: 1px;
        overflow: hidden;
        background: rgba(0, 103, 180, .17);
    }

    [data-home2-feed-progress],
    [data-home2-screen-feed-progress] {
        display: block;
        width: 100%;
        height: 100%;
        background: var(--home-blue);
        transform: scaleX(0);
        transform-origin: left center;
    }

    [data-home2-feed-progress].is-running,
    [data-home2-screen-feed-progress].is-running {
        animation: home2-screen-feed-progress var(--home2-screen-progress-duration, 6000ms) linear both;
    }

    [data-home2-screen-feed].is-feed-paused :is([data-home2-feed-progress], [data-home2-screen-feed-progress]) {
        animation-play-state: paused;
    }

    .home2-global-screen__feed-toggle,
    [data-home2-feed-toggle],
    [data-home2-screen-feed-toggle] {
        position: relative;
        display: inline-flex;
        width: 44px;
        height: 44px;
        align-items: center;
        justify-content: center;
        padding: 0;
        border: 0;
        border-radius: 50%;
        background: transparent;
        color: var(--home-blue);
        cursor: pointer;
        font-size: 0;
    }

    :is([data-home2-feed-toggle], [data-home2-screen-feed-toggle])::before {
        content: "Ⅱ";
        font: 700 11px/1 var(--ztc-sans);
        letter-spacing: -.08em;
    }

    :is([data-home2-feed-toggle], [data-home2-screen-feed-toggle])[data-feed-mode="play"]::before { content: "▶"; font-size:var(--ztc-fs-micro); }
    :is([data-home2-feed-toggle], [data-home2-screen-feed-toggle])[data-feed-mode="next"]::before { content: "→"; font-size: 16px; }
    :is([data-home2-feed-toggle], [data-home2-screen-feed-toggle]):hover { background: rgba(0, 142, 211, .08); }
    :is([data-home2-feed-toggle], [data-home2-screen-feed-toggle]):focus-visible {
        outline: 2px solid var(--home-blue);
        outline-offset: 1px;
    }
    :is([data-home2-feed-toggle], [data-home2-screen-feed-toggle]):disabled { opacity: .3; cursor: default; }

    [data-home2-screen-feed].is-switching :is(
        [data-home2-feed-channel], [data-home2-screen-feed-channel],
        [data-home2-feed-date], [data-home2-screen-feed-date],
        [data-home2-feed-title], [data-home2-screen-feed-title],
        [data-home2-feed-summary], [data-home2-screen-feed-summary]
    ) {
        opacity: 0;
        transform: translateY(-8px);
    }

    .home2-hero.is-screen-idle [data-global-globe] .gg-controls { opacity: .55; }
    .home2-hero.is-screen-idle [data-global-globe] .gg-controls:is(:hover, :focus-within) { opacity: 1; }
}

@media (min-width: 2560px) and (pointer: fine) {
    .home2-hero:is(:fullscreen, :-webkit-full-screen, .is-globe-fullscreen) {
        --home2-fullscreen-globe-cap: 1600px;
    }
}

@keyframes home2-screen-enter {
    from { opacity: 0; transform: translateY(14px); }
    to { opacity: 1; transform: none; }
}

@keyframes home2-screen-feed-progress {
    from { transform: scaleX(0); }
    to { transform: scaleX(1); }
}

.home2-proof {
    position: relative;
    z-index: 2;
    width: 100%;
    margin-bottom: 30px;
    padding-top: 0;
    padding-bottom: 0;
}

.home2-proof-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    background: #fff;
    border: 1px solid var(--home-line);
    border-bottom: 0;
}

.home2-proof-grid article {
    position: relative;
    display: flex;
    min-height: 126px;
    flex-direction: column;
    justify-content: center;
    padding: 24px 28px;
}

.home2-proof-grid article + article { border-left: 1px solid var(--home-line); }

.home2-proof-grid strong {
    color: var(--home-ink);
    font-family: var(--ztc-serif);
    font-size: clamp(32px, 3vw, 44px);
    font-weight: 650;
    line-height: 1;
}

.home2-proof-grid sup {
    position: relative;
    top: -.45em;
    margin-left: 2px;
    color: var(--home-accent);
    font-family: var(--ztc-sans);
    font-size: .42em;
    font-weight: 700;
}

.home2-proof-grid span {
    max-width: 210px;
    margin-top: 12px;
    color: #53677F;
    font-size: 13px;
    line-height: 1.55;
}

.home2-proof-note {
    margin: 0;
    padding: 9px 18px 10px;
    color: #66778A;
    background: #F8FAFC;
    border: 1px solid var(--home-line);
    font-size: 11px;
    text-align: right;
}

/* --------------------------------------------------------------------------
   洞察精选：研究与观点并读，专题入口收束；字号按编辑层级局部推导。
   -------------------------------------------------------------------------- */
.home2-insights { padding: 88px 0 66px; background: var(--ztc-white); scroll-margin-top: 90px; }
.home2-insights-head { margin-bottom: 44px; }
.home2-insights-head h2 { margin: 0; color: var(--home-ink); font-size: clamp(38px, 4.2vw, 54px); line-height: 1.15; }
.home2-editorial-link { display: inline-flex; min-height: 44px; align-items: center; gap: 12px; color: var(--home-blue); font-size: 14px; font-weight: 650; line-height: 1.5; }
.home2-editorial-link svg { flex: none; transition: transform .2s ease; }
.home2-editorial-link:hover { color: var(--ztc-action-hover); }
.home2-editorial-link:hover svg { transform: translateX(4px); }
.home2-insights-grid { display: grid; grid-template-columns: minmax(0, 1.48fr) minmax(0, 1fr); gap: 48px; padding-top: 28px; border-top: 1px solid var(--home-line); }
.home2-insights-grid--single { grid-template-columns: 1fr; }
.home2-editorial-label { margin: 0 0 24px; color: var(--home-blue); font-family: var(--ztc-sans); font-size: 13px; font-weight: 650; letter-spacing: .08em; line-height: 1.6; }
.home2-research { min-width: 0; scroll-margin-top: 100px; }
.home2-research-main { display: grid; grid-template-columns: minmax(160px, .58fr) minmax(0, 1fr); gap: 26px; align-items: start; }
.home2-research-main:not(:has(.home2-research-visual)) { grid-template-columns: 1fr; }
.home2-research-visual { display: grid; place-items: center; aspect-ratio: 3 / 4; overflow: hidden; background: var(--home-paper); border-radius: 3px; }
.home2-research-visual img { width: 140%; max-width: none; height: auto; transition: transform .25s ease; }
.home2-research-visual:hover img { transform: translateY(-3px); }
.home2-research-copy { min-width: 0; }
.home2-research-copy h3 { margin: -3px 0 18px; color: var(--home-ink); font-size: clamp(27px, 2.3vw, 34px); font-weight: 650; line-height: 1.38; text-wrap: balance; }
.home2-research-copy h3 a { color: inherit; }
.home2-research-copy h3 a:hover { color: var(--home-blue); }
.home2-research-excerpt { margin: 0 0 18px; color: var(--ztc-text-muted); font-size: 14px; line-height: 1.85; }
.home2-research-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 28px 0 0; padding: 22px 0 0; border-top: 1px solid var(--home-line); }
.home2-research-facts > div { padding: 0 15px; }
.home2-research-facts > div:first-child { padding-left: 0; }
.home2-research-facts > div + div { border-left: 1px solid var(--home-line); }
.home2-research-facts dt { color: var(--home-ink); font-family: var(--ztc-serif); font-size: clamp(24px, 2.15vw, 30px); font-weight: 650; line-height: 1.2; }
.home2-research-facts dd { margin: 8px 0 0; color: var(--ztc-text-muted); font-size: 12px; line-height: 1.6; }
.home2-research-library { margin-top: 14px; }
.home2-perspectives { padding-left: 36px; border-left: 1px solid var(--home-line); min-width: 0; }
.home2-perspective-list { list-style: none; margin: 0; padding: 0; }
.home2-perspective-list li + li { border-top: 1px solid var(--home-line); padding-top: 19px; margin-top: 19px; }
.home2-perspective-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0 0 10px; color: var(--ztc-text-muted); font-size: 12px; line-height: 1.6; }
.home2-perspective-meta > span { color: var(--home-blue); }
.home2-perspective-list h4 { margin: 0; font-family: var(--ztc-serif); font-size: 22px; font-weight: 600; line-height: 1.55; text-wrap: pretty; }
.home2-perspective-list h4 a { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 44px; padding-block: 2px; color: var(--home-ink); }
.home2-perspective-list h4 svg { flex: none; color: var(--home-blue); transition: transform .2s ease; }
.home2-perspective-list h4 a:hover { color: var(--home-blue); }
.home2-perspective-list h4 a:hover svg { transform: translateX(4px); }
.home2-perspectives > .home2-editorial-link { margin-top: 19px; }
.home2-insights .home2-topics { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 26px; margin-top: 35px; padding-top: 25px; border-top: 1px solid var(--home-line); scroll-margin-top: 100px; }
.home2-topics .home2-editorial-label { margin: 0; white-space: nowrap; }
.home2-topic-links { display: flex; flex-wrap: wrap; column-gap: 20px; }
.home2-topic-links a { display: inline-flex; min-height: 44px; align-items: center; gap: 8px; color: var(--home-ink); font-size: 14px; line-height: 1.5; }
.home2-topic-links svg { flex: none; width: 13px; color: var(--home-blue); transition: transform .2s ease; }
.home2-topic-links a:hover { color: var(--home-blue); }
.home2-topic-links a:hover svg { transform: translateX(3px); }
.home2-insights :where(a):focus-visible { outline: 2px solid var(--ztc-action); outline-offset: 5px; border-radius: 2px; }

@media (max-width: 1120px) {
    .home2-insights-grid { gap: 30px; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); }
    .home2-insights-grid--single { grid-template-columns: 1fr; }
    .home2-research-main { gap: 20px; grid-template-columns: minmax(140px, .66fr) minmax(0, 1fr); }
    .home2-research-copy h3 { font-size: 28px; }
    .home2-perspectives { padding-left: 26px; }
    .home2-perspective-list h4 { font-size: 20px; }
    .home2-insights .home2-topics { grid-template-columns: 1fr auto; gap: 8px 24px; }
    .home2-topics .home2-editorial-label { grid-column: 1 / -1; }
}
@media (max-width: 900px) {
    .home2-insights-grid { grid-template-columns: 1fr; gap: 36px; }
    .home2-research-main { grid-template-columns: 210px 1fr; gap: 32px; }
    .home2-research-copy h3 { font-size: 32px; }
    .home2-perspectives { padding: 28px 0 0; border-left: 0; border-top: 1px solid var(--home-line); }
    .home2-perspective-list h4 { font-size: 22px; }
}
@media (max-width: 640px) {
    .home2-insights { padding: 64px 0 44px; }
    .home2-insights > .ztc-container { padding-inline: 20px; }
    .home2-insights-head { grid-template-columns: 1fr; gap: 18px; margin-bottom: 26px; }
    .home2-insights-head h2 { font-size: 35px; }
    .home2-insights-head .home2-kicker { margin-bottom: 16px; }
    .home2-insights-head > div:last-child { justify-self: start; }
    .home2-insights-head > div > p:not(.home2-kicker) { font-size: 14px; }
    .home2-insights-head br { display: none; }
    .home2-insights-head > div > p:not(.home2-kicker) { max-width: 25em; }
    .home2-insights-grid { padding-top: 24px; gap: 24px; }
    .home2-editorial-label { margin-bottom: 18px; }
    .home2-research-main { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 20px; }
    .home2-research-copy { display: contents; }
    .home2-research-copy h3 { align-self: center; margin: 0; font-size: 24px; line-height: 1.45; text-wrap: pretty; }
    .home2-research-copy h3 .ztc-title-year { white-space: nowrap; font-size: .78em; }
    .home2-research-excerpt { grid-column: 1 / -1; margin: 0; font-size: 14px; }
    .home2-research-copy > .home2-editorial-link { grid-column: 1 / -1; justify-self: start; margin-top: -10px; }
    .home2-research-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 14px; padding-top: 0; }
    .home2-research-facts > div { padding: 16px 12px; }
    .home2-research-facts > div:first-child { padding-left: 12px; }
    .home2-research-facts > div:nth-child(3) { border-left: 0; }
    .home2-research-facts > div:nth-child(n + 3) { border-top: 1px solid var(--home-line); }
    .home2-research-facts dt { font-size: 26px; }
    .home2-research-library { margin-top: 0; }
    .home2-perspectives { padding-top: 24px; }
    .home2-perspective-list h4 { font-size: 20px; line-height: 1.6; }
    .home2-perspective-list h4 a { gap: 18px; }
    .home2-perspective-list li + li { padding-top: 18px; margin-top: 18px; }
    .home2-insights .home2-topics { grid-template-columns: 1fr; gap: 8px; margin-top: 26px; padding-top: 22px; }
    .home2-topic-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 18px; }
    .home2-topic-links a { justify-content: space-between; border-bottom: 1px solid var(--home-line); min-height: 48px; }
    .home2-topics > .home2-editorial-link { justify-self: start; }
}
@media (max-width: 360px) {
    .home2-research-main { grid-template-columns: 76px minmax(0, 1fr); gap: 16px; }
    .home2-research-copy h3 { font-size: 21px; }
}
@media (prefers-reduced-motion: reduce) {
    .home2-insights * { transition: none !important; }
}

/* --------------------------------------------------------------------------
   Screen 3 · AI+ 工作链
   -------------------------------------------------------------------------- */
.home2-ai {
    position: relative;
    display: flex;
    min-height: 100svh;
    align-items: center;
    overflow: hidden;
    padding: 124px 0;
    color: #fff;
    background: var(--home-gradient);
}

.home2-ai::before {
    content: "";
    position: absolute;
    top: 0;
    right: 8%;
    width: 1px;
    height: 100%;
    background: rgba(97, 204, 240, .2);
}

.home2-ai::after {
    content: "";
    position: absolute;
    right: calc(8% - 4px);
    bottom: 16%;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--home-cyan);
}

.home2-ai-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, .82fr) minmax(620px, 1.18fr);
    gap: clamp(60px, 7vw, 108px);
    align-items: center;
}

.home2-ai-copy h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(40px, 4.5vw, 60px);
    line-height: 1.08;
    text-wrap: balance;
}

.home2-ai-copy h2 span { display: block; margin-top: 8px; color: #9EDFF4; }

.home2-ai-copy > p:not(.home2-kicker) {
    max-width: 540px;
    margin: 22px 0 0;
    color: rgba(255, 255, 255, .8);
    font-size:16px;
    line-height: 1.9;
}

.home2-ai-copy .home2-ai-lead {
    color: #fff;
    font-size: 18px;
    font-weight: 600;
}

.home2-ai-link {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    gap: 10px;
    margin-top: 34px;
    padding-bottom: 4px;
    color: #fff;
    border-bottom: 1px solid rgba(97, 204, 240, .7);
    font-size:16px;
    font-weight: 650;
}

.home2-ai-link:hover { color: var(--home-cyan); }

.home2-workflow {
    padding: clamp(28px, 3.4vw, 46px);
    border: 1px solid rgba(158, 223, 244, .3);
    background: rgba(7, 32, 60, .32);
    box-shadow: 0 30px 72px rgba(4, 28, 52, .16);
    backdrop-filter: blur(8px);
}

.home2-workflow header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    padding-bottom: 22px;
    border-bottom: 1px solid rgba(255, 255, 255, .14);
}

.home2-workflow header span {
    color: #9EDFF4;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .16em;
}

.home2-workflow header strong {
    color: #fff;
    font-family: var(--ztc-serif);
    font-size:20px;
    font-weight: 600;
}

.home2-workflow blockquote {
    margin: 26px 0 32px;
    padding: 16px 20px;
    color: #fff;
    background: rgba(0, 142, 211, .16);
    border-left: 3px solid var(--home-cyan);
    font-family: var(--ztc-serif);
    font-size: 18px;
    font-style: normal;
}

.home2-workflow ol {
    position: relative;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 0;
    list-style: none;
}

.home2-workflow ol::before {
    content: "";
    position: absolute;
    top: 16px;
    left: 8%;
    width: 84%;
    height: 1px;
    background: rgba(158, 223, 244, .3);
}

.home2-workflow li {
    position: relative;
    z-index: 1;
    min-width: 0;
    padding-right: 14px;
}

.home2-workflow li > span {
    display: inline-flex;
    width: 33px;
    height: 33px;
    align-items: center;
    justify-content: center;
    color: #9EDFF4;
    background: rgba(7, 32, 60, .76);
    border: 1px solid rgba(158, 223, 244, .5);
    border-radius: 50%;
    font-size:var(--ztc-fs-micro);
    font-weight: 700;
    transition: color .22s ease, background-color .22s ease, border-color .22s ease, transform .22s ease;
}

.home2-workflow li.is-current > span {
    color: var(--home-deep);
    background: var(--home-cyan);
    border-color: var(--home-cyan);
    transform: scale(1.08);
}

.home2-workflow li div { margin-top: 17px; }
.home2-workflow li b { display: block; color: #fff; font-size: 14px; }
.home2-workflow li small {
    display: block;
    margin-top: 8px;
    color: rgba(255, 255, 255, .72);
    font-size:12px;
    line-height: 1.55;
}

.home2-workflow footer {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    margin-top: 34px;
    padding-top: 20px;
    color: rgba(255, 255, 255, .72);
    border-top: 1px solid rgba(255, 255, 255, .14);
    font-size: 13px;
}

.home2-workflow footer strong { color: #fff; }

/* --------------------------------------------------------------------------
   Screen 3 · 双决策入口与客户证据
   -------------------------------------------------------------------------- */
.home2-decisions {
    min-height: 100svh;
    padding: 122px 0 132px;
    background: #fff;
}

.home2-section-heading { max-width: 810px; }

.home2-section-heading h2 {
    margin: 0;
    color: var(--home-ink);
    font-size: clamp(38px, 4.2vw, 54px);
    line-height: 1.12;
}

.home2-section-heading > p:last-child {
    max-width: 720px;
    margin-top: 22px;
    color: #556A82;
    font-size:16px;
    line-height: 1.85;
}

.home2-decision-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
    gap: 28px;
    margin-top: 62px;
    align-items: start;
}

.home2-decision-card {
    position: relative;
    min-height: 560px;
    padding: clamp(34px, 4vw, 52px);
    overflow: hidden;
    border: 1px solid var(--home-line);
    background: #fff;
}

.home2-decision-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: var(--home-accent);
}

.home2-decision-card--consulting { background: var(--home-paper); }
.home2-decision-card--products { margin-top: 72px; }

.home2-decision-icon {
    display: inline-flex;
    width: 52px;
    height: 52px;
    align-items: center;
    justify-content: center;
    color: var(--home-blue);
    border: 1px solid rgba(0, 103, 180, .25);
    border-radius: 50%;
}

.home2-decision-label {
    margin: 28px 0 0;
    color: var(--home-blue);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .16em;
}

.home2-decision-card h3 {
    max-width: 500px;
    margin: 15px 0 0;
    color: var(--home-ink);
    font-size: clamp(27px, 2.7vw, 36px);
    line-height: 1.28;
    text-wrap: balance;
}

.home2-decision-card--products h3 {
    font-size: clamp(27px, 2.7vw, 34px);
    letter-spacing: -.02em;
}

.home2-decision-card > p:not(.home2-decision-label) {
    max-width: 560px;
    margin-top: 20px;
    color: #5B6D82;
    font-size:14px;
    line-height: 1.85;
}

.home2-entry-list {
    margin: 34px 0 0;
    padding: 0;
    list-style: none;
    border-top: 1px solid var(--home-line);
}

.home2-entry-list li { border-bottom: 1px solid var(--home-line); }

.home2-entry-list a {
    display: flex;
    min-height: 56px;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    color: var(--home-ink);
    font-size: 14px;
    font-weight: 600;
}

.home2-entry-list svg { color: var(--home-blue); transition: transform .22s ease; }
.home2-entry-list a:hover { color: var(--home-blue); }
.home2-entry-list a:hover svg { transform: translateX(4px); }

.home2-card-cta {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    gap: 10px;
    margin-top: 28px;
    color: var(--home-blue);
    font-size: 14px;
    font-weight: 700;
}

.home2-card-cta:hover { color: var(--ztc-action-hover); }

.home2-client-proof {
    display: grid;
    grid-template-columns: minmax(300px, .85fr) minmax(0, 1.15fr);
    gap: 56px;
    align-items: center;
    margin-top: 42px;
    padding: 34px 38px;
    color: var(--home-ink);
    background: var(--home-paper);
    border: 1px solid var(--home-line);
}

.home2-client-proof-copy .home2-kicker { margin-bottom: 12px; }

.home2-client-proof-copy h3 {
    margin: 0;
    font-size: clamp(25px, 2.5vw, 34px);
    line-height: 1.25;
}

.home2-client-proof-copy > p:not(.home2-kicker) {
    margin: 12px 0 0;
    color: #5B6D82;
    font-size:14px;
}

.home2-client-proof-copy > a {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    gap: 8px;
    margin-top: 18px;
    color: var(--home-blue);
    font-size:14px;
    font-weight: 700;
}

.home2-client-links {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border: 1px solid var(--home-line);
    background: #fff;
}

.home2-client-links a {
    display: flex;
    min-height: 126px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 16px;
    text-align: center;
}

.home2-client-links a + a { border-left: 1px solid var(--home-line); }

.home2-client-links img {
    width: 66px;
    height: 66px;
    object-fit: contain;
    filter: grayscale(1);
    opacity: .72;
    transition: filter .24s ease, opacity .24s ease, transform .24s ease;
}

.home2-client-links span { color: #53677F; font-size: 12px; font-weight: 600; }
.home2-client-links a:hover img { filter: none; opacity: 1; transform: translateY(-2px); }
.home2-client-links a:hover span { color: var(--home-blue); }

/* --------------------------------------------------------------------------
   Screen 4 · 编辑式洞察与动态
   -------------------------------------------------------------------------- */
.home2-editorial {
    padding: 124px 0 132px;
    border-top: 1px solid var(--home-line);
    background: var(--home-paper);
}

.home2-editorial-head {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(320px, .65fr);
    gap: 84px;
    align-items: end;
}

.home2-editorial-head h2,
.home2-practice-copy h2,
.home2-final-cta h2 {
    margin: 0;
    font-size: clamp(38px, 4.2vw, 54px);
    line-height: 1.12;
    text-wrap: balance;
}

.home2-editorial-head h2 { color: var(--home-ink); }

.home2-editorial-head > div:last-child > p {
    margin: 0;
    color: #556A82;
    font-size: 16px;
    line-height: 1.85;
}

.home2-editorial-head > div:last-child > a,
.home2-text-link-light,
.home2-insight-more {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    gap: 9px;
    margin-top: 16px;
    color: var(--home-blue);
    font-size: 14px;
    font-weight: 700;
}

.home2-editorial-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(360px, .72fr);
    gap: 28px;
    margin-top: 58px;
    align-items: stretch;
}

.home2-news-stage { display: flex; min-width: 0; flex-direction: column; gap: 16px; }

.home2-news-lead {
    display: grid;
    grid-template-columns: minmax(260px, .82fr) minmax(0, 1.18fr);
    min-height: 392px;
    color: var(--home-ink);
    border: 1px solid var(--home-line);
    background: #fff;
    transition: transform .24s ease, border-color .24s ease, box-shadow .24s ease;
}

.home2-news-lead:hover {
    transform: translateY(-4px);
    border-color: rgba(0, 103, 180, .4);
    box-shadow: 0 18px 38px rgba(10, 43, 76, .1);
}

.home2-news-lead-cover { min-height: 100%; overflow: hidden; background: #DCE9F3; }
.home2-news-lead-cover img { width: 100%; height: 100%; object-fit: cover; }
.home2-news-lead-cover.is-fallback {
    position: relative;
    display: flex;
    min-height: 300px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 18px;
    overflow: hidden;
    color: var(--home-cyan);
    background: var(--home-gradient);
}
.home2-news-lead-cover.is-fallback::before,
.home2-news-lead-cover.is-fallback::after {
    content: "";
    position: absolute;
    left: -12%;
    width: 124%;
    height: 1px;
    background: rgba(158, 223, 244, .24);
    transform: rotate(-12deg);
}
.home2-news-lead-cover.is-fallback::before { top: 33%; }
.home2-news-lead-cover.is-fallback::after { bottom: 27%; transform: rotate(9deg); }
.home2-news-lead-cover.is-fallback span,
.home2-news-lead-cover.is-fallback small { position: relative; z-index: 1; }
.home2-news-lead-cover.is-fallback small { color: rgba(255, 255, 255, .72); font-size:var(--ztc-fs-micro); font-weight: 700; letter-spacing: .18em; }

.home2-news-lead-body { display: flex; min-width: 0; flex-direction: column; padding: clamp(30px, 3vw, 44px); }
.home2-news-lead-body > p { display: flex; justify-content: space-between; gap: 14px; margin: 0; color: #5B6D82; font-size: 11px; }
.home2-news-lead-body > p span { color: var(--home-blue); font-weight: 700; }
.home2-news-lead-body h3 { margin: 24px 0 0; color: var(--home-ink); font-size: clamp(24px, 2.3vw, 32px); line-height: 1.38; text-wrap: pretty; }
.home2-news-lead-body > div { margin-top: 18px; color: #5B6D82; font-size: 14px; line-height: 1.8; }
.home2-news-lead-body > strong { display: inline-flex; align-items: center; gap: 8px; margin-top: auto; padding-top: 26px; color: var(--home-blue); font-size: 13px; }

.home2-news-secondary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.home2-news-secondary a {
    display: flex;
    min-height: 178px;
    flex-direction: column;
    padding: 24px;
    color: var(--home-ink);
    border: 1px solid var(--home-line);
    background: #fff;
    transition: border-color .22s ease, transform .22s ease;
}
.home2-news-secondary a:hover { transform: translateY(-3px); border-color: rgba(0, 103, 180, .4); }
.home2-news-secondary time { color: #5B6D82; font-size: 11px; }
.home2-news-secondary h3 { margin: 14px 0 0; font-size:16px; line-height: 1.55; text-wrap: pretty; }
.home2-news-secondary span { display: inline-flex; align-items: center; gap: 7px; margin-top: auto; padding-top: 18px; color: var(--home-blue); font-size: 12px; font-weight: 700; }

.home2-insight-index {
    display: flex;
    min-width: 0;
    flex-direction: column;
    padding: clamp(30px, 3vw, 42px);
    color: #fff;
    background: var(--home-gradient);
    box-shadow: 0 20px 52px rgba(7, 42, 74, .12);
}
.home2-insight-index > header { display: flex; flex-direction: column; gap: 7px; padding-bottom: 24px; border-bottom: 1px solid rgba(255, 255, 255, .16); }
.home2-insight-index > header span { color: #9EDFF4; font-size: 11px; font-weight: 700; letter-spacing: .15em; }
.home2-insight-index > header strong { font-family: var(--ztc-serif); font-size:24px; font-weight: 600; }
.home2-insight-index ol { margin: 0; padding: 0; list-style: none; }
.home2-insight-index li + li { border-top: 1px solid rgba(255, 255, 255, .12); }
.home2-insight-index li > a {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr) 18px;
    gap: 14px;
    align-items: start;
    padding: 26px 0;
    color: #fff;
}
.home2-insight-index li > a > span { color: var(--home-cyan); font-size: 11px; font-weight: 700; }
.home2-insight-index time { color: rgba(255, 255, 255, .78); font-size:var(--ztc-fs-micro); }
.home2-insight-index h3 { margin: 8px 0 0; font-size:16px; line-height: 1.5; text-wrap: pretty; }
.home2-insight-index li p { margin: 8px 0 0; color: rgba(255, 255, 255, .72); font-size: 12px; line-height: 1.65; }
.home2-insight-index li svg { margin-top: 3px; color: var(--home-cyan); transition: transform .22s ease; }
.home2-insight-index li a:hover h3 { color: var(--home-cyan); }
.home2-insight-index li a:hover svg { transform: translateX(3px); }
.home2-insight-more { margin-top: auto; padding-top: 18px; color: #9EDFF4; border-top: 1px solid rgba(255, 255, 255, .16); }

.home2-editorial-empty { display: flex; min-height: 420px; flex-direction: column; align-items: flex-start; justify-content: center; padding: 50px; color: var(--home-ink); border: 1px solid var(--home-line); background: #fff; }
.home2-editorial-empty > span { color: var(--home-blue); }
.home2-editorial-empty h3 { margin: 22px 0 0; font-size:var(--ztc-fs-h2); }
.home2-editorial-empty p { max-width: 540px; margin: 12px 0 0; color: #5B6D82; }
.home2-insight-empty { padding: 34px 0; color: rgba(255, 255, 255, .76); font-size: 14px; line-height: 1.8; }

/* --------------------------------------------------------------------------
   Screen 5 · 客户实践与出版入口
   -------------------------------------------------------------------------- */
.home2-practice {
    position: relative;
    overflow: hidden;
    padding: 92px 0 88px;
    color: #fff;
    background: var(--home-gradient);
}
.home2-practice::before {
    content: "";
    position: absolute;
    top: 0;
    left: 7%;
    width: 1px;
    height: 100%;
    background: rgba(97, 204, 240, .18);
}
.home2-practice-grid { position: relative; display: grid; grid-template-columns: minmax(0, .76fr) minmax(480px, 1.24fr); gap: 64px; align-items: center; }
.home2-practice-copy h2 { color: #fff; }
.home2-practice-copy > p:not(.home2-kicker) { max-width: 560px; margin: 22px 0 0; color: rgba(255, 255, 255, .78); font-size:14px; line-height: 1.9; }
.home2-practice-copy .home2-practice-lead { color: #fff; font-family: var(--ztc-serif); font-size: 20px; line-height: 1.75; }
.home2-practice-actions { display: flex; flex-wrap: wrap; gap: 22px; align-items: center; margin-top: 34px; }
.home2-practice-actions .home2-btn { flex: none; }
.home2-btn--light { color: var(--home-deep); border-color: #fff; background: #fff; }
.home2-btn--light:hover { color: #fff; background: var(--home-blue); border-color: var(--home-cyan); }
.home2-text-link-light { margin: 0; color: #9EDFF4; }
.home2-practice-video { position: relative; }
.home2-practice-video::before { content: ""; position: absolute; top: -18px; right: -18px; width: 78px; height: 3px; background: var(--home-cyan); }

.home2-brochure {
    position: relative;
    display: grid;
    grid-template-columns: 160px minmax(0, 1fr) auto;
    gap: 34px;
    align-items: center;
    margin-top: 48px;
    padding: 28px 32px;
    color: var(--home-ink);
    border: 1px solid rgba(158, 223, 244, .35);
    background: #fff;
}
.home2-brochure-cover { width: 150px; height: 112px; object-fit: contain; }
.home2-brochure-copy > span { color: var(--home-blue); font-size: 11px; font-weight: 700; letter-spacing: .14em; }
.home2-brochure-copy > strong { display: block; margin-top: 6px; font-family: var(--ztc-serif); font-size:24px; }
.home2-brochure-copy > p { max-width: 680px; margin: 8px 0 0; color: #5B6D82; font-size: 13px; line-height: 1.7; }
.home2-brochure-access { display: flex; align-items: center; gap: 22px; }
.home2-brochure-qr { display: flex; flex-direction: column; align-items: center; gap: 5px; }
.home2-brochure-qr img { width: 70px; height: 70px; }
.home2-brochure-qr small { color: #5B6D82; font-size:var(--ztc-fs-micro); }
.home2-brochure-access > a { display: inline-flex; min-height: 44px; align-items: center; gap: 8px; padding: 0 18px; color: #fff; border-radius: 999px; background: var(--home-blue); font-size: 13px; font-weight: 700; white-space: nowrap; }

/* --------------------------------------------------------------------------
   Screen 6 · 最终行动
   -------------------------------------------------------------------------- */
.home2-final-cta { position: relative; overflow: hidden; padding: 80px 0; background: #fff; text-align: center; }
.home2-final-cta::before,
.home2-final-cta::after { content: ""; position: absolute; top: 50%; width: 18vw; height: 1px; background: var(--home-line); }
.home2-final-cta::before { left: 0; }
.home2-final-cta::after { right: 0; }
.home2-final-cta-inner { position: relative; max-width: 820px; }
.home2-final-cta .home2-kicker::before { display: none; }
.home2-final-cta h2 { color: var(--home-ink); }
.home2-final-cta-inner > p:not(.home2-kicker) { max-width: 660px; margin: 20px auto 0; color: #556A82; font-size: 16px; line-height: 1.85; }
.home2-final-cta .home2-btn { margin-top: 32px; }

/* --------------------------------------------------------------------------
   首页 1.6 · 公司、咨询、产品、议题与动态独立章节
   -------------------------------------------------------------------------- */
.home2-company,
.home2-consulting,
.home2-products,

.home2-updates { position: relative; padding: 92px 0; }

.home2-company { background: #fff; }
.home2-company-stage {
    display: grid;
    grid-template-columns: minmax(0, .88fr) minmax(480px, 1.12fr);
    gap: clamp(54px, 7vw, 96px);
    align-items: center;
}
.home2-company-copy { max-width: 600px; }
.home2-company-copy h2,
.home2-products .home2-section-heading h2,

.home2-updates-head h2 {
    margin: 0;
    font-size: clamp(38px, 4.2vw, 54px);
    line-height: 1.12;
    text-wrap: balance;
}
.home2-company-copy h2 { color: var(--home-ink); }
.home2-company-copy > p:not(.home2-kicker) { margin: 20px 0 0; color: #556A82; font-size:14px; line-height: 1.92; }
.home2-company-copy .home2-company-lead { color: #2E4967; font-family: var(--ztc-serif); font-size: 18px; line-height: 1.85; }
.home2-company-media { position: relative; }
.home2-company-media::before {
    position: absolute;
    z-index: 2;
    top: -14px;
    right: -14px;
    width: 82px;
    height: 3px;
    background: linear-gradient(90deg, var(--home-accent), var(--home-cyan));
    content: "";
}
.home2-company-media .ztc-video-facade { border-radius: 20px; }
.home2-company .home2-proof { margin-top: 46px; margin-bottom: 0; }
.home2-company .home2-proof-grid article { min-height: 108px; padding: 20px 24px; }

.home2-consulting { background: linear-gradient(180deg, #F7FAFD, #EEF5FA); }
.home2-consulting-focus {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-top: 40px;
}
.home2-consulting-focus > a {
    position: relative;
    display: flex;
    min-height: 285px;
    flex-direction: column;
    padding: 28px 28px;
    overflow: hidden;
    color: var(--home-ink);
    border: 1px solid var(--home-line);
    border-radius: 16px;
    background: rgba(255,255,255,.9);
    box-shadow: 0 18px 46px rgba(31,80,120,.06);
    transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.home2-consulting-focus > a::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg, var(--home-accent), var(--home-cyan));
    content: "";
}
.home2-consulting-focus > a:hover { transform: translateY(-5px); border-color: rgba(0,142,211,.35); box-shadow: 0 24px 54px rgba(31,80,120,.12); }
.home2-consulting-focus > a > span { display: inline-flex; width: 48px; height: 48px; align-items: center; justify-content: center; color: var(--home-blue); border: 1px solid rgba(0,142,211,.18); border-radius: 50%; }
.home2-consulting-focus small { margin-top: 20px; color: var(--home-blue); font-size:var(--ztc-fs-micro); font-weight: 700; letter-spacing: .12em; }
.home2-consulting-focus h3 { margin: 9px 0 0; font-size: clamp(24px, 2.2vw, 31px); line-height: 1.25; }
.home2-consulting-focus p { margin: 15px 0 0; color: #5B6D82; font-size: 14px; line-height: 1.75; }
.home2-consulting-focus em { display: inline-flex; align-items: center; gap: 8px; margin-top: auto; padding-top: 18px; color: var(--home-blue); font-size: 13px; font-style: normal; font-weight: 700; }
.home2-consulting-index {
    display: grid;
    grid-template-columns: 180px minmax(0, 1fr) auto;
    gap: 28px;
    align-items: center;
    margin-top: 18px;
    padding: 25px 28px;
    border: 1px solid var(--home-line);
    border-radius: 14px;
    background: #fff;
}
.home2-consulting-index > p { margin: 0; }
.home2-consulting-index > p strong,
.home2-consulting-index > p span { display: block; }
.home2-consulting-index > p strong { color: var(--home-ink); font-size: 16px; }
.home2-consulting-index > p span { margin-top: 5px; color: #6A7D91; font-size:12px; }
.home2-consulting-index > div { display: flex; flex-wrap: wrap; gap: 8px 18px; }
.home2-consulting-index > div a { color: #435C77; font-size:12px; }
.home2-consulting-index > div a:hover { color: var(--home-blue); }
.home2-consulting-index .home2-card-cta { margin: 0; white-space: nowrap; }

.home2-products { overflow: hidden; color: #fff; background: var(--home-gradient); }
.home2-products::before {
    position: absolute;
    top: 0;
    right: 6vw;
    width: min(44vw, 620px);
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(97,204,240,.9));
    content: "";
}
.home2-products .home2-section-heading h2 { color: #fff; }
.home2-products .home2-section-heading > p:last-child { color: rgba(255,255,255,.76); }
.home2-product-layout {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(300px, 1fr);
    gap: 34px;
    align-items: stretch;
    margin-top: 40px;
}
/* 产品架构面板：移植自产品页 hero（ph-architecture），深色玻璃质感与首页产品区渐变同族 */
.home2-arch {
    position: relative;
    display: flex;
    min-width: 0;
    flex-direction: column;
    padding: 24px;
    border: 1px solid rgba(255,255,255,.22);
    background: rgba(4,27,50,.28);
}
.home2-arch::before {
    position: absolute;
    top: -1px;
    left: 24px;
    width: 76px;
    height: 3px;
    background: var(--ztc-brand-cyan, #61CCF0);
    content: "";
}
.home2-arch-head { margin-bottom: 18px; padding-bottom: 16px; border-bottom: 1px solid rgba(255,255,255,.12); }
.home2-arch-head strong { color: #fff; font-family: var(--ztc-serif); font-size: 19px; font-weight: 600; }
.home2-arch-head p { margin: 8px 0 0; color: rgba(255,255,255,.72); font-size: 13px; line-height: 1.7; }
.home2-arch-label { margin: 0 0 12px; color: rgba(255,255,255,.74); font-size: 11px; font-weight: 700; letter-spacing: .16em; }
.home2-arch-business { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.home2-arch-card {
    min-height: 164px;
    padding: 16px 15px;
    border: 1px solid rgba(255,255,255,.17);
    background: rgba(0,103,180,.2);
    transition: transform .22s ease, border-color .22s ease, background-color .22s ease;
}
.home2-arch-card:hover { transform: translateY(-3px); border-color: var(--ztc-brand-cyan, #61CCF0); background: rgba(0,103,180,.34); }
.home2-arch-icon { display: inline-flex; align-items: center; justify-content: center; color: var(--home-cyan); }
.home2-arch-icon .ztc-product-line-mark { width: 34px; height: 34px; }
.home2-arch-card strong { display: block; margin-top: 14px; color: #fff; font-size: 16px; line-height: 1.4; }
.home2-arch-card small { display: block; min-height: 32px; margin-top: 6px; color: rgba(255,255,255,.74); font-size: 11px; line-height: 1.5; }
.home2-arch-card em { display: block; margin-top: 10px; color: var(--ztc-brand-cyan, #61CCF0); font-size: 11px; font-style: normal; font-weight: 700; }
.home2-arch-flow { display: block; width: 100%; height: 46px; color: var(--ztc-brand-cyan, #61CCF0); }
.home2-arch-flow path { fill: none; stroke: currentColor; stroke-width: 1.5; stroke-dasharray: 3 8 20 8; stroke-linecap: round; animation: home2-arch-flow 11s linear infinite; }
.home2-arch-flow circle { fill: currentColor; }
@keyframes home2-arch-flow { to { stroke-dashoffset: -105; } }
.home2-arch-rail {
    display: grid;
    grid-template-columns: 94px minmax(140px, 1fr) minmax(170px, 1.2fr) 24px;
    gap: 14px;
    align-items: center;
    min-height: 64px;
    padding: 10px 16px;
    border: 1px solid rgba(255,255,255,.2);
    color: #fff;
    transition: border-color .2s ease, background-color .2s ease;
}
.home2-arch-rail + .home2-arch-rail { margin-top: 9px; }
.home2-arch-rail--agent { background: rgba(0,142,211,.18); }
.home2-arch-rail--foundation { background: rgba(255,255,255,.07); }
.home2-arch-rail:hover { border-color: var(--ztc-brand-cyan, #61CCF0); background: rgba(0,103,180,.34); }
.home2-arch-rail-role { color: rgba(255,255,255,.74); font-size: 11px; font-weight: 700; letter-spacing: .12em; }
.home2-arch-rail-main { display: inline-flex; align-items: center; gap: 9px; }
.home2-arch-rail-main strong { font-size: 15px; }
.home2-arch-rail-signal { color: rgba(255,255,255,.76); font-size: 12px; }
.home2-arch-rail-arrow { color: var(--ztc-brand-cyan, #61CCF0); font-size: 20px; }
/* 与右侧"进入 AI+ 行动专题"同款：白字 + 青色下划线，左对齐贴底 */
.home2-arch-all { display: inline-flex; min-height: 48px; align-items: center; align-self: flex-start; gap: 10px; margin-top: auto; padding: 0 0 4px; color: #fff; border-bottom: 1px solid rgba(97,204,240,.7); font-size: 16px; font-weight: 650; transition: color .2s ease; }
.home2-arch-rail--foundation { margin-bottom: 18px; }
.home2-arch-all:hover { color: var(--home-cyan); }
/* AI+ 行动：竖排压缩为约 1/3 栏宽 */
.home2-workflow--vertical { height: 100%; padding: 24px 26px; background: rgba(3,31,57,.4); }
.home2-workflow--vertical header { display: block; padding-bottom: 16px; }
.home2-workflow--vertical header strong { display: block; margin-top: 6px; font-size: 17px; }
.home2-workflow--vertical blockquote { margin: 16px 0 20px; padding: 12px 15px; font-size: 15px; }
.home2-workflow--vertical ol { display: flex; flex-direction: column; gap: 14px; }
.home2-workflow--vertical ol::before { top: 10px; bottom: 10px; left: 16px; width: 1px; height: auto; background: rgba(158,223,244,.3); }
.home2-workflow--vertical li { display: grid; grid-template-columns: 33px minmax(0, 1fr); gap: 13px; align-items: start; padding-right: 0; }
.home2-workflow--vertical li div { margin-top: 0; }
.home2-workflow--vertical li small { margin-top: 4px; font-size: var(--ztc-fs-micro); }
.home2-workflow--vertical footer { margin-top: 16px; padding-top: 14px; }
.home2-workflow--vertical .home2-ai-link { margin-top: 14px; padding-top: 14px; border-top: 1px solid rgba(255,255,255,.1); }

.home2-insights-head,
.home2-updates-head { position: relative; display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr); gap: 70px; align-items: end; }
.home2-updates-head h2 { color: var(--home-ink); }
.home2-insights-head > div:last-child > p,
.home2-updates-head > div:last-child > p { margin: 0; color: #556A82; font-size:14px; line-height: 1.8; }
.home2-insights-head > div:last-child > a,
.home2-updates-head > div:last-child > a { min-height: 44px; display: inline-flex; align-items: center; gap: 8px; margin-top: 0; color: var(--home-blue); font-size:14px; font-weight: 700; line-height: 1.5; }

.home2-updates { background: #fff; }
.home2-update-types { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 36px; border: 1px solid var(--home-line); border-radius: 14px; overflow: hidden; }
.home2-update-types > a { display: grid; grid-template-columns: 30px minmax(0, 1fr) 16px; gap: 10px; align-items: center; min-height: 78px; padding: 13px 18px; color: var(--home-ink); background: #F8FBFD; transition: background .22s ease; }
.home2-update-types > a + a { border-left: 1px solid var(--home-line); }
.home2-update-types > a:hover { background: #EEF6FB; }
.home2-update-types > a > span { display: inline-flex; color: var(--home-blue); }
.home2-update-types > a > strong { font-size: 14px; }
.home2-update-types > a > small { grid-column: 2; margin-top: -15px; color: #6B7D90; font-size:var(--ztc-fs-micro); }
.home2-update-types > a > svg { grid-column: 3; grid-row: 1 / span 2; color: var(--home-blue); }
/* 首页动态：16:9 原封面完整展示，其他比例居中留白；无封面才使用品牌日期版式。 */
.home2-update-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin-top: 18px; }
.home2-update-card { display: flex; flex-direction: column; min-width: 0; color: var(--home-ink); border: 1px solid var(--home-line); border-radius: 16px; background: #fff; overflow: hidden; transition: border-color .24s ease, box-shadow .24s ease; }
.home2-update-card:hover { border-color: rgba(0,142,211,.45); box-shadow: 0 16px 36px rgba(45,49,66,.12); } /* 全站 hover 不上浮标准 */
.home2-update-card:focus-visible { outline: 2px solid var(--home-blue); outline-offset: 4px; }
.home2-update-media { position: relative; flex: none; aspect-ratio: 16 / 9; overflow: hidden; color: #fff; background: var(--home-gradient); }
.home2-update-media.has-image { background: var(--home-paper); }
.home2-update-media > img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: contain; object-position: center; }
.home2-update-media.is-brand { display: flex; flex-direction: column; justify-content: center; padding: 24px 26px; background: linear-gradient(135deg, var(--home-deep) 0%, var(--home-deep-2) 52%, var(--home-blue) 100%); }
.home2-update-media.is-brand::before { position: absolute; inset: 0; background-image: radial-gradient(rgba(255,255,255,.10) 1px, transparent 1px); background-size: 22px 22px; content: ""; }
.home2-update-branddate { position: relative; display: flex; flex-direction: column; }
.home2-update-branddate strong { font-family: var(--ztc-serif); font-size: 52px; line-height: 1; }
.home2-update-branddate > span:not(.screen-reader-text) { margin-top: 8px; font-size: 13px; opacity: .78; letter-spacing: .06em; }
.home2-update-brandname { position: relative; font: 700 24px/1.3 var(--ztc-sans); letter-spacing: .08em; }
.home2-update-copy { display: flex; min-width: 0; min-height: 234px; flex: 1; flex-direction: column; padding: 24px 22px 18px; }
.home2-update-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; margin-bottom: 12px; font-size: 12px; line-height: 1.6; }
.home2-update-kind { color: var(--home-blue); font-weight: 600; }
.home2-update-meta time { margin-left: auto; color: var(--ztc-text-muted); font-variant-numeric: tabular-nums; }
.home2-update-copy h3 { margin: 0; font-family: var(--ztc-serif); font-size: 18px; font-weight: 700; line-height: 1.55; text-wrap: pretty; }
.home2-update-excerpt { display: -webkit-box; margin: 12px 0 18px; overflow: hidden; color: var(--ztc-text-muted); font-size: 14px; line-height: 1.75; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.home2-update-action { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin-top: auto; color: var(--home-blue); font-size: 13px; font-weight: 600; }
.home2-update-action svg { transition: transform .2s ease; }
.home2-update-card:hover .home2-update-action svg { transform: translateX(3px); }

/* JS 只增强轻量转场；无 JS 时内容默认完整可见。 */
[data-home2-reveal] {
    opacity: 1;
    transform: none;
}

.home2-js [data-home2-reveal] {
    opacity: .001;
    transform: translateY(22px);
    transition: opacity .7s ease, transform .7s ease;
}

.home2-js [data-home2-reveal].is-inview {
    opacity: 1;
    transform: none;
}

@media (max-width: 1120px) {
    .home2-ai-grid { grid-template-columns: minmax(0, .75fr) minmax(560px, 1.25fr); gap: 48px; }
    .home2-workflow { padding: 30px; }
    .home2-workflow li { padding-right: 8px; }
    .home2-decision-grid { gap: 22px; }
}

/* 共享导航在 1100px 已切换为抽屉，首页浅色胶囊的汉堡颜色必须使用同一断点。 */
@media (max-width: 1100px) {
    body.home .ztc-header--overlay:not(.is-solid) .ztc-hamburger { color: var(--home-ink); }
}

@media (max-width: 991px) {
    body.home .ztc-header--overlay { top: 10px; }
    body.home .ztc-header--overlay .ztc-header-inner { background: rgba(255, 255, 255, .94); }
    body.home .ztc-header--overlay .ztc-hamburger { color: var(--home-ink); }

    .home2-hero {
        min-height: auto;
        justify-content: flex-start;
    }
    .home2-hero-media {
        position: relative;
        order: 2;
        height: clamp(560px, 94vw, 760px);
        overflow: visible;
    }
    .home2-hero-globe {
        top: 49%;
        right: auto;
        left: 50%;
        width: min(94vw, 92svh, 790px);
        transform: translate(-50%, -50%);
        opacity: 1;
    }
    .home2-hero-inner {
        order: 1;
        flex: 0 0 auto;
        padding-top: 132px;
        padding-bottom: 20px;
    }
    .home2-hero-copy { width: min(680px, 88%); }
    .home2-proof-grid { grid-template-columns: 1fr 1fr; }
    .home2-proof-grid article { min-height: 112px; }
    .home2-proof-grid article:nth-child(3) { border-left: 0; border-top: 1px solid var(--home-line); }
    .home2-proof-grid article:nth-child(4) { border-top: 1px solid var(--home-line); }

    .home2-ai { min-height: auto; padding: 102px 0; }
    .home2-ai-grid { grid-template-columns: 1fr; gap: 52px; }
    .home2-ai-copy { max-width: 660px; }
    .home2-workflow { max-width: 760px; }

    .home2-decisions { padding: 104px 0; }
    .home2-decision-grid { grid-template-columns: 1fr; }
    .home2-decision-card { min-height: 0; }
    .home2-decision-card--products { margin-top: 0; }
    .home2-client-proof { grid-template-columns: 1fr; gap: 28px; }

    .home2-editorial-head { grid-template-columns: 1fr; gap: 24px; }
    .home2-editorial-grid { grid-template-columns: 1fr; }
    .home2-insight-index { min-height: 620px; }
    .home2-practice-grid { grid-template-columns: 1fr; gap: 48px; }
    .home2-practice-copy { max-width: 680px; }
    .home2-brochure { grid-template-columns: 130px minmax(0, 1fr); }
    .home2-brochure-cover { width: 120px; }
    .home2-brochure-access { grid-column: 2; justify-content: flex-start; }
}

@media (max-width: 640px) {
    .ztc-home-v2 { overflow: hidden; }
    .home2-kicker { margin-bottom: 15px; font-size:var(--ztc-fs-micro); letter-spacing: .14em; }

    .home2-hero { min-height: clamp(540px, 140vw, 560px); padding-top: 0; }
    .home2-hero-inner { min-height: 0; padding: 112px 20px 60px; }
    .home2-hero-copy { width: 100%; }
    .home2-hero-copy h1 { max-width: 340px; font-size: clamp(42px, 12vw, 50px); line-height: 1.08; }
    .home2-hero-copy h1 span { margin-top: 5px; }
    .home2-hero-lead { max-width: 344px; margin-top: 24px; font-size: 16px; line-height: 1.78; }
    .home2-hero-actions { display: grid; width: 100%; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 28px; }
    .home2-btn { min-width: 0; min-height: 48px; flex: none; padding: 11px 12px; font-size: 14px; white-space: nowrap; }
    .home2-next { margin-top: 20px; }
    .home2-hero-media,
    .home2-hero-globe { display: none; }

    .home2-proof { margin-bottom: 18px; padding: 0 16px; }
    .home2-proof-grid article { min-height: 104px; padding: 18px 16px; }
    .home2-proof-grid strong { font-size: 31px; }
    .home2-proof-grid span { margin-top: 8px; font-size:12px; line-height: 1.45; }
    .home2-proof-note { padding: 8px 10px; font-size:var(--ztc-fs-micro); text-align: left; }

    .home2-ai { padding: 82px 0; }
    .home2-ai::before { right: 24px; }
    .home2-ai::after { right: 20px; }
    .home2-ai-grid { gap: 38px; padding: 0 20px; }
    .home2-ai-copy h2 { max-width: 350px; font-size: 38px; }
    .home2-ai-copy .home2-ai-lead { font-size: 16px; }
    .home2-ai-copy > p:not(.home2-kicker) { font-size: 14px; line-height: 1.8; }

    .home2-workflow { padding: 24px 20px; }
    .home2-workflow header { align-items: flex-start; flex-direction: column; gap: 5px; }
    .home2-workflow header strong { font-size: 20px; }
    .home2-workflow blockquote { margin: 20px 0 26px; font-size: 16px; line-height: 1.6; }
    .home2-workflow ol { grid-template-columns: 1fr; gap: 17px; }
    .home2-workflow ol::before { top: 16px; bottom: 16px; left: 16px; width: 1px; height: auto; }
    .home2-workflow li { display: grid; grid-template-columns: 34px 1fr; gap: 15px; padding: 0; }
    .home2-workflow li div { margin-top: 0; }
    .home2-workflow li small { margin-top: 4px; }
    .home2-workflow footer { align-items: flex-start; flex-direction: column; gap: 5px; margin-top: 26px; }

    .home2-decisions { padding: 82px 0 90px; }
    .home2-decisions > .ztc-container { padding: 0 20px; }
    .home2-section-heading h2 { font-size: 35px; }
    .home2-section-heading > p:last-child { margin-top: 17px; font-size:16px; line-height: 1.78; }
    .home2-decision-grid { margin-top: 42px; }
    .home2-decision-card { padding: 30px 24px; }
    .home2-decision-card h3 { font-size:var(--ztc-fs-h2); }
    .home2-decision-card > p:not(.home2-decision-label) { font-size: 14px; }
    .home2-entry-list { margin-top: 26px; }
    .home2-client-proof { margin-top: 24px; padding: 26px 20px; }
    .home2-client-proof-copy h3 { font-size:24px; }
    .home2-client-links { grid-template-columns: 1fr; }
    .home2-client-links a { min-height: 98px; flex-direction: row; justify-content: flex-start; gap: 14px; padding: 12px 18px; text-align: left; }
    .home2-client-links a + a { border-top: 1px solid var(--home-line); border-left: 0; }
    .home2-client-links img { width: 58px; height: 58px; }

    .home2-editorial { padding: 82px 0 88px; }
    .home2-editorial > .ztc-container { padding: 0 20px; }
    .home2-editorial-head h2,
    .home2-practice-copy h2,
    .home2-final-cta h2 { font-size: 35px; }
    .home2-editorial-head > div:last-child > p { font-size: 14px; }
    .home2-editorial-grid { margin-top: 40px; }
    .home2-news-lead { grid-template-columns: 1fr; }
    .home2-news-lead-cover { min-height: 220px; max-height: 280px; }
    .home2-news-lead-body { padding: 28px 22px; }
    .home2-news-lead-body h3 { font-size: 24px; }
    .home2-news-secondary { grid-template-columns: 1fr; }
    .home2-news-secondary a { min-height: 150px; padding: 22px; }
    .home2-insight-index { min-height: 0; padding: 28px 22px; }
    .home2-insight-index li > a { grid-template-columns: 28px minmax(0, 1fr) 16px; gap: 10px; padding: 22px 0; }
    .home2-insight-index li p { display: none; }

    .home2-practice { padding: 70px 0; }
    .home2-practice > .ztc-container { padding-right: 20px; padding-left: 20px; }
    .home2-practice-grid { gap: 38px; }
    .home2-practice-copy .home2-practice-lead { font-size: 18px; }
    .home2-practice-actions { align-items: flex-start; flex-direction: column; gap: 10px; }
    .home2-practice-video::before { top: -10px; right: -10px; width: 54px; }
    .home2-brochure { grid-template-columns: 92px minmax(0, 1fr); gap: 18px; margin-top: 36px; padding: 22px 18px; }
    .home2-brochure-cover { width: 88px; height: 92px; }
    .home2-brochure-copy > strong { font-size:20px; }
    .home2-brochure-copy > p { font-size: 12px; }
    .home2-brochure-access { grid-column: 1 / -1; justify-content: space-between; gap: 14px; padding-top: 16px; border-top: 1px solid var(--home-line); }
    .home2-brochure-qr { align-items: flex-start; flex-direction: row; }
    .home2-brochure-qr img { width: 58px; height: 58px; }
    .home2-brochure-access > a { padding: 0 16px; }

    .home2-final-cta { padding: 70px 0; }
    .home2-final-cta::before,
    .home2-final-cta::after { display: none; }
    .home2-final-cta-inner { padding: 0 20px; }
    .home2-final-cta-inner > p:not(.home2-kicker) { font-size: 14px; }
}

@media (max-width: 420px) {
    .home2-decision-card--products h3 { font-size: 24px; }
}

@media (max-width: 1120px) {
    .home2-product-layout { grid-template-columns: 1fr; }
    .home2-workflow--vertical ol { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0; }
    .home2-workflow--vertical ol::before { top: 16px; bottom: auto; left: 8%; width: 84%; height: 1px; }
    .home2-workflow--vertical li { display: block; padding-right: 14px; }
    .home2-workflow--vertical li div { margin-top: 14px; }
}

@media (max-width: 991px) {
    .home2-company-stage { grid-template-columns: 1fr; gap: 44px; }
    .home2-company-copy { max-width: 720px; }
    .home2-company-media { max-width: 760px; }
    .home2-consulting-focus { gap: 12px; }
    .home2-consulting-focus > a { min-height: 310px; padding: 28px 24px; }
    .home2-consulting-index { grid-template-columns: 1fr; gap: 18px; }
    .home2-consulting-index .home2-card-cta { justify-self: start; }

    .home2-insights-head,
    .home2-updates-head { grid-template-columns: 1fr; gap: 24px; }

    .home2-update-types { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .home2-update-types > a:nth-child(3) { border-top: 1px solid var(--home-line); border-left: 0; }
    .home2-update-types > a:nth-child(4) { border-top: 1px solid var(--home-line); }
    .home2-update-list { grid-template-columns: 1fr; }
    .home2-update-card { flex-direction: row; }
    .home2-update-media { width: 200px; aspect-ratio: auto; min-height: 190px; }
    .home2-update-copy { min-height: 210px; }
}

@media (max-width: 640px) {
    .home2-company,
    .home2-consulting,
    .home2-products,

    .home2-updates { padding: 68px 0; }
    .home2-company > .ztc-container,
    .home2-consulting > .ztc-container,
    .home2-products > .ztc-container,

    .home2-updates > .ztc-container { padding-right: 20px; padding-left: 20px; }
    .home2-company-copy h2,
    .home2-products .home2-section-heading h2,

    .home2-updates-head h2 { font-size: 35px; }
    .home2-company-copy .home2-company-lead { font-size: 16px; }
    .home2-company-copy > p:not(.home2-kicker) { font-size: 14px; }
    .home2-company-media::before { top: -10px; right: -10px; width: 54px; }
    .home2-company .home2-proof { margin-top: 32px; padding-right: 0; padding-left: 0; }
    .home2-company .home2-proof-grid article { min-height: 94px; padding: 16px; }
    .home2-consulting-focus { grid-template-columns: 1fr; margin-top: 38px; }
    .home2-consulting-focus > a { min-height: 240px; padding: 24px 22px; }
    .home2-consulting-index { padding: 23px 20px; }
    .home2-consulting-index > div { gap: 8px 14px; }
    .home2-product-layout { gap: 24px; }
    .home2-arch { padding: 18px; }
    .home2-arch-card { min-height: 0; padding: 13px 12px; }
    .home2-arch-card small { min-height: 0; }
    .home2-arch-rail { grid-template-columns: minmax(0, 1fr) 20px; gap: 8px; padding: 11px 13px; }
    .home2-arch-rail-role, .home2-arch-rail-signal { display: none; }
    .home2-workflow--vertical { padding: 22px 18px; }
    .home2-workflow--vertical blockquote { margin: 16px 0 20px; padding: 11px 14px; }
    .home2-workflow--vertical ol { gap: 12px; }
    .home2-workflow--vertical footer { margin-top: 18px; }

    .home2-update-types { margin-top: 32px; }
    .home2-update-types > a { min-height: 76px; padding: 11px 12px; }
    .home2-update-list { grid-template-columns: 1fr; gap: 16px; }
    .home2-update-card { flex-direction: column; min-height: 430px; }
    .home2-update-media { width: auto; min-height: 0; aspect-ratio: 16 / 9; }
    .home2-update-copy { min-height: 234px; }
}

@media (max-width: 420px) {
    .home2-update-types > a:nth-child(2n + 1) { border-left: 0; }
}

@media (prefers-reduced-motion: reduce) {
    .home2-js [data-home2-reveal],
    [data-home2-reveal] {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
    }
    .home2-btn,
    .home2-next svg,
    .home2-entry-list svg,
    .home2-client-links img,
    .home2-news-lead,
    .home2-news-secondary a,
    .home2-insight-index svg,
    .home2-research-visual img,
    .home2-editorial-link svg { transition: none !important; }
    .home2-arch-flow path { animation: none !important; }
    .home2-hero-media::before,
    .home2-hero-media::after {
        opacity: .5;
        transform: none;
        animation: none !important;
    }
    .home2-hero:is(:fullscreen, :-webkit-full-screen, .is-globe-fullscreen) .home2-global-screen {
        animation: none !important;
    }
    .home2-hero:is(:fullscreen, :-webkit-full-screen, .is-globe-fullscreen) .home2-hero-globe,
    :is([data-home2-calendar-prev], [data-home2-calendar-next], .home2-global-screen__calendar-button),
    [data-home2-screen-feed] :is(
        [data-home2-feed-channel], [data-home2-screen-feed-channel],
        [data-home2-feed-date], [data-home2-screen-feed-date],
        [data-home2-feed-title], [data-home2-screen-feed-title],
        [data-home2-feed-summary], [data-home2-screen-feed-summary]
    ) {
        transition: none !important;
    }
    :is([data-home2-feed-progress], [data-home2-screen-feed-progress]) { animation: none !important; }
}

/* --------------------------------------------------------------------------
   昼夜开屏（2026-09-04 · 首页 v1.20 候选）
   机制：front-page.php 首绘前引导脚本 + home-v2.js 定时复核，给 .home2-hero 写入
   --night-d（0=白天 … 1=深夜，黄昏/清晨为中间值）并在 ≥0.5 时加 .is-night。
   夜色全部收在本区块：背景层/星空层按 --night-d 淡入，文字与地球配色随类切换。
   取色：动态页 banner 同族蓝（#0A466F/#0067B4/#008ED3/#4FC2DF）向夜色加深。
   -------------------------------------------------------------------------- */

/* 夜空背景层：盖在浅色底与白色环境光之上，随 --night-d 淡入 */
body.home .home2-hero-nightbg {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    opacity: var(--night-d, 0);
    transition: opacity 1.1s ease;
    background:
        radial-gradient(circle at 84% 16%, rgba(97, 204, 240, .15), transparent 34%),
        radial-gradient(circle at 97% 88%, rgba(79, 194, 223, .10), transparent 38%),
        radial-gradient(circle at 8% 102%, rgba(0, 103, 180, .22), transparent 48%),
        linear-gradient(122deg, #051E33 0%, #0A3A5E 44%, #0B4E7E 76%, #008ED3 116%);
}

/* 星空层：在地球之下、环境光之上；JS 生成星点，--stars-rot 驱动银河视差 */
body.home .home2-hero-stars {
    position: absolute;
    inset: -32%;
    z-index: 1;
    pointer-events: none;
    opacity: var(--night-d, 0);
    transition: opacity 1.1s ease;
    transform: rotate(var(--stars-rot, 0deg));
    transform-origin: 66% 46%;
    will-change: transform;
}
body.home .home2-hero-stars svg { width: 100%; height: 100%; display: block; }
body.home .gg-s-tw1 { animation: home2-star-tw 3.4s ease-in-out infinite; }
body.home .gg-s-tw2 { animation: home2-star-tw 4.9s ease-in-out -1.4s infinite; }
body.home .gg-s-tw3 { animation: home2-star-tw 6.3s ease-in-out -2.7s infinite; }
@keyframes home2-star-tw { 50% { opacity: .12; } }

/* 夜晚文字与按钮 */
body.home .home2-hero.is-night .home2-kicker { color: var(--home-cyan); }
body.home .home2-hero.is-night .home2-kicker::before { background: var(--home-cyan); }
body.home .home2-hero.is-night .home2-hero-copy h1 {
    color: #EAF6FD;
    text-shadow: 0 2px 26px rgba(3, 22, 40, .42);
}
body.home .home2-hero.is-night .home2-hero-copy h1 span { color: var(--home-cyan); }
body.home .home2-hero.is-night .home2-hero-lead { color: rgba(226, 242, 251, .85); }
body.home .home2-hero.is-night .home2-btn { transition: color .24s ease, background-color .24s ease, border-color .24s ease, transform .24s ease; }
body.home .home2-hero.is-night .home2-btn--primary {
    box-shadow: 0 10px 32px -8px rgba(0, 142, 211, .68);
}
body.home .home2-hero.is-night .home2-btn--secondary {
    color: #EAF6FD;
    background: rgba(255, 255, 255, .07);
    border-color: rgba(255, 255, 255, .45);
}
body.home .home2-hero.is-night .home2-btn--secondary:hover {
    color: #fff;
    background: var(--home-blue);
    border-color: var(--home-blue);
}
body.home .home2-hero.is-night .home2-next { color: rgba(226, 242, 251, .72); }
body.home .home2-hero.is-night .home2-next:hover { color: var(--home-cyan); }

/* 夜晚把「太阳光场」换成「月光/夜影」：漂移机制（真实太阳位置驱动）不变，
   只换配色——::before 为冷青月光，::after 前层恢复为可见的移动夜影 */
body.home .home2-hero.is-night .home2-hero-media::before {
    background:
        radial-gradient(ellipse 35% 27% at 78% 38%, rgba(140, 214, 245, .16) 0%, rgba(97, 204, 240, .07) 40%, transparent 76%),
        radial-gradient(ellipse 42% 56% at 86% 61%, rgba(79, 194, 223, .07) 0%, transparent 72%);
    opacity: var(--home-solar-opacity);
}
body.home .home2-hero.is-night .home2-hero-media::after {
    background:
        radial-gradient(ellipse 38% 46% at 70% 62%, rgba(2, 14, 26, .5) 0%, transparent 74%),
        radial-gradient(ellipse 31% 41% at 84% 38%, rgba(140, 214, 245, .1) 0%, transparent 75%);
    opacity: var(--home-shadow-opacity);
}

/* 地球的昼夜分界线（subsolar 实时计算）在夜色盘面下显现：
   夜半球加深，青色城市点在夜侧自然读作「城市灯光」 */
body.home .home2-hero.is-night [data-global-globe] .gg-night { fill: #05182B; opacity: .24; }
body.home .home2-hero.is-night [data-global-globe] .gg-night:nth-child(2) { opacity: .21; }
body.home .home2-hero.is-night [data-global-globe] .gg-night:nth-child(3) { opacity: .18; }
body.home .home2-hero.is-night [data-global-globe] .gg-night:nth-child(4) { opacity: .15; }

/* 夜晚地球：同一组件换夜色皮肤（CSS 变量 + 盘面渐变 stop 钩子） */
body.home .home2-hero.is-night .home2-hero-globe {
    --gg-primary: #4FC2DF;
    --gg-navy: #61CCF0;
    --gg-cyan: #8FE3F7;
    --gg-deep: #E2F0F9;
    --gg-paper: #08273F;
    filter: drop-shadow(0 34px 56px rgba(2, 16, 30, .5));
}
body.home .home2-hero.is-night .gg-disc-stop--a { stop-color: #0E3D60; }
body.home .home2-hero.is-night .gg-disc-stop--b { stop-color: #0A2F4C; }
body.home .home2-hero.is-night .gg-disc-stop--c { stop-color: #071F35; }
body.home .home2-hero.is-night [data-global-globe] .gg-disc {
    filter: drop-shadow(0 22px 30px rgba(0, 8, 18, .55));
}
body.home .home2-hero.is-night [data-global-globe] .gg-land { stroke: #2E7BA8; opacity: .82; }
body.home .home2-hero.is-night [data-global-globe] .gg-coast-wave-core { stroke: #BFEAFF; }
body.home .home2-hero.is-night [data-global-globe] .gg-city { stroke: rgba(6, 28, 46, .88); }
body.home .home2-hero.is-night [data-global-globe] .gg-city-label,
body.home .home2-hero.is-night [data-global-globe] .gg-city-tooltip {
    fill: #D8EEF9;
    stroke: rgba(6, 28, 46, .92);
}

@media (prefers-reduced-motion: reduce) {
    body.home .gg-s-tw1,
    body.home .gg-s-tw2,
    body.home .gg-s-tw3 { animation: none !important; }
    body.home .home2-hero-nightbg,
    body.home .home2-hero-stars { transition: none; }
}

/* 地球全屏信息屏的夜色文字（全屏态在夜晚同样生效） */
body.home .home2-hero.is-night .home2-global-screen__clock,
body.home .home2-hero.is-night [data-home2-screen-clock] { color: #EAF6FD; }
body.home .home2-hero.is-night .home2-global-screen__date,
body.home .home2-hero.is-night [data-home2-screen-date] { color: rgba(214, 236, 248, .78); }
body.home .home2-hero.is-night .home2-global-screen__calendar,
body.home .home2-hero.is-night [data-home2-screen-calendar] {
    border-top-color: rgba(97, 204, 240, .28);
    border-bottom-color: rgba(97, 204, 240, .28);
}
body.home .home2-hero.is-night [data-home2-calendar-title] { color: #EAF6FD; }
body.home .home2-hero.is-night .home2-calendar-day { color: rgba(214, 236, 248, .85); }
body.home .home2-hero.is-night .home2-calendar-day.is-adjacent-month { color: rgba(214, 236, 248, .3); }
body.home .home2-hero.is-night :is([data-home2-calendar-prev], [data-home2-calendar-next], .home2-global-screen__calendar-button) {
    color: rgba(214, 236, 248, .8);
    border-color: rgba(97, 204, 240, .35);
}
body.home .home2-hero.is-night [data-home2-screen-feed-channel],
body.home .home2-hero.is-night .home2-global-screen__feed-channel { color: var(--home-cyan); }
body.home .home2-hero.is-night [data-home2-screen-feed-date],
body.home .home2-hero.is-night .home2-global-screen__feed-date { color: rgba(160, 196, 220, .85); }
body.home .home2-hero.is-night [data-home2-feed-title],
body.home .home2-hero.is-night [data-home2-screen-feed-title],
body.home .home2-hero.is-night .home2-global-screen__feed-title { color: #EAF6FD; }
body.home .home2-hero.is-night :is(a[data-home2-feed-title], a[data-home2-screen-feed-title]):hover { color: var(--home-cyan); }
body.home .home2-hero.is-night [data-home2-feed-summary],
body.home .home2-hero.is-night [data-home2-screen-feed-summary],
body.home .home2-hero.is-night .home2-global-screen__feed-summary { color: rgba(214, 236, 248, .72); }
body.home .home2-hero.is-night [data-home2-feed-count],
body.home .home2-hero.is-night .home2-global-screen__feed-count { color: rgba(160, 196, 220, .9); }
body.home .home2-hero.is-night .home2-global-screen__feed-toggle { color: rgba(214, 236, 248, .8); border-color: rgba(97, 204, 240, .35); }

/* 夜间收敛（2026-09-04 Haning 反馈）：①脉冲光束夜色下不显示；
   ②天宫空间站标记降白提亮改为柔青；与白天形态互不影响 */
body.home .home2-hero.is-night [data-global-globe] .gg-coast-wave-glow,
body.home .home2-hero.is-night [data-global-globe] .gg-coast-wave-core,
body.home .home2-hero.is-night [data-global-globe] .gg-tiangong-pulse {
    display: none;
}
body.home .home2-hero.is-night [data-global-globe] .gg-tiangong-label {
    fill: #A9CFE6;
    stroke: rgba(6, 28, 46, .92);
    font-weight: 650;
}
body.home .home2-hero.is-night [data-global-globe] .gg-tiangong-panel { fill: #3589B5; }
body.home .home2-hero.is-night [data-global-globe] .gg-tiangong-core { fill: #4FC2DF; }
body.home .home2-hero.is-night [data-global-globe] :is(.gg-tiangong-panel, .gg-tiangong-core, .gg-tiangong-node) {
    stroke: rgba(6, 28, 46, .72);
}
body.home .home2-hero.is-night [data-global-globe] .gg-tiangong-marker {
    filter: drop-shadow(0 0 3px rgba(97, 204, 240, .28));
}
body.home .home2-hero.is-night [data-global-globe] .gg-tiangong-orbit {
    stroke: rgba(97, 204, 240, .4);
}
