/* WNC Insights additions only.
   Core typography, header, buttons, CTA and footer come from the existing WNC stylesheet
   so the CMS pages remain visually identical to the main website. */

.insights-hero{background:var(--navy);color:#fff;min-height:440px;padding:100px 8vw 90px;display:flex;flex-direction:column;justify-content:center}
.insights-hero h1{max-width:980px}
.insights-hero h1 em{color:#d8b779;font-weight:500}
.insights-hero>p:last-child{color:#bac6cc;max-width:720px;margin:28px 0 0;font-size:18px}

.featured-insight{background:var(--cream);border-bottom:1px solid var(--line);padding:58px 8vw 56px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(190px,.85fr);gap:4.5vw;align-items:center}
.featured-copy h2{color:var(--navy);font-size:clamp(34px,3.8vw,52px);margin:0 0 16px;line-height:1.08;max-width:760px}
.featured-copy>p:not(.eyebrow){color:var(--muted);font-size:16px;max-width:620px;margin:0}
.article-meta{display:flex;gap:16px;flex-wrap:wrap;color:#7a746a;font-size:11px;text-transform:uppercase;letter-spacing:.1em;margin:18px 0 20px}
.featured-mark{aspect-ratio:1;display:grid;place-items:center;max-width:205px;width:100%;justify-self:end;background:transparent}
.article-hero-mark{aspect-ratio:1;display:grid;place-items:center;max-width:250px;width:100%;justify-self:end;background:transparent}
.featured-mark img,.article-hero-mark img{display:block;width:100%;height:auto}
.featured-image img,.article-cover img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}

.insights-list{background:var(--paper);padding:68px 8vw 92px}
.insights-list-head{display:grid;grid-template-columns:24% 1fr;gap:4vw;align-items:end;margin-bottom:32px}
.insights-list-head h2{color:var(--navy);font-size:42px}
.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.insight-grid article{min-height:320px;padding:28px;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.insight-category{font-size:10px;text-transform:uppercase;letter-spacing:.16em;color:#8d6b32;font-weight:700;margin:0}
.insight-grid h3{color:var(--navy);font-size:25px;line-height:1.18;margin:20px 0 14px}
.insight-grid article>div>p:last-child{color:var(--muted);font-size:14px;margin:0}
.insight-card-foot{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:14px;font-size:11px;color:var(--muted)}
.insight-card-foot a{font-weight:600;color:#7e6030}
.insights-empty{background:var(--paper);padding:100px 8vw;min-height:440px}
.insights-empty h2{color:var(--navy);font-size:54px;margin:0 0 20px}
.insights-empty>p:last-child{color:var(--muted);max-width:650px}

.article-hero{background:var(--cream);border-bottom:1px solid var(--line);padding:42px 8vw 78px}
.breadcrumb{font-size:12px;color:var(--muted);margin:0 0 55px}
.breadcrumb span{margin:0 7px}
.article-hero-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:7vw;align-items:end}
.article-hero h1{color:var(--navy);font-size:clamp(44px,4.8vw,70px);max-width:860px}
.article-deck{font-family:var(--font-playfair),Georgia,serif;color:#4e5960;font-size:21px;line-height:1.5;max-width:840px;margin:28px 0}
.article-byline{display:flex;flex-wrap:wrap;gap:10px 22px;color:#766f65;text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:700}

.article-shell{background:var(--paper);padding:78px 8vw 105px;display:grid;grid-template-columns:180px minmax(0,760px) minmax(220px,300px);gap:4.5vw;justify-content:center;align-items:start}
.article-toc{position:sticky;top:120px}
.article-toc>p,.side-label{font-size:10px;text-transform:uppercase;letter-spacing:.16em;font-weight:700;color:#8b6b3c;margin:0 0 16px}
.article-toc nav{display:grid;border-top:1px solid var(--line)}
.article-toc a{font-size:12px;color:var(--muted);padding:10px 0;border-bottom:1px solid var(--line)}
.article-content>p{font-size:17px;color:#34434b;margin:0 0 24px}
.article-content>p:first-child{font-family:var(--font-playfair),Georgia,serif;font-size:22px;line-height:1.55;color:var(--ink)}
.article-content h2{color:var(--navy);font-size:38px;line-height:1.18;margin:60px 0 22px;scroll-margin-top:120px}
.article-content h3{color:var(--navy);font-size:27px;margin:38px 0 15px;scroll-margin-top:120px}
.article-sources-heading{margin:56px 0 14px;font-size:12px;text-transform:uppercase;letter-spacing:.16em;font-weight:700;color:#8b6b3c}
.article-content ul,.article-content ol{padding-left:1.4rem;margin:0 0 26px 0;color:#34434b}
.article-content ul{list-style:disc}
.article-content ol{list-style:decimal}
.article-content li{padding:3px 0}
.article-content li::marker{color:#8b6b3c}
.article-content blockquote{margin:34px 0;padding:24px 28px;border-left:3px solid var(--gold);background:var(--cream);font-family:var(--font-playfair),Georgia,serif;font-size:22px;color:var(--navy)}
.article-content hr{border:0;border-top:1px solid var(--line);margin:45px 0}
.article-content a{color:#795b2c;border-bottom:1px solid #c4ae87}
.article-content code{background:#efece5;padding:2px 5px}
.article-disclaimer{margin-top:70px;padding-top:24px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}
.article-disclaimer strong{color:var(--ink)}
.article-disclaimer p{margin:7px 0 0}
.article-sidebar{display:grid;gap:35px}
.article-sidebar section{border-top:2px solid var(--gold);padding-top:18px}
.article-sidebar ul{list-style:none;padding:0;margin:0}
.article-sidebar li{padding:10px 0;border-bottom:1px solid var(--line);font-size:13px;color:#46545c}
.side-link{display:grid;grid-template-columns:1fr auto;gap:3px 15px;padding:12px 0;border-bottom:1px solid var(--line)}
.side-link small{grid-column:1;font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.side-link strong{grid-column:1;color:var(--navy);font-family:var(--font-playfair),Georgia,serif;font-size:17px}
.side-link span{grid-column:2;grid-row:1/3;align-self:center;color:var(--gold)}
.article-sidebar section>p:not(.side-label){font-size:13px;color:var(--muted)}
.side-contact{font-size:13px;font-weight:600;color:#795b2c}

.preview-bar{background:#8d6b32;color:#fff;padding:10px 5vw;font-size:12px;font-weight:700;display:flex;justify-content:center;gap:20px}
.preview-bar a{text-decoration:underline}
.not-found{padding:120px 8vw;min-height:60vh}
.not-found h1{color:var(--navy);font-size:60px;margin:0 0 15px}
.not-found p{color:var(--muted)}

@media(max-width:1000px){
  .article-shell{grid-template-columns:minmax(0,1fr) 240px}
  .article-toc{display:none}
  .insight-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .insights-hero{min-height:360px;padding:70px 24px 65px}
  .featured-insight{padding:44px 24px 46px;grid-template-columns:1fr;gap:28px}
  .featured-mark{justify-self:start;max-width:150px}
  .article-hero-mark{justify-self:start;max-width:170px}
  .featured-image{order:-1}
  .insights-list{padding:48px 24px 72px}
  .insights-list-head{grid-template-columns:1fr;gap:10px}
  .insights-list-head h2{font-size:34px}
  .insight-grid{grid-template-columns:1fr;border-left:0}
  .insight-grid article{border-left:1px solid var(--line);min-height:260px}
  .article-hero{padding:32px 24px 58px}
  .breadcrumb{margin-bottom:38px}
  .article-hero-grid{grid-template-columns:1fr;gap:38px}
  .article-hero h1{font-size:clamp(38px,10.5vw,56px)}
  .article-deck{font-size:19px}
  .article-cover{order:-1}
  .article-shell{padding:58px 24px 80px;display:block}
  .article-sidebar{margin-top:65px}
  .article-content h2{font-size:32px;margin-top:48px}
  .article-content h3{font-size:25px}
}
