body {
    background-color: #ffffff;
    font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 16px;
    color: #3c3c3b;
}

main .content .pd-horizontal {
    max-width: 1200px !important;
}

strong {
    font-weight: 700;
}

h1,
h2 {
    font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

h3,
h4,
h5,
h6 {
    font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

a,
a:visited {
    color: #45659f;
}

a:hover,
a:focus,
a:active {
    color: #3a5586;
    text-decoration: none;
}

.nav-pills .nav-item.show .nav-link,
.nav-pills .nav-link.active {
    background-color: #45659f;
}

h1 {
    font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 2.4rem;
    font-weight: 100;
}

h2 {
    font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 1.2rem;
    font-weight: 500;
    text-transform: uppercase;
    color: #9c9b9d;
    padding: 1.5rem 0 0.5rem;
}

h3 {
    font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 1.1rem;
    font-weight: 600;
    text-transform: uppercase;
    color: #3c3c3b;
    padding: 1rem 0 0.3rem;
}

h3:first-child {
    padding-top: 0;
}

h4 {
    font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 1.05rem;
    font-weight: 500;
    padding: 0.9rem 0 0.3rem;
}

h5,
figcaption {
    font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 1rem;
    font-weight: 400;
    color: #9c9b9d;
    border-top: 2px solid #a0bf34;
    padding: 0.7rem 0.5rem;
    margin-bottom: 0;
}

h5 .caption,
figcaption .caption {
    color: #a5a39d;
    font-weight: 300;
}

h6 {
    font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 0.8rem;
    letter-spacing: 0.1rem;
    font-weight: 500;
    text-transform: uppercase;
}

.reference {
    font-weight: 600;
}

.reference i span {
    font-family: "Barlow", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

a[name] sup,
sup a[name] {
    /* background-color: #a0bf34; */
    background-color: #45659f;
    padding: 3px 3px 3px 3px;
    font-size: 8px;
    color: white !important;
    font-weight: 600;
}

p,
ol,
ul {
    color: #3c3c3b;
    font-size: 0.9rem;
    margin-bottom: 0.3rem;
    font-weight: 300;
}

ol {
    padding-left: 25px;
    margin: 0;
    counter-reset: item;
    list-style-type: none;
}

ol li {
    padding-left: 25px;
    margin-left: 0;
    position: relative;
}

ol > li::before {
    position: absolute;
    left: -25px;
    top: 0;
    content: counter(item) ") ";
    counter-increment: item;
}

ol ol > li::before {
    content: "";
    counter-increment: none;
    position: static;
}

.media-only {
    display: inline;
}

.print-only {
    display: none;
}

.card-inverse p {
    color: #fff;
    font-size: 0.9rem;
}

.card h1 {
    border: none;
    margin: 0;
    padding-bottom: 0.5rem;
}

.no-padding {
    padding: 0;
}

.clear {
    clear: both;
}

article {
    width: 100%;
}

.justify-center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.text-muted {
    color: #a5a39d !important;
}

.divider {
    display: block;
    width: 100%;
    height: 1px;
    background-color: #dfdfdf;
    margin: 2rem auto;
}

.circle {
    border-radius: 499rem;
}

.jumbotron {
    padding: 3rem 2rem;
    background-color: #f7f7f7;
}

.anchor {
    display: block;
    height: 50px;
    /*same height as header*/
    margin-top: -50px;
    /*same height as header*/
    visibility: hidden;
}

.btn-primary,
.btn-primary.disabled,
.btn-primary:disabled,
.btn-outline-primary:hover,
.btn-outline-primary:active,
.btn-outline-primary.active,
.show > .btn-outline-primary.dropdown-toggle,
.card-primary,
.page-item.active .page-link,
.list-group-item.active {
    background-color: #45659f !important;
    border-color: #45659f !important;
}

.btn-primary:hover,
.btn-primary:active,
.btn-primary.active,
.show > .btn-primary.dropdown-toggle {
    background-color: #3a5586 !important;
    border-color: #3a5586 !important;
}

.btn-outline-primary {
    color: #45659f !important;
    border-color: #45659f !important;
}

.btn-outline-primary.disabled,
.btn-outline-primary:disabled,
.btn-link,
.page-link,
.text-primary {
    color: #45659f !important;
}

.btn-link:focus,
.btn-link:hover,
.page-link:focus,
.page-link:hover,
a.text-primary:focus,
a.text-primary:hover {
    color: #3a5586 !important;
}

.dropdown-item.active,
.dropdown-item:active,
.custom-control-input:checked ~ .custom-control-indicator,
.custom-checkbox
    .custom-control-input:indeterminate
    ~ .custom-control-indicator,
.nav-pills .nav-item.show .nav-link,
.badge-primary,
.progress-bar,
.bg-primary {
    background-color: #45659f !important;
    background-image: none;
}

.nav-pills .nav-link.active,
.badge-primary[href]:focus,
.badge-primary[href]:hover,
a.bg-primary:focus,
a.bg-primary:hover {
    background-color: #3a5586 !important;
}

.form-control:focus {
    border-color: #45659f !important;
}

.navbar {
    border-bottom: 2px solid #9c9b9d;
}

.navbar-nav .nav-item a.nav-link {
    font-weight: 300;
    color: #45659f;
    cursor: pointer;
}

.navbar-nav li:last-child a.nav-link::after {
    margin: 0;
    content: "";
}

.navbar-nav .nav-item a.nav-link::after {
    margin-left: 10px;
    content: " | ";
}

.btn-primary,
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
    color: #fff !important;
    background-color: #45659f;
    border-color: #45659f;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
    background-color: #3a5586;
    border-color: #3a5586;
}

.btn-outline-primary,
.btn-outline-primary:visited {
    color: #45659f;
    border-color: #45659f;
    background: none;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active {
    background-color: #45659f;
    border-color: #45659f;
    color: #fff;
}

.btn-secondary {
    border-color: #9c9b9d;
    background-color: #9c9b9d;
    color: #fff;
}

.btn-secondary:hover,
.btn-secondary:focus,
.btn-secondary:active {
    border-color: #3c3c3b;
    background-color: #3c3c3b;
    color: #fff;
}

.btn-outline-secondary,
.btn-outline-secondary:visited {
    color: #9c9b9d;
    border-color: #9c9b9d;
    background: none;
}

.btn-outline-secondary:hover,
.btn-outline-secondary:focus,
.btn-outline-secondary:active {
    border-color: #9c9b9d;
    background: #9c9b9d;
    color: #fff;
}

.btn {
    border-radius: 499rem;
    text-transform: uppercase;
    letter-spacing: 0.1rem;
    font-size: 0.8rem;
    padding: 0.75rem 1.25rem;
    cursor: pointer;
}

.btn:focus {
    outline: none;
    border: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.btn-xs {
    font-size: 0.6rem;
    padding: 0.5rem 1rem;
}

.btn-sm {
    font-size: 0.7rem;
    padding: 0.5rem 1rem;
}

.btn-md {
    font-size: 0.8rem;
    padding: 0.75rem 1.25rem;
}

.btn-lg {
    font-size: 0.9rem;
    padding: 1rem 1.5rem;
}

.btn-subtle {
    border: none;
    background: #f7f7f7;
    color: #45659f;
    -webkit-appearance: none;
    cursor: pointer;
}

.btn-subtle:hover,
.btn-subtle:focus,
.btn-subtle:active {
    color: #fff;
    background-color: #45659f;
    outline: none;
}

.btn-stripped {
    border: none;
    background: none !important;
    color: #3c3c3b !important;
    -webkit-appearance: none;
    cursor: pointer;
}

.btn-stripped:hover,
.btn-stripped:focus,
.btn-stripped:active {
    color: #45659f;
    background-color: none;
    outline: none;
}

.dropdown a {
    color: #3c3c3b;
}

.dropdown a:hover,
.dropdown a:active,
.dropdown a:focus {
    background-color: #45659f;
    color: #fff;
}

.sidebar {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    padding: 20px;
    padding-left: 0;
    padding-right: 0;
    z-index: 1000;
    overflow-x: hidden;
    overflow-y: auto;
    /* Scrollable contents if viewport is shorter than content. */
    border-right: 2px solid #9c9b9d;
    background: white;
    /*.paperclip {
		width: 75px;
		height: 150px;
		background: url('../images/paperclip.png');
		background-size: contain;
		background-repeat: no-repeat;
		position: absolute;
		left: 10px;
		top: -10px;
		z-index: 1040 !important;
	}*/
    /*
	a {
		color: $primary-color;
		text-transform: uppercase;
		font-size: .7rem;
		letter-spacing: .2rem;
		padding: .75rem 1rem;
	}*/
}

.sidebar .nav-item > a.nav-link:hover {
    text-decoration: underline !important;
}

.sidebar ul li {
    color: #7f7f7f;
    margin-bottom: 5px;
    line-height: 1.1rem;
}

.sidebar ul li ul {
    padding-left: 1rem;
    list-style: none;
}

.sidebar ul li ul li ul {
    margin: 5px 0 10px;
}

.sidebar ul li ul li ul li {
    padding-left: 0.3rem;
    list-style: square;
    color: #a0bf34;
}

.sidebar ul li ul a {
    display: block;
    color: #a0bf34;
    font-size: 0.7rem;
    line-height: 0.9rem;
}

.sidebar ul li ul li.active,
.sidebar ul li ul li.active a {
    color: #45659f;
}

.sidebar ul li ul a:hover {
    color: #45659f;
}

.sidebar em {
    font-size: 1rem;
}

.sidebar h1 {
    color: #fff;
    border: none;
    font-size: 0.9rem;
    padding: 0rem 1rem;
    text-transform: uppercase;
    letter-spacing: 0.2rem;
}

.sidebar .site-title {
    margin-top: 0.5rem;
    margin-bottom: 1.75rem;
}

.sidebar .site-title a {
    font-size: 0.9rem;
    padding-left: 0;
    padding-right: 0;
    cursor: pointer;
}

.sidebar .site-title a:hover {
    background: none !important;
}

.sidebar .nav {
    margin-bottom: 20px;
}

.sidebar .nav-item {
    width: 100%;
}

.sidebar .nav-item + .nav-item {
    margin-left: 0;
}

.sidebar .nav-link {
    border-radius: 0;
}

.sidebar .logout-button {
    position: absolute;
    bottom: 20px;
    left: 20px;
    width: 85%;
    text-align: center;
    border-radius: 0.3rem;
}

#wrapper.toggled .sidebar-nav {
    display: none;
}

#menu-toggle {
    position: absolute;
    top: 1rem;
    right: 1rem;
}

/*
.sidebar a:focus, .sidebar a:visited, .sidebar a:hover, .sidebar a:active {
	background-color: $primary-color-hover!important;
	color: white;
}*/

@media screen and (max-width: 576px) {
    #wrapper .sidebar-nav {
        display: none;
    }

    #wrapper.toggled .sidebar-nav {
        display: block !important;
    }

    .sidebar {
        position: inherit;
        padding-bottom: 0px;
        margin-bottom: 1rem;
    }

    #menu-toggle {
        background-color: #3a5586;
        color: white;
    }

    img.site-title {
        width: 50% !important;
    }

    img.partner-logo {
        width: 30% !important;
    }

    .info-header h1 {
        font-size: 2rem !important;
    }
}

@media screen and (min-width: 576px) {
    #wrapper.toggled .sidebar-nav {
        display: block;
    }

    #menu-toggle {
        display: none;
    }
}

.card-title {
    margin-top: -0.25rem;
    padding-bottom: 0.25rem;
    margin-bottom: 1rem;
}

.card-subtitle {
    margin-top: -0.75rem;
    padding-bottom: 0.5rem;
}

.card-title-btn-container {
    position: absolute;
    top: 1.25rem;
    right: 1.25rem;
    list-style: none;
}

.alert {
    color: #fff;
}

.alert a {
    color: #fff !important;
}

.no-left-margin {
    margin-left: 0;
}

.keywords {
    margin: 0;
    padding: 0;
    list-style-type: none;
    color: #9c9b9d;
    font-size: 0.9rem;
    line-height: 1.5;
}

.keywords li {
    margin: 0;
    padding: 0;
    font-weight: 300;
}

.pd-horizontal {
    padding-top: 1rem;
    padding-left: 0.4rem;
    padding-right: 0.4rem;
}

.pdf-header,
.pdf-footer {
    display: none;
}

.page-header {
    font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
    margin-top: 0rem;
    margin-bottom: 2.4rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #eee;
    height: auto;
}

.page-header h1 {
    display: inline;
    border: none;
    padding: 0;
    margin-top: 0;
    margin-bottom: 0;
    width: 100%;
}

.info-header {
    background: #45659f;
}

.info-header h1 {
    /* color: #a0bf34; */
    color: #FFF;
    padding: 1rem 0.4rem;
    font-size: 3rem;
    border: none;
}

.credits {
    background: #a0bf34 !important;
}

@media print {
    .credits {
        background: #a0bf34 !important;
    }
}

.credits .credits__author {
    border-bottom: 2px solid #fff;
}

.credits .credits__author h2 {
    color: white;
    padding: 1.5rem 0.4rem 1rem;
    border: none;
    font-weight: 300;
    font-size: 1.4rem;
    line-height: 2.4rem;
}

.credits .credits__author .reference {
    font-size: 10px;
    margin-top: -2rem;
    margin-left: -5px;
}

.credits .credits__author .ref-print {
    display: none;
}

.credits .credits__references ul {
    padding: 2rem 0.4rem 1rem;
}

.credits .credits__references ul li {
    list-style-type: none;
    color: #fff;
    position: relative;
    margin-bottom: 15px;
    padding-left: 35px;
}

.credits .credits__references ul li .reference {
    position: absolute;
    left: 0;
    top: 3px;
    font-size: 10px;
}

.credits .credits__references ul li p {
    color: #fff;
    font-weight: 100;
    font-size: 1.15rem;
    margin: 0;
    padding: 0;
}

.credits .credits__references li:last-child {
    margin-bottom: 0;
}

.credits .credits__references .ref-print {
    display: none;
}

.content__title {
    border-bottom: 2px solid #9c9b9d;
    padding-top: 0.5rem;
}

.content__title h2 {
    padding-left: 0.4rem;
    padding-right: 0.4rem;
}

.content__text--lighter p {
    color: #9c9b9d;
}

.content__table,
.content__image {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}

.content__table .shadow,
.content__image .shadow {
    -webkit-box-shadow: 0px 0px 25px 0px rgba(150, 150, 150, 0.6);
    box-shadow: 0px 0px 25px 0px rgba(150, 150, 150, 0.6);
}

.content__table figure > img,
.content__image figure > img {
    display: block;
    float: none;
    padding: 20px;
    width: 100%;
}

.content__image figcaption,
.body-pdf .content__table figcaption {
    margin-top: 0.7rem;
}

.content__image figcaption {
    border-bottom: 2px solid #a0bf34;
}

.content__formula {
    background-color: #e7ebcf;
    padding: 1rem;
    margin: 1rem 0;
}

.content__formula .reference {
    color: #a0bf34;
    font-size: 1rem;
}

.content__formula .reference .number {
    color: white;
}

.content__formula .ref-print {
    display: none;
}

.content__references {
    background-color: #eff1ea;
    border-bottom: 2px solid #9c9b9d;
    padding-bottom: 1rem;
    margin-bottom: 13rem;
}

.content__references ol li {
    color: #9c9b9d;
    margin-bottom: 0.7rem;
}

.content__references ol li br {
    display: none;
}

.content__references ol li:before {
    content: "[ " counter(item) " ] ";
    counter-increment: item;
    color: #a0bf34;
    font-weight: 600;
}

.content__references .paperclip {
    width: 100px;
    height: 200px;
    background: url(/images/paperclip.png?2ee8cddf9b87ea5c3d8353d9bb18d6bf);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    right: 50px;
    bottom: -169px;
}

.profile-photo {
    border-radius: 499rem;
    float: left;
}

.username {
    float: left;
    text-align: left;
    margin: 0 0 0 1rem;
}

.username h1,
.username h2,
.username h3,
.username h4 {
    margin-bottom: 0;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

.user-dropdown .dropdown-toggle::after {
    margin-top: 1rem;
    margin-left: 1rem;
}

.user-progress {
    margin-top: 1rem;
}

.user-progress .profile-photo {
    max-height: 75px;
    max-width: 75px !important;
}

.progress-custom {
    margin-top: 0.25rem;
}

.progress-label {
    text-align: center !important;
    color: #45659f;
    font-size: 0.75rem;
    margin-top: -0.25rem;
}

.progress-bar {
    height: 0.3rem;
}

#calendar,
.datepicker-inline {
    width: 100%;
    text-align: center;
}

#calendar table {
    width: 100%;
}

.datepicker-switch {
    font-size: 16px;
    height: 46px !important;
}

.datepicker table tr td.old,
.datepicker table tr td.new {
    color: #dfdfdf;
}

.datepicker table tr td {
    padding: 2px 2px !important;
    cursor: pointer;
    border-radius: 0.3rem;
}

#calendar th {
    text-align: center !important;
    cursor: pointer;
    border-radius: 0.3rem;
}

.datepicker table tr td.active,
.datepicker table tr td.active:hover,
.datepicker table tr td.active.disabled,
.datepicker table tr td.active.disabled:hover,
.datepicker table tr td.active:hover,
.datepicker table tr td.active:hover:hover,
.datepicker table tr td.active.disabled:hover,
.datepicker table tr td.active.disabled:hover:hover,
.datepicker table tr td.active:focus,
.datepicker table tr td.active:hover:focus,
.datepicker table tr td.active.disabled:focus,
.datepicker table tr td.active.disabled:hover:focus,
.datepicker table tr td.active:active,
.datepicker table tr td.active:hover:active,
.datepicker table tr td.active.disabled:active,
.datepicker table tr td.active.disabled:hover:active,
.datepicker table tr td.active.active,
.datepicker table tr td.active:hover.active,
.datepicker table tr td.active.disabled.active,
.datepicker table tr td.active.disabled:hover.active,
.open .dropdown-toggle.datepicker table tr td.active,
.open .dropdown-toggle.datepicker table tr td.active:hover,
.open .dropdown-toggle.datepicker table tr td.active.disabled,
.open .dropdown-toggle.datepicker table tr td.active.disabled:hover {
    color: #ffffff;
    background-color: #45659f;
    text-shadow: none;
    border-color: #285e8e;
}

.datepicker table tr td span:hover,
.datepicker thead tr:first-child th:hover,
.datepicker tfoot tr th:hover,
.datepicker table tr td.day:hover,
.datepicker table tr td.day.focused {
    background: rgba(0, 0, 0, 0.05);
}

.panel-heading .glyphicon {
    margin-right: 10px;
}

.timeline {
    list-style: none;
    padding: 20px 0 20px;
    position: relative;
}

.timeline:before {
    top: 0;
    bottom: 0;
    position: absolute;
    content: " ";
    width: 2px;
    background-color: #eeeeee;
    left: 25px;
    margin-right: -1.5px;
}

.timeline > li {
    margin-bottom: 20px;
    position: relative;
}

.timeline > li:before,
.timeline > li:after {
    content: " ";
    display: table;
}

.timeline > li:after {
    clear: both;
}

.timeline > li > .timeline-panel {
    width: calc(100% - 65px);
    float: right;
    border: 1px solid #dfdfdf;
    border-radius: 2px;
    padding: 10px 20px;
    position: relative;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.timeline > li > .timeline-panel:before {
    position: absolute;
    top: 26px;
    left: -11px;
    display: inline-block;
    border-top: 11px solid transparent;
    border-right: 11px solid #dfdfdf;
    border-left: 0 solid #dfdfdf;
    border-bottom: 11px solid transparent;
    content: " ";
}

.timeline > li > .timeline-panel:after {
    position: absolute;
    top: 27px;
    left: -10px;
    display: inline-block;
    border-top: 10px solid transparent;
    border-right: 10px solid #fff;
    border-left: 0 solid #fff;
    border-bottom: 10px solid transparent;
    content: " ";
}

.timeline > li > .timeline-badge {
    color: #3c3c3b;
    width: 46px;
    height: 46px;
    line-height: 2.8rem;
    font-size: 1.4rem;
    text-align: center;
    position: absolute;
    top: 16px;
    left: 0px;
    margin-right: -25px;
    margin-left: 3px;
    border: 1px solid #dfdfdf;
    background-color: #fff;
    z-index: 100;
    border-radius: 9999px;
}

.timeline-badge.primary {
    background-color: #45659f !important;
    color: #fff !important;
    border: none !important;
}

.timeline-badge.success {
    background-color: #8ad919 !important;
}

.timeline-badge.warning {
    background-color: #ffb53e !important;
}

.timeline-badge.danger {
    background-color: #f9243f !important;
}

.timeline-badge.info {
    background-color: #30a5ff !important;
}

.article {
    padding: 1rem 0;
    border-bottom: 1px solid #dfdfdf;
    margin-bottom: 1rem;
}

.article:first-child {
    padding: 0 0 10px 0;
}

.article:last-child {
    padding: 0 0 10px 0;
    border: none;
    margin-bottom: 0;
}

.article h4 a {
    margin-bottom: 10px;
}

.article .date {
    text-align: center;
    font-size: 1.8rem;
    margin: 0 auto;
    display: block;
}

.article .date .text-muted {
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.1rem;
}

.todo-list-item {
    list-style: none;
    padding: 0.75rem 1rem 0.15rem 1rem;
    border-radius: 0.3rem;
}

.todo-list-item .fa {
    margin: 0 0.25rem 0 0;
    color: #3c3c3b;
}

.todo-list-item .fa:hover {
    color: #45659f;
}

.todo-list-item input[type="checkbox"] {
    margin: 0 0.5rem 0 0 !important;
    border: 1px solid #333;
}

.todo-list {
    padding: 0;
    margin: -15px;
    background: #fff;
    color: #3c3c3b;
}

input[type="checkbox"]:checked + label {
    text-decoration: line-through;
    color: #a5a39d;
}

.todo-list-item:hover,
a.todo-list-item:focus {
    text-decoration: none;
    background-color: #f7f7f7;
}

.todo-list-item .trash .fa:hover {
    color: #ef4040;
}

.todo-list-footer {
    margin: -20px;
    margin-top: 2rem;
}

.todo-list-footer .btn {
    border-radius: 0.4rem;
}


.print-only{
    display: none;
}

img[src^="https://latex.codecogs"] {
    height: 13px;
}



.text-nowrap {
    white-space: nowrap !important;
    /* display: inline-block;    */
}

.break-before:before {content: '\A'; white-space:pre; }
.break-after:after { content: '\A'; white-space:pre; }