.navbar {
    /*box-shadow: #AAA 0px 2px 4px;*/
}

.navbar-blue {
    background-color: #2d539c;
    box-shadow:0px 2px 5px 2px #bbbbbb;
}

section a {
    color: #0a53be;
}

section a:hover {
    color: #0b5ed7;
    text-decoration: underline;
}

h1 {
    color: #0091B9;
}

h2 {
    color: #004E9B;
}

h3 {
   color: #8697C4;
}

#menu {
    display: inline-block;
    width: 100%;
}

#menu > li {
    border-radius: unset !important;
    width: 100%;
    box-sizing: border-box;
}

#menu > li.first {
}

#menu a {
    text-decoration: none !important;
}

.menu_level_1 {
    list-style-type: none;
}

#menu > li.last  {

}

.text-right {
    text-align: right !important;
}

html, body {
    height: 100%;
    font-family: 'Lato', sans-serif;
    font-size: small;
    background-color: #FFFFFF;
}

.leadBloc {
    background-color: #EDE8F5;
    padding: 20px;
    border-radius: 5px;
    margin-top: 20px;
    margin-bottom: 40px;
}

.gfg {
    height: 50px;
    width: 50px;

}

.mynav {
    color: #fff;
}

.mynav li a {
    color: #fff;
    text-decoration: none;
    width: 100%;
    display: block;
    border-radius: 5px;
    padding: 8px 5px;
}

.mynav li a.active {
    background: rgba(255, 255, 255, 0.2);
}

.mynav li a:hover {
    background: rgba(255, 255, 255, 0.2);
}

.mynav li a i {
    width: 25px;
    text-align: center;
}

.btn-xs {
    --bs-btn-padding-y: .12rem;
    --bs-btn-padding-x: .25rem;
    --bs-btn-font-size: .8rem;
    margin:5px;
}

.submenu {
    border-top: 1px solid #eeeeee;
    border-bottom: 1px solid #eeeeee;
    padding: 5px 0px;
    margin-bottom: 30px;
}

.menu_level_1 li a {
    color: yellow !important;
    background-color: #2b569a !important;
}

/****************
loader
*****************/
#waitSaving {
    background-color: #0f5132;
    color: #FFFFFF !important;
    padding: 10px;
    opacity: 0.8;
}

.loader {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: inline-block;
    position: relative;
    border: 3px solid;
    border-color: #FFF #FFF transparent transparent;
    box-sizing: border-box;
    animation: rotation 1s linear infinite;
}
.loader::after,
.loader::before {
    content: '';
    box-sizing: border-box;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    border: 3px solid;
    border-color: transparent transparent #FF3D00 #FF3D00;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    box-sizing: border-box;
    animation: rotationBack 0.5s linear infinite;
    transform-origin: center center;
}
.loader::before {
    width: 32px;
    height: 32px;
    border-color: #FFF #FFF transparent transparent;
    animation: rotation 1.5s linear infinite;
}

@keyframes rotation {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}
@keyframes rotationBack {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(-360deg);
    }
}

/*********************
userMenu
**********************/
.userMenu {
    background-color: #0091B9;
    border-radius: 0 5px 5px 0 ;
    margin-top: 20px;
    margin-bottom: 20px;
    height: 40px;
    line-height: 40px;
    display: inline-block;
    color: #FFFFFF;
    /*box-shadow: #AAA 0px 2px 4px;*/
    position: absolute;
    z-index: 9;
}
.userMenuItems {
    list-style-type: none;
    padding-left: 10px;
    padding-right: 10px;
}

.userMenuItem {
    display: inline-block;
    margin-left: 10px;
    margin-right: 10px;
}

/******************************/

/****************
content
*****************/
.statutBadge {
    padding: 5px;
}

.text-content {
    margin: 10px 0px 10px 0px;
    text-align: justify;
}

.detailLabel {
    padding: 5px 0px 0px 0px;
    font-weight: bold;
}

.detailContent {
    padding: 0px 0px 5px 0px;
}

.bi {
    width: 1.25em;
    height: 1.25em;
    vertical-align: -0.125em;
    fill: currentcolor;
}

.required:after {
    content:" *";
}

.submenuGroup {
    background-color: #4e6ca3;
}

.subMenuButton {
    float: right;
}

.btn-light {
    background-color: #ADBBDA;
}

#btnGroupDrop1 .fa-ellipsis-vertical {
    color: #fd7e14;
}

::placeholder {
    color: #CCCCCC !important;
    opacity: 1; /* Firefox */
}

.help-text {
    color: #0a53be !important;
    border-bottom: #0a53be solid 2px;
    background-color: #bfd1ec;
    font-style: italic;
    padding: 5px 10px 10px 10px;
    margin-bottom: 35px !important;
}

.nav-link {
    cursor: pointer;
}

/*********************
images
********************* */
.userImage300 {
    width: 300px !important;
}

/**********************
breadcrumbs
**********************/
#wo-breadcrumbs {
    margin-top:10px;
    background-color: #EFEFEF;
    padding: 5px 20px 5px 20px;
}

#wo-breadcrumbs a {
    color: #0b5ed7;
    text-decoration: underline;
}

.breadcrumb-item.active {
    color: #fd7e14;
}

/*************************
Monitor
**************************/
.itemMonitor {
    padding: 10px 10px 50px 10px;
    text-align: center;
    background-color: #EFEFEF;
}

.monitorAccesNombre {
    font-size: 6em;
}

.monitorAccesNombreAttendu {
    font-size: 2em;
}

/**************************
Projet
 **************************/
.commentaire {
    margin-bottom: 10px;
}

.highlightMe {
    border-left: #ffc720 solid 5px;
    padding-left: 10px;
}

.highlightText {
    color: #0091B9;
    font-weight: bold;
}

.commentaireDates {
    background-color: #EEEFFF;
    padding: 5px;
    border-radius: 10px 10px 0 0;
    color: #2b569a;
    font-style: italic;
}

.commentaireDates b {
    color: #db7424;
}

.commentaireContent {
    background-color: #EEEFFF;
    padding: 5px;
}

.commentaireContent a {
    text-decoration: underline;
    color: #2b569a;
}

.intervenantsList {
    list-style: none;
}

.intervenantsList li {
    margin-bottom: 5px;
}

.projetsHome .projet {
    margin-top: 10px;
    margin-bottom: 10px;
}

.projetCartes .projetCarte {
    margin-top: 5px;
    margin-left: 10px;
    margin-bottom: 20px;
}

.projetCartes .projetCarteDescription,
.projetCartes .projetCarteDetails {
    margin-left: 20px;
    padding: 0px 0px 0px 20px;
    border-left: #6c757d 4px solid;
}

.projetCartes .projetCarteDescriptionDetails {
    font-style: italic;
    color: #2b569a;
}

/********************
ANNONCES
*********************/
.annonceBloc .sliderFooter {
    color: #FFFFFF;
    font-size: 1.2em;
    font-weight: bold;
    padding: 10px 10px 0px 10px;
    border-top: #FFFFFF 2px solid;
}

.annonceBloc .carousel-inner {

}

.annonceBloc .carousel-item {
    height: 90vh;
}

.annonceBloc .carousel-caption-annonce {
    position: absolute;
    right: 15%;
    left: 15%;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
}

.annonceBloc .carousel-caption-annonce h1,
.annonceBloc .carousel-caption-annonce h2,
.annonceBloc .carousel-caption-annonce h3 {
    text-align: center;
}

.annonceBloc .annonceHeader {
    color: #FFFFFF;
    font-size: 1.8em;
    font-weight: bold;
    padding-bottom: 20px;
    border-bottom: #FFFFFF 2px solid;
}

.annonceBloc .annonceContent {
    text-align: left !important;
    color: #ffffff !important;
    font-size: 1.4em;
    padding-top: 1.5rem;
}

.annonceBloc .carousel-indicators {
    /*margin-bottom: 5rem !important;*/
}

/**************
 index
 **************/
.banner h1,
.banner h2,
.banner h3 {
    color: #FFFFFF;
}

.hero {
    width: 100%;
    min-height: 80vh;
    position: relative;
    padding: 120px 0 60px 0;
    display: flex;
    align-items: center;
}

.section {
    color: #FFFFFF;
    padding: 60px 0px 40px 0px;
    scroll-margin-top: 88px;
    overflow: clip;
}

.subSection h2 {
    text-align: center;
    font-size: 32px;
    font-weight: 700;
    margin-bottom: 20px;
    padding-bottom: 20px;
    text-transform: uppercase;
    position: relative;
    padding-top: 20px;
}

.subSection h2:before {
    content: "";
    position: absolute;
    display: block;
    width: 160px;
    height: 1px;
    background:
            color-mix(in srgb, #FF6500, transparent 60%);
    left: 0;
    right: 0;
    bottom: 1px;
    margin: auto;
}

.subSection h2::after {
    content: "";
    position: absolute;
    display: block;
    width: 60px;
    height: 3px;
    background: #0091B9;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}

.noDecoration {
    text-decoration: unset !important;
}

/* https://cssgradient.io/shades-of-blue/ */

.blue-0-background {
    background-color: #2b569a !important;
}

.blue-1-background {
    background-color: #00308F !important;
}

.blue-2-background {
    background-color: #0066b2 !important;
}

/**********************
footer
 *********************/
.footer {
    padding : 50px 0px;
    color: #333333;
    font-size: 14px;
    padding-bottom: 50px;
    position: relative;
    border-top: 1px solid color-mix(in srgb, #aaaaaa, transparent 90%);
    background-color: #EEEEEE;
}

.footer .copyright {
    padding-top: 25px;
    padding-bottom: 25px;
    border-top: 1px solid
        color-mix(in srgb, #aaaaaa, transparent 90%);
}

/**********************
notification
************************/
.notification-badge {
    background-color: rgba(255, 255, 255, 0.7);
    float: right;
    color: #222;
    font-size: 14px;
    padding: 0px 8px;
    border-radius: 2px;
}

.notifImage {
    float: left;
    margin: 0px 10px 0px 15px;
}

.clearfix::after {
    content: "";
    clear: both;
    display: table;
}

.dropdown-notif {
    width: 20em;
    background-color: #4b4b4b !important;
    max-height: 400px;
    overflow-y: auto;
}

.notif-item:first-child {
    padding: 5px 10px 5px 15px;
}


.notif-item {
    padding: 15px 10px 5px 5px;
    border-bottom: 1px solid #2b2f32;
}

.notif-item:last-child {
    border-bottom: none;
}

.notifContent1 {
    padding-left: 5px;
    margin: 0px 0px 0px 5px;
    border-left: #4b4b4b solid 5px;
}

.notifContent1:hover {
    border-left: #0f74a8 solid 5px;
}

.notifContent2 {
    font-size: 0.8em;
    text-align: right;
}

/*********************
overlay spinner
**********************/
#overlaySpinner{
    position: fixed;
    top: 0;
    z-index: 100;
    width: 100%;
    height:100%;
    display: none;
    background: rgba(0,0,0,0.6);
}
.cv-spinner {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.spinner {
    width: 40px;
    height: 40px;
    border: 4px #ddd solid;
    border-top: 4px #2e93e6 solid;
    border-radius: 50%;
    animation: sp-anime 0.8s infinite linear;
}
@keyframes sp-anime {
    100% {
        transform: rotate(360deg);
    }
}
.is-hide{
    display:none;
}

/**********************
calendar
***********************/
.calendar div.modal-body b.event-date {
    font-size: 1rem !important;
    color: #666666 !important;
}

.calendar em.even-content b.event-date {
    font-size: .6rem !important;
    color: #FFFFFF !important;
}

.calendar-month-events-day > span {
    margin:10px 5px;
    padding: 5px;
    border-radius: 5px;
}

.eventWinfo {
    font-size: .75rem !important;
}

.calendar-month-day {
    cursor: pointer;
}

.calendar-month-day:hover {
    background-color: #444444;
    border-radius: 5px;
}

.calendar-week-day {
    cursor: pointer;
}

.calendar-week-day:hover {
    color: #0b5ed7;
}

.eventHome {
    padding-left: 10px;
    margin-bottom: 5px;
    border-left: solid 3px;
}

/***************************
Restitution survey
***************************/
.surveyFormHeader {
    /*
    background-color: #eeeeee;
    */
    padding: 20px;
    border-radius: 5px;
    margin-top: 20px;
}

.surveyFormHeader:not(:first-child){
    margin-top:60px;
}

.surveyFormResponse {
    padding-left: 20px;
}

.surveyFormResponse-question {
    /*
    background-color: #eeeeee;
    border-left: #0a53be solid 5px;
    font-weight: bold;
    font-style: italic;
    */
    padding: 10px;
    border-radius: 5px;
    margin-top: 20px;
    color: #0a53be;
}

.surveyFormResponse-reponse {
margin-left: 30px;
padding-left: 20px;
border-left: #e3a40b solid 5px;
}

.surveyFormResponse-redacteur {
font-weight: bold;
background-color: #fffacd;
padding: 5px;
border-radius: 5px;
}

.redacteurName {
color: #0a53be;
}

.surveyFormResponse-redacteurSResponse {
margin-bottom: 20px;
}