/* Direct access to the four main services, at every screen size. */
:root { --header-height:174px; }
.site-header { height:var(--header-height); }
.utility-bar { height:26px; }
.site-header .header-inner { height:72px; gap:30px; }
.site-header .logo { flex:0 0 auto; }
.site-header .logo img { width:110px; }
.site-header .nav-desktop { justify-content:flex-end; gap:24px; }
.site-header .nav-desktop a:not(.btn) { font-size:13px; padding:15px 0; }
.site-header .header-actions { align-items:center; gap:22px; }
.header-quote .quote-full,.header-quote .quote-short { margin:0; font:inherit; line-height:inherit; }
.header-quote .quote-short { display:none; }
.service-navigation { height:76px; background:#242b2a; border-top:1px solid #3a423e; border-bottom:1px solid #414a43; }
.service-navigation-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); height:100%; }
.service-access { position:relative; display:flex; align-items:center; min-width:0; gap:14px; padding:14px 20px; border-right:1px solid #465047; color:#f8f8f1; text-decoration:none; transition:background-color .16s; }
.service-access:first-child { border-left:1px solid #465047; }
.service-access svg { width:28px; height:28px; flex:0 0 28px; color:#f29367; }
.service-access-copy { display:grid; gap:5px; min-width:0; }
.service-access strong { font-family:var(--font-ui); font-size:clamp(14px,1vw,17px); font-weight:500; line-height:1.2; }
.service-access small { font-size:11px; line-height:1.3; color:#c0cbc1; }
.service-access-arrow { margin-left:auto; font-size:18px; color:#b9c3ba; }
.service-access:hover,.service-access:focus-visible { background:#354139; }
.service-access[aria-current='page'] { background:#354139; box-shadow:inset 0 -3px #f29367; }
.service-access:focus-visible { outline-offset:-4px; }
.mobile-menu-heading { color:#b8c6bd; font-size:11px; text-transform:uppercase; letter-spacing:.1em; margin:4px 0 12px; }
.nav-mobile .mobile-support { font-size:12px; flex-wrap:wrap; justify-content:space-between; gap:12px; margin-top:16px; padding-block:16px; border-top:1px solid #465047; border-bottom:0; }
@media (min-width:1120px) { .site-header .nav-desktop { display:flex; } .site-header .menu-toggle { display:none; } }
@media (min-width:1120px) and (max-width:1280px) {
  .site-header .header-inner { gap:22px; }
  .site-header .nav-desktop { gap:16px; }
  .site-header .header-actions { gap:14px; }
  .service-access { padding-inline:14px; gap:10px; }
  .service-access-arrow { display:none; }
}
@media (max-width:1119px) {
  .site-header .header-inner { gap:22px; }
  .site-header .header-actions { margin-left:auto; }
  .site-header .nav-desktop { display:none; }
  .service-access { padding-inline:14px; gap:10px; }
  .service-access svg { width:24px; height:24px; flex-basis:24px; }
  .service-access strong { font-size:14px; }
  .service-access small { font-size:10px; }
  .service-access-arrow { display:none; }
}
@media (max-width:767px) {
  :root { --header-height:160px; }
  .site-header .utility-bar { display:none; }
  .site-header .header-inner { height:64px; gap:12px; }
  .site-header .logo img { width:84px; }
  .site-header .header-actions { gap:12px; }
  .site-header .header-actions .header-quote { display:inline-flex; min-height:38px; padding:9px 12px; gap:0; font-size:12px; }
  .header-quote .quote-full,.header-quote .quote-arrow { display:none; }
  .header-quote .quote-short { display:inline; }
  .site-header .menu-toggle { width:38px; height:38px; flex-basis:38px; }
  .service-navigation { height:96px; }
  .service-navigation-grid { width:100%; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .service-access { padding:7px 18px; gap:10px; min-height:47px; border-bottom:1px solid #465047; }
  .service-access:first-child { border-left:0; }
  .service-access:nth-child(2n) { border-right:0; }
  .service-access:nth-child(n+3) { border-bottom:0; }
  .service-access strong { font-size:13px; line-height:1.2; }
  .service-access small { display:none; }
  .service-access svg { width:22px; height:22px; flex-basis:22px; }
  .nav-mobile { padding:18px 24px 24px; }
}
@media (max-width:360px) {
  .site-header .header-inner { width:calc(100% - 28px); gap:8px; }
  .site-header .logo img { width:74px; }
  .site-header .header-actions { gap:8px; }
  .service-access { padding-inline:14px; gap:8px; }
}
