/* custom overrides (loaded last) */
/* keyboard skip-to-content link: visually hidden until focused */
.skip-to-content {
  position: absolute;
  left: -9999px;
  top: 0;
  z-index: 2000;
  padding: 10px 16px;
  background: #0b3d72;
  color: #fff;
  border-radius: 0 0 6px 0;
  text-decoration: none;
  font-weight: 600;
}
.skip-to-content:focus {
  left: 0;
}
/* enlarge the masthead logo (header only; footer logo is untouched). The theme
   caps `.logo` at 292px and `.logo img` at 220px — raise both so the Greenville
   wordmark reads larger. */
.headerContent div.logo {
  max-width: 380px;
  min-width: 0;
}
.headerContent div.logo img {
  width: 100%;
  max-width: 360px;
}
/* Newsletter signup: the Lumistry capture embed replaces the theme's static
   two-column form. Center the embed within the section (matching the original
   template's centered look) and cap its width so it doesn't stretch edge to
   edge. The section chrome (light-blue top rule, padding, background) still
   comes from the blockWrap_* classes on the container. */
.lumistryCapture {
  text-align: center;
}
.lumistryCapture [data-lumistry-capture] {
  max-width: 640px;
  margin: 0 auto;
}
/* branded 404 spacing */
.notFoundContent {
  max-width: 720px;
  margin: 0 auto;
  padding: 80px 24px;
  text-align: center;
}
.notFoundContent .errorCode {
  font-size: 64px;
  font-weight: 700;
  margin: 0 0 8px;
  color: #0b3d72;
}
/* Top contact bar (the .secondaryNav strip above the logo).
   The cloned blocks carry an inline width:100%;text-align:right (copied from
   their footer originals), which stretches each item to a third of the row so
   the long hours text wraps and the phone icon ends up far from its number.
   Scope these overrides to .secondaryNavContent ONLY so the footer is untouched:
   size each item to its content (icon tight against text) with even spacing and
   no text wrapping on tablet/desktop. Mobile keeps the theme's stacked layout. */
@media (min-width: 768px) {
  .secondaryNavContent {
    gap: 1.5em 2.5em;
    flex-wrap: wrap;
  }
  .secondaryNavContent > .blockContainer {
    width: auto !important;
    flex: 0 0 auto;
    text-align: left !important;
    margin: 0 !important;
  }
  .secondaryNavContent .blockInnerContent,
  .secondaryNavContent p {
    white-space: nowrap;
    margin: 0;
  }
}
@media (min-width: 1024px) {
  .secondaryNavContent {
    flex-wrap: nowrap;
  }
}
@media (max-width: 767px) {
  .headerAndNavContainer {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 1000 !important;
  }
  /* eyebrow (secondary nav) collapses on scroll to reclaim space */
  .secondaryNav {
    overflow: hidden;
    max-height: 300px;
    transition: max-height 0.25s ease, opacity 0.2s ease;
  }
  .secondaryNav.eyebrow-collapsed {
    max-height: 0 !important;
    opacity: 0 !important;
  }
}
