/* Initialisation */
* 											{ padding:0; margin:0; border: none; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
a, a:active,					
a:focus,					
input:focus, input,					
textarea:focus								{ outline: none; }
:focus 										{ outline: none; }
::-moz-focus-inner 							{ border: 0; }
::-ms-clear 									{ display: none; }
table										{ border-collapse: collapse; }
a											{ text-decoration: none; transition: color 200ms; }
ul											{ list-style-type: none; }
h1,h2,h3,h4,h5,h6,b							{ font-weight: normal; }
strong 										{ font-weight: 700; }
sup, sub 									{ vertical-align: 0; position: relative; }
sup 										{ bottom: 1ex; }
input[type=text],							
input[type=radio],
input[type=submit],
input[type=password],
input[type=email],
textarea									{ outline: none; -webkit-appearance: none; -moz-appearance: none; }
					
/*** FRAMESET ***/					
html										{ height: 100%; width: 100%; }
body 										{ height: 100%; width: 100%; font: 400 12px/12px 'Montserrat', Arial, sans-serif; color: #3b3b3b; opacity: 0; transition: opacity 50ms linear; }
.loaded body								{ opacity: 1; filter: alpha(opacity=100); }
.container									{ position: relative; width: 100%; min-height: 100%; background: #f4f8f9; overflow-x: hidden; }
				
/*** SHORTSKEY ***/				
.clearfloat									{ clear: both; }
.left										{ float: left; }
.right										{ float: right; }
.nomargin									{ margin-bottom: 0 !important; }
.marginTop									{ margin-top: 30px !important; }
				
/*** BTNS ***/				
.boxed										{ display: inline-block; width: 100%; margin: 0 0 10px 0; padding: 13px 15px; font: 700 13px/16px 'Montserrat', Arial, sans-serif; color: #ea501d; text-align: center; text-transform: uppercase; border-radius: 5px; box-sizing: border-box; }
.boxed_blue									{ border: solid 1px #008be4; color: #fff; background: #008be4; }
.boxed_white								{ border: solid 1px #fff; background: #fff; }
.boxed_black								{ border: solid 1px #3b3b3b; color: #3b3b3b; }
.boxed_orange								{ border: solid 1px #ea501d; color: #fff; background: #ea501d; }
.boxed_orangew								{ border: solid 1px #ea501d; color: #fff; background: #ea501d; }
.link										{ margin-bottom: 12px; font-size: 13px; line-height: 15px; color: #fff; opacity: 0.5; box-sizing: border-box; }

/***  STYLES ***/				
h1											{ margin: 0 0 50px 0; font: 700 26px/36px 'Montserrat', Arial, sans-serif; color: #a8aaab; }
h1 strong									{ color: #3b3b3b; }
h2											{ margin: 0 0 20px 0; font: 700 13px/15px 'Montserrat', Arial, sans-serif; color: #ea501d; text-transform: uppercase; }
h3											{ font: 400 18px/20px 'Montserrat', Arial, sans-serif; color: #fff; text-transform: uppercase; } 
h4											{ margin: 0 0 5px 0; font: 700 38px/38px 'Montserrat', Arial, sans-serif; color: #fff; text-transform: uppercase; } 
h5											{ margin: 0 0 5px 0; font: 700 20px/22px 'Montserrat', Arial, sans-serif; color: #3b3b3b; }
h6											{ font: 700 13px/15px 'Montserrat', Arial, sans-serif; color: #ea501d; }
p											{ margin: 0 0 10px 0; font: 400 14px/30px 'Montserrat', Arial, sans-serif; color: #a7a5a6; }
p strong									{ font-size: 15px; font-weight: 700; }

/*** HEADER ***/
header										{ position: relative; height: 15px; padding: 30px 10% 30px 100px; font: 700 13px/15px 'Montserrat', Arial, sans-serif; color: #fff; text-transform: uppercase; background: #ee4823; z-index: 5; box-shadow: 0px 3px 5px 0px rgba(0, 1, 1, 0.1); }
header br									{ display: none; }
header .sided								{ float: right; margin-left: 15px; font-weight: 400; color: #fff; text-transform: none; opacity: 0.5; }
#navToggle									{ position: absolute; left: 0; top: 0; display: none; width: 30px; height: 24px; margin: 0; padding: 28px 20px 23px 20px; text-align: center; opacity: 1; }
#navToggle div								{ display: block; width: 30px; height: 2px; margin: 0 0 6px 0; background: #fff; transition: all 350ms cubic-bezier(0.68, -0.55, 0.265, 1.55); }
.nav-open #navToggle div					{ width: 30px; }
.nav-open #bar1								{ transform: rotate(-45deg) translateX(-1px) translateY(-5px); -webkit-transform: rotate(-45deg) translateX(-1px) translateY(-5px); transform-origin: 100% 100%; -webkit-transform-origin: 100% 100%; }
.nav-open #bar2								{ opacity: 0; }
.nav-open #bar3								{ transform: rotate(45deg) translateX(-2px) translateY(5px); -webkit-transform: rotate(45deg) translateX(-2px) translateY(5px); transform-origin: 100% 100%; -webkit-transform-origin: 100% 100%; }
				
/*** ASIDE ***/				
aside										{ position: absolute; left: 0; top: 0; width: 24%; min-width: 400px; min-height: 100%; padding: 175px 0 0 0; background: #3b3b3b; z-index: 3; box-sizing: border-box; }
aside ul									{ margin: 0 0 20px 0; }
aside li									{ font: 400 20px/26px 'Montserrat', Arial, sans-serif; }
aside li a									{ display: block; padding: 23px 25px 23px 100px; color: #fff; opacity: 0.5; }
aside .active a								{ opacity: 1; cursor: default; }
aside .small								{ display: none; }
aside .small li								{ font: 400 13px/16px 'Montserrat', Arial, sans-serif; text-transform: uppercase; }
aside .small li a							{ padding: 7px 20px; }
#copy										{ position: absolute; left: 100px; bottom: 80px; margin: 0; font-size: 12px; line-height: 16px; }

aside .in         							{ margin-top: 30px; }
aside .in a         						{ background: #008be4; opacity: 1; }
aside .in img        						{ position: relative; top: 3px; }
				
/*** CONTENT ***/				
.content									{ padding: 115px 10% 80px 34%; }
.content > :last-child						{ margin-bottom: 0; }
.wide										{ padding-left: 24%; padding-right: 0; }
.inner > h1									{ margin-bottom: 20px; }
.inner > h1 br								{ display: none; }
.widePad									{ padding-left: 13%; padding-right: 13%; }
.sm											{ max-width: 535px; }
.xsm										{ max-width: 400px; }
.ul_main li									{ margin: 0 0 15px 0; font: 700 20px/22px 'Montserrat', Arial, sans-serif; }
.ul_main li:last-child						{ margin-bottom: 0; }
.ul_main a									{ position: relative; display: block; width: 100%; padding: 36px 30px; border: solid 1px #3b3b3b; color: #3b3b3b; border-radius: 5px; box-sizing: border-box; }
.jobsList li								{ display: block; }
.jobsList a									{ position: relative; display: block; padding: 0 13%; }
.jobsList a div								{ position: relative; padding: 30px 50px 30px 0; border-bottom: solid 1px #cfd2d3; }
.jobsList a .arrow							{ position: absolute; right: 0; top: 50%; margin-top: 10px; opacity: 0; }
.jobsList h3								{ margin-bottom: 5px; font-weight: 700; color: #231f20; }
.jobsList .date								{ position: relative; display: inline-block; margin: 0 0 15px 0; padding: 0 0 0 25px; font: 700 12px/30px 'Montserrat', Arial, sans-serif; color: #231f20; text-transform: uppercase; opacity: 0.5; }
.jobsList .date img							{ position: absolute; left: 0; top: 6px; }
.jobTag										{ display: inline-block; width: 68px; margin: 0 12px 5px 0; font: 700 12px/30px 'Montserrat', Arial, sans-serif; color: #fff; text-align: center; text-transform: uppercase; background: #231f20; border-radius: 5px; }
.stage										{ background: #ea501d; }
.inner										{ position: relative; }
.filter										{ position: absolute; right: 13%; top: 12px; }
.filter li									{ display: inline-block; margin: 0 0 0 15px; font: 700 12px/16px 'Montserrat', Arial, sans-serif; text-transform: uppercase; }
.filter .active								{ border-bottom: solid 3px #ea501d; }
.filter .active a							{ color: #ea501d; cursor: default; }
.filter li a								{ color: #3b3b3b; }

.ul_main .in a        						{ padding: 32px 30px 40px 30px; border-color: #008be4; background: #008be4; color: #fff; }
.ul_main .in span       					{ margin-right: 5px; }
.ul_main .in img       						{ position: relative; top: 5px; }

/*** FINISSANT ***/				
.finissant									{ background: url('../images/bg-finissant.jpg') no-repeat center center; background-size: cover; }
				
/*** INSCRIPTION ***/				
#inscription .container						{ padding-top: 100px; }
				
/*** ENTREPRISE ***/				
.entreprise									{ background: url('../images/bg-entreprise.jpg') no-repeat center center; background-size: cover; }
.cie .radioList li							{ border: none; padding-bottom: 0; }
.cie .radioList div							{ margin-top: 0; }
				
/*** ACCUEIL CIE ***/				
#accueil-cie h1								{ font-weight: 400; }

/*** BOTTIN ***/
#bottin										{ overflow-y: scroll; }
#bottin .filter								{ right: 0; }
.ocList > li								{ border-bottom: solid 1px #231f20; border-color: rgba(31, 59, 75, 0.3); }
.ocList > li > a							{ position: relative; display: block; padding: 30px 40px 30px 0; }
.ocList h2									{ margin-bottom: 0; }
.ocList h3									{ margin: 0 0 5px 0; font: 400 14px/16px 'Montserrat', Arial, sans-serif; color: #a8aaab; text-transform: none; }
.ocList p									{ margin: 0; font-weight: 700; font-size: 16px; line-height: 18px; color: #3b3b3b; }
.ocList p a									{ color: #3b3b3b; }
.ocList ul									{ display: none; }
.ocList ul li								{ display: inline-block; width: 44%; margin: 0 5% 40px 0; vertical-align: top; }
.ocTab::before								{ position: absolute; right: 5px; top: 50%; margin: -10px 0 0 0; content: '\203A'; font: 400 24px/24px 'Montserrat', Arial, sans-serif; color: #ea501d; transition: transform 300ms; -webkit-transition: -webkit-transform 300ms; }
.open .ocTab::before						{ transform: rotate(90deg); -webkit-transform: rotate(180deg); }

/*** LOGIN ***/				
.login .container							{ padding-top: 100px; text-align: center; box-sizing: border-box; }
.logwrapper									{ position: relative; width: 100%; max-width: 420px; margin: 0 auto; padding: 0 20px 60px 20px; z-index: 1; transition: opacity 450ms; box-sizing: border-box; }
.logBloc									{ margin: 0 0 60px 0; }
.logBloc > :last-child						{ margin-bottom: 0; }
.logBloc p									{ line-height: 20px; }
.login p									{ color: #fff; }
.login form .invalid						{ background: rgba(255, 255, 255, 0.8) !important; }
.login input[type=email],
.login input[type=text],					
.login input[type=password]					{ margin-bottom: 10px; color: #fff; background: #ea501d; background: rgba(255, 255, 255, 0.2); }
.login ::-webkit-input-placeholder 			{ color: #fff; }
.login :-ms-input-placeholder				{ color: #fff; }
.login ::-moz-placeholder 					{ color: #fff; }
.login input:hover, 				
.login textarea:hover						{ background: rgba(255, 255, 255, 0.3); box-shadow: 0 0 0 0 rgba(50, 50, 50, 0); }
.login input:focus, 				
.login textarea:focus						{ background: rgba(255, 255, 255, 0.7); box-shadow: 1px 1px 4px 0 rgba(50, 50, 50, 0.15); }
.login .invalidMsg p						{ text-align: left; color: #fff; }
.connectBox									{ position: absolute; left: 50%; top: 50%; display: block; margin: 0 0 0 -87px; font: 400 14px/18px 'Montserrat', Arial, sans-serif; color: #fff; opacity: 0; filter: alpha(opacity=0); transition: all 500ms cubic-bezier(0.305, 0.830, 0.455, 1); }
.connecting .logwrapper						{ opacity: 0; filter: alpha(opacity=0); }
.connecting .connectBox						{ margin-top: -54px; opacity: 1; filter: alpha(opacity=100); }

/*** LINKEDIN ***/
.linkedin h1         						{ margin-bottom: 25px; }
.linkedin h2         						{ margin-bottom: 50px; }
.linkedin ol         						{ margin: 25px 0 30px 0; list-style: none; }
.linkedin li         						{ position: relative; margin: 0 0 40px 0; font: 400 18px/26px 'Montserrat', Arial, sans-serif; color: #231f20; }
.linkedin ol li        						{ counter-increment: item; padding: 0 0 0 60px; }
.linkedin ol li:last-child      			{ margin-bottom: 30px; }
.linkedin ol li:before       				{ position: absolute; left: 0; top: 0; height: 40px; width: 40px; content: counter(item)''; font-size: 25px; line-height: 40px; text-align: center; color: #fff; background: #008be4; border-radius: 20px; }

/*** FORM ***/
form										{ position: relative; }
form .invalid								{ color: #ea501d !important; box-shadow: 0px 1px 6px 0px rgba(234, 80, 29, 0.4) !important; }
input[type=email],
input[type=text],							
input[type=password],
input[type=radio],
input[type=submit],
textarea									{ display: block; width: 100%; margin: 0 0 15px 0; padding: 25px; font: 400 15px/16px 'Montserrat', Arial, sans-serif; color: #3b3b3b; color: rgba(59, 59, 59, 0.5); background: #fff; cursor: pointer; box-sizing: border-box; border-radius: 5px; box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.02); transition: all 200ms; }
input.w33									{ float: left; width: 30%; margin: 0 5% 0 0; text-align: center; }
input.w33:last-of-type						{ float: right; margin: 0; }
input:hover, textarea:hover					{ box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.05); }
input:focus, textarea:focus					{ color: #231f20; box-shadow: 0px 1px 5px 0px rgba(0, 1, 1, 0.1); }
textarea									{ height: 200px; overflow: hidden; resize: none; }
.invalidMsg									{ margin: 0; min-height: 0; max-height: 0; overflow: hidden; opacity: 0; transition: all 300ms, opacity 300ms ease 50ms; }
.invalidMsg p								{ position: relative; max-height: 55px; overflow: hidden; padding: 0; margin: 0; font: 700 12px/15px 'Montserrat', Arial, sans-serif; color: #ea501d; text-transform: uppercase;  }
/*.invalidMsg p::before						{ position: absolute; left: 0; top: 10px; content: '\002A'; }*/
.showMsg .invalidMsg						{ min-height: 25px; max-height: 55px; opacity: 1; }
.errorbox									{ display: none; overflow: hidden; }
.errorbox p									{ font: 700 13px/15px 'Montserrat', Arial, sans-serif; text-transform: uppercase; background: #ea501d; color:#fff; border-radius: 5px; margin: 0 0 20px 0; padding: 10px; }

/* RADIO */	
.radioList li								{ position: relative; display: block; padding: 30px 120px 30px 0; border-bottom: solid 1px #fff; font: 400 15px/16px 'Montserrat', Arial, sans-serif; color: #3b3b3b; }
.radioList div								{ position: absolute; right: 0; top: 50%; margin-top: -15px; }
input[type=radio] 							{ display: none; }
.radio 										{ position: relative; width: 80px; height: 30px; font: 700 12px/30px 'Montserrat', Arial, sans-serif; color: #3b3b3b; text-transform: uppercase; background: #fff; cursor: pointer; box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.01); border-radius: 15px; transition: all 200ms; }
.radio:hover								{ box-shadow: 0px 1px 5px 0px rgba(0, 1, 1, 0.1); }
.radio label 								{ position: absolute; right: 0; top: 0; display: block; width: 100%; padding: 0 10px 0 0; color: #3b3b3b; text-align: right; cursor: pointer; z-index: 1; opacity: 0; box-sizing: border-box; transition: opacity 100ms; }
.radio label:first-of-type					{ right: auto; left: 0; padding: 0 0 0 10px; color: #ea501d; text-align: left; z-index: 2; opacity: 1; }
.radio label::before  						{ position: absolute; right: 0; top: 0; display: block; content: ''; width: 30px; height: 30px; background: #ea501d; z-index: 0; border-radius: 15px; transition: all 200ms cubic-bezier(0.305, 0.830, 0.455, 1); }
.showNo label								{ z-index: 2; opacity: 1; }
.showNo label:first-of-type					{ z-index: 1; opacity: 0; }
.showNo label::before 						{ margin-right: 50px; background: #3b3b3b; }

/* IE9 */
.show-ie									{ display: none; font: 700 12px/30px 'Montserrat', Arial, sans-serif; color: #a8aaab; text-transform: uppercase; text-align: left; }
.login .show-ie								{ color: #fff; }
.ie input									{ padding: 15px; }
.ie textarea								{ height: 150px; padding: 15px; }
.ie .show-ie								{ display: block; }

/* SELECT */
div.fancy-select  							{ position: relative; width: 100%; margin: 0 0 15px 0; font: 400 15px/16px 'Montserrat', Arial, sans-serif; color: #3b3b3b; text-align: left; }
div.fancy-select.disabled 					{ opacity: 0.5; }
div.fancy-select select:focus + div.trigger 	{ color: #3b3b3b; }
div.fancy-select div.trigger 					{ position: relative; height: 45px; padding: 0 60px 0 25px; line-height: 45px; color: #3b3b3b; color: rgba(59, 59, 59, 0.5); background: #fff url('../images/bg-select.jpg') repeat-y right center; cursor: pointer; overflow: hidden; border-radius: 4px; box-sizing: border-box; transition: all 240ms ease-out; }
div.fancy-select div.trigger.selected			{ color: #3b3b3b; color: rgba(59, 59, 59, 0.5); }
div.fancy-select div.trigger::after 			{ position: absolute; top: 20px; right: 16px; display: block; content: ""; width: 14px; height: 9px; background: url('../../images/icones/arrow-select.png') no-repeat center center; background-size: 7px 5px; }
div.fancy-select div.trigger.open 				{ box-shadow: none; }
div.fancy-select ul.options 					{ position: absolute; top: 40px; left: 0; width: 100%; background: #fff; visibility: hidden; z-index: 1; overflow: auto; opacity: 0; border-radius: 4px; box-shadow: 0px 1px 5px 0px rgba(0, 1, 1, 0.1); transition: opacity 300ms ease-out, top 300ms ease-out, visibility 300ms ease-out; }
div.fancy-select ul.options.open 				{ visibility: visible; top: 50px; opacity: 1; transition: opacity 300ms ease-out, top 300ms ease-out; }
div.fancy-select ul.options.overflowing 		{ top: auto; bottom: 40px; transition: opacity 300ms ease-out, bottom 300ms ease-out, visibility 300ms ease-out; }
div.fancy-select ul.options.overflowing.open 	{ top: auto; bottom: 50px; transition: opacity 300ms ease-out, bottom 300ms ease-out; }
div.fancy-select ul.options li 					{ border-top: solid 1px #ecf1f4; padding: 15px 25px; cursor: pointer; transition: all 200ms ease-out; }
div.fancy-select ul.options li:first-child 		{ padding-top: 12px; border: none; }
div.fancy-select ul.options li:last-child 		{ padding-bottom: 12px; }
div.fancy-select ul.options li.selected 		{ font-weight: 700; color: #ea501d; }
div.fancy-select ul.options li.hover			{ color: #fff; background: #3b3b3b; }
