/**
 * Helper function for downsize mixin.
 */
/**
 * Downsize a CSS property using the viewport to affect calc().
 *
 * @param {string} $property: The property to be affected.
 * @param {string|list} $min: The min value / values.
 * @param {string|list} $max: The max value / values.
 * @param {string} $viewport: The biggest viewport, which the property must be calculated.
 * @param {boolean} $default: True if the default property must be set, regardless of the viewport size.
 * @param {list} $static-min: A list containing the min viewport and the min value.
 */
.bg-primary, .bg-blue {
  background: #009EE3 !important;
}

.bg-primary.text-white .btn-outline-primary:hover {
  color: #009EE3;
  border-color: #009EE3;
}
.bg-primary.text-white .btn-link {
  border-color: #009EE3;
}

a {
  color: #009EE3;
}
a:hover {
  color: #0088c7;
}

.btn-link {
  color: #009EE3;
}
.btn-link:hover {
  color: #0088c7;
}

.btn-primary {
  transition: 0.5s;
  background: linear-gradient(90deg, #0088c7 50%, #009EE3 50%);
  background-position: 100%;
  background-size: 300%;
  border-width: 0;
  padding: 0.75rem 0.75rem;
  font-size: 1rem;
  line-height: 1.5;
  border-radius: 8px;
}
.btn-primary:hover {
  background-position: 0;
}

.btn-outline-primary {
  color: #009EE3;
  border-color: #009EE3;
  background: linear-gradient(90deg, #009EE3 50%, transparent 50%);
  background-position: 100%;
  background-size: 300%;
}
.btn-outline-primary:hover {
  background-color: #009EE3;
  border-color: #009EE3;
}

.bg-primary.text-white .btn-outline-primary {
  background: linear-gradient(90deg, #fff 50%, #009EE3 50%);
  background-position: 100%;
  background-size: 300%;
}

.color-blue {
  color: #009EE3 !important;
}

.form-control:focus {
  border-color: #009EE3;
}

.bg-primary.text-white .form-control:not(:focus) {
  border-color: #009EE3;
}

.was-validated .form-control:valid:focus,
.form-control.is-valid:focus {
  border-color: #009EE3;
}

.was-validated .form-control:valid,
.form-control.is-valid {
  border-color: #009EE3;
}

.was-validated .bootstrap-select select:valid + .dropdown-toggle {
  border-color: #009EE3;
}

.custom-control-input:checked ~ .custom-control-label::before {
  border-color: #009EE3;
  background-color: #009EE3;
}

.modal-content {
  border-color: transparent;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  border-radius: 8px;
}

/* ---------- */
@media (max-width: 991.98px) {
  .modal-fullscreen-lg-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-lg-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-lg-down .modal-body {
    overflow-y: auto;
  }
}
body .module-course-agenda {
  --agenda-text-color: #009EE3;
  --agenda-border-color: #009EE3;
}
.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23009EE3' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e");
}

.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23009EE3' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e");
}

.carousel-indicators li {
  background-color: #009EE3;
}

/* ---------- */
.module-header .preheader {
  color: #009EE3;
}

/* ---------- */
.module-sidebar-wrapper .module-sidebar .sidebar-card .content {
  background-color: #009EE3;
}
.module-sidebar-wrapper .module-sidebar .sidebar-card .content:hover {
  background-color: #0088c7;
}
.module-sidebar-wrapper .module-sidebar .sidebar-card:last-child .content {
  background-color: #ffffff;
  color: #009EE3;
  border-color: #009EE3;
}
.module-sidebar-wrapper .module-sidebar .sidebar-card:last-child .content:hover {
  background-color: #0088c7;
  border-color: #0088c7;
}

/* ---------- */
.swiper .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #009EE3 !important;
}

/* ---------- */
.module-testimonials-banner .swiper-button-prev:hover:after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cg fill='%23009EE3'%3E%3Cpath d='M11.707.293a1,1,0,0,0-1.414,0l-5,5a1,1,0,0,0,0,1.414l5,5a1,1,0,0,0,1.414-1.414L7.414,6l4.293-4.293A1,1,0,0,0,11.707.293Z' fill='%23009EE3'%3E%3C/path%3E %3Cpath d='M2.414,6,6.707,1.707A1,1,0,0,0,5.293.293l-5,5a1,1,0,0,0,0,1.414l5,5a1,1,0,1,0,1.414-1.414Z' fill='%23009EE3'%3E%3C/path%3E%3C/g%3E%3C/svg%3E");
}
.module-testimonials-banner .swiper-button-next:hover:after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cg fill='%23009EE3'%3E%3Cpath d='M6.707,5.293l-5-5A1,1,0,0,0,.293,1.707L4.586,6,.293,10.293a1,1,0,1,0,1.414,1.414l5-5A1,1,0,0,0,6.707,5.293Z' fill='%23009EE3'%3E%3C/path%3E %3Cpath d='M6.707.293A1,1,0,0,0,5.293,1.707L9.586,6,5.293,10.293a1,1,0,1,0,1.414,1.414l5-5a1,1,0,0,0,0-1.414Z' fill='%23009EE3'%3E%3C/path%3E%3C/g%3E%3C/svg%3E");
}

/* ---------- */
/* ---------- */
/* ---------- */
.module-text-media.position-beside.custom.minimal .header {
  color: #009EE3;
}

body .upload-files-container.dropzone.dz-drag-hover .upload-body, body .upload-files-container.dropzone:hover .upload-body {
  border-color: #009EE3;
}
body .upload-files-container.dropzone.dz-drag-hover .upload-body .icon, body .upload-files-container.dropzone:hover .upload-body .icon {
  color: #009EE3;
}
body .upload-files-container.dropzone .dz-preview .dz-details .dz-remove:hover .icon {
  color: #009EE3;
}

/* ---------- */
#header {
  --primary: #009EE3;
}
#header #navbar .dropdown-menu .dropdown-item > .icon {
  color: #009EE3;
}
#header #navbar .nav-item.dropdown .dropdown-menu .dropdown-image .nav-link {
  color: #009EE3;
}
#header #navbar .nav-item.dropdown .dropdown-menu .dropdown-items .dropdown-item:hover {
  color: #009EE3;
}
#header .menu-toggle-svg svg *,
#header .search-toggle-svg svg * {
  stroke: #009EE3;
}

/* ---------- */
@media (max-width: 1199.98px) {
  #header .btn-cart svg {
    color: #009EE3;
  }
}
/* ---------- */
@media (min-width: 1200px) {
  #header .james-search-modal-trigger-wrapper .input-group {
    border-bottom: 1px solid #dee2e6;
    width: 13.125rem;
  }
  #header input.james-search-modal-trigger {
    font-size: 1.125rem;
    border: unset;
    padding-right: 0.46875rem;
    line-height: 1.5625rem;
    background-color: transparent;
    height: 36px;
  }
  #header.navbar-expand-lg .navbar-toggler.lg {
    display: block;
    line-height: 1.5625rem;
    padding: 0.625rem 0.75rem 0.625rem 0.46875rem;
  }
  #header.navbar-expand-lg .navbar-toggler.lg .icon {
    width: 1rem;
    height: 1rem;
  }
}
/* ---------- */
@media (max-width: 1199.98px) {
  #header #navbar .nav-item > .nav-link.dropdown-toggle[aria-expanded=true] {
    color: #009EE3;
  }
}
@media (min-width: 992px) {
  #james-search-box-wrapper {
    height: 0 !important;
    overflow: hidden !important;
    transition: height 0.3s !important;
  }
  #james-search-box-wrapper.has-box {
    height: 80px !important;
  }
  #james-search-box-wrapper.has-box.has-match {
    height: 520px !important;
  }
}

/* ---------- */
#james-search-box-wrapper .james-search-box {
  opacity: 1 !important;
  visibility: visible !important;
  box-shadow: none !important;
  left: unset !important;
  right: unset !important;
  width: 100% !important;
  min-width: unset !important;
  max-width: unset !important;
  max-height: unset !important;
}
#james-search-box-wrapper .james-search-box .color-line {
  display: none !important;
}
#james-search-box-wrapper .james-search-box b {
  color: #009EE3;
}
#james-search-box-wrapper .james-search-box .link .badge-attribute b {
  color: inherit;
}
#james-search-box-wrapper .james-search-box .link.selected {
  outline: 2px solid #009EE3;
}
#james-search-box-wrapper .james-search-box .course .james-search-category-title,
#james-search-box-wrapper .james-search-box .course ul {
  margin-left: 0 !important;
  margin-right: 0 !important;
}
#james-search-box-wrapper .james-search-box .course .james-search-more-link {
  margin-left: 0 !important;
}
#james-search-box-wrapper .james-search-box .course + .content .james-search-category-title,
#james-search-box-wrapper .james-search-box .course + .content ul,
#james-search-box-wrapper .james-search-box .course + .content .james-search-more-link {
  margin-right: 0 !important;
  margin-left: 0 !important;
}

@media (max-width: 991.98px) {
  .modal-backdrop {
    display: none;
  }
  .james-search-is-opened .modal-backdrop {
    -webkit-backdrop-filter: none;
            backdrop-filter: none;
  }
}

@media (max-width: 991.98px) {
  .modal#jamesSearchModal {
    z-index: 1029;
  }
  .modal#jamesSearchModal .modal-dialog {
    margin-top: 4rem;
  }
  .modal#jamesSearchModal .color-line {
    display: none;
  }
  .modal#jamesSearchModal .modal-body {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
@media (min-width: 992px) {
  .modal#jamesSearchModal .modal-dialog {
    margin-top: 8.75rem;
  }
}

.james-search-form .input-group .james-search-input {
  background-color: transparent;
}
.james-search-form .input-group .james-search-input::-moz-placeholder {
  color: #9b9b9b;
}
.james-search-form .input-group .james-search-input, .james-search-form .input-group .james-search-input::placeholder {
  color: #9b9b9b;
}
.james-search-form .input-group .james-search-input.filled + .btn-input-clear .icon {
  opacity: 1;
}
.james-search-form .input-group .james-search-input:focus {
  border-color: #5E5E5E;
}
.james-search-form .input-group .btn-input-clear {
  position: absolute;
  height: 100%;
  right: 40px;
  z-index: 20;
  border-right: none;
}
.james-search-form .input-group .btn-input-clear .icon {
  border-radius: 50%;
  padding: 2px;
  opacity: 0;
}
.james-search-form .input-group input {
  border-right: none;
}
.james-search-form .input-group .btn {
  border-width: 0.0625rem;
  border-left: none;
}
.james-search-form .input-group #james-search-input-button-addon {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  height: calc(1em + 1rem + 4px);
  line-height: 14px;
}
.james-search-form .input-group #james-search-input-button-addon:hover {
  color: #ffffff;
}
.james-search-form .btn.close {
  font-weight: normal;
}
.james-search-form .btn.close .icon {
  margin-right: 0.5rem;
}

.james-search-field-wrapper .james-search-form-grid {
  display: grid;
  grid-template-rows: repeat(var(--bs-rows, 1), 1fr);
  gap: var(--bs-gap, 30px);
}
