/******************************************************/
/*********************** COMMON ***********************/
body {
    font-family: 'Raleway', sans-serif;
    font-size: 0.9rem;
}
.cms-primary-color { color: #004975; }
.cms-secondary-color { color: #bf1918; }
.cms-tertiaire-color { color: #002c4a; }
.container-global { background-color: #efefef; }
/*.container-cms { background-color: #ffffff; }*/
.container-cms h2 { color: #004975; font-size: 1.5rem; }
.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; }
hr { border: 0; height: 1px; background-image: linear-gradient(to right, rgba(57, 96, 170, 0.5), rgba(57, 96, 170, 1), rgba(57, 96, 170, 0.5)); }
.alert-success { background-color: #ffffff; border-color: #004975; border-width: 2px; color: inherit; }

/*****************************************************/
/*********************** CARDS ***********************/
.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;
}
.bg-card-header { background-color: #004975; color: #ffffff; font-size: 1.2rem;}
.bg-card-body { background-color: #ffffff;/*#e6e6e6;*/ }

/******************************************************/
/*********************** NAVBAR ***********************/
.navbar-logo { max-width: 300px; }
@media (min-width: 576px) { .navbar-logo { max-width: 420px; } }
@media (min-width: 992px) { .navbar-logo { max-width: 600px;} }
@media (min-width: 1200px) { .navbar-logo { max-width: 600px; } }
.bg-navbar { transition-timing-function: ease-in-out; transition: 0.5s; background-color:rgba(0, 0, 0, 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; }

.dropdown-item.multicompte { font-weight: bold; color: #000000; padding-left: 0.5rem!important; padding-top: 0rem!important; padding-bottom: 0rem!important; margin-top: 0rem!important; margin-bottom: 0rem!important; }

.navbar-dark .navbar-brand { color: #fff; }
.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus { color: #fff; }
.navbar-dark .navbar-nav .nav-link { color: rgba(255, 255, 255, 1); }
.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus { color: rgba(255, 255, 255, 0.75); }
.navbar-dark .navbar-nav .nav-link.disabled { color: rgba(255, 255, 255, 0.5); }
.navbar-dark .navbar-nav .show > .nav-link, .navbar-dark .navbar-nav .active > .nav-link, .navbar-dark .navbar-nav .nav-link.show, .navbar-dark .navbar-nav .nav-link.active { color: #fff; font-weight: bold; }
.navbar-dark .navbar-toggler { color: rgba(255, 255, 255, 1); border-color: rgba(255, 255, 255, 0.5); }
.navbar-dark .navbar-toggler-icon { background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.9%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); }
.navbar-dark .navbar-text { color: rgba(255, 255, 255, 1); }
.navbar-dark .navbar-text a { color: #fff; }
.navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus { color: #fff; }


.navbar-light .navbar-nav .nav-link { font-size: 1.3rem; }
.navbar-light .navbar-nav .dropdown-menu { font-size: 1.3rem; }

.dropdown-item { display: block; width: 100%; padding: 0.25rem 1.5rem; clear: both; font-weight: 400; color: #212529; text-align: inherit; white-space: nowrap; background-color: transparent; border: 0; }
.dropdown-item:hover, .dropdown-item:focus { color: #16181b; text-decoration: none; background-color: #e9ecef; }
.dropdown-item.active, .dropdown-item:active { color: #fff; text-decoration: none; background-color: #004975; }
.dropdown-item.disabled, .dropdown-item:disabled { color: #adb5bd; pointer-events: none; background-color: transparent; }
.dropdown-item-text { display: block; padding: 0.25rem 1.5rem; color: #212529; }
.dropdown-toggle::after {
    display: none;
}
/*@media only screen and (max-width : 767px) {
    .navbar-dark .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-dark .navbar-collapse .dropdown-item {
        text-align: center; font-size: 1.2rem; line-height: 1.5rem;
    }
}*/

/*******************************************************************************/
/*********************** 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: 575px) {
    .sponsors-col-1 { border-bottom: 1px solid #000000; }
    .sponsors-col-2 { border-bottom: 1px solid #000000; }
    .sponsors-col-3 { border-bottom: 1px solid #000000; }
    .sponsors-col-4 { border: none; }
}
@media (min-width: 576px) and (max-width: 1199px) {
    .sponsors-col-1 { border-bottom: 1px solid #000000; }
    .sponsors-col-2 { border-left: 1px solid #000000; border-bottom: 1px solid #000000; }
    .sponsors-col-3 { border: none; }
    .sponsors-col-4 { border-left: 1px solid #000000; }
}
@media (min-width: 1200px) {
    .sponsors-col-2 { border-left: 1px solid #000000; }
    .sponsors-col-3 { border-left: 1px solid #000000; border-right: 1px solid #000000; }
}
#carouselPartenaires .carousel-indicators { bottom: -40px; }
#carouselPartenaires .carousel-indicators li { background-color: #000000; }


/****************************************************************/
/*********************** HEADER PRINCIPAL ***********************/
header.h-cms {
    background-position: center center; background-size: cover; background-repeat: no-repeat;
}
header.h-cms .header-overlay {
    /*background-color:rgba(0, 0, 0, .7)!important;*/
    position: relative; top: 0; left: 0;
    width: 100%; height: 100%;
}
header.h-cms .header-overlay h1 {
    color: #ffffff; text-align: center; font-size: 1.8rem; line-height: 2.2rem;
    padding-top: 2rem; padding-bottom: 2rem; padding-left: 1rem; padding-right: 1rem;
}
@media (min-width: 576px) {
    header.h-cms .header-overlay h1 { padding-top: 2rem; padding-bottom: 2rem; }
}
@media (min-width: 768px) {
    header.h-cms .header-overlay h1 { padding-top: 3rem; padding-bottom: 3rem; font-size: 2.5rem; line-height: 3rem; }
}
@media (min-width: 992px) {
    header.h-cms .header-overlay h1 { padding-top: 5rem; padding-bottom: 5rem; }
}
@media (min-width: 1200px) {
    header.h-cms .header-overlay h1 { padding-top: 5rem; padding-bottom: 5rem; }
}

/******************************************************************/
/*********************** HEADER WITH MARGIN ***********************/
header.h-cms-margin {
    background-position: center center; background-size: cover; background-repeat: no-repeat;
}
header.h-cms-margin .header-overlay {
    /*background-color:rgba(0, 0, 0, .7)!important;*/
    position: relative; top: 0; left: 0;
    width: 100%; height: 100%;
}
header.h-cms-margin .header-overlay h1 {
    color: #ffffff; text-align: center; font-size: 1.8rem; line-height: 2.2rem;
    padding-top: 2rem; padding-bottom: 5rem; padding-left: 1rem; padding-right: 1rem;
}
@media (min-width: 576px) {
    header.h-cms-margin .header-overlay h1 { padding-top: 2.5rem; padding-bottom: 6rem; }
}
@media (min-width: 768px) {
    header.h-cms-margin .header-overlay h1 { padding-top: 3rem; padding-bottom: 6rem; font-size: 2.5rem; line-height: 3rem; }
}
@media (min-width: 992px) {
    header.h-cms-margin .header-overlay h1 { padding-top: 5rem; padding-bottom: 7rem; }
}
@media (min-width: 1200px) {
    header.h-cms-margin .header-overlay h1 { padding-top: 5rem; padding-bottom: 7rem; }
}

/***************************************************************/
/*********************** HEADER HOMEPAGE ***********************/
header.h-homepage {
    background-position: center center; background-size: cover; background-repeat: no-repeat;
}
header.h-homepage .header-overlay {
    /*background-color:rgba(0, 0, 0, .7)!important;*/
    position: relative; top: 0; left: 0;
    width: 100%; height: 100%;
}
header.h-homepage .header-titles {
    background-color:transparent!important; z-index:99;
    color: #ffffff; text-align: right; font-size: 1.2rem; line-height: 2.2rem;
}
header.h-homepage .header-baseline {
    background-color:rgba(0, 0, 0, .8)!important; z-index:100;
    position:absolute; bottom: 0px;
}
header.h-homepage .header-baseline h1 {
    color: #ffffff; text-align: center; font-size: 1.1rem; line-height: 1.3rem;
    padding-top: 1rem; padding-bottom: 1rem; padding-left: 1rem; padding-right: 1rem;
}
@media (min-width: 576px) {
    header.h-homepage .header-titles { font-size: 1.8rem; line-height: 3rem; padding-right: 1rem; }
}
@media (min-width: 768px) {
    header.h-homepage .header-titles { font-size: 2rem; line-height: 3rem; padding-right: 3rem; }
    header.h-homepage .header-baseline h1 { font-size: 1.3rem; line-height: 1.5rem; padding-top: 1.5rem; padding-bottom: 1.5rem; }
}
@media (min-width: 992px) {
    header.h-homepage .header-titles { font-size: 2.5rem; line-height: 4rem; padding-right: 3rem; }
    header.h-homepage .header-baseline h1 { font-size: 1.5rem; line-height: 1.8rem; padding-top: 2rem; padding-bottom: 2rem; }
}
@media (min-width: 1200px) {
}
@media (min-width: 1500px) {
    header.h-homepage .header-titles { font-size: 2.5rem; line-height: 4rem; padding-right: 3rem; }
    header.h-homepage .header-baseline h1 { font-size: 1.5rem; line-height: 1.8rem; padding-top: 2rem; padding-bottom: 2rem; }
}

/******************************************************/
/*********************** FOOTER ***********************/
footer {
    background-color: #000000!important;
    color: #ffffff;
}
footer a {
    color: #ffffff;
}
footer a:hover {
    text-decoration: none;
}

/****************************************************/
/*********************** BTN ************************/
.btn-primary { color: #fff; background-color: #004975; border-color: #004975; }
.btn-primary:hover { color: #fff; background-color: #003c63; border-color: #002c4a; }
.btn-primary:focus, .btn-primary.focus { color: #fff; background-color: #003c63; border-color: #002c4a; box-shadow: 0 0 0 0.2rem rgba(0, 73, 117, 0.5); }
.btn-primary.disabled, .btn-primary:disabled { color: #fff; background-color: #004975; border-color: #004975; }
.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle { color: #fff; background-color: #002c4a; 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(0, 73, 117, 0.5); }
.btn-outline-primary { color: #004975; border-color: #004975; }
.btn-outline-primary:hover { color: #fff; background-color: #004975; border-color: #004975; }
.btn-outline-primary:focus, .btn-outline-primary.focus { box-shadow: 0 0 0 0.2rem rgba(57, 96, 170, 0.5); }
.btn-outline-primary.disabled, .btn-outline-primary:disabled { color: #004975; 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(57, 96, 170, 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: #004975; }
.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: #004975; }
.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; }
