/* ----------------------	 COMMONS (default theme)	-------------------------- */

* { outline:none; }

/* LABELS & FIELDSET ----- */
form { padding:0; }
fieldset { display:block; }
fieldset h3,
fieldset legend {
	font-family: 'Raleway', sans-serif;
	text-transform:uppercase;
	margin-bottom:10px;
	line-height:20px;
	font-weight:700;
	font-size:13px;
	padding:0 5px;
}

label, 
.label_like { 
	display:block;
	font-size:13px;
	padding:5px;
}
label.wp25, .label_like.wp25,
label.wp33, .label_like.wp33,
label.wp50, .label_like.wp50 { }
label.label-cursor, 
.label_like.label-cursor { height:50px; }

label.block-label input[type="text"],
label.block-label input[type="email"],
label.block-label input[type="password"],
label.block-label input[type="tel"],
label.block-label textarea,
label.block-label select { margin-top:10px; }
label.floated-label.label-cursor { line-height:30px; }
label.floated-label:after { 
	content:""; 
	display:block;
	clear:both
}
label.floated-label input[type="text"],
label.floated-label input[type="email"],
label.floated-label input[type="password"],
label.floated-label input[type="tel"],
label.floated-label textarea,
label.floated-label select { width:66%; float:right; }
label.floated-label textarea { min-height:60px; }
label.floated-label > span {
	display:inline-block;
	vertical-align:middle;
	line-height:normal;
	/*width:30%;*/
}

label.inline-label,
span.inline-short-label,
span.inline-label {
	display:inline-block;
	vertical-align:middle;
    font: 400 12px/30px 'Source Sans Pro', sans-serif;
    color: #464546; height:30px;
	margin-right:10px;
	padding:0 5px;
}
span.inline-short-label,
/*span.inline-label { font-weight:700; }*/
span.inline-label { width:33%; line-height:40px; margin-right:0 }
label.inline-label input,
span.inline-label input {
	display:inline-block;
	vertical-align:middle;
	margin-right:5px;
}

/* TEXTFIELD ---------- */
input[type="text"],
input[type="number"],
input[type="email"],
input[type="password"],
input[type="tel"],
textarea,
select {
	outline:0;
	display:block;
	border-radius:0;
	font: 400 13px/20px 'Raleway', sans-serif;
	width:100%; height:40px;
	border:#dfcca9 1px solid;
	background-color:#fff;
	color:#0d1c33;
	padding: 0 10px;
 	-webkit-transition:color .3s, background-color .3s, border-color .3s, -webkit-box-shadow .3s;
    transition:color .3s, background-color .3s, border-color .3s, -webkit-box-shadow .3s;
    -o-transition:color .3s, background-color .3s, border-color .3s, box-shadow .3s;
    transition:color .3s, background-color .3s, border-color .3s, box-shadow .3s;
    transition:color .3s, background-color .3s, border-color .3s, box-shadow .3s, -webkit-box-shadow .3s;
}
textarea { line-height:16px; padding:5px 10px; min-height:80px; }
input[type="text"]:hover,
input[type="number"]:hover,
input[type="email"]:hover,
input[type="password"]:hover,
input[type="tel"]:hover, 
textarea:hover,
select:hover { border-color:#ccad75; }

input[type="text"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="tel"]:focus, 
textarea:focus,
select:focus {
	border-color:#ccad75;
	-webkit-box-shadow:#ccad75 0 0 10px;
	   -moz-box-shadow:#ccad75 0 0 10px;
	     -o-box-shadow:#ccad75 0 0 10px;
			box-shadow:#ccad75 0 0 10px;
}
input[type="button"],
input[type="submit"] {
	-webkit-appearance:none;
	-moz-appearance:none;
	/*appearance:none;*/
	border-radius:0;
	cursor:pointer;
}
input[type="checkbox"],
input[type="radio"] {
	display:inline-block;
	vertical-align:middle;
	margin:-5px 5px 0 0;
}
.button,
.submit {
	background-color:#ccad75;
	height:40px; min-width:100px;
	padding:0 20px; border:#ccad75 1px solid;
	text-transform:uppercase;
	font-family: 'Spinnaker', sans-serif;
	font-size:12px; color:#fff; 
	-webkit-transition:color .3s, background-color .3s, border-color .3s;
    -o-transition:color .3s, background-color .3s, border-color .3s;
	transition:color .3s, background-color .3s, border-color .3s;
}
.button { color:#ccad75; background-color:transparent }
.button:hover,
.submit:hover { 
	background-color:#19203f;
	border-color:#19203f;
	color:#fff;
}

/* >>> boutons spéciaux */
.button.share-button {
	background-image:url(../images/form/button_share.svg);
	background-position:10px center;
	background-repeat:no-repeat;
	background-size:20px auto;
	padding-left:40px;
}

/* >>> LABELS ---- */
label.floated-label {
	padding:5px;
	line-height:40px;
	clear:right;
}
label.floated-label span,
label.floated-label strong {
	display:inline-block;
	margin-left:-0.2em;
	max-width:60%;
}
label.floated-label strong { text-transform:uppercase; }
label.floated-label input,
label.floated-label select,
label.floated-label .slider-range {
	width:60%; float:right;
}

/* ---------------------	 CUSTOMIZED ELEMENTS	------------------------- */
/* > SELECTS ---------------- */

select.select,
label select {
	-webkit-appearance:none;
	   -moz-appearance:none;
			/*appearance:none;*/
	background:#fff url("data:image/svg+xml;base64, PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxOS4wLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iQ2FscXVlXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgMjAgMjAiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDIwIDIwOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+DQo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPg0KCS5zdDB7ZmlsbC1ydWxlOmV2ZW5vZGQ7Y2xpcC1ydWxlOmV2ZW5vZGQ7ZmlsbDojQ0NBRDc1O30NCjwvc3R5bGU+DQo8cGF0aCBpZD0iWE1MSURfMV8iIGNsYXNzPSJzdDAiIGQ9Ik01LjcsOC43bDAuMi0wLjJsNCw0YzAsMCwwLjEsMCwwLjIsMGw0LTRsMC4yLDAuMmMwLDAsMCwwLjEsMCwwLjJsLTQuMiw0LjJjMCwwLTAuMSwwLTAuMiwwDQoJTDUuNyw4LjlDNS43LDguOSw1LjcsOC44LDUuNyw4LjdMNS43LDguN3oiLz4NCjwvc3ZnPg0K") right center no-repeat;
	padding-right:30px;
}


/* > CHECKBOXS -------------- */
input.checkbox {
	-webkit-appearance:none;
       -moz-appearance:none;
            /*appearance:none;*/
	width:10px; height:10px;
	border:#ccad75 1px solid;
	background-color:#fff;
}
input.checkbox:hover { background-color:#f1e8e3 }
input.checkbox:focus {
	-webkit-box-shadow:#ccad75 0 0 10px;
	   -moz-box-shadow:#ccad75 0 0 10px;
	     -o-box-shadow:#ccad75 0 0 10px;
			box-shadow:#ccad75 0 0 10px;
}
input.checkbox:checked { background-image:url("data:image/svg+xml;base64, PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxOS4wLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iQ2FscXVlXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgMTAgMTAiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDEwIDEwOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+DQo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPg0KCS5zdDB7ZmlsbDojQ0RBRjc4O30NCjwvc3R5bGU+DQo8cGF0aCBpZD0iWE1MSURfMV8iIGNsYXNzPSJzdDAiIGQ9Ik0zLDQuM2wxLjUsMi4zYzAsMCwyLjItNSw1LjUtNi42djMuNUM4LjYsMy44LDUuNyw3LjMsNC43LDkuMWMtMS4zLTEuNy0yLjktMi45LTQtMy4zTDMsNC4zeiIvPg0KPC9zdmc+DQo="); }

.checkbox-time { padding:10px 0 0 35%; }
	
/* UI AUTOCOMPLETE ---------- */
.ui-autocomplete {
	position:absolute;
	overflow:auto; z-index:4;
	border:#b7bbc7 1px solid;
	background-color:rgba(255,255,255,0.7);
	max-height:320px; max-width:280px;
	background:#fff; padding:5px 15px;
	color:#333; font-size:12px;
}
.ui-autocomplete li { margin:5px 0; }
.ui-autocomplete li:hover { color:#ccad75 }

/* > JQUERY-UI DATE PICKER
-------------------------------------------------------------------------------------------------------------------------------- */
.ui-widget-content.ui-datepicker {
	background:#fff; text-transform:uppercase;
	font-size:11px; color:#707070;
	text-align:center; max-width:250px;
	border:#d8d6d6 1px solid;
	z-index:10 !important;
	display: none;
	width:100%; 
}
.ui-widget-content.ui-datepicker-multi { min-width:100%; }
.ui-widget-header {
	background:#fff; text-transform:uppercase;
	font-family:'Raleway', sans-serif;
	font-size:14px; font-weight:300;
	height:40px; line-height:40px;
	color:#969696;
}
.ui-widget-header > span { display:inline-block; vertical-align:middle; line-height:normal; }
.ui-datepicker-prev,
.ui-datepicker-next {
	display:inline-block;
	width:20px; height:20px; line-height:26px;
	margin:8px 10px 0; cursor:pointer;
	font-size:0;
}
.ui-datepicker-prev { background:url(../images/form/date_left.svg) center no-repeat; }
.ui-datepicker-next { background:url(../images/form/date_right.svg) center no-repeat; }
.ui-datepicker-prev { float:left; }
.ui-datepicker-next { float:right; background-position:right 0; }
.ui-datepicker-prev:hover { background-position:0 bottom; }
.ui-datepicker-next:hover { background-position:right bottom; }
.ui-datepicker-calendar { width:100%; margin:10px 0; }
.ui-datepicker th {
	text-align:center;
	text-transform:none;
	background:#f1f1f1;
	font-weight:700;
	padding:5px 0;
	width:14.28%;
	color:#4c4c4c;
}
.ui-datepicker tr td {
	padding:5px 0;
	width:14.28%;
}
.ui-datepicker tr td,
.ui-datepicker tr:hover td { background:#fff; }
.ui-datepicker tr td:hover { color:#ccad75; }

.ui-datepicker td:active,
.ui-datepicker tr .dp-highlight { background:#ccad75; color:#fff; }
.ui-datepicker tr td.reserved { background:#e3e3e3; }
.ui-datepicker tr td.ui-datepicker-today {
	border:#ccad75 1px solid;
	border-top:#ccad75 1px solid;
	color:#ccad75;
}
.ui-datepicker tr td.ui-datepicker-current-day { 
	background:#ccad75; 
	color:#fff; 
	border-bottom:#ccad75 1px solid; 
	border-top:#ccad75 1px solid; 
}
.ui-datepicker-group.ui-datepicker-group-first,
.ui-datepicker-group.ui-datepicker-group-last {
	width:50%; float:left;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	-o-box-sizing:border-box;
	box-sizing:border-box;
}
.ui-datepicker-row-break { clear:both; }

/* SLIDER RANGE ------------- */
.ui-slider {
	height:10px;
	position: relative;
	border-radius:3px;
	background-color:#999;
	margin:0 8px;
}
.ui-slider .ui-slider-handle {
	display:block;
	border-radius:3px;
	position: absolute;
	top:-4px; z-index: 2;
	background-color:#fff;
	height:16px; width:16px;
	border:#41649a 1px solid;
}
.ui-slider-horizontal .ui-slider-handle { margin-left:-8px; }
.ui-slider-horizontal .ui-slider-range {
	border:none;
    display:block;
	background-color:#e3e3e3;
    position:absolute; top:0;
	height: 100%;
    z-index: 1;
}
.ui-slider .slider-tooltip {
	display:block; width:80px; height:12px; line-height:12px;
	position:absolute; top:20px;
	outline:none !important; border:none !important;
	 -webkit-tap-highlight-color: rgba(0,0,0,0);
}
.ui-slider .slider-tooltip.tooltip-min { left:-10px; text-align:left }
.ui-slider .slider-tooltip.tooltip-max { right:-10px; text-align:right }
.ui-slider .slider-tooltip:focus,
.ui-slider-horizontal .ui-slider-handle:focus,
.ui-slider-horizontal .ui-slider-handle:focus .slider-tooltip { outline:none !important; }
.ui-slider .slider-tooltip.tooltip-min.collision-adjust { margin-top:-2px; }
.ui-slider .slider-tooltip.tooltip-max.collision-adjust { margin-top:10px; }

label .ui-slider { margin:10px 8px 10px; }

/* --- dates --- */
.date-field input {
	background-image:url(../images/form/datefield.gif);
	background-position:90% center;
	background-repeat:no-repeat;
}

/* --- number --- */
.number-field { position:relative; }
.number-field input,
.number-field input:hover,
.number-field input:focus {
	-webkit-appearance:none;
       -moz-appearance:none;
            /*appearance:none;*/
	padding-right:50px;
}
.number-field .bt-minus,
.number-field .bt-plus {
	position:absolute;
	top:18px;
	font-size:17px;
	text-align:center;
	line-height:16px;
	display:inline-block;
	width:16px; height:16px;
	border:#d8c095 1px solid;
	background-color:#fff;
	border-radius:50%;
	 -webkit-transition:color .3s, background-color .3s, border-color;
    -o-transition:color .3s, background-color .3s, border-color;
    transition:color .3s, background-color .3s, border-color
}
.number-field .bt-minus:hover,
.number-field .bt-plus:hover { color:#fff; background-color:#ccad75 }
.number-field .bt-minus { right:35px; line-height:13px; }
.number-field .bt-plus { right:15px; line-height:15px; }
.number-field .bt-minus:after { display:inline-block; content:"-"; margin-right:-1px }
.number-field .bt-plus:after { display:inline-block; content:"+"; margin-right:-1px }

/* ------------- Gestionaire de fichiers (input type file) ------------- */
.input-file-label {
	padding:10px 10px 5px;
	min-height:45px;
}
.input-file-label.file-added { }
.input-file-trigger {
	padding:3px 10px;
	background:#ccad75; color:#fff;
	display:inline-block; cursor:pointer; 
	text-transform:uppercase;
	text-align:center;
	font-weight:700;
	font-size:11px;
	float:right;
	-webkit-transition:background-color .3s linear;
	-o-transition:background-color .3s linear;
	transition:background-color .3s linear;
}
.input-file-trigger:hover { background-color:#1e2544; }
.input-file-label.file-added .input-file-trigger { display:none }
.input-file {
	position: absolute;
	padding:14px 0; cursor:pointer;
	width:20px; top:0; left:0;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
	filter: alpha(opacity=0);
	opacity:0;
}
.input-file-container {
	padding:5px 20px 5px 0;
	position:relative;
}
.input-file-name {
	display:block;
	text-decoration:none;
	text-overflow: ellipsis;
	word-wrap: break-word;
	margin-bottom:5px;
	font-size:12px;
}
.input-file-del {
	position:absolute;
	top:6px; right:0;
	width:16px; height:16px;
	background:url(../images/form/sprite_file.gif);
}
.input-file-del:hover { background-position:0 -16px; }

/* ----- select2 ---- */
.select2-container {
    width: 100%;
    display: block;
}

/* ----- errors ----- */
#fillme { display:none }
.error_output {
	padding:10px;
	margin:0 5px 20px;
	background-color:#ffcfc9;
}
.error_output p {
	font-weight:700;
	font-size:11px;
	text-align:center;
	margin:0; color:#b31500 
}
.error_output p em { display:none }

label input[type='text'].errorfield,
label input[type='email'].errorfield,
label input[type='password'].errorfield,
label textarea.errorfield { border-color:#b31500; color:#b31500; }
label textarea.errorfield:focus,
label select.errorfield:focus,
label input.errorfield:focus {
	border-color:#b31500;
	-webkit-box-shadow:#b31500 0 0 10px;
	-moz-box-shadow:#b31500 0 0 10px;
	-ms-box-shadow:#b31500 0 0 10px;
	-o-box-shadow:#b31500 0 0 10px;
	box-shadow:#b31500 0 0 10px;
}

/* ----- validation ----- */
.valid_output {
	position:relative;
	max-width:440px;
	background-color:#ccad75;
	padding:40px 30px;
	margin:20px auto;
}
.valid_output:after {
	position:absolute;
	top:10px; left:10px;
	right:10px; bottom:10px;
	border:#fff 1px solid;
	pointer-events: none;
	content:"";
	-webkit-transition:all .5s;
	-o-transition:all .5s;
	transition:all .5s;
}
.valid_output h3 { 
	text-align:center;
	font-size:14px; 
}
.valid_output p {
	text-align:center;
	margin:0; color:#fff 
}
.success_output { padding:10%; }
.success_output p { margin:0 }
.form-contact-succes { border:#fff 1px solid; }
.form-contact-succes p { font-size:18px; color:#fff; }
.form-team-succes p { font-size:20px; font-weight:700; color:#ccad75 }
.form-contact-succes.fc-gris { border-color:#d7d7d7 }
.form-contact-succes.fc-gris p { color:#5a5e6b }

/*************** THEMES 1 (formulaire sombre) *******************/
.form_1 fieldset > legend { padding:20px 10px 0; }
.form_1 input[type="text"],
.form_1 input[type="email"],
.form_1 input[type="password"],
.form_1 input[type="tel"],
.form_1 textarea,
.form_1 select {
	color:#c4c4c4;
	border:#9f9f9f 1px solid;
	background-color:transparent
}
.form_1 select option { color:#383838 }
.form_1 input[type="text"]:hover,
.form_1 input[type="email"]:hover,
.form_1 input[type="password"]:hover,
.form_1 input[type="tel"]:hover, 
.form_1 textarea:hover,
.form_1 select:hover { border-color:#ffdb66; color:#fff; }
.form_1 input[type="text"]:focus,
.form_1 input[type="email"]:focus,
.form_1 input[type="password"]:focus,
.form_1 input[type="tel"]:focus, 
.form_1 textarea:focus,
.form_1 select:focus {
	border-color:#ffdb66;
	-webkit-box-shadow:#ffdb66 0 0 5px;
	   -moz-box-shadow:#ffdb66 0 0 5px;
	     -o-box-shadow:#ffdb66 0 0 5px;
			box-shadow:#ffdb66 0 0 5px;
}
.form_1 select {
	-webkit-appearance:none;
	-moz-appearance:none;
	/*appearance:none;*/
	padding-right:30px;
}
.form_1 select::-ms-expand { display:none; }
.form_1 .ui-slider { background-color:#41649a; }
.form_1 .ui-slider-horizontal .ui-slider-handle {
	border-radius:50%;
	background-color:#fff;
}
.form_1 input[type="checkbox"] {
	background-color:#fff;
	-webkit-appearance:none;
	-moz-appearance:none;
	/*appearance:none;*/
	width:14px;
	height:14px;
}
.form_1 input[type="checkbox"]::-ms-expand { display:none; }
.form_1 input[type="checkbox"]:hover { 
	border-color:#ccad75;
	-webkit-box-shadow:#ccad75 0 0 5px;
	   -moz-box-shadow:#ccad75 0 0 5px;
	     -o-box-shadow:#ccad75 0 0 5px;
			box-shadow:#ccad75 0 0 5px; 
}

/*************** THEMES 2 *******************/
.form_2 input[type="text"],
.form_2 input[type="email"],
.form_2 input[type="password"],
.form_2 input[type="tel"],
.form_2 textarea,
.form_2 select {
    background-color: #fff;
	border:#c1cee1 1px solid;
	padding:5px 10px;
	border-radius:10px;
}

.form_2 input[type="text"]:hover,
.form_2 input[type="email"]:hover,
.form_2 input[type="password"]:hover,
.form_2 input[type="tel"]:hover, 
.form_2 textarea:hover,
.form_2 select:hover { border-color:#ccad75; }
.form_2 input[type="text"]:focus,
.form_2 input[type="email"]:focus,
.form_2 input[type="password"]:focus,
.form_2 input[type="tel"]:focus, 
.form_2 textarea:focus,
.form_2 select:focus {
	border-color:#ccad75;
	-webkit-box-shadow:#ccad75 0 0 5px;
	   -moz-box-shadow:#ccad75 0 0 5px;
	     -o-box-shadow:#ccad75 0 0 5px;
			box-shadow:#ccad75 0 0 5px;
}
.form_2 select {
	-webkit-appearance:none;
	-moz-appearance:none;
	/*appearance:none;*/
	padding-right:30px;
}
.form_2 select::-ms-expand { display:none; }
.form_2 .ui-slider { background-color:#c1cee1; }
.form_2 .ui-slider-horizontal .ui-slider-handle {
	border-radius:50%;
	background-color:#c1cee1;
}
.form_2 input[type="checkbox"] {
	background-color:#fff;
    border:#c1cee1 1px solid;
	-webkit-appearance:none;
	-moz-appearance:none;
	/*appearance:none;*/
	width:16px;
	height:16px;
}
.form_2 input[type="checkbox"]::-ms-expand { display:none; }
.form_2 input[type="checkbox"]:hover { 
	border-color:#ccad75;
	-webkit-box-shadow:#ccad75 0 0 5px;
	   -moz-box-shadow:#ccad75 0 0 5px;
	     -o-box-shadow:#ccad75 0 0 5px;
			box-shadow:#ccad75 0 0 5px; 
}

/* smartphone horiz BIG */
@media screen and (max-width: 540px) {
	label.floated-label input[type="text"], 
	label.floated-label input[type="email"], 
	label.floated-label input[type="password"], 
	label.floated-label input[type="tel"], 
	label.floated-label textarea, 
	label.floated-label select { width:100%; float:none }
}