/* Shared visual refinement, independent of existing content and build changes. */
.site-header { box-shadow:0 2px 10px rgb(15 23 42 / .04); }
.header-primary-link { border-radius:6px 6px 0 0; }
.header-tools { align-items:center; }
.header-tool-button,.header-menu-toggle { box-shadow:0 1px 3px rgb(15 23 42 / .06); }
.header-primary-link:focus-visible,.home-quick-links a:focus-visible,
.service-card:focus-visible,.home-news-item:focus-visible {
    outline:3px solid #004098; outline-offset:3px;
}
.page-heading,.home-section-heading { gap:1rem; }
.page-heading h1,.home-section-heading h2 { text-wrap:balance; }
.route-hub-card,.service-card,.arrival-card,.home-news-list,.home-quick-links {
    border-radius:12px; box-shadow:0 2px 8px rgb(15 23 42 / .04);
}
.route-hub-card,.service-card,.arrival-card { min-width:0; }
.route-hub-heading { gap:.75rem; }
.route-hub-actions { gap:.5rem; }
.route-hub-actions .btn { min-height:44px; white-space:normal; text-align:center; }
.query-toolbar { align-items:flex-end; gap:1rem; }
.query-toolbar label { min-width:0; }
.query-toolbar :is(input,select) { min-height:44px; }
.home-quick-links a { gap:.75rem; }
.home-news-item { overflow-wrap:anywhere; }
.site-footer { margin-top:1.5rem; }
@media (max-width:767px) {
    .home-page { padding-block:1rem 2rem; }
    .home-intro { padding:1.25rem; gap:1.25rem; }
    .home-intro h1 { font-size:1.75rem; }
    .home-intro-description { margin-block:.75rem 1rem; }
    .home-quick-links a { padding:.75rem 1rem; }
    .home-page .route-hub-card { padding:1.125rem; }
    .home-section { margin-top:1.75rem; }
    .home-section-heading { margin-bottom:1rem; }
    .home-help { padding:1.25rem; margin-top:1.75rem; }
    .query-toolbar { padding:.875rem; gap:.75rem; }
    .page-heading { margin-block:1rem 1.25rem; }
    .header-primary-link { border-radius:6px; }
}
@media (prefers-reduced-motion:no-preference) {
    .header-tool-button,.service-card,.home-quick-links a,.home-news-item {
        transition:background-color .12s ease,border-color .12s ease;
    }
}
