/* WCAG 2.1 AA - Frontend Accessibility Fixes */
/* This file loads locally and overrides remote CSS */

/* Global link contrast - #106eea on white is 4.44:1, needs 4.5:1 */
a:not(.skip-to-content):not(.btn) {
  color: #0b5394 !important;
}
a:not(.skip-to-content):not(.btn):hover {
  color: #094578 !important;
}

/* Skip link must keep white text on blue bg */
a.skip-to-content {
  color: #ffffff !important;
}

/* Breadcrumb link contrast on #f1f6fe background */
.breadcrumbs ol a {
  color: #0b5394 !important;
}

/* Body text contrast */
body {
  color: #595959 !important;
}

/* Footer text contrast */
footer p, footer a {
  color: #333333 !important;
}

/* Focus Visible */
*:focus-visible {
  outline: 2px solid #0066cc !important;
  outline-offset: 2px !important;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible {
  outline: 2px solid #0066cc !important;
  outline-offset: 2px !important;
}

/* Screen reader only */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* Frontend button contrast fixes - white text needs 4.5:1 */
.btn-success, .btn-success:focus, .btn-success:active {
  background-color: #1a7a3a !important;
  border-color: #1a7a3a !important;
  color: #fff !important;
}
.btn-success:hover {
  background-color: #156830 !important;
  border-color: #156830 !important;
}
.GBgreen {
  color: #1a7a3a !important;
}
.GBblue {
  color: #0b6ea8 !important;
}
.bg-success, [style*="66C082"], [style*="66c082"] {
  background-color: #1a7a3a !important;
}

/* Low contrast text fixes from style.css */
.testimonials .testimonial-item p {
  color: #767676 !important;
}

.team .member .member-info span {
  color: #767676 !important;
}

.pricing .box .text-decoration-line-through {
  color: #767676 !important;
}
