/* Homepage document 139 keeps its original link presentation. */
body:not(:has([data-elementor-type="wp-page"][data-elementor-id="139"])) a,
body:not(:has([data-elementor-type="wp-page"][data-elementor-id="139"])) a:hover,
body:not(:has([data-elementor-type="wp-page"][data-elementor-id="139"])) a:focus,
body:not(:has([data-elementor-type="wp-page"][data-elementor-id="139"])) a * {
  text-decoration: none !important;
  border-bottom: none;
}
body:not(:has([data-elementor-type="wp-page"][data-elementor-id="139"])) :is(.elementor-widget-text-editor, .elementor-widget-theme-post-content, .page-content) :is(p, li, dd) a {
  color: #276465 !important;
  font-weight: 700;
}
body:not(:has([data-elementor-type="wp-page"][data-elementor-id="139"])) :is(.elementor-widget-text-editor, .elementor-widget-theme-post-content, .page-content) :is(p, li, dd) a:hover {
  color: #173f40 !important;
}
body:not(:has([data-elementor-type="wp-page"][data-elementor-id="139"])) a:focus-visible {
  outline: 2px solid #276465;
  outline-offset: 3px;
}
body:not(:has([data-elementor-type="wp-page"][data-elementor-id="139"])) .e--pointer-underline .elementor-item::after {
  display: none;
}
/* Semantic tag changes retain Elementor's existing heading typography. */
.seo-footer-sitemap { text-align: center; padding: 0.75rem 1rem; }
.seo-footer-sitemap a { color: #276465; font-weight: 700; text-decoration: none; }
html { scroll-padding-top: 7rem; }

/* Elementor pages supply their own section widths and gutters. The Hello theme
   otherwise constrains this outer wrapper when route body classes are absent. */
body main.site-main:has(> .page-content > [data-elementor-type="wp-page"]) {
  width: 100%;
  max-width: none;
  margin-inline: 0;
  padding-inline: 0;
}
