/* Editorial surfaces inherit the homepage palette and Manrope typography. */
.blog-page a:hover,.blog-preview a:hover{color:var(--brand-deep)}
.blog-page .button:hover{color:#fff}
.nav-blog[aria-current]{color:var(--brand);text-decoration:underline;text-underline-offset:6px}
.blog-index{padding-top:80px;padding-bottom:120px;min-height:70vh}
.blog-heading{max-width:800px;margin-bottom:70px}
.blog-heading h1,.article-header h1{font-size:clamp(42px,5.3vw,76px);font-weight:700;line-height:1.08;letter-spacing:-.04em;margin:0;text-wrap:balance}
.blog-heading h1 span{color:var(--brand)}
.blog-heading>p{font-size:20px;max-width:520px;color:var(--muted);margin:25px 0 0}
.blog-entry{display:grid;grid-template-columns:1fr 2fr;gap:60px;padding:36px 0 44px;border-top:1px solid var(--line)}
.entry-date{display:flex;flex-direction:column;gap:8px;font-size:14px;color:var(--muted)}
.blog-entry h2{font-size:clamp(27px,3vw,40px);line-height:1.2;max-width:760px}
.blog-entry h2 a{text-decoration:none}
.blog-entry h2 a:hover{text-decoration:underline}
.blog-entry p{max-width:650px;color:var(--muted);margin:20px 0;font-size:17px}
.blog-entry .text-link{display:inline-flex;align-items:center;min-height:44px;color:var(--brand-deep)}
.blog-preview{padding-top:24px;padding-bottom:70px}
.blog-preview-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px}
.blog-preview-heading h2{font-size:30px}
.blog-preview-heading>a{padding:12px 0}
.article-shell{padding-top:44px;padding-bottom:80px}
.article-header{max-width:1040px;margin:0 auto 64px}
.back-link{display:inline-flex;align-items:center;min-height:44px;margin-bottom:28px;color:var(--muted);font-size:14px}
.article-header h1{max-width:960px}
.article-deck{font-size:22px;line-height:1.55;max-width:760px;color:var(--muted);margin:28px 0}
.article-meta{display:flex;flex-wrap:wrap;gap:10px 24px;font-size:14px;color:var(--muted);margin:0}
.article-layout{display:grid;grid-template-columns:220px minmax(0,720px);gap:72px;justify-content:center}
.article-contents nav{position:sticky;top:32px;display:flex;flex-direction:column;align-items:start;gap:0}
.article-contents h2{font-size:15px;font-weight:700;letter-spacing:0;margin:0 0 12px}
.article-contents a{font-size:14px;line-height:1.5;padding:10px 0;color:var(--muted);text-decoration:none;white-space:normal}
.article-contents a:hover{text-decoration:underline}
.article-body{font-size:18px;line-height:1.8;min-width:0}
.article-body p{margin:0 0 24px}
.article-body h2{font-size:30px;line-height:1.25;margin:52px 0 22px;font-weight:600;letter-spacing:-.025em;text-wrap:balance}
.article-body a{color:var(--brand-deep)}
.article-body ul{padding-left:24px;margin:0 0 28px}
.article-body li{padding-left:4px;margin-bottom:12px}
.article-body blockquote{margin:32px 0;padding:26px 30px;background:#edf4fd;color:#172333}
.article-body blockquote p{margin:0}
.article-body .example-caption{font-size:14px;color:var(--muted)}
.article-next{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:32px 0;margin-top:48px}
.article-next h2{margin:0 0 16px}
.article-next .button{background:var(--brand);color:#fff;border-radius:7px;min-height:48px}
.article-next .button:hover{background:var(--brand-deep)}
.article-sources{font-size:14px;color:var(--muted);overflow-wrap:anywhere}
.article-sources h2{font-size:20px;letter-spacing:0}
.blog-page footer{border-top:1px solid var(--line)}
@media(max-width:1000px){.article-layout{grid-template-columns:180px minmax(0,1fr);gap:36px}.blog-entry{gap:35px}}
@media(max-width:700px){
  .navigation nav{gap:16px}.navigation nav>a.nav-blog{display:inline-flex;align-items:center;min-height:44px}
  .navigation .nav-contact svg{display:none}
  .blog-index{padding-top:48px;padding-bottom:64px}.blog-heading{margin-bottom:44px}.blog-heading>p{font-size:18px}
  .blog-entry{grid-template-columns:1fr;gap:20px;padding:26px 0 32px}.entry-date{gap:4px}.blog-entry p{font-size:16px}
  .blog-preview{padding-bottom:40px}.blog-preview-heading h2{font-size:26px}
  .article-shell{padding-top:20px;padding-bottom:48px}.article-header{margin-bottom:36px}.article-header h1{font-size:42px}
  .article-deck{font-size:19px;margin:22px 0}.article-meta{font-size:13px;gap:8px 16px}
  .article-layout{grid-template-columns:1fr;gap:32px}.article-contents nav{position:static;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0}
  .article-contents a{display:block!important;min-height:44px}.article-contents h2{margin-bottom:8px}
  .article-body{font-size:17px}.article-body h2{font-size:27px;margin-top:40px}.article-body blockquote{padding:22px}
  footer>div{flex-wrap:wrap;gap:12px 24px}
}
