/*
  2026-06-25 WCAG AA + navigation repair for sadeleader.com.
  Scoped visual fixes for home, event, situational course, and utility pages.
*/

body.sade-home .navbar,
body.event-page .navbar {
  z-index: 1400 !important;
  top: 16px !important;
  left: 50% !important;
  right: auto !important;
  width: min(calc(100% - 32px), 1160px) !important;
  min-height: 66px !important;
  overflow: visible !important;
  contain: none !important;
  transform: translateX(-50%) !important;
}

body.sade-home .navbar.nav-hidden,
body.event-page .navbar.nav-hidden {
  transform: translateX(-50%) !important;
}

body.sade-home .navbar-inner,
body.event-page .navbar-inner {
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
}

body.sade-home .navbar-links,
body.event-page .navbar-links {
  position: static !important;
  width: auto !important;
  max-height: none !important;
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: clamp(14px, 2vw, 28px) !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  pointer-events: auto !important;
}

body.sade-home .navbar-links a,
body.event-page .navbar-links a {
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  color: rgba(255, 255, 255, 0.86) !important;
  white-space: nowrap !important;
}

body.sade-home .navbar-links a:not(.nav-cta):hover,
body.sade-home .navbar-links a:not(.nav-cta):focus-visible,
body.event-page .navbar-links a:not(.nav-cta):hover,
body.event-page .navbar-links a:not(.nav-cta):focus-visible {
  color: #ffffff !important;
}

body.sade-home .navbar-links a.nav-cta,
body.event-page .navbar-links a.nav-cta {
  min-width: 164px !important;
  justify-content: center !important;
  padding: 0 20px !important;
  border: 1px solid rgba(213, 20, 54, 0.78) !important;
  border-radius: 6px !important;
  background: #d51436 !important;
  color: #ffffff !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  box-shadow: 0 14px 34px rgba(213, 20, 54, 0.24) !important;
}

body.sade-home .navbar-links a.nav-cta:hover,
body.sade-home .navbar-links a.nav-cta:focus-visible,
body.event-page .navbar-links a.nav-cta:hover,
body.event-page .navbar-links a.nav-cta:focus-visible {
  background: #b70f2b !important;
  color: #ffffff !important;
}

body.sade-home .btn-primary,
body.event-page .btn-primary,
body.sade-course .btn-primary {
  background: #d51436 !important;
  color: #ffffff !important;
  border-color: rgba(213, 20, 54, 0.78) !important;
  text-decoration: none !important;
}

body.sade-home .btn-primary:hover,
body.sade-home .btn-primary:focus-visible,
body.event-page .btn-primary:hover,
body.event-page .btn-primary:focus-visible,
body.sade-course .btn-primary:hover,
body.sade-course .btn-primary:focus-visible {
  background: #b70f2b !important;
  color: #ffffff !important;
}

body.sade-home .mobile-toggle,
body.event-page .mobile-toggle {
  display: none !important;
}

body.sade-home .mobile-toggle span,
body.event-page .mobile-toggle span {
  display: block !important;
  width: 22px !important;
  height: 2px !important;
  border-radius: 999px !important;
  background: #ffffff !important;
}

body.sade-home .learn-section,
body.sade-home .format-section,
body.sade-home .curriculum-section,
body.event-page .learn-section,
body.event-page .format-section {
  color: #07111f !important;
  background:
    linear-gradient(180deg, #f8fafb 0%, #eef3f4 52%, #f7f9f8 100%) !important;
  border-top: 1px solid rgba(7, 17, 31, 0.12) !important;
  border-bottom: 1px solid rgba(7, 17, 31, 0.12) !important;
}

body.sade-home .learn-section::before,
body.sade-home .format-section::before,
body.sade-home .curriculum-section::before,
body.event-page .learn-section::before,
body.event-page .format-section::before {
  content: none !important;
  display: none !important;
}

body.sade-home .learn-section .section-title,
body.sade-home .format-section .section-title,
body.sade-home .curriculum-section .section-title,
body.sade-home .learn-item h3,
body.sade-home .format-item h3,
body.sade-home .module-item h3,
body.event-page .learn-section .section-title,
body.event-page .format-section .section-title,
body.event-page .learn-item h3,
body.event-page .format-item h3 {
  color: #07111f !important;
}

body.sade-home .learn-section .section-sub,
body.sade-home .format-section .section-sub,
body.sade-home .curriculum-section .section-sub,
body.sade-home .learn-item p,
body.sade-home .format-item p,
body.sade-home .module-item p,
body.event-page .learn-section .section-sub,
body.event-page .format-section .section-sub,
body.event-page .learn-item p,
body.event-page .format-item p {
  color: #435166 !important;
}

body.sade-home .learn-section .section-label,
body.sade-home .format-section .section-label,
body.sade-home .curriculum-section .section-label,
body.event-page .learn-section .section-label,
body.event-page .format-section .section-label {
  color: #8f1024 !important;
}

body.sade-home .learn-item,
body.sade-home .format-item,
body.sade-home .module-item,
body.event-page .learn-item,
body.event-page .format-item {
  background: #ffffff !important;
  border: 1px solid rgba(7, 17, 31, 0.14) !important;
  box-shadow: 0 12px 34px rgba(7, 17, 31, 0.08) !important;
}

body.sade-home .format-time,
body.sade-home .format-section .cta-trust-item,
body.event-page .format-time,
body.event-page .format-section .cta-trust-item {
  background: #ffffff !important;
  border-color: rgba(7, 17, 31, 0.14) !important;
  color: #273348 !important;
}

body.sade-home main a[href="/provicomtv-es"]:not(.btn-primary),
body.sade-home main a[href="/provicomtv"]:not(.btn-primary),
body.sade-home main a[href="/provicomtv-es.html"]:not(.btn-primary),
body.sade-home main a[href="/provicomtv.html"]:not(.btn-primary),
body.event-page main a[href="/provicomtv-es"]:not(.btn-primary),
body.event-page main a[href="/provicomtv"]:not(.btn-primary),
body.event-page main a[href="/provicomtv-es.html"]:not(.btn-primary),
body.event-page main a[href="/provicomtv.html"]:not(.btn-primary) {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 32px !important;
  margin-top: 8px !important;
  color: #8f1024 !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
  text-decoration-color: rgba(143, 16, 36, 0.38) !important;
}

body.sade-home main div:has(> a[href="/provicomtv-es"]:not(.btn-primary)),
body.sade-home main div:has(> a[href="/provicomtv"]:not(.btn-primary)),
body.sade-home main div:has(> a[href="/provicomtv-es.html"]:not(.btn-primary)),
body.sade-home main div:has(> a[href="/provicomtv.html"]:not(.btn-primary)),
body.event-page main div:has(> a[href="/provicomtv-es"]:not(.btn-primary)),
body.event-page main div:has(> a[href="/provicomtv"]:not(.btn-primary)),
body.event-page main div:has(> a[href="/provicomtv-es.html"]:not(.btn-primary)),
body.event-page main div:has(> a[href="/provicomtv.html"]:not(.btn-primary)) {
  margin-top: 24px !important;
  padding-top: 8px !important;
}

@media (max-width: 760px) {
  body.sade-home .navbar,
  body.sade-home .navbar.nav-hidden,
  body.event-page .navbar,
  body.event-page .navbar.nav-hidden {
    top: 10px !important;
    left: 10px !important;
    right: 10px !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    transform: none !important;
    overflow: visible !important;
  }

  body.sade-home .navbar-inner,
  body.event-page .navbar-inner {
    display: flex !important;
    grid-template-columns: none !important;
    min-width: 0 !important;
  }

  body.sade-home .navbar-brand,
  body.event-page .navbar-brand {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
  }

  body.sade-home .navbar-links,
  body.event-page .navbar-links {
    position: fixed !important;
    top: calc(var(--r9-mobile-nav, 68px) + 10px) !important;
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
    max-height: min(72dvh, 520px) !important;
    overflow-y: auto !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    padding: 10px !important;
    border: 1px solid rgba(255, 255, 255, 0.16) !important;
    border-radius: 8px !important;
    background: #07111f !important;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.38) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  body.sade-home .navbar-links.mobile-open,
  body.sade-home.mobile-nav-open .navbar-links,
  body.event-page .navbar-links.mobile-open,
  body.event-page.mobile-nav-open .navbar-links {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    pointer-events: auto !important;
  }

  body.sade-home .mobile-toggle,
  body.event-page .mobile-toggle {
    position: relative !important;
    z-index: 2 !important;
    display: inline-flex !important;
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    margin-left: auto !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;
    gap: 5px !important;
    border: 1px solid rgba(213, 20, 54, 0.82) !important;
    border-radius: 999px !important;
    background: #d51436 !important;
    color: #ffffff !important;
    box-shadow: 0 12px 28px rgba(213, 20, 54, 0.26) !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    pointer-events: auto !important;
    appearance: none !important;
  }

  body.sade-home .hero,
  body.event-page .hero {
    overflow: hidden !important;
  }

  body.sade-home .hero .container,
  body.event-page .hero .container {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    display: block !important;
    padding-right: 22px !important;
    padding-left: 22px !important;
    box-sizing: border-box !important;
  }

  body.sade-home .hero h1,
  body.event-page .hero h1 {
    max-width: 100% !important;
    font-size: clamp(2.05rem, 7.4vw, 2.65rem) !important;
    line-height: 0.98 !important;
    overflow-wrap: break-word !important;
    text-wrap: wrap !important;
  }

  body.sade-home .hero-sub,
  body.event-page .hero-sub {
    max-width: 100% !important;
    font-size: 1rem !important;
    line-height: 1.5 !important;
    overflow-wrap: break-word !important;
  }

  body.sade-home .hero-ctas,
  body.event-page .hero-ctas {
    width: 100% !important;
    flex-direction: column !important;
    align-items: stretch !important;
  }

  body.sade-home .hero-ctas a,
  body.event-page .hero-ctas a {
    width: 100% !important;
    justify-content: center !important;
    box-sizing: border-box !important;
  }

  body.sade-home .hero-stats,
  body.event-page .hero-stats {
    width: 100% !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }
}

/* Situational course pages use the same r16 theme and had the same nav/contrast risks. */
body.sade-course .navbar {
  z-index: 1400 !important;
  top: 16px !important;
  left: 50% !important;
  right: auto !important;
  width: min(calc(100% - 32px), 1160px) !important;
  min-height: 66px !important;
  overflow: visible !important;
  contain: none !important;
  transform: translateX(-50%) !important;
}

body.sade-course .navbar.nav-hidden {
  transform: translateX(-50%) !important;
}

body.sade-course .navbar-inner {
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
}

body.sade-course .navbar-links {
  position: static !important;
  width: auto !important;
  max-height: none !important;
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: clamp(14px, 2vw, 26px) !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  pointer-events: auto !important;
}

body.sade-course .navbar-links a {
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  color: rgba(255, 255, 255, 0.86) !important;
  white-space: nowrap !important;
}

body.sade-course .navbar-links a:not(.nav-cta):hover,
body.sade-course .navbar-links a:not(.nav-cta):focus-visible {
  color: #ffffff !important;
}

body.sade-course .navbar-links a.nav-cta {
  min-width: 164px !important;
  justify-content: center !important;
  padding: 0 20px !important;
  border: 1px solid rgba(213, 20, 54, 0.78) !important;
  border-radius: 6px !important;
  background: #d51436 !important;
  color: #ffffff !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  box-shadow: 0 14px 34px rgba(213, 20, 54, 0.24) !important;
}

body.sade-course .navbar-links a.nav-cta:hover,
body.sade-course .navbar-links a.nav-cta:focus-visible {
  background: #b70f2b !important;
  color: #ffffff !important;
}

body.sade-course .mobile-toggle {
  display: none !important;
}

body.sade-course .mobile-toggle span {
  display: block !important;
  width: 22px !important;
  height: 2px !important;
  border-radius: 999px !important;
  background: #ffffff !important;
}

body.sade-course .learn-section,
body.sade-course .format-section {
  color: #07111f !important;
  background:
    linear-gradient(180deg, #f8fafb 0%, #eef3f4 52%, #f7f9f8 100%) !important;
  border-top: 1px solid rgba(7, 17, 31, 0.12) !important;
  border-bottom: 1px solid rgba(7, 17, 31, 0.12) !important;
}

body.sade-course .learn-section::before,
body.sade-course .format-section::before {
  content: none !important;
  display: none !important;
}

body.sade-course .learn-section .section-title,
body.sade-course .format-section .section-title,
body.sade-course .learn-item h3,
body.sade-course .format-item h3 {
  color: #07111f !important;
}

body.sade-course .learn-section .section-sub,
body.sade-course .format-section .section-sub,
body.sade-course .learn-item p,
body.sade-course .format-item p {
  color: #435166 !important;
}

body.sade-course .learn-section .section-label,
body.sade-course .format-section .section-label {
  color: #8f1024 !important;
}

body.sade-course .photo-break-title {
  color: #ffffff !important;
}

body.sade-course .photo-break-desc {
  color: rgba(255, 255, 255, 0.76) !important;
}

body.sade-course .photo-break-label {
  color: #ff4f6d !important;
}

body.sade-course .learn-item,
body.sade-course .format-item {
  background: #ffffff !important;
  border: 1px solid rgba(7, 17, 31, 0.14) !important;
  box-shadow: 0 12px 34px rgba(7, 17, 31, 0.08) !important;
}

body.sade-course .format-time,
body.sade-course .format-section .cta-trust-item {
  background: #ffffff !important;
  border-color: rgba(7, 17, 31, 0.14) !important;
  color: #273348 !important;
}

body.sade-course .hero {
  overflow: hidden !important;
}

/* Utility pages keep their full-width utility nav but get clearer controls. */
body.sade-utility .mobile-toggle {
  border: 1px solid rgba(213, 20, 54, 0.82) !important;
  border-radius: 999px !important;
  background: #d51436 !important;
  box-shadow: 0 12px 28px rgba(213, 20, 54, 0.26) !important;
}

body.sade-utility .mobile-toggle span {
  background: #ffffff !important;
}

body.sade-utility .navbar-links a.nav-cta,
body.sade-utility .nav-cta,
body.sade-utility .submit-btn {
  background: #d51436 !important;
  color: #ffffff !important;
  border-color: rgba(213, 20, 54, 0.78) !important;
}

body.sade-utility .navbar-links a.nav-cta:hover,
body.sade-utility .navbar-links a.nav-cta:focus-visible,
body.sade-utility .submit-btn:hover,
body.sade-utility .submit-btn:focus-visible {
  background: #b70f2b !important;
  color: #ffffff !important;
}

@media (max-width: 760px) {
  body.sade-course .navbar,
  body.sade-course .navbar.nav-hidden {
    top: 10px !important;
    left: 10px !important;
    right: 10px !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    transform: none !important;
    overflow: visible !important;
  }

  body.sade-course .navbar-inner {
    display: flex !important;
    grid-template-columns: none !important;
    min-width: 0 !important;
  }

  body.sade-course .navbar-brand {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
  }

  body.sade-course .navbar-links {
    position: fixed !important;
    top: calc(var(--r9-mobile-nav, 68px) + 10px) !important;
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
    max-height: min(72dvh, 520px) !important;
    overflow-y: auto !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    padding: 10px !important;
    border: 1px solid rgba(255, 255, 255, 0.16) !important;
    border-radius: 8px !important;
    background: #07111f !important;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.38) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  body.sade-course .navbar-links.mobile-open,
  body.sade-course.mobile-nav-open .navbar-links {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    pointer-events: auto !important;
  }

  body.sade-course .mobile-toggle {
    position: relative !important;
    z-index: 2 !important;
    display: inline-flex !important;
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    margin-left: auto !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;
    gap: 5px !important;
    border: 1px solid rgba(213, 20, 54, 0.82) !important;
    border-radius: 999px !important;
    background: #d51436 !important;
    color: #ffffff !important;
    box-shadow: 0 12px 28px rgba(213, 20, 54, 0.26) !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    pointer-events: auto !important;
    appearance: none !important;
  }

  body.sade-course .hero .container {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    display: block !important;
    padding-right: 22px !important;
    padding-left: 22px !important;
    box-sizing: border-box !important;
  }

  body.sade-course .hero h1 {
    max-width: 100% !important;
    font-size: clamp(2.05rem, 7.4vw, 2.65rem) !important;
    line-height: 0.98 !important;
    overflow-wrap: break-word !important;
    text-wrap: wrap !important;
  }

  body.sade-course .hero-sub {
    max-width: 100% !important;
    font-size: 1rem !important;
    line-height: 1.5 !important;
    overflow-wrap: break-word !important;
  }

  body.sade-course .hero-ctas {
    width: 100% !important;
    flex-direction: column !important;
    align-items: stretch !important;
  }

  body.sade-course .hero-ctas a {
    width: 100% !important;
    justify-content: center !important;
    box-sizing: border-box !important;
  }

  body.sade-course .hero-stats {
    width: 100% !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  body.sade-course main > section::after {
    content: none !important;
    display: none !important;
  }

  body.sade-course .section-title {
    font-size: clamp(2rem, 8.8vw, 2.7rem) !important;
    line-height: 1.05 !important;
  }

  body.sade-course .why-content {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    padding-left: 20px !important;
  }

  body.sade-utility .mobile-toggle {
    display: inline-flex !important;
    border-radius: 999px !important;
    background: #d51436 !important;
    color: #ffffff !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  body.sade-utility .navbar-links,
  body.sade-utility .navbar.mobile-normalized-nav .navbar-links {
    background: #07111f !important;
    border-color: rgba(255, 255, 255, 0.16) !important;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.38) !important;
  }
}
