 /*
 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 }}
*/

/* GLOBAL STYLES */
html { scroll-behavior: smooth; }
.np-powered-by { background:#fff;}
.np-flex-1 { flex:1 }

.d-flex { display:flex; }

@media (min-width:768px) {
  .d-md-flex { display:flex; }
}

/* HOMEPAGE STYLES  */

/* .np-homepage {
  background:#fff;
} */

.np-homepage-title-content {
  margin: 0 auto 32px;
  text-align: center;
}

.np-homepage-title-content {
  margin: 0 auto 32px;
  text-align: center;
}

.np-homepage-headline {
  font-size: 3rem;
}

.np-homepage-subheadline {
  font-size: 1.5rem;
  line-height: 2rem;
}

@media (min-width:768px) {
  .np-homepage-title-content { padding: 0 4%; }

  .np-homepage-hero-image {
    max-height: 600px
  }
}

@media (max-width:1500px) {
  .np-max-width { margin:auto 18px;}
}

.library-title {
  padding-top: 48px;
  margin: 0;
  font-size: 32px;
  font-weight: 500;
}

.np-sub-navigation { margin-bottom: 0; }
.np-course-library { padding-bottom:32px; }

/* NAVIGATION LINKS AND DROPDOWNS*/
.np-header-desktop-nav-item { 
  position: relative; 
  cursor:pointer; 
  color:#fff;
}

.np-dropdown-tooltip {
  background: #fff;
  position: absolute;
  left: 31px;
  top: 3rem;
  z-index: 50;
  min-width: 200px;
  cursor:pointer;
  box-shadow: 0 0 8px rgb(89 105 123 / 20%);
  max-width: 250px;
  white-space: normal;
} 

.np-dropdown-tooltip-link {
  color:#212b35;
  text-decoration:none;
  display:block;
  padding: 16px 20px;
  font-size: 0.95rem;
}

.np-dropdown-tooltip-link:hover {
  color:#329678;
}

.np-dropdown-tooltip-link:nth-of-type(odd) {
    background-color: rgb(249, 250, 252);
}

.np-dropdown-tooltip {
  box-shadow: 0 0 8px rgb(89 105 123 / 20%);
  max-width: 250px;
  white-space: normal;
}


/* SLICK CAROUSEL */
.category-section {
  transition:opacity 0.5s;
  opacity:0;
  margin-bottom:32px;
}

.carousel-header-wrapper {
  display:flex;
  padding-bottom:24px;
  border-bottom:1px solid #212b35;
  margin-bottom:32px;
  align-items: end;
  justify-content: space-between;
}

.carousel-header {
  font-size:24px;
  font-weight:500;
  margin-bottom:0;
}

.show-more {
  text-decoration: none;
  font-size:18px;
  color:#329678;
}

.slick-track { 
  margin-left:0!important; 
  display: flex !important; 
}

.slick-slide { 
  height: auto!important; 
  padding-bottom: 5px; 
}

.slick-dots {
  display:flex;
  justify-content:center;
}

.slick-dots li {
  cursor:pointer;
  padding:0 12px;
}

.slick-dots li::marker {
  cursor:pointer;
  padding:0 12px;
  font-size:18px;
  color:#bfbfbf;
  transition: 0.5s;
}

.slick-dots li.slick-active::marker { color:#212b35; }
.slick-dots li button { display:none; }

.slick-arrow {
  position: absolute;
  top:calc(50% - 47px);
  box-shadow: 0 2px 4px 0 rgb(89 105 123 / 50%);
  border-radius:50%;
  background:#fff;
  width: 45px;
  height: 45px;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index:2;
  cursor:pointer;
  transition:opacity 0.2s;
}

.slick-arrow.slick-disabled { opacity:0;}
.slick-arrow.fa-chevron-left { left:-12px; }
.slick-arrow.fa-chevron-right { right:-12px; }

/* END SLICK CAROUSEL */

/* COURSE CARDS  */
.category-carousel .np-card { 
  margin-bottom: 0px; 
  height:100%; 
  padding: 0 .75rem; 
}

.np-card-content-desc { margin-top:1.3rem;}

.info-line {
  display:flex;
  justify-content: space-between;
  margin-top:22px;
  padding-bottom:8px;
  border-bottom:1px solid #212b35;
}

.category-carousel:not(.slick-initialized) {
  display: flex;
  flex-wrap: wrap;
}

.category-carousel:not(.slick-initialized) > div {
  width: 33%;
  margin-bottom: 32px;
}

/* Footer (Sticky)  */
main { min-height: calc(100vh - 408px); }