/* Editorial research compositions; shared foundation owns base typography and controls. */
.hcc-research { --home-line:var(--hcc-border); color:var(--hcc-text-primary); }
.hcc-research h1,.hcc-research h2,.hcc-research h3,.hcc-research h4,.hcc-research p { margin:0; }
.hcc-research section[id],.hcc-research [id^=provider-] { scroll-margin-top:calc(var(--hcc-header-height) + 24px); }
.hcc-research a { text-underline-offset:4px; }
.research-eyebrow { color:var(--hcc-accent); font-size:11px; line-height:1.5; font-weight:750; letter-spacing:.1em; }
.research-hero { background:var(--hcc-navy); color:white; padding:24px 0 32px; }
.research-breadcrumb { display:flex; flex-wrap:wrap; align-items:center; gap:10px; font-size:12px; color:#cbd5e1; margin-bottom:32px; }
.research-breadcrumb a { display:inline-flex; align-items:center; min-height:32px; color:white; text-decoration:none; }
.research-breadcrumb a:hover { text-decoration:underline; }
.research-hero-grid { display:grid; grid-template-columns:minmax(0,2.1fr) minmax(0,1fr); gap:64px; align-items:center; }
.research-hero .research-eyebrow { color:#fbbf24; }
.research-hero h1 { color:white; font-size:clamp(30px,3.4vw,46px); line-height:1.15; letter-spacing:-.04em; margin-top:12px; max-width:790px; }
.research-intro { margin-top:20px!important; font-size:16px; line-height:1.8; color:#cbd5e1; max-width:790px; }
.research-hero-links { display:flex; flex-wrap:wrap; gap:12px 24px; align-items:center; margin-top:24px; }
.research-hero-links>a:not(.hcc-btn) { color:white; font-size:12px; min-height:44px; display:inline-flex; align-items:center; }
.research-hero-note { border-left:1px solid #475569; padding-left:32px; }
.research-hero-note strong { display:block; font-size:22px; line-height:1.45; margin:12px 0; letter-spacing:-.025em; }
.research-hero-note p { font-size:13px; line-height:1.8; color:#cbd5e1; }
.research-hero-note a { display:inline-flex; align-items:center; min-height:44px; font-size:13px; color:#fbbf24; margin-top:8px; }
.research-picks { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-top:32px; }
.research-pick { color:var(--hcc-text-primary); background:white; border-radius:8px; border-top:3px solid var(--hcc-brand-amber); padding:20px; display:grid; grid-template-columns:1fr auto; gap:12px; text-decoration:none; }
.research-pick>span { font-size:16px; font-weight:750; }
.research-pick strong { font-size:21px; line-height:1.2; text-align:right; }
.research-pick small { display:block; font-size:10px; font-weight:500; color:var(--hcc-text-muted); margin-top:4px; }
.research-pick p { display:flex; justify-content:space-between; gap:12px; grid-column:1/-1; color:var(--hcc-text-muted); font-size:12px; }
.research-pick:hover { background:var(--hcc-accent-subtle); }
.research-category-nav { border-bottom:1px solid var(--hcc-border); background:var(--hcc-bg-subtle); }
.research-category-nav>div { display:flex; gap:8px; flex-wrap:wrap; padding-block:12px; }
.research-category-nav a { color:var(--hcc-text-muted); font-size:12px; font-weight:600; text-decoration:none; padding:10px 12px; min-height:44px; display:flex; align-items:center; border-radius:6px; border:1px solid transparent; }
.research-category-nav a:hover,.research-category-nav a[aria-current] { color:var(--hcc-accent); border-color:var(--hcc-accent-border); background:var(--hcc-accent-subtle); }
.research-section { padding:48px 0; }
.research-heading { display:flex; flex-wrap:wrap; align-items:end; justify-content:space-between; gap:24px; margin-bottom:20px; }
.research-heading h2 { font-size:clamp(25px,2.6vw,34px); letter-spacing:-.035em; margin-top:8px; }
.research-heading p:not(.research-eyebrow) { font-size:14px; color:var(--hcc-text-muted); margin-top:12px; }
.research-sort { display:grid; gap:6px; min-width:210px; }
.research-sort label { font-size:12px; color:var(--hcc-text-muted); }
.research-sort select { background:white; color:var(--hcc-text-primary); padding:10px 12px; font:inherit; font-size:13px; border:1px solid var(--hcc-border-strong); border-radius:6px; min-height:44px; }
.research-note { font-size:12px; color:var(--hcc-text-muted); margin-bottom:24px!important; max-width:880px; }
.research-compare-bar { display:flex; flex-wrap:wrap; align-items:center; gap:12px; background:var(--hcc-bg-subtle); padding:16px; border:1px solid var(--hcc-border); border-radius:8px; margin-bottom:20px; }
.research-compare-bar p { flex:1 1 240px; font-size:13px; }
.research-compare-bar button:disabled { cursor:not-allowed; opacity:.65; }
.research-compare-check { display:none; align-items:center; gap:8px; font-size:12px; min-height:44px; cursor:pointer; color:var(--hcc-text-muted); }
.research-enhanced .research-compare-check { display:flex; }
.research-compare-check input { width:18px; height:18px; accent-color:var(--hcc-accent); }
.research-banner { display:flex; gap:24px; align-items:center; justify-content:space-between; background:var(--hcc-bg-subtle); border:1px solid var(--hcc-border); border-radius:8px; padding:24px; margin-top:24px; }
.research-banner h3 { font-size:21px; margin-top:8px; }
.research-banner p:not(.research-eyebrow) { font-size:13px; color:var(--hcc-text-muted); margin-top:8px; }
.research-banner .hcc-btn { flex-shrink:0; }
.research-editorial-layout { display:grid; grid-template-columns:minmax(0,3fr) minmax(220px,1fr); gap:64px; align-items:start; padding-block:32px 64px; }
.research-editorial { min-width:0; }
.research-editorial>section { margin-bottom:40px; }
.research-editorial h2 { font-size:clamp(24px,2.2vw,30px); letter-spacing:-.025em; line-height:1.3; margin-bottom:16px; }
.research-editorial h3 { font-size:18px; line-height:1.45; }
.research-editorial h4 { font-size:14px; }
.research-editorial p { font-size:15px; line-height:1.85; color:var(--hcc-text-secondary); }
.research-editorial p+h2 { margin-top:12px; }
.research-byline { display:flex; flex-wrap:wrap; gap:12px 24px; align-items:center; padding-bottom:24px; border-bottom:1px solid var(--hcc-border); margin-bottom:32px; font-size:12px; color:var(--hcc-text-muted); }
.research-byline>span { font-weight:700; color:var(--hcc-text-primary); }
.research-byline a { color:var(--hcc-text-muted); min-height:44px; display:inline-flex; align-items:center; }
.research-table-scroll { overflow-x:auto; border:1px solid var(--hcc-border); border-radius:8px; margin-top:20px; }
.research-table-scroll table { width:100%; min-width:610px; border-collapse:collapse; font-size:12px; text-align:left; }
.research-table-scroll caption { text-align:left; font-weight:650; padding:16px; color:var(--hcc-text-muted); }
.research-table-scroll th,.research-table-scroll td { padding:14px 16px; border-top:1px solid var(--hcc-border); vertical-align:top; }
.research-table-scroll thead { background:var(--hcc-bg-subtle); }
.research-table-scroll th { font-weight:650; }
.research-table-scroll a { color:var(--hcc-accent); }
.research-fit-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.research-fit-grid>div { padding:24px; border:1px solid var(--hcc-border); border-radius:8px; background:var(--hcc-bg-subtle); }
.research-fit-grid ul { margin:16px 0 0; padding-left:18px; color:var(--hcc-text-secondary); font-size:14px; }
.research-fit-grid li+li { margin-top:12px; }
.research-fit-grid li::marker { color:var(--hcc-accent); }
.research-checklist { display:grid; gap:24px; margin-top:24px; }
.research-checklist>div { display:grid; grid-template-columns:40px minmax(0,1fr); gap:16px; }
.research-checklist>div>span { width:40px; height:40px; display:grid; place-items:center; border:1px solid var(--hcc-accent-border); background:var(--hcc-accent-subtle); border-radius:8px; color:var(--hcc-accent); font-size:12px; font-weight:700; }
.research-checklist p { margin-top:8px; }
.research-sidebar { position:sticky; top:calc(var(--hcc-header-height) + 24px); }
.research-sidebar nav { display:grid; gap:4px; padding:24px; border:1px solid var(--hcc-border); border-radius:8px; }
.research-sidebar nav a { display:flex; align-items:center; min-height:44px; font-size:13px; color:var(--hcc-text-muted); text-decoration:none; border-bottom:1px solid var(--hcc-border); }
.research-sidebar nav a:hover { color:var(--hcc-accent); }
.research-sidebar-help { margin-top:24px; padding:24px; background:var(--hcc-bg-subtle); border-radius:8px; }
.research-sidebar-help h3 { font-size:18px; }
.research-sidebar-help p { margin-block:12px 20px; font-size:13px; color:var(--hcc-text-muted); }
.research-sidebar-help .hcc-btn { width:100%; font-size:12px; }
.research-provider-note { border:1px solid var(--hcc-border); border-radius:8px; padding:24px; margin-top:20px; }
.research-provider-note .research-fit-grid { gap:20px; margin-top:16px; }
.research-provider-note .research-fit-grid>div { border:0; padding:0; background:transparent; }
.research-provider-note li { font-size:13px; }
.research-link { display:inline-flex; align-items:center; min-height:44px; font-size:13px; font-weight:650; color:var(--hcc-accent); margin-top:12px; text-decoration:none; }
.research-link:hover { text-decoration:underline; }
.research-faq { border:1px solid var(--hcc-border); border-radius:8px; }
.research-faq details+details { border-top:1px solid var(--hcc-border); }
.research-faq summary { padding:18px 20px; cursor:pointer; font-size:14px; font-weight:650; }
.research-faq details p { padding:0 20px 20px; font-size:14px; }
.research-related { display:grid; gap:12px; margin-top:20px; }
.research-related a { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px 20px; border:1px solid var(--hcc-border); border-radius:8px; color:var(--hcc-text-primary); font-size:14px; font-weight:650; text-decoration:none; }
.research-related a:hover { color:var(--hcc-accent); border-color:var(--hcc-accent); }
.research-empty { padding:32px; border:1px solid var(--hcc-border); border-radius:8px; background:var(--hcc-bg-subtle); }
.research-empty h2 { font-size:28px; margin-top:8px; }
.research-empty p { margin-block:16px 24px; max-width:800px; color:var(--hcc-text-muted); font-size:15px; }
.research-editorial .research-empty { margin-top:24px; }
.research-source { border-top:1px solid var(--hcc-border); padding-top:20px; font-size:12px!important; margin-top:24px!important; color:var(--hcc-text-muted); }
.research-source a { color:var(--hcc-accent); }
.research-sort[hidden],.research-compare-bar[hidden] { display:none; }
.research-hub { padding-block:32px; }
.research-hub h2 { font-size:26px; letter-spacing:-.025em; }
.research-hub>p { font-size:14px; color:var(--hcc-text-muted); margin:12px 0 20px; }
.research-hub-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.research-hub-grid a { display:block; padding:24px; border:1px solid var(--hcc-border); border-radius:8px; background:white; color:var(--hcc-text-primary); text-decoration:none; }
.research-hub-grid a:hover { border-color:var(--hcc-accent); }
.research-hub-grid strong { font-size:16px; display:block; }
.research-hub-grid span { display:block; margin-top:8px; font-size:13px; color:var(--hcc-text-muted); }
@media(max-width:1023px) { .research-hero-grid { gap:32px; } .research-hero-note { padding-left:24px; } .research-editorial-layout { grid-template-columns:minmax(0,1fr); gap:0; } .research-sidebar { position:static; grid-row:1; margin-bottom:32px; } .research-sidebar nav { grid-template-columns:repeat(3,minmax(0,1fr)); column-gap:20px; } .research-sidebar .research-eyebrow { grid-column:1/-1; } .research-sidebar-help { display:none; } .research-banner { flex-wrap:wrap; } }
@media(max-width:767px) { .research-hero { padding-top:16px; } .research-breadcrumb { margin-bottom:20px; font-size:11px; gap:8px; } .research-hero-grid { grid-template-columns:1fr; gap:24px; } .research-hero-note { border-left:0; border-top:1px solid #475569; padding:24px 0 0; } .research-hero-note strong { font-size:19px; } .research-hero h1 { font-size:clamp(30px,7vw,40px); } .research-intro { font-size:14px; } .research-hero-links { gap:8px 20px; } .research-picks { grid-template-columns:1fr; gap:12px; margin-top:24px; } .research-pick { padding:16px; } .research-section { padding:32px 0; } .research-heading { gap:16px; } .research-sort { width:100%; } .research-sort select { font-size:16px; } .research-compare-bar { padding:16px; } .research-compare-bar button { flex-grow:1; } .research-compare-bar p { flex-basis:100%; } .research-fit-grid { grid-template-columns:1fr; gap:16px; } .research-fit-grid>div { padding:20px; } .research-sidebar nav { grid-template-columns:1fr 1fr; padding:20px; gap:4px 16px; } .research-sidebar nav a { font-size:12px; } .research-editorial-layout { padding-bottom:32px; } .research-editorial>section { margin-bottom:32px; } .research-provider-note,.research-banner,.research-empty { padding:20px; } .research-hub-grid { grid-template-columns:1fr; } }
.research-hero .research-updated { color:#cbd5e1; font-size:12px; margin-top:16px; }
