/* Shared editorial skin. Article content and CMS rendering stay independent. */
.blog-page main { background:#fff; }
.blog-page main *, .blog-page .art-share-dock * { letter-spacing:0; }
.blog-page main :is(h1,h2,h3,p,a) { overflow-wrap:anywhere; }
.blog-page main :is(a,button,input,select):focus-visible { outline:3px solid #a52caf;outline-offset:4px; }
.blog-page main [hidden] { display:none !important; }
.blog-page .blog-eyebrow { font-size:10px;gap:10px;color:#c7cbd3; }
.blog-page .blog-eyebrow.light { color:#555d6c; }
.blog-page .blog-eyebrow .bar { width:28px;height:1px;background:currentColor; }
.blog-page .spark { display:inline-block;flex:0 0 10px;width:10px;height:10px;border-radius:2px;background:var(--grad);transform:rotate(45deg); }
.blog-sr-only { position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap; }

/* A short, photographic masthead leaves the readings within reach. */
.blog-page .blog-hero { padding:130px 0 46px;background:#101625;border:0; }
.blog-hero-photo { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 43%;z-index:0; }
.blog-page .blog-hero::before { content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(9,15,26,.94),rgba(9,15,26,.72) 42%,rgba(9,15,26,.1) 75%); }
.blog-page .blog-hero::after { height:3px;opacity:1; }
.blog-page .blog-hero .container { position:relative;z-index:1; }
.blog-hero-copy { max-width:600px; }
.blog-page .blog-hero h1 { font-size:52px;line-height:1.07;margin:20px 0 0; }
.blog-page .blog-hero p.lead { margin-top:20px;font-size:16px;line-height:1.65;max-width:47ch;color:#d7dae1; }

/* Filters are an open toolbar, not an extra row of cards. */
.blog-page .blog-filters { position:relative;top:auto;z-index:5;background:#fff;backdrop-filter:none;padding:24px 0 20px;scroll-margin-top:100px; }
.blog-page .blog-filters-inner { display:grid;grid-template-columns:1fr;gap:18px; }
.blog-page .blog-cats { gap:6px 18px;align-items:center; }
.blog-page .fb-cat { padding:8px 0;min-height:40px;background:transparent;border:0;border-bottom:2px solid transparent;border-radius:0;color:#5d6370;font-size:13px;gap:7px;box-shadow:none; }
.blog-page .fb-cat:hover { color:#a5266c; }
.blog-page .fb-cat.active { color:#111827;border-bottom-color:#d4294a;font-weight:750;background:none;box-shadow:none; }
.blog-page .fb-cat .count { color:#687080;background:#edf0f3;padding:2px 5px;border-radius:4px;min-width:21px;text-align:center;font-size:10px; }
.blog-page .fb-cat.active .count { background:#151d34;color:#fff; }
.blog-page .blog-tools { display:grid;grid-template-columns:minmax(0,1fr) 170px;gap:12px;width:100%;max-width:100%; }
.blog-page .fb-search-wrap { min-width:0; }
.blog-page #fb-search { width:100%;height:44px;border-radius:8px;background:#f6f7f8;border-color:#d7dae0;font-size:16px; }
.blog-page #fb-sort { width:100%;height:44px;min-width:0;border-radius:8px;border-color:#d7dae0;font-size:14px;background-color:#fff; }
.blog-page .blog-section { padding:32px 0 44px;background:#fff;scroll-margin-top:100px; }
.blog-page #archive-section { border-radius:0; }
.blog-page .blog-section-head { gap:20px;margin-bottom:22px;align-items:center; }
.blog-page .blog-section-head h2 { font-size:28px;line-height:1.2;margin-top:12px; }
.blog-page .updated-date { font-size:11px;color:#687080;text-align:right; }
.blog-page #featured-grid { grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:28px;align-items:start; }
.blog-page .feat-big { display:block;min-height:0;border-radius:0;overflow:visible;background:transparent; }
.blog-page .feat-big:only-child { grid-column:1 / -1;max-width:780px; }
.blog-page .feat-big::before, .blog-page .feat-big::after { display:none; }
.blog-page .feat-big > img { position:static;display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:8px;transform:none; }
.blog-page .feat-big-content { padding:22px 0 0;max-width:none;color:#131927; }
.blog-page .feat-big-content > div:first-child > span { color:#a5266c !important;font-size:10px !important;letter-spacing:0 !important; }
.blog-page .feat-big h2 { font-size:30px;line-height:1.18;color:#131927;margin-top:10px; }
.blog-page .feat-big:hover h2 { color:#a5266c; }
.blog-page .feat-big p.excerpt { margin-top:12px;color:#5d6370;font-size:15px;line-height:1.6;-webkit-line-clamp:2; }
.blog-page .feat-big .meta { margin-top:18px;color:#687080;font-size:12px;gap:6px 10px; }
.blog-page .feat-big .meta .author { color:#303846; }
.blog-page .feat-big .meta .sep { color:#a0a5ae; }
.blog-page .feat-big .meta .read { color:#a5266c;margin-left:0; }
.blog-page .feat-side { grid-template-columns:1fr;grid-template-rows:none;grid-auto-rows:auto;align-content:start;gap:24px; }
.blog-page .feat-small { display:grid;grid-template-columns:120px minmax(0,1fr);min-height:0;gap:18px;border:0;border-bottom:1px solid #dedfe3;border-radius:0;padding:0 0 24px;background:transparent;box-shadow:none;transform:none;overflow:visible; }
.blog-page .feat-small-img { aspect-ratio:1;height:120px;border-radius:8px; }
.blog-page .feat-small-img .arc-badge { display:none; }
.blog-page .feat-small-body { padding:0;min-width:0; }
.blog-page .feat-small h3 { margin:0;font-size:18px;line-height:1.35; }
.blog-page .feat-small .meta { margin:12px 0 0;padding:0;flex-wrap:wrap;gap:5px;font-size:11px; }
.blog-page .suite-link { grid-template-columns:38px minmax(0,1fr) 100px;padding:22px 0;gap:20px; }
.blog-page .suite-num { font-size:24px;color:#a52caf; }
.blog-page .suite-link h3 { font-size:20px;line-height:1.3; }
.blog-page .suite-img { border-radius:8px;aspect-ratio:4/3; }
.blog-page .suite-meta { gap:10px; }
.blog-page .suite-byline { display:block;font-size:12px; }
.blog-page .cat-badge, .blog-page .arc-badge { font-size:10px;letter-spacing:0;border-radius:4px; }
.blog-page .archive-grid { gap:28px;grid-template-columns:repeat(3,minmax(0,1fr)); }
.blog-page .arc-card { border:0;border-radius:0;background:transparent;box-shadow:none;transform:none; }
.blog-page .arc-img { aspect-ratio:16/10;border-radius:8px; }
.blog-page .arc-body { padding:18px 0 0; }
.blog-page .arc-body h3 { font-size:20px;line-height:1.3; }
.blog-page .arc-body p { font-size:14px;line-height:1.6; }
.blog-page .arc-foot { padding-top:14px;border-top:1px solid #e2e4e8; }
.blog-page .blog-pagination { flex-wrap:wrap; }
.blog-page .bp-btn, .blog-page .bp-num { border-radius:8px;min-height:42px; }
.blog-page .blog-empty { padding:42px 16px;border:0;background:#f5f6f7;border-radius:8px;color:#576071; }

/* One understated newsletter band after the articles. IDs keep the existing Kit flow. */
.blog-newsletter { padding:46px 0;background:#f3f5f5;border-top:1px solid #dfe4e3; }
.blog-newsletter-inner { display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:64px; }
.blog-newsletter h2 { font-size:26px;line-height:1.2;margin:14px 0 12px; }
.blog-newsletter p { font-size:14px;color:#5d6370;line-height:1.6;margin:0; }
.blog-newsletter form { display:flex;gap:8px;position:relative; }
.blog-newsletter input, .blog-page .nl-inline-input { min-width:0;width:100%;flex:1;border:1px solid #c2c8d2;background:#fff;border-radius:8px;padding:13px 16px;min-height:48px;font:inherit;font-size:16px;color:#131927; }
.blog-newsletter button, .blog-page .nl-inline-btn { border:0;border-radius:8px;padding:12px 20px;min-height:48px;white-space:nowrap;background:var(--grad);color:#fff;font:inherit;font-size:14px;font-weight:700;cursor:pointer; }
.blog-newsletter button:disabled, .blog-page .nl-inline-btn:disabled { cursor:wait;opacity:.65; }
.blog-page .nl-fineprint { font-size:11px;line-height:1.5;margin:12px 0 0;color:#687080; }
.blog-page .nl-fineprint a { font-size:inherit;color:inherit;text-decoration:underline;text-underline-offset:3px; }
.blog-page .nl-feedback.show, .blog-page .nl-inline-success.show, .blog-page .nl-inline-error.show { display:block; }
.blog-page .nl-success { color:#0f6e56;background:#e5f2ed;border:1px solid #a6ccbd; }
.blog-page .nl-error { color:#a51e39;background:#fff0f3;border:1px solid #e6adb9; }

/* Articles: a compact masthead, an unobscured cover, and a quiet reading column. */
.blog-article main { background:#fff; }
.blog-page .art-hero { padding:124px 0 40px;background:#151d34; }
.blog-page .art-hero .container { max-width:1100px; }
.blog-page .art-crumb { text-transform:none;font-size:12px;margin-bottom:22px;color:#c4c9d4; }
.blog-page .art-crumb a { color:#c4c9d4; }
.blog-page .art-cat-pill { padding:0;margin-bottom:16px;background:transparent;border:0;border-radius:0;font-family:var(--font-mono);font-size:10px;color:#cdd1dd; }
.blog-page .art-cat-pill::before { width:9px;height:9px;border-radius:2px;transform:rotate(45deg); }
.blog-page .art-hero h1.art-title { font-size:44px;line-height:1.12;max-width:34ch;margin:0; }
.blog-page .art-deck { font-size:17px;line-height:1.65;max-width:72ch;margin-top:20px;color:#cdd1dd; }
.blog-page .art-hero-info { margin-top:24px;padding-top:20px;gap:10px 16px;font-size:12px; }
.blog-page .art-hero-info .author-avatar { width:36px;height:36px; }
.blog-page .art-cover-bridge { margin:0;background:#fff; }
.blog-page .art-cover-bridge .container { max-width:1100px; }
.blog-page .art-cover { width:100%;border-radius:0 0 8px 8px;box-shadow:none;aspect-ratio:16/9;margin:0; }
.blog-page .art-cover img { object-fit:cover; }
.blog-page .art-body { padding:44px 0 54px;background:#fff; }
.blog-page .art-body-grid { max-width:1040px;gap:56px;grid-template-columns:minmax(0,1fr) 260px;align-items:start; }
.blog-page .art-body-inner { width:100%;min-width:0;max-width:720px;margin:0;line-height:1.75;font-size:18px; }
.blog-page .art-body-inner:only-child { grid-column:1 / -1;margin-inline:auto; }
.blog-page .art-body-grid:has(.art-sidebar[style*="display: none"]) { grid-template-columns:1fr; }
.blog-page .art-body-grid:has(.art-sidebar[style*="display: none"]) .art-body-inner { margin-inline:auto; }
.blog-page .art-body-inner > p:first-of-type { font-size:20px;line-height:1.65; }
.blog-page .art-body-inner > p:first-of-type::first-letter { float:none;font:inherit;margin:0;color:inherit;background:none; }
.blog-page .art-body-inner h2 { font-size:28px;line-height:1.25;margin-top:40px; }
.blog-page .art-body-inner h3 { font-size:22px;line-height:1.3;margin-top:30px; }
.blog-page .art-body-inner p { font-size:17px;line-height:1.8;color:#394150; }
.blog-page .art-body-inner li { font-size:17px;line-height:1.7;color:#394150; }
.blog-page .art-body-inner :is(h2,h3) { scroll-margin-top:100px; }
.blog-page .art-body-inner a { text-underline-offset:4px; }
.blog-page .art-body-inner table { display:block;max-width:100%;overflow-x:auto;border-collapse:collapse; }
.blog-page .art-body-inner :is(td,th) { padding:12px;text-align:left;border-bottom:1px solid #d8dce1; }
.blog-page .art-body-inner pre { border-radius:8px; }
.blog-page .art-body-inner blockquote { border-radius:0;background:#f5f7f6;padding:20px 24px; }
.blog-page .art-callout { border-radius:8px; }
.blog-page .art-figure, .blog-page .art-embed { border-radius:8px;box-shadow:none;margin:28px 0; }
.blog-page .art-figure-single, .blog-page .art-figure-grid { margin-left:0;margin-right:0; }
.blog-page .art-figure-grid { gap:14px; }
.blog-page .art-figure-grid-many { grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr)); }
.blog-page .art-sidebar-card { padding:0 0 0 24px;border:0;border-left:1px solid #dfe2e8;border-radius:0;box-shadow:none;background:transparent; }
.blog-page .art-sidebar-item { border-radius:0; }
.blog-page .art-sidebar-item img, .blog-page .art-sidebar-noimg { border-radius:6px; }
.blog-page .art-sidebar-head { color:#586171;font-size:10px; }
.blog-page .art-share-inline { border:0;border-top:1px solid #dfe2e8;border-bottom:1px solid #dfe2e8;border-radius:0;background:transparent;padding:16px 0;margin-top:36px; }
.blog-page .art-share-inline a, .blog-page .art-share-inline button { width:42px;height:42px;border-radius:8px; }
.blog-page .art-tags { margin-top:28px; }
.blog-page .art-tag { border:0;background:#f0f3f5;border-radius:4px;font-size:11px; }
.blog-page .nl-inline { padding:30px 0;margin-top:0;border:0;border-bottom:1px solid #dfe2e8;border-radius:0;background:none;text-align:left; }
.blog-page .nl-inline h2 { font-size:24px;margin:14px 0 0; }
.blog-page .nl-inline p { font-size:14px;margin-top:10px; }
.blog-page .nl-inline-form { position:relative;max-width:none;margin:18px 0 0; }
.blog-page .nl-inline .nl-fineprint { font-size:11px; }
.blog-page .art-author-card { border:0;border-radius:0;padding:28px 0 0;margin:0;background:transparent;gap:18px;align-items:flex-start; }
.blog-page .art-author-card .avatar { width:54px;height:54px;min-width:54px; }
.blog-page .art-author-card .info h3 { font-size:19px; }
.blog-page .art-author-card .info p { font-size:14px;line-height:1.65; }
.blog-page .art-related { background:#f5f6f7;padding:42px 0 48px; }
.blog-page .art-related-head { text-align:left;max-width:1100px;margin:0 auto 24px; }
.blog-page .art-related-head h2 { font-size:30px;line-height:1.2; }
.blog-page .art-related-grid { grid-template-columns:repeat(3,minmax(0,1fr));gap:24px; }
.blog-page .art-related-card { border:0;border-radius:0;background:transparent;box-shadow:none;transform:none; }
.blog-page .art-related-card-img { border-radius:8px;background:#e3e8ec; }
.blog-page .art-related-card-body { padding:18px 0 0; }
.blog-page .art-error { padding:30px 0 45px;color:#cdd1dd; }
.blog-page .art-error h2 { color:#fff; }
.blog-page .art-error a { color:#fff;text-decoration:underline; }

/* The same invitation as the team page, always to ML rather than a chosen coach. */
.blog-page .cta-2 { padding:58px 0;background:#151d34; }
.blog-page .cta-2 h2 { font-size:38px;line-height:1.15;max-width:780px;margin:18px auto 0; }
.blog-page .cta-2 .eyebrow { font-size:10px; }
.blog-page .cta-2-lead { font-size:16px;line-height:1.7;max-width:62ch;margin:20px auto 0;color:#cdd1dd; }
.blog-page .cta-2-actions { margin-top:26px;gap:14px; }
.blog-page .cta-2-primary, .blog-page .cta-2-secondary { min-height:50px;padding:14px 22px;font-size:14px;border-radius:8px; }
.blog-page .cta-2-trust { margin-top:20px;gap:18px;font-size:11px; }
.blog-page .blog-cta-trust { margin:20px 0 0;color:#cdd1dd;font-size:11px; }

@media (min-width:1500px) {
  .blog-page .blog-filters-inner { grid-template-columns:minmax(0,1fr) 360px;align-items:center;gap:24px; }
  .blog-page .blog-tools { grid-template-columns:minmax(0,1fr) 140px; }
}
@media (max-width:1100px) {
  .blog-page .feat-small { grid-template-columns:96px minmax(0,1fr);gap:14px; }
  .blog-page .feat-small-img { height:96px; }
  .blog-page .feat-small h3 { font-size:16px; }
  .blog-newsletter-inner { gap:32px; }
  .blog-page .art-body-grid { grid-template-columns:minmax(0,1fr) 230px;gap:32px; }
}
@media (max-width:900px) {
  .blog-page .blog-hero { padding:118px 0 38px; }
  .blog-page .blog-hero h1 { font-size:46px; }
  .blog-page #featured-grid { grid-template-columns:1fr; }
  .blog-page .feat-side { grid-template-columns:1fr;gap:24px; }
  .blog-page .feat-small { grid-template-columns:84px minmax(0,1fr); }
  .blog-page .feat-small-img { height:84px; }
  .blog-page .archive-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:24px; }
  .blog-newsletter-inner { grid-template-columns:1fr;gap:24px; }
  .blog-page .art-hero { padding:116px 0 32px; }
  .blog-page .art-hero h1.art-title { font-size:38px; }
  .blog-page .art-body-grid { grid-template-columns:minmax(0,1fr);max-width:720px; }
  .blog-page .art-sidebar { display:none; }
  .blog-page .art-related-grid { gap:18px; }
}
@media (max-width:600px) {
  .blog-page .blog-hero { padding:116px 0 32px; }
  .blog-page .blog-hero::before { background:linear-gradient(90deg,rgba(9,15,26,.88),rgba(9,15,26,.6)); }
  .blog-hero-photo { object-position:57% 50%; }
  .blog-page .blog-hero h1 { font-size:38px;margin-top:18px; }
  .blog-page .blog-hero p.lead { font-size:15px;line-height:1.6;margin-top:16px;max-width:35ch; }
  .blog-page .blog-filters { padding:16px 0; }
  .blog-page .blog-cats { flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding:0 0 6px;gap:18px;scrollbar-width:thin;scrollbar-color:#abb2c0 #f2f4f6; }
  .blog-page .fb-cat { flex:none;font-size:12px; }
  .blog-page .blog-tools { grid-template-columns:minmax(0,1fr) 120px;gap:8px; }
  .blog-page #fb-search { font-size:16px;padding-left:34px; }
  .blog-page #fb-sort { font-size:12px;padding-left:9px; }
  .blog-page .blog-section { padding:24px 0 32px; }
  .blog-page .blog-section-head { align-items:flex-start;gap:12px; }
  .blog-page .updated-date { max-width:135px;line-height:1.5; }
  .blog-page .blog-section-head h2 { font-size:24px; }
  .blog-page .feat-big h2 { font-size:26px; }
  .blog-page .feat-big-content { padding-top:18px; }
  .blog-page .feat-side { grid-template-columns:1fr;gap:20px; }
  .blog-page .feat-small { grid-template-columns:100px minmax(0,1fr);gap:16px;padding-bottom:20px; }
  .blog-page .feat-small-img { height:100px; }
  .blog-page .feat-small h3 { font-size:17px; }
  .blog-page .suite-link { grid-template-columns:minmax(0,1fr) 76px;gap:14px; }
  .blog-page .suite-num { display:none; }
  .blog-page .suite-link h3 { font-size:18px; }
  .blog-page .suite-meta { flex-wrap:wrap;gap:6px; }
  .blog-page .suite-byline { font-size:11px;line-height:1.5; }
  .blog-page .archive-grid { grid-template-columns:1fr; }
  .blog-page .arc-body h3 { font-size:22px; }
  .blog-newsletter { padding:32px 0; }
  .blog-newsletter h2 { font-size:24px; }
  .blog-newsletter form { flex-wrap:wrap; }
  .blog-newsletter input { flex-basis:180px; }
  .blog-newsletter button { flex:1; }
  .blog-page .art-hero { padding:108px 0 28px; }
  .blog-page .art-crumb { font-size:11px;margin-bottom:22px; }
  .blog-page .art-hero h1.art-title { font-size:32px;line-height:1.15; }
  .blog-page .art-deck { font-size:15px;margin-top:18px; }
  .blog-page .art-hero-info { gap:8px 10px;font-size:11px; }
  .blog-page .art-hero-info .author { width:100%; }
  .blog-page .art-hero-info .author + .sep { display:none; }
  .blog-page .art-cover-bridge .container { padding:0; }
  .blog-page .art-cover { border-radius:0;aspect-ratio:16/9; }
  .blog-page .art-body { padding:30px 0 36px; }
  .blog-page .art-body-inner > p:first-of-type { font-size:18px; }
  .blog-page .art-body-inner :is(p,li) { font-size:16px;line-height:1.75; }
  .blog-page .art-body-inner h2 { font-size:25px; }
  .blog-page .art-body-inner h3 { font-size:21px; }
  .blog-page .nl-inline h2 { font-size:23px; }
  .blog-page .nl-inline p, .blog-page .art-author-card .info p { font-size:14px; }
  .blog-page .nl-inline .nl-fineprint { font-size:11px; }
  .blog-page .art-author-card { flex-direction:row;gap:14px; }
  .blog-page .art-author-card .avatar { width:44px;height:44px;min-width:44px; }
  .blog-page .art-related-grid { grid-template-columns:1fr;gap:28px; }
  .blog-page .art-related-head h2 { font-size:26px; }
  .blog-page .cta-2 { padding:40px 0; }
  .blog-page .cta-2 h2 { font-size:30px; }
  .blog-page .cta-2-lead { font-size:15px; }
  .blog-page .cta-2-actions { flex-direction:column;align-items:stretch; }
  .blog-page .cta-2-primary, .blog-page .cta-2-secondary { width:100%;padding:14px 12px;font-size:13px; }
  .blog-page .cta-2-trust { gap:10px 16px; }
}
@media (prefers-reduced-motion:reduce) {
  .blog-page main *, .blog-page .art-share-dock { scroll-behavior:auto;transition:none;animation:none; }
}
