/* WordPress navigation corrections, loaded after the source stylesheet. */
.site-masthead a:link,
.site-masthead a:visited { color: inherit; }
.site-masthead nav a:hover { color: #16709f; }
.mobile-contact-cta { display: none; }
.admin-bar .site-masthead { top: 32px; }
@media (max-width:1100px) {
  .site-masthead .mobile-contact-cta {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-height: 44px;
    margin-left: auto;
    padding: 0 10px;
    background: #203c48;
    color: #fff;
    border: 1px solid #203c48;
    border-radius: 8px;
    font-weight: 700;
    font-size: 14px;
  }
  .site-masthead .mobile-menu-toggle { margin-left: 0; min-height: 44px; }
  .site-masthead.mobile-open nav#main-navigation {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    max-height: calc(100dvh - 150px);
    overflow-y: auto !important;
    overscroll-behavior: contain;
  }
}
@media (max-width:782px) { .admin-bar .site-masthead { top: 46px; } }
@media (max-width:600px) { .admin-bar .site-masthead { top: 0; } }
@media (max-width:400px) {
  .site-masthead .site-logo { width: 128px !important; flex-basis: 128px; }
  .site-masthead .mobile-menu-toggle { padding: 10px 8px; gap: 5px; font-size: 14px; }
  .site-masthead .mobile-contact-cta { padding-inline: 8px; font-size: 13px; }
}
