:root{
  --blog-ink:#0e1726;--blog-text:#3d4a5c;--blog-muted:#68778a;--blog-line:#e3e8ef;
  --blog-bg:#fff;--blog-surface:#f6f8fb;--blog-brand:#2b3fc7;--blog-brand-soft:#edeffc;
  --blog-accent:#d2ff4f;--blog-loss:#b42318;--blog-loss-soft:#fef0ef;
  --blog-font-body:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --blog-font-display:'Plus Jakarta Sans','Inter',sans-serif;
  --blog-radius:14px;--blog-pill:999px;--blog-max:70rem;--blog-copy:46rem;--blog-gutter:1.5rem;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--blog-bg);color:var(--blog-ink);font-family:var(--blog-font-body);font-size:1.0625rem;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3,p{margin-top:0}
h1,h2,h3,.blog-logo,.blog-button{font-family:var(--blog-font-display);letter-spacing:-.03em}
h1,h2,h3{color:var(--blog-ink);line-height:1.15}
.article-content :is(h1,h2,h3) mark,
.article-content :is(h1,h2,h3) .blog-heading-highlight{
  display:inline;
  padding:0 .1em .04em;
  margin-inline:-.02em;
  border-radius:.18em;
  background:linear-gradient(180deg,transparent 18%,color-mix(in srgb,var(--blog-accent) 40%,transparent) 18%);
  color:inherit;
  -webkit-box-decoration-break:clone;
  box-decoration-break:clone;
}
a{color:inherit}
.blog-wrap{width:min(calc(100% - 2 * var(--blog-gutter)),var(--blog-max));margin-inline:auto}
.article-narrow{width:min(calc(100% - 2 * var(--blog-gutter)),var(--blog-copy));margin-inline:auto}
.blog-eyebrow{margin-bottom:12px;color:var(--blog-brand);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}

.blog-header{position:sticky;z-index:20;top:0;border-bottom:1px solid var(--blog-line);background:rgba(255,255,255,.96);backdrop-filter:blur(10px)}
.blog-header__inner{display:flex;min-height:72px;align-items:center;justify-content:space-between;gap:24px}
.blog-logo{display:flex;align-items:center;gap:9px;font-size:1.12rem;font-weight:800;text-decoration:none;white-space:nowrap}
.blog-logo>span,.author-mark{display:grid;place-items:center;background:var(--blog-brand);color:#fff;font-weight:800}
.blog-logo>span{width:34px;height:34px;border-radius:7px;font-size:.74rem}
.blog-header__nav{display:flex;align-items:center;gap:24px}
.blog-header__nav>a:not(.blog-button){color:var(--blog-text);font-size:.92rem;font-weight:600;text-decoration:none}
.blog-button{display:inline-flex;min-height:46px;align-items:center;justify-content:center;padding:12px 20px;border:1px solid transparent;border-radius:10px;font-size:.92rem;font-weight:750;text-decoration:none}
.blog-button--outline{border-color:var(--blog-brand);color:var(--blog-brand)}
.blog-button--accent{background:var(--blog-accent);color:#1f2b00}

.blog-index-header{padding:72px 0 48px;border-bottom:1px solid var(--blog-line);background:var(--blog-surface);text-align:center}
.blog-index-header h1{max-width:18ch;margin:0 auto 18px;font-size:clamp(2.25rem,5vw,3.7rem);font-weight:800}
.blog-index-header>div>p:last-child{max-width:42rem;margin:0 auto;color:var(--blog-text);font-size:1.14rem}
.blog-index{padding:48px 0 80px}
.category-filter{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:36px}
.category-filter a{padding:8px 14px;border:1px solid var(--blog-line);border-radius:var(--blog-pill);color:var(--blog-text);font-size:.82rem;font-weight:650;text-decoration:none}
.category-filter a:hover,.category-filter .is-active{border-color:var(--blog-brand);background:var(--blog-brand);color:#fff}
.post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.post-card{overflow:hidden;border:1px solid var(--blog-line);border-radius:var(--blog-radius);background:#fff}
.post-card__image{display:block;height:190px;overflow:hidden;background:var(--blog-brand-soft);color:var(--blog-brand);text-decoration:none}
.post-card__image img{display:block;width:100%;height:100%;object-fit:cover}
.post-card__placeholder{display:grid;place-items:center;padding:20px;font-family:var(--blog-font-display);font-size:1rem;font-weight:800;text-align:center}
.post-card__body{padding:24px}
.post-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:var(--blog-muted);font-size:.78rem;font-weight:600}
.category-chip{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border-radius:var(--blog-pill);background:var(--blog-brand-soft);color:var(--blog-brand);font-size:.72rem;font-weight:750}
.post-card h2{margin:16px 0 12px;font-size:1.27rem;font-weight:800}
.post-card h2 a{text-decoration:none}
.post-card h2 a:hover{color:var(--blog-brand)}
.post-card p{margin-bottom:18px;color:var(--blog-text);font-size:.92rem}
.tag-list{display:flex;flex-wrap:wrap;gap:7px}
.tag-list span,.tag-list a{padding:4px 8px;border:1px solid var(--blog-line);border-radius:var(--blog-pill);color:var(--blog-muted);font-size:.7rem;font-weight:600;text-decoration:none}
.blog-text-link{display:inline-block;margin-top:20px;color:var(--blog-brand);font-weight:750;text-decoration:none}

.article-header{padding:48px 0 44px;border-bottom:1px solid var(--blog-line)}
.breadcrumbs{display:flex;align-items:center;gap:8px;margin-bottom:28px;color:var(--blog-muted);font-size:.8rem}
.breadcrumbs a{color:var(--blog-brand);text-decoration:none}
.article-header h1{margin:20px 0;font-size:clamp(2.35rem,5vw,3.65rem);font-weight:800}
.article-deck{margin-bottom:24px;color:var(--blog-text);font-size:1.16rem}
.article-byline{display:flex;align-items:center;gap:12px;font-size:.84rem}
.author-mark{width:40px;height:40px;border-radius:10px;font-size:.72rem}
.article-content{padding-block:56px;color:var(--blog-text)}
.article-content>p{margin-bottom:24px}
.article-content>h2{margin:52px 0 20px;font-size:clamp(1.65rem,3vw,2.15rem);font-weight:800}
.article-content>h3{margin:36px 0 12px;font-size:1.28rem;font-weight:800}
.knowledge-map{padding-top:48px}
.knowledge-map .article-content{padding-top:0}
.knowledge-map .article-content>h1{margin:0 0 28px;font-size:clamp(2.1rem,4.5vw,3.4rem);font-weight:800;line-height:1.15}
.knowledge-map .article-content>h4{margin:30px 0 12px;font-family:var(--blog-font-display);font-size:1.1rem;line-height:1.25}
.knowledge-map .article-content>ol,.knowledge-map .article-content>ul{margin:0 0 26px;padding-left:26px}
.knowledge-map .article-content li{margin:7px 0}
.knowledge-map .article-content>hr{margin:48px 0;border:0;border-top:1px solid var(--blog-line)}
.article-content a{color:var(--blog-brand);font-weight:650}
.article-content strong{color:var(--blog-ink)}
.article-figure{margin:36px 0}
.article-figure--featured{margin-top:0}
.article-figure img{display:block;width:100%;height:auto;border-radius:var(--blog-radius)}
.article-figure figcaption{margin-top:9px;color:var(--blog-muted);font-size:.8rem;line-height:1.5}
.article-summary{margin-bottom:36px;padding:24px;border-left:4px solid var(--blog-brand);background:var(--blog-surface)}
.article-summary h2{margin-bottom:12px;font-size:1.4rem;font-weight:800}
.article-summary ul{margin:0;padding-left:22px}
.article-table-wrap{margin:30px 0;overflow-x:auto;border:1px solid var(--blog-line);border-radius:var(--blog-radius)}
.article-content table{width:100%;border-collapse:collapse;background:#fff;font-size:.9rem}
.article-content--markdown>table{display:block;margin:30px 0;overflow-x:auto;border:1px solid var(--blog-line);border-radius:var(--blog-radius)}
.article-content caption{padding:14px 16px;background:var(--blog-surface);color:var(--blog-ink);font-weight:750;text-align:left}
.article-content th,.article-content td{padding:12px 16px;border-top:1px solid var(--blog-line);text-align:right;white-space:nowrap}
.article-content th:first-child{text-align:left}
.article-content thead th{background:var(--blog-surface);color:var(--blog-muted);font-size:.72rem;text-transform:uppercase}
.table-loss th,.table-loss td:last-child{color:var(--blog-loss);font-weight:800}
.article-callout{margin:36px 0;padding:24px;border-left:4px solid var(--blog-loss);background:var(--blog-loss-soft)}
.article-callout h2{margin-bottom:10px;color:var(--blog-loss);font-size:1.2rem;font-weight:800}
.article-callout p{margin:0}
.article-checklist{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.article-checklist li{padding:13px 16px 13px 44px;border:1px solid var(--blog-line);border-radius:10px;background:#fff;position:relative}
.article-checklist li::before{content:'✓';position:absolute;left:16px;color:#0b7a5b;font-weight:800}
.article-tags{margin-top:48px;padding-top:24px;border-top:1px solid var(--blog-line)}
.article-tags>.tag-list{margin-top:10px}
.article-editor{display:flex;align-items:center;gap:14px;margin-bottom:56px;padding:22px 0;border-top:1px solid var(--blog-line)}
.article-editor span,.article-editor strong{display:block}
.article-editor span{color:var(--blog-muted);font-size:.76rem}
.article-editor strong{font-family:var(--blog-font-display);font-size:.92rem}
.related-section{padding:56px 0;border-top:1px solid var(--blog-line);background:var(--blog-surface)}
.related-section>div>h2{margin-bottom:24px;font-size:1.8rem;font-weight:800}
.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.related-card{padding:22px;border:1px solid var(--blog-line);border-radius:var(--blog-radius);background:#fff}
.related-card h3{margin:16px 0 10px;font-size:1.08rem;font-weight:800}
.related-card p{margin:0;color:var(--blog-text);font-size:.88rem}

.blog-cta{padding:60px 0;background:var(--blog-ink);color:#fff}
.blog-cta__inner{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:40px}
.blog-cta .blog-eyebrow{color:var(--blog-accent)}
.blog-cta h2{max-width:20ch;margin-bottom:10px;color:#fff;font-size:clamp(1.8rem,4vw,2.5rem);font-weight:800}
.blog-cta p:not(.blog-eyebrow){max-width:42rem;margin-bottom:0;color:#b8c4d2}
.blog-footer{padding:56px 0 24px;border-top:1px solid var(--blog-line)}
.blog-footer__grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px}
.blog-footer__brand p{max-width:30rem;margin-top:14px;color:var(--blog-text);font-size:.9rem}
.blog-footer h2{margin-bottom:12px;font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.blog-footer ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}
.blog-footer li a{color:var(--blog-text);font-size:.86rem;text-decoration:none}
.blog-footer__base{display:flex;justify-content:space-between;gap:16px;margin-top:36px;padding-top:20px;border-top:1px solid var(--blog-line);color:var(--blog-muted);font-size:.8rem}
.blog-footer__base a{color:var(--blog-brand);font-weight:700;text-decoration:none}

@media(max-width:900px){.post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.related-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){
  :root{--blog-gutter:1rem}
  .blog-header__inner{min-height:64px}.blog-logo{font-size:1rem}.blog-logo>span{width:32px;height:32px}
  .blog-header__nav{gap:10px}.blog-header__nav>a:not(.blog-button){font-size:.72rem}.blog-header__nav .blog-button{min-height:42px;padding:9px 11px;font-size:.76rem}
  .blog-index-header{padding:48px 0 36px}.blog-index-header h1{font-size:2.35rem}.blog-index{padding:32px 0 56px}
  .category-filter{flex-wrap:nowrap;margin-inline:-1rem;padding-inline:1rem;overflow-x:auto}.category-filter a{white-space:nowrap}
  .post-grid,.related-grid,.blog-cta__inner,.blog-footer__grid{grid-template-columns:1fr}
  .article-header{padding:32px 0}.breadcrumbs{overflow-x:auto;white-space:nowrap}.article-header h1{font-size:2.35rem}.article-deck{font-size:1.05rem}
  .article-content{padding-block:40px}.article-content>h2{margin-top:42px}
  .article-table-wrap{margin-inline:-1rem;border-inline:0;border-radius:0}
  .blog-cta__inner{gap:28px}.blog-button--accent{width:100%;text-align:center}.blog-footer__base{flex-direction:column}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
