/******************************************
/* SPECIFIC LUTECE DEFAULT THEME STYLES   *
******************************************/

/* Variables */
:root {
    --main-color: #0B2438; /*#071F32*/
    --main-info-color: #354BCF;
    --main-danger-color: #E22C3F;
    --main-success-color: #248619;
    --main-warning-color: #D14800;
    --alt-info-light-color: #31EEF3;
    --alt-info-second-color: #25DCCC;
    --alt-success-color: #3ECD2E;
    --alt-warning-light-color: #FFCD00;
    --alt-warning-dark-color: #FF3300;
    --border-accordion-color: #8794E2;
    --black-color: #000;
    --dark-color: #1A1A1A;
    --dark-lighter-color: #6D6D6D;
    --gray-dark-color: #A1A1A1;
    --gray-color: #C3C3C3;
    --gray-light-color: #D9D9D9;
    --white-strong-color: #F2F2F2;
    --white-light-color: #F0F0F0;
    --white-color: #FFF;
}

/* Imports 	Font Montserrat 	*/

/** Montserrat Thin **/
@font-face {
    font-family: "Montserrat";
    font-weight: 100;
    font-style: normal;
    src: url("../fonts/Montserrat-Thin.eot");
    src: local("Montserrat Thin "), local("Montserrat-Thin"), url("../fonts/Montserrat-Thin.eot?#iefix") format('embedded-opentype'), url("../fonts/Montserrat-Thin.woff2") format("woff2"), url("../fonts/Montserrat-Thin.woff") format("woff");
}

/** Montserrat Thin-Italic **/
@font-face {
    font-family: "Montserrat";
    font-weight: 100;
    font-style: italic;
    src: url("../fonts/Montserrat-ThinItalic.eot");
    src: local("Montserrat Thin Italic"), local("Montserrat-Thinitalic"), url("../fonts/Montserrat-ThinItalic.eot?#iefix") format('embedded-opentype'), url("../fonts/Montserrat-ThinItalic.woff2") format("woff2"), url("../fonts/Montserrat-ThinItalic.woff") format("woff");
}

/** Montserrat ExtraLight **/
@font-face {
    font-family: "Montserrat";
    font-weight: 200;
    font-style: normal;
    src: url("../fonts/Montserrat-ExtraLight.eot");
    src: local("Montserrat Extra Light "), local("Montserrat-Extralight"), url("../fonts/Montserrat-ExtraLight.eot?#iefix") format('embedded-opentype'), url("../fonts/Montserrat-ExtraLight.woff2") format("woff2"), url("../fonts/Montserrat-ExtraLight.woff") format("woff");
}

/** Montserrat ExtraLight-Italic **/
@font-face {
    font-family: "Montserrat";
    font-weight: 200;
    font-style: italic;
    src: url("../fonts/Montserrat-ExtraLightItalic.eot");
    src: local("Montserrat Extra Light Italic "), local("Montserrat-Extralightitalic"), url("../fonts/Montserrat-ExtraLightItalic.eot?#iefix") format('embedded-opentype'), url("../fonts/Montserrat-ExtraLightItalic.woff2") format("woff2"), url("../fonts/Montserrat-ExtraLightItalic.woff") format("woff");
}

/** Montserrat Light **/
@font-face {
    font-family: "Montserrat";
    font-weight: 300;
    font-style: normal;
    src: url("../fonts/Montserrat-Light.eot");
    src: local("Montserrat Light "), local("Montserrat-Light"), url("../fonts/Montserrat-Light.eot?#iefix") format('embedded-opentype'), url("../fonts/Montserrat-Light.woff2") format("woff2"), url("../fonts/Montserrat-Light.woff") format("woff");
}

/** Montserrat Light-Italic **/
@font-face {
    font-family: "Montserrat";
    font-weight: 300;
    font-style: italic;
    src: url("../fonts/Montserrat-LightItalic.eot");
    src: local("Montserrat Light Italic"), local("Montserrat-Lightitalic"), url("../fonts/Montserrat-LightItalic.eot?#iefix") format('embedded-opentype'), url("../fonts/Montserrat-LightItalic.woff2") format("woff2"), url("../fonts/Montserrat-LightItalic.woff") format("woff");
}

/** Montserrat Regular 			**/
@font-face {
    font-family: "Montserrat";
    font-weight: 400;
    font-style: normal;
    src: url("../fonts/Montserrat-Regular.eot");
    src: local("Montserrat Regular "), local("Montserrat-Regular"), url("../fonts/Montserrat-Regular.eot?#iefix") format('embedded-opentype'), url("../fonts/Montserrat-Regular.woff2") format("woff2"), url("../fonts/Montserrat-Regular.woff") format("woff");
}

/** Montserrat Regular-Italic **/
@font-face {
    font-family: "Montserrat";
    font-weight: 400;
    font-style: italic;
    src: url("../fonts/Montserrat-Italic.eot");
    src: local("Montserrat Regular italic"), local("Montserrat-Regularitalic"), url("../fonts/Montserrat-Italic.eot?#iefix") format('embedded-opentype'), url("../fonts/Montserrat-Italic.woff2") format("woff2"), url("../fonts/Montserrat-Italic.woff") format("woff");
}

/** Montserrat Medium **/
@font-face {
    font-family: "Montserrat";
    font-weight: 500;
    font-style: normal;
    src: url("../fonts/Montserrat-Medium.eot");
    src: local("Montserrat Medium "), local("Montserrat-Medium"), url("../fonts/Montserrat-Medium.eot?#iefix") format('embedded-opentype'), url("../fonts/Montserrat-Medium.woff2") format("woff2"), url("../fonts/Montserrat-Medium.woff") format("woff");
}

/** Montserrat Medium-Italic **/
@font-face {
    font-family: "Montserrat";
    font-weight: 500;
    font-style: italic;
    src: url("../fonts/Montserrat-MediumItalic.eot");
    src: local("Montserrat Medium italic"), local("Montserrat-Mediumitalic"), url("../fonts/Montserrat-MediumItalic.eot?#iefix") format('embedded-opentype'), url("../fonts/Montserrat-MediumItalic.woff2") format("woff2"), url("../fonts/Montserrat-MediumItalic.woff") format("woff");
}

/** Montserrat SemiBold **/
@font-face {
    font-family: "Montserrat";
    font-weight: 600;
    font-style: normal;
    src: url("../fonts/Montserrat-SemiBold.eot");
    src: local("Montserrat SemiBold "), local("Montserrat-SemiBold"), url("../fonts/Montserrat-SemiBold.eot?#iefix") format('embedded-opentype'), url("../fonts/Montserrat-SemiBold.woff2") format("woff2"), url("../fonts/Montserrat-SemiBold.woff") format("woff");
}

/** Montserrat SemiBold-Italic **/
@font-face {
    font-family: "Montserrat";
    font-weight: 600;
    font-style: italic;
    src: url("../fonts/Montserrat-SemiBoldItalic.eot");
    src: local("Montserrat SemiBold italic"), local("Montserrat-SemiBolditalic"), url("../fonts/Montserrat-SemiBoldItalic.eot?#iefix") format('embedded-opentype'), url("../fonts/Montserrat-SemiBoldItalic.woff2") format("woff2"), url("../fonts/Montserrat-SemiBoldItalic.woff") format("woff");
}

/** Montserrat Bold **/
@font-face {
    font-family: "Montserrat";
    font-weight: 700;
    font-style: normal;
    src: url("../fonts/Montserrat-Bold.eot");
    src: local("Montserrat Bold "), local("Montserrat-Bold"), url("../fonts/Montserrat-Bold.eot?#iefix") format('embedded-opentype'), url("../fonts/Montserrat-Bold.woff2") format("woff2"), url("../fonts/Montserrat-Bold.woff") format("woff");
}

/** Montserrat Bold-Italic **/
@font-face {
    font-family: "Montserrat";
    font-weight: 700;
    font-style: italic;
    src: url("../fonts/Montserrat-BoldItalic.eot");
    src: local("Montserrat Bold italic"), local("Montserrat-Bolditalic"), url("../fonts/Montserrat-BoldItalic.eot?#iefix") format('embedded-opentype'), url("../fonts/Montserrat-BoldItalic.woff2") format("woff2"), url("../fonts/Montserrat-BoldItalic.woff") format("woff");
}

/** Montserrat ExtraBold **/
@font-face {
    font-family: "Montserrat";
    font-weight: 800;
    font-style: normal;
    src: url("../fonts/Montserrat-ExtraBold.eot");
    src: local("Montserrat ExtraBold "), local("Montserrat-ExtraBold"), url("../fonts/Montserrat-ExtraBold.eot?#iefix") format('embedded-opentype'), url("../fonts/Montserrat-ExtraBold.woff2") format("woff2"), url("../fonts/Montserrat-ExtraBold.woff") format("woff");
}

/** Montserrat ExtraBold-Italic **/
@font-face {
    font-family: "Montserrat";
    font-weight: 800;
    font-style: italic;
    src: url("../fonts/Montserrat-ExtraBoldItalic.eot");
    src: local("Montserrat ExtraBold italic"), local("Montserrat-ExtraBolditalic"), url("../fonts/Montserrat-ExtraBoldItalic.eot?#iefix") format('embedded-opentype'), url("../fonts/Montserrat-ExtraBoldItalic.woff2") format("woff2"), url("../fonts/Montserrat-ExtraBoldItalic.woff") format("woff");
}

/** Montserrat Black **/
@font-face {
    font-family: "Montserrat";
    font-weight: 900;
    font-style: normal;
    src: url("../fonts/Montserrat-Black.eot");
    src: local("Montserrat Black "), local("Montserrat-Black"), url("../fonts/Montserrat-Black.eot?#iefix") format('embedded-opentype'), url("../fonts/Montserrat-Black.woff2") format("woff2"), url("../fonts/Montserrat-Black.woff") format("woff");
}

/** Montserrat Black-Italic **/
@font-face {
    font-family: "Montserrat";
    font-weight: 900;
    font-style: italic;
    src: url("../fonts/Montserrat-BlackItalic.eot");
    src: local("Montserrat Black italic"), local("Montserrat-Blackitalic"), url("../fonts/Montserrat-BlackItalic.eot?#iefix") format('embedded-opentype'), url("../fonts/Montserrat-BlackItalic.woff2") format("woff2"), url("../fonts/Montserrat-BlackItalic.woff") format("woff");
}

/* Main styles */
html {
    position: relative;
    min-height: 100%;
    font-size: 62.5%;
    font-weight: 300;
    line-height: 1.15;
}

body, table {
    min-height: 100%;
    height: 100%;
    margin: 0;
    line-height: 1.15;
}

#main {
    min-height: 75vh;
    padding-bottom: 80px;
    overflow-x: hidden;
}

body, header, nav, footer, table, h1, h2, h3, h4, h5, h6, p, a {
    /* IE11 Hand compat should be removed asap */
    color: #0B2438;
    /* This is the right syntax using vars */
    color: var(--main-color);
    font-family: "Montserrat", sans-serif;
    font-size: 16px;
    font-size: 1.6rem;
    font-style: normal;
    font-weight: 700;
}

h1 {
    font-family: 'Montserrat';
    font-weight: 800;
    font-size: 4.2rem;
    line-height: 1.09;
}

h2 {
    font-family: 'Montserrat';
    font-weight: 800;
    font-size: 3.1rem;
    margin-top: 1em;
    margin-bottom: 1em;
}

h3 {
    font-weight: 800;
    font-size: 1.467rem;
    line-height: 2.32rem;
    color: #0B2438;
    color: var( --main-color );
}

h4 {
    font-weight: 800;
    font-size: 2rem;
    line-height: 2.62rem;
}

h5 {
    font-weight: 800;
    font-size: 2rem;
    line-height: 2.62rem;
}

header h2 {
    padding-bottom: 1rem;
    border-bottom: 1rem solid rgba(195, 195, 195, 0.3);
}

p {
    font-size: 1.5rem;
    ;
}

ul, ol {
    font-size: 1.5rem;
    font-weight: 700;
}

li {
    font-family: 'Montserrat';
    line-height: 20px;
    font-size: 1.5rem;
    font-weight: 400;
}

/* Default text link */
a {
    color: #E22B3F;
    text-decoration: underline;
}

    a:hover {
        color: #0B2438;
    }

/* Fonts */
.font-black {
    font-family: 'Montserrat Black';
}

.font-extra-bold {
    font-family: 'Montserrat Extra Bold';
}

.font-bold {
    font-family: 'Montserrat Bold';
}

.font-semi-bold {
    font-family: 'Montserrat Medium';
}

.font-regular {
    font-family: 'Montserrat Regular';
}

/* Text */

.text-summary, .lead {
    font-size: 1.333rem;
    font-weight: 700;
}

.lead {
    font-size: 1.5rem;
    font-weight: 700;
}

.text-strong {
    font-size: 1rem;
    font-weight: 700;
}

/* Colors 							 			*/
/* Main color 									*/
.main-color {
    /* This is the right syntax using vars 		*/
    color: var(--main-color) !important;
    /* IE11 Hand compat should be removed asap 	*/
    color: #0B2438 !important;
}

.main-bg-color {
    background-color: var(--main-color) !important;
    /* IE11 Hand compat should be removed asap 	*/
    background-color: #0B2438 !important;
}

.main-border-color {
    border-color: var(--main-color) !important;
    /* IE11 Hand compat should be removed asap  */
    border-color: #0B2438 !important;
}

/* Info color 									*/
.main-info-color {
    /* IE11 Hand compat should be removed asap 	*/
    color: #354BCF !important;
    /* This is the right syntax using vars 		*/
    color: var(--main-info-color) !important;
}

.main-info-bg-color {
    /* This is the right syntax using vars 		*/
    background-color: var(--main-info-color) !important;
    background-color: #354BCF !important;
}

.main-info-border-color {
    border-color: #354BCF !important;
    /* This is the right syntax using vars 		*/
    border-color: var(--main-info-color) !important;
}

/* Warning color 								*/
.main-warning-color {
    /* IE11 Hand compat should be removed asap 	*/
    color: #FF3300 !important;
    /* This is the right syntax using vars 		*/
    color: var(--main-warning-color) !important;
}

.main-warning-bg-color {
    background-color: #FF3300 !important;
    /* This is the right syntax using vars 		*/
    background-color: var(--main-warning-color) !important;
}

.main-warning-border-color {
    border-color: #FF3300 !important;
    /* This is the right syntax using vars 		*/
    border-color: var(--main-warning-color) !important;
}

/* Success color 								*/
.main-success-color {
    /* IE11 Hand compat should be removed asap 	*/
    color: #248619 !important;
    /* This is the right syntax using vars 		*/
    color: var(--main-success-color) !important;
}

.main-success-bg-color {
    background-color: #248619 !important;
    /* This is the right syntax using vars 		*/
    background-color: var(--main-success-color) !important;
}

.main-success-border-color {
    border-color: #248619 !important;
    /* This is the right syntax using vars 		*/
    border-color: var(--main-success-color) !important;
}

/* Danger color 								*/
.main-danger-color {
    /* IE11 Hand compat should be removed asap 	*/
    color: #E22C3f !important;
    /* This is the right syntax using vars 		*/
    color: var(--main-danger-color) !important;
}

.main-danger-bg-color {
    background-color: #E22C3f !important;
    /* This is the right syntax using vars 		*/
    background-color: var(--main-danger-color) !important;
}

.main-danger-border-color {
    border-color: #E22C3f !important;
    /* This is the right syntax using vars 		*/
    border-color: var(--main-danger-color) !important;
}

/* Alt Info color 								*/
.alt-info-color {
    /* IE11 Hand compat should be removed asap 	*/
    color: #31EEF3 !important;
    /* This is the right syntax using vars 		*/
    color: var(--alt-info-light-color) !important;
}

.alt-info-bg-color {
    background-color: #31EEF3 !important;
    /* This is the right syntax using vars 		*/
    background-color: var(--alt-info-light-color) !important;
}

.alt-info-border-color {
    border-color: #31EEF3 !important;
    /* This is the right syntax using vars 		*/
    border-color: var(--alt-info-light-color) !important;
}

/* Alt Info Second Color 						*/
.alt-info-second-color {
    /* IE11 Hand compat should be removed asap 	*/
    color: #25DCCC !important;
    /* This is the right syntax using vars 		*/
    color: var(--alt-info-second-color) !important;
}

.alt-info-second-bg-color {
    background-color: #25DCCC !important;
    /* This is the right syntax using vars 		*/
    background-color: var(--alt-info-second-color) !important;
}

.alt-info-second-border-color {
    border-color: #25DCCC !important;
    /* This is the right syntax using vars 		*/
    border-color: var(--alt-info-second-color) !important;
}

/* Alt Success Color 							*/
.alt-success-color {
    /* IE11 Hand compat should be removed asap 	*/
    color: #3ECD2E !important;
    /* This is the right syntax using vars 		*/
    color: var(--alt-success-color) !important;
}

.alt-success-bg-color {
    background-color: #3ECD2E !important;
    /* This is the right syntax using vars 		*/
    background-color: var(--alt-success-color) !important;
}

.alt-success-border-color {
    border-color: #3ECD2E !important;
    /* This is the right syntax using vars 		*/
    border-color: var(--alt-success-color) !important;
}


/* Dark Color 									*/
.dark-color {
    /* IE11 Hand compat should be removed asap 	*/
    color: #1A1A1A !important;
    /* This is the right syntax using vars 		*/
    color: var(--dark-color) !important;
}

.dark-bg-color {
    background-color: #1A1A1A !important;
    /* This is the right syntax using vars 		*/
    background-color: var(--dark-color) !important;
}

.dark-border-color {
    border-color: #1A1A1A !important;
    /* This is the right syntax using vars 		*/
    border-color: var(--dark-color) !important;
}

/* Dark Lighter Color 							*/
.dark-lighter-color {
    /* IE11 Hand compat should be removed asap 	*/
    color: #6D6D6D !important;
    /* This is the right syntax using vars 		*/
    color: var(--dark-lighter-color) !important;
}

.dark-lighter-bg-color {
    background-color: #6D6D6D !important;
    /* This is the right syntax using vars 		*/
    background-color: var(--dark-lighter-color) !important;
}

.dark-lighter-border-color {
    border-color: #6D6D6D !important;
    /* This is the right syntax using vars 		*/
    border-color: var(--dark-lighter-color) !important;
}

/* Gray Dark Color 								*/
.gray-dark-color {
    /* IE11 Hand compat should be removed asap 	*/
    color: #A1A1A1 !important;
    /* This is the right syntax using vars 		*/
    color: var(--gray-dark-color) !important;
}

.gray-dark-bg-color {
    background-color: #A1A1A1 !important;
    /* This is the right syntax using vars 		*/
    background-color: var(--gray-dark-color) !important;
}

.gray-dark-border-color {
    border-color: #A1A1A1 !important;
    /* This is the right syntax using vars 		*/
    border-color: var(--gray-dark-color) !important;
}

/* Gray Color 									*/
.gray-color {
    /* IE11 Hand compat should be removed asap 	*/
    color: #C3C3C3 !important;
    /* This is the right syntax using vars 		*/
    color: var(--gray-color) !important;
}

.gray-bg-color {
    background-color: #C3C3C3;
    /* This is the right syntax using vars 		*/
    background-color: var(--gray-color) !important;
}

.gray-border-color {
    border-color: #C3C3C3 !important;
    /* This is the right syntax using vars 		*/
    border-color: var(--gray-color) !important;
}

/* Gray Light Color 							*/
.gray-light-color {
    /* IE11 Hand compat should be removed asap 	*/
    color: #D9D9D9 !important;
    /* This is the right syntax using vars 		*/
    color: var(--gray-light-color) !important;
}

.gray-light-bg-color {
    background-color: #D9D9D9 !important;
    /* This is the right syntax using vars 		*/
    background-color: var(--gray-light-color) !important;
}

.gray-light-border-color {
    border-color: #D9D9D9 !important;
    /* This is the right syntax using vars 		*/
    border-color: var(--gray-light-color) !important;
}

/* White Strong Color 							*/
.white-strong-color {
    /* IE11 Hand compat should be removed asap 	*/
    color: #F2F2F2 !important;
    /* This is the right syntax using vars 		*/
    color: var(--white-strong-color) !important;
}

.white-strong-bg-color {
    background-color: #F2F2F2 !important;
    /* This is the right syntax using vars 		*/
    background-color: var(--white-strong-color) !important;
}

.white-strong-border-color {
    border-color: #F2F2F2 !important;
    /* This is the right syntax using vars 		*/
    border-color: var(--white-strong-color) !important;
}

/* White Light Color 							*/
.white-light-color {
    /* IE11 Hand compat should be removed asap 	*/
    color: #F0F0F0 !important;
    /* This is the right syntax using vars 		*/
    color: var(--white-light-color) !important;
}

.white-light-bg-color {
    background-color: #F0F0F0 !important;
    /* This is the right syntax using vars 		*/
    background-color: var(--white-light-color) !important;
}

.white-light-border-color {
    border-color: #F0F0F0 !important;
    /* This is the right syntax using vars 		*/
    border-color: var(--white-light-color) !important;
}

/* Accessibility 								*/
.skipnav {
    text-align: left;
}

    .skipnav a {
        position: absolute;
        left: -10000px;
        width: 1px;
        height: 1px;
        overflow: hidden;
    }

        .skipnav a:focus, .skipnav a:active {
            position: static;
            left: 0;
            width: auto;
            height: auto;
            overflow: visible;
            text-decoration: underline;
        }

/***  Header, Banner, Footer				  ***/
.navbar a {
    text-decoration: none;
    ;
}
/* 	Default Nav Link 						  	*/
.nav-link {
    color: var( --white-color );
    color: #FFF;
    font-weight: 300;
    text-decoration: none;
}

    .nav-link:focus, .nav-link:hover {
        color: #e22c3f;
        color: var( --main-danger-color );
    }


/***  Header  								 ***/
.main-header {
    background-color: var( --white-color );
    background-color: #FFF;
    -webkit-box-shadow: 0 2px 0 0 rgba(7,31,50,.1);
    box-shadow: 0 2px 0 0 rgba(7,31,50,.1);
    display: -webkit-box;
    /*display: -ms-flexbox;
    display: flex;*/
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 999;
}

    .main-header .navbar {
        align-items: stretch;
        padding: 0;
        height: 100%;
        width: 100%;
    }

    .main-header img {
        background-size: contain;
        height: 100%;
        height: 40px;
    }

    .main-header .navbar .navbar-brand {
        display: flex;
        justify-content: space-around;
        align-items: center;
    }

        .main-header .navbar .navbar-brand span {
            display: block;
            font-family: 'Montserrat', sans-serif;
            font-family: "Montserrat SemiBold", sans-serif;
            font-size: 2.1rem;
            padding: 0 2.5rem;
        }

        .main-header .navbar .navbar-brand hr {
            width: 3px;
            height: 70%;
            background-color: #0B2438;
        }

        .main-header .navbar .navbar-brand img {
            margin: .9rem 0 .8rem 2.5rem;
        }

        .main-header .navbar .navbar-brand .logo {
            margin-left: 8rem;
            margin-right: 2.5rem;
        }

.has-menu {
    justify-content: flex-end;
}

.main-header .navbar-nav,
.main-header .navbar .nav-item,
.main-header .navbar-nav .nav-link {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    justify-content: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 77px;
    height: 7.7rem;
    /* height: 100%; */
}

.main-header .navbar-nav {
    /* margin: 1.4rem; */
}

    .main-header .navbar-nav .nav-link {
        background: transparent;
        color: #0B2438;
        font-size: 1.8rem;
        font-weight: 700;
        padding: 0.85rem 1.5rem;
        height: 100%;
        line-height: 1.11;
        position: relative;
        text-decoration: none;
        -webkit-transition: none;
        transition: none;
    }

        .main-header .navbar-nav .nav-link:hover {
            color: #0B2438;
        }

        .main-header .navbar-nav .nav-link::before {
            background: currentColor;
            display: block;
            content: "";
            height: 0;
            left: 1rem;
            position: absolute;
            top: 0;
            right: 1rem;
            -webkit-transition: height .2s ease;
            transition: height .2s ease;
        }

#navbarDropdownMonParis::before {
    display: none;
}

.main-header .navbar-nav .nav-item.active .nav-link::before,
.main-header .navbar-nav .nav-link:focus::before,
.main-header .navbar-nav .nav-link:hover::before {
    height: .6rem;
}

.dropdown-toggle::after {
    border: none;
}

/* Mon Paris 									*/

.main-header .navbar-nav.mon-paris .nav-link,
.main-header .navbar-nav.mon-paris .nav-link:hover,
.main-header .navbar-nav.mon-paris .dropdown.show > .nav-link,
.main-header .navbar-nav.mon-paris .dropdown .nav-link:hover .dropdown-item {
    color: #354BCF;
    color: var(--main-info-color);
}

    .main-header .navbar-nav.mon-paris .nav-link::before {
        left: 0;
        right: 0;
    }

    .main-header .navbar-nav.mon-paris .nav-link img {
        height: 32px;
        width: 32px;
        -webkit-transition: none;
        transition: none;
    }

/* Dropdown Menu 								*/
.main-header .navbar-nav .dropdown-menu {
    position: absolute;
    padding: 0;
    margin: 0;
    border-radius: 0;
    font-size: 1rem;
    text-align: left;
    margin-top: 1px;
    border-color: #e6e8ea;
}

.main-header .navbar-nav .dropdown-item {
    background-color: #f0f0f0;
}

    .main-header .navbar-nav .dropdown-item span {
        display: inline-block;
        width: 100%;
        height: 100%;
        padding: 1.2rem;
    }

        .main-header .navbar-nav .dropdown-item.active,
        .main-header .navbar-nav .dropdown-item:hover,
        .main-header .navbar-nav .dropdown-item.active span,
        .main-header .navbar-nav .dropdown-item span:hover,
        .main-header .navbar-nav.mon-paris .dropdown.show,
        .main-header .navbar-nav.mon-paris .dropdown.show .nav-link,
        .main-header .navbar-nav.mon-paris .dropdown-menu.show {
            background-color: #354BCF;
            border-color: #354BCF;
            color: #fff
        }

    .main-header .navbar-nav .dropdown-item:last-child,
    .main-header .navbar-nav .dropdown-item:last-child span {
        border-bottom: 0;
    }

/* Dropdown Menu Mon Paris						*/
.main-header .navbar-nav.mon-paris .dropdown {
    height: 100%;
    min-width: 8.5vw;
    position: static;
}

    /* Set Mon Paris image color to white  			*/
    .main-header .navbar-nav.mon-paris .dropdown.show .nav-link img {
        filter: brightness(0) invert(1);
    }

.main-header .navbar-nav.mon-paris .dropdown-menu.show {
    width: 100%;
}

.main-header .navbar-nav.mon-paris .dropdown-menu .dropdown-content {
    margin: 1.4rem;
    display: flex;
    justify-content: flex-end;
}

.main-header .navbar-nav.mon-paris .dropdown.show .nav-item.active .nav-link::before,
.main-header .navbar-nav.mon-paris .dropdown.show .nav-link:focus::before,
.main-header .navbar-nav.mon-paris .dropdown.show .nav-link:hover::before {
    display: none;
}

.main-header .navbar-nav.mon-paris .dropdown-item,
.main-header .navbar-nav.mon-paris .dropdown-item span,
.main-header .navbar-nav.mon-paris .dropdown-item:focus,
.main-header .navbar-nav.mon-paris .dropdown-item:hover {
    width: auto;
    color: var(--white-color);
    color: #fff;
    background-color: var(--main-info-color);
    background-color: #354BCF;
    border-color: #354BCF
}

/**  Banner  									**/
.banner {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 5em;
    margin-top: 77px;
    margin-top: 7.5rem;
    background-size: cover;
    background-color: #081E33
}

#main > .banner {
    margin-top: 0;
}

.banner h1 {
    font-size: 3.3rem;
    color: var( --white-color );
    color: #FFF;
}

/**  Footer  									**/
footer {
    background-color: #FAFAFA;
    color: #0B2438;
    padding-top: 12px;
    padding-bottom: 12px;
    position: relative;
    right: 0;
    bottom: 0;
    left: 0;
    font-size: 14px;
}

/* Menu Service 								*/
.main-footer {
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
    padding: 0;
    height: 100%;
    width: 100%;
}

    .main-footer img {
        background-size: contain;
        height: 100%;
        height: 40px;
    }

    .main-footer a {
        display: flex;
        flex: 1;
        font-family: 'Montserrat', sans-serif;
        font-size: 1.6rem;
        padding-left: 2.4rem;
    }

    .main-footer .logo {
        flex: 1;
        display: flex;
        justify-content: flex-end;
    }

    .main-footer hr {
        width: 3px;
        height: 70%;
        background-color: #0B2438;
        margin-left: 2.5rem;
    }

/* Footer links Menu 							*/
footer .navbar {
    border-top: 1px solid #DEE2E6;
    padding-left: 10rem;
    padding-right: 10rem;
    justify-content: center;
}

footer a {
    color: #0B2438;
    font-size: 1rem;
    text-decoration: none;
}

footer li a, footer .nav-link {
    color: #0B2438;
    font-size: 1rem;
    font-weight: 800;
    text-transform: uppercase;
    text-decoration: none;
}

/* Footer Social Links 							*/
footer.social {
    padding-top: 0;
}

    footer.social .main-footer {
        height: auto;
        justify-content: flex-start;
        margin: 4rem 0 0 2rem;
    }

        footer.social .main-footer .logo {
            flex: 0;
            margin-right: 2.5rem;
            margin-left: -15px;
            padding-left: 0;
            justify-content: flex-start;
        }

        footer.social .main-footer hr {
            margin-left: 0;
            height: 45px;
        }

    footer.social .navbar {
        justify-content: flex-start;
        padding: 0;
    }

        footer.social .navbar .nav-link {
            padding: 2.4rem 2rem 2.6rem;
            padding-left: 0;
            font-size: 1rem;
            line-height: 1.3rem;
            font-weight: 700;
            transition: color .3s ease;
        }

.social-links {
    justify-content: cneter;
    margin: 4rem 0;
}

.paris-footer-social-title {
    color: #fff;
    font-size: 1.3rem;
    margin-bottom: 1.5rem;
}

.social-link {
    display: block;
}

/* Paris Icon 								*/
.paris-icon {
    fill: #fff;
    height: 51.2px;
    height: 5.12rem;
    -webkit-transition: fill .3s ease;
    transition: fill .3s ease;
    width: 32px;
    width: 3.2rem;
}

.paris-icon-sprite {
    display: none;
}

.social-link:focus .paris-icon, .social-link:hover .paris-icon {
    fill: #e22c3f;
    fill: var( --main-danger-color );
}

/* DEPRECATED - UNUSED Nef filigrame  */
/* 		
.nef {
	background: url(../images/nef-bg.svg) no-repeat 50%;
	background-size: cover;
	height: 1169.6px;
	height: 73.1rem;
	left: 40%;
	pointer-events: none;
	position: absolute;
	top: -304px;
	top: -19rem;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 1248px;
	width: 78rem;
	z-index: 10000;
	display: block;
}
*/

/** 	Breadcrumb							**/
.breadcrumb {
    background-color: #fff;
    border-radius: 0;
    margin: 1.9rem 0;
}

header + nav .breadcrumb, header > main nav .breadcrumb {
    margin-top: 9.2rem;
}

.breadcrumb-item a {
    font-family: 'Montserrat Medium', Arial, Helvetica, sans-serif;
    font-size: 1.5rem;
    font-weight: 200;
    color: #6A7984;
    text-decoration: none;
    padding: 1rem;
}

.breadcrumb-item + .breadcrumb-item::before {
    content: "\f101";
    font-family: 'FontAwesome', 'Font Awesome 5 Free';
    font-size: 1.5rem;
}

.breadcrumb-item a:hover {
    color: #0B2438;
}

.breadcrumb-item.active {
    color: #0B2438;
    font-family: 'Montserrat Medium', Arial, Helvetica, sans-serif;
    font-weight: 200;
    font-size: 1.5rem;
}

    .breadcrumb-item.active::before {
        color: #0B2438;
        padding-right: 1.5rem;
    }

/** Components 									**/
/* Helper classes 								 */
.img-home {
    background-size: contain;
    width: 200px;
}

.text-decoration-underline, .text-underline {
    text-decoration: underline;
}

.hidden {
    display: none !important;
}

/* Buttons BS 4 - Overrides						 */
.btn {
    padding: 1.4rem;
    font-weight: 600;
    font-size: 1.3rem;
    border-radius: 0;
}

    .btn:hover {
        cursor: pointer;
    }

.btn-primary {
    background-color: #354BCF;
    border-color: #354BCF;
    color: #FFF;
}

    .btn-primary:hover, .btn-primary:focus, .btn-primary:active {
        background-color: transparent;
        border-color: #354BCF;
        color: #354BCF;
        box-shadow: none;
        cursor: pointer;
    }

/* Link primary */
.btn-link-primary {
    background-color: transparent;
    border-color: transparent;
    color: #354BCF;
}

    .btn-link-primary:hover, .btn-link-primary:focus, .btn-link-primary:active {
        background-color: #354BCF;
        border-color: #354BCF;
        color: #FFF;
        box-shadow: none;
    }


/* End override  										*/
/* Main Action */
.btn-action {
    background-color: var( --main-danger-color);
    background-color: #E22C3f;
    border-color: #E22C3f;
    color: var( --white-color );
    color: #FFF;
}

    .btn-action:hover, .btn-action:focus, .btn-action:active {
        background-color: transparent;
        border-color: #E22C3f;
        color: #E22C3f;
        box-shadow: none;
    }


/* Link Action 								*/
.btn-link-action {
    color: var( --main-danger-color);
    color: #E22C3f;
    background-color: transparent;
}

    .btn-link-action:hover, .btn-link-action:focus, .btn-link-action:active {
        background-color: #E22C3f;
        color: #FFF;
        box-shadow: none;
    }

/* Action : Read More button	*/
.btn-more {
    line-height: 1rem;
    padding: .375rem .75rem;
    font-size: 1rem;
    letter-spacing: 1.5px;
}


/* Call to Action 						*/
.btn-cta {
    background-color: #D9D9D9;
    border-color: #D9D9D9;
    border: 0;
    border-left: 3px solid #E22C3f;
    color: #0B2438;
}

    .btn-cta:hover, .btn-cta:focus, .btn-cta:active {
        background-color: #E22C3f;
        border-color: #E22C3f;
        box-shadow: none;
        color: #FFF;
    }

/* Components 									*/

/* Icons Utils */
.rounded-bg-icon {
    width: 4rem;
    height: 4rem;
    background-color: #fff;
    border-radius: 50%;
    margin: 0 1rem
}

/* Accordion 									*/

.accordion .card, .accordion .card-header {
    background-color: #fff;
    color: #0B2438;
    border: 0;
}

    .accordion .card .card-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

        .accordion .card .card-header .card-header-info,
        .accordion .card-header .card-title {
            font-size: 1.5rem;
            font-family: "Montserrat SemiBold", sans-serif;
            display: flex;
            align-items: center;
        }

    .accordion .card .collapse.show {
        border-top: 1px solid #D1D1D1;
    }

.accordion .card-body {
    font-family: "Montserrat Regular", sans-serif;
    font-size: 1.5rem;
    border: 0;
    padding: 2rem
}

.accordion .card-header .btn {
    transform: rotate(180deg);
    transition: transform .3s ease;
    padding: 0
}

    .accordion .card-header .btn.collapsed {
        transform: rotate(0);
        transition: transform .3s ease;
    }

    .accordion .card-header .btn .paris-icon {
        fill: #0B2438;
    }

.accordion .card-header:hover .btn .paris-icon {
    fill: #E22C3f;
}

/* Gray style							 	*/
.accordion .primary,
.accordion .primary .card-header {
    background-color: #f0f0f0;
    border: 0;
}

    .accordion .primary .collapse.show {
        border-top: 1px solid #C3C3C3;
    }

/* Info style 								*/
.accordion .card.info,
.accordion .card.info .card-header {
    background-color: var( --main-info-color);
    background-color: #354BCF;
    color: #FFF;
    border-bottom-color: var( --border-accordion-color);
    border-bottom-color: #8794e2;
}

    .accordion .card.info .card-header {
        padding: 0.8rem 2rem;
        height: 8.5rem;
    }

        .accordion .card.info .card-header .card-header-info,
        .accordion .card.info .card-header .card-title {
            font-family: "Montserrat", Arial, sans-serif;
            font-weight: 700;
            color: #FFF;
        }

            .accordion .card.info .card-header .card-header-info .rounded-bg-icon {
                padding: 1rem 1.8rem;
                margin-right: inherit;
            }

            .accordion .card.info .card-header .card-header-info .paris-icon {
                fill: #354BCF;
            }

    .accordion .card.info .collapse.show {
        border-top: 1px solid #8794e2;
        ;
    }

    .accordion .card.info .card-header .btn .paris-icon {
        fill: #FFF;
    }

    .accordion .card.info .card-header:hover .btn .paris-icon {
        fill: #FFF;
    }

    .accordion .card.info .card-header .card-header-info {
        color: #fff;
    }

        .accordion .card.info .card-header .card-header-info + .card-header-separator {
            border-right: 1px solid var( --border-accordion-color);
            border-right: 1px solid #8794e2;
            padding: 2.8rem;
        }

        .accordion .card.info .card-header .card-header-info.no-collapse {
            border-right: 0;
            width: 100%;
        }
/* 
.accordion .card.info .card-body{
	font-family: "Montserrat Light", sans-serif;
	padding: 2rem
} */

/*** 	Alert 			***/
.alert {
    border-radius: 0;
    border: 0;
    color: #fff;
    padding: 2rem;
    height: 8.5rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

    .alert:not(.alert-dismissible) {
        justify-content: flex-start;
    }

    .alert .alert-text {
        max-width: 90%;
    }

    .alert .close {
        border-left: 1px solid rgba(255, 255, 255, 0.5);
        opacity: 1;
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 2.6rem 3rem;
        margin-top: 1rem;
    }

        .alert .close .paris-icon {
            fill: #FFF;
            color: #fff;
            width: 1.32rem;
            height: 1.32rem;
        }

@media (min-width: 767px) {
    .alert .rounded-bg-icon {
        margin-right: 3rem
    }
}

.alert-primary {
    background-color: var( --main-info-color);
    background-color: #354BCF;
}

    .alert-primary .rounded-bg-icon {
        padding: 1rem 1.8rem;
    }

    .alert-primary .paris-icon {
        fill: #354BCF;
    }

.alert-danger {
    background-color: var( --main-info-color);
    background-color: #E22C3f;
}

    .alert-danger .rounded-bg-icon {
        padding: 1.1rem;
    }

    .alert-danger .paris-icon {
        fill: #e22b3f;
        stroke: #e22b3f;
        stroke-width: 2px;
    }

.alert-warning {
    background-color: var( --main-info-color);
    background-color: #D14800;
}

    .alert-warning .rounded-bg-icon {
        padding: 1.3rem 1.8rem;
        border-radius: 0;
        clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
    }

    .alert-warning .paris-icon {
        fill: #D14800;
    }

.alert-success {
    background-color: var( --main-info-color);
    background-color: #248619;
}

    .alert-success .rounded-bg-icon {
        padding: 1rem 0.8rem;
    }

    .alert-success .paris-icon {
        fill: #248619;
    }

/** info-step **/
.info-step li {
    position: relative;
}

    .info-step li div, .info-step li figure {
        width: 117px;
        width: 11.7rem;
        height: 117px;
        height: 11.7rem;
        border-radius: 50%;
        background-color: #0B2438;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .info-step li.step-current div {
        background-color: var( --main-info-color);
    }

    .info-step li::after {
        width: 75%;
        content: '';
        position: absolute;
        top: 33%;
        left: -80%;
        z-index: -1;
        border-top: 1px dotted #7d7d7d;
    }

    .info-step li:first-child::after {
        border: 0;
    }

    .info-step li div::before {
        content: attr(data-idx);
        position: absolute;
        top: -1rem;
        left: 1rem;
        width: 3.3rem;
        height: 3.3rem;
        border-radius: 50%;
        background-color: #FFCD00;
        color: #0B2438;
        font-family: 'Montserrat';
        font-weight: 500;
        font-size: 1.6rem;
        text-align: center;
        vertical-align: bottom;
        padding-top: 0.6rem;
    }

    .info-step li div span {
        font-family: 'Montserrat';
        font-weight: 600;
        font-size: 4rem;
        text-align: center;
        color: #fff
    }
    /* 
.info-step li figure {
	border-radius: 50%;
	background-color: #0B2438;
	width: 117px;
	height: 117px;
	display: flex;
	align-items: center;
	justify-content: center;
} */

    .info-step li p {
        max-width: 50%;
        text-align: center;
    }

/** Pagination 		**/
.page-item {
    display: flex;
    align-items: center;
    margin-left: 18px;
}

    .page-item .page-link {
        font-family: 'Montserrat';
        font-weight: 300;
        font-size: 1.2rem;
        color: #0B2438;
        background-color: transparent;
        border-radius: 50% !important;
        border: 0;
        text-decoration: none;
        line-height: normal;
        padding: 1rem 1.3rem;
    }

.page-link:hover, .page-link:focus, .page-link:active {
    box-shadow: none;
    background-color: rgba(7, 31, 50, 0.1);
}

.page-item .page-link svg {
    fill: #0B2438;
    stroke: #0B2438;
    stroke-width: 2px;
    width: 9.638px;
    height: 15.153px;
}

.page-item.disabled .page-link {
    background-color: transparent;
}

    .page-item.disabled .page-link svg {
        fill: #a1a1a1;
        stroke: #a1a1a1;
    }

.page-item.active .page-link {
    color: #fff;
    background-color: #0B2438;
    padding: 0.7rem 1.1rem;
    width: 30px;
    height: 30px;
}

    .page-item.active .page-link.first-page-link {
        color: #fff;
        background-color: #0B2438;
        padding: 0.75rem 1.3rem;
        width: 30px;
        height: 30px;
    }

    .page-item.active .page-link.double-digit {
        padding: 0.7rem 0.9rem;
    }

/* Nav Tabs */
.nav-tabs {
    border-bottom: 0;
}

.nav-border {
    border-bottom: 1px solid #A1A1A1;
}

.nav-tabs .nav-item {
    padding: 20px 20px 1px 20px;
}

    .nav-tabs .nav-item .nav-link {
        font-family: 'Montserrat';
        font-weight: 900;
        color: #0B2438;
        border: none;
        border-radius: none;
    }

        .nav-tabs .nav-item .nav-link:hover {
            color: rgba(7, 31, 50, 0.8);
        }

    .nav-tabs .nav-item.show .nav-link, .nav-tabs .nav-link.active {
        border-bottom: 5px solid #354BCF;
        padding-bottom: 1.8rem;
        background-color: transparent;
    }

.nav-tabs.background .nav-item .nav-link {
    color: #FFF;
}

    .nav-tabs.background .nav-item .nav-link svg {
        vertical-align: top;
    }

.nav-tabs.bordered {
    border-bottom: 1px solid #D9D9D9;
}

.tab-pane {
    padding: 2rem;
}

/** Portlet Article 					**/
.portlet header h1 {
    margin-top: 3rem;
    margin-bottom: 2rem
}

.portlet header h2 {
    margin: 1.5rem auto;
}

.portlet .article-content .container {
    padding-left: 3rem;
    padding-right: 3rem;
}

.portlet .article-content hr {
    border-top: 5px solid #F0F0F0;
    margin-top: 2rem;
}

.portlet .article-content li {
    padding: 0.5rem 2rem;
}

/* Custom Elements 							*/
/* Arrow ending link list					*/
.custom-list {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

    .custom-list li {
        border-top: 1px solid #f0f0f0;
        position: relative;
        height: 60px;
        padding-top: 18px;
    }

        .custom-list li a {
            font-family: 'Montserrat SemiBold';
            font-size: 1.5rem;
            color: #0B2438;
            text-decoration: none;
            width: 100%;
            height: 100%;
            display: inline-block;
            z-index: 99;
            position: relative;
        }

    .custom-list.list-arrow li::after {
        content: url(data:image/svg+xml,%0A%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2213.459%22%20height%3D%2213.512%22%20viewBox%3D%220%200%2013.459%2013.512%22%3E%3Cpath%20d%3D%22M20.635%2C13%2C17.569%2C9.933l1.414-1.414%2C5.476%2C5.476-5.476%2C5.476-1.414-1.414L20.625%2C15H13v7.031H11V13Z%22%20transform%3D%22translate%28-11%20-8.519%29%22%2F%3E%3C%2Fsvg%3E);
        padding: 12px 15px;
        position: absolute;
        top: 1rem;
        height: 42px;
        width: 42px;
        background-color: #f1e4e5;
        border-radius: 50%;
        right: 0;
    }

    .custom-list.list-arrow li:hover::after {
        content: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2213.459%22%20height%3D%2213.512%22%20viewBox%3D%220%200%2013.459%2013.512%22%3E%3Cdefs%3E%3Cstyle%3E.a%7Bfill%3A%23FFF%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cpath%20class%3D%22a%22%20d%3D%22M20.635%2C13%2C17.569%2C9.933l1.414-1.414%2C5.476%2C5.476-5.476%2C5.476-1.414-1.414L20.625%2C15H13v7.031H11V13Z%22%20transform%3D%22translate%28-11%20-8.519%29%22%20%2F%3E%3C%2Fsvg%3E);
        background-color: #E22C3f;
    }

    .custom-list.list-files li::after {
        content: url(data:image/svg+xml,%0A%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2213.459%22%20height%3D%2213.512%22%20viewBox%3D%220%200%2013.459%2013.512%22%3E%3Cpath%20d%3D%22M20.635%2C13%2C17.569%2C9.933l1.414-1.414%2C5.476%2C5.476-5.476%2C5.476-1.414-1.414L20.625%2C15H13v7.031H11V13Z%22%20transform%3D%22translate%28-11%20-8.519%29%22%2F%3E%3C%2Fsvg%3E);
        padding: 12px 15px;
        position: absolute;
        top: 1rem;
        height: 42px;
        width: 42px;
        background-color: #f1e4e5;
        border-radius: 50%;
        right: 0;
    }

    .custom-list.list-files li:hover::after {
        content: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2213.459%22%20height%3D%2213.512%22%20viewBox%3D%220%200%2013.459%2013.512%22%3E%3Cdefs%3E%3Cstyle%3E.a%7Bfill%3A%23FFF%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cpath%20class%3D%22a%22%20d%3D%22M20.635%2C13%2C17.569%2C9.933l1.414-1.414%2C5.476%2C5.476-5.476%2C5.476-1.414-1.414L20.625%2C15H13v7.031H11V13Z%22%20transform%3D%22translate%28-11%20-8.519%29%22%20%2F%3E%3C%2Fsvg%3E);
        background-color: #E22C3f;
    }

/* 
.custom-list.list-files li::after{
	content: '\f063';
	font-family: 'FontAwesome';
	font-size: 1.5rem;
	position: absolute;
	right: 0;
	top: 1rem;
	padding: 1rem 1.8rem; 
	background-color: #f1e4e5;
	border-radius: 50%;
} */

/* Modal */
.cmodal .modal-header {
    padding-left: 0;
    padding-bottom: 2rem;
}

    .cmodal .modal-header .close {
        position: absolute;
        top: 3rem;
        right: 3rem;
        opacity: 1;
    }

        .cmodal .modal-header .close .paris-icon {
            fill: #000;
        }

.cmodal .modal-content {
    padding: 6rem;
}

.cmodal .modal-body {
    padding: 0;
    padding-top: 3rem;
    font-family: 'Montserrat Regular';
    font-size: 1.5rem;
}

.cmodal .modal-footer {
    border: 0;
    padding: 0;
    padding-top: 3rem;
}

/** Table 							**/
.ctable {
    color: #0B2438;
    border-collapse: separate;
    border-spacing: 0;
}

    .ctable thead th {
        border: 0;
        font-size: 1.2rem;
        font-weight: 700;
        text-transform: uppercase;
        padding: 20px;
    }

    .ctable tbody {
        background-color: #F0F0F0;
    }

        .ctable tbody td {
            color: #0B2438;
            font-size: 1.1rem;
            font-weight: 300;
            padding: 20px;
            border: 0;
            border-right: 1px solid #C3C3C3;
            border-bottom: 1px solid #FFF;
            position: relative;
            vertical-align: middle;
        }

            .ctable tbody td:last-child {
                border-right: 0;
            }

    .ctable tr:nth-child(2n+1) td:first-of-type::before {
        content: '';
        background-color: #354BCF;
        width: 6px;
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
    }

    .ctable tr:nth-child(even) td:first-of-type:before {
        content: '';
        background-color: #0B2438;
        width: 6px;
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
    }

    .ctable td.button {
        background-color: #354BCF;
        border: 0;
        border-bottom: 1px solid #FFF;
        font-family: 'Montserrat Medium';
        color: #fff
    }

        .ctable td.button:hover {
            cursor: pointer;
        }

        .ctable td.button .paris-icon {
            fill: #fff;
            stroke: #fff;
            stroke-width: 0.5px;
            width: 20px;
            width: 2rem;
            height: 20px;
            height: 2rem;
        }

/* CRM Styles									
.table-bordered{
	border-top: 0;
}

.table-bordered tr:hover{	
cursor: pointer;
}

.table-bordered td {
	border: 0;
	border-top: 1px solid #E7E7E7;
}

.table-bordered .crm-demand-head{
	border-bottom: 1px solid #E7E7E7;
}

.table-bordered .crm-demand-head.selected{
	border-bottom: 0;
	padding-bottom: 0;
	margin-bottom: 0
}

.table-bordered .sub td{
	padding: 0 auto;
	border-top: 0;
	border-bottom: 1px solid #E7E7E7;
}

.table-bordered .sub td .media{
	padding: 10px 0;
	border-top: 1px solid #E7E7E7;
} */

/** Pages				 						**/
.page-bordered {
    border-top: 2px solid #CCC;
    min-height: 85vh;
}

/** Forms 										**/
/* BS4 - Override								 */
.form-control, .form-control::placeholder, .form-group .form-text, .form-row .form-text, .custom-select {
    font-family: "Montserrat", Arial, sans-serif;
}


.form-group {
    padding: 0.8rem 0
}

    .form-group label {
        display: block;
    }

    .form-group label, .form-row label, .form-group .form-text {
        font-family: "Montserrat SemiBold", Arial, sans-serif;
        font-size: 1.4rem;
    }

        .form-group label > abbr, .form-row label > abbr {
            text-decoration: none;
        }

    .form-group .form-text, .form-row .form-text {
        font-size: 1.3rem;
        margin-top: 0.8rem;
    }

        .form-group .form-text.text-muted, .form-row .form-text.text-muted {
            font-family: 'Montserrat Regular', Arial, sans-serif;
        }

.form-control {
    height: 4.8rem;
    font-size: 1.3rem;
    line-height: 2.5rem;
    ;
    background-color: var( --white-color );
    background-color: #FFF;
    border: 1px solid #C3C3C3;
    border-radius: 0;
    color: #0B2438
}

    .form-control::placeholder {
        color: #9C9C9C;
        font-style: italic;
    }

    .custom-select:focus, .form-control:focus {
        box-shadow: none;
        border-color: #354BCF;
        border-Width: 2px;
    }

/* custom select  */
.custom-select {
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='5 -6 32 45'%3e%3cpath fill='%23354BCF' d='M16 16.172l4.586-4.586 2.828 2.828L16 21.828l-7.414-7.414 2.828-2.828z'/%3e%3c/svg%3e") no-repeat right center;
}

    .custom-select:disabled {
        color: #495057;
    }

    .custom-select:hover, .custom-select > option:hover {
        cursor: pointer;
    }

    .custom-select option,
    .custom-select optgroup {
        padding: 2rem 0;
    }

    .custom-select optgroup, .custom-select > option:hover, .custom-select > option:active, .custom-select > option:focus, .custom-select > option:focus-within, .custom-select > option:checked {
        background-color: #F0F0F0;
    }

    .custom-select label {
        background: transparent
    }

/* Input Groups 			*/
.input-group > .form-control-alternate {
    padding-top: 5px;
    padding-bottom: 5px;
}


.input-group-append .input-group-text {
    color: #0B2438;
    background-color: #FFF;
    border: 1px solid #C3C3C3;
    border: 0;
    border-radius: 0;
    position: absolute;
    right: 0.5rem;
    top: 1rem;
    z-index: 90;
    font-size: 1.6rem;
    font-family: 'Montserrat Medium', Arial, sans-serif;
}

.input-group-append .paris-icon {
    position: relative;
    fill: #0B2438;
    z-index: 99;
    width: 2rem;
    height: 2.2rem;
}

    .input-group-append .paris-icon.paris-icon-eye {
        padding-top: 0.5rem;
    }

    .input-group-append .paris-icon.paris-icon-calendar {
        padding: 0;
    }

    .input-group-append .paris-icon:hover {
        cursor: pointer
    }


.custom-control-input ~ .custom-control-label::before {
    border-color: #0B2438;
    background-color: transparent;
    color: var( --white-color );
    color: #FFF;
    font-size: 1.5rem;
}

.custom-control-input:checked ~ .custom-control-label::before {
    border-color: #354BCF;
    background-color: #354BCF;
}

.custom-control-input:hover ~ .custom-control-label::before {
    border-color: #1A1A1A;
    border-width: 2px;
}

.custom-control-input:not(:disabled):active ~ .custom-control-label::before {
    color: var( --white-color );
    color: #FFF;
    background-color: #0B2438;
    border-color: #0B2438;
}

.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
    border-color: #0B2438;
}

.custom-control-input:focus ~ .custom-control-label::before {
    box-shadow: none;
}

.custom-checkbox .custom-control-input ~ .custom-control-label,
.custom-radio .custom-control-input ~ .custom-control-label {
    font-family: "Montserrat Regular", Arial, sans-serif;
    font-size: 1.3rem;
}

    .custom-checkbox .custom-control-input ~ .custom-control-label:hover,
    .custom-radio .custom-control-input ~ .custom-control-label:hover {
        font-weight: 600;
    }

.custom-checkbox .custom-control-input:checked ~ .custom-control-label,
.custom-radio .custom-control-input:checked ~ .custom-control-label {
    color: #354BCF;
    font-weight: 600;
}

/* Radio Button + checkbox				**/
.custom-radio, .custom-checkbox {
    min-height: 1.6rem;
}

    .custom-checkbox .custom-control-label, .custom-radio .custom-control-label {
        padding-left: 0.5rem;
        padding-top: 0.25rem;
        /* font-family: "Montserrat Light", Arial, sans-serif; */
    }

    .custom-checkbox .custom-control-input ~ .custom-control-label::before {
        border-radius: 0;
    }

.custom-control-label::before, .custom-control-label::after {
    width: 1.5rem;
    /* left: -1.45rem; */
    top: .30rem;
}

.custom-file.fileinput-button .custom-file-label::after {
    color: #FFF;
    background-color: #E22C3f;
    border-color: #E22C3f;
}

/*** custom-file error  				  **/
.custom-file ~ .progress ~ .invalid-feedback {
    display: block;
}

.file-input {
    margin-top: 1rem;
    width: 100%;
    height: 100%;
    padding: 2rem;
    background-color: #f3f5fc;
    border: 2px dashed #354BCF;
    border-radius: 1rem;
    text-align: center;
}

.formsAsynchronousUploadHandler {
    width: 100%;
    height: 100%;
}

.file-input.fileinput-button .btn {
    font-size: 1.6rem;
    font-weight: 600;
    padding: 0 0 0.3rem;
}

.file-input.fileinput-button p {
    font-size: 1.6rem;
    font-weight: 500;
}

.file-input .paris-icon-download {
    transform: rotate(180deg);
    background-color: #354BCF;
    border-radius: 50%;
    width: 55px;
    height: 54px;
    width: 5.5rem;
    height: 5.4rem;
}

.files-group {
    display: flex;
    flex-wrap: wrap;
    padding-left: 0
}

.files-item {
    flex-basis: 50%;
    position: relative;
}

/* Two columns */
.d-flex .files-item {
    flex-basis: 100%;
}

.d-flex .file-input.fileinput-button {
    margin-right: 2rem;
}


.files-item input[type="checkbox"] {
    position: absolute;
    left: -9999999px
}

    .files-item input[type="checkbox"]:checked + .files-item-link {
        font-weight: bold;
    }

.files-item-label {
    border-bottom: 1px solid #DDD;
    margin-bottom: 1.2rem
}

.files-item-link {
    padding: 1rem;
    text-transform: lowercase;
    background: url(../images/files.png ) no-repeat;
    text-overflow: clip;
    display: inline-block;
    width: 30rem;
}

    .files-item-link::before {
        content: attr(data-type);
        color: #000;
        font-family: 'Montserrat', Arial, sans-serif;
        font-size: 1.5rem;
        font-weight: 700;
        text-transform: uppercase;
        position: absolute;
        top: 1rem;
        left: 0.1rem;
        width: 3.5rem;
        white-space: nowrap;
        overflow: hidden;
    }

    .files-item-link span {
        padding-left: 5rem;
        text-overflow: clip;
        display: inline-block;
        /* width: 20rem; */
        top: -1rem;
        position: relative;
    }

.files-item-label small {
    padding-left: 6rem;
    color: #A1A1A1;
    position: relative;
    top: -2rem;
    font-weight: 200
}

/*** Check no input 						**/
#form-validate {
    overflow: hidden;
}

/*** Check no input 						**/
.form-check-noinput {
    position: absolute;
    left: -99999px;
}

.file-input input[type="file"] {
    padding: 0;
}

/*** Ocr file  								**/
/* .ocr-file{
	margin-top: 60px;
}

.ocr-file .custom-file-label span{
	position: absolute;
	top: -55px;
	left: 0;
	color: #212529;
}

.ocr-file .custom-file-label:after{
	content: "Parcourir";
} */

/*** 	Switch 								***/
.switch {
    font-size: 1rem;
    position: relative;
}

    .switch input {
        position: absolute;
        height: 1px;
        width: 1px;
        background: none;
        border: 0;
        clip: rect(0 0 0 0);
        clip-path: inset(50%);
        overflow: hidden;
        padding: 0;
    }

        .switch input + label {
            position: relative;
            min-width: calc(calc(2.375rem * .8) * 2);
            border-radius: calc(2.375rem * .8);
            height: calc(2.375rem * .8);
            line-height: calc(2.375rem * .8);
            display: inline-block;
            cursor: pointer;
            outline: none;
            user-select: none;
            vertical-align: middle;
            text-indent: calc(calc(calc(2.375rem * .8) * 2) + .5rem);
        }

            .switch input + label::before,
            .switch input + label::after {
                content: '';
                position: absolute;
                top: 0;
                left: 0;
                width: calc(calc(2.375rem * .8) * 2);
                bottom: 0;
                display: block;
            }

            .switch input + label::before {
                right: 0;
                background-color: #0B2438;
                border-radius: calc(2.375rem * .8);
                transition: 0.2s all;
            }

            .switch input + label::after {
                top: 2px;
                left: 2px;
                width: calc(calc(2.375rem * .8) - calc(2px * 2));
                height: calc(calc(2.375rem * .8) - calc(2px * 2));
                border-radius: 50%;
                background-color: white;
                transition: 0.2s all;
            }

        .switch input:checked + label::before {
            background-color: #248619;
        }

        .switch input:checked + label::after {
            margin-left: calc(2.375rem * .8);
        }

        .switch input:focus + label::before {
            outline: none;
            box-shadow: 0 0 0 0.2rem rgba(0, 136, 221, 0.25);
        }

        .switch input:disabled + label {
            color: #868E96;
            cursor: not-allowed;
        }

            .switch input:disabled + label::before {
                background-color: #E9ECEF;
            }

    .switch.switch-sm {
        font-size: 0.875rem;
    }

        .switch.switch-sm input + label {
            min-width: calc(calc(1.9375rem * .8) * 2);
            height: calc(1.9375rem * .8);
            line-height: calc(1.9375rem * .8);
            text-indent: calc(calc(calc(1.9375rem * .8) * 2) + .5rem);
        }

            .switch.switch-sm input + label::before {
                width: calc(calc(1.9375rem * .8) * 2);
            }

            .switch.switch-sm input + label::after {
                width: calc(calc(1.9375rem * .8) - calc(2px * 2));
                height: calc(calc(1.9375rem * .8) - calc(2px * 2));
            }

        .switch.switch-sm input:checked + label::after {
            margin-left: calc(1.9375rem * .8);
        }

    .switch.switch-lg {
        font-size: 1.25rem;
    }

        .switch.switch-lg input + label {
            min-width: calc(calc(3rem * .8) * 2);
            height: calc(3rem * .8);
            line-height: calc(3rem * .8);
            text-indent: calc(calc(calc(3rem * .8) * 2) + .5rem);
        }

            .switch.switch-lg input + label::before {
                width: calc(calc(3rem * .8) * 2);
            }

            .switch.switch-lg input + label::after {
                width: calc(calc(3rem * .8) - calc(2px * 2));
                height: calc(calc(3rem * .8) - calc(2px * 2));
            }

        .switch.switch-lg input:checked + label::after {
            margin-left: calc(3rem * .8);
        }

    .switch + .switch {
        margin-left: 1rem;
    }

/* DatePicker */
.bootstrap-datetimepicker-widget.dropdown-menu {
    width: auto !important;
}

.form-submited {
    margin: 3rem 15%;
}

/*  Summary of a submission 					 */
#summary_validate .card > .card-heading {
    position: relative;
}

    #summary_validate .card > .card-heading > .card-title {
        margin-left: 30px;
        position: relative;
    }

        #summary_validate .card > .card-heading > .card-title:before {
            content: "\f00c";
            font-family: "FontAwesome";
            position: absolute;
            top: 0;
            left: -4rem;
            border-radius: 50%;
            padding: 1rem;
            background-color: #0C518A;
            border-color: #0C518A;
            color: var( --white-color );
            color: #FFF;
            font-size: 1.3rem;
            font-weight: normal;
        }

#summary_validate .summary_actions {
    position: sticky;
    bottom: 0;
    background-color: #FFF;
}

    #summary_validate .summary_actions.actions_shadow {
        box-shadow: 0px -5px 5px 0px rgba(0,0,0,0.6);
    }

/* 		Form Steps 									*/
/* 		Steps Commons	 							*/
.step-title {
    border-bottom: 2px solid #C3C3C3;
    border-bottom: 2px solid var( --gray-light-color );
    height: 10rem;
    display: flex;
    align-items: center;
}

    /* 		Step-group 									*/
    .step-title h1, .step-group h1 {
        font-size: 3.2rem;
    }

.step-group h1 {
    margin-bottom: 0.8rem;
}

.step-title h1 {
    color: #0B2438;
    display: flex;
    align-items: center;
}

    /* 		Step Title Icon / Number				 */
    .step-title h1 span {
        border: 4px solid var( --main-color );
        border: 4px solid #0B2438;
        border-radius: 100%;
        margin-right: 2rem;
        height: 60px;
        height: 6rem;
        width: 60px;
        width: 6rem;
        background: none;
        text-align: center;
        line-height: 5rem;
    }

/* Previous Steps  									*/
.step-done {
    margin-bottom: 2rem;
    border-top: 1px solid #C3C3C3;
    border-top: 1px solid var( --gray-light-color );
}

    .step-done .step-title {
        border-bottom: 0;
    }

        .step-done .step-title h1 span {
            background: #0B2438 url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3e%3cpath fill='%23FFF' d='M 11.516602,1.7578123 5.0205081,8.2539061 2.5107424,5.6718748 0.50293,7.6230467 4.9931643,12.242188 13.49707,3.7382811 Z'/%3e%3c/svg%3e") no-repeat center center;
            background-size: 3.2rem;
        }

    .step-done strong {
        font-family: 'Montserrat', Arial, Helvetica, sans-serif;
        font-weight: 500;
        line-height: 1.5rem;
    }

    .step-done .step-done-hide {
        display: none;
    }

/** 		Current Step 								**/
.step.current {
    background-color: #F2F2F2;
    background-color: var( --white-strong-color );
    border-bottom: 2px solid #C3C3C3;
    border-bottom: 2px solid var( --gray-light-color );
}

    .step.current .step-title {
        background-color: #0B2438;
    }

        .step.current .step-title h1 {
            color: #FFF;
            position: relative;
        }

            .step.current .step-title h1 span {
                font-family: 'Montserrat Black', Arial, sans-serif;
                font-size: 2.7rem;
                color: #FFF;
                border: 4px solid #FFF;
            }
            /* Arrow */
            .step.current .step-title h1::after {
                content: '';
                width: 0;
                height: 0;
                position: absolute;
                border-top: 2.3rem solid #0B2438;
                border-bottom: 1.1rem solid transparent;
                border-left: 5rem solid transparent;
                border-right: 5rem solid transparent;
                left: 50%;
                bottom: -5.45rem;
                margin-left: -5rem;
            }

    /* 	Current Step Content							*/
    .step.current .step-content .mandatory-info {
        font-family: "Montserrat", Arial, sans-serif;
        font-weight: 700;
        font-size: 1.5rem;
        height: 8.5rem;
        padding-left: 2.5rem;
        margin-top: 10rem;
        color: #fff;
    }

        .step.current .step-content .mandatory-info span {
            padding-left: 2.5rem;
        }

    /* 	Current Step Group								*/
    .step.current .step-content .step-group {
        position: relative;
        background-color: var( --white-color );
        background-color: #FFF;
        border-radius: 0;
        padding: 40px 25px 15px 25px;
        padding: 4rem 2.5rem 1.5rem 2.5rem;
        margin: 5px;
        margin: 2.4rem 0.5rem;
    }

        .step.current .step-content .step-group header h1 {
            border-bottom: 0.6rem solid #f2f2f2;
            padding-bottom: 1.3rem
        }


/* Ensure group iteration can be scrolled to the top of the screen */
a[name^="last_"]:before {
    content: "\00a0";
    position: absolute;
    height: 100vh;
}


/* Small devices (landscape phones, 576px and up) 			*/
/* Extra small devices (portrait phones, less than 576px) 	*/
@media (max-width: 575.98px) {
    /* BS items override */
    h1 {
        font-size: 2rem;
    }

    figure {
        margin-bottom: 0;
    }

    /* Buttons */
    .btn-link {
        font-size: 0.8rem;
    }

    /* Form */
    .form-control::placeholder {
        font-size: 1rem;
    }

    .form-row .form-group {
        width: 100%;
    }

    /* Responsive table */
    .table {
        width: 100%;
        border-collapse: collapse;
    }

        .table thead {
            display: none
        }

    .table-bordered td {
        display: block;
        border: 0;
    }

        .table-bordered td::before {
            content: attr(data-label);
            width: 30%;
            padding-left: 15px;
        }

    .table-bordered .sub > td::before {
        content: '';
        width: auto;
        padding-left: 0;
    }

    /* Pages 	*/
    .input-group > .form-control {
        font-size: 0.62em;
        padding: inherit;
        padding-left: 5px;
    }

    /** End BS			 						**/
    /* 	Banner 									 */

    .banner {
        height: 10vh;
        margin-top: 56px;
    }

        .banner h1 {
            margin-left: 0;
            font-size: 2rem;
        }

    /* Footer									*/
    footer {
        position: relative;
    }

        footer.social .main-footer {
            margin-top: 0;
        }

        footer .nav {
            flex-direction: row;
            flex-wrap: nowrap;
            flex-basis: 100%;
        }

            footer .navbar .navbar-brand, footer .nav .nav-item .nav-link {
                text-align: center;
                margin: 0 auto;
                width: 100%;
            }

        footer .nav-link:hover {
            border-bottom: none;
            padding-bottom: 0.5rem;
            text-decoration: underline
        }

    .nef {
        display: none;
    }

    /* Content */
    .info-step li div, .info-step li figure {
        width: 56px;
        width: 5.6rem;
        height: 56px;
        height: 5.6rem;
    }

        .info-step li div::before {
            width: 23px;
            width: 2.3rem;
            height: 23px;
            height: 2.3rem;
            padding-top: 0.3rem;
        }

    .info-step li::after {
        width: 30%;
        top: 28%;
        left: -15%;
    }

    .step-title h2 {
        font-size: 1rem;
        margin-left: 0.5rem;
    }

        .step-title h2 span {
            font-size: 1rem;
        }

    .step-title.current h2::after {
        left: 50%;
    }

    /* cTable */
    .ctable, .ctable, .ctable thead, .ctable tbody, .ctable tr, .ctable td {
        display: block;
        position: relative;
    }

        .ctable tr::after {
            clear: both;
            content: '';
            display: table;
        }

        .ctable th {
            display: none;
        }

        /* Collapsible table */
        .ctable.xs-collapsed td {
            display: none;
        }

            .ctable.xs-collapsed td:first-child {
                display: block;
            }

                .ctable.xs-collapsed td:first-child:after {
                    content: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2232%22%20height%3D%2232%22%20viewBox%3D%220%200%2032%2032%22%3E%3Cpath%20d%3D%22M16%2016.172l4.586-4.586%202.828%202.828L16%2021.828l-7.414-7.414%202.828-2.828z%22%2F%3E%3C%2Fsvg%3E);
                    position: absolute;
                    right: 1rem;
                    top: 1rem;
                    transform: rotate(0);
                    transition: transform 0.15s ease-out;
                }

            .ctable.xs-collapsed td.open:after {
                content: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2232%22%20height%3D%2232%22%20viewBox%3D%220%200%2032%2032%22%3E%0A%20%20%20%20%3Cdefs%3E%3Cstyle%3E.a%7Bfill%3A%23354BCF%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%0A%20%20%20%20%3Cpath%20class%3D%22a%22%20d%3D%22M16%2016.172l4.586-4.586%202.828%202.828L16%2021.828l-7.414-7.414%202.828-2.828z%22%2F%3E%0A%3C%2Fsvg%3E);
                transform: rotate(180deg);
                transition: transform 0.15s ease-in;
            }

        .ctable td:first-child:hover {
            cursor: pointer;
        }

        .ctable tr:nth-child(2n) td:first-child {
            border-top: 4px solid #0B2438;
        }

        .ctable tr:nth-child(2n+1) td:first-child {
            border-top: 4px solid #354BCF;
        }

        .ctable td::before {
            content: attr( data-column-label ) !important;
            position: relative !important;
            width: auto !important;
            display: inline-block;
            padding-right: 1rem;
            font-family: 'Montserrat Bold', Arial, Helvetica, sans-serif;
            font-size: 1.1rem;
            font-weight: 700;
        }

        .ctable tr:nth-child(2n) td:first-of-type::before, .ctable tr:nth-child(2n+1) td:first-of-type::before {
            background-color: transparent;
        }

        .ctable tr td:first-of-type::before {
            background-color: transparent;
        }

        .ctable td span {
            display: inline-block;
        }

        .ctable td.button {
            background-color: transparent;
            text-align: center;
        }

            .ctable td.button span {
                background-color: #354BCF;
                padding: 1rem;
            }
}


/* Small devices (landscape phones, 576px and 768) */
@media (min-width: 576px) and (max-width: 1024px) {
    h1 {
        font-size: 2.5rem;
    }

    .form-control::placeholder {
        font-size: 0.8rem;
    }

    /* Steps */
    .info-step li div, .info-step li figure {
        width: 73px;
        width: 7.3rem;
        height: 73px;
        height: 7.3rem;
    }

        .info-step li div::before {
            width: 23px;
            width: 2.3rem;
            height: 23px;
            height: 2.3rem;
            padding-top: 0.3rem;
        }

    .info-step li::after {
        width: 30%;
        top: 28%;
        left: -15%;
    }

    /* Form Steps */
    .step-title h2 {
        font-size: 1.2rem
    }

    .step-title.current h2::after {
        left: 50%;
    }

    .navbar-nav.navbar-main {
        margin-right: 2em;
        margin-left: 2em;
    }
}

/* Medium devices (tablets, 1024px and up) */
@media (min-width: 1024px) and (max-width: 991.98px) {
    /* Main Menu */
    .main-header .navbar .navbar-brand .logo {
        margin-left: 1rem;
        height: 20px;
    }

    .main-header .navbar .navbar-brand span {
        font-size: 1.2rem;
        padding: 0 1.5rem;
    }

    .main-header .navbar-nav {
        margin: 0.5rem;
    }

        .main-header .navbar-nav .nav-link {
            font-size: 1.1rem;
            padding: 0.85rem 1rem;
        }

    /* Form Steps */
    .step-help {
        margin-left: 20px;
    }

        .step-help::after {
            left: 15px;
        }

    .step-title h2 {
        font-size: 1.35rem
    }
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) and (max-width: 1199.98px) {
    /* Main Menu */
    .main-header .navbar .navbar-brand .logo {
        margin-left: 1rem;
        height: 30px;
    }

    .main-header .navbar .navbar-brand span {
        font-size: 1.4rem;
        padding: 0 2rem;
    }

    .main-header .navbar-nav {
        margin: 0.5rem;
    }

        .main-header .navbar-nav .nav-link {
            font-size: 1.4rem;
            padding: 0.85rem 1.5rem;
        }

    .navbar-nav.navbar-main {
        margin-right: 2em;
        margin-left: 2em;
    }
}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) and (max-width: 1424.98px) {
    .main-header .navbar-nav .nav-link {
        padding: 0.85rem 1rem;
    }
}

/* Ipad */
@media only screen and (min-device-width : 1024px) and (max-device-width : 1024px) and (-webkit-min-device-pixel-ratio: 1) {
    .btn::after {
        content: "";
        display: none;
        position: relative;
        left: 0;
        top: 0;
        width: 0;
        transition: none;
        z-index: 1
    }
}

/* IE10+ specific styles go here */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .input-group > .form-control {
        padding-top: 5px;
    }
}

@media ( max-width: 1024px ) {
    /* Typo */
    h1 {
        font-size: 3.2rem
    }

    h2 {
        font-size: 2.6rem
    }

    h3 {
        font-size: 2rem
    }

    h4 {
        font-size: 1.8rem
    }

    h5 {
        font-size: 1.6rem
    }

    /* MENU MAIN */
    .main-header .navbar {
        justify-content: space-between;
    }

        .main-header .navbar .navbar-brand {
            justify-content: center;
            width: 80%
        }

            .main-header .navbar .navbar-brand hr, .main-header .navbar .navbar-brand span {
                display: none;
            }

            .main-header .navbar .navbar-brand .logo {
                height: 2.9rem;
            }

                .main-header .navbar .navbar-brand .logo.open {
                    filter: invert(100%) saturate(0%);
                }

    .main-header .navbar-nav .dropdown-menu,
    .main-header .navbar-nav .nav-link {
        padding: 1.5rem 0;
    }

    .main-header .navbar-nav .dropdown-item,
    .main-header .navbar-nav .dropdown-menu,
    .navbar-light .navbar-toggler {
        border: 0;
        position: static;
    }

    .main-header .navbar-nav {
        -ms-flex-direction: column;
        flex-direction: column;
    }

        .main-header .navbar-nav,
        .main-header .nav-item,
        .main-header .navbar-nav .nav-link:hover,
        .main-header .navbar-nav .nav-link,
        .main-header .dropdown-item,
        .main-header .navbar-nav .dropdown-item:hover,
        .main-header .active > .nav-link,
        .main-header .nav-link.active,
        .main-header .show > .nav-link,
        .main-header .nav-link.show,
        .main-header .navbar-nav .nav-link:focus::before,
        .main-header .navbar-nav .nav-link:hover::before {
            color: #FFF !important;
            height: auto;
            -webkit-box-align: flex-start;
            -ms-flex-align: flex-start;
            align-items: flex-start;
            justify-content: flex-start;
            border: 0;
            background-color: transparent;
        }

            .main-header .navbar-nav .nav-item.active .nav-link::before {
                left: -1.5rem;
                top: 10%;
                width: 4px;
                right: 0;
                height: 80%;
            }

            /* 
	.main-header .mon-paris .nav-item.active .nav-link::before {
		color: #354BCF
	} 
	*/

            .dropdown-item,
            .main-header .dropdown-item,
            .main-header .navbar-nav .dropdown-item,
            .main-header .navbar-nav .dropdown-item.active,
            .main-header .navbar-nav .dropdown-item:hover,
            .main-header .navbar-nav .dropdown-item span,
            .main-header .navbar-nav .dropdown-item.active span,
            .main-header .navbar-nav .dropdown-item span:hover,
            .main-header .navbar-nav .dropdown.show,
            .main-header .navbar-nav .dropdown.show .nav-link,
            .main-header .navbar-nav.mon-paris .dropdown.show .nav-link,
            .main-header .navbar-nav .dropdown-menu.show {
                background-color: transparent;
                border: 0;
                color: #fff;
            }

                /* 
	.main-header .navbar-nav.navbar-main{
		margin-top: 4.6rem
	} 
	*/

                .main-header .navbar-nav .nav-item,
                .main-header .navbar-nav .dropdown-item,
                .main-header .navbar-nav.mon-paris .nav-item,
                .main-header .navbar-nav .dropdown.show .nav-link,
                .main-header .navbar-nav.mon-paris .dropdown.show .nav-link,
                .main-header .navbar-nav.mon-paris .dropdown-menu .dropdown-item {
                    width: 100%;
                    position: relative;
                    padding: 1rem 0;
                    border-bottom: 2px solid #2c4051;
                    text-align: left;
                    display: inline-block
                }

            .main-header .navbar-nav,
            .main-header .navbar-nav .dropdown-item {
                padding: 0 1.7rem;
                margin-top: 0;
                margin-bottom: 0;
            }

                /* Mon Paris 				*/
                .main-header .navbar-nav.mon-paris {
                    width: 95%;
                }

    #dropdownMenuUser {
        display: flex;
        justify-content: space-between;
        width: 100%;
        margin-top: 0;
        padding: 1.8rem 0 2.2rem 0;
        border-bottom: 2px solid #2c4051;
    }

        #dropdownMenuUser span {
            padding-top: 0;
            color: #FFF;
        }

    .main-header .navbar-nav.mon-paris .nav-item {
        border-bottom: 0;
    }

    .main-header .navbar-nav.mon-paris .dropdown-menu,
    .main-header .navbar-nav.mon-paris .dropdown-menu .dropdown-item {
        padding: 1.4rem 0;
        background-color: #0B2438;
        padding-top: 0;
        margin-top: 0;
        margin-bottom: 0;
    }

        .main-header .navbar-nav.mon-paris .dropdown-menu .dropdown-content {
            display: block
        }

    .main-header .navbar-nav.mon-paris .nav-link,
    .main-header .navbar-nav.mon-paris .nav-link:hover,
    .main-header .navbar-nav.mon-paris .dropdown .dropdown-item:last-child {
        display: flex;
        justify-content: space-between;
    }

        .main-header .navbar-nav.mon-paris .dropdown .dropdown-item:last-child > span:first-child {
            order: 1;
        }

    .main-header .navbar-nav.mon-paris .dropdown-item,
    .main-header .navbar-nav.mon-paris .dropdown-item span,
    .main-header .navbar-nav.mon-paris .dropdown-item.active,
    .main-header .navbar-nav.mon-paris .dropdown-menu,
    .main-header .navbar-nav.mon-paris .dropdown-menu.show,
    .main-header .navbar-nav.mon-paris .dropdown-menu .dropdown-content,
    .main-header .navbar-nav.mon-paris .dropdown.show,
    .main-header .navbar-nav.mon-paris .dropdown.show .nav-link {
        width: 100%;
        color: #fff;
        background-color: #0B2438;
        border-color: #0B2438;
    }

    .main-header .navbar-nav.mon-paris .nav-link .user-logo,
    .main-header .navbar-nav.mon-paris .dropdown .nav-link .user-logo {
        order: 1;
        width: 28px;
        height: 28px;
        margin-top: -0.8rem;
    }

    .main-header .navbar-nav.mon-paris .dropdown-menu .dropdown-item span {
        padding: 1.4rem 0;
        border-bottom: 0;
        width: auto;
        display: inline-block
    }

    .main-header .navbar-nav.mon-paris .nav-item::after {
        content: '';
    }

    .main-header .navbar-nav.mon-paris .user-logo {
        filter: invert(100%) saturate(0%) contrast(200%)
    }

    .main-header .navbar-nav.mon-paris .dropdown-menu .dropdown-content {
        margin: 1.4rem 0;
    }

        .main-header .navbar-nav.mon-paris .dropdown-menu .dropdown-content .dropdown-item {
            padding-left: 5rem;
        }

    .main-header .navbar-nav.mon-paris .dropdown .dropdown-item:last-child > i:first-child {
        align-self: center;
        order: 1;
    }

    #navbarMainMenu::after {
        background: transparent url(../images/nef-bg-xs.svg) no-repeat 50% 50%;
        background-size: 38rem;
        content: "";
        display: block;
        height: 100%;
        left: 0;
        opacity: .7;
        pointer-events: none;
        position: absolute;
        top: 0;
        width: 100%;
        z-index: 1000;
    }

    /* 	Animated Burger Menu 	*/
    #navbar-icon {
        height: 4.6rem;
        width: 4.6rem;
        position: relative;
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
        -webkit-transition: .1s ease;
        -moz-transition: .1s ease;
        -o-transition: .1s ease;
        transition: .1s ease;
        cursor: pointer;
    }

        #navbar-icon span {
            display: block;
            position: absolute;
            height: .3rem;
            width: 2.2rem;
            background: #0B2438;
            opacity: 1;
            left: 0;
            -webkit-transform: rotate(0deg);
            -moz-transform: rotate(0deg);
            -o-transform: rotate(0deg);
            transform: rotate(0deg);
            -webkit-transition: .1s ease;
            -moz-transition: .1s ease;
            -o-transition: .1s ease;
            transition: .1s ease;
        }

            #navbar-icon span:nth-child(1) {
                -webkit-transform-origin: left center;
                -moz-transform-origin: left center;
                -o-transform-origin: left center;
                transform-origin: left center;
                top: 1.5rem;
            }

            #navbar-icon span:nth-child(2) {
                top: 2.2rem;
                -webkit-transform-origin: left center;
                -moz-transform-origin: left center;
                -o-transform-origin: left center;
                transform-origin: left center;
            }

            #navbar-icon span:nth-child(3) {
                top: 2.9rem;
                -webkit-transform-origin: left center;
                -moz-transform-origin: left center;
                -o-transform-origin: left center;
                transform-origin: left center;
            }

        #navbar-icon.open span {
            background: #FFF;
            left: 1.2rem;
        }

            #navbar-icon.open span:nth-child(1) {
                width: 0%;
                opacity: 0;
            }

            #navbar-icon.open span:nth-child(2) {
                -webkit-transform: rotate(45deg);
                -moz-transform: rotate(45deg);
                -o-transform: rotate(45deg);
                transform: rotate(45deg);
                top: 1.4rem;
            }

            #navbar-icon.open span:nth-child(3) {
                -webkit-transform: rotate(-45deg);
                -moz-transform: rotate(-45deg);
                -o-transform: rotate(-45deg);
                transform: rotate(-45deg);
                top: 3rem;
            }

    /* Offcanvas Menu 			*/
    .offcanvas-collapse {
        position: fixed;
        top: 0;
        bottom: 0;
        right: 0;
        left: 100%;
        width: 100%;
        padding-top: 5.6rem;
        overflow-y: auto;
        visibility: hidden;
        background-color: #0B2438;
        transition-timing-function: ease-in-out;
        transition-duration: .3s;
        transition-property: left, visibility;
        z-index: -1;
    }

        .offcanvas-collapse.open {
            left: 0;
            visibility: visible;
        }

    /* MENU TEST END */
}

@media ( min-width: 1024px ) {
    h1 {
        font-size: 4.6rem
    }

    h2 {
        font-size: 3.1rem
    }

    h3 {
        font-size: 2.2rem
    }

    h4 {
        font-size: 2rem
    }

    h5 {
        font-size: 1.8rem
    }

    /* Navbar-expand like */
    .navbar-paris {
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

        .navbar-paris .navbar-collapse {
            display: -ms-flexbox !important;
            display: flex !important;
            -ms-flex-preferred-size: auto;
            flex-basis: auto;
        }

        .navbar-paris .navbar-nav {
            -ms-flex-direction: row;
            flex-direction: row;
        }

        .navbar-paris .navbar-toggler {
            display: none;
        }

    .navbar-nav.navbar-main {
        margin-right: 2em;
        margin-left: 2em;
    }
}

/* bouton Aller sur mon */
.btn-moncompte {
    background-color: #df225a;
    border: medium none;
    border-radius: 5px;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    font-size: 15px;
    font-weight: 300;
    line-height: 20px;
    overflow: hidden;
    padding: 15px 20px;
    text-transform: uppercase;
    position: relative;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    z-index: 1;
    margin-top: 20px;
}

button.close {
    z-index: 1000;
}

button.close {
    -webkit-appearance: none;
    padding: 0;
    cursor: pointer;
    background: 0 0;
    border: 0;
}

.close {
    float: right;
    font-size: 21px;
    font-weight: 700;
    line-height: 1;
    color: #000;
    text-shadow: 0 1px 0 #fff;
    filter: alpha(opacity=20);
    opacity: .2;
}

    .close:focus, .close:hover {
        color: #000;
        text-decoration: none;
        cursor: pointer;
        filter: alpha(opacity=50);
        opacity: .5;
    }

.modal-content {
    -webkit-box-shadow: none;
    margin-left: 0;
    margin-right: 0;
}

.modal-content {
    border-radius: 0px;
    box-shadow: none;
    border: none;
    padding-left: 50px;
    padding-right: 50px;
    padding-top: 20px;
    padding-bottom: 20px;
}

@media (min-width: 768px) {
    .modal-content {
        -webkit-box-shadow: 0 5px 15px rgba(0,0,0,.5);
        box-shadow: 0 5px 15px rgba(0,0,0,.5);
    }
}

.modal-content {
    position: relative;
    background-color: #fff;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border: 1px solid #999;
    border: 1px solid rgba(0,0,0,.2);
    border-radius: 6px;
    outline: 0;
    -webkit-box-shadow: 0 3px 9px rgba(0,0,0,.5);
    box-shadow: 0 3px 9px rgba(0,0,0,.5);
}

.modal-header {
    min-height: 16.43px;
    padding: 15px;
}

.modal-title {
    color: rgb(57, 57, 57);
    font-size: 18px;
    font-weight: 300;
    text-align: center;
}

.modal-title {
    margin: 0;
    line-height: 1.42857143;
}

.modal-body {
    color: rgb(18, 82, 136);
    font-size: 18px;
    font-weight: 700;
    text-align: center;
    padding-top: 20px;
    line-height: 25px;
}

.modal-body {
    position: relative;
    padding: 15px;
}
