body { color: #102e50; background: #fff; font-family: 'Segoe UI', sans-serif; }
h1, h2, h3 { font-weight: 700; letter-spacing: -.025em; }
a { color: #064ba5; text-underline-offset: .2em; }
a:focus-visible, button:focus-visible, input:focus-visible { outline: 3px solid #075dcc; outline-offset: 4px; }
.brand { color: #102e50; font-weight: 700; text-decoration: none; font-size: 1.1rem; }
.btn-primary { background: #075dcc; border-color: #075dcc; }
.btn { min-height: 44px; }
.skip-link { position: fixed; left: 1rem; top: .5rem; padding: .8rem; color: #fff; background: #102e50; z-index: 2000; transform: translateY(-160%); }
.skip-link:focus { transform: none; }
.blog-thumbnail { width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }
.blog-featured { width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }
.blog-article { max-width: 820px; }
.blog-content { font-size: 1.08rem; line-height: 1.8; overflow-wrap: anywhere; }
.blog-content h2, .blog-content h3, .blog-content h4 { margin-top: 2rem; margin-bottom: 1rem; }
.blog-content img { max-width: 100%; height: auto; display: block; margin: 1.5rem auto; }
.blog-content blockquote { border-left: 4px solid #075dcc; padding-left: 1rem; color: #526478; }
.blog-content pre { background: #f2f6fc; padding: 1rem; border-radius: .5rem; overflow: auto; }
.blog-content table { display: block; overflow: auto; max-width: 100%; }
.blog-cta { background: #f2f6fc; }
.breadcrumb { overflow-wrap: anywhere; }
