/*
 * Capa final de accesibilidad para CTA DUCVIAM.
 * Solo normaliza contraste y estados; no modifica geometría ni composición.
 */

.nav-links > a.nav-action,
.nav-action,
.mobile-menu a.nav-action,
.mobile-menu a.mobile-menu-btn {
  border-color: #101815;
  background-color: transparent;
  color: #101815;
}

.btn.btn-primary,
.hero .btn.btn-primary,
.local-sidebar .btn.btn-primary,
.sticky-diagnostic .btn.btn-primary {
  border-color: #101815;
  background-color: #101815;
  color: #fff;
}

.nav-links > a.nav-action:hover,
.nav-links > a.nav-action:focus-visible,
.nav-links > a.nav-action:active,
.nav-action:hover,
.nav-action:focus-visible,
.nav-action:active,
.mobile-menu a.nav-action:hover,
.mobile-menu a.nav-action:focus-visible,
.mobile-menu a.nav-action:active,
.mobile-menu a.mobile-menu-btn:hover,
.mobile-menu a.mobile-menu-btn:focus-visible,
.mobile-menu a.mobile-menu-btn:active,
.btn.btn-primary:hover,
.btn.btn-primary:focus-visible,
.btn.btn-primary:active,
.hero .btn.btn-primary:hover,
.hero .btn.btn-primary:focus-visible,
.hero .btn.btn-primary:active,
.local-sidebar .btn.btn-primary:hover,
.local-sidebar .btn.btn-primary:focus-visible,
.local-sidebar .btn.btn-primary:active,
.sticky-diagnostic .btn.btn-primary:hover,
.sticky-diagnostic .btn.btn-primary:focus-visible,
.sticky-diagnostic .btn.btn-primary:active {
  border-color: #000;
  background-color: #000;
  color: #fff;
}

.nav-action[aria-current="page"],
.nav-action[aria-current="location"],
.mobile-menu-btn[aria-current="page"],
.mobile-menu-btn[aria-current="location"],
.btn-primary[aria-current="page"],
.btn-primary[aria-current="location"] {
  border-color: #101815;
  background-color: #101815;
  color: #fff;
}

.final-cta .btn,
.final-cta .btn.btn-primary {
  border-color: #fff;
  background-color: #fff;
  color: #101815;
}

.final-cta .btn:hover,
.final-cta .btn:focus-visible,
.final-cta .btn:active,
.final-cta .btn.btn-primary:hover,
.final-cta .btn.btn-primary:focus-visible,
.final-cta .btn.btn-primary:active {
  border-color: #10b981;
  background-color: #10b981;
  color: #04130e;
}

.nav-action:focus-visible,
.mobile-menu-btn:focus-visible,
.btn:focus-visible,
.local-sidebar .btn:focus-visible,
.sticky-diagnostic .btn:focus-visible,
.final-cta .btn:focus-visible {
  outline: 3px solid #10b981;
  outline-offset: 3px;
}

.site-footer a:hover,
.site-footer a:focus-visible {
  color: #5ee0ad;
}

.site-footer a:active {
  color: #fff;
}

.site-footer a:focus-visible {
  outline: 3px solid #5ee0ad;
  outline-offset: 3px;
}

@media (forced-colors: active) {
  .nav-action,
  .mobile-menu-btn,
  .btn,
  .site-footer a {
    forced-color-adjust: auto;
  }
}
