 /*
 Put your custom overlay styles in here
 You can use your northpass color palette in this file

{{ color_palette.button_font_color }}
{{ color_palette.button_color }}
{{ color_palette.button_hover_color }}
{{ color_palette.header_font_color }}
{{ color_palette.header_font_hover_color }}
{{ color_palette.header_color }}
*/

@font-face {
  font-family: "Bogle";
  src: url(https://s3.amazonaws.com/static.northpass.com/fonts/Bogle_Regular.OTF);
  font-weight: 400;
}

@font-face {
  font-family: "Bogle";
  src: url(https://s3.amazonaws.com/static.northpass.com/fonts/Bogle_Italic.OTF);
  font-weight: 400;
  font-style: italic;
}

@font-face {
  font-family: "Bogle";
  src: url(https://s3.amazonaws.com/static.northpass.com/fonts/Bogle_Medium.otf);
  font-weight: 500;
}

@font-face {
  font-family: "Bogle";
  src: url(https://s3.amazonaws.com/static.northpass.com/fonts/Bogle_Medium_Italic.otf);
  font-weight: 500;
  font-style: italic;
}

@font-face {
  font-family: "Bogle";
  src: url(https://s3.amazonaws.com/static.northpass.com/fonts/Bogle_Bold.OTF);
  font-weight: 700;
}

@font-face {
  font-family: "Bogle";
  src: url(https://s3.amazonaws.com/static.northpass.com/fonts/Bogle_Bold_Italic.OTF);
  font-weight: 700;
  font-style: italic;
}

@font-face {
  font-family: "Bogle";
  src: url(https://s3.amazonaws.com/static.northpass.com/fonts/Bogle_Black.OTF);
  font-weight: 900;
}

@font-face {
  font-family: "Bogle";
  src: url(https://s3.amazonaws.com/static.northpass.com/fonts/Bogle_Black_Italic.OTF);
  font-weight: 900;
  font-style: italic;
}

body,
html {
  font-family: "Bogle", "Roboto", sans-serif;
  color: #fff;
}

body {
  background: #041e42;
}

.np-homepage-featured .np-homepage-headline, .np-homepage-featured .np-homepage-subheadline, .np-resource-title, .np-dashboard-resources-title, .np-dashboard-resources-category, .np-resource-subtitle, .np-search .np-resource-subtitle-number{
  color: #fff;
}

.np-sub-navigation {
	background-color: #041E42 !important;
	padding: 25px 0 0 0;
	margin: 0 0 0 0;
}
.np-sub-navigation-content-item-link {
	height: 15px;
}

.np-sub-navigation-content-item-inactive {
	--np-button-color: #ffffff !important;
	--np-button-font-color: #ffffff !important;
	color: #ffffff !important;
}
.np-sub-navigation-content-item-inactive
.np-sub-navigation-content-item-link {
	color: #ffffff;
}

.np-sub-navigation-content-item-inactive
.np-sub-navigation-content-item-icon {
	color: #ffffff;
}

.np-sub-navigation-content-item-active
.np-sub-navigation-content-item-link {
	color: #FFC220;
}


.np-sub-navigation-content-item-active {
  --np-button-color: #FFC220 !important;
	--np-button-font-color: #FFC220 !important;
	color: #FFC220 !important;
}


.feature-lp-card {
  text-decoration: none;
}
.lp-feature-image {
  width: 100%;
}
.text-heading {
  color: #fff;
  font-size: 30px;
  font-weight: 600;
}
.text-container {
  margin-bottom: 20px;
}
section {
  padding: 50px 20px;
}

.text-center {
  text-align: center;
}

.carousel-heading {
  color: #fff;
  font-weight: 600;
  font-size: 25px;
}

.heading-container {
  margin-bottom: 20px;
}

.np-learning-paths {
  background: #041e42;
}
.np-card-header-icon, .np-card-header-type, .np-learning-path-items-count {
  color: #041141;
}
.card-course {
  margin: 10px;
  height: 100%;
}
.button-course {
  background: #041141;
  color: #fff;
  text-decoration: none;
  padding: 12.5px 25px;
  border-radius: 25px;
  font-weight: 600;
  display: flex;
}
.button-container {
  display: flex;
}

.np-card-heading, .np-course-outline-content-section-name {
  color: #1b3e4f;
}
.np-card-text, .np-card-text p, .np-card-text strong, .np-card-text span {
  color: #1b3e4f !important;
}
.carousel-wrapper  {
  position: relative;
}
.slick-slider {
  position: initial !important;
  margin-bottom: 30px;
}
.slick-arrow {
  position: absolute;
  right: 0;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #fff;
  display: flex;
  color: #000;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  top: -50px;
}
.slick-arrow.slick-disabled {
  opacity: 0.5;
  cursor: initial;
}
.arrow-left {
  margin-right: 50px;
}
.np-header-logo-image {
  height: 25px;
}
.course-categories-wrapper {
  display: flex;
  flex-wrap: wrap;
}
.np-content-categories-content-item {
  margin-bottom: 12px;
}
.np-zero-state-text {
  color: #fff;
}
.np-learning-path-outline-name {
  color: #041E42;
}
.np-learning-path-outline-name-locked {
  color: #fff;
}
.search-input {
  background: #041e42;
}
.slick-track {
  display: flex !important;
  margin: 0 !important
}
.slick-slide {
  height: auto !important;
}
.carousel-filter-wrapper {
  position: relative;
  width: 100%;
  color: #000;
  border-radius: 4px;
  display: flex;
  justify-content: start;
  margin-top: 20px;
}
.filter-checkbox {
width: 20px;
height: 20px;
}

.filter-container {
  position: relative;
}

.filter {
  background-color: #d9dfe2;
  padding: 10px 20px;
  cursor: pointer;
  width: 100%;
  text-align: center;
  border-radius: 4px;
  color: #305263;
  font-size: 14px;
  font-weight: 700;;
}

.filter-content {
  position: absolute;
  top: 100%; 
  width: 250px; 
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 4px;
  display: none;
  flex-direction: column;
  gap: 10px;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease, width 0.4s ease; 
  z-index: 111;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  padding: 5px;
  margin-top: 5px;
}

.filter-option {
  padding: 10px;
  display: flex;
  align-items: end;
  gap: 10px;
}

.np-training-session-time {
  color: #1b3e4f;
}
.np-training-session-cta-buttons {
  margin: 20px
}
.np-training-session-sessions-title {
  color: #fff;
}

.filter-active .filter-content {
  display: flex;
  max-height: 500px; 
  width: 250px; 
}
.card-course-container {
  margin-bottom: 20px;
}
.np-card-ribbon {
  padding: 5px;
}
.lps-wrapper {
  margin-top: 40px;
}
.np-footer-support-help, .np-footer-support-item {
  color: #fff;
}
.calendar-icon-event {
  margin-bottom: 10px;
}
@media only screen and (max-width: 1000px) {
  .welcome-section-wrapper {
    flex-direction: column;
  }
  .category-links-wrapper {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  .introduction {
    white-space: inherit !important;
  }
}
@media only screen and (max-width: 768px) {
  .category-links-wrapper {
    grid-template-columns: repeat(1, 1fr) !important;
  }
}
@media only screen and (max-width: 500px) {
  .np-sub-navigation {
    display: none;
  }
  .np-header-logo-image {
    height: 20px;
  }
}