/* WO-21/22: editorial rhythm and two opening types for the Insights family. */
.ie-wrap { width:min(1200px,calc(100% - 64px)); margin-inline:auto; }
.ie-home { color:var(--ztc-text); background:#fff; }
.ie-home .ztc-eyebrow,.ie-masthead .ztc-eyebrow { color:var(--ztc-action); }
.ie-masthead { padding:48px 0 34px; background:var(--ztc-white); }
.ie-masthead-inner { display:flex; align-items:end; justify-content:space-between; gap:32px; }
.ie-masthead h1 { margin:10px 0 0; font:600 var(--ztc-banner-h1-standard)/1.2 var(--ztc-serif); letter-spacing:-.035em; }
.ie-masthead-inner>p { color:var(--ztc-text-muted); font-size:16px; line-height:1.9; margin:0 0 4px; }
.ie-home .isx-subnav,.ztc-insights-system .isx-subnav,.ztc-insights-topics .isx-subnav { position:sticky; top:var(--ztc-shell-sticky-top); height:auto; transform:none; background:var(--ztc-white); border-block:1px solid var(--ztc-border); }
.ie-home .isx-subnav .isx-wrap,.ztc-insights-system .isx-subnav .isx-wrap,.ztc-insights-topics .isx-subnav .isx-wrap { width:min(1200px,calc(100% - 64px)); max-width:none; padding:0; border:0; border-radius:0; box-shadow:none; background:none; backdrop-filter:none; }
.ie-home .isx-subnav a,.ztc-insights-system .isx-subnav a,.ztc-insights-topics .isx-subnav a { min-height:52px; border-radius:0!important; }
.ie-home .isx-subnav a.is-active,.ztc-insights-system .isx-subnav a.is-active,.ztc-insights-topics .isx-subnav a.is-active { color:var(--ztc-action)!important; background:#edf5fa; box-shadow:inset 0 -2px var(--ztc-action); }
.ie-feature { display:grid; grid-template-columns:1.05fr 1fr; gap:clamp(36px,5vw,76px); align-items:center; padding-block:48px 64px; }
.ie-feature-art { position:relative; display:flex; flex-direction:column; align-items:center; background:#edf3f7; padding:24px 28px; min-width:0; color:var(--ztc-action); overflow:hidden; }
.ie-feature-art:before { content:''; position:absolute; inset:22px; border:1px solid #d7e3eb; pointer-events:none; }
.ie-feature-art img { width:min(360px,88%); height:auto; display:block; transition:transform .3s; }
.ie-feature-art:hover img { transform:translateY(-4px); }
.ie-art-label,.ie-art-caption { position:relative; font-size:12px; letter-spacing:.12em; line-height:1.6; }
.ie-art-label { align-self:start; }
.ie-art-caption { letter-spacing:.02em; color:#516679; }
.ie-feature-copy h2 { font:600 var(--ztc-fs-section)/1.4 var(--ztc-serif); max-width:15em; margin:18px 0; text-wrap:balance; }
.ie-feature-copy>p:not(.ztc-eyebrow) { color:#526274; font-size:18px; line-height:1.9; max-width:27em; }
.ie-button { display:inline-flex; align-items:center; justify-content:center; gap:24px; min-height:48px; padding:12px 24px; border-radius:6px; background:var(--ztc-action,#0067b4); color:#fff; font-size:14px; font-weight:600; border:1px solid transparent; cursor:pointer; }
.ie-button:hover { background:var(--ztc-brand-navy); color:#fff; }
.ie-text-link { display:inline-flex; gap:14px; align-items:center; min-height:44px; color:var(--ztc-action,#0067b4); font-size:14px; font-weight:600; }
.ie-feature-copy>.ie-button { margin-top:18px; }
.ie-feature-copy>.ie-text-link { display:flex; margin-top:18px; font-weight:400; }
.ie-section { padding-block:64px; }
.ie-section-head { display:flex; justify-content:space-between; align-items:end; gap:24px; margin-bottom:32px; }
.ie-section-head h2 { font:600 var(--ztc-fs-section)/1.3 var(--ztc-serif); margin:8px 0 0; }
.ie-section-head>p { color:var(--ztc-text-muted); font-size:14px; }
.ie-article-list { display:grid; grid-template-columns:1fr 1fr; column-gap:56px; }
.ie-article { padding-block:26px; border-top:1px solid #dce5ec; display:grid; grid-template-columns:34px 1fr; gap:14px; }
.ie-article-number { font-family:var(--ztc-serif); font-size:20px; color:#58768b; }
.ie-meta { color:#526579; font-size:12px; line-height:1.7; margin:0 0 10px; }
.ie-meta span { margin-inline:6px; }
.ie-article h3 { font-size:20px; line-height:1.65; font-weight:600; margin:0; text-wrap:pretty; }
.ie-article h3 a { color:inherit; }
.ie-article h3 a:hover { color:var(--ztc-action); }
.ie-article-excerpt { font-size:14px; line-height:1.8; color:var(--ztc-text-muted); margin:12px 0 0; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; }
.ie-topic-section { background:#f5f8fa; }
.ie-topic-list { display:grid; grid-template-columns:1fr 1fr; gap:0 56px; }
.ie-topic-list>a { position:relative; display:block; padding:24px 34px 24px 0; border-top:1px solid #d7e2ea; color:inherit; }
.ie-topic-list h3 { font:600 24px/1.4 var(--ztc-serif); margin:0 0 8px; }
.ie-topic-list p { color:#526274; font-size:14px; line-height:1.8; margin:0; }
.ie-topic-list svg { position:absolute; right:0; top:30px; color:var(--ztc-action); transition:transform .2s; }
.ie-topic-list a:hover svg { transform:translateX(4px); }
.ie-report-list { display:grid; grid-template-columns:repeat(3,1fr); gap:36px; }
.ie-report a { color:inherit; }
.ie-report-art { background:#f2f6f9; margin-bottom:22px; }
.ie-report img { display:block; width:100%; height:260px; object-fit:contain; padding:16px; }
.ie-report h3 { font:600 20px/1.65 var(--ztc-serif); margin:8px 0 12px; }
.ie-report p:not(.ie-meta) { color:#526274; font-size:14px; line-height:1.8; }
.ie-more { display:grid; grid-template-columns:1fr 1fr; gap:32px; padding-bottom:72px; }
.ie-more a { position:relative; color:inherit; border-block:1px solid #dce5ec; padding:24px 36px 24px 0; }
.ie-more span { font-size:20px; font-weight:600; }
.ie-more p { font-size:14px; color:#526274; margin:8px 0 0; }
.ie-more svg { position:absolute; right:0; top:34px; color:var(--ztc-action); }
/* The overview masthead is the approved compact layout; entry pages share its gutters. */
.ie-home a:focus-visible { outline:3px solid var(--ztc-action); outline-offset:5px; }
.isx-perspectives-page .isx-wrap,.isx-policy-page .isx-wrap,.trv2 .isx-wrap,.ipub2 .isx-wrap { width:min(1200px,calc(100% - 64px)); }
.ztc-insights-system .isx-library-section { padding-block:48px 72px; }
.ztc-insights-system .isx-section-head { margin-bottom:32px; }
.ztc-insights-system .isx-filter-chips button { min-height:44px; }
.trv2 .trv2-hero { min-height:0; background:#f2f7fa; color:var(--ztc-text); }
.trv2 .trv2-hero-layout { padding:40px 0; min-height:400px; display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:48px; align-items:center; }
.trv2 .trv2-hero h1 { color:var(--ztc-text); font-size:var(--ztc-banner-h1-standard); line-height:1.2; margin:16px 0 20px; }
.trv2 .trv2-hero-copy>p:not(.isx-eyebrow) { color:var(--ztc-text-muted); font-size:var(--ztc-banner-summary); line-height:1.85; max-width:28em; }
.trv2 .trv2-hero-actions { margin-top:24px; }
.trv2 .trv2-hero-copy .isx-eyebrow { color:var(--ztc-action); }
.trv2 .trv2-hero-grid,.trv2 .isx-hero-grid,.trv2 .trv2-hero-glow,.trv2 .trv2-constellation-core,.trv2 .trv2-constellation-orbit { display:none; }
.trv2 .trv2-constellation { display:grid; grid-template-columns:1fr 1fr; gap:0 24px; width:auto; height:auto; min-height:0; padding:0; align-content:center; }
.trv2 .trv2-constellation-node { position:static; inset:auto; width:auto; min-height:58px; height:auto; padding:12px 0; transform:none; border:0; border-bottom:1px solid #cfdde7; border-radius:0; box-shadow:none; background:none; color:var(--ztc-text); display:flex; justify-content:start; gap:12px; }
.trv2 .trv2-constellation-node small { color:#526274; }
.trv2 .trv2-constellation-node strong { color:var(--ztc-text); font-size:16px; }
.trv2 .trv2-hero-actions .isx-btn { color:var(--ztc-action); background:#fff; border-color:#b2cbdc; }
.trv2 .trv2-flagship { padding-block:56px; }
.ie-topic-index { color:var(--ztc-text); background:#fff; }
.ie-index-topic { display:grid; grid-template-columns:.85fr 1.15fr; gap:64px; padding:32px 0; border-top:1px solid #d7e2ea; align-items:start; }
.ie-index-topic h2 { font:600 24px/1.5 var(--ztc-serif); margin:0 0 10px; }
.ie-index-topic h2 a { color:var(--ztc-text); display:flex; align-items:center; gap:18px; }
.ie-index-topic h2 svg { color:var(--ztc-action); }
.ie-index-topic p { color:#526274; font-size:14px; line-height:1.8; margin:0; }
.ie-index-topic ul { list-style:none; padding:0; margin:0; }
.ie-index-topic li+li { border-top:1px solid #e4ecf2; }
.ie-index-topic li a { display:block; min-height:44px; padding:12px 0; color:var(--ztc-action); font-size:16px; line-height:1.8; }
.ie-index-topic li:first-child a { padding-top:0; }
.ztc-insights-system .isx-generic-topic-hero { min-height:0; }
.ztc-insights-system .isx-section { padding-block:72px; }
.ztc-insights-system.ipub2 .ipub2-section { padding-block:72px; }
/* Topic detail openings keep their subject identity while shortening the route to reading. */
.ztc-insights-system .tx-hero { min-height:0; padding:142px 0 48px; }
.ztc-insights-system .tx-hero-layout { grid-template-columns:1.1fr .9fr; gap:56px; }
.ztc-insights-system .tx-signature { min-height:330px; }
.ztc-insights-system .tx-signature-core { width:115px; }
.ztc-insights-system .tx-signature li { animation:none; }
.ztc-insights-system .tx-section { padding-block:72px; }
.ztc-insights-system .isx-generic-topic-hero-layout { min-height:0; padding:142px 0 48px; gap:56px; }
.ztc-insights-system .isx-lens-field { min-height:340px; }
.ztc-insights-system .pl-hero { min-height:0; padding:140px 0 48px; }
.ztc-insights-system .pl-hero h1 { font-size:var(--ztc-banner-h1-standard); }
.ztc-insights-system .pl-report-stage,.ztc-insights-system .pl-book-stage { min-height:350px; }
.ztc-insights-system .pl-report-stage>div { inset:64px 24px 20px; }
.ztc-insights-system .pl-report-stage img { max-height:280px; width:auto; max-width:100%; }
.ztc-insights-system .pl-report-stage>div>i { width:240px; }
.ztc-insights-system .pl-section { padding-block:64px; }
/* The two display openings share a 400px desktop frame; content can grow when zoomed. */
.ztc-insights-system .ipub2-hero { min-height:0; }
.ztc-insights-system .ipub2-hero-layout { min-height:400px; padding-block:40px; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:48px; }
.ipub2 .ipub2-hero-copy h1 { font-size:var(--ztc-banner-h1-standard); line-height:1.2; margin:16px 0 20px; }
.ipub2 .ipub2-hero-lead { font-size:var(--ztc-banner-summary); line-height:1.85; max-width:28em; color:var(--ztc-text-on-dark); }
.ipub2 .ipub2-hero-actions { margin-top:24px; }
.ipub2 .ipub2-hero-library { padding:0 0 16px; }
.ipub2 .ipub2-hero-shelf { min-height:220px; padding:0 4px 12px; }
.ipub2 .ipub2-hero-book img { width:100%; max-width:160px; }
.ipub2 .ipub2-hero-library-line { bottom:15px; }
.ipub2 .ipub2-catalog-facts { display:flex; flex-wrap:wrap; gap:20px 40px; margin:0 0 40px; padding-bottom:28px; border-bottom:1px solid var(--ztc-border); }
.ipub2 .ipub2-catalog-facts div { display:flex; align-items:baseline; gap:10px; }
.ipub2 .ipub2-catalog-facts dt { color:var(--ztc-action); font:600 var(--ztc-fs-h2)/1 var(--ztc-serif); }
.ipub2 .ipub2-catalog-facts dd { margin:0; font-size:var(--ztc-fs-small); color:var(--ztc-text-muted); }
@media(max-width:767px) {
 .ztc-insights-system .pl-hero { padding:112px 0 36px; }
 .ztc-insights-system .pl-hero-layout,.ztc-insights-system .pl-report-hero-layout { gap:28px; }
 .ztc-insights-system .pl-hero dl { grid-template-columns:repeat(3,1fr); margin-top:24px; }
 .ztc-insights-system .pl-report-stage,.ztc-insights-system .pl-book-stage { min-height:270px; }
 .ztc-insights-system .pl-report-stage img { max-height:180px; }
 .ztc-insights-system .pl-report-stage>div>i { width:150px; }
 .ztc-insights-system .pl-book-stage img { max-height:200px; object-fit:contain; }
 .ztc-insights-system .pl-section { padding-block:44px; }
 .ztc-insights-system .ipub2-hero-layout { min-height:0; padding-block:32px; grid-template-columns:1fr; gap:28px; }
 .ipub2 .ipub2-hero-shelf { min-height:0; }
 .ipub2 .ipub2-catalog-facts { gap:16px 24px; margin-bottom:28px; }
 .ztc-insights-system .tx-hero { padding:112px 0 36px; }
 .ztc-insights-system .tx-hero-layout { display:block; }
 .ztc-insights-system .tx-hero-actions { margin-top:22px; }
 .ztc-insights-system .tx-signature { min-height:0; margin-top:28px; padding:18px; }
 .ztc-insights-system .tx-signature::before,.ztc-insights-system .tx-signature-field,.ztc-insights-system .tx-signature-core { display:none; }
 .ztc-insights-system .tx-signature figcaption { display:block; }
 .ztc-insights-system .tx-signature figcaption span { display:none; }
 .ztc-insights-system .tx-signature ol { position:static; display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:16px; }
 .ztc-insights-system .tx-signature li { position:static; inset:auto; transform:none; min-width:0; padding:10px 0; border:0; border-top:1px solid #ffffff40; background:none; }
 .ztc-insights-system .tx-signature li i { display:none; }
 .ztc-insights-system .tx-signature li span { grid-row:auto; }
 .ztc-insights-system .tx-section { padding-block:44px; }
 .ztc-insights-system .isx-generic-topic-hero-layout { display:block; padding:112px 0 36px; }
 .ztc-insights-system .isx-lens-field { min-height:0; height:auto; aspect-ratio:auto; border-radius:0; margin-top:28px; padding:20px; }
 .ztc-insights-system .isx-lens-field figcaption { position:static; transform:none; white-space:normal; }
 .ztc-insights-system .isx-lens-field::before,.ztc-insights-system .isx-lens-field::after,.ztc-insights-system .isx-lens-field-core { display:none; }
 .ztc-insights-system .isx-lens-field ol { position:static; display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:16px 0 0; padding:0; }
 .ztc-insights-system .isx-lens-field li { position:static; inset:auto; transform:none; width:auto; min-width:0; min-height:44px; padding:10px 0; border:0; border-top:1px solid #ffffff40; background:none; box-shadow:none; animation:none; }
 .ztc-insights-system .isx-lens-field li i { display:none; }
 .ztc-insights-system .isx-lens-field li:nth-child(n) { flex-direction:row; }
 .ztc-insights-system .isx-lens-field li span { min-width:0; padding:0; border:0; background:none; text-align:left; }
 .trv2 .trv2-hero-layout { display:block; min-height:0; padding-block:32px; }
 .trv2 .trv2-constellation { margin:28px 0 0; }
 .trv2 .trv2-constellation-node { min-height:52px; }
 .trv2 .trv2-flagship { padding-block:36px; }
 .ie-index-topic { grid-template-columns:1fr; gap:22px; padding-block:28px; }
 .ztc-insights-system .isx-section,.ztc-insights-system.ipub2 .ipub2-section { padding-block:44px; }
 .ie-wrap,.isx-perspectives-page .isx-wrap,.isx-policy-page .isx-wrap,.trv2 .isx-wrap,.ipub2 .isx-wrap { width:calc(100% - 40px); }
 .ie-home .isx-subnav .isx-wrap,.ztc-insights-system .isx-subnav .isx-wrap,.ztc-insights-topics .isx-subnav .isx-wrap { width:calc(100% - 40px); }
 .ie-masthead { padding:32px 0 24px; }
 .ie-masthead-inner { display:block; }
 .ie-masthead-inner>p { margin:16px 0 0; min-height:3.8em; }
 .ie-masthead-inner>p br { display:none; }
 .ie-feature { display:flex; flex-direction:column; align-items:stretch; gap:28px; padding-block:28px 40px; }
 .ie-feature-art { padding:18px; }
 .ie-feature-art img { width:240px; max-width:82%; }
 .ie-feature-art:before { inset:14px; }
 .ie-feature-copy h2 { margin-block:12px; font-size:var(--ztc-fs-h2); }
 .ie-feature-copy>p:not(.ztc-eyebrow) { font-size:16px; }
 .ie-section { padding-block:44px; }
 .ie-section-head { align-items:start; gap:16px; margin-bottom:24px; flex-wrap:wrap; }
 .ie-section-head h2 { font-size:var(--ztc-fs-h2); }
 .ie-article-list,.ie-topic-list,.ie-report-list,.ie-more { grid-template-columns:1fr; gap:0; }
 .ie-article { grid-template-columns:24px 1fr; gap:10px; padding-block:22px; }
 .ie-article h3 { font-size:18px; }
 .ie-topic-list h3 { font-size:20px; }
 .ie-report { padding-block:24px; border-top:1px solid #dce5ec; }
 .ie-report>a { display:grid; grid-template-columns:96px 1fr; gap:8px 20px; }
 .ie-report-art { grid-row:1 / span 4; margin-bottom:0; }
 .ie-report img { height:150px; padding:4px; }
 .ie-report h3 { font-size:18px; margin:0; }
 .ie-report .ie-meta,.ie-report p { margin:0; }
 .ie-report p:not(.ie-meta),.ie-report .ie-text-link { grid-column:2; }
 .ie-more { padding-bottom:44px; }
 .ie-more a+a { border-top:0; }
 .ztc-insights-system .isx-library-section { padding-block:32px 48px; }
}
@media(prefers-reduced-motion:reduce) { .ie-home * { transition:none; scroll-behavior:auto; } }

/* WO-24: one reading list for professional articles and policy coverage. */
.isx-library-head { display:flex; justify-content:space-between; align-items:end; gap:40px; margin-bottom:30px; }
.isx-library-head h2 { color:var(--ztc-navy-deep); font:600 32px/1.45 var(--ztc-serif); }
.isx-library-head p:not(.isx-kicker) { margin-top:12px; color:#556a82; font-size:14px; line-height:1.85; }
.isx-library-head .isx-search-box { flex:0 0 300px; min-height:46px; border:1px solid var(--ztc-border); box-shadow:none; background:var(--ztc-white); border-radius:6px; }
.isx-library-head .isx-search-box:focus-within { border-color:var(--ztc-action); box-shadow:none; }
.isx-library-filters { display:flex; align-items:center; justify-content:space-between; gap:24px; border-block:1px solid #dce5ec; padding:12px 0; }
.isx-library-filters .isx-filter-chips { flex-wrap:wrap; gap:6px; min-width:0; }
.isx-library-filters .isx-filter-chips button { border:0; border-radius:6px; background:transparent; min-height:44px; padding:8px 16px; font-size:13px; color:#556a82; }
.isx-library-filters .isx-filter-chips button.is-active { color:var(--ztc-action); background:#f0f7fb; box-shadow:none; }
.isx-library-filters .isx-result-count { margin:0; flex-shrink:0; font-size:13px; color:#556a82; }
.isx-reading-row { border-bottom:1px solid #dce5ec; }
.isx-reading-row[hidden] { display:none; }
.isx-reading-row>a { display:grid; grid-template-columns:140px minmax(0,1fr) 90px; gap:40px; align-items:start; padding:30px 0; color:var(--ztc-text); }
.isx-reading-meta { display:flex; flex-direction:column; gap:10px; font-size:13px; line-height:1.7; }
.isx-reading-meta>span { color:var(--ztc-action); font-weight:600; }
.isx-reading-meta time { color:#556a82; font-size:12px; font-variant-numeric:tabular-nums; }
.isx-reading-copy { min-width:0; }
.isx-reading-copy h3 { color:var(--ztc-navy-deep); font:600 23px/1.65 var(--ztc-sans); letter-spacing:-.025em; text-wrap:pretty; transition:color .18s; }
.isx-reading-copy>p { margin-top:10px; color:#556a82; font-size:14px; line-height:1.85; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.isx-reading-copy>small { display:block; margin-top:12px; color:#556a82; font-size:13px; }
.isx-reading-link { display:inline-flex; justify-content:end; align-items:center; align-self:center; gap:8px; min-height:44px; color:var(--ztc-action); font-size:13px; white-space:nowrap; }
.isx-reading-link svg { flex:none; transition:transform .18s; }
.isx-reading-row>a:hover h3 { color:var(--ztc-action); }
.isx-reading-row>a:hover .isx-reading-link svg { transform:translateX(3px); }
.isx-reading-library .isx-empty-state button { display:block; width:max-content; min-height:44px; margin:20px auto 0; padding:10px 18px; border:1px solid var(--ztc-border); border-radius:6px; background:var(--ztc-white); color:var(--ztc-action); cursor:pointer; font:600 14px var(--ztc-sans); }
@media(max-width:1050px) {
 .isx-reading-row>a { grid-template-columns:112px minmax(0,1fr) 82px; gap:24px; }
}
@media(max-width:767px) {
 .isx-library-head { display:block; margin-bottom:24px; }
 .isx-library-head h2 { font-size:28px; }
 .isx-library-head .isx-search-box { width:100%; margin-top:24px; }
 .isx-library-filters { display:block; padding-block:10px; }
 .isx-library-filters .isx-filter-chips { flex-wrap:nowrap; overflow-x:auto; padding-bottom:6px; }
 .isx-library-filters .isx-filter-chips button { flex-shrink:0; }
 .isx-library-filters .isx-result-count { margin-top:10px; }
 .isx-reading-row>a { display:block; padding:24px 0; }
 .isx-reading-meta { flex-direction:row; gap:18px; margin-bottom:12px; }
 .isx-reading-copy h3 { font-size:20px; }
 .isx-reading-link { justify-content:start; margin-top:10px; }
}
@media(prefers-reduced-motion:reduce) { .isx-reading-row * { transition:none; } }
