/* Editorial extensions retain the existing paper / forest green identity.
   Reading pages use 17px body text; existing marketing hero proportions remain. */
.breadcrumb { align-items:center; flex-wrap:wrap; font-size:13px; line-height:22px; gap:8px 12px; padding-top:28px; padding-bottom:0; }
.breadcrumb > [aria-current] { max-width:65ch; }
.breadcrumb a { text-decoration:underline; text-underline-offset:4px; }
.guide-section > .sec-head { margin-bottom:36px; }
.guide-section > p { font-size:17px; line-height:27px; max-width:780px; }
.guide-section .topic-grid { padding-bottom:0; }
.guide-section h2 + p { margin-top:20px; }
.related-pages { display:flex; flex-wrap:wrap; align-items:center; gap:16px 32px; margin-top:32px; }
.source-link { display:block; margin-top:18px; font-size:14px; line-height:22px; text-decoration:underline; text-underline-offset:4px; color:var(--muted); }
.source-note a { text-decoration:underline; text-underline-offset:4px; }
.faq-section .faq-list { margin-top:28px; }
.faq-item { border-top:1px solid var(--line); padding:24px 0; }
.faq-item:last-child { border-bottom:1px solid var(--line); }
.faq-item summary { position:relative; list-style:none; padding-right:36px; cursor:pointer; color:var(--ink); font-size:17px; line-height:27px; font-weight:600; }
.faq-item summary::-webkit-details-marker { display:none; }
.faq-item summary::after { content:'+'; position:absolute; right:4px; top:0; font-size:24px; font-weight:400; }
.faq-item[open] summary::after { content:'−'; }
.faq-answer { margin-top:18px; }
.faq-answer p { font-size:17px; line-height:27px; }
.wrap.article-body { max-width:1000px; padding-bottom:72px; }
.article-layout .article-body { width:100%; }
.article-header .article-lead { font-size:21px; line-height:32px; margin-top:24px; max-width:780px; }
.article-header .article-meta { margin-top:24px; }
.article-body .guide-section:first-child { margin-top:0; }
.article-body .guide-section h2 { font-size:32px; line-height:39px; }
.article-body .content-table { margin-block:28px; }
.article-body .article-grid { margin-top:28px; }
.article-body .article-card { font-size:17px; line-height:27px; }
.article-body .article-card h3 a { text-decoration:none; }
.article-body .article-card h3 { font-size:21px; line-height:32px; }
.article-body .related-reading .sec-head { display:block; }
.article-body .related-reading .sec-head .text-link { margin-top:12px; }
.article-body .article-sources { margin-bottom:40px; }
.insights-opening { display:grid; grid-template-columns:1.3fr 1fr; gap:64px; align-items:center; padding-top:20px; padding-bottom:72px; }
.insights-cover { margin:0; }
.insights-cover img { width:100%; height:auto; aspect-ratio:2/1; object-fit:cover; }
.insights-cover figcaption { font-size:12px; line-height:18px; margin-top:10px; color:var(--muted); }
.insights-opening h2 { margin-top:16px; }
.insights-opening p:not(.section-kicker) { font-size:17px; line-height:27px; margin-top:22px; }
.insights-opening .text-link { margin-top:24px; }
.insight-topic > .sec-head > div { max-width:770px; }
.insight-topic .section-kicker { margin-bottom:14px; }
.insight-topic > .sec-head h2 { font-size:36px; line-height:1.4; }
.insight-topic { scroll-margin-top:110px; }
.insight-topic .article-grid { padding-bottom:0; }
.content-directory { padding-bottom:48px; }
.directory-row { display:grid; grid-template-columns:1fr 1.2fr; gap:72px; align-items:center; padding:48px 0; border-top:1px solid var(--line); }
.directory-row:nth-child(even) { grid-template-columns:1.2fr 1fr; }
.directory-row:nth-child(even) figure { order:2; }
.directory-row figure { background:var(--sage); height:310px; padding:0; overflow:hidden; }
.directory-row figure img { width:100%; height:100%; object-fit:cover; }
.directory-row:first-child figure, .directory-row:nth-child(3) figure, .directory-row:nth-child(4) figure { padding:30px; }
.directory-row:first-child figure img, .directory-row:nth-child(3) figure img, .directory-row:nth-child(4) figure img { object-fit:contain; }
.directory-row:nth-child(3) figure { background:var(--beige); }
.directory-row h2 { margin-top:14px; }
.directory-row p:not(.section-kicker) { margin-top:22px; font-size:17px; line-height:27px; }
.directory-row .text-link { margin-top:24px; }
.platform-opening { display:grid; grid-template-columns:1fr 1.1fr; gap:64px; align-items:center; padding-block:32px 64px; }
.platform-opening > img { width:100%; height:300px; object-fit:contain; background:#fff; padding:36px; }
.platform-opening h2 { margin-top:18px; }
.platform-opening p:not(.section-kicker) { font-size:17px; line-height:27px; margin-top:24px; }
.platform-opening .button { margin-top:28px; }
.service-hub .topic-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.service-hub .topic-card ul { margin:22px 0 0; padding-left:1.2em; color:var(--muted); font-size:17px; line-height:27px; }
.service-hub .topic-card .section-kicker { min-height:44px; }
.evidence-list h3 { font-size:21px; line-height:32px; margin-bottom:10px; }
.company-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; margin:0; }
.company-facts > div { border-top:1px solid var(--line); padding-top:20px; }
.company-facts dt { font-size:14px; line-height:22px; color:var(--muted); }
.company-facts dd { margin:12px 0 0; font-size:21px; line-height:32px; font-weight:600; color:var(--ink); }
.company-history { max-width:900px; }
.company-history .rec-date { min-width:85px; }
.company-history li { font-size:17px; line-height:27px; padding-block:18px; }
.project-detail .article-body { min-width:0; }
.project-detail .project-facts { margin-top:24px; }
.project-detail .guide-section { padding-block:0; }
.project-detail .guide-section + .guide-section { margin-top:48px; }
.project-detail .article-sources .text-link { margin-top:18px; }
#records .guide-section { padding-block:32px; }
#records .guide-section h3 { font-size:28px; line-height:35px; }
.edu-layout { align-items:start; }
.edu-main { min-width:0; }
.edu-main .article-body { max-width:none; }
.edu-main .guide-section { padding-block:32px; }
.edu-main .guide-section + .guide-section { margin-top:16px; }
.edu-main .topic-grid { grid-template-columns:1fr; gap:24px; padding-bottom:0; }
.edu-main .topic-card { padding-top:20px; }
.edu-main .topic-card h3 { font-size:21px; line-height:32px; }
.edu-main .source-note { font-size:14px; line-height:22px; }
.edu-main .program-track { border-bottom:1px solid var(--line); padding-block:24px; }
.edu-main .program-track h3 { font-size:21px; line-height:32px; }
.edu-main .program-track p { margin-top:12px; font-size:17px; line-height:27px; }
.edu-main .program-track ul { padding-left:1.2em; }
.edu-main .program-track li { font-size:17px; line-height:27px; }
.edu-main .edu-guide { margin-top:28px; }


.home-insights .article-grid { padding-bottom:0; }
.home-insights .sec-head { margin-bottom:40px; }
.insight-resource-links { display:flex; flex-wrap:wrap; gap:12px 28px; }
.insight-search { padding:28px; margin-bottom:32px; background:var(--sage); }
.insight-search label { display:block; color:var(--ink); font-size:17px; font-weight:600; margin-bottom:12px; }
.insight-search-row { display:flex; align-items:stretch; gap:12px; }
.insight-search input { min-width:0; flex:1; padding:13px 16px; border:1px solid var(--line); background:var(--paper); color:var(--text); border-radius:0; }
.insight-search button { padding:12px 20px; border:1px solid var(--ink); color:var(--ink); background:transparent; }
.insight-search p { margin-top:12px; font-size:14px; }
.insight-empty { padding:32px 0 56px; }
.topic-count { margin-left:5px; font-variant-numeric:tabular-nums; font-size:13px; color:var(--muted); }
[data-insights-directory] [hidden] { display:none!important; }
.article-meta a { text-decoration:underline; text-underline-offset:4px; }
.article-download { display:inline-block; margin-top:16px; font-size:14px; text-decoration:underline; text-underline-offset:4px; }
.article-download span { color:var(--muted); }
@media (max-width:1068px) {
 .insights-opening, .directory-row, .directory-row:nth-child(even), .platform-opening { gap:36px; }
 .article-body .guide-section h2 { font-size:28px; line-height:35px; }
 .insight-topic > .sec-head h2 { font-size:32px; }
 .company-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:734px) {
 .insight-search { padding:22px 18px; }
 .insight-search-row { flex-direction:column; }
 .insight-search button { align-self:flex-start; }
 .breadcrumb { padding-top:22px; font-size:12px; line-height:20px; }
 .breadcrumb > [aria-current] { max-width:100%; }
 .article-header .article-lead { font-size:19px; line-height:29px; margin-top:20px; }
 .article-body .guide-section h2 { font-size:24px; line-height:31px; }
 .wrap.article-body { padding-bottom:48px; }
 .insights-opening, .directory-row, .directory-row:nth-child(even), .platform-opening { grid-template-columns:1fr; gap:28px; }
 .insights-opening { padding-top:12px; padding-bottom:32px; }
 .insights-opening h2, .directory-row h2, .platform-opening h2, .insight-topic > .sec-head h2 { font-size:28px; line-height:38px; }
 .directory-row { padding-block:32px; }
 .directory-row:nth-child(even) figure { order:0; }
 .directory-row figure { height:240px; }
 .platform-opening > img { height:210px; }
 .service-hub .topic-grid { grid-template-columns:1fr; }
 .service-hub .topic-card .section-kicker { min-height:0; }
 .company-facts { grid-template-columns:1fr 1fr; gap:24px 16px; }
 .company-facts dd { font-size:17px; line-height:27px; }
 .company-history li { display:grid; grid-template-columns:72px minmax(0,1fr); gap:12px; }
 .company-history .rec-date { min-width:0; }
 .related-pages { gap:12px 24px; }
 .project-detail .article-body { width:100%; }
 .edu-main .guide-section { padding-block:24px; }
 
 .article-toc { margin-top:0; }
}
