/* Research homepage: compact editorial hierarchy, evidence one step away. */
.home-report { max-width:1600px; margin:0 auto; color:var(--ink); }
.home-report * { box-sizing:border-box; }
.home-report p { font-size:15px; line-height:1.85; margin:8px 0 12px; overflow-wrap:anywhere; }
.home-report h3 { font-size:19px; line-height:1.5; margin:0 0 12px; }
.home-report .home-label { font-size:11px; font-weight:600; letter-spacing:.5px; color:#57709e; margin:0 0 8px; }
.home-intro { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(270px,1fr); gap:32px; padding-bottom:24px; }
.home-heading h1 { font-size:clamp(26px,2.4vw,36px); line-height:1.35; letter-spacing:-1px; margin:5px 0 14px; }
.home-report .home-lead { font-size:16px; line-height:1.95; max-width:72ch; }
.home-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:16px; }
.home-actions a { font-size:13px; min-height:44px; display:inline-flex; align-items:center; }
.home-brief { border-left:2px solid #d6e1f4; padding-left:22px; }
.home-brief-items>div+div { margin-top:12px; }
.home-brief strong { font-size:12px; color:#385786; }
.home-brief p { font-size:13px; line-height:1.8; margin:3px 0 0; }
.home-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-block:1px solid var(--line); padding:16px 0; gap:20px; }
.home-metrics strong { font-size:27px; display:block; line-height:1.2; margin-bottom:5px; }
.home-metrics span { display:block; font-size:13px; }
.home-metrics small { display:block; color:var(--muted); font-size:11px; margin-top:4px; line-height:1.6; }
.home-report .home-note { font-size:12px; color:var(--muted); line-height:1.85; }
.home-report .home-boundary { margin:10px 0 16px; }
.home-jump { display:flex; gap:8px; overflow-x:auto; position:sticky; top:64px; z-index:22; background:#f7f9fcf5; backdrop-filter:blur(8px); border-block:1px solid var(--line); padding:6px 0; scrollbar-width:thin; }
.home-jump a { font-size:13px; white-space:nowrap; padding:10px 14px; min-height:40px; color:#385786; border-radius:6px; }
.home-jump a:hover { background:#eaf0ff; }
.home-section { margin:32px 0 40px; scroll-margin-top:135px; }
.home-section-head { margin-bottom:18px; }
.home-section-head>span { font-size:11px; color:#6c7c98; letter-spacing:.6px; }
.home-section-head h2 { font-size:25px; line-height:1.45; margin:6px 0 8px; letter-spacing:-.4px; }
.home-section-head p { font-size:14px; color:var(--muted); margin-bottom:0; }
.insight-grid,.opportunity-grid,.viewpoint-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.insight-card,.opportunity-card,.viewpoint-card { min-width:0; background:#fff; border:1px solid var(--line); border-radius:10px; padding:22px; }
.insight-heading { display:flex; gap:12px; align-items:baseline; }
.insight-heading>span { color:#5373af; font-size:13px; font-variant-numeric:tabular-nums; }
.insight-heading h3 { font-size:20px; }
.home-report .insight-judgment { font-weight:600; color:#344b70; }
.insight-action { padding:12px 14px; background:#f3f6fc; border-radius:6px; margin:16px 0 8px; }
.insight-action strong { font-size:12px; color:#496392; }
.insight-action p { margin:5px 0 0; font-size:14px; }
.home-report details>summary { cursor:pointer; min-height:44px; padding:12px 0; font-size:13px; color:#405e96; line-height:1.6; }
.home-report details[open]>summary { margin-bottom:6px; }
.home-report details p { font-size:14px; }
.insight-case-links { display:flex; flex-wrap:wrap; gap:6px; margin:10px 0; }
.insight-case-links a { border:1px solid #dce5f6; border-radius:5px; font-size:12px; padding:7px 10px; color:#3b5d9b; overflow-wrap:anywhere; min-height:34px; }
.insight-limit strong { display:block; font-size:12px; margin:6px 0; color:#7b6748; }
.insight-limit { color:#716750; }
.home-report .insight-references { font-size:12px; color:var(--muted); margin-bottom:0; }
.home-chips { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0; }
.home-chips button { background:#fff; border:1px solid var(--line); border-radius:7px; padding:10px 13px; min-height:42px; font:inherit; font-size:13px; color:#51627d; cursor:pointer; }
.home-chips button[aria-pressed=true] { color:#355cc1; border-color:#b7c8ef; background:#eaf0ff; }
.home-report :focus-visible { outline:3px solid #7898df; outline-offset:3px; }
.home-tag { display:inline-block; font-size:11px; color:#53709f; background:#edf2fa; padding:4px 7px; border-radius:4px; margin-bottom:10px; }
.opportunity-card p strong,.viewpoint-card p strong { display:block; font-size:12px; color:#60708b; margin-bottom:3px; }
.home-report .opportunity-buyer { color:#416395; font-size:13px; margin-top:-5px; }
.home-report [hidden] { display:none!important; }
.home-subheading { margin-top:26px!important; }
.capture-grid,.decision-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.capture-grid>div { border-top:2px solid #d2deef; padding-top:14px; }
.capture-grid h4 { font-size:15px; margin:0 0 8px; }.capture-grid p { font-size:14px; }
.value-lab { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr); gap:28px; padding:24px; background:white; border:1px solid var(--line); border-radius:12px; }
.value-fields { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:20px; }
.value-fields label { min-width:0; font-size:12px; color:#526680; }
.value-input { display:flex; gap:8px; align-items:center; border:1px solid #cdd8e9; border-radius:6px; margin-top:6px; padding:0 10px; background:#fcfdff; }
.value-input input { min-width:0; width:100%; border:0; background:transparent; height:44px; font-size:16px; padding:0; color:var(--ink); }
.value-input small { flex-shrink:0; font-size:10px; color:#64748b; }
.value-result { background:#f1f5fc; padding:22px; border-radius:8px; align-self:start; }
.value-result dl { margin:16px 0 0; }
.value-result dl>div { padding:11px 0; border-bottom:1px solid #dce5f1; }
.value-result dt { font-size:12px; color:#516581; }
.value-result dd { margin:5px 0 0; font-size:23px; font-variant-numeric:tabular-nums; line-height:1.35; }
.value-result dd small { font-size:13px; }
.value-result p { font-size:12px; color:var(--muted); }
.value-net.positive dd { color:#23705c; }.value-net.negative dd { color:#a24f3a; }
.home-disclosure { padding:0 18px; border:1px solid var(--line); border-radius:8px; margin:14px 0; background:#fff; }
.home-disclosure li { font-size:14px; line-height:1.85; margin:8px 0; }
.home-disclosure ul { padding-left:20px; }
.trend-list { display:grid; gap:16px; }
.trend-card { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); gap:28px; padding:22px; border:1px solid var(--line); border-radius:10px; background:white; }
.trend-signals { border-left:1px solid var(--line); padding-left:22px; }
.trend-signals strong { display:block; font-size:12px; color:#47638f; margin-bottom:5px; }
.decision-grid>div { background:#fff; border-top:3px solid #a9bddf; padding:18px; border-radius:3px 3px 8px 8px; }
.decision-grid>div>span { font-size:12px; color:#7187a8; }.decision-grid h3 { font-size:18px; margin:8px 0; }.decision-grid p { font-size:14px; }.decision-action { border-top:1px solid var(--line); padding-top:12px; color:#4b658e; }
.viewpoint-card { scroll-margin-top:135px; }.viewpoint-card h3 { font-size:16px; margin:6px 0; }.home-report .viewpoint-title { font-size:13px; }
.home-census { display:grid; grid-template-columns:1fr 1fr; gap:28px; padding:22px; border:1px solid var(--line); background:white; border-radius:10px; }
.home-census h3 { font-size:17px; }
.home-bar { display:grid; grid-template-columns:minmax(110px,1.3fr) minmax(50px,1fr) 24px; gap:10px; align-items:center; margin:12px 0; }
.home-bar span { font-size:12px; color:#596b85; }.home-bar b { font-size:12px; text-align:right; }
.home-bar meter { width:100%; height:8px; border:0; background:#edf1f7; border-radius:4px; }
.home-bar meter::-webkit-meter-bar { background:#edf1f7; border:0; border-radius:4px; }.home-bar meter::-webkit-meter-optimum-value { background:#7c99cf; }.home-bar meter::-moz-meter-bar { background:#7c99cf; }
.analysis-search-label { font-size:13px; color:#526581; }
.analysis-search-row { display:flex; align-items:center; gap:12px; margin-top:8px; }.analysis-search-row input { min-width:0; width:100%; font-size:16px; padding:10px; min-height:44px; border:1px solid #cbd7e8; border-radius:6px; }.analysis-search-row>span { white-space:nowrap; font-size:12px; color:var(--muted); }
.analysis-records { padding-bottom:10px; }.analysis-record { border-top:1px solid var(--line); }
.analysis-record summary>span { font-weight:600; color:var(--ink); }.analysis-record summary small { font-size:11px; font-weight:400; color:var(--muted); margin-left:6px; }.analysis-record summary>strong { display:block; font-weight:400; font-size:13px; color:#62748e; margin-top:3px; }
@media(min-width:1600px) { .opportunity-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:1150px) { .home-intro { grid-template-columns:1fr; gap:16px; }.home-brief { border-left:0; padding:0; }.home-brief-items { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }.home-brief-items>div+div { margin:0; }.capture-grid,.decision-grid { grid-template-columns:1fr 1fr; }.insight-grid { grid-template-columns:1fr; } }
@media(max-width:850px) {
 .sidebar nav { grid-template-columns:repeat(6,minmax(0,1fr)); }
 main[data-page=home] { padding:18px 16px 50px; }
 .home-jump { top:calc(60px + var(--bottom-height)); }
 .home-section,.viewpoint-card { scroll-margin-top:190px; }
 .home-intro { padding-bottom:16px; }.home-heading h1 { font-size:27px; }.home-report .home-lead { font-size:15px; }
 .home-brief { border:1px solid var(--line); border-radius:7px; padding:0 12px; background:#fff; }.home-report .home-brief>summary { display:list-item; margin:0; }.home-brief-items { display:block; padding:0 0 12px; }.home-brief-items>div+div { margin-top:10px; }
 .home-metrics { grid-template-columns:1fr 1fr; gap:16px; }.home-metrics strong { font-size:25px; }
 .value-lab,.trend-card { grid-template-columns:1fr; gap:16px; }.trend-signals { border-left:0; border-top:1px solid var(--line); padding:8px 0 0; }
 .home-section-head h2 { font-size:22px; }.home-section { margin:26px 0 32px; }
 .home-jump a { padding:8px 10px; }.home-census { grid-template-columns:1fr; gap:20px; }
}
@media(max-width:600px) {
 .home-heading h1 { font-size:25px; }.opportunity-grid,.viewpoint-grid,.capture-grid,.decision-grid { grid-template-columns:1fr; }
 .insight-card,.opportunity-card,.viewpoint-card,.trend-card { padding:17px; }.insight-heading h3 { font-size:18px; }.insight-heading { gap:8px; }
 .home-report p { font-size:14px; }.home-report .home-note { font-size:12px; }.home-intro .home-actions a { font-size:12px; }
 .value-lab { padding:16px; }.value-fields { gap:12px 10px; }.value-result { padding:16px; }.value-fields label { font-size:11px; }.value-input { padding:0 7px; gap:4px; }
 .home-disclosure { padding:0 12px; }.home-census { padding:16px; }.home-bar { grid-template-columns:minmax(110px,1.1fr) minmax(40px,1fr) 24px; gap:6px; }
 .home-chips { gap:6px; }.home-chips button { font-size:12px; padding:9px 10px; }
 .capture-grid { gap:14px; }.home-actions a { padding:10px 12px; }
 .analysis-search-row { gap:8px; }.analysis-search-row>span { font-size:11px; }
 .sidebar nav a .nav-short { font-size:13px; }
}
@media print { .home-jump,.home-chips,.home-actions { display:none; }.home-section { break-inside:auto; }.home-report details:not([open]) { display:none; }.home-report { max-width:none; }.home-intro,.insight-grid,.opportunity-grid,.value-lab,.trend-card,.viewpoint-grid { display:block; }.insight-card,.opportunity-card,.viewpoint-card { break-inside:avoid; margin:12px 0; } }

.home-report .home-brief>summary { display:none; }
@media(max-width:850px) { .home-report .home-brief>summary { display:list-item; } }
@media(min-width:1151px) { .insight-card:last-child { grid-column:1/-1; } }
