:root {
  --bsts-a11y-blue: #075fae;
  --bsts-a11y-focus: #65d6ff;
  --bsts-a11y-focus-edge: #061d38;
}

/* Make the skip link reliably keyboard reachable without showing it at rest. */
.ea11y-skip-to-content-link[data-bsts-skip="true"] {
  position: fixed !important;
  top: 12px !important;
  left: 12px !important;
  z-index: 2147483647 !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 12px 18px !important;
  overflow: visible !important;
  clip: auto !important;
  clip-path: none !important;
  border: 2px solid #ffffff !important;
  border-radius: 999px !important;
  background: #061d38 !important;
  color: #ffffff !important;
  font: 700 15px/1.2 Arial, sans-serif !important;
  text-decoration: none !important;
  transform: translateY(-180%) !important;
  transition: none !important;
}

html body nav[aria-label="Skip to content navigation"] > a.ea11y-skip-to-content-link[data-bsts-skip="true"]:focus,
html body nav[aria-label="Skip to content navigation"] > a.ea11y-skip-to-content-link[data-bsts-skip="true"]:focus-visible {
  transform: translateY(0) !important;
}

/* One highly visible focus treatment across light and dark sections. */
:where(a, button, input, textarea, select, summary, [tabindex]):focus-visible {
  outline: 3px solid var(--bsts-a11y-focus) !important;
  outline-offset: 3px !important;
  box-shadow: 0 0 0 5px var(--bsts-a11y-focus-edge) !important;
}

[id] {
  scroll-margin-top: 110px;
}

/* Replace low-contrast accent blue while preserving the Blue Streak palette. */
.bsts-section-tag,
.bsts-small-title,
.bsts-partners-head > span,
.bsts-stat-card > span,
.bst-res-label,
.bsts-section-label,
.products-page .eyebrow.blue,
.products-page .card-label,
.products-page .support-inner .eyebrow {
  color: var(--bsts-a11y-blue) !important;
}

html body.elementor-page-70 .bsts-btn-primary,
html body.elementor-page-70 .bsts-learn-btn,
html body.elementor-page-70 .bsts-footer-btn,
html body .bsts-btn-primary,
html body .bsts-learn-btn,
html body .bst-res-btn,
html body .products-page .btn.btn-primary,
html body .bsts-footer-btn {
  border-color: var(--bsts-a11y-blue) !important;
  background: var(--bsts-a11y-blue) !important;
  background-color: var(--bsts-a11y-blue) !important;
  color: #ffffff !important;
}

.home-vendor-trademark {
  color: #52657a !important;
}

body.page-id-489 #content a,
body.page-id-584 #content a {
  color: var(--bsts-a11y-blue) !important;
  text-decoration: underline !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 3px !important;
}

.bsts-footer-bottom a,
.bsts-footer-bottom button {
  text-decoration: underline !important;
  text-decoration-thickness: 1.5px !important;
  text-underline-offset: 3px !important;
}

#bsts-cookie-launcher.bsts-privacy-control-link {
  min-height: 28px !important;
  padding: 3px 4px !important;
}

.bsts-visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto !important;
  }

  *,
  *::before,
  *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}
