/******************************************************/
/*********************** COMMON ***********************/
body {
    font-family: "Roboto", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-variation-settings: "wdth" 100;
}

.bg-primary-custom { background-color: #1e429b; }
.cms-primary-color { color: #1e429b; }
.cms-secondary-color { color: #b71e29; }
.cms-tertiaire-color { color: #208fa9; }
.container-cms { font-weight: 300; }
.form-group.required-fields { margin-top: -1rem; font-size: 0.9rem; font-style: italic; }
.scroll-top { width: 40px; height: 40px; position: fixed; bottom: 25px; right: 20px; display: none; }
.scroll-top i { display: inline-block; color: #fff; }
a { color: #1e429b; }
hr { border: 0; height: 1px; background-image: linear-gradient(to right, rgba(12, 26, 61, 0.5), rgba(12, 26, 61, 1), rgba(12, 26, 61, 0.5)); }
/***** H1 / H2 / H3 *****/
h1 { font-size: 1.5rem; font-weight: 400; font-style: italic; }
/*h1::before { content: '# '; }*/
h2 { font-size: 1.3rem; font-weight: 400; font-style: italic; margin-bottom: 0.8rem; color: #1e429b; }
h3 { font-size: 1.1rem; font-weight: 400; font-style: italic; margin-bottom: 0.8rem; color: #1e429b; }
@media (min-width: 576px) {
    h1 { font-size: 2rem; }
    h2 { font-size: 1.5rem; font-weight: 300; }
    h3 { font-size: 1.2rem; font-weight: 300; }
}
@media (min-width: 992px) {
    h1 { font-size: 2.5rem; }
    h2 { font-size: 2rem; font-weight: 300; }
    h3 { font-size: 1.4rem; font-weight: 300; }
}
h2.h2-homepage, .container-cms h2 {
    display: flex;
    align-items: center;
}
h2.h2-homepage::after,  .container-cms h2::after {
    content: '';
    flex: 1;
    margin-left: 1rem;
    height: 1px;
    background-color: #1e429b;
}
.actualite-date-le {
    font-style: italic;
    font-size: 0.7rem;
}
.container-cms.ariane-actualite {
    font-style: italic;
    font-size: 0.9rem;
}

/***** LIST UL *****/
.container-cms ul { list-style: none; }
.container-cms li::before { content: "■ "; color: #1e429b; }
/***** GOOGLEMAPS *****/
.googlemaps { width: 100%; height: 300px; }
@media (min-width: 576px) { .googlemaps { width: 100%; height: 350px; } }
@media (min-width: 992px) { .googlemaps { width: 100%; height: 470px; } }

.cms-sejour-bg { background-color: #ebebeb; }
.nav-link-cms-sejour { font-style: italic; font-weight: bold; padding-top: 0.2rem!important; padding-bottom: 0.14rem!important; padding-left: 0.6rem; padding-right: 0.6rem; }
.a-cms-sejour-reservation { font-style: italic; font-weight: bold; }


/*********************************************************/
/*********************** CAROUSELS ***********************/
.carousel-cms-head .carousel-control-custom, .carousel-cms-page-contenu .carousel-control-custom { font-size: 3rem; font-style: italic; }
@media (min-width: 576px) { .carousel-cms-head .carousel-control-custom, .carousel-cms-page-contenu .carousel-control-custom { font-size: 4rem; font-style: italic; } }
@media (min-width: 992px) { .carousel-cms-head .carousel-control-custom, .carousel-cms-page-contenu .carousel-control-custom { font-size: 6rem; font-style: italic; } }
.carousel-cms-head .carousel-caption p, .carousel-cms-page-contenu .carousel-caption p {
    background-color: #272727; color: #ebebeb;
    opacity: 0.75;
    font-size: 1.2rem;
}
.carousel-cms-head .carousel-caption p:hover, .carousel-cms-page-contenu .carousel-caption p:hover { opacity: 1; }
.carousel-control-next, .carousel-control-prev { opacity: 0.8; }

/*****************************************************/
/*********************** CARDS ***********************/
.card.homepage-actualite {
    --bs-card-border-color: #1e429b;
    background-color: #ebebeb;
}
.card.homepage-actualite .homepage-card-title {
    font-size: 1rem; font-style: normal; font-weight: 300;
}
@media (min-width: 992px) {
    .card.homepage-actualite .homepage-card-title {
        font-size: 1.1rem; font-style: normal; font-weight: 300;
    }
}
.card.connexion {
    border: 1px solid rgba(0, 0, 0, 0.125); margin-bottom: 3rem; border-radius: 0.40rem; box-shadow: 0px 4px 5px 1px rgba(0, 0, 255, .4);
}
.card.connexion .card-header {
    font-size: 1.6rem; padding: 0.75rem 1.25rem; margin-bottom: 0;
    background-color: inherit; border-bottom: none;
}

/******************************************************/
/*********************** NAVBAR ***********************/
.navbar-logo { max-width: 240px; }
@media (min-width: 576px) { .navbar-logo { max-width: 280px; } }
@media (min-width: 992px) { .navbar-logo { max-width: 350px; } }
@media (min-width: 1200px) { .navbar-logo { max-width: 350px; } }
.bg-navbar { transition-timing-function: ease-in-out; transition: 0.5s; background-color:rgba(92, 92, 92, 1)!important}
.bg-navbar-transparent { transition-timing-function: ease-in-out; transition: 0.5s; background-color:transparent!important}
.nav-link.spacer { padding-left: 0.1rem!important; padding-right: 0.1rem!important; }
.navbar-nav .dropdown-item.active, .navbar-nav .dropdown-item:focus {
    background-color: #1e429b;
}
.navbar-nav .nav-link.active, .navbar-nav .nav-link.show { color: var(--bs-nav-link-color); }
.navbar-nav .show > .nav-link, .navbar-nav .active > .nav-link, .navbar-nav .nav-link.show, .navbar-nav .nav-link.active { /*color: #fff;*/ font-weight: bold; }

.dropdown-toggle::after {
    display: none;
}
@media only screen and (max-width : 767px) { /* CENTER COLLAPSE */
    .navbar .navbar-collapse { /*background-color:rgba(0, 0, 0, .9)!important;*/
        padding-left: 1rem; padding-right: 2rem; padding-top: 0.5rem; padding-bottom: 0.5rem;
        line-height: 1rem; font-size: 1.2rem;
        text-align: center;
    }
    .navbar .navbar-collapse .dropdown-item {
        text-align: center; font-size: 1.2rem; line-height: 1.5rem;
    }
}

.div-navbar-absolute {
    position: absolute;
    top: 5px; right: 20px;
}
.div-navbar-absolute a {
    color: #ffffff; background-color: #1e429b;
    border: 2px solid #ffffff;
    font-size: 1rem; font-weight: bold; text-decoration: none;
    border-radius: 0.2rem;
    padding-left: 0.3rem; padding-right: 0.3rem; padding-top: 0.3rem; padding-bottom: 0.3rem;
}
.div-navbar-absolute a:hover, .div-navbar-absolute a:focus {
    color: #1e429b; background-color: #ffffff;
    border: 2px solid #1e429b;
    transition-duration: 0.8s;
}
@media (min-width: 992px) {
    .div-navbar-absolute { top: 12px; font-size: 1rem; }
}
@media (min-width: 1200px) {
    .div-navbar-absolute { top: 20px; font-size: 1rem; }
}


/*******************************************************************************/
/*********************** HOMEPAGE + SPONSORS/PARTENAIRES ***********************/
.row-titre-separation {
    background-color: #000000; color: #ffffff; font-size: 2rem; text-align: center;
}
.row-titre-separation-small {
    background-color: #000000; color: #ffffff; font-size: 1.5rem; text-align: center;
}
@media (min-width: 769px) {
    .homepage-row-4-col-middle-border { border-left: 1px solid #ffffff; border-right: 1px solid #ffffff; }
}
@media (max-width: 768px) {
    .homepage-row-4-col-middle-border { border-top: 1px solid #ffffff; border-bottom: 1px solid #ffffff; }
}

@media (max-width: 991px) {
    .homepage-row-2-quoi { font-size: 1.8rem; font-weight: 300; }
    .homepage-row-2-combien { font-size: 2.3rem; font-weight: bold; }
}
@media (min-width: 992px) {
    .homepage-row-2-quoi { font-size: 2.2rem; font-weight: 300; }
    .homepage-row-2-combien { font-size: 2.7rem; font-weight: bold; }
}


/******************************************************/
/*********************** FOOTER ***********************/
footer {
    background-color: #272727!important;
    color: #ffffff;
}
.img-partenaire-footer { max-height: 60px; }
@media (max-width: 768px) {
    .img-partenaire-footer { max-height: 50px; }
}

/****************************************************/
/*********************** BTN ************************/
.btn-primary { color: #fff; background-color: #1e429b; border-color: #1e429b; }
.btn-primary:hover { color: #fff; background-color: #244c99; border-color: #153e8c; }
.btn-primary:focus, .btn-primary.focus { color: #fff; background-color: #244c99; border-color: #153e8c; box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5); }
.btn-primary.disabled, .btn-primary:disabled { color: #fff; background-color: #1e429b; border-color: #1e429b; }
.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle { color: #fff; background-color: #153e8c; border-color: #005cbf; }
.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-primary.dropdown-toggle:focus { box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5); }
.btn-outline-primary { color: #1e429b; border-color: #1e429b; }
.btn-outline-primary:hover { color: #fff; background-color: #1e429b; border-color: #1e429b; }
.btn-outline-primary:focus, .btn-outline-primary.focus { box-shadow: 0 0 0 0.2rem rgba(12, 26, 61, 0.5); }
.btn-outline-primary.disabled, .btn-outline-primary:disabled { color: #1e429b; background-color: transparent; }
.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active, .show > .btn-outline-primary.dropdown-toggle { color: #fff; background-color: #007bff; border-color: #007bff; }
.btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-primary.dropdown-toggle:focus { box-shadow: 0 0 0 0.2rem rgba(12, 26, 61, 0.5); }

.btn-homepage-odd { color: #fff; font-size: 1.2rem; font-weight: 600; background-color: rgba(0, 0, 0, .8); border-color: #ffffff; border-radius: 0; }
.btn-homepage-odd:hover { color: #fff; background-color: rgba(0, 0, 0, .8); border-color: #1e429b; }
.btn-homepage-odd:focus, .btn-homepage-odd.focus { color: #fff; background-color: rgba(0, 0, 0, .8); border-color: #000000; box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }
.btn-homepage-odd.disabled, .btn-homepage-odd:disabled { color: #fff; background-color: #000000; border-color: #000000; }
.btn-homepage-odd:not(:disabled):not(.disabled):active, .btn-homepage-odd:not(:disabled):not(.disabled).active,
.show > .btn-homepage-odd.dropdown-toggle { color: #fff; background-color: rgba(0, 0, 0, .8); border-color: #000000; }
.btn-homepage-odd:not(:disabled):not(.disabled):active:focus, .btn-homepage-odd:not(:disabled):not(.disabled).active:focus,
.show > .btn-homepage-odd.dropdown-toggle:focus { box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }
.btn-outline-homepage-odd { color: #000000; border-color: #000000; }
.btn-outline-homepage-odd:hover { color: #fff; background-color: rgba(0, 0, 0, .8); border-color: #000000; }
.btn-outline-homepage-odd:focus, .btn-outline-homepage-odd.focus { box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }
.btn-outline-homepage-odd.disabled, .btn-outline-homepage-odd:disabled { color: #000000; background-color: transparent; }
.btn-outline-homepage-odd:not(:disabled):not(.disabled):active, .btn-outline-homepage-odd:not(:disabled):not(.disabled).active, .show > .btn-outline-homepage-odd.dropdown-toggle { color: #fff; background-color: #000000; border-color: #000000; }
.btn-outline-homepage-odd:not(:disabled):not(.disabled):active:focus, .btn-outline-homepage-odd:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-homepage-odd.dropdown-toggle:focus { box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }

.btn-homepage-even { color: #fff; font-size: 1.2rem; font-weight: 600; background-color: rgba(0, 0, 0, 1); border-color: #ffffff; border-radius: 0; }
.btn-homepage-even:hover { color: #fff; background-color: rgba(0, 0, 0, 1); border-color: #1e429b; }
.btn-homepage-even:focus, .btn-homepage-even.focus { color: #fff; background-color: rgba(0, 0, 0, .8); border-color: #000000; box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }
.btn-homepage-even.disabled, .btn-homepage-even:disabled { color: #fff; background-color: #000000; border-color: #000000; }
.btn-homepage-even:not(:disabled):not(.disabled):active, .btn-homepage-even:not(:disabled):not(.disabled).active,
.show > .btn-homepage-even.dropdown-toggle { color: #fff; background-color: rgba(0, 0, 0, .8); border-color: #000000; }
.btn-homepage-even:not(:disabled):not(.disabled):active:focus, .btn-homepage-even:not(:disabled):not(.disabled).active:focus,
.show > .btn-homepage-even.dropdown-toggle:focus { box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }
.btn-outline-homepage-even { color: #000000; border-color: #000000; }
.btn-outline-homepage-even:hover { color: #fff; background-color: rgba(0, 0, 0, .8); border-color: #000000; }
.btn-outline-homepage-even:focus, .btn-outline-homepage-even.focus { box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }
.btn-outline-homepage-even.disabled, .btn-outline-homepage-even:disabled { color: #000000; background-color: transparent; }
.btn-outline-homepage-even:not(:disabled):not(.disabled):active, .btn-outline-homepage-even:not(:disabled):not(.disabled).active, .show > .btn-outline-homepage-even.dropdown-toggle { color: #fff; background-color: #000000; border-color: #000000; }
.btn-outline-homepage-even:not(:disabled):not(.disabled):active:focus, .btn-outline-homepage-even:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-homepage-even.dropdown-toggle:focus { box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5); }

.btn-xs, .btn-group-xs > .btn { padding: 0.20rem 0.3rem; font-size: 0.8rem; line-height: 1.2; border-radius: 0.2rem; }
.btn-xs + .dropdown-toggle-split, .btn-group-xs > .btn + .dropdown-toggle-split { padding-right: 0.375rem; padding-left: 0.375rem; }

.btn-xxs, .btn-group-xxs > .btn { padding: 0.15rem 0.25rem; font-size: 0.7rem; line-height: 1; border-radius: 0.2rem; }
.btn-xxs + .dropdown-toggle-split, .btn-group-xxs > .btn + .dropdown-toggle-split { padding-right: 0.35rem; padding-left: 0.35rem; }


/******************************************************************/
/*********************** ESPACE INSCRIVANT ************************/
.container-inscrivant { font-weight: 300; }
.bg-odd { background-color: #ffffff; }
.bg-even { background-color: #efefef; }
.bg-form { background-color: #ebebeb; }
.container-inscrivant .bg-header-card-reservation-form { background-color: #1e429b; color: #ffffff; }
.container-inscrivant .bg-header-card-reservation-resume { background-color: #272727; color: #ffffff; }
.container-inscrivant .bg-body-card { background-color: #f7f7f7; }
.form-user-reservation label { font-weight: 400; }

.card-header-reservation-resume-sejour {
    font-size: 1.3rem;
    font-weight: 400;
    color: #1e429b;
}


nav.nav-pills.nav-user { background-color: #1e429b; padding: 0.2rem 0rem 0.2rem 0rem; }
nav.nav-pills.nav-user .nav-link { border-radius: 0rem; color: #ffffff; }
nav.nav-pills.nav-user .nav-link:hover { color: #ffffff; }
nav.nav-pills.nav-user .nav-link.active, .nav-pills .show > .nav-link { color: #ffffff; background-color: #1e429b; font-weight: bold; }
nav.nav-pills.nav-user .nav-link.disabled { color: rgba(255, 255, 255, 0.6); background-color: #1e429b; pointer-events: none; cursor: default; }
.flybox-espace-visiteur-btn {
    z-index: 1050; width: auto; height: auto; position: fixed;
    bottom: 100vh;/*80px*/ right: 20px; padding: 12px 15px 10px 15px;
    border: 2px solid #000000!important; /*background-color: #000000!important;*/
    border-radius: 0.5rem;
}
.flybox-espace-visiteur-btn i { display: inline-block; color: #fff; }
.inscrit-conference { background-color: #b71e29; }
h3.meetings-agenda-jour { background-color: #1e429b; color: #ffffff;
    font-size: 1.4rem; font-weight: 400; text-align: center;
    padding-top: 0.4rem; padding-bottom: 0.45rem;
}
