/* custom overrides (loaded last) */
/* eyebrow (secondary nav): the Cape address / phone / hours strings are a bit
   longer than the template placeholder. By default the flex row shrinks the
   blocks so each line of text wraps and the items spread edge-to-edge. Render
   the items as centered inline-block units instead: each sizes to its own
   content and stays on one line, the group is centered like the design
   template (a single centered row on wide screens), and whole items wrap
   together only when the viewport is too narrow to hold them. */
@media (min-width: 768px) {
  .secondaryNavContent {
    display: block !important;
    text-align: center !important;
    max-width: 1600px;
    line-height: 1.6;
  }
  .secondaryNavContent .blockContainer {
    display: inline-block !important;
    width: auto !important;
    max-width: 100%;
    vertical-align: middle;
    margin: 0 1.6em !important;
    text-align: left;
  }
  .secondaryNavContent .blockInnerContent,
  .secondaryNavContent .blockText p,
  .secondaryNavContent .blockText a {
    white-space: 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;
  }
}

/* accessibility: keyboard skip-to-content link (visible only on focus) */
.skip-link {
  position: absolute;
  left: 8px;
  top: -48px;
  z-index: 2000;
  background: #003e7e;
  color: #ffffff;
  padding: 10px 16px;
  border-radius: 6px;
  font-weight: 600;
  text-decoration: none;
  transition: top 0.15s ease;
}
.skip-link:focus {
  top: 8px;
  outline: 3px solid #6caddf;
}

/* FAQ section (matches template spacing/palette) */
.faqSection {
  background: #fafcfe;
  padding: 64px 20px;
}
.faqInner {
  max-width: 860px;
  margin: 0 auto;
}
.faqTitle {
  text-align: center;
  color: #003e7e;
  font-size: 2rem;
  margin: 0 0 36px;
}
.faqItem {
  border-top: 1px solid #c2d8f0;
  padding: 22px 0;
}
.faqItem:last-child {
  border-bottom: 1px solid #c2d8f0;
}
.faqQ {
  color: #003e7e;
  font-size: 1.15rem;
  margin: 0 0 8px;
}
.faqA {
  color: #27251f;
  line-height: 1.6;
  margin: 0;
}

/* Newsletter: the Lumistry capture widget renders its own heading + subtitle
   (.lk-head = <h3 class="lk-title"> + <p class="lk-sub">) which duplicate the
   template's <h2>. Hide only that widget header so the template H2 stands alone;
   the email field + submit button are untouched. */
[data-lumistry-capture] .lk-head {
  display: none !important;
}
