/* Closing and footer presentation from the approved anxiety page (6025c2a).
 * Only the four matched navigation services inherit the closing treatment.
 * All five navigation services keep dock clearance inside the dark footer.
 */
body.service-sections-match #closing-cta {
  --home-ink-faint: #5f6b73;
  padding-top: 64px;
  padding-bottom: 64px;
}
body.service-sections-match #closing-cta h2 {
  max-width: 1000px;
  margin: 0 auto 18px;
}
body.service-sections-match #closing-cta .home-wrap > p:not(.home-micro) {
  max-width: 850px;
  margin-left: auto;
  margin-right: auto;
}
body.service-sections-match #closing-cta p {
  margin-bottom: 14px;
}
body.service-sections-match #closing-cta p.starts {
  font-family: var(--home-sans);
  font-size: 16.5px;
  font-style: normal;
}
body.service-sections-match #closing-cta p a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 4px;
}
body.service-sections-match #closing-cta .home-micro {
  text-align: center !important;
}
body.service-sections-match #closing-cta .home-micro a {
  color: rgba(255, 255, 255, .88);
  text-decoration-color: currentColor;
  text-underline-offset: 4px;
}
body.service-sections-match #closing-cta .home-micro a:hover {
  text-decoration-color: currentColor;
}
body.service-sections-match #closing-cta .home-final-overlay {
  background-image: linear-gradient(180deg, rgba(21, 32, 46, .84), rgba(36, 67, 87, .86));
}
body.service-sections-match #closing-cta .home-final-info {
  gap: 48px;
  margin-top: 34px;
  padding-top: 26px;
}
body.service-sections-match #closing-cta .home-final-info-item strong {
  color: #d8b88e;
}
body.service-sections-match #closing-cta .home-btn-primary {
  background-color: #4a7591;
}
body.service-sections-match #closing-cta .home-btn-primary:hover {
  background-color: #33576f;
}
body.service-sections-match #closing-cta :is(a, button):focus-visible {
  outline: 2px solid #fff;
  outline-offset: 5px;
}
body.service-sections-match .home-footer-bottom {
  color: rgba(255, 255, 255, .62);
  border-top-color: rgba(216, 184, 142, .18);
}
body.service-sections-match .home-footer-bottom a {
  color: rgba(255, 255, 255, .72);
}
body.service-sections-match .home-footer :is(h3, h4) {
  margin: 0 0 20px;
  color: #d8b88e;
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: .26em;
  text-transform: uppercase;
}
body.service-sections-match .home-footer a:focus-visible {
  outline: 2px solid #a76659;
  outline-offset: 5px;
}
body.service-sections-match .home-footer a:hover {
  color: #d8b88e;
}

@media (min-width: 1100px) {
  body.service-sections-match #closing-cta .home-wrap > p:not(.home-micro) {
    max-width: 960px;
  }
}
@media (max-width: 768px) {
  body.service-sections-match #closing-cta .home-final-info { gap: 22px; }
  body.service-sections-match .home-footer :is(h3, h4) { text-align: left; }
}
@media (max-width: 767px) {
  body.service-sections-match #closing-cta {
    padding: 48px 20px;
    padding-inline: 20px !important;
  }
  body.service-sections-match #closing-cta > .home-wrap {
    width: 100%;
    max-width: none;
    padding-inline: 0;
  }
  body.service-sections-match #closing-cta .home-btn-primary {
    max-width: 100%;
    min-height: 48px;
    padding: 14px 18px;
    font-size: 13px;
    line-height: 1.5;
    letter-spacing: .06em;
    white-space: nowrap;
  }
}
@media (max-width: 560px) {
  body.service-sections-match #closing-cta .home-final-info { gap: 24px; }
}

/* Preserve the existing scroll room for the fixed contact dock, but make it
 * part of the footer rather than a light strip after the final page element.
 * The original footer and dock rules have different 768/767px breakpoints.
 */
body:is(.service-sections-match, .anxiety-page) {
  --service-footer-base-padding: 36px;
  --service-footer-dock-clearance: 102px;
}
body:is(.service-sections-match, .anxiety-page).floating-contact-mounted {
  padding-bottom: 0;
}
body:is(.service-sections-match, .anxiety-page).floating-contact-mounted > .home-footer {
  padding-bottom: calc(var(--service-footer-base-padding) + var(--service-footer-dock-clearance) + env(safe-area-inset-bottom));
}
@media (max-width: 768px) {
  body:is(.service-sections-match, .anxiety-page) { --service-footer-base-padding: 64px; }
}
@media (max-width: 767px) {
  body:is(.service-sections-match, .anxiety-page) { --service-footer-dock-clearance: 76px; }
}
