

/*.btn.btn-primary,
.search-form .btn-primary.search-submit {
  padding: 0.75rem 2.75rem;
}*/

.btn.btn-success,
.search-form .btn-success.search-submit {
  padding: 0.75rem 2.75rem;
}

.btn.btn-danger,
.search-form .btn-danger.search-submit {
  padding: 0.75rem 2.75rem;
}

.btn.btn-warning,
.search-form .btn-warning.search-submit {
  padding: 0.75rem 2.75rem;
}

.mnu-link {
   padding: 0.5rem 1rem;
}


.header-banner.bg-gradient-pattern{
   min-height:250px;
}

.swiper-container {
    
    overflow-y: visible;

}

section.section.section-pricing.section-option-purchase {
    padding-top: 0px;
}

.section {
   text-align: left;
}


/* This should be removed with new nav*/
.nav-link {
   display: initial;
}

.main-header.header-main .navbar-nav__bottom .menu-item.nav-item .nav-link {
   padding: 0rem 0px !important;
}
/* end-- This should be removed with new nav*/


body.menu-open header.main-header #menu-collapse-main {
   justify-content: flex-start !important;
}

/* ==========================================================================
   WCAG 2.2 AA — Color Contrast Overrides (STAT-3611)
   Overrides Bootstrap 4 defaults that fail 4.5:1 contrast ratio.
   Uses !important because some views re-load the main bundle CSS after
   this file, which would otherwise undo these accessibility fixes.
   ========================================================================== */

/* --- Error / Danger Text: → #b52a2a (~6.3:1 vs white) --- */
/* body prefix needed to beat Bootstrap 4's own !important on .text-danger */
body .text-danger,
body .has-error .help-block,
body .has-error .control-label,
body .has-error .form-control-feedback {
  color: #b52a2a !important;
}
body a.text-danger:hover,
body a.text-danger:focus {
  color: #8c1f1f !important;
}
.has-error .form-control {
  border-color: #b52a2a !important;
}

/* --- Grey Text / Badge Pill: #787879 (4.41:1) → #6b6b6b (~5.3:1 vs white) --- */
/* The design system uses #787879 for .grey-text and badge-pill counts.
   Bump to #6b6b6b for AA compliance. Exclude colored badges with white text. */
body .grey-text {
  color: #6b6b6b !important;
}
body .badge.badge-pill:not(.badge-pill-teal):not(.badge-primary):not(.badge-info):not(.badge-danger):not(.badge-success):not(.badge-warning) {
  color: #6b6b6b !important;
}

/* --- Tab/Pill Text: #787879/#8d8f9d → #6b6b6b (~5.3:1 vs white) --- */
body .nav-tabs .nav-link,
body .nav-pills .nav-link:not(.active) {
  color: #6b6b6b !important;
}
body .nav-tabs .nav-link.active,
body .nav-tabs .nav-item.show .nav-link {
  color: #6b6b6b !important;
}

/* --- Custom Control Labels: #787879 (4.41:1) → #6b6b6b (~5.3:1 vs white) --- */
body .custom-control-label {
  color: #6b6b6b !important;
}

/* --- Placeholder Text: → #6b6b6b (~5.3:1 vs white) --- */
/* Override both Bootstrap and design system placeholder colors.
   The main bundle sets color via var(--base-placeholder-text) with !important,
   so we override the variable AND the placeholder pseudo-element.
   Matching exact selectors from main.css _forms.scss to ensure we win. */
body { --base-placeholder-text: #6b6b6b; }

/* Match the exact main.css selectors from _forms.scss line 102 */
.form-control::-webkit-input-placeholder,
.search-form .search-field::-webkit-input-placeholder { color: #6b6b6b !important; }
.form-control::-moz-placeholder,
.search-form .search-field::-moz-placeholder { color: #6b6b6b !important; opacity: 1 !important; }
.form-control::-ms-input-placeholder,
.search-form .search-field::-ms-input-placeholder { color: #6b6b6b !important; }
.form-control::placeholder,
.search-form .search-field::placeholder { color: #6b6b6b !important; opacity: 1 !important; }

/* Also cover bare input/select/textarea elements */
body input::-webkit-input-placeholder { color: #6b6b6b !important; }
body input::placeholder { color: #6b6b6b !important; opacity: 1 !important; }
body select::-webkit-input-placeholder { color: #6b6b6b !important; }
body select::placeholder { color: #6b6b6b !important; opacity: 1 !important; }
body textarea::-webkit-input-placeholder { color: #6b6b6b !important; }
body textarea::placeholder { color: #6b6b6b !important; opacity: 1 !important; }

/* Override .text-placeholder utility that uses the design system variable */
body .text-placeholder { color: #6b6b6b !important; }

/* Bootstrap-select placeholder text: #787879 (4.1:1) -> #6b6b6b (5.0:1)
   Exclude btn-primary/btn-info/etc styled selects — they use white text on colored bg */
body .bootstrap-select > .dropdown-toggle.bs-placeholder:not(.btn-primary):not(.btn-info):not(.btn-danger):not(.btn-success),
body .bootstrap-select > .dropdown-toggle.bs-placeholder:not(.btn-primary):not(.btn-info):not(.btn-danger):not(.btn-success):active,
body .bootstrap-select > .dropdown-toggle.bs-placeholder:not(.btn-primary):not(.btn-info):not(.btn-danger):not(.btn-success):focus,
body .bootstrap-select > .dropdown-toggle.bs-placeholder:not(.btn-primary):not(.btn-info):not(.btn-danger):not(.btn-success):hover {
  color: #6b6b6b !important;
}
body .bootstrap-select .filter-option-inner-inner {
  color: inherit;
}

/* Force contrast-safe color on original select elements hidden by bootstrap-select */
select.selectpicker {
  color: #595959 !important;
}

/* Custom file label: #8d8f9d (3.3:1) -> #6b6b6b (5.0:1) */
body .custom-file-label {
  color: #6b6b6b !important;
}

/* --- Grey Text: #787879 → #6b6b6b (~5.3:1 vs white) --- */
body .grey-text { color: #6b6b6b !important; }

/* --- Breadcrumb list numbers: hide ordered list markers --- */
.breadcumb ol {
  list-style: none !important;
  padding-left: 0 !important;
}

/* --- Banner text: dark text on image backgrounds for contrast --- */
.inner_banner .inner_banner_cn h1,
.inner_banner .inner_banner_cn .breadcumb,
.inner_banner .inner_banner_cn .breadcumb a,
.inner_banner .inner_banner_cn .breadcumb li {
  color: #18214d !important;
  text-shadow: 0 0 4px rgba(255, 255, 255, 0.8);
}

/* --- Text on colored backgrounds --- */
/* Text inherits #787879 which fails on non-white backgrounds.
   Use dark navy #18214d for strong contrast. */
.bg-gradient-grey .header-content,
.bg-gradient-grey .hero-text,
.bg-gradient-grey p {
  color: #18214d !important;
}
.bg-light-blue,
.bg-light-blue p,
.bg-light-blue span,
.bg-light-blue .section-content {
  color: #18214d !important;
}

/* --- Filters sidebar: removed visibility:hidden rule (STAT-3596 regression).
   The sidebar is already off-screen at right:-400px when closed,
   so it is not reachable by keyboard/tab without the slide-in transform. --- */

/* --- CME/CE credit badge in nav: #55c4b3 (2.6:1) → #0b7b73 (~5.1:1 vs white) --- */
body span.total-credit,
body .poc-cmece,
body .totalCreditsCount {
  color: #0b7b73 !important;
}

/* --- Section content paragraphs: ensure contrast on any background --- */
body p.section-content {
  color: #3e4462 !important;
}

/* --- Small text and misc elements: inherits #787879 (4.41:1) from design system --- */
.card small,
.card-body small,
.card-body-inner small,
small.custom-small,
.help-subscription span,
.progress-wrapper > span,
.dataTables_info,
.content-bg small,
.quiz-details small {
  color: #595959 !important;
}

/* --- Outline danger button: #ff4a4a (3.31:1) → #c0392b (5.4:1 vs white) --- */
.btn-outline-danger {
  color: #c0392b !important;
  border-color: #c0392b !important;
}
.btn-outline-danger:hover,
.btn-outline-danger:focus {
  color: #fff !important;
  background-color: #c0392b !important;
}

/* --- Form input text: #787879 (4.41:1) → #595959 (7.0:1 vs white) --- */
/* The design system sets .form-group .form-control to #787879 which fails.
   Using #595959 to clearly pass while keeping the subdued look. */
.form-group .form-control,
.search-form label .form-control,
.form-group .search-form .search-field,
.search-form .form-group .search-field,
.search-form label .search-field {
  color: #595959 !important;
}

/* --- Disabled Buttons: opacity 0.65 washes out contrast --- */
/* Use a darker background instead of opacity to maintain 4.5:1 */
.btn.disabled,
.btn:disabled {
  opacity: 1 !important;
}
.btn-primary.disabled,
.btn-primary:disabled {
  background-color: #40749e !important;
  border-color: #40749e !important;
  color: #fff !important;
}

/* --- Info Button: #17a2b8 → #137a85 (~5.1:1 with white text) --- */
.btn-info {
  background-color: #137a85 !important;
  border-color: #0e6570 !important;
}
.btn-info:focus,
.btn-info.focus {
  background-color: #0e6570 !important;
  border-color: #0a5860 !important;
}
.btn-info:hover {
  background-color: #0e6570 !important;
  border-color: #0a5860 !important;
}
.btn-info:active,
.btn-info.active,
.btn-info:not(:disabled):not(.disabled).active,
.btn-info:not(:disabled):not(.disabled):active,
.show > .btn-info.dropdown-toggle {
  background-color: #0e6570 !important;
  border-color: #0a5860 !important;
}

/* --- Success Text: → #2e7d32 (~5.1:1 vs white) --- */
/* body prefix needed to beat Bootstrap 4's own !important on .text-success */
body .text-success {
  color: #2e7d32 !important;
}
body a.text-success:hover,
body a.text-success:focus {
  color: #1b5e20 !important;
}

/* --- Muted Text: → #595959 (~7.0:1 vs white) --- */
body .text-muted {
  color: #595959 !important;
}

/* --- Secondary Button: #ff4a4a (3.31:1) → #c0392b (~5.4:1 with white text) --- */
.btn-secondary {
  background-color: #c0392b !important;
  border-color: #a93226 !important;
}
.btn-secondary:hover,
.btn-secondary:focus {
  background-color: #a93226 !important;
  border-color: #922b21 !important;
}

/* --- Small/descriptive text inheriting #787879: → #6b6b6b --- */
body small,
body .text-small {
  color: #6b6b6b !important;
}

/* --- StatPearls nav tab text: #787879 on #f9fafb (4.22:1) → #6b6b6b (4.7:1) --- */
body nav.statpearls-nav .nav-tabs .nav-link {
  color: #6b6b6b !important;
}

/* --- Danger Button: #dc3545 → #c0392b (~5.4:1 with white text) --- */
.btn-danger {
  background-color: #c0392b !important;
  border-color: #a93226 !important;
}
.btn-danger:focus,
.btn-danger.focus {
  background-color: #a93226 !important;
  border-color: #922b21 !important;
}
.btn-danger:hover {
  background-color: #a93226 !important;
  border-color: #922b21 !important;
}
.btn-danger:active,
.btn-danger.active,
.btn-danger:not(:disabled):not(.disabled).active,
.btn-danger:not(:disabled):not(.disabled):active,
.show > .btn-danger.dropdown-toggle {
  background-color: #a93226 !important;
  border-color: #922b21 !important;
}

/* --- "Most Popular" Badge Teal: → #0b7b73 (~5.1:1 with white text) --- */
.badge.badge-pill.badge-pill-teal,
.section-pricing-options .card.card-shadow-md .badge.badge-pill-teal,
.section-money-back .card-shadow-lg .badge-pill-teal {
  background-color: #0b7b73 !important;
}

/* --- CME/Credits Teal Text: #55c4b3 → #0d7570 (~5.5:1 vs white) --- */
.poc-cmece,
.totalCreditsCount,
.totalCreditsCountRedeem {
  color: #0d7570 !important;
}

/* --- Pagination Links: → #2a6496 (~6.3:1 vs white) --- */
/* Exclude active/next/previous states which use white text on blue background */
.pagination .page-item:not(.active):not(.next):not(.previous) .page-link,
.dataTables_paginate .page-item:not(.active):not(.next):not(.previous) .page-link {
  color: #2a6496 !important;
}
.pagination .page-item.active .page-link,
.dataTables_paginate .page-item.active .page-link {
  color: #fff !important;
}
.pagination .page-item.next:not(.disabled) .page-link,
.pagination .page-item.previous:not(.disabled) .page-link,
.dataTables_paginate .page-item.next:not(.disabled) .page-link,
.dataTables_paginate .page-item.previous:not(.disabled) .page-link {
  color: #fff !important;
  background-color: #016eb8 !important;
}
.pagination .page-item.disabled .page-link,
.dataTables_paginate .page-item.disabled .page-link {
  color: #595959 !important;
  background-color: #f3f3f3 !important;
}
/* Page info text (e.g. "1 of 40") — not a link, just informational */
.pagination .page-item > span.page-link {
  color: #6b6b6b !important;
  cursor: default !important;
  pointer-events: none !important;
  border: none !important;
  background: transparent !important;
}
.pagination .page-link:hover,
.pagination .page-link:focus,
.dataTables_paginate .page-link:hover,
.dataTables_paginate .page-link:focus {
  color: #1d4568 !important;
}

/* ==========================================================================
   WCAG 2.4.7 — Focus Visible (STAT-3619)
   Ensure all interactive elements have a visible focus indicator.
   Uses :focus-visible so indicators only appear for keyboard navigation.
   ========================================================================== */

/* Global focus indicator for all interactive elements */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[role="button"]:focus-visible,
[tabindex]:focus-visible,
.btn:focus-visible,
.nav-link:focus-visible,
.form-control:focus-visible,
.page-link:focus-visible,
.dropdown-toggle:focus-visible,
.selectpicker:focus-visible {
  outline: 2px solid #0d6efd !important;
  outline-offset: 2px !important;
  box-shadow: none !important;
}

/* Ensure checkboxes and radios also show focus */
input[type="checkbox"]:focus-visible + label,
input[type="radio"]:focus-visible + label {
  outline: 2px solid #0d6efd;
  outline-offset: 2px;
}

/* Contact form submit button */
input[type="submit"]:focus-visible {
  outline: 2px solid #0d6efd !important;
  outline-offset: 2px !important;
}

/* ==========================================================================
   WCAG 1.4.1 — Use of Color (STAT-3600)
   Links within body content must be distinguishable by more than color.
   Adds underline to inline text links while preserving navigation styling.
   ========================================================================== */

/* Underline links within content areas so they're not color-only */
p a:not(.btn),
.section-content a:not(.btn),
.disclemair_cn a:not(.btn),
.card-body a:not(.btn),
.modal-body a:not(.btn),
article a:not(.btn),
.article-content a:not(.btn),
.form-text a:not(.btn),
.alert a:not(.btn),
.hero-text a:not(.btn) {
  text-decoration: underline !important;
}
p a:not(.btn):hover,
.section-content a:not(.btn):hover,
.disclemair_cn a:not(.btn):hover,
.card-body a:not(.btn):hover,
article a:not(.btn):hover {
  text-decoration: underline !important;
}

/* Active/selected tabs: add bottom border so state isn't color-only */
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  border-bottom: 3px solid #0d6efd !important;
}

/* Quiz builder selected tab indicator */
.stat_box_top .active,
.k-tabstrip-items .k-item.k-state-active {
  border-bottom: 3px solid #0d6efd !important;
}

/* ==========================================================================
   WCAG 2.4.3 — Focus Order (STAT-3604)
   Prevent hidden/inactive content from receiving keyboard focus.
   ========================================================================== */

/* Inactive tab panes should not be focusable */
.tab-pane:not(.active):not(.show) {
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
}

/* Collapsed sidebar sections should not trap focus */
.stat_box_bottom[style*="display: none"],
.stat_box_bottom[style*="display:none"] {
  visibility: hidden;
}

/* Removed .sidebar-content:not(.active) rule — no element ever toggles .active
   on .sidebar-content, so it was hiding all sidebar content unconditionally,
   including the DataTable filter sidebar (STAT-3596 regression fix). */

/* ==========================================================================
   WCAG 2.5.8 — Target Size Minimum (STAT-3621)
   Ensure radio buttons and checkboxes meet 24x24 CSS pixel minimum.
   ========================================================================== */

/* Increase radio/checkbox target size via clickable label area.
   The label IS the click target, so we ensure it meets 24x24 min.
   We do NOT inflate the radio/checkbox visual size itself. */
input[type="radio"] + label,
input[type="checkbox"] + label,
.form-check-label,
.custom-control-label {
  min-height: 24px !important;
  min-width: 24px !important;
  padding: 4px 0 !important;
  cursor: pointer;
}

/* ==========================================================================
   WCAG 1.4.11 — Non-text Contrast (STAT-3615)
   UI component borders must meet 3:1 contrast ratio.
   Bootstrap default #ced4da is only 1.49:1 vs white.
   ========================================================================== */

/* Form field borders: #ced4da (1.49:1) -> #949494 (3.03:1) */
body .form-control {
  border-color: #949494 !important;
}
body .form-control:focus {
  border-color: #0d6efd !important;
}

/* Custom select borders */
body .custom-select {
  border-color: #949494 !important;
}

/* Checkbox and radio borders */
body .custom-control-input ~ .custom-control-label::before {
  border-color: #949494 !important;
}

/* Toggle/switch controls */
body .custom-switch .custom-control-label::before {
  border-color: #949494 !important;
}

/* Sorting icon contrast in tables */
.k-grid th .k-icon,
.k-grid th .k-link .k-icon {
  color: #595959 !important;
}

/* ==========================================================================
   WCAG 1.4.12 — Text Spacing (STAT-3616)
   Prevent content clipping/overlap when users apply custom text spacing.
   The criterion requires no content loss with: line-height 1.5x,
   letter-spacing 0.12em, word-spacing 0.16em, paragraph spacing 2x.
   ========================================================================== */

/* Ensure containers don't clip when text expands.
   Excludes .dropdown-item — overflow visible breaks dropdown menu backgrounds.
   Excludes .sidebar-content — it needs overflow-y:auto for scrollable filter panels. */
.card, .badge, .btn, .nav-link,
.stat_box_top, .stat_box_bottom,
.form-control,
.board-certification-date {
  overflow: visible !important;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

/* Prevent fixed heights that cause overlap on text expansion */
.card-body, .modal-body, .section-content, .hero-text {
  height: auto !important;
  min-height: 0;
}

/* Article library card descriptions use .truncate with max-height + overflow:hidden.
   Allow them to grow when text spacing is applied so content isn't clipped. */
.card .truncate {
  max-height: none !important;
  overflow: visible !important;
}

/* ==========================================================================
   WCAG 2.4.11 — Focus Not Obscured (STAT-3620)
   Ensure modals don't obscure focused elements behind them.
   ========================================================================== */

/* Ensure Bootstrap modal backdrop and dialog have proper z-index */
.modal {
  z-index: 1050 !important;
}
.modal-backdrop {
  z-index: 1040 !important;
}

/* When modal is open, ensure background content is inert */
body.modal-open > :not(.modal):not(.modal-backdrop) {
  pointer-events: none;
}

/* ==========================================================================
   WCAG 1.4.13 — Content on Hover or Focus (STAT-3617)
   Tooltips must appear on keyboard focus, not just mouse hover.
   ========================================================================== */

/* Show Bootstrap tooltips on keyboard focus too */
[data-toggle="tooltip"]:focus .tooltip,
[title]:focus-visible::after {
  visibility: visible;
  opacity: 1;
}

/* Ensure tooltip content stays visible while pointer is over it */
.tooltip:hover {
  visibility: visible !important;
  opacity: 1 !important;
}

/* ==========================================================================
   WCAG 1.4.4 — Resize Text (STAT-3612)
   WCAG 1.4.10 — Reflow (STAT-3614)
   Prevent content from disappearing at 200% zoom or 320px viewport.
   ========================================================================== */

/* Prevent text clipping in sidebar/dashboard profession labels */
.sidebar .nav-link,
.sidebar-home,
.sidebar-icon-admin,
.sidebar-content .nav-link {
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

/* Prevent truncation in dropdown menus at narrow widths.
   Do NOT set overflow on .dropdown-menu itself — it breaks the background. */
.dropdown-item,
.selectpicker .dropdown-menu .text {
  white-space: normal !important;
  overflow-wrap: break-word;
  word-wrap: break-word;
  max-width: 100% !important;
}

/* Ensure search placeholder doesn't clip */
.search-with-icon {
  text-overflow: ellipsis;
  min-width: 0 !important;
}

/* Prevent horizontal scrollbar at 320px */
@media (max-width: 320px) {
  body {
    overflow-x: hidden;
  }
  .container, .container-fluid {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
  .navbar-brand img {
    max-width: 160px !important;
  }
  table {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  /* Constrain bootstrap-select dropdown menus to viewport width */
  .bootstrap-select .dropdown-menu {
    max-width: calc(100vw - 16px) !important;
    min-width: auto !important;
  }
  /* Override w-auto on selects so they don't overflow the container */
  select.w-auto {
    width: 100% !important;
  }
}

/* Prevent content loss at 400% zoom (equivalent to 320px at 1280) */
@media (max-width: 400px) {
  .stat_box_top, .stat_box_bottom {
    overflow: visible !important;
    white-space: normal !important;
  }
  .k-grid .k-grid-header th {
    white-space: normal !important;
  }
}