.blog-page .site-header { color: var(--ink); background: var(--white); border-color: var(--line); }
.blog-page main { padding-top: 86px; }
.blog-banner { color: var(--white); background: var(--navy); }
.blog-banner h1 { max-width: 1000px; font-size: clamp(52px, 7vw, 92px); }
.blog-banner h1 span { color: var(--orange); }
.blog-banner > p:last-child { max-width: 600px; margin-bottom: 0; color: #b5c3ce; line-height: 1.8; }
.blog-list, .home-blog { background: var(--paper); }
.blog-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px; }
.blog-card { overflow: hidden; background: var(--white); border: 1px solid var(--line); }
.blog-card img { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.blog-card-copy { padding: 30px; }
.blog-card h3 { font-size: 34px; line-height: 1.1; }
.blog-card p:not(.blog-meta) { color: var(--steel); font-size: 14px; line-height: 1.8; }
.blog-meta { color: var(--steel); font-size: 11px; font-weight: 600; letter-spacing: .06em; line-height: 1.8; }
.blog-cta { color: var(--white); background: var(--navy-2); }
.blog-cta > p:not(.section-kicker) { max-width: 620px; margin-top: 24px; color: #b5c3ce; line-height: 1.8; }
.article-heading { padding-bottom: 55px; background: var(--paper); }
.blog-back { display: inline-block; margin-bottom: 36px; font-size: 13px; font-weight: 600; }
.article-heading h1 { max-width: 1000px; font-size: clamp(48px, 6vw, 84px); line-height: 1; overflow-wrap: break-word; }
.article-heading > p:not(.blog-meta) { max-width: 720px; color: var(--steel); line-height: 1.8; }
.article-byline { margin-bottom: 0; font-size: 12px; }
.article-layout { display: grid; grid-template-columns: minmax(0, 780px) minmax(180px, 260px); justify-content: space-between; gap: 60px; padding-top: 60px; }
.article-body { min-width: 0; line-height: 1.9; overflow-wrap: anywhere; }
.article-body figure { margin: 0 0 36px; }
.article-body img { width: 100%; aspect-ratio: 16 / 9; display: block; object-fit: cover; }
.article-body figcaption { margin-top: 10px; color: var(--steel); font-size: 11px; }
.article-body h2 { margin: 45px 0 18px; font-size: clamp(30px, 3vw, 42px); line-height: 1.1; scroll-margin-top: 110px; }
.article-template { padding: 28px; border-left: 4px solid var(--orange); background: var(--paper); }
.article-template h3 { font-size: 28px; margin-bottom: 10px; }
.article-template ul { padding-left: 20px; margin: 0; }
.article-note { padding: 24px; margin-top: 30px; border: 1px solid var(--line); font-size: 13px; color: var(--steel); }
.article-enquiry { margin: 40px 0; padding: 32px; color: var(--white); background: var(--navy); }
.article-enquiry h2 { margin-top: 0; }
.article-enquiry p:not(.section-kicker) { color: #b5c3ce; font-size: 13px; }
.article-enquiry .button { margin-bottom: 20px; }
.article-sidebar { align-self: start; position: sticky; top: 110px; padding: 24px; border: 1px solid var(--line); }
.article-sidebar nav { display: flex; align-items: flex-start; flex-direction: column; gap: 18px; font-size: 12px; }
.blog-page a:focus-visible, .home-blog a:focus-visible { outline: 3px solid var(--orange); outline-offset: 5px; }
.article-source { color: var(--steel); font-size: 12px; }
.article-source a, .related-guides a { text-decoration: underline; text-underline-offset: 3px; }
.article-faq h3 { font-size: 26px; margin: 25px 0 8px; line-height: 1.2; }
.related-guides ul { padding-left: 20px; }
.related-guides li { margin-bottom: 12px; }
.home-blog-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 980px) { .home-blog-grid { grid-template-columns: 1fr; } }
@media (min-width: 761px) and (max-width: 1100px) { .site-header .button-small { display: none; } }
@media (max-width: 980px) { .article-layout { grid-template-columns: 1fr; } .article-sidebar { display: none; } }
@media (max-width: 760px) { .blog-page main { padding-top: 70px; } .blog-grid { grid-template-columns: 1fr; } .blog-card-copy { padding: 24px; } .article-layout { padding-top: 30px; } .article-enquiry { padding: 24px; } }
