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

html,
body {
    font-family: 'Open Sans', 'Roboto', sans-serif;
    color: #35404E;
}

body.new-styles,
body.new-styles .np-dashboard,
body.new-styles .np-learning-paths {
    background-color:#fff;
}

body.new-styles .np-button {
    border-radius: 0;
    font-size:16px;
    transition: all 0.2s;
    border: 1px solid #de352a;
}

body.new-styles .np-button:hover {
    background-color: white;
    color: #de352a;
}

body.new-styles .np-card-container {
    box-shadow: 0 10px 25px 0 rgb(14 27 46 / 18%);
    border-radius:0;
}

div[id^='CookieNotice-'] {
    z-index: 1000;
    position: fixed;
    background: #fff;
    bottom: 0;
    width: 100%;
    left: 0;
}

.section-horizontal-rule {
    height:1px;
    width:100%;
    max-width:350px;
    background: #000;
    margin: 64px auto;
}

.small-heading {
    font-size: 20px;
    margin-bottom: 24px;
    font-weight:500;
}

body.new-styles .np-homepage,
body.new-styles .np-dashboard,
body.new-styles .np-subpage-container {
    margin-top:130px;
}

body.new-styles .np-page-container {
    margin-top:150px;
}

@media (min-width:768px) {
	.small-heading {
        font-size: 24px;
        margin-bottom: 32px;
	}
}


.np-main.np-homepage {
    padding: 0 5%;
}


.red-bar{
    background: red;
}

.red-text,
.red-status{
    color: red;
}

.yellow-bar{
    background: yellow;
}

.yellow-text,
.yellow-status{
    color: yellow;
}

.green-bar{
    background: green;
}

.green-text,
.green-status{
    color: green;
}

.course-progress-wrapper {
    background: #F8FBFF;
    padding:16px;
    height:100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color:#de352a;
}

/* VERTICAL COURSE CARDS  */
.np-card-new-styles {
    text-decoration:none;
}

.np-card-new-styles .np-card-content-title {
    margin-top:0;
}

.np-card-new-styles .np-card-ribbon {
    padding: 5px;
    border-radius: 50%;
    width: 70px;
    height: 70px;
    top: -16px;
    right: -16px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 11px;
    text-transform: none;
    z-index:2;
    text-align:center;
}

.np-card-new-styles .np-card-content-short-description {
    color: #1b3e4f;
}

.np-card-new-styles .np-card-content-progress {
    font-weight: 500;
    color: #35404E;
    text-transform: none;
    font-size: 14px;
}

.np-card-new-styles .course-length {
    color:#35404E;
    margin-left:auto;
}

@media (min-width:768px) {
    .np-card-new-styles .np-card-ribbon {
        width: 75px;
        height: 75px;
        top: -25px;
        right: -25px;
        font-size: 12px;
    }
}

/* HORIZONTAL COURSE CARDS  */

.np-card-horizontal .np-card-content-short-description {
    font-size:14px;
    line-height:18px;
}

.np-card-horizontal .np-card-content-footer {
    margin-top:16px;
}

.np-card-horizontal .np-course-version-outdated-popup {
    margin-left:12px;
    margin-right:auto;
}

@media (min-width:768px) {
    .np-card.np-card-horizontal {
        padding: 0;
    }

    .np-card-horizontal .np-card-container {
        flex-direction:row;
    }

    .np-card-horizontal .np-card-image-wrapper {
        width: 35%;
        position: relative;
        overflow: hidden;
        background: #F8FBFF;
    }

    .np-card-horizontal .np-card-image{
        border-radius: 0;
        height: auto;
        width: 100%;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .np-card-horizontal .np-card-content {
        padding: 16px;
    }

    .np-card-horizontal .np-card-content-footer {
        margin-top:24px;
    }

    .np-card-horizontal .np-card-content-title {
        margin-top:0;
    }

    .np-card-horizontal .np-card-content-short-description {
        font-size:16px;
        line-height:20px;
    }
}

/* END HORIZONTAL COURSE CARDS  */

/* VIDEO COURSE CARDS  */
.np-card.video-card .img-wrapper {
    position:relative;
}

.np-card.video-card .img-wrapper i.fa-play {
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%, -50%);
    font-size:70px;
    color:#666;
}

/* END VIDEO COURSE CARDS  */

/* HORIZONTAL TRAINING EVENT CARDS  */

.card-training-event-horizontal.np-card {
    padding-bottom:32px;
    min-height: auto;
}

.card-training-event-horizontal .upcoming-date {
    position:relative;
    min-height: 132px;
    padding: 16px;
    text-align: center;
}

.card-training-event-horizontal .upcoming-date:before {
    content: '\f133';
    font-family: 'Font Awesome 5 Pro';
    color: #de352a;
    width:100%;
    height:100px;
    position:absolute;
    font-size: 100px;
    left: 0;
    top: 12px;
}

.card-training-event-horizontal .np-card-training-session-date-month {
    font-size: 14px;
    margin-top: 38px;
}

.card-training-event-horizontal .np-card-training-session-date-day {
    font-size: 32px;
    margin: 0;
}

.card-training-event-horizontal .np-card-content-title {
    font-size: 18px;
}

.card-training-event-horizontal .card-footer {
    margin-top:16px;
    display: flex;
    align-items: baseline;
    justify-content: space-between;
}

@media (min-width:768px) {
    .card-training-event-horizontal .np-card-container {
        flex-direction:row;
    }

    .card-training-event-horizontal .upcoming-date {
        min-width:150px;
    }

    .card-training-event-horizontal .np-card-content-title {
        margin-top:0;
        font-size:22px;
    }
}

/* END HORIZONTAL TRAINING EVENT CARDS  */

/* 2024 Added styles */
.np-catalog-search {
    width: 320px;
    height: 50px;
    padding-left: 34px;
    margin-top: 20px;
    border-radius: 8px;
    border: 1px solid #bac4ca;
}
/* search icon made to important-overwrite NP default icon styles */
.np-header-search-icon {
    color: #bac4ca !important;
    font-size: 16px;
    position: relative !important;
    right: 310px !important;
    top: 0px !important;
}

@media screen and (min-width: 768px)
.np-header-search-icon {
    color: #bac4ca !important;
    font-size: 16px;
    position: relative !important;
    right: 310px !important;
    top: 0px !important;
}