/*
	Theme Name:   AMS
	Author:       Cake communication
	Author URI:   http://cakecommunication.com
	Version:      3.0.1
*/






/*	==========================================================================
	HTML5, Reset & Base setup
	========================================================================== */

	*											{ color: inherit; font: inherit; }
	*:focus 									{ outline: 0; }
	html 										{ font-family: sans-serif; -ms-text-size-adjust: 100%;
												-webkit-text-size-adjust: 100%;  }
	html, body									{ width: 100%; height: 100%; }
	article, aside, details,figcaption, figure, 
	footer,header, main, nav, section, 
	summary, hr									{ display: block; }
	body, h1, h2, h3, h4, h5, h6, p, figure,  
	blockquote,  hr, ul, ol, dl, dd, nav, nav ul, 
	menu, button, input, optgroup, select, textarea,  
	fieldset, nav ol, li > ul, li > ol, iframe	{ margin: 0;}
	hr, nav ul, nav ol, td, th, legend, iframe, 
	fieldset, button::-moz-focus-inner, 
	input::-moz-focus-inner,  
	input[type="checkbox"], 
	input[type="radio"] 						{ padding: 0; }
	hr, img, legend, fieldset, iframe, 
	button::-moz-focus-inner, 
	input::-moz-focus-inner						{ border: 0 none; }
	hr 											{ box-sizing: content-box; height: 0; }
	nav ul, nav ol, menu ul, menu ol			{ list-style: none; list-style-image: none; margin: 0; padding: 0}
	nav li										{ display: inline; }
	img											{ vertical-align: middle; outline: none; }
	a img										{ border: none; }
	img, object, embed, video					{ max-width: 100%; height: auto;}
	iframe										{ width: 100%; }
	table										{ border-collapse: collapse; border-spacing: 0; }
	button, input, optgroup, select, textarea	{ box-sizing: border-box; }
	input										{ line-height: normal; }
	button										{ overflow: visible; }
	textarea									{ overflow: auto; }
	button, select								{ text-transform: none; }
	button, html input[type="button"],
	input[type="reset"], input[type="submit"]	{ -webkit-appearance: button; cursor: pointer; }
	button[disabled], html input[disabled]		{ cursor: default; }
	a											{ background: transparent; text-decoration: none;}
	a:active, a:hover							{ outline: 0; }
	b, strong, .strong, optgroup				{ font-weight: 700; }
	small										{ font-size: 80%; }
	sub, sup									{ font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
	sup											{ top: -0.5em; }
	sub											{ bottom: -0.25em; }
	label, a									{ cursor: pointer; }
	hr											{ border: none; border-top: 1px solid; margin-top: -1px; }
	a:not([href]):hover 						{ cursor: default;}






    
/*	=============================================================================
	Typography
	========================================================================== */
	
/* Fonts faces */
	body 										{  -webkit-font-smoothing: subpixel-antialiased; }
	@font-face 									{ font-family: 'fontello';  font-weight: normal; font-style: normal;
												src: url('fonts/fontello.eot'); 
												src: url('fonts/fontello.eot?#iefix') format('embedded-opentype'), 
												url('fonts/fontello.woff') format('woff'),
												url('fonts/fontello.ttf') format('truetype'),  
												url('fonts/fontello.svg') format('svg'); }
	
	@font-face 									{ font-family: 'fleche';  font-weight: normal; font-style: normal;
												src: url('fonts/fleche.eot');
												src: url('fonts/fleche.eot?#iefix') format('embedded-opentype'), 
												url('fonts/fleche.woff') format('woff'), url('fonts/fleche.ttf') format('truetype'),  
												url('fonts/fleche.svg') format('svg');}

/* Typographic baseline */
	html										{ font-family: 'Quattrocento Sans', sans-serif;					 		/* 1rem = 20px */
												font-weight: 400; font-size: 125%; line-height: 1; }																						
	
	body										{ font-size: .8rem; line-height: 1rem; } 								/* 16 / 20 regular */
	
	h1, .h1										{ font-size: 2.7rem; line-height: 2.5rem; font-family: 'Neuton', sans-serif;
												font-weight: 400; text-transform: none; position:relative; margin-bottom: 3.5rem;
												display: inline-block; letter-spacing: 3px; }												/* 54 / 60 bold caps */
	.archive .inner-banner h1:after,
	.page .inner-banner h1:after				{ position: absolute; content: ""; top: 100%; left: 0;  width: 100%; height: 2.75rem; background-image: url(images/logo-blanc-ligne.png); 
												background-repeat: no-repeat; background-position: center center; }
	
	h2, .h2										{ font-size: 1.9rem; line-height: 1.9rem; font-family: 'Neuton', sans-serif;
												font-weight: 400;  text-transform: uppercase;  }						/* 38 / 40 bold caps */
												
	h3, .h3										{ font-size: 1rem; line-height: 1rem;   
												text-transform: uppercase;  }											/* 20 / 20 caps */

	.big										{ font-size: 1.3rem; line-height: 1.5rem}								/* 26 / 20 */
						
	.bouton										{ font-family: 'Quattrocento Sans', Helvetica, Arial, sans-serif; 
												font-weight: 700; text-transform: uppercase; line-height: 1rem;}
	
	em											{ font-style: normal; }
	
	big											{ font-size: 1.5rem; line-height: 1; }
	.neuton										{ font-family: 'Neuton', sans-serif; }
	.bold										{ font-weight: bold; }
	
	@media screen and (max-width: 1250px) {
		.page h1, .h1							{ padding: 0 30%; }
	}
	@media screen and (max-width: 1150px) {
		h1, .h1									{ font-size: 2.3rem; line-height: 2.5rem; }
		h2, .h2									{ font-size: 1.5rem; line-height: 1.8rem; }
	}
	
	@media screen and (max-width: 1000px) {
		.inner-banner h1					{ margin-bottom: 0; }
		.inner-banner h1:after					{ display: none; }
	}
	
	@media screen and (max-width: 800px) {
		.page h1, .h1							{ padding: 0; }
		h3, .h3									{ font-size: .9rem }
	}
	
/*	@media (min-width: 1400px) {
		html									{ font-size: 1.8vw;}
	}*/
		
/* Margins and paddings setup */
	.container,
	.container .inner							{ margin: auto;}
	
	
	h2, h3, h4, h5, h6, 
	ul, ol, dd, p, figure, pre, table, 
	fieldset, blockquote, hr					{ margin-bottom: 1rem;  }

	ul, ol, dd,	blockquote						{ padding-left: 1rem; }
	blockquote									{ padding-right: 1rem; }
	
.box										{ padding: 1rem; }
	
	.pad-top, .pad-vertical						{ padding-top: 1rem; }
	.pad-bottom, .pad-vertical					{ padding-bottom: 1rem; }
	.pad-left, .pad-horizontal					{ padding-left: 1rem; }
	.pad-right, .pad-horizontal					{ padding-right: 1rem; }
	
	.margin-top, .margin-vertical				{ margin-top:  1rem; }
	.margin-bottom, .margin-vertical			{ margin-bottom: 1rem; }
	.margin-left, .margin-horizontal, 
	.align-right, .alignright 					{ margin-left: 1rem; }	
	.margin-right, .margin-horizontal,
	.align-left, .alignleft						{ margin-right: 1rem; }

	.box												{ padding: 1rem; }
	
	.pad-top, .pad-vertical								{ padding-top: 1rem; }
	.pad-bottom, .pad-vertical							{ padding-bottom: 1rem; }
	.pad-left, .pad-horizontal							{ padding-left: 1rem; }
	.pad-right, .pad-horizontal							{ padding-right: 1rem; }
	
	.margin-top, .margin-vertical						{ margin-top:  1rem; }
	.margin-bottom, .margin-vertical					{ margin-bottom: 1rem; }
	.margin-left, .margin-horizontal, 
	.align-right, .alignright 							{ margin-left: 1rem; }	
	.margin-right, .margin-horizontal,
	.align-left, .alignleft								{ margin-right: 1rem; }

	hr.pad-left, hr.pad-horizontal						{ padding-left: 0; margin-left: 1rem; }
	hr.pad-right, hr.pad-horizontal						{ padding-right: 0; margin-right: 1rem; }
	
	.box-quart											{ padding: .25rem; }
	
	.pad-top-quart, .pad-vertical-quart					{ padding-top: .25rem; }
	.pad-bottom-quart, .pad-vertical-quart				{ padding-bottom: .25rem; }
	.pad-left-quart, .pad-horizontal-quart				{ padding-left: .25rem; }
	.pad-right-quart, .pad-horizontal-quart				{ padding-right: .25rem; }
	
	.margin-quart										{ margin: .25rem; }
	.margin-top-quart, .margin-vertical-quart			{ margin-top:  .25rem; }
	.margin-bottom-quart, .margin-vertical-quart		{ margin-bottom: .25rem; }
	.margin-left-quart, .margin-horizontal-quart, 
	.align-right-quart, .alignright-quart 				{ margin-left: .25rem; }	
	.margin-right-quart, .margin-horizontal-quart,
	.align-left-quart, .alignleft-quart					{ margin-right: .25rem; }
	
	hr.pad-left-quart, hr.pad-horizontal-quart			{ padding-left: 0; margin-left: .25rem; }
	hr.pad-right-quart, hr.pad-horizontal-quart			{ padding-right: 0; margin-right: .25rem; }
	
	.box-half											{ padding: .5rem; }
	
	.pad-top-half, .pad-vertical-half					{ padding-top: .5rem; }
	.pad-bottom-half, .pad-vertical-half				{ padding-bottom: .5rem; }
	.pad-left-half, .pad-horizontal-half				{ padding-left: .5rem; }
	.pad-right-half, .pad-horizontal-half				{ padding-right: .5rem; }
	
	.margin-half										{ margin: .5rem; }
	.margin-top-half, .margin-vertical-half				{ margin-top:  .5rem; }
	.margin-bottom-half, .margin-vertical-half			{ margin-bottom: .5rem; }
	.margin-left-half, .margin-horizontal-half, 
	.align-right-half, .alignright-half 				{ margin-left: .5rem; }	
	.margin-right-half, .margin-horizontal-half,
	.align-left-half, .alignleft-half					{ margin-right: .5rem; }
	
	hr.pad-left-half, hr.pad-horizontal-half			{ padding-left: 0; margin-left: .5rem; }
	hr.pad-right-half, hr.pad-horizontal-half			{ padding-right: 0; margin-right: .5rem; }
	
	.box-x2												{ padding: 2rem; }
	
	.pad-top-x2, .pad-vertical-x2						{ padding-top: 2rem; }
	.pad-bottom-x2, .pad-vertical-x2					{ padding-bottom: 2rem; }
	.pad-left-x2, .pad-horizontal-x2					{ padding-left: 2rem; }
	.pad-right-x2, .pad-horizontal-x2					{ padding-right: 2rem; }
	
	.margin-x2											{ margin: 2rem }
	.margin-top-x2, .margin-vertical-x2					{ margin-top:  2rem; }
	.margin-bottom-x2, .margin-vertical-x2				{ margin-bottom: 2rem; }
	.margin-left-x2, .margin-horizontal-x2, 
	.align-right-x2, .alignright-x2 					{ margin-left: 2rem; }	
	.margin-right-x2, .margin-horizontal-x2,
	.align-left-x2, .alignleft-x2						{ margin-right: 2rem; }
	
	hr.pad-left-x2, hr.pad-horizontal-x2				{ padding-left: 0; margin-left: 2rem; }
	hr.pad-right-x2, hr.pad-horizontal-x2				{ padding-right: 0; margin-right: 2rem; }
	
	.box-x3												{ padding: 3rem; }
	
	.padded, .padded-top,
	.pad-top-x3, .pad-vertical-x3						{ padding-top: 3rem; }
	.padded, .padded-bottom,
	.pad-bottom-x3, .pad-vertical-x3					{ padding-bottom: 3rem; }
	.padded-horizontal, .padded-left,
	.pad-left-x3, .pad-horizontal-x3					{ padding-left: 3rem; }
	.padded-horizontal, .padded-right,
	.pad-right-x3, .pad-horizontal-x3					{ padding-right: 3rem; }
	
	.margin-x3											{ margin: 3rem }
	.margin-top-x3, .margin-vertical-x3					{ margin-top: 3rem; }
	.margin-bottom-x3, .margin-vertical-x3				{ margin-bottom: 3rem; }
	.margin-left-x3, .margin-horizontal-x3, 
	.align-right-x3, .alignright-x3 					{ margin-left: 3rem; }	
	.margin-right-x3, .margin-horizontal-x3,
	.align-left-x3, .alignleft-x3						{ margin-right: 3rem; }
	
	hr.pad-left-x3, hr.pad-horizontal-x3				{ padding-left: 0; margin-left: 3rem; }
	hr.pad-right-x3, hr.pad-horizontal-x3				{ padding-right: 0; margin-right: 3rem; }
	
	.box-x4												{ padding: 4rem; }
	
	
	.pad-top-x4, .pad-vertical-x4						{ padding-top: 4rem; }
	.pad-bottom-x4, .pad-vertical-x4					{ padding-bottom: 4rem; }
	.pad-left-x4, .pad-horizontal-x4					{ padding-left: 4rem; }
	.pad-right-x4, .pad-horizontal-x4					{ padding-right: 4rem; }
	
	.margin-x4											{ margin: 4rem }
	.margin-top-x4, .margin-vertical-x4					{ margin-top: 4rem; }
	.margin-bottom-x4, .margin-vertical-x4				{ margin-bottom: 4rem; }
	.margin-left-x4, .margin-horizontal-x4, 
	.align-right-x4, .alignright-x4 					{ margin-left: 4rem; }	
	.margin-right-x4, .margin-horizontal-x4,
	.align-left-x4, .alignleft-x4						{ margin-right: 4rem; }
	


	hr.pad-left, hr.pad-horizontal				{ padding-left: 0; margin-left: 1rem; }
	hr.pad-right, hr.pad-horizontal				{ padding-right: 0; margin-right: 1rem; }

	
	@media screen and (max-width : 600px){
		.item-inner.bigpad,						
		.item-inner.smallpad					{ padding: 1rem; }	
		.padded-horizontal,
		.padded-left							{ padding-left: 1rem; }
		.padded-horizontal,
		.padded-right							{ padding-right: 1rem; }			
	}
	
	video										{ display: block; position: relative; z-index: 1; width: 100%;}
	
/*	============================================================================
	SITE
	========================================================================== */
	
	
	main										{ height: 100%; }
	.small-container							{ max-width: 45rem; width: 100%; margin: auto; box-sizing: border-box; padding-left: 1rem; padding-right: 1rem; }
	.container,
	.container .inner							{ max-width: 56rem; }
	.container.full								{ padding-top: 3rem; }
	
	@media screen and (max-width: 1200px){
		.container,
		.container .inner						{ max-width: 90%;}
	}
	
	.bouton,
	.input,
	.input span									{ padding-top: .5rem; padding-bottom: .5rem; min-height: 2rem; box-sizing: border-box;  }
	.boutton									{ padding-left: .5rem; padding-right: .5rem; display: inline-block; }
	
	.input										{ display: inline-block; width: 100%; position: relative; overflow: hidden}
	.input span,								
	.input input								{ display: inline-block; padding-left: .25rem;  padding-right: .25rem; box-sizing: border-box;}
	.input span									{ position: absolute; display: inline-block;  top: 0;   }
	.input input								{ position: relative; width: 130%; font-size: .9em; background: none; border: none; z-index: 2;}
	.input .append								{ right: 0; }
	.input .prepend								{ left: 0; }
	.input .prepend + input						{ padding-left: 2rem}	
	input[type="range"]							{ display: block; width: 100%;}	
	
/*	============================================================================
	COLOR
	========================================================================== */	
		.bkg-blanc								{ background-color: #ffffff; }
		.bkg-noir								{ background-color: #000000; }
		.bkg-grisfonce							{ background-color: #717174; }
		.bkg-gris								{ background-color: #97979a; }
		.bkg-gris-2								{ background-color: #ebebeb; }
		.bkg-grispale							{ background-color: #e7e7e8; }
		.bkg-aqua,
		.bkg-bleu-0								{ background-color: #4cbfff; }
		.bkg-bleu-1								{ background-color: #2e87e2; }
		
		
		.bkg-bleu-2								{ background-color: #0061ac; }
		.bkg-bleu-3								{ background-color: #003361; }
		.bkg-bleu-4								{ background-color: #002b53; }
		.bkg-bleu-5								{ background-color: #003a5b; }
		
		.bkg-rose								{ background-color: #ed435b; }
		.bkg-beige								{ background-color: #fdefda; }

		.noir									{ color: #003a5b; }
		.blanc									{ color: #ffffff; }
		.aqua,
		.bleu-0									{ color: #4cbfff; }
		.bleu-1									{ color: #2e87e2; }
		.bleu-2									{ color: #0061ac; }
		.bleu-3									{ color: #003361; }
		.bleu-4									{ color: #002b53; }
		.bleu-5									{ color: #003a5b; }
		.rose									{ color: #ed435b; }
		.grispale								{ color: #b0b0b0; }
		.grispale2								{ color: #e7e7e8; }
		.grisfonce								{ color: #717174; }

		.focus-noir	em,	.focus-noir	a			{ color: #000000; }
		.focus-blanc em, .focus-blanc a			{ color: #ffffff; }
		.focus-aqua	em,	.focus-aqua	a			{ color: #4cbfff; }
		.focus-bleu-1 em, .focus-bleu-1  a		{ color: #2e87e2; }
		.focus-bleu-2 em, .focus-bleu-2 a		{ color: #0061ac; }
		.focus-bleu-3 em, .focus-bleu-3 a		{ color: #003361; }
		.focus-rose em,	.focus-rose a			{ color: #ed435b; }

/*	============================================================================
	BOUTONS
	========================================================================== */		
		[class*="btn-"]							{ display: inline-block; padding: .7rem .5rem; text-transform: uppercase; transition: all .3s; }
		.btn-blanc								{ color: #ffffff; }
		.btn-noir								{ color: #000000; }
		.btn-marine								{ color: #003a5b; }
		.btn-grisfonce							{ color: #717174; }
		.btn-grispale							{ color: #e7e7e8; }
		.btn-bleu-2								{ color: #0061ac; }
		.btn-aqua								{ color: #4cbfff; }
		.btn-rose								{ color: #ed435b; }
		.fasc-button 							{ text-transform: uppercase; padding: .5rem 2rem!important; transition: all .3s; display: inline-block; }
		[class*="btn-"]:hover,
		.fasc-button:hover						{ background-color: #97979a !important; }	
		
		input.link-etape						{ background-color: transparent; border: 0; }
		input.link-etape:hover 					{ background-color: transparent; }	

/*	============================================================================
	ICONS
	========================================================================== */	
		.icon-youtube:before,
		i[title="youtube"]:before 				{ content: '\E800'; } /* '' */
		.icon-facebook:before,
		i[title="facebook"]:before 				{ content: '\E801'; } /* '' */
		.icon-calendar:before,
		i[title="calendar"]:before 				{ content: '\E802'; font-size: 1.5rem; line-height: 1.7rem; vertical-align: middle; /*background-image: url('img/icon_calendrier.png'); */} /* '' */
		.icon-group:before,
		i[title="group"]:before 				{ content: '\E803'; font-size: 1.5rem; line-height: 1.7rem; vertical-align: middle;  } /* '' */
		.icon-location:before,
		i[title="location"]:before 				{ content: '\f041'; color: #ed435b; } /* '' */
        .fa-solid .fa-location-pin:before		{ content: '\f041'; color: #ed435b; } /* '' */	
		.icon-student:before,
		i[title="student"]:before 				{ content: '\E806'; } /* '' */
		.icon-tel:before,
		i[title="tel"]:before 					{ content: '\E807'; } /* '' */
		.icon-earth:before,
		i[title="earth"]:before 				{ content: '\E808'; } /* '' */
		
		.fleche-prev:before						{ content: '\E803'; } /*  */
		.fleche-next:before						{ content: '\E804'; } /*  */
				
		.icon.border:before						{ /*border:2px solid;*/ display: inline-block; width:1rem; height:1rem; line-height: 1rem; text-align: center; padding: 2px; margin-right: .2rem; 
												border-radius: 50%; font-size: .8rem; }		
		
/*	============================================================================
	LISTES À CHIFFFRE
	========================================================================== */	
		.icon-question							{ width: .9rem; height: .9rem; line-height: .9rem; display: inline-block; text-align: center; vertical-align: baseline;}
		.icon-cercle							{ width: 3rem; height: 3rem; line-height: 3rem; margin-right: .5rem; }
		.icon-carre								{ width: 1.9rem; height: 1.9rem; line-height: 1.9rem; margin-right: 1rem; }
		.icon-cercle,
		.icon-carre								{ display: inline-block; text-align: center; color: #fff; font-size: 1.4rem; }
		.icon-ol em								{ font-size: 1.1rem; text-transform: uppercase; font-weight: bold; }
		.icon-ol.type-carre em					{ font-size: 1.9rem; line-height: 1.9rem; font-family: 'Neuton', sans-serif; font-weight: 400;}
		.icon-cercle,
		.icon-question							{ border-radius: 50%;  }
		.icon-cercle.rose,
		.icon-carre.rose						{ background-color: #ed435b; }
		.icon-carre.bleu-1,
		.icon-cercle.bleu-1						{ background-color: #2e87e2; }
		.icon-carre.bleu-2,
		.icon-cercle.bleu-2						{ background-color: #0061ac; }
		.icon-carre.bleu-3,
		.icon-cercle.bleu-3						{ background-color: #003361; }
		.tpl-faq .icon-ol						{ list-style: none; padding-left: 0; }
		@media screen and (max-width: 600px){
			.icon-cercle,
			.icon-carre							{ width: 2rem; height: 2rem; line-height: 2rem; }
		}
		
/*	============================================================================
	MENUS
	========================================================================== */	
		.nav-utility							{ float:right; font-size: 0.75rem;  }	
		.nav-utility li							{ float: left; height: 2rem; }		
			
		.nav-utility li,
		.nav-main li							{ display: inline-block; position: relative; padding:0 1rem }
		.nav-utility li							{ display: block;}
		.nav-utility li:first-child:after		{ position: absolute; right:100%; top: 0; content: ""; border-top: 2rem solid #717174; border-left: 1.75rem solid transparent; }
		.nav-utility li a						{ line-height: 2rem; height: 2rem; display: inline-block; }
		.nav-utility .youtube a					{ font-size: 1.2rem; }
		
		.nav-utility li.icon					{ font-family: 'Quattrocento Sans', sans-serif!important}
		.nav-utility li.icon:before				{ font-family: "fontello";}
		.nav-main 								{ padding-top: 1rem; }
		#menu-main-fr>li						{ /*background: #0061ac;*/ background: #003361; padding-bottom: 1rem; }
		.nav-main li							{ border-bottom: .25rem solid transparent; }
		.nav-main li:hover,
		.nav-main .current-menu-item,
		.nav-main li.current-menu-parent		{ border-bottom-color: #4cbfff; }
		
		
		.nav-main .sub-menu li					{ margin: 0 1rem; padding: .3rem 0; }
		.nav-utility li:hover .sub-menu,
		.nav-main li:hover .sub-menu			{ max-height: 700%; }
		.nav-utility .sub-menu,
		.nav-main .sub-menu						{ display: block; position: absolute; top: 100%; left: 0; max-height: 0; overflow: hidden; z-index: 3; background-color: inherit; 
												white-space: nowrap; transition: all .3s; text-align: left;}	
		.nav-main .sub-menu li					{ display: block; float:none; }	
		
		.header_path							{ position:relative; /*padding-top: .5rem; padding-bottom: .5rem; border-bottom: 4px solid #ffffff; /*border-top: 2.25rem solid #ffffff;*/ }
		.header_path .bredcrumb					{ font-size: 0.8rem;}
/*	============================================================================
	MENU MOBILE
	========================================================================== */	
		.nav-mobile								{ display: none; width: 100%; }			
		.mobile									{ position: fixed; top: 0; left: -75%; width: 75%; height: 100%; z-index: 5; transition: all .5s; overflow: auto; }
		.mobile-main li							{ display: block; padding: 1rem 0 .5rem 0; }
		
		.mobile-main .sub-menu					{ display: block; margin-left: 1rem; text-transform: none; }
		.mobile-main .sub-menu li				{ padding: .5rem 0; }
		
		.lbl_menu								{ padding: .2rem .5rem; }
		#menu-mobile:checked + .lbl_menu + .mobile,
		#menu-mobile:checked ~ .lbl_menu ~ .mobile	{ left: 0; }
		.btn-close				 				{ padding: .5rem; line-height: .5rem;}
		.icon-bar								{ display: block; margin-top: .3rem; width: 2rem; height: .3rem; content: ""; }
		
		@media screen and (max-width: 1000px ){
			.nav-main li { padding-left: 5px; padding-right: 5px; font-size: 15px;}
		}
		@media screen and (max-width: 820px ){
			.nav-mobile							{ display: table; }	
			.nav-main,
			.header_path,
			.menu-utility						{ display: none; }
		}
		
		@media screen and (max-width: 600px){
			.mobile								{ left: -100%; width: 100%; }
		}
		
/*	============================================================================
	ITEMS
	========================================================================== */	
		.item									{ display: block; box-sizing: border-box; position: relative; overflow: hidden;  width: 100%; }
		
		.item.pub								{ padding: 3rem 3rem 0; }
		.item.pub .cell							{ vertical-align: bottom; }
		
		@media screen and (max-width: 1000px){
			.item.pub							{ padding: 0; }
		}	
				
/*	============================================================================
	INNER ITEM
	========================================================================== */	
		.item-inner								{ height: 1px; background-size: cover; background-repeat: no-repeat; background-position: center center; }
		.item-inner > .table					{ height: 100%; }						
		.item-inner > img						{ width: 100%; }
	
		.item-inner.bigpad						{ padding: 3rem; }
		.item-inner.smallpad					{ padding: 2rem 6rem; }
		.item-inner.titre						{ padding: 1rem 6rem 0; }
		.item-inner.titre .box					{ padding-bottom: 0; }
		.item.pub>.item-inner:first-child		{ padding-right: 1.5rem; }
		.item.pub>.item-inner:nth-child(2)		{ padding-left: 1.5rem; }
		
		@media screen and (max-width: 1050px){
			.item-inner.smallpad 				{ padding: 2rem 3rem; }
		}
		
		@media screen and (max-width: 1000px ){
			.item.pub>.item-inner:first-child,		
			.item.pub>.item-inner:nth-child(2)	{ padding: 0; }
		}
		
		@media screen and (max-width : 600px){
			.item-inner.bigpad,						
			.item-inner.smallpad				{ padding: 1rem; }			
		}
		
/*	============================================================================
	ITEM BANNER
	========================================================================== */	
		.item-banner							{ background-size: cover; background-position: top center; height: 40vw; vertical-align: middle; position: relative; }	
		.banner-vid								{ height: auto;}
		.inner-banner							{ display: inline-block; width: 100%; }	
		.banner-vid .inner-banner				{ position: absolute; top: 25%; left: 0; width:100%; height: 75%; z-index: 3; }
		.div_inscrire							{ z-index: 2; top:0; right: 5%; /*margin-top: -2.25rem;*/ padding: 1rem 1.5rem }
		.div_inscrire h2						{ font-size: 1.2rem; line-height: 1.5rem; }
				
		@media screen and (max-width:1500px){
			.div_inscrire						{ right: 2%; }
		}
		@media screen and (max-width:1380px){
			.div_inscrire						{ right: 2%; padding: 1rem 2rem; }
		}
		@media screen and (max-width:1100px){
			.div_inscrire						{ right: 1%; }
		/*}
		@media screen and (max-width:1100px){*/
			.banner-vid .inner-banner			{ top: 15%; }
		}
		
	/*	@media screen and ( max-width: 1000px ){
			.item-banner p							{ margin-bottom: 0; }
		}
		
		@media screen and (max-width: 900px){
			.div_inscrire						{ padding: 1rem; }

		}
		@media screen and (max-width: 800px){
			.banner-vid .inner-banner 			{ height:100%; position: relative!important; }
			.item-banner video					{ display: none; }
			.item-banner:not(.cake-slider)		{ padding: 3rem; }
		}
	
/*	============================================================================
	TÉMOIGNAGES - VIDÉO SLIDER
	========================================================================== */	
		.item.video .slider-video				{ margin-left:18%; padding-top: 1rem; }
		.item.video .temoin-video,					
		.item-temoignages.video					{ padding: 3rem; }
		.item.video>.item-inner,
		.item-temoignages.video  				{ padding-top: 3rem; } 	
		.btn_temoin								{ position: absolute; bottom: 100%; right: 0; padding: .5rem 1rem; }
		.btn_temoin:after 						{ position:absolute; left: 100%; top: .5rem;  content:""; width: 0; height: 0; border-top: .5rem solid transparent; border-left: .5rem solid #ffffff; 
												border-bottom: .5rem solid transparent; }
		.align-top .item-temoignages			{ vertical-align: top; }
		
		@media screen and (max-width: 1000px){
			item-temoignages.video .slider-video{ margin: 1rem 2rem 1rem; }
			.item.video .slider-video			{ margin-left: 0; }
			.item.video>.item-inner				{ padding: 3rem 1rem 1rem; }
		}
		
/*	============================================================================
	LOGOS
	========================================================================== */
		.slide-logo								{ width: 20%; padding: 3rem 2rem }
		.logo.container-slider					{ width: 80%; margin: auto; position: relative; }
		.logo-next, 
		.logo-prev								{ position: absolute; display: inline-block; width: 10%; height: 2.6rem; line-height: 2.6rem; top: 50%; margin-top: -1.3rem; font-size: 2.6rem; text-align: center; }
		.logo-next								{ left: 100%; }
		.logo-prev								{ right: 100%; }
		
		@media screen and (max-width: 1200px){
			.slide-logo							{ padding: 3rem 1rem }
		}
		
		@media screen and (max-width: 1100px){
			.logo.container-slider				{ width: 90%; }
			.logo-next, 
			.logo-prev							{ width: 5%; }
		}
		
		@media screen and (max-width: 965px){
			.slide-logo							{ width: 25%; } 
		}
		
		@media screen and (max-width: 565px){
			.slide-logo							{ width: 50%; } 
		}
				
/*	============================================================================
	CENTER BLOCK
	========================================================================== */
		.item-inner.center-block				{ text-align: center; }
		.item-inner.center-block .inner			{ display:inline-block; max-width: 50%; margin:auto; padding: 3rem; }
		.item-inner.center-block .icon 			{ float: left; line-height: 4rem; font-size:4rem; margin: 0 1rem;  }	
		.item-inner.center-block .icon a		{ color: #ffffff; }
		
		@media screen and (max-width: 1300px){
			.item-inner.center-block .inner		{ max-width: 50%; }
		}
		
		@media screen and (max-width: 950px){
			.item-inner.center-block .inner		{ padding: 3rem; max-width: 100%; }
		}
		
		@media screen and (max-width: 600px){
			.item-inner.center-block .inner		{ padding: 3rem 1rem; }		
		}
		
		
/*	============================================================================
	ITEM-MAP / THIRD
	========================================================================== */
		.item.map								{ padding: 4rem .8rem; text-align: left; }	
		.item-map .h2							{ font-size: 1.7rem; }
		.item.map .third:nth-child(3)			{ border-left: 2px solid #4cbfff; }
		.third									{ background-size: cover; background-position: center center; background-repeat: no-repeat; }
		.third .item-map						{ list-style: none; margin: 0; }
		.third .item-map 						{ margin-left: 1rem; }
		.third .item-map li						{ margin: .5rem; }
	
		@media screen and (max-width: 1400px){
			.item.map .bigpad					{ padding: 2rem 0; }
		}
		
		@media screen and (max-width: 1100px){
			.item.map .third:nth-child(3)		{ width: 100%; display: block; float: none; border-left: 0; }
			.item.map .grid-33					{ width:50%; display: block; height: auto; float: left; }
		}
		
		@media screen and (max-width: 800px){
			.item-map .h2							{ font-size: 1.5rem; }
		}
		
		@media screen and (max-width: 700px){
			.item.map .bigpad					{ padding: 0; }
			.item.map .grid-33 					{ width: 100%; height: auto; }
		}
		
/*	============================================================================
	ITEM-GALERIE
	========================================================================== */
		.item-galerie img						{ width:100%; }
		.item-galerie .table					{ height: 40vw; }
		.item-galerie .cell						{ background-size: cover; background-repeat: no-repeat; background-position: center center; min-height: 33vw; }
		
		@media screen and (max-width: 780px ){
			.item-galerie .cell,
			.item-galerie .table,
			.item-galerie .row					{ display: block; }
			.item-galerie .grid-40				{ display: none; } 
			.item-galerie .grid-60				{ width: 100%;}
			.item-galerie .grid-33				{ width:50%; float: left!important; height: 50vw; }
		}
		
/*	============================================================================
	ITEM-INFO
	========================================================================== */							
		.item-info .grid-25						{ background-size: cover; background-repeat: no-repeat; background-position: center center; } 
		
		@media screen and (max-width : 800px ){
			.item-info .padded-horizontal		{ padding-left: 1rem; padding-right: 1rem; }
		}
		
		@media screen and (max-width : 800px ){
			.item-info .grid-25					{ display: none; }
			.item-info .padded-horizontal		{ padding-left: 1rem; padding-right: 1rem; width:100%; display: block; }
		}

/*	============================================================================
	FORMATIONS
	========================================================================== */
		.option-img								{ position: relative; top: -10rem; margin-bottom: -10rem; }
		.option-img	img							{ width:60%; margin: 5% 20%; }
		.option-note 							{ font-size: 1rem; line-height: 1.2; padding-left: 10rem; padding-right: 10rem; }
		
		.desc-general .container-slider			{ padding: .5rem 8rem; margin-top: 2rem; margin-bottom: 3rem; }
		.prev,
		.next									{ position: absolute; top: 50%; width: 2rem; height: 2rem; margin-top: -1rem; text-align: center; font-size: 1.5rem; line-height: 2rem; }
		.prev									{ left: 6rem; }
		.next									{ right: 6rem; }
		.taxonomies .h3,
		.lbl_tax.h3,
		.equivalence							{ padding: .5rem 1rem; position: relative; border: 0; box-sizing: border-box; width: 100%; text-align: left; font-size: .8rem; }
		.lbl_tax.h3								{ padding-left: 3rem; }
		.lbl_tax.lbl_cat						{ padding: 1rem 1rem 1rem 4rem; }

		.lbl_tax.h3								{ position: relative; }
		.lbl_tax.h3:before						{ position:absolute; width: 2rem; height: 2rem; content: "+"; color: #000; background-color: #e7e7e8; top: 0; left:0; text-align: center; 
												vertical-align: middle;
												padding-top: .4rem; box-sizing: border-box; transition: all .3s; }
		.lbl_tax.lbl_cat:before					{ width: 3rem; height: 3rem; box-sizing: border-box; padding-top: .95rem; }
												
		.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; }
		.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; }
		
		.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: #ed435b; }
		.div_campus:before						{ color: #97979a; }
		.div_session:before						{ color: #717174; }
		.dd_calendar							{ font-size: inherit; font-family: inherit; background: none; border: none; -webkit-appearance:none; box-sizing: border-box; 
												padding: 0 1rem 0 1rem; margin: 0; width: 100%; height: 2rem; line-height: 2rem; position: relative; text-transform: uppercase; white-space: normal; }
		.dd_calendar option						{ color: #000000; }							
		.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 #2e87e2; font-size: 1rem; }
		.etapes-mobile:before					{ content: "▼"; font-size: 1rem; background: #2e87e2;  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; margin-left: auto; margin-right: auto; 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; }
		.form_total								{ border-top: .2rem solid #d3d3d3;  }
		
		.rabais									{ position: relative; font-size: 2.2rem; line-height: 2.2rem; font-weight: bold; margin-bottom: 3rem; }
		.rabais:before							{ position:absolute; content: ""; top: 100%; left: 50%; margin-left: -1.1rem; width: 0; height: 0; border-left: 1.1rem solid transparent; 
												border-right: 1.1rem solid transparent; border-top: 1rem solid #e7e7e8;  }
		.rabais:after							{ position: absolute; content:""; top: 0; right:0; width:165px; height: 105px; background-image: url(images/rabais.png); background-size: contain; }
		.rabais h3								{ margin-bottom: 0; }
		
		.lbl_week								{ left: 10%; border-left: .1rem solid #dddddd; box-sizing: border-box; height: .8rem; margin-top: .5rem;}
		.lbl_week:before						{ position: absolute; content: ""; top:100%; left:0; width: 0; height:0; margin-left: -.25rem; margin-top: .2rem; border-left: .2rem solid transparent; 
												border-right: .2rem solid transparent; border-bottom: .2rem solid #dddddd; }
		.lbl_week:after							{ content: attr(data-after); left:0; top: 100%; position: absolute; width:1.25rem; height:1.25rem; line-height: 1.25rem; text-align: center; 
												margin-left: -.675rem; background: #dddddd; margin-top: .4rem }
		.div_week .cell.border					{ border-left: 2px solid #97979a; height: 1rem; box-sizing: border-box;}
		.div_week .cell.border:first-child		{ border: 0; }
		
		.ui-widget-content.ui-slider-horizontal	{ height: .2rem; background: #97979a; box-sizing: border-box;}	
		.ui-widget-header.ui-slider-range-min	{ background: #000000; }
		.ui-slider-handle						{ border-radius: 50%; border: 1rem solid #97979a; background: #ffffff; width: 1.1rem; height: 1.1rem; margin-top: -0.35rem; margin-left: -0.55rem   }

		input.focus,
		select.focus								{ border:1px solid red; }
	
		#div_credit,
		#div_cheque,												
		#div_payment,
		.other_adresse							{ max-height: 0; overflow: hidden; transition: .5s; }
		
		#credit_card:checked ~ #div_payment,
		#cheque_btn:checked ~ #div_payment,										
		#credit_card:checked ~ #div_payment #div_credit,			
		#cheque_btn:checked ~ #div_payment #div_cheque	{ max-height: 1000px; }	
			
		#cb_oadresse:checked + .other_adresse				{ max-height: 500px; }
		
		@media screen and (max-width: 1050px){
			.etapes_form.center								{ padding-left: .2rem; }
		}
		
		@media screen and (max-width: 850px){
			.etapes.table						{ display: none; }
			.etapes-mobile						{ display: block; }
			.div_week.grid-75					{ width: 100%; margin-bottom: 5rem; }
			.tbl_week .cell						{ display: block; }						
		}
		
		@media screen and (max-width: 800px){
			.cours_form .icon-group.grid-20		{ display: none; }
			.cours_form .table .grid-20:last-child{ margin-top: 5px; }
		}
		
		@media screen and (max-width: 600px){
			.cours_form .table,
			.cours_form .cell					{ display: block; margin-left: 0; }
			.rabais:after						{ width: 100px; height: 64px; }
		}
		
		@media screen and (max-width: 500px){
			.mobile-datepicker,
			.mobile_div_week					{ display: block; }
			.nb_week							{ display: none; }
		}
	
	/* CALCULATEUR */
		.calculateur legend						{ padding: 0; }
		.calculateur .par_mois					{ position: fixed; width: 10%; top: 34%; right: -9%; transition: all .5s; }
		.calculateur .par_mois:before			{ position: absolute; content: "+"; color:#fff; width: 5%; right: 100%; top: 50%; margin-top: -.5rem; height: 1rem; line-height: 1rem; }
		.calculateur .par_mois:after			{ position: absolute; content: ""; background: #ed435b; top: 25%; height: 50%; right: 65%; border-radius: 50px; z-index: -1; width: 50%; }
		#cb_par_mois:checked + .par_mois:before	{ content: "-"; }
		#cb_par_mois:checked + .par_mois		{ right:0;  }
		.calculateur .par_mois>div				{ padding: .5rem 0; }
		
		.lbl_cost 								{ line-height: 1.7rem; margin-left: 2.9rem; }
		.cb_cost:checked + .lbl_cost:before		{ content: "●"; color: #fff; }
		.program,
		.ressource,
		.duree									{ border: 0; }
		.ams-sep								{ border-top: 0; width: 100%; height: 2.75rem; background-image: url(images/logo_gris_ligne.png); background-size: contain; 
												background-position: center center; background-repeat: no-repeat; }
		.resultats								{ width: 50%; margin: auto; font-size: .85rem; }
		.resultats .border,
		.par_mois .border						{ border-top: .1rem solid #fff; }
	
		.calculateur .dd_div.hidden				{ margin:1rem; }
	
	@media screen and (max-width: 850px){
		.calculateur .grid-33					{ width:50%; }
		.calculateur .grid-90					{ width: 80%; }
	}
	
	@media screen and (max-width: 600px){
		.calculateur .grid-33					{ width:100%; }
	}
	
	@media screen and (max-width: 510px){
		.calculateur .grid-90					{ width: 75%; }
	}
	
	@media screen and (max-width: 500px){
		.calculateur .dd_div.hidden				{ display: block; }
	}
	
	/* FOOTER */
		.footer-menu							{ padding: 2rem 15rem; }
		.nav-footer li							{ display:block; margin: 0 4rem;  }
		.nav-footer li a						{ display:block; padding: .5rem 0; border-top: 1px solid #fff; font-size: .85rem; line-height: 1;}
		.nav-footer li:first-child a			{ border: 0; }
		
		.fb-div									{ font-size: 1.9rem; line-height: 2rem; font-family: 'Neuton', serif; }
		.fb_icon								{ font-size: 3.5rem; line-height: 4rem; vertical-align: bottom; }
		.fb_likes:before,
		.fb_likes:after							{ content: ""; background-color: #fff; position: absolute; top: 50%; width: 2.5rem; height: .15rem; }														
		.fb_likes:before						{ right: 100%; }
		.fb_likes:after							{ left: 100%; }
		
		.footer .bkg-grispale					{ padding: .2rem; }
		
		#livechat-compact-container				{ color: #000000!important; }
		
		@media screen and (max-width: 1300px){
			.footer-menu						{ padding: 2rem 10rem; }
		}
		
		@media screen and (max-width: 1200px){
			.footer-menu						{ padding: 2rem 8rem; }
		}
		
		@media screen and (max-width: 1150px){
			.footer-menu						{ padding: 2rem 3rem; }
		}
		
		@media screen and (max-width: 1000px){
			.nav-footer,
			.fb-div,
			.jaimes								{ margin: auto; width:50%; text-align: center; }
			.nav-footer							{ padding-bottom: 1rem; }
		}
		
		@media screen and (max-width: 800px){
			.nav-footer,
			.fb-div								{ width: 80%; }
		}
		
		@media screen and (max-width: 600px){
			.nav-footer,
			.fb-div								{ width: 100%; }
			.footer-menu						{ padding: 2rem 1rem; }
		}

/*	============================================================================
	ÉTUDIANTS & CARTES CADEAU
	========================================================================== */
	.item-gift									{ width: 800px; height: 543px; margin: auto; padding-top: 20px; padding-left: 20px; box-sizing: border-box; }
	.gift-image									{ top: 0; left: 0; width: 100%; height: 100%; z-index: -1; }
	
	.col-student.cell							{ vertical-align: top; padding-right: 3rem; padding-left: 3rem }
	.col-student.first							{ border-right: 2px solid #0061ac;  }
	.col-student.last							{   }
	.div-student								{ padding: .5rem 0;}
	.col-student .lbl_cb						{ line-height: 1rem; padding-left: 1.5rem; }
	.col-student .lbl_form:before				{ width: 1rem; height: 1rem; padding-top: 0;line-height: inherit; }
	
/*	============================================================================
	POPUP 
	========================================================================== */
	.popup-container								{ position: fixed; left: 0; top: 0; width: 100%; height: 100%; background-color: rgba( 255,255,255,.75); z-index: -1; opacity: 0; transition: all .3s; }
	[id*="in-popup-"]:checked ~ .popup-container	{ z-index: 10; opacity: 1; }
	.popup-container .inner-popup					{} 

/*	============================================================================
	BLOGUE & POSTES
	========================================================================== */  		
	.c-mobile__thumb,
	.bgl-content .show-mobile					{ display: none; }
	.bgl-content .sel_doc						{ margin-bottom: 0; }
	.blg-popular								{ list-style: none; padding: 0; margin: 0; }
	.blg-popular li								{ display: inline-block; padding: 0 1rem; }
	.blg-popular li:first-child					{ padding-left: 0; }
	.sdb-btn									{ border-radius: 50%; line-height: 2rem; width: 2rem; text-align: center; }
	.sdb-btn:hover 								{ background-color: #4cbfff; }
	.bgl-content .sel_doc						{ width: 100%; background-color: #0061ac; }
	.bgl-content .sel_doc:before				{ right: auto; left: 0; background-color: #e7e7e8; color: #000; content: '+'; }
	.bgl-content .sel_doc select				{ width: 100%; padding-left: 2.5rem; box-sizing: border-box; }
	.bgl-content .page-numbers					{ display: inline-block; color: #0061ac; padding: .25rem; font-weight: bold; }
	.bgl-content .page-numbers.current			{ color: #000; }
	.bgl-content a.page-numbers:hover			{ color: #000; }
	
	.job-content .sel_doc						{ width: auto; margin-right: 1rem}							
	
	@media screen and ( max-width: 1200px ){
		.blg-popular li								{ padding: 0 .5rem; }
		.sdb-btn.inline-block						{ display: block; margin: 1rem 0 0; }
		.bgl-content .sgl-content					{ padding-left: 1rem; padding-right: 1rem; }
	}
	
	@media screen and ( max-width: 1100px ){
		.bgl-content form							{ padding-top: 1rem; }
		.blg-popular li								{ padding: 0 1rem; }
		/*.blg-filter__tlt,
		.blg-filter__tax							{ padding-left: 1rem; padding-right: 1rem; }*/
		.c-mobile__thumb							{ display: block; float: left; }
	}
	
	@media screen and ( max-width: 1000px ){
		
		.bgl-content .hidden-mobile					{ display: none; }
		.bgl-content .show-mobile					{ display: block; }
		/**/
		.sdb-btn.inline-block						{ display: inline-block; margin: 0 0 0 .5rem; }
		.bgl-content .width-40 .inner				{ padding: 3rem 0; }
		.blg-sidebar .inner							{ max-width: 100%; }
	}
	
	
	@media screen and ( max-width: 875px ){
		.bgl-content form							{ padding-top: 0; }
		.bgl-content .blg-popular					{ display: none; }
		.bgl-content .sgl-content					{ padding-top: 2rem; }
	}
	
	@media screen and ( max-width: 500px ){
		.c-mobile__thumb							{ display: none; }
	}
	
/*	============================================================================
	Helpers
	========================================================================== */

/* SLIDER */
	.container-slider							{ position:relative; }
	.slider										{ overflow: hidden; }
	.slides										{ display: block; position: relative; left:0; white-space: nowrap; }
	.slide										{ display:inline-block; white-space: normal; box-sizing: border-box; vertical-align: middle; }
	.slide:not(.slide-logo)						{ width:100%; }
	
	.cake-slider								{ height: auto; }
	.cake-slider .slide							{ padding-bottom: 35%; background-size: cover; background-repeat: no-repeat; background-position: center center; }
	.c-slider__thumbs							{ bottom: 0; left: 0; width: 100%; z-index: 2; box-sizing: border-box; transition: all .3s; }
	.focus-aqua	a.focus							{ color: #003361; }
	
	@media screen and ( max-width: 650px){
		.cake-slider .slide						{ padding-bottom: 0; background-image: none;}
		.cake-slider img.hidden					{ display: block; }
		
	}
	
/* Box elements */
	.box, 
	[class*="pad-"], [class*="grid-"]			{ box-sizing: border-box; }
	.box > :last-child							{ margin-bottom: 0; }
	.pad-none									{ padding: 0; }
	.margin-none								{ margin-bottom: 0; }
	
	
/* Images replacements */
	.ir											{ display: block; border: 0; text-indent: -999em; direction: ltr;
												background-color: transparent; background-repeat: no-repeat; 
												text-align: left; }
	.ir br										{ display: none; }

/* google maps */
	.googlemaps									{ position: relative; height: 700px; }
	.html-mobile .googlemaps					{ height : 0; }
	.html-mobile .googlemaps:before				{ content: ''; position: absolute; top: 0; left: 0; 
												width: 100%; height: 100%; z-index: 2;  }
	.js-map										{ height: 100%;}
	.js-map	img									{ max-width: none; }
	.js-marker									{ visibility: hidden;}
	.js-marker .info							{ position: fixed; top: 0; left: -9999em; visibility: hidden;}			
	.scrollFix 									{ overflow: hidden; white-space: nowrap; display: block; }	



/* Clearfix */
	.clearfix:before, .line:before, 
	.clearfix:after, .line:after				{ content: ""; display: table; }
	.clearfix:after, .line:after				{ clear: both; }

/* Clears */
	.clear										{ display: block; clear: both; overflow: hidden; }
	br.clear									{ height: 1px!important; margin-top: -1px; margin-bottom:0; }

/* Fonts & Texts */
	.left										{ text-align: left; }
	.right										{ text-align: right; }
	.center										{ text-align: center; }
	.justify									{ text-align: justify; }
	.lower										{ text-transform: lowercase; }
	.normal-case								{ text-transform: none; }
	.caps										{ text-transform: uppercase; }

/* Floats & Alignements */
	[class*="align-"], [class*="float-"], 
	.align-center, .align-right, .align-left,
	.alignright, .alignleft						{ display: block; }
	.align-center, .centered					{ margin-left: auto; margin-right: auto; float: none!important; }
	.align-right, .alignright, .float-right		{ float: right; }
	.align-left, .alignleft, .float-left		{ float: left; }

/* Icons */
	i .icon									{ font-family: "fontello"; font-style: normal; font-weight: 400; text-decoration: inherit; }
	.fleche										{ font-family: "fleche"; font-style: normal; font-weight: 400; text-decoration: inherit; }
	i:before									{ speak: none; display: inline-block; width: 1em; margin-right: .2em; 
												text-align: center; font-variant: normal; text-transform: none; 
												line-height: 1em; }

/* Others */
	.toggle										{ position: fixed; top:0; left: -9999em;}
	.ltr										{ direction: ltr; }
	.rtl										{ direction: rtl; }	

	.videoWrapper 								{ position: relative; padding-bottom: 56.25%; height: 0; display: block; }
	
	.videoWrapper iframe 						{ position: absolute; top: 0;left: 0; height: 100%; width: 100%; }	
	
	
	video										{ display: block; position: relative; z-index: 1; width: 100%; }
/* Table layouts */
	.table										{ display: table; width:100%; table-layout: fixed; }
	.row										{ display: table-row; height: 1px; }
	.cell										{ display: table-cell; vertical-align: middle;  }
	.expand										{ height: auto; }
	.align-top									{ vertical-align: top; }
	.align-middle								{ vertical-align: middle; }
	.align-bottom								{ vertical-align: bottom; }
	
	.table.hcenter:before,
	.table.hcenter:after						{ content: ""; display: table-row; height: auto; } 
	
/* Vertical aligned block */
	.valign:before, .valign > .aligned 			{ display: inline-block; vertical-align: middle; }
	.valign > .aligned.top						{ vertical-align: top; }
	.valign > .aligned.bottom					{ vertical-align: bottom; }
	.valign > .aligned.middle					{ vertical-align: middle; }	
	.valign:before 								{ content: ""; width: 0; margin-left: -.3em;  padding-top:  100%; }
	
/* Displays & Positionning */
	.static										{ position: static; }
	.relative									{ position: relative; }
	.absolute									{ position: absolute; }
	.inline										{ display: inline; }
	.inline-block								{ display: inline-block; }
	.block										{ display: block; }

/* Background-positionning */	
	.bkg-cover									{ background-size: cover; }
	.norepeat									{ background-repeat: no-repeat; }
	.right-top									{ background-position: right top; }
	.right-center								{ background-position: right center; }
	.right-bottom								{ background-position: right bottom; }
	.center-top									{ background-position: center top; }
	.center-center								{ background-position: center center; }
	.center-bottom								{ background-position: center bottom; }
	.left-top									{ background-position: left top; }
	.left-center								{ background-position: left center; }
	.left-bottom								{ background-position: left bottom; }
	
/* Other */
	.hidden										{ display: none; }
	
/* Fluid Grid */
	[class*="grid-"]							{ float: left; }
	.line, [class*="grid-"].last				{ float: none; width: auto; overflow: hidden; }
	[class*="grid-"].cell						{ float: none; }
	[class*="grid-"].centered					{ width: 100%; margin-left: auto; margin-right: auto; float: none;} 
	.grid-5										{ width: 5%; }
	.grid-10									{ width: 10%; }
	.grid-12									{ width: 12.5%; }
	.grid-15									{ width: 15%; }
	.grid-16									{ width: 16.66666%; }
	.grid-20									{ width: 20%; }
	.grid-25									{ width: 25%; }
	.grid-30									{ width: 30%; }
	.grid-33									{ width: 33.33333%; }
	.grid-35									{ width: 35%; }
	.grid-40									{ width: 40%; }
	.grid-45									{ width: 45%; }
	.grid-50									{ width: 50%; }
	.grid-55									{ width: 55%; }
	.grid-60									{ width: 60%; }
	.grid-65									{ width: 65%; }
	.grid-66									{ width: 66.66666%; }
	.grid-70									{ width: 70%; }
	.grid-75									{ width: 75%; }
	.grid-80									{ width: 80%; }
	.grid-85									{ width: 85%; }
	.grid-90									{ width: 90%; }
	.grid-95									{ width: 95%; }
	.grid-100									{ width: 100%; float: none; }
	
	.grid-5.centered							{ max-width: 5%; }
	.grid-10.centered							{ max-width: 10%; }
	.grid-12.centered							{ max-width: 12.5%; }
	.grid-15.centered							{ max-width: 15%; }
	.grid-16.centered							{ max-width: 16.66666%; }
	.grid-20.centered							{ max-width: 20%; }
	.grid-25.centered							{ max-width: 25%; }
	.grid-30.centered							{ max-width: 30%; }
	.grid-33.centered							{ max-width: 33.33333%; }
	.grid-35.centered							{ max-width: 35%; }
	.grid-40.centered							{ max-width: 40%; }
	.grid-45.centered							{ max-width: 45%; }
	.grid-50.centered							{ max-width: 50%; }
	.grid-55.centered							{ max-width: 55%; }
	.grid-60.centered							{ max-width: 60%; }
	.grid-65.centered							{ max-width: 65%; }
	.grid-66.centered							{ max-width: 66.66666%; }
	.grid-70.centered							{ max-width: 70%; }
	.grid-75.centered							{ max-width: 75%; }
	.grid-80.centered							{ max-width: 80%; }
	.grid-85.centered							{ max-width: 85%; }
	.grid-90.centered							{ max-width: 90%; }
	.grid-95.centered							{ max-width: 95%; }
	
	@media screen and (max-width: 1000px ){
		.grid-50								{ width: 100%; display: block; height: auto; }
	}
	
	@media screen and (max-width: 850px ){
		.grid-25:not(.total)						{ width: 50%; }
	}
	
	@media screen and (max-width: 800px ){
		.grid-40,
		.grid-20								{ width: 100%; display: block; }
		.grid-10								{ width: 15%; }
	}
	
	@media screen and (max-width: 500px ){
		.grid-25:not(.total)					{ width: 100%; }
		.grid-10								{ width: 25%; }
		.grid-75								{ width: 60%; }
		.grid-25.total							{ width: 40%;}
	}
	
	.flex 												{ display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;  
														  align-items: stretch; box-sizing: border-box; }

	.flex.wrap											{ -webkit-box-orient: horizontal; -webkit-box-direction: normal; -webkit-flex-direction: row; 
														  -ms-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; 
														  flex-wrap: wrap;  }
	
	.flex > .width,
	.flex > [class^="width-"],
	.flex > [class*="width-"]							{ -webkit-box-flex: 1; -webkit-flex-grow: 1; -ms-flex-positive: 1; flex-grow: 1; 
														  -webkit-flex-shrink: 1; -ms-flex-negative: 1; flex-shrink: 1; }
	.no-grow .flex > [class*="width-"],
	.flex.no-grow > .grid,
	.flex.no-grow > [class^="width-"],
	.flex.no-grow > [class*="width-"]					{ -webkit-flex-grow: 0; flex-grow: 0; }
	
	.flex > [class*="width-"].align-top					{ align-self: flex-start; }
	.flex > [class*="width-"].align-bottom				{ align-self: flex-end; }
	.flex > [class*="width-"].align-center				{ align-self: center; align-items: center; }

	
    .flex .justify-center								{ -webkit-justify-content: center; justify-content: center;  }
	
	.flex > .width										{ -webkit-flex-basis: auto; -ms-flex-preferred-size: auto; flex-basis: auto; }
	.flex > .width-5									{ -webkit-flex-basis: 5%; -ms-flex-preferred-size: 5%; flex-basis: 5%; }
	.flex > .width-10									{ -webkit-flex-basis: 10%; -ms-flex-preferred-size: 10%; flex-basis: 10%; }
	.flex > .width-15									{ -webkit-flex-basis: 15%; -ms-flex-preferred-size: 15%; flex-basis: 15%; }
	.flex > .width-20									{ -webkit-flex-basis: 20%; -ms-flex-preferred-size: 20%; flex-basis: 20%; }
	.flex > .width-25									{ -webkit-flex-basis: 25%; -ms-flex-preferred-size: 25%; flex-basis: 25%; }
	.flex > .width-30									{ -webkit-flex-basis: 30%; -ms-flex-preferred-size: 30%; flex-basis: 30%; }
	.flex > .width-33									{ -webkit-flex-basis: 33.33333%; -ms-flex-preferred-size: 33.33333%; flex-basis: 33.33333%; }
	.flex > .width-35									{ -webkit-flex-basis: 35%; -ms-flex-preferred-size: 35%; flex-basis: 35%; }
	.flex > .width-40									{ -webkit-flex-basis: 40%; -ms-flex-preferred-size: 40%; flex-basis: 40%; }
	.flex > .width-45									{ -webkit-flex-basis: 45%; -ms-flex-preferred-size: 45%; flex-basis: 45%; }
	.flex > .width-50									{ -webkit-flex-basis: 50%; -ms-flex-preferred-size: 50%; flex-basis: 50%; }
	.flex > .width-55									{ -webkit-flex-basis: 55%; -ms-flex-preferred-size: 55%; flex-basis: 55%; }
	.flex > .width-60									{ -webkit-flex-basis: 60%; -ms-flex-preferred-size: 60%; flex-basis: 60%; }
	.flex > .width-65									{ -webkit-flex-basis: 65%; -ms-flex-preferred-size: 65%; flex-basis: 65%; }
	.flex > .width-66									{ -webkit-flex-basis: 66.66666%; -ms-flex-preferred-size: 66.66666%; flex-basis: 66.66666%; }
	.flex > .width-70									{ -webkit-flex-basis: 70%; -ms-flex-preferred-size: 70%; flex-basis: 70%; }
	.flex > .width-75									{ -webkit-flex-basis: 75%; -ms-flex-preferred-size: 75%; flex-basis: 75%; }
	.flex > .width-80									{ -webkit-flex-basis: 80%; -ms-flex-preferred-size: 80%; flex-basis: 80%; }
	.flex > .width-85									{ -webkit-flex-basis: 85%; -ms-flex-preferred-size: 85%; flex-basis: 85%; }
	.flex > .width-90									{ -webkit-flex-basis: 90%; -ms-flex-preferred-size: 90%; flex-basis: 90%; }
	.flex > .width-95									{ -webkit-flex-basis: 95%; -ms-flex-preferred-size: 95%; flex-basis: 95%; }
	.flex > .width-100									{ -webkit-flex-basis: 100%; -ms-flex-preferred-size: 100%; flex-basis: 100%; }
	
	@media screen and (max-width: 1100px) {
		.flex > .width-5								{ -webkit-flex-basis: 3rem; -ms-flex-preferred-size: 3rem; flex-basis: 3rem; }
		.flex > .width-10								{ -webkit-flex-basis: 3rem; -ms-flex-preferred-size: 3rem; flex-basis: 3rem; }
		.flex > .width-15								{ -webkit-flex-basis: 9em; -ms-flex-preferred-size: 9em; flex-basis: 9em; }
		.flex > .width-20								{ -webkit-flex-basis: 220px; -ms-flex-preferred-size: 220px; flex-basis: 220px; }
		.flex > .width-25								{ -webkit-flex-basis: 275px; -ms-flex-preferred-size: 275px; flex-basis: 275px; }
		.flex > .width-30								{ -webkit-flex-basis: 330px; -ms-flex-preferred-size: 330px; flex-basis: 330px; }
		.flex > .width-33								{ -webkit-flex-basis: 366px; -ms-flex-preferred-size: 366px; flex-basis: 366px; }
		.flex > .width-35								{ -webkit-flex-basis: 385px; -ms-flex-preferred-size: 385px; flex-basis: 385px; }
		.flex > .width-40								{ -webkit-flex-basis: 440px; -ms-flex-preferred-size: 440px; flex-basis: 440px; }
		.flex > .width-45								{ -webkit-flex-basis: 495px; -ms-flex-preferred-size: 495px; flex-basis: 495px; }
		.flex > .width-50								{ -webkit-flex-basis: 550px; -ms-flex-preferred-size: 550px; flex-basis: 550px; }
		.flex > .width-55								{ -webkit-flex-basis: 605px; -ms-flex-preferred-size: 605px; flex-basis: 605px; }
		.flex > .width-60								{ -webkit-flex-basis: 660px; -ms-flex-preferred-size: 660px; flex-basis: 660px; }
		.flex > .width-65								{ -webkit-flex-basis: 715px; -ms-flex-preferred-size: 715px; flex-basis: 715px; }
		.flex > .width-66								{ -webkit-flex-basis: 733px; -ms-flex-preferred-size: 733px; flex-basis: 733px; }
		.flex > .width-70								{ -webkit-flex-basis: 770px; -ms-flex-preferred-size: 770px; flex-basis: 770px; }
		.flex > .width-75								{ -webkit-flex-basis: 825px; -ms-flex-preferred-size: 825px; flex-basis: 825px; }
		.flex > .width-80								{ -webkit-flex-basis: 880px; -ms-flex-preferred-size: 880px; flex-basis: 880px; }
		.flex > .width-85								{ -webkit-flex-basis: 935px; -ms-flex-preferred-size: 935px; flex-basis: 935px; }
		.flex > .width-90								{ -webkit-flex-basis: 990px; -ms-flex-preferred-size: 990px; flex-basis: 990px; }
		.flex > .width-95								{ -webkit-flex-basis: 1045px; -ms-flex-preferred-size: 1045px; flex-basis: 1045px; }
		.flex > .width-100								{ -webkit-flex-basis: 1100px; -ms-flex-preferred-size: 1100px; flex-basis: 1100px; }
	}
	
	@media screen and (max-width: 1000px) {
		.flex.medium-wrap									{ -webkit-box-orient: horizontal; -webkit-box-direction: normal; -webkit-flex-direction: row; 
														  -ms-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; 
														  flex-wrap: wrap;  }
	}
	
	
	@media screen and (max-width: 850px) {
		.flex.slow-wrap									{ -webkit-box-orient: horizontal; -webkit-box-direction: normal; -webkit-flex-direction: row; 
														  -ms-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; 
														  flex-wrap: wrap;  }
	}
	
	@media print{
		.print-none,
		header, .menu-utility, .item-banner,
		h2, .btn_form, .footer, .row, 
		#livechat-compact-container				{ display: none; }
		.padded, .padded-top, .padded-bottom, 
		.pad-top, .pad-bottom					{ padding: 0!important; }
		main.table								{ display: block; height: auto; }
		.item-gift								{ max-width: 100%;  }
		.print-zone								{ display: block; padding: 2rem; }
		.print-zone .flex,
		.print-zone	.width-33,
		.print-zone	.width-66					{ width: 100%; display: block;  }
		.print-zone .btn-inscrire,
		.print-zone .bkg-grispale.bleu-3		{ padding-left:0; padding-right:0; color: #000; }
	}		


/* ============================================================================================================== 
 	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: 2.5rem;
	padding: 0;
}

.nmsFormSectionTitle{
	font-family: "Neuton", sans-serif;
	font-size: 38px;
	line-height: 38px;
	color: #86898C;
	margin-bottom: 1.25rem;
}



.nmsFlexContainer {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.formTownSelection{
	width: 66%;
	background: #F5F5F3;
	padding: 1.5rem;
	box-sizing: border-box;
}

.nmsFlexContainer .option-note{
	width: 32%;
	margin: 0;
	padding: 0
}

.formTownSelectionTitle{
    color: black;
	font-size: 0.9rem;
    line-height: 1.1rem;
}

.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: solid 1px #bfbfbf;
    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-size: 0.9rem;
    line-height: 1.1rem;
    font-weight: bold;
}

.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: #1C65B0;
}

.nmsCheckContainer label:hover:before {border-color: #1C65B0;}

.nmsCheckContainer .cb_form:checked + label:before{
	background: #2E87E2;
	border-color: #2E87E2;
	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: #2E87E2;
	color: #2E87E2;
}

.nmsCollapse .nmsCollapseTitle {
    background: #ED435B;
    color: white;
    padding: 0.9rem 3rem 0.9rem 1rem;
    font-size: 1rem;
    line-height: 1rem;
    position: relative;
    cursor: pointer;
    user-select: none;
    transition: all 0.25s ease-in-out;
}



.nmsCollapse .nmsCollapseTitle:after{
    content: "\f078";
    font-family: "Font Awesome 5 Free";
    font-size: 1rem;
    font-weight: 600;
    position: absolute;
    top:  50%;
    right: 1rem;
    transform: translateY(-50%);
    transition: all 0.25s ease-in-out;
}

.nmsCollapse .nmsCollapseContent {
    padding: 0.9rem 1rem;
    display: none;
    color: black;
    font-size: 0.9rem;
    line-height: 1.1rem;
    background: #f5f5f3;
}

.nmsCollapse .nmsCollapseContent p {
    font-size: 0.8rem;
    line-height: 1rem;
}

.nmsCollapse {
    text-align: left;
}

.nmsCollapse.open .nmsCollapseTitle:after {
    transform: translateY(-50%) rotate(180deg);
}

.nmsCollapse .nmsCollapseTitle:hover {
    background: #AD1E32;
}

.nmsSubmitContainer{
	width: 66%;
	display: flex;
	align-items: flex-start;
	margin: 2rem 0 5.5rem;
}

.nmsSubmitContainer.nmsFullWidth{
	width: 100%;
}

.nmsSubmitContainer input[type=submit]{
    margin: 0 0 0 auto;
	min-width: 170px;
	line-height: 1rem;
	transition: all 0.25s ease-in-out;
}

.nmsSubmitContainer input[type=submit]:hover{
	background-color: #1C65B0;
}

.nmsSubmitContainer input[type=submit].disabled {
    pointer-events: none;
    background: #B0B0B0;
    color: #86898C;
}

.nmsSubmitContainer .nmsPrev {
    display: inline-block;
    min-width: 8.5rem;
    box-sizing: border-box;
    border: 1px solid #BFBFBF;
    color: #2E87E2;
    font-size: 0.8rem;
    line-height: 1rem;
    text-transform: uppercase;
    text-align: center;
    padding: 0.5rem 1rem;
    cursor: pointer;
	transition: all 0.25s ease-in-out;
}

.nmsSubmitContainer .nmsPrev:hover {
    border-color: #2e87e2;
}


.etapes {
	display: none;
}

.nmsCoursSelectContainer {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: stretch;
}

.nmsCoursSelectContainer .nmsCoursSelect {
    width: 66.07%;
    margin-right: 1.785%;
}

.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: 0.5rem;
	background: #0061AC;
	transition: all 0.25s ease-in-out;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursTitle {
    width: 100%;
    padding: 1.65rem 7.25rem 1.65rem 1.5rem;
    color: white;
    font-size: 0.9rem;
    line-height: 1.2rem;
    box-sizing: border-box;
    position: relative;
	cursor: pointer;
	transition: all 0.25s ease-in-out;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursTitle h4 {
    font-size: 1.3rem;
    line-height: 1rem;
    font-weight: bold;
	transition: all 0.25s ease-in-out;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursTitle > *:last-child {
    margin-bottom: 0;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursTitle:after {
    content: "\f054";
    font-family: "font awesome 5 free";
    font-weight: 700;
    position: absolute;
    color: #2E87E2;
    top: 1.8rem;
    right: 1.65rem;
    font-size: 2.25rem;
	transition: all 0.25s ease-in-out;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent {
	padding: 1.65rem 1.5rem;
	margin-top: -1px;
	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: black;
    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;
}


.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-size: 0.8rem;
    line-height: 1rem;
}


.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form > label .table .nmsMainTableContent .h3 {
    margin-left: 1.5rem;
    font-weight: bold;
    font-size: 0.9rem;
    line-height: 1.1rem;
    color: #003361;
    margin-bottom: 1rem;
	text-transform: none;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form > label:before {
    top: 1rem;
    left: 1rem;
    right: inherit;
    margin: 0;
    padding: 0;
    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: #2E87E2;
    border-color: #2E87E2;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form > label .table .nmsMainTableContent .item-prealable {
    margin-bottom: 1.3rem;
    font-size: 0.8rem;
    line-height: 1rem;
}

.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: #2E87E2;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .nmsFirstFormContainer .cours_form > label .table .nmsMainTableContent > *:last-child {
    margin-bottom: 0;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle.open {
    background: #F5F5F3;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle.open .nmsCoursTitle {
    color: black;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle.open .nmsCoursTitle h4 {
    color: #003361;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle.open .nmsCoursTitle:after {
    transform: rotate(-90deg);
	color: #B9B9B9;
}


.nmsCoursSelectContainer .nmsAsideContainer .closeForm {
    margin-bottom: 0.5rem;
}

.nmsTotalContainer {
    background: #F5F5F3;
    padding: 1rem;
    width: 100%;
    box-sizing: border-box;
	position: sticky;
    top: 2.5rem;
}

.nmsTotalContainer .nmsTotalTitle {
    font-size: 1.1rem;
    line-height: 1.1rem;
    font-weight: bold;
    color: #003361;
    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 > label {
    margin: 0;
    padding: 1rem 4.55rem 1rem 1.5rem;
    background: #003361;
    color: white;
    font-size: 0.9rem;
    line-height: 1.1rem;
    font-weight: bold;
    text-transform: none;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .cb_input > label:before {
    left: inherit;
    top: 50%;
    right: 0.8rem;
    content: "\f078";
    font-family: "font awesome 5 free";
    font-weight: bold;
    background: none;
    width: auto;
    height: auto;
    padding: 0;
    font-size: 1rem;
    line-height: 1rem;
    transform: translateY(-50%);
    color: white;
    transition: all 0.15s ease-in-out;
}

.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursContent .cb_input > input:checked + label:before {
    transform: translateY(-50%) rotate(180deg);
}

.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: #EBEBEB;
    margin: 0;
    color: black;
}

.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: #373435;
    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: 0.8rem;
}

.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: #F5F5F3;
    padding: 1.515rem 1.5rem;
    box-sizing: border-box;
}

.nmsResumeContainer .nmsCoursTypeContainer {
    margin-bottom: 2.4rem;
}

.nmsResumeContainer .nmsCoursTypeContainer .nmsCoursTypeTitle {
    font-weight: bold;
    font-size: 1.2rem;
    line-height: 1rem;
    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-weight: bold;
    font-size: 0.9rem;
    line-height: 1.1rem;
    color: #003361;
    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%;
}

.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-size: 0.9rem;
}

.nmsPaymentContainer, .nmsWhoForm {
    background: #F5F5F3;
    padding: 1.5rem;
    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-size: 0.8rem;
    line-height: 1rem;
    color: #003361;
    width: 100%;
}

.nmsPaymentContainer .nmsFormLine input {
    width: 100%;
    background: #EBEBEB;
    padding: 0.5rem;
    box-sizing: border-box;
    font-size: 0.8rem;
    color: #003361;
    line-height: 1rem;
    margin: 0;
}

.nmsPaymentContainer .nmsFormLine .nmsFormCell {
    display: inline-block;
    width: 48.53%;
}

.nmsPaymentContainer .nmsFormLine > label {
    max-width: 8.55rem;
    width: 100%;
    position: relative;
    font-size: 0.7rem;
    line-height: 1rem;
    color: #003361;
    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: #EBEBEB;
    top: 0;
    left: 0;
    display: block;
    z-index: -1;
    color: #003361;
    border: 1px solid transparent;
    transition: all 0.25s ease-in-out;
    font-size: 0.7rem;
    padding: 0.5rem;
    box-sizing: border-box;
}

.nmsPaymentContainer .nmsFormLine > label:hover input[type="radio"] + .nmsIcon {
    border: 1px solid #1C65B0;
    background: transparent;
    color: #1C65B0;
}

.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: #2E87E2;
}

.nmsPaymentContainer .nmsFormLine > label:hover input[type="radio"]:checked + .nmsIcon {
    background: #1C65B0;
}

.nmsPaymentContainer .nmsFormLine .nmsUnderLabel {
    font-size: 0.6rem;
    line-height: 0.9rem;
    color: #86898C;
}

.nmsPaymentContainer .nmsFormLine .nmsSelectContainer {
    width: 100%;
    max-width: 5.35rem;
    background: #EBEBEB;
    margin-right: 0.25rem;
    position: relative;
}

.nmsPaymentContainer .nmsFormLine .nmsSelectContainer select {
    padding: 0.5rem;
    font-size: 0.8rem;
    line-height: 1rem;
    color: #003361;
    text-transform: none;
}

.nmsPaymentContainer .nmsFormLine .nmsSelectContainer:after {
    content: "\f078";
    font-family: "font awesome 5 free";
    font-weight: bold;
    color: #003361;
    position: absolute;
    top: 50%;
    right: 0.4rem;
    transform: translateY(-50%);
	pointer-events: none;
}

.nmsTotalContainer > input {
    width: 100%;
    margin-top: 0.2rem;
	transition: all 0.25s ease-in-out;
}

.nmsTotalContainer>input:hover {
    background: #1c65b0;
}

.nmsWhoForm{
    width: 100%;
}

.nmsWhoForm .nmsWhoFormTitle {
    color: black;
    font-size: 1.2rem;
    line-height: 1rem;
    font-weight: bold;
    margin-bottom: 1.57rem;
}

.nmsWhoFormContainer .nmsFormLine {
    display: flex;
    justify-content: flex-start;
    margin-bottom: 2rem;
    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-size: 0.8rem;
    line-height: 1rem;
    color: #003361;
    width: 100%;
    margin-bottom: 0.15rem;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell input {
    width: 100%;
    margin: 0;
    background: #EBEBEB;
    padding: 0.5rem;
    color: #003361;
    font-size: 0.8rem;
    line-height: 1rem;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell > label input[type=radio] {
    display: none;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell > label {
    width: 49.71%;
    position: relative;
    font-size: .7rem;
    line-height: 1rem;
    color: #003361;
    z-index: 1;
    text-align: center;
    transition: all .25s ease-in-out;
    margin: 0 0.5% 0 0;
    min-height: 2rem;
    margin-top: auto;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell > label input[type=radio] + .nmsIcon {
    position: absolute;
    width: 100%;
    height: 100%;
    background: #ebebeb;
    top: 0;
    left: 0;
    display: block;
    z-index: -1;
    color: #003361;
    border: 1px solid transparent;
    transition: all .25s ease-in-out;
    font-size: .7rem;
    padding: .5rem;
    box-sizing: border-box;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell > label:hover input[type=radio] + .nmsIcon {
    border: 1px solid #1c65b0;
    background: none;
    color: #1c65b0;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell > label input[type=radio]:checked + .nmsIcon{
    color: #fff;
    background: #2e87e2;
}



.nmsWhoFormContainer .nmsFormLine .nmsFormCell > label:hover input[type=radio]:checked + .nmsIcon {
    background: #1c65b0;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell > label:last-child {
    margin-right: 0;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell .nmsSelectContainer {
    width: 32.35%;
    background: #ebebeb;
    margin-right: 1.47%;
    position: relative;
    margin-top: auto;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell .nmsSelectContainer select {
    font-size: 0.8rem;
    line-height: 1rem;
    font-family: inherit;
    background: none;
    -webkit-appearance: none;
    box-sizing: border-box;
    padding: 0.5rem;
    margin: 0;
    width: 100%;
    position: relative;
    color: #003361;
	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: #003361;
    position: absolute;
    top: 50%;
    right: .4rem;
    transform: translateY(-50%);
	pointer-events: none;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell .nmsSelectContainer:last-of-type {
    margin-right: 0;
}

.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;
}


.nmsFakeCheck input {
    display: none;
}

.nmsFakeCheck input + .icon {
    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-size: 0.9rem;
	line-height: 1rem;
	font-weight: bold;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
}

.nmsFakeCheck:hover input + .icon {
    border-color: #1C65B0;
}

.nmsFakeCheck input:checked + .icon {
    background: #2E87E2;
    border-color: #2E87E2;
}

.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: #1C65B0;
    border-color: #1C65B0;
}


.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 #2e87e2;
}

.nmsErrorPopinContainer .nmsErrorPopin .nmsClosePopinError {
    display: inline-block;
    margin-top:  auto;
    background-color: #2e87e2;
    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;
	}
	
	.formTownSelection {
		width: 100%;
		margin-bottom: 1rem;
	}

	.nmsFlexContainer {
		flex-wrap: wrap;
	}

	.nmsFlexContainer .option-note {
		width: 100%;
		max-width: 100%;
	}

	.nmsSubmitContainer {
		width: 100%;
		align-items: stretch;
	}

	.nmsSubmitContainer input[type=submit], .nmsSubmitContainer .nmsPrev {
		width: 49%;
		margin-bottom: 1rem;
		padding: 1rem;
	}
}

@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: 1rem;
		margin-bottom: 1rem;
	}
	
	
	.nmsCoursSelectContainer .nmsCoursSelect {
		width: 100%;
		margin-right: 0;
	}

	.nmsCoursSelectContainer .nmsAsideContainer {
		width: 100%;
		display: flex;
		flex-direction: column-reverse;
	}

	.nmsCoursSelectContainer .nmsAsideContainer .closeForm {
		margin-bottom: 0;
		margin-top: 1rem;
	}
	
	.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursTitle{
		padding: 1.65rem 1.5rem;
	}
	
	.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursTitle h4 {
		max-width: 83%;
	}
	
.nmsWhoFormContainer .nmsFormLine .nmsFormCell .nmsFormLineTitle {
    font-size: 1.25rem;
    line-height: 1.5rem;
    margin-bottom: 0.35rem;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell input {
    font-size: 1.25rem;
    line-height: 1.25rem;
    height: 3rem;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell > label {
    min-height: 3rem;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell > label input[type=radio] + .nmsIcon {
    font-size: 1.25rem;
    line-height: 1.25rem;
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.nmsWhoFormContainer .nmsFormLine .nmsFormCell .nmsSelectContainer select {
    font-size: 1.25rem;
    line-height: 1.5rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    box-sizing: border-box;
    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 input[type=submit] {
		width: 100%;
	}

	.nmsSubmitContainer {
		flex-wrap: wrap;
		flex-direction: column-reverse;
		margin-bottom: 2rem;
	}
	
	.nmsSubmitContainer input[type=submit], .nmsSubmitContainer .nmsPrev {
		width: 100%;
	}

	.nmsSubmitContainer input[type=submit] {
		margin-bottom: 1rem;
	}

	.nmsCoursSelectContainer .nmsCoursSelect .nmsCoursToggle .nmsCoursTitle h4 {
		line-height: 1.5rem;
	}
}


.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%;
     }

}


/*	==========================================================================
	EMBLEME COMMUNICATION
	========================================================================== */
.lbl_tax.lbl_cat:before{
	height:100%;
}
.section-autre-cours .bkg-bleu-2 {
    max-width: 100%!important;
    text-align: center;
 
}

.ams-blogue:after{
	content:"";
	height:1px;
	width:100%;
	display:block;
	background-color:#e7e7e8;
}

.result-search .ams-blogue:last-child:after{
	display:none;
}
.fasc-button {
    text-transform: uppercase;
    padding: 0.3rem 2rem!important;
    transition: all .3s;
    display: inline-block;
}
.term-formation-a-la-carte .lbl_cat {
  background-color: #0071ce !important;
  transition: 0.5s;
}
.term-formation-a-la-carte .cb_formation ~ .lbl_cat:hover {
  background-color: #1d4476 !important;
}
.term-formation-a-la-carte .cb_formation:checked ~ .lbl_cat {
  background-color: #1d4476 !important;
}
.single-ams_formations .inner-banner {
  max-width: 900px;
  margin: 0 auto;
}
.single-ams_formations .inner-banner h1 {
  margin-bottom: 20px;
}
.single-ams_formations .inner-banner {
  position: relative;
}
.single-ams_formations .line-img{
	display: block;
    margin: 0 auto;
	max-width:90%;
	margin-top:10px;
}

.single-ams_formations h2 {
  text-transform: inherit;
  color: #005487;
  font-weight: 400;
}
.single-ams_formations .formation-content h3 {
  text-transform: inherit;
  color: #005487;
  font-weight: 400;
  font-family: 'Neuton', sans-serif;
}
.item-banner {
  height: 350px !important;
}
.term-formation-a-la-carte .lbl_tax.h3:before {
  right: 0 !important;
  left: auto;
  background-color: #013261;
  color: #ffffff;
  font-size: 30px;
}
.term-formation-a-la-carte .cb_formation:checked + .lbl_tax:before {
  background-color: #013261;
  color: #ffffff;
}

.liste-horaire-item{
	background-color:#ffffff;
}

.liste-horaire-item-content{
	padding:20px;
}

.liste-horaire-item .date{
	margin-bottom:0;	
	line-height:1!important;
	font-weight:400;
	color:#737373;
}
.liste-horaire-item .date b{
	font-weight:900;
	color:#000000;
	display:block;
	margin-top:5px;

}

.liste-horaire-item .title{
	background-color:#013261;
	color:#ffffff;
    font-size:20px;
	padding: 5px 10px;
	margin-bottom:0;
	line-height: 1!important;
}

.liste-horaire-item .campus-disponible{
	display:block;
	color:#4ebffe;
	font-weight:bold;
	text-transform:uppercase;
}
.liste-horaire-item .campus-complet{
	display:block;
	color:#ed435b;
	font-weight:bold;
}

.term-formation-a-la-carte .lbl_tax.lbl_cat {
    padding: 1rem 3rem 1rem 1rem;
}
h1, h2, h3, h4, h5, h6 {
  line-height: 1 !important;
}
h1 p, h2 p, h3 p, h4 p, h5 p, h6 p {
  line-height: 1 !important;
}
.sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
}
p {
  line-height: 1.7 !important;
}
.item-banner h1{
	margin-bottom:0;
	margin:0 auto;
	line-height:1!important;
}

.formation-content {
  gap: 60px;
  max-width: 1225px !important;
  margin-top: 45px !important;
}
.section-horaire {
  padding: 56px;
  margin-top:50px!important;	
}
.liste-horaire {
  display: grid;
  grid-template-columns: repeat(4, minmax(0px, 1fr)) !important;
  gap:20px;
}
.liste-horaire b {
  text-transform: uppercase;

}
.liste-horaire ul {
  list-style-type: none;
  padding-left: 0;
  line-height: 1.3;
}

.section-autre-cours .sgl-content h3 {
  margin-bottom: 20px;
}
.archive .inner-banner h1:after, .page .inner-banner h1:after {
  position:relative;
  content: "";
	display:block;
  top: 100%;
  left: 0;
  width: 90%;
	margin:0 auto;
  height: 2.75rem;
  background-image: url(/wp-content/themes/cake_base/images/logo-blanc-ligne.png);
  background-repeat: no-repeat;
  background-position: center center;
  max-width: 600px;
  background-size: contain;
}
.formation-sidebar .btn-blanc {
  margin-bottom: 20px;
  padding: 10px 20px;
  display: block;
	z-index:999;
}
.section-video iframe {
  max-width: 560px;
}
.liste-heures-item {
  padding: 25px;
  line-height: 1.3;
}
.icone-nouveaute {
    color: #127dd9;
    font-weight: bold;
    display: grid!important;
    grid-template-columns: 21px auto;
    font-size: 25px;
    text-transform: uppercase;
    border-radius: 5px;
    /* border: 2px solid #127dd9; */
    /* padding: 5px 10px; */
    align-items: center;
    gap: 24px;  
}
.icone-nouveaute:before {
  content: "";
  width: 30px;
  height: 30px;
  background-image: url(/wp-content/uploads/2023/01/icones-formation-sidebar.png);
  background-position: 0 0;
  background-size: cover;
  background-repeat: no-repeat;
  filter: invert(39%) sepia(28%) saturate(6312%) hue-rotate(190deg) brightness(91%) contrast(86%);
}
.icone-clock {
  color: #000000;
  font-weight: bold;
  display: grid;
  gap: 10px;
  grid-template-columns: 21px auto;
}
.icone-clock:before {
  content: "";
  width: 21px;
  height: 21px;
  display: inline-block;
  background-image: url(/wp-content/uploads/2023/01/icones-formation-sidebar.png);
  background-position: 25% 0;
  background-size: cover;
  background-repeat: no-repeat;
  filter: invert(23%) sepia(58%) saturate(1527%) hue-rotate(174deg) brightness(97%) contrast(103%);
}

.icone-calendar {
  color: #000000;
  font-weight: bold;
  display: grid;
  gap: 10px;
  grid-template-columns: 21px auto;
margin-bottom:10px;	
}
.icone-calendar:before {
  content: "";
  width: 21px;
  height: 21px;
  display: inline-block;
  background-image: url(/wp-content/uploads/2023/06/icone-calendar-blue.png);
  background-position: 25% 0;
  background-size: cover;
  background-repeat: no-repeat;

}
.icone-check {
  color: #000000;
  font-weight: bold;
  display: grid;
  gap: 10px;
  grid-template-columns: 21px auto;
}
.header-cat {
    font-size: 15px;
    margin-top: 10px;
    padding: 0px 10px;
    font-weight: bold;
    margin: 0 auto;
	margin:5px;
    border-radius: 5px;
    display: inline-block;
    text-transform: uppercase;
    border: 2px solid #127dd9;
}
.header-cat-wrapper{
	display:inline-block;
}
.icone-check:before {
  content: "";
  width: 21px;
  height: 21px;
  display: inline-block;
  background-image: url(/wp-content/uploads/2023/01/icones-formation-sidebar.png);
  background-position: 50% 0;
  background-size: cover;
  background-repeat: no-repeat;
  filter: invert(23%) sepia(58%) saturate(1527%) hue-rotate(174deg) brightness(97%) contrast(103%);
}
.icone-dollar {
  color: #000000;
  font-weight: bold;
  display: grid;
  gap: 10px;
  grid-template-columns: 21px auto;
}
.icone-dollar:before {
  content: "";
  width: 21px;
  height: 21px;
  display: inline-block;
  background-image: url(/wp-content/uploads/2023/01/icones-formation-sidebar.png);
  background-position: 74.4% 0;
  background-size: cover;
  background-repeat: no-repeat;
  filter: invert(23%) sepia(58%) saturate(1527%) hue-rotate(174deg) brightness(97%) contrast(103%);
}
.icone-place-limite {
  color: #ed435b;
  font-weight: bold;
  display: grid;
  gap: 10px;
  margin-bottom: 0;
  grid-template-columns: 21px auto;
}
.icone-place-limite:before {
  content: "";
  width: 21px;
  height: 21px;
  display: inline-block;
  background-image: url(/wp-content/uploads/2023/01/icones-formation-sidebar.png);
  background-position: 99.4% 0;
  background-size: cover;
  background-repeat: no-repeat;
  filter: invert(41%) sepia(81%) saturate(5083%) hue-rotate(333deg) brightness(107%) contrast(86%);
}

@media screen and (max-width: 800px) {
  .liste-heures {
    grid-template-columns: repeat(1, minmax(0px, 1fr)) !important;
  }
  .formation-sidebar {
    -webkit-flex-basis: 0;
    -ms-flex-preferred-size: 0;
    flex-basis: 0 !important;
  }
  .nmsCtaInscription > div {
    display: block;
    justify-content: space-between;
    align-items: center;
    margin: 0;
    text-align: left;
  }
  .nmsCtaInscription > div > h3 {
    margin-bottom: 10px;
  }
  .nmsCtaInscription > div > .btn-bleu-2 {
    display: block;
	  width:auto;
  }
  .formation-sidebar .sticky {
    display: block !important;
  }
  .formation-sidebar .btn-blanc {
    bottom: 0;
    position: fixed;
    left: 0;
    margin-bottom: 0;
    width: 50%;
  }
  .section-autre-cours .bkg-bleu-2 {
    width: auto;
    text-align: center;
	  display:block;
	    padding: 0.6rem 0.5rem;
  }
	.fasc-button{
    text-transform: uppercase;
    padding: 0.3rem 2rem!important;
    transition: all .3s;
    display: inline-block;
    line-height: 1;
    text-align: center;
	}
  .liste-horaire {
    display: block;
    grid-template-columns: repeat(1, minmax(0px, 1fr)) !important;
  }
  .formation-content {
    margin-top: 0 !important;
  }
}
@media screen and (max-width: 1200px) {
	.padded{
		padding-top:1rem;
		padding-bottom:1rem;
	}
	
.archive .inner-banner h1:after, .page .inner-banner h1:after {
	display:block;
 
}
	.section-formations .bgl-content .sgl-content{
		padding:0!important;
	}
	
	.nmsCtaInscription > div a {
    max-width: 100%;
}
.nmsCtaInscription > div a {
    max-width: 100%;
}

.section-formations .container{

	 width:100%!important;
	}
	.section-formations .bgl-content {
	margin:0!important;

	}

  .single-ams_formations .container, .container .inner {
    max-width: 100%;
  }
  .single-ams_formations .bgl-content .sgl-content {
    padding-left: 0;
    padding-top: 0 !important;
    padding-right: 0;
    gap: 0;
    margin-top: 0 !important;
    flex-direction: column-reverse;
  }
  .single-ams_formations .bgl-content .pad-top {
    padding-top: 0 !important;
  }
  .formation-content .width-70 {
    padding: 25px;
	-webkit-flex-basis: 0;
	-ms-flex-preferred-size: 0;
	flex-basis: 0; 
	
  }
  .liste-horaire {
    grid-template-columns: repeat(2, minmax(0px, 1fr)) !important;
  }
.section-horaire {
  padding: 20px;
  margin-top:0!important;	
}
}



@media screen and (max-width: 1100px){
.flex > .width-75 {
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size:auto;
    flex-basis: auto;
}
}


@media screen and (max-width: 820px) {

.nmsCtaInscription > div{
	display: inline-block!important;
	width:100%;
}
.nav-mobile {
    display: block;
}
}


