/* Insights — editorial extension of the existing GANDE system */
.insights-preview{background:var(--p-paper)}
.insights-preview-head{display:grid;grid-template-columns:2fr 5fr 3fr;gap:48px;align-items:start;margin-bottom:72px}
.insights-preview-head h2{max-width:12ch;font-family:var(--display);font-size:clamp(48px,5vw,76px);font-weight:400;line-height:1.02;letter-spacing:-.035em;text-wrap:balance}
.insights-preview-head p{max-width:34ch;color:var(--text-muted);line-height:1.75}
.insight-card-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.insight-card{position:relative;display:flex;flex-direction:column;min-height:390px;padding:30px 34px 28px;border-right:1px solid var(--border);transition:background .25s var(--ease)}
.insight-card:last-child{border-right:0}
.insight-card:hover{background:var(--p-paper-warm)}
.insight-card-meta{display:flex;justify-content:space-between;gap:16px;font-size:9px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}
.insight-card h3{margin-top:54px;font-family:var(--display);font-size:34px;font-weight:400;line-height:1.12;letter-spacing:-.025em}
.insight-card p{margin-top:20px;font-size:13px;line-height:1.75;color:var(--text-muted)}
.insight-card-arrow{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:auto;padding-top:32px;font-size:11px;font-weight:600}
.insight-card-arrow>span:last-child{font-size:22px;transition:transform .2s var(--ease)}
.insight-card:hover .insight-card-arrow>span:last-child{transform:translate(3px,-3px)}
.insights-all-link{margin-top:32px}

/* Index */
.insights-page .site-header{background:var(--header-bg);border-bottom-color:var(--border);backdrop-filter:blur(18px)}
.insights-index-hero{padding:176px 0 96px;background:var(--p-forest);color:var(--p-paper)}
.insights-index-hero .page-shell{display:grid;grid-template-columns:2fr 8fr;gap:48px}
.insights-index-hero .section-label{color:var(--p-sage)}
.insights-index-title{max-width:12ch;font-family:var(--display);font-size:clamp(62px,7vw,106px);font-weight:400;line-height:.95;letter-spacing:-.045em}
.insights-index-intro{display:grid;grid-template-columns:1fr auto;gap:48px;align-items:end;margin-top:64px;padding-top:28px;border-top:1px solid oklch(0.97 0.004 120 / .22)}
.insights-index-intro p{max-width:54ch;font-size:16px;line-height:1.8;color:oklch(0.97 0.004 120 / .72)}
.insights-total{font-family:var(--display);font-size:64px;line-height:.8;color:var(--p-sage)}
.insights-total small{display:block;margin-top:16px;font-family:var(--sans);font-size:8px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;text-align:right}
.insights-library{padding:64px 0 128px}
.insights-toolbar{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-bottom:36px}
.insight-filters{display:flex;flex-wrap:wrap;gap:8px}
.insight-filter{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 18px;border:1px solid var(--border);border-radius:100px;font-size:11px;font-weight:600;transition:background .2s,color .2s,border-color .2s}
.insight-filter span{font-size:9px;opacity:.55}
.insight-filter:hover,.insight-filter.is-active{background:var(--p-forest);border-color:var(--p-forest);color:var(--p-paper)}
.insights-result-count{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}
.insight-list{border-top:1px solid var(--border)}
.insight-row{display:grid;grid-template-columns:56px 156px minmax(0,1fr) 42px;gap:32px;align-items:start;padding:38px 0;border-bottom:1px solid var(--border);transition:padding .22s var(--ease),background .22s}
.insight-row:hover{background:var(--p-paper-warm);padding-left:18px;padding-right:18px}
.insight-row-number{padding-top:5px;font-size:10px;color:var(--text-muted)}
.insight-row-info{display:flex;flex-direction:column;gap:10px;padding-top:4px;font-size:9px;line-height:1.5;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}
.insight-row-info time{font-variant-numeric:tabular-nums}
.insight-row-main h2{max-width:28ch;font-family:var(--display);font-size:34px;font-weight:400;line-height:1.15;letter-spacing:-.025em}
.insight-row-main p{max-width:72ch;margin-top:12px;font-size:13px;line-height:1.7;color:var(--text-muted)}
.insight-row-arrow{padding-top:2px;font-size:24px;transition:transform .2s var(--ease)}
.insight-row:hover .insight-row-arrow{transform:translate(3px,-3px)}
.insights-empty{padding:72px 0;text-align:center;color:var(--text-muted)}

/* Article */
.article-hero{padding:152px 0 80px;background:var(--p-paper-warm);border-bottom:1px solid var(--border)}
.article-breadcrumb{display:inline-flex;align-items:center;gap:12px;min-height:44px;margin-bottom:64px;font-size:11px;font-weight:600}
.article-breadcrumb:hover{text-decoration:underline;text-underline-offset:5px}
.article-hero-grid{display:grid;grid-template-columns:2fr 8fr;gap:48px}
.article-eyebrow{display:flex;flex-direction:column;gap:12px;font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}
.article-eyebrow time{font-variant-numeric:tabular-nums}
.article-title{max-width:20ch;font-family:var(--display);font-size:clamp(54px,6vw,88px);font-weight:400;line-height:1.02;letter-spacing:-.04em;text-wrap:balance}
.article-dek{max-width:62ch;margin-top:32px;font-size:18px;line-height:1.75;color:var(--text-muted)}
.article-layout{display:grid;grid-template-columns:2fr minmax(0,6fr) 1fr;gap:48px;padding-top:80px;padding-bottom:128px}
.article-aside{align-self:start;position:sticky;top:128px}
.article-aside-box{padding-top:18px;border-top:1px solid var(--border)}
.article-aside-label{font-size:9px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}
.article-aside p{margin-top:14px;font-size:12px;line-height:1.75;color:var(--text-muted)}
.article-aside .text-link{margin-top:20px;font-size:11px}
.article-body{min-width:0;max-width:780px;font-size:18px;line-height:1.85;overflow-wrap:break-word}
.article-body>p{margin:0 0 28px}
.article-body h2{margin:64px 0 24px;font-family:var(--display);font-size:42px;font-weight:500;line-height:1.15;letter-spacing:-.025em}
.article-body h3{margin:48px 0 18px;font-size:25px;font-weight:500;line-height:1.35;letter-spacing:-.02em}
.article-body ul,.article-body ol{margin:0 0 32px;padding-left:24px}
.article-body li{padding-left:8px;margin-bottom:14px}
.article-body li::marker{font-size:.78em;color:var(--p-action)}
.article-body strong{font-weight:600}
.article-body figure{margin:48px 0}
.article-body figure img{width:100%;height:auto;border:1px solid var(--border);background:#fff}
.article-body figcaption{margin-top:12px;font-size:12px;line-height:1.75;color:var(--text-muted)}
.table-scroll{width:100%;margin:36px 0;overflow-x:auto;border-top:1px solid var(--border);border-bottom:1px solid var(--border);scrollbar-width:thin;scrollbar-color:var(--p-muted) transparent}
.table-scroll table{width:100%;border-collapse:collapse;font-size:12px;line-height:1.65;text-align:left;vertical-align:top}
.table-scroll.wide table{min-width:860px}
.table-scroll th{padding:16px 14px;background:var(--p-forest);color:var(--p-paper);font-size:10px;font-weight:600;letter-spacing:.05em;vertical-align:top}
.table-scroll td{min-width:110px;padding:18px 14px;border-bottom:1px solid var(--border);vertical-align:top}
.table-scroll tr:last-child td{border-bottom:0}
.table-scroll tbody tr:nth-child(even){background:var(--p-paper-warm)}
.table-scroll td:first-child{font-weight:600}
.article-end{margin-top:64px;padding-top:24px;border-top:1px solid var(--border);font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}
.article-related{background:var(--p-forest);color:var(--p-paper);padding:88px 0}
.article-related-inner{display:flex;align-items:center;justify-content:space-between;gap:48px}
.article-related h2{max-width:18ch;font-family:var(--display);font-size:48px;font-weight:400;line-height:1.05;letter-spacing:-.03em}
.article-related-actions{display:flex;flex-wrap:wrap;gap:16px}
.article-related .primary-link{background:var(--p-sage);color:var(--p-forest)}
.article-related .primary-link .link-arrow{background:var(--p-forest);color:var(--p-paper)}
.article-related .secondary-link{display:inline-flex;align-items:center;min-height:56px;padding:0 24px;border:1px solid oklch(0.97 0.004 120 / .4);border-radius:100px;font-size:12px;font-weight:600}
.article-related .secondary-link:hover{border-color:var(--p-paper)}

html[lang^="zh"] .insights-preview-head h2,
html[lang^="zh"] .insights-index-title,
html[lang^="zh"] .article-title{letter-spacing:.01em;line-height:1.3}
html[lang^="zh"] .insight-card h3,
html[lang^="zh"] .insight-row-main h2{line-height:1.5;letter-spacing:.01em}
html[lang^="zh"] .article-body{line-height:2;letter-spacing:.012em}
html[lang^="zh"] .article-body h2{line-height:1.45;letter-spacing:.01em}
html[lang^="zh"] .article-body h3{line-height:1.55;letter-spacing:.01em}
html[lang^="zh"] .article-body li{margin-bottom:16px}

@media(max-width:1100px){
 .insights-preview-head{grid-template-columns:2fr 5fr;gap:40px}.insights-preview-head p{grid-column:2}
 .insight-card{padding:26px;min-height:410px}.insight-card h3{font-size:30px}
 .insight-row{grid-template-columns:40px 130px minmax(0,1fr) 32px;gap:22px}
 .article-layout{grid-template-columns:180px minmax(0,1fr);gap:48px}.article-layout::after{display:none}
}
@media(max-width:900px){
 .insights-index-hero{padding:140px 0 80px}.insights-index-hero .page-shell{grid-template-columns:1fr}.insights-index-title{max-width:14ch}.insights-index-intro{margin-top:48px}
 .insight-card-grid{grid-template-columns:1fr}.insight-card{min-height:0;border-right:0;border-bottom:1px solid var(--border);padding:32px 0}.insight-card:last-child{border-bottom:0}.insight-card h3{margin-top:32px;max-width:24ch}.insight-card-arrow{margin-top:12px}
 .insights-preview-head{grid-template-columns:1fr;margin-bottom:48px}.insights-preview-head p{grid-column:auto}.insights-preview-head h2{max-width:14ch}
 .insight-row{grid-template-columns:40px minmax(0,1fr) 32px}.insight-row-info{grid-column:2;grid-row:1;flex-direction:row;flex-wrap:wrap}.insight-row-main{grid-column:2}.insight-row-number{grid-row:1 / span 2}.insight-row-arrow{grid-column:3;grid-row:1 / span 2}
 .article-hero-grid{grid-template-columns:1fr}.article-eyebrow{flex-direction:row;flex-wrap:wrap}.article-title{max-width:22ch}.article-layout{grid-template-columns:1fr;padding-top:56px}.article-aside{display:none}.article-body{max-width:none}
}
@media(max-width:600px){
 .insights-index-hero{padding:124px 0 64px}.insights-index-title{font-size:54px;max-width:100%}.insights-index-intro{grid-template-columns:1fr;gap:32px}.insights-index-intro p{font-size:14px}.insights-total{font-size:52px}.insights-total small{text-align:left}
 .insights-library{padding:40px 0 80px}.insights-toolbar{align-items:flex-start;flex-direction:column;gap:16px;margin-bottom:24px}.insight-filter{padding:0 14px;font-size:10px}.insights-result-count{align-self:flex-end}
 .insight-row{grid-template-columns:28px minmax(0,1fr);gap:12px;padding:30px 0}.insight-row:hover{padding-left:0;padding-right:0}.insight-row-arrow{display:none}.insight-row-main h2{font-size:29px}.insight-row-main p{font-size:12px}.insight-row-info{font-size:8px}
 .insights-preview-head h2{font-size:50px}.insight-card h3{font-size:30px}
 .article-hero{padding:116px 0 56px}.article-breadcrumb{margin-bottom:40px}.article-title{font-size:46px;max-width:100%}.article-dek{font-size:16px;margin-top:24px}.article-eyebrow{font-size:8px}
 .article-layout{padding-top:44px;padding-bottom:80px}.article-body{font-size:16px;line-height:1.9}.article-body>p{margin-bottom:24px}.article-body h2{font-size:34px;margin-top:48px}.article-body h3{font-size:22px;margin-top:40px}.article-body ul,.article-body ol{padding-left:20px}.article-body li{padding-left:4px}.article-body figure{margin:36px 0}.table-scroll{margin:28px 0}.table-scroll table{font-size:11px}.table-scroll th,.table-scroll td{padding:14px 12px}
 .article-related{padding:64px 0}.article-related-inner{align-items:flex-start;flex-direction:column;gap:32px}.article-related h2{font-size:40px}.article-related-actions{width:100%;flex-direction:column;align-items:flex-start}
 html[lang^="zh"] .insights-index-title{font-size:46px}html[lang^="zh"] .article-title{font-size:40px}
}
