/* Shared inner-page improvements. Home and comparison-table layouts are excluded. */
.footer .footer__bottom, .footer .footer__bottom > span { color:#fff; opacity:1; }
p a:not(.btn):not([class*="button"]), .article-body a, .news-article a { text-decoration:underline; text-underline-offset:.18em; }
/* Legacy article breadcrumbs carry inline text-decoration:none. */
nav[aria-label="Breadcrumb"] a { text-decoration:underline !important; text-underline-offset:.18em; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible { outline:3px solid #005ea8; outline-offset:4px; }
.nw-privacy-footer { padding:16px 24px; background:#003d79; color:#fff; text-align:center; font:500 14px/1.6 Inter,Arial,sans-serif; }
.nw-privacy-footer a { color:inherit; text-decoration:underline; text-underline-offset:.2em; }
.nw-privacy-note { grid-column:1/-1; margin:16px 0 0; font:400 14px/1.6 Inter,Arial,sans-serif; color:#334155; }
.nw-privacy-note a { color:#003d79; }
.nw-contact-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; }
.nw-contact-actions a { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:12px 24px; border-radius:8px; background:#c8102e; color:white; font-weight:700; text-decoration:none; }
.nw-contact-actions a + a { background:white; color:#003d79; }
.nw-contact-form { scroll-margin-top:110px; }
.contact-layout-grid { grid-template-areas:"info form"; }
.nw-contact-info { grid-area:info; }
.nw-contact-form { grid-area:form; }
.nw-service-detail { margin-top:12px; }
.nw-service-detail summary { color:#003d79; font-weight:700; cursor:pointer; padding:12px 0; }
.nw-service-detail p { margin-top:12px; }
@media (max-width:1024px) {
  .contact-layout-grid { grid-template-areas:"form" "info"; gap:32px; }
}
@media (max-width:600px) {
  .nw-contact-page .page-hero { padding:36px 20px 28px; min-height:0; }
  .nw-contact-page .page-hero__eyebrow { margin-bottom:12px; }
  .nw-contact-page .page-hero__sub { margin-bottom:20px; line-height:1.5; }
  .nw-contact-page .page-hero__title::after { margin:12px auto; }
  .nw-contact-page .nw-contact-section { padding:28px 16px !important; }
  .nw-contact-form { padding:24px 16px !important; }
  .nw-contact-actions { flex-direction:column; }
}
