/*	============================================================================
	STYLES ADDITIONNELS POUR LE FORMULAIRE
	========================================================================== */
		/* Cacher les inputs checkbox et radio natifs - On utilise des styles personnalisés */
		.cb_form,
		.cb_formation,
		.toggle											{ display: none !important; position: absolute; opacity: 0; pointer-events: none; }
		
		.ctn_plus								{ max-height: 0; height: 100%; transition: max-height .5s, margin .5s ease-in .2s; overflow: hidden; }
		.cb_formation:checked + .lbl_tax:before { content: "-"; background-color: #717174; color: #fff; display: none;}
		.cb_formation:checked ~ .ctn_plus		{ max-height: 500rem; margin-top: 1rem; transition: max-height .2s; }
		
		.section-formations .cb_formation:checked ~ .ctn_plus { max-height: 1000rem; }
		
		.tpl_form .cb_formation:checked ~ .ctn_plus{ max-height: 230rem; }

        .tpl_form {
            max-width: 1440px;
            margin: 0 auto;
            padding: 120px 40px;
            position: relative;
        }
        .tpl_form:after {
            content: "";
            background-image: url('../assets/images/eg-pourquoi-1.svg');
            width: 100%;
            max-width: 448px;
            height: 100%;
            background-size: contain;
            background-position: top left;
            background-repeat: no-repeat;
            position: absolute;
            top: 80px;
            left: -116px;
            z-index: -1;
        }
        @media(max-width: 1024px){
            .tpl_form {
                padding: 80px 24px;
            }
        }
		
		.btn-plus								{ position: absolute; bottom: -.9rem; width: 2rem; height: 2rem; left: 50%; margin-left: -1rem; line-height: 2rem; font-size: 1.5rem; z-index: 3; padding: 0; }
		
		select::-ms-expand						{ display: none; }
		
		@media screen and (max-width: 1400px){
			.option-img							{ top: -8rem; margin-bottom: -8rem; }
		}
		
		@media screen and (max-width: 1200px){
			.taxonomies.padded-right			{ padding-right: 1rem; }
			.option-img							{ top: -6rem; margin-bottom: -6rem; }
		}
		
		@media screen and (max-width: 1080px){
			.taxonomies.padded-right			{ padding-right: .3rem; }
			.option-note 						{ padding-left: 5rem; padding-right: 5rem; }	
		}
		
		@media screen and (max-width: 1000px){
			.option-img							{ top: 0rem; margin-bottom: 0rem; }
			.taxonomies.grid-25,
			.tax_description.grid-75			{ width: 100%; }
			.desc-general .container-slider		{ padding: 1rem 6rem; }
			.prev								{ left: 4rem; }
			.next								{ right: 4rem; }
		}
		
		@media screen and (max-width: 700px){
			.option-img.container				{ max-width:100%; }			
			.desc-general .container-slider		{ padding: 1rem 3rem; }
			.prev								{ left: 1rem; }
			.next								{ right: 1rem; }
			.lbl_tax.lbl_cat					{ padding-right : .5rem; padding-left: 3.5rem; }
			.option-note 						{ padding-left: 1.5rem; padding-right: 1.5rem; }
		}
		
		@media screen and (max-width: 400px){
			.desc-general .container-slider		{ padding: .5rem 2.5rem; }
			.prev								{ left: .5rem; }
			.next								{ right: .5rem; }
		}
				
/*	============================================================================
	CALENDRIER
	========================================================================== */
		.div_choix								{ position: relative; margin-bottom: 6rem; }
		.div_choix:after						{ position: absolute; content: ""; top: 100%; left: 0; width: 100%; height: 2.75rem; background-image: url('images/logo_gris_ligne.png'); background-size: 100%;
												background-repeat: no-repeat;  }
	
		.dd_div									{ display:inline-block; box-sizing: border-box; width:100%; padding:0; height: 2rem;  line-height: 2rem; margin: 0 0 .5rem; position: relative; z-index: 2; 													overflow: hidden; border-right: 1rem solid #fff; }
		.dd_div:before							{ content: "▼"; font-size: 1rem;  background: #575757;  width: 2rem; height: 2rem; display: block; position: absolute; top:0; right: 0; text-align: center; 
												/*line-height: 2rem;*/ }
		.ie9 	.dd_div:before {display: none;}																
		.div_cours:before						{ color: #C02B09; }
		.div_campus:before						{ color: #97979a; }
		.div_session:before						{ color: #717174; }
		.dd_calendar							{ font-size: 16px; font-family: inherit; background: none; border: none; -webkit-appearance:none; box-sizing: border-box; 
												padding: 1rem; margin: 0; width: 100%; height: 3rem; line-height: 2rem; position: relative; white-space: normal; }
		.dd_calendar option						{ color: #000000; }
        .dd_div .dd_calendar.campus-cours-carte  { padding: 0 0 10px !important; }
		.btn-calendar							{ width: 100%; height: 2rem; border: none; box-sizing: border-box; padding: 0; border-right: 1rem solid #fff; }
		
		.gris-cal								{ background-color: #e0e0e0; margin-top: 4rem; }
		.btn-inscrire,
		.btn_form								{ border: none; padding: .5rem 1rem; }
		input:disabled							{ opacity: 0.5;}		
		.result_calendar .table.blanc .cell		{ border-bottom: 2px solid #fff; border-left: 2px solid #fff; box-sizing: border-box; }
		.result_calendar .table.blanc .cell:first-child { border-left: none; }			
		.inner-horaire .cell					{ border-bottom: 2px solid #fff; }
		.bkg-rose a.ui-state-default 			{ background: transparent; }
		.ui-state-disabled.bkg-rose				{ background: #fff; }	
		.ui-state-disabled .ui-state-default	{ background: #fff!important; color: #000000!important; }
		
		@media screen and (max-width: 1000px){
			.result_calendar .grid-25			{ display: none; }
			.result_calendar .row.hidden		{ display: table-row; }
		}
		
		@media screen and (max-width: 700px){
			.div_choix 							{ margin-bottom: 1rem; }
			.div_choix:after					{ display: none;}
		}
		
		
/*	============================================================================
	FORMULAIRE
	========================================================================== */
		.carte-horaires								{ max-height: 0; overflow: hidden; transition: max-height .3s; }
		.carte-horaires .dd_div						{ border: 0; width:33%; margin-left: 5px; }
		.carte-horaires .div-code					{ margin-left: 5px; }
		.cb_form:checked ~ .carte-horaires			{ max-height: 500px; padding: 1rem; margin-bottom: 1rem; }

		
		.tpl_form label,
		.tpl_form .label						{ margin-bottom: 0.5rem; }
		.etapes_form							{ padding-right: 1.5rem; }
		.etapes_form:after						{ position: absolute; content: ""; width: 0; height: 0; right:100%; top: 0; border-right: 1.5rem solid transparent; border-top: 3rem solid #fff; }
		.etapes_form:before						{ position: absolute; content: ""; width: 0; height: 0; right:100%; margin-right: -.1rem; top: 0; border-right: 1.5rem solid transparent; 
												border-top: 3rem solid #b0b0b0; }			
		.etapes_form:first-child:before,
		.etapes_form:first-child:after			{ display: none; }							
		
		.etapes-mobile							{ display: none; box-sizing: border-box; width:90%; padding:0 1rem; height: 2rem; line-height: 2rem; margin: 3rem auto; position: relative; z-index: 2; 
												overflow: hidden;
												border: 1px solid var(--e-global-color-secondary); font-size: 1rem; }
		.etapes-mobile:before					{ content: "▼"; font-size: 1rem; background: var(--e-global-color-secondary);  width: 2rem; height: 2rem; display: block; position: absolute; top:0; right: 0; text-align: center; 
												color: #fff; 
												line-height: 2rem;  }
		.etapes-mobile .select					{ font-size: inherit; font-family: inherit; background: none; border: none; -webkit-appearance:none; box-sizing: border-box; 
												padding: 0; margin: 0; width: 110%; height: 2rem; line-height: 2rem; position: relative; vertical-align: top; }
		
		.mobile_div_week,
		.mobile-datepicker						{ display: none; }
							
		.btn_form								{ display: block; white-space: normal;}
		.cours_form	.bkg-grispale				{ margin-left: 2.9rem; }
		.cours_form .bkg-gris					{ background-color: #dddddd; }
		.lbl_form								{ display: block; position: relative; margin-left: 2.9rem; }
		.cours_form .table						{ border-collapse: separate; border-spacing: 5px 0; margin-left: 5px; }
		.lbl_form:before,
		.lbl_cost:before						{ position: absolute; content: ""; right: 100%; top: 0; margin-right:1.2rem; width: 1.7rem; height: 1.7rem; /*line-height: 1.7rem;*/ text-align: center; 
												background-color: inherit; display: block; box-sizing: border-box; padding-top: .3rem; line-height:1; }
		.cb_form:checked + .lbl_form:before		{ content: "✓"; }
		
		.txt_doc 								{ box-sizing: border-box; width: 90%; background-color: #ebebeb; border: none; height: 2rem; line-height: 2rem; padding: 0 1rem; margin-bottom: 1rem; overflow: hidden; }
		#search-certificats .txt_doc				{ width: auto; }
		
		.sel_doc,
		.sel_date 								{ width: 90%; height: 2rem; line-height:2rem; background-color: #b5d5e7; color: #fff; border: 0; z-index: 2; margin-bottom: 1rem; overflow: hidden; }	
		.sel_doc select							{ height: 2rem; line-height: 2rem; padding: 0 45px 0 1rem; }
		.ie9 .sel_doc select						{ padding: 0;}
		
		.sel_doc:before	    					{ content: "▼"; font-size: 1rem; background: #007dc3; color: #b5d5e7; width: 2rem; height: 2rem; display: block;  position: absolute; top: 0; right: 0; 
												text-align: center; /*line-height: 2rem;*/ }
		.ie9 .sel_doc:before	  {display: none; }										
		.sel_date .dd_calendar					{ padding-right: 3rem;}
		.sel_doc .dd_calendar					{ text-transform: none;  }
		.form-bkg								{ background-color: #eff9ff; }
		.lbl_cb									{ display: inline-block; line-height: 1.7rem; margin-bottom: .5rem; margin-right: 1.3rem; margin-left: 0; padding-left: 2.5rem; color: #0061ac; }
		.lbl_cb:before							{ margin-right: 0; left: 0; background-color: #0061ac; color: #fff; }
		
		.ta_form								{ width: 90%; height: 6rem; border: none; padding: .5rem; margin-bottom: 1rem; }

 	Section formulaire nms
===============================================================================================================*/
.formulaire-inscription .header_path{
	max-width: 56rem;
	margin-left: auto;
	margin-right: auto;
	padding: 0;
}

.formulaire-inscription .header_path .bredcrumb{
	padding: 0;
	margin: 1rem 0 1rem;
}

/* .nmsFormTitle{
	max-width: 56rem;
	margin-left: auto;
	margin-right: auto;
	color: #003361;
} */
.nmsFormTitle h1 {
    margin-bottom: 120px;
    position: relative;
    text-align: center;
}
.nmsFormTitle h1:after{
    content: "";
    width: 200px;
    height: 3px;
    background: var(--e-global-color-accent);
    display: inline-block;
    position: absolute;
    bottom: -24px;
    left: 50%;
    transform: translateX(-50%);
}

.nmsFormSectionTitle{
	font-family: "Neuton", sans-serif;
	font-size: 64px;
	line-height: 72px;
	font-weight: 400;
	color: var(--e-global-color-primary);
	margin-bottom: 62px;
}
/* .nmsFormSectionTitle:after {
    content: "";
    width: 200px;
    height: 3px;
    background: var(--e-global-color-accent);
    display: inline-block;
    position: absolute;
    bottom: -24px;
    left: 0;
} */



.nmsFlexContainer {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.formTownSelection{
	width: 66%;
	background: #FFF;
	padding: 48px;
    border-radius: 56px;
	box-sizing: border-box;
    box-shadow: 8px 8px 24px 0px rgba(0, 44.99999999999992, 116, 0.0784313725490196);
}

.nmsFlexContainer .option-note{
	width: 32%;
	margin: 0;
	padding: 0
}

.formTownSelectionTitle {
    color: var(--e-global-color-primary);
	font-size: 24px;
    line-height: 32px;
    font-weight: 700;
    padding-bottom: 24px;
}

.nmsCheckContainer {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: wrap;
}

.nmsCheckContainer label{
    width: 48.53%;
    margin: 0 0 10px;
    background: none;
    border: none;
    cursor: pointer;
    border-radius: 3px;
    padding: 0.675rem 0.675rem 0.675rem 2.1rem;
    box-sizing: border-box;
    transition: all 0.25s ease-in-out;
    user-select: none;
	font: 400 18px/26px"Quattrocento Sans", Sans-serif;
}

.nmsCheckContainer label:before{
    right: inherit;
    left: 0.6rem;
    top:  50%;
    transform: translateY(-50%);
    width:  1rem;
    height:  1rem;
    border-radius: 100%;
    border: solid 1px #bfbfbf;
    transition: all 0.25s ease-in-out;
    line-height: 0.5rem;
    font-size: 0.75rem;
    color:  white;
}

.nmsCheckContainer label:hover {
    border-color: var(--e-global-color-secondary);
}

.nmsCheckContainer label:hover:before {border-color: var(--e-global-color-secondary);}

.nmsCheckContainer .cb_form:checked + label:before{
	background: var(--e-global-color-secondary);
	border-color: var(--e-global-color-secondary);
	content: "\f00c";
	font-family: "Font Awesome 5 Free";
	font-weight: 700;
	font-size: 0.5rem;
    line-height: 0.3rem;
}

.nmsCheckContainer .cb_form:checked + label{
	border-color: var(--e-global-color-secondary);
	color: var(--e-global-color-secondary);
}

.nmsCollapse .nmsCollapseTitle {
    background: #fff;
    box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.08);
    color: var(--e-global-color-primary);
    padding: 24px;
    border-radius: 56px !important;
    font: 600 20px/28px "Quattrocento Sans", Sans-serif;
    position: relative;
    cursor: pointer;
    user-select: none;
    transition: all 0.25s ease-in-out;
}

.nmsCollapse .nmsCollapseTitle:after{
    content: "";
    background-image: url('../assets/images/icone-plus-white.svg') !important;
    background-size: 16px !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    position: absolute;
    background-color: var(--e-global-color-accent) !important;
    border-radius: 50% !important;
    width: 48px !important;
    height: 48px !important;
    top:  50%;
    right: 16px;
    transform: translateY(-50%);
    transition: all 0.25s ease-in-out;
}
.nmsCollapse.open .nmsCollapseTitle{
    border-radius: 32px 32px 0 0 !important;
    background: var(--e-global-color-secondary) !important;
    color: #FFF !important;
}
.nmsCollapse .nmsCollapseContent {
    margin-top: -16px;
    padding: 32px 24px 24px 24px;
    border-radius: 0 0 32px 32px;
    display: none;
    color: var(--e-global-color-text);
    font-size: 18px;
    line-height: 26px;
    background: #fff !important;
    border: 1px solid #d5d8dc;
}
.nmsCollapse .nmsCollapseContent h3 {
    font: 600 32px/40px "Quattrocento Sans", Sans-serif;
    color: var(--e-global-color-primary);
    padding-top: 12px;
}
.nmsCollapse .nmsCollapseContent p {
    font: 400 18px/26px "Quattrocento Sans", Sans-serif;
    color: var(--e-global-color-text);
    padding: 16px 0 8px;
}

.nmsCollapse {
    text-align: left;
}

.nmsCollapse.open .nmsCollapseTitle:after {
    background-image: url('../assets/images/minus-solid-full-primary.svg') !important;
    background-color: white !important;
}

.nmsCollapse .nmsCollapseTitle:hover {
    background: var(--e-global-color-secondary);
    color: #FFF;
    cursor: pointer;
    transition: all 0.25s ease-in-out;
}
.nmsCollapse .nmsCollapseTitle:hover:after {
    background-image: url('../assets/images/minus-solid-full-primary.svg') !important;
    background-color: white !important;
}

.nmsSubmitContainer{
	width: 66%;
	display: flex;
	align-items: center;
    justify-content: flex-end;
    gap: 16px;
	margin: 2rem 0 5.5rem;
}

.nmsSubmitContainer.nmsFullWidth{
	width: 100%;
}

.nmsSubmitContainer input[type=submit]{
        font: 600 20px/26px var(--e-global-typography-text-font-family) !important;
        letter-spacing: -0.2px;
        text-decoration: none;
        cursor: pointer;
        position: relative;
        width: fit-content;
        padding: 12px 24px;
        background: var(--e-global-color-accent);
        border-radius: 40px;
        display: flex;
        align-items: flex-end;
        justify-content: start;
        color: var(--e-global-color-primary);
}

.nmsSubmitContainer input[type=submit]:hover{
	background: var(--e-global-color-secondary);
    color: #FFF;
}

.nmsSubmitContainer input[type=submit].disabled {
    pointer-events: none;
    background: #B0B0B0;
    color: #86898C;
}

.nmsSubmitContainer .nmsPrev {
    display: inline-block;
    padding: 12px 24px;
    box-sizing: border-box;
    border: 2px solid var(--e-global-color-secondary);
    color: var(--e-global-color-primary);
    font: 600 20px/26px var(--e-global-typography-text-font-family) !important;
    text-align: center;
    cursor: pointer;
	transition: all 0.25s ease-in-out;
    background: none;
    border-radius: 80px;
    display: flex;
    align-items: flex-end;
    justify-content: start;
    cursor: pointer !important;
}

.nmsSubmitContainer .nmsPrev:hover {
    border-color: var(--e-global-color-secondary);
    background: var(--e-global-color-secondary);
    color: #FFF;
    transition: all 0.25s ease-in-out;
}


.etapes {
	display: none;
}

.tpl_form .nmsCoursSelect .gform_button {
    font: 600 20px/26px var(--e-global-typography-text-font-family) !important;
    text-decoration: none;
    cursor: pointer;
    position: relative;
    width: fit-content;
    padding: 12px 24px !important;
    border: none !important;
    background: var(--e-global-color-accent) !important;
    border-radius: 40px !important;
    display: flex;
    align-items: flex-end;
    justify-content: start;
    color: var(--e-global-color-primary) !important;
}
.tpl_form .nmsCoursSelect .nmsPrev {
    font: 600 20px/26px var(--e-global-typography-text-font-family) !important;
    text-decoration: none;
    cursor: pointer;
    position: relative;
    width: fit-content;
    padding: 12px 24px !important;
    border: 2px solid var(--e-global-color-secondary) !important;
    border-radius: 40px !important;
    display: flex;
    align-items: flex-end;
    justify-content: start;
    color: var(--e-global-color-primary) !important;
    margin-bottom:16px;
}
.tpl_form .nmsCoursSelect .gform_button:hover,
.tpl_form .nmsCoursSelect .nmsPrev:hover {
    background: var(--e-global-color-secondary) !important;
    color: #FFF !important;
    transition: all 0.25s ease-in-out;
}
.nmsCoursSelectContainer {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: stretch;
}

.nmsCoursSelect #field_1_38 {
    display: none;
}
.nmsCoursSelect legend.gfield_label_before_complex label {
    font: 600 24px/32px "Quattrocento Sans", Sans-serif !important;
    color: var(--e-global-color-primary) !important;
    padding: 24px 0 0 0 !important;
}

.ams-summary-title {
    font: 600 32px/40px "Quattrocento Sans", Sans-serif !important;
    color: var(--e-global-color-primary) !important;
    padding-bottom: 24px;
}
.nmsCoursSelect label {
    font: 400 18px/26px "Quattrocento Sans", Sans-serif !important;
    color: var(--e-global-color-text) !important;
}
.nmsCoursSelect input,
.nmsCoursSelect .ginput_card_field {
    font: 400 18px/26px var(--e-global-typography-text-font-family) !important;
    color: var(--e-global-color-text) !important;
    background: none;
    border: none !important;
    border-bottom: 1px solid #BFBFBF !important;
    border-radius: 0 !important;
    margin: 0;
    color: var(--e-global-color-text) !important;
}
.nmsCoursSelectContainer .nmsCoursSelect, 
.nmsCoursSelectContainer .nmsLeftContainer {
    width: 66.07%;
    margin-right: 1.785%;
}


.nmsCoursSelectContainer .nmsLeftContainer .nmsCoursSelect {
    width: 100%;
    margin: 0 0 1rem;
}

.nmsCoursSelectContainer .nmsCoursSelect > * {
    margin-bottom: 0;
}

.nmsCoursSelectContainer .nmsAsideContainer {
    width: 32.14%;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle {
    margin-bottom: 16px;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursTitle {
    margin: 0;
    padding: 24px 80px 24px 24px;
    background: #fff;
    box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.08);
    color: var(--e-global-color-primary);
    border-radius: 56px;
    cursor: pointer;
    transition: all 0.25s ease-in-out;
    position: relative;
}
.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursTitle p {
    color: var(--e-global-color-text) !important;
    font: 400 16px/24px "Quattrocento Sans", Sans-serif !important;
}
.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursTitle h4 {
    font: 600 24px/32px "Quattrocento Sans", Sans-serif;
    text-transform: none;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursTitle > *:last-child {
    margin-bottom: 0;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursTitle:after {
    content: "";
    background-image: url('../assets/images/icone-plus-white.svg') !important;
    background-size: 20px !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    position: absolute;
    background-color: var(--e-global-color-accent) !important;
    border-radius: 50% !important;
    width: 56px !important;
    height: 56px !important;
    top:  50%;
    right: 20px;
    transform: translateY(-50%);
    transition: all 0.25s ease-in-out;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent {
	padding: 40px 0;
	margin-top: -40px;
    background: #FFF;
    box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.08);
    border-radius: 0 0 32px 32px;
	display: none;
}


.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer {
    background: white;
    width:  100%;
    padding: 1.51rem 1.5rem 0.51rem;
    box-sizing: border-box;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form {
    width: 48.06%;
    margin-right: 3.225%;
	margin-bottom: 3.225%;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form:nth-child(2n) {
    margin-right: 0;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form > label {
    background: none;
    color: var(--e-global-color-text);
    width:  100%;
    margin:  0;
	height:100%;
	border: 1px solid #BFBFBF;
	transition: all 0.25s ease-in-out;
	box-sizing: border-box;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form .rabais {
    display: none;
}


.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form > label .table {
    width:  100%;
    margin:  0;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
	height: 100%;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form > label .table .nmsMainTableContent {
    width:  100%;
    padding: 1rem;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
}
.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form > label .table .nmsMainTableContent h3 br {
    display: none !important;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form > label .table .nmsMainTableContent {
    width:  100%;
    padding: 1rem;
    box-sizing: border-box;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form > label .table .nmsBottomTableContent {
    width:  100%;
    box-sizing: border-box;
    margin-top: auto;
    display: flex;
    justify-content: space-between;
    border-top: solid 1px #BFBFBF;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form > label .table .nmsBottomTableContent .nmsBottomCell {
    width: 50%;
    text-align: center;
    padding: 0.65rem 1rem;
    box-sizing: border-box;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form > label .table .nmsBottomTableContent .nmsBottomCell:first-child {
    border-right: solid 1px #bfbfbf;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form > label .table .nmsBottomTableContent .nmsBottomCell .nmsBottomCellTitle {
    font-weight: bold;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form > label .table .nmsBottomTableContent .nmsBottomCell big {
    font: 400 16px/24px "Quattrocento Sans", Sans-serif;
    color: var(--e-global-color-text);
}


.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form > label .table .nmsMainTableContent .h3 {
    margin-left: 1.5rem;
    font: 400 18px/26px "Quattrocento Sans", Sans-serif;
    color: var(--e-global-color-text);
    margin-bottom: 1rem;
	text-transform: none;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form > label:before {
    top: 20px;
    left: 1rem;
    right: inherit;
    margin: 0;
    padding: 0;
    min-width: 0.9rem;
    width: 0.9rem;
    height: 0.9rem;
    border: solid 1px #BFBFBF;
    border-radius: 100%;
    font-family: "font awesome 5 free";
    transition: all 0.25s ease-in-out;
    font-weight: 700;
    color: white;
    content: "\f00c";
    font-size: 0.5rem;
    line-height: 0.8rem;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form > .cb_form:checked + label:before {
    background: var(--e-global-color-secondary);
    border-color: var(--e-global-color-secondary);
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form > label .table .nmsMainTableContent .item-prealable {
    margin-bottom: 1.3rem;
    font: 400 16px/24px "Quattrocento Sans", Sans-serif;
    color: var(--e-global-color-text);
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form > label .table .nmsMainTableContent .item-prealable .nmsItemTitle {
    font-weight: bold;
    display: block;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form .cb_form:checked + label {
    border-color: var(--e-global-color-secondary);
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form > label .table .nmsMainTableContent > *:last-child {
    margin-bottom: 0;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle.open {
    background: none;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle.open .nmsCoursTitle {
    background: var(--e-global-color-secondary);
}
.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle.open .nmsCoursTitle p {
    color: #fff !important;
}
.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle.open .nmsCoursTitle h4 {
    color: #fff;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle.open .nmsCoursTitle:after {
    background-image: url('../assets/images/minus-solid-full-primary.svg') !important;
    background-color: white !important;
}


.nmsCoursSelectContainer .nmsAsideContainer .closeForm {
    margin-bottom: 0.5rem;
}

.nmsTotalContainer {
    background: #FFF;
    box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.08);
    border-radius: 56px;
    padding: 48px;
    /* margin-top: 40px; */
    width: 100%;
    box-sizing: border-box;
	position: sticky;
    top: 2.5rem;
}

.nmsTotalContainer .nmsTotalTitle {
    font: 600 20px/28px "Quattrocento Sans", Sans-serif;
    color: var(--e-global-color-primary);
    margin-bottom: 0.8rem;
}

.nmsTotalContainer .nmsPriceLine {
    display: flex;
    justify-content: space-between;
}

.nmsTotalContainer .nmsPriceLine .nmsPriceLineTitle {
    max-width: 70%;
	    margin-bottom: 0.8rem;
}

.nmsTotalContainer .nmsPriceLine.nmsToPay, .nmsTotalContainer .nmsPriceLine.nmsTotal {
    font-weight: bold;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .cb_input:first-child {
    margin-top: 40px;
}
.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .cb_input > label {
    margin: 0;
    padding: 16px 24px 16px 16px;
    background: #fff;
    box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.08);
    border-radius: 56px;
    color: var(--e-global-color-primary);
    font: 600 20px/28px "Quattrocento Sans", Sans-serif;
    text-transform: none;
    position: relative;
    display: inline-flex;
    width: calc(100% - 48px);
    margin: 0 24px;
    cursor: pointer;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .cb_input > label:hover {
    background: var(--e-global-color-secondary);
    color: #fff;
}
.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .cb_input > label:after {
    content: "";
    background-image: url('../assets/images/icone-plus-white.svg') !important;
    background-size: 16px !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    position: absolute;
    background-color: var(--e-global-color-accent) !important;
    border-radius: 50% !important;
    width: 48px !important;
    height: 48px !important;
    top:  50%;
    right: 10px;
    transform: translateY(-50%);
}


.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .cb_input > input:checked + label:after {
    background-image: url('../assets/images/minus-solid-full-primary.svg') !important;
    background-color: white !important;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .ctn_plus {
    margin-top: 0;
    margin-bottom: 1rem;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form label .table .nmsMainTableContent .carte-horaires {
    max-height: inherit;
    margin: 0;
    background: none;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form label .table .nmsMainTableContent .carte-horaires .dd_div {
    width: 100%;
    background: #fff;
    border-bottom: 1px solid #BFBFBF;
    margin: 0;
    color: var(--e-global-color-text);
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form label .table .nmsMainTableContent .carte-horaires .dd_div:before {
    content: "\f078";
    height: auto;
    width: auto;
    font-family: "font awesome 5 free";
    font-weight: bold;
    background: none;
    right: 0.5rem;
    color: var(--e-global-color-primary);
    font-size: 0.6rem;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form label .table .nmsMainTableContent .carte-horaires .dd_div select {
    padding-left: 0.5rem;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form label .table .nmsMainTableContent .carte-horaires .nmsDateSelector {
    margin: 0.5rem 0 0;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form label .table .nmsMainTableContent .carte-horaires .nmsDateSelector .code-cours-carte > label {
    position: relative;
    padding-left: 1.2rem;
    font-size: 16px;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form label .table .nmsMainTableContent .carte-horaires .nmsDateSelector .code-cours-carte > label > input {
    position: absolute;
    top: 0.2rem;
    left: 0;
}

.nmsResumeContainer {
    background: #FFF;
    box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.08);
    border-radius: 56px;
    padding: 48px;
    box-sizing: border-box;
}

.nmsResumeContainer .nmsCoursTypeContainer {
    margin-bottom: 2.4rem;
}

.nmsResumeContainer .nmsCoursTypeContainer .nmsCoursTypeTitle {
    font: 600 24px/32px "Quattrocento Sans", Sans-serif;
    color: var(--e-global-color-primary);
    margin-bottom: 0.95rem;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursType {
    padding-top: 0.6rem;
    border-top: 1px solid #BFBFBF;
    margin-bottom: 1.5rem;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursType h4 {
    font: 700 18px/28px "Quattrocento Sans", Sans-serif;
    color: var(--e-global-color-text);
    margin: 0 0 0.6rem;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursType .nmsCoursTypeDescContainer {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursType .nmsCoursTypeDescContainer .nmsCoursTypeDesc {width: 44.59%;margin-bottom: 0.5rem;}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursType .nmsCoursTypeDescContainer .nmsCoursTypeDesc:nth-child(2n) {
    width: 31.75%;
}
.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursType .nmsCoursTypeDescContainer .nmsCoursTypeDesc div {
    font: 400 16px/24px "Quattrocento Sans", Sans-serif;
    color: var(--e-global-color-text);
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursType .nmsCoursTypeDescContainer .nmsCoursTypeDesc div:last-child {
    margin-bottom: 0;
}

.nmsTotalContainer .nmsPriceLine.nmsBoldPriceLine {
    font-weight: bold;
}

.nmsTotalContainer .nmsPriceLine.nmsSmallPriceLine {
    font-size: 0.8rem;
}

.nmsTotalContainer .nmsPriceLine.nmsSmallPriceLine .nmsPriceLineTitle {
    margin-bottom: 0.4rem;
}

.nmsTotalContainer .nmsPriceLine.nmsTotalPriceLine {
    font: 600 18px/26px "Quattrocento Sans", Sans-serif;
    color: var(--e-global-color-primary);
}

.nmsPaymentContainer, .nmsWhoForm {
    background: #FFF;
    padding: 48px;
    border-radius: 56px;
    box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.08);
    box-sizing: border-box;
}

.nmsPaymentContainer .nmsCheque, .nmsPaymentContainer .nmsPaymentForm{
	display: none;
}

.nmsPaymentContainer .nmsFormLine {
    margin-bottom: 2rem;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.nmsPaymentContainer .nmsFormLine .nmsFormLineTitle {
    font: 400 18px/26px "Quattrocento Sans", Sans-serif;
    color: var(--e-global-color-text);
    width: 100%;
}

.nmsPaymentContainer .nmsFormLine input {
    width: 100%;
    background: #fff;
    border-bottom: 1px solid #BFBFBF;
    padding: 0.5rem;
    box-sizing: border-box;
    font: 400 18px/26px "Quattrocento Sans", Sans-serif;
    color: var(--e-global-color-text);
    line-height: 1rem;
    margin: 0;
}

.nmsPaymentContainer .nmsFormLine .nmsFormCell {
    display: inline-block;
    width: 48.53%;
}

.nmsPaymentContainer .nmsFormLine > label {
    cursor: pointer;
    max-width: 25%;
    width: 100%;
    position: relative;
    font: 600 18px/26px "Quattrocento Sans", Sans-serif;
    color: var(--e-global-color-primary);
    z-index: 1;
    text-align: center;
    transition: all 0.25s ease-in-out;
    margin: 0 0.3rem 0 0;
    min-height: 2rem;
	margin-bottom: 0.5rem;
}

.nmsPaymentContainer .nmsFormLine > label input[type="radio"] {
    display: none;
}

.nmsPaymentContainer .nmsFormLine > label input[type="radio"] + .nmsIcon {
    position: absolute;
    width: 100%;
    height: 100%;
    background: #fff;
    top: 0;
    left: 0;
    display: block;
    z-index: -1;
    color: var(--e-global-color-primary);
    border: 2px solid var(--e-global-color-secondary);
    transition: all 0.25s ease-in-out;
    font-size: 18px;
    padding: 12px;
    box-sizing: border-box;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.nmsPaymentContainer .nmsFormLine > label:hover input[type="radio"] + .nmsIcon {
    border: 2px solid var(--e-global-color-secondary);
    background: var(--e-global-color-secondary);
    color: #fff;
}
.nmsCoursSelect.nmsPaymentContainer .nmsFormLine.nmsFlexStart {
    gap: 10px;
}

.nmsPaymentContainer .nmsFormLine.nmsFlexStart {
    justify-content: flex-start;
}

.nmsPaymentContainer .nmsFormLine > label input[type="radio"]:checked {}

.nmsPaymentContainer .nmsFormLine > label input[type="radio"]:checked + .nmsIcon {
    color: white;
    background: var(--e-global-color-secondary);
}

.nmsPaymentContainer .nmsFormLine > label:hover input[type="radio"]:checked + .nmsIcon {
    background: var(--e-global-color-secondary);
}

.nmsPaymentContainer .nmsFormLine .nmsUnderLabel {
    font-size: 0.6rem;
    line-height: 0.9rem;
    color: #86898C;
}

.nmsPaymentContainer .nmsFormLine .nmsSelectContainer {
    width: 100%;
    max-width: 5.35rem;
    background: #fff;
    border-bottom: 1px solid #BFBFBF;
    margin-right: 0.25rem;
    position: relative;
}

.nmsPaymentContainer .nmsFormLine .nmsSelectContainer select {
    padding: 0.5rem;
    font: 400 18px/26px "Quattrocento Sans", Sans-serif;
    color: var(--e-global-color-text);
    text-transform: none;
}

.nmsPaymentContainer .nmsFormLine .nmsSelectContainer:after {
    content: "\f078";
    font-family: "font awesome 5 free";
    font-weight: bold;
    color: var(--e-global-color-primary);
    position: absolute;
    top: 50%;
    right: 0.4rem;
    font-size: 12px;
    transform: translateY(-50%);
	pointer-events: none;
}
.cell label[for="cb_oadresse"]{
    display: inline-block;
    margin-bottom: 16px;
}
.other_adresse .table {
    display: flex;
    flex-wrap: wrap;
}
.other_adresse .row {
    display: flex;
    width: 50%;
}
.other_adresse .row .cell {
    width: 100%;
    display: flex;
    flex-direction: column;
}
.other_adresse .row .cell input {
    background: #fff;
    border-bottom: 1px solid #BFBFBF;
    padding: 0.5rem;
    font: 400 18px/26px "Quattrocento Sans", Sans-serif;
    color: var(--e-global-color-text);
}

.nmsTotalContainer > input {
    width: 100%;
    margin-top: 0.2rem;
	transition: all 0.25s ease-in-out;
}
.nmsTotalContainer > input.btn_form {
    width: fit-content !important;
    padding: 12px 24px !important;
    border-radius: 80px !important;
    color: var(--e-global-color-primary) !important;
    background: var(--e-global-color-accent) !important;
    font: 600 18px/26px var(--e-global-typography-text-font-family) !important;
    text-align: center;
    cursor: pointer !important;
    transition: all 0.25s ease-in-out;
}
.nmsTotalContainer>input:hover {
    background: var(--e-global-color-secondary) !important;
    color: #fff !important;
}

.nmsWhoForm{
    width: 100%;
}
.nmsWhoForm p {
    font: 400 14px/22px "Quattrocento Sans", Sans-serif;
    color: #cf2e2e;
}

.nmsWhoForm .nmsWhoFormTitle {
    font: 600 32px/40px "Quattrocento Sans", Sans-serif;
    color: var(--e-global-color-primary);
    margin-bottom: 1.57rem;
}

.nmsWhoFormContainer .nmsFormLine {
    display: flex;
    justify-content: flex-start;
    margin: 16px 0;
    align-items: stretch;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell {
    width: 32.07%;
    margin-right: 1.88%;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell:last-child {
    margin-right: 0;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell .nmsFormLineTitle {
    font: 400 18px/26px "Quattrocento Sans", Sans-serif;
    color: var(--e-global-color-text);
    width: 100%;
    margin-bottom: 0.15rem;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell input {
    width: 100%;
    margin: 0;
    background: #FFF;
    padding: 0.5rem;
    color: var(--e-global-color-text);
    border-bottom: 1px solid #BFBFBF;
    font: 400 18px/26px "Quattrocento Sans", Sans-serif;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell > label input[type=radio] {
    display: none;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell > label {
    width: 30%;
    position: relative;
    font-size: .7rem;
    line-height: 1rem;
    color: #003361;
    z-index: 1;
    text-align: center;
    transition: all .25s ease-in-out;
    margin: 0 16px 0 0;
    min-height: 2rem;
    margin-top: auto;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell > label input[type=radio] + .nmsIcon {
    position: absolute;
    width: 100%;
    height: 100%;
    background: #FFF;
    top: 0;
    left: 0;
    display: block;
    z-index: -1;
    color: var(--e-global-color-primary);
    border: 2px solid var(--e-global-color-secondary);
    transition: all .25s ease-in-out;
    font-size: 18px;
    padding: 12px;
    border-radius: 20px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell > label:hover input[type=radio] + .nmsIcon {
    border: 2px solid var(--e-global-color-secondary);
    background: var(--e-global-color-secondary);
    color: #fff;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell > label input[type=radio]:checked + .nmsIcon{
    color: #fff;
    background: var(--e-global-color-secondary);
}



.nmsWhoFormContainer .nmsFormLine .nmsFormCell > label:hover input[type=radio]:checked + .nmsIcon {
    background: var(--e-global-color-secondary);
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell > label:last-child {
    margin-right: 0;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell .nmsSelectContainer {
    width: 32.35%;
    background: #fff;
    border-bottom: 1px solid #BFBFBF;
    margin-right: 1.47%;
    position: relative;
    margin-top: auto;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell .nmsSelectContainer select {
    font: 400 18px/26px "Quattrocento Sans", Sans-serif;
    color: var(--e-global-color-text);
    background: none;
    -webkit-appearance: none;
    box-sizing: border-box;
    padding: 0.5rem;
    margin: 0;
    width: 100%;
    position: relative;
	text-transform: none;
	border: none;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell .nmsSelectContainer select.focus {
    border: solid 1px red;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell .nmsSelectContainer:after {
    content: "\f078";
    font-family: "font awesome 5 free";
    font-weight: 700;
    color: var(--e-global-color-primary);
    font-size: 12px;
    position: absolute;
    top: 50%;
    right: .4rem;
    transform: translateY(-50%);
	pointer-events: none;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell .nmsSelectContainer:last-of-type {
    margin-right: 0;
}

.nmsFormCell.requiredRadio .nmsFormLineTitle {
    margin-bottom: 16px !important;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell #birth {
    display: none;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell .nmsSelectContainer.nmsFullWidth {
    width: 100%;
}

.nmsWhoFormContainer > *:last-child {
    margin-bottom: 0;
}

.nmsCoursSelectContainer .nmsCoursSelect > *:last-child {
    margin-bottom: 0;
}

.nmsResumeContainer .nmsCoursTypeContainer > *:last-child {
    margin-bottom: 0;
}

.tpl_form .cb_formation:checked ~ .ctn_plus {
    max-height: inherit;
}

.ams-payment-summary pre {
    font: 400 18px/26px "Quattrocento Sans", Sans-serif !important;
    color: var(--e-global-color-text) !important;
}
.nmsFakeCheck input {
    display: none;
}

.nmsFakeCheck input + .icon {
    min-width: 0.9rem;
    width: 0.9rem;
    height: 0.9rem;
    border: solid 1px #BFBFBF;
    display: inline-block;
    box-sizing: border-box;
    margin-right: 0.4rem;
    transition: all 0.25s ease-in-out;
    position: relative;
}

.nmsFakeCheck {
    margin-top: 1rem;
    display: inline-block;
    font: 600 18px/26px "Quattrocento Sans", Sans-serif;
    color: var(--e-global-color-text);
	display: flex;
	align-items: center;
	justify-content: flex-start;
}

.nmsFakeCheck:hover input + .icon {
    border-color: var(--e-global-color-secondary);
}

.nmsFakeCheck input:checked + .icon {
    background: var(--e-global-color-secondary);
    border-color: var(--e-global-color-secondary);
}

.nmsFakeCheck input:checked + .icon:before{
    content: "\f00c";
    font-family: "Font Awesome 5 Free";
    font-size: 0.6rem;
    font-weight: 600;
    color: white;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}

.nmsFakeCheck:hover input:checked + .icon {
    background: var(--e-global-color-secondary);
    border-color: var(--e-global-color-secondary);
}


.nmsErrorPopinContainer {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.3);
    z-index: 99999999999;
    transition: opacity 0.25s ease-in-out;
    opacity: 0;
    display: none;
}

.nmsErrorPopinContainer.open{
    opacity: 1;
    display: block;
}

.nmsErrorPopinContainer .nmsErrorPopin {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    position: absolute;
    background: white;
    padding: 1.75rem 1rem;
    width: 450px;
    max-width: 90%;
    height: 170px;
    max-height: 90%;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    border-bottom: solid 3px var(--e-global-color-secondary);
}

.nmsErrorPopinContainer .nmsErrorPopin .nmsClosePopinError {
    display: inline-block;
    margin-top:  auto;
    background-color: var(--e-global-color-secondary);
    color: white;
    border: none;
    padding: .5rem 1rem;
    text-transform: uppercase;
    min-width: 240px;
    text-align: center;
    transition: all 0.25s ease-in-out;
    cursor: pointer;
    margin-left: auto;
    margin-right: auto;
}

.nmsErrorPopinContainer .nmsErrorPopin .nmsClosePopinError:hover {
    background-color: #1C65B0;
}

.nmsErrorPopinContainer .nmsErrorPopin span {
    text-align: center;
    width: 100%;
    font-size: 1rem;
}



@media screen and (max-width: 1200px){
	.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form{
		width: 100%;
		margin-right: 0;
	}
	
	.formulaire-inscription .header_path .bredcrumb, .nmsFormTitle {
		max-width: 90%;
    	margin-left: auto;
    	margin-right: auto;
        margin-bottom: 80px;
	}
	
	.formTownSelection {
		width: 100%;
		margin-bottom: 1rem;
        padding: 24px;
        border-radius: 32px;
	}

	.nmsFlexContainer {
		flex-wrap: wrap;
	}

    .nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursTitle h4 {
		font: 600 20px/28px "Quattrocento Sans", Sans-serif;
	}

	.nmsFlexContainer .option-note {
		width: 100%;
		max-width: 100%;
	}

	.nmsSubmitContainer {
		width: 100%;
		align-items: stretch;
	}

	.nmsSubmitContainer input[type=submit], .nmsSubmitContainer .nmsPrev {
		margin-bottom: 1rem;
	}
}

@media(max-width: 1024px){
    .nmsCoursSelectContainer {
        padding-bottom: 80px;
    }
    .nmsCoursSelectContainer .nmsPaymentContainer {
        margin-bottom: 48px;
    }
    .nmsPaymentContainer .nmsFormLine > label input[type="radio"] + .nmsIcon {
        padding: 18px !important;
    }
    .nmsPaymentContainer .nmsFormLine > label {
        max-width: 45% !important;
    }
    .nmsWhoFormContainer .nmsFormLine .nmsFormCell > label input[type=radio] + .nmsIcon  {
        padding: 12px !important;
        height: auto !important;
    }
    .nmsTotalContainer, .nmsWhoForm, .nmsResumeContainer, .nmsPaymentContainer {
        padding: 24px;
        border-radius: 32px;
    }
    .nmsFormSectionTitle {
        font: 400 40px/48px "Neuton", Sans-serif;
    }
    .nmsFormSectionTitle:after {
        width: 120px;
    }
    .nmsFakeCheck input + .icon {
        margin-top: 4px;
    }
    .tpl_form:after {
        max-width: 220px;
    }
    .tpl_form .nmsFormTitle h1:after {
        max-width: 120px;
    }

    .nmsResumeContainer .nmsCoursTypeContainer .nmsCoursTypeTitle {
        font: 600 22px/30px "Quattrocento Sans", Sans-serif;
    }
    .nmsCollapse .nmsCollapseContent h3 {
        font: 600 20px/28px "Quattrocento Sans", Sans-serif;
    }
    .nmsWhoForm .nmsWhoFormTitle {
        font: 600 24px/32px "Quattrocento Sans", Sans-serif;
    }
    .nmsWhoFormContainer .nmsFormLine .nmsFormCell input {
        background: #F0F0F0;
    }
    .nmsPaymentContainer .nmsFormLine input,
     .dd_calendar,
     .other_adresse .row .cell input,
     .nmsWhoFormContainer .nmsFormLine .nmsFormCell .nmsSelectContainer,
     .nmsCoursSelect input,
     .nmsCoursSelect .ginput_card_field {
        background: #F0F0F0 !important;
    }
    .ams-summary-title {
        font: 600 24px/32px "Quattrocento Sans", Sans-serif !important;
    }
    .nmsCoursSelect legend.gfield_label_before_complex label {
        font: 600 20px/28px "Quattrocento Sans", Sans-serif !important;
}

@media screen and (max-width: 950px){
	.nmsWhoFormContainer .nmsFormLine{
		display: block;
		width: 100%;
	}
	
	.nmsWhoFormContainer .nmsFormLine .nmsFormCell{
		width: 100%;
		margin-right: 0;
		margin-bottom: 1rem;
	}
}

@media screen and (max-width: 820px){
	.nmsFormTitle h1 {
		margin-top: 0 !important;
		margin-bottom: 0 !important;
	}
	
    .nmsFakeCheck{
        align-items: flex-start;
    }
	
	.nmsCoursSelectContainer .nmsCoursSelect {
		width: 100%;
		margin-right: 0;
	}

	.nmsCoursSelectContainer .nmsAsideContainer {
		width: 100%;
		display: flex;
		flex-direction: column-reverse;
        margin-top: 16px;
	}

	.nmsCoursSelectContainer .nmsAsideContainer .closeForm {
		margin-bottom: 0;
		margin-top: 1rem;
	}
	
.nmsWhoFormContainer .nmsFormLine .nmsFormCell > label {
    min-height: 3rem;
}


.nmsWhoFormContainer .nmsFormLine .nmsFormCell .nmsSelectContainer {
    width: 100%;
    margin-right: 0;
    margin-bottom: 1rem;
}
	
	#form_2 .nmsTotalContainer{
		margin-top: 1rem;
	}
}

@media screen and (max-width: 600px){
	
	.nmsCheckContainer label {
		width: 100%;
		margin-right: 0;
	}
	.nmsSubmitContainer {
		flex-wrap: wrap;
		flex-direction: column-reverse;
		margin-bottom: 2rem;
        align-items: flex-start;
        gap: 0;
	}
	

	.nmsSubmitContainer input[type=submit] {
		margin-bottom: 1rem;
	}
}


.nmsMenuMobile {
    color: white;
    display: none;
}


@media screen and (max-width: 820px){
    .nmsMenuMobile {
        display: block;
    }

    .nmsHeader {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .nmsMenuMobile .lbl_menu {
        padding-left: 1rem;
    }

    .nmsHeader > a {
        max-width: 75%;
        box-sizing: border-box;
    }
    .nmsCtaInscription > div {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin: 0;
    }
    .nmsCtaInscription > div h3 {
        margin: 0;
    }
	
	.nmsCoursSelectContainer .nmsLeftContainer{
		width: 100%;
		margin: 0;
	}
	
	.nmsNoteContainer{
		width: 100%;
		margin-top: 1rem;
	}
}

@media screen and (max-width: 470px){
    .nmsCtaInscription > div{
        flex-wrap: wrap;
    }

    .nmsCtaInscription > div h3{
        width: 100%;
        text-align: left;
        margin-bottom: 0.5rem;
    }

     .nmsCtaInscription > div a{
        width: 100%;
     }

}

