﻿@import url('https://fonts.googleapis.com/css?family=Lato:400,400i,700,900');

:root {
	/* generic */
	--gutterSm: 0.2rem;
	--gutterMd: 0.4rem;
	--gutterLg: 0.6rem;
	--gutterXl: 0.8rem;
	--gutterXx: 2.0rem;
	--colorPrimary400: #01AFE8;
	--colorPrimary600: #0186B1;
	--colorPrimary800: #016789;
	--fontFamily: "Dosis", sans-serif;
	--fontSizeSm: 1.0rem;
	--fontSizeMd: 1.2rem;
	--fontSizeLg: 1.4rem;
	--fontSizeXl: 1.8rem;
	--fontSizeXx: 2.0rem;
	--lineHeightSm: 0.8;
	--lineHeightMd: 1.0;
	--transitionDuration: 300ms;
	--transitionTF: linear; /*cubic-bezier(0.645, 0.045, 0.355, 1)*/
	/* floated labels */
	--inputPaddingV: var(--gutterMd);
	--inputPaddingH: var(--gutterLg);
	--inputFontSize: var(--fontSizeLg);
	--inputLineHeight: var(--lineHeightMd);
	--labelScaleFactor: 0.8;
	--labelDefaultPosY: 50%;
	--labelTransformedPosY: calc( (var(--labelDefaultPosY)) - (var(--inputPaddingV) * var(--labelScaleFactor)) - (var(--inputFontSize) * var(--inputLineHeight)) );
	--inputTransitionDuration: var(--transitionDuration);
	--inputTransitionTF: var(--transitionTF);
}

#cycler {
	position: fixed;
	left: 0;
	top: 0;
	z-index: -10;
	width: 100vw;
	height: 100vh;
	overflow: hidden;
}

	#cycler img {
		position: absolute;
		left: 50%;
		top: 50%;
		z-index: 1;
		transform: translate(-50%, -50%);
		min-width: 120%;
		min-height: 120%;
		filter: blur(100px);
		opacity: 0;
	}

		#cycler img.active {
			opacity: 1;
		}


.navbar-default {
	background-color: transparent;
	-moz-transition: all ease-out 0.15s;
	-o-transition: all ease-out 0.15s;
	-webkit-transition: all ease-out 0.15s;
	transition: all ease-out 0.15s;
}

	.navbar-default:hover {
		background-color: rgba(255, 255, 255, 0.08);
		box-shadow: 0 0px 2px rgba(255, 255, 255, 0.5);
	}

	.navbar-default .btn {
		background: none;
	}

		.navbar-default .btn:hover {
			background: inherit;
		}

#login {
	text-align: center;
}

	#login .btn {
		padding: 7px 15px;
		font-size: 20px;
	}

#page-content-wrapper .container,
#login-container {
	padding-top: 15px;
	background: rgba(251, 251, 251, 0.2);
	border-radius: 10px;
	box-shadow: 0 4px 0 rgba(0, 0, 0, 0.33), 0 0 2px rgba(255, 255, 255, 0.89);
	margin-top: 10px;
	/*text-shadow: 1px 1px 3px #000;*/
}

#login-container {
	padding-bottom: 30px;
}

#page-content-wrapper .container#login {
	padding-top: 15px;
	background: none;
	border-radius: 0px;
	box-shadow: none;
	margin-top: 40px;
}

.navbar .btn {
	border-radius: 0;
	box-shadow: none;
	border: none;
}

	.navbar .btn:hover {
		border: inherit;
	}

.oneline {
	background: rgba(64, 64, 64, 0.39) !important;
}

.well {
	background: none;
}

.full-height {
	height: 100%;
}



/*------------------------------*/
/* Styles générés par main.less */
/*------------------------------*/
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

html,
body {
	border: 0;
	font-family: "Helvetica-Neue", "Helvetica", Arial, sans-serif;
	font-size: 16px;
	line-height: 1.5;
	margin: 0;
	padding: 0;
	height: 100%;
}

div,
span,
object,
iframe,
img,
table,
caption,
thead,
tbody,
tfoot,
tr,
tr,
td,
article,
aside,
canvas,
details,
figure,
hgroup,
menu,
nav,
footer,
header,
section,
summary,
mark,
audio,
video {
	border: 0;
	margin: 0;
	padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
address,
cit,
code,
del,
dfn,
em,
ins,
q,
samp,
small,
strong,
sub,
sup,
b,
i,
hr,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
legend,
label {
	border: 0;
	font-size: 100%;
	vertical-align: baseline;
	margin: 0;
	padding: 0;
}

article,
aside,
canvas,
figure,
figure img,
figcaption,
hgroup,
footer,
header,
nav,
section,
audio,
video {
	display: block;
}

table {
	border-collapse: separate;
	border-spacing: 0;
}

	table caption,
	table th,
	table td {
		text-align: left;
		vertical-align: middle;
	}

a img {
	border: 0;
}

.field-validation-error {
	display: block;
	background: #ffb5b5;
	text-align: left;
	padding: 0 10px;
	margin-bottom: 10px;
}

.input {
	position: relative;
}

.input-text {
	display: block;
	margin: 0;
	padding: var(--inputPaddingV) var(--inputPaddingH);
	margin: var(--gutterXx) 0 10px 0;
	color: inherit;
	width: 100%;
	font-family: inherit;
	font-size: var(--inputFontSize);
	font-weight: inherit;
	line-height: var(--inputLineHeight);
	border: none;
	border-radius: 0.4rem;
	transition: box-shadow var(--transitionDuration);
}

	.input-text::-webkit-input-placeholder {
		color: #B0BEC5;
	}

	.input-text:-ms-input-placeholder {
		color: #B0BEC5;
	}

	.input-text::-ms-input-placeholder {
		color: #B0BEC5;
	}

	.input-text::placeholder {
		color: #B0BEC5;
	}

	.input-text:focus {
		outline: none;
		box-shadow: 0.2rem 0.4rem 1.0rem var(--colorPrimary600);
	}

.input-label {
	display: block;
	position: absolute;
	bottom: 60%;
	left: 0rem;
	color: #596771;
	font-family: inherit;
	font-size: var(--inputFontSize);
	font-weight: inherit;
	line-height: var(--inputLineHeight);
	opacity: 0;
	-webkit-transform: translate3d(0, var(--labelDefaultPosY), 0) scale(1);
	transform: translate3d(0, var(--labelDefaultPosY), 0) scale(1);
	-webkit-transform-origin: 0 0;
	transform-origin: 0 0;
	transition: opacity var(--inputTransitionDuration) var(--inputTransitionTF), visibility 0ms var(--inputTransitionDuration) var(--inputTransitionTF), z-index 0ms var(--inputTransitionDuration) var(--inputTransitionTF), -webkit-transform var(--inputTransitionDuration) var(--inputTransitionTF);
	transition: opacity var(--inputTransitionDuration) var(--inputTransitionTF), transform var(--inputTransitionDuration) var(--inputTransitionTF), visibility 0ms var(--inputTransitionDuration) var(--inputTransitionTF), z-index 0ms var(--inputTransitionDuration) var(--inputTransitionTF);
	transition: opacity var(--inputTransitionDuration) var(--inputTransitionTF), transform var(--inputTransitionDuration) var(--inputTransitionTF), visibility 0ms var(--inputTransitionDuration) var(--inputTransitionTF), z-index 0ms var(--inputTransitionDuration) var(--inputTransitionTF), -webkit-transform var(--inputTransitionDuration) var(--inputTransitionTF);
}

.input-text:placeholder-shown + .input-label {
	visibility: hidden;
	z-index: -1;
}

.input-text:not(:placeholder-shown) + .input-label,
.input-text:focus:not(:placeholder-shown) + .input-label {
	visibility: visible;
	z-index: 1;
	opacity: 1;
	-webkit-transform: translate3d(0, var(--labelTransformedPosY), 0) scale(var(--labelScaleFactor));
	transform: translate3d(0, var(--labelTransformedPosY), 0) scale(var(--labelScaleFactor));
	transition: visibility 0ms, z-index 0ms, -webkit-transform var(--inputTransitionDuration);
	transition: transform var(--inputTransitionDuration), visibility 0ms, z-index 0ms;
	transition: transform var(--inputTransitionDuration), visibility 0ms, z-index 0ms, -webkit-transform var(--inputTransitionDuration);
}





body {
	overflow: hidden;
	font-family: Lato;
	font-weight: 400;
	color: #4e5d6c;
}

.btn {
	align-items: center;
	padding: 14px 25px;
	font-size: 22px;
	border-radius: 6px;
	transition: opacity 0.1s linear, background .1s linear, color .1s linear;
	cursor: pointer;
	display: inline-flex;
	text-decoration: none;
	margin: 0 auto;
}

}

.btn i + span {
	margin-left: 3px;
}

.btn i {
	line-height: 1;
	margin-right: 7px;
}

.mCSB_inside > .mCSB_container {
	margin-right: 20px;
}

.mCSB_scrollTools {
	opacity: 1;
}

	.mCSB_scrollTools .mCSB_draggerRail {
		width: 3px;
		background: #000;
		opacity: .2;
	}

	.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
	.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,
	.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
	.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
		background: #5bc0de;
	}

.text-center {
	text-align: center;
}

.text-left {
	text-align: left;
}

.text-right {
	text-align: right;
}

header {
	position: absolute;
	z-index: 12;
	left: 0;
	width: 100vw;
	height: 7vh;
	padding: 0.7vh 1vh 0.7vh 0.7vh;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	background: rgba(255, 255, 255, 0.7);
}

	header .header {
		/*margin-left: auto;
        flex: 0 0 auto;*/
		flex: 0 1 100%;
		align-items: center;
		display: flex;
		justify-content: space-between;
	}

	header #logo {
		margin-right: 20px;
		flex: 0 0 250px;
		max-width: 200px;
	}

	header a {
		display: inline-block;
	}

		header a img {
			/*max-width: 100%;*/
			width: auto;
			max-height: 100%;
		}

	header h1 {
		text-align: right;
		line-height: 1.1;
		font-size: 28px;
		font-weight: 700;
		font-style: normal;
		/*flex: 1 0 auto;*/
		text-align: left;
		margin-right: 10px;
	}

		header h1 small {
			display: flex;
			align-items: center;
			font-weight: normal;
			font-style: italic;
			font-size: 12px;
		}

		header h1 i + span {
			margin-left: 10px;
		}

		header h1 i {
			font-size: 20px;
		}

	header .btn {
		margin-left: 10px;
		text-decoration: none;
		padding: 5px 5px;
		font-size: 14px;
		font-style: normal;
		transition: all 0.2s ease-in;
		flex: 0 1 auto;
		margin: 0 5px;
		font-weight: 600;
		color: #AAA;
	}

		header .btn i {
			margin-right: 7px;
		}

		header .btn:hover span {
			text-decoration: underline;
		}

	header .subtitle {
		text-align: right;
		font-size: 12px;
		font-weight: 400;
		font-style: italic;
		display: flex;
		align-items: center;
		justify-content: flex-end;
		height: 100%;
	}

		header .subtitle strong {
			font-weight: 700;
		}

header {
	display: flex;
	width: 100%;
	/*justify-content: space-between;*/
	height: auto;
}

	header a {
		max-width: 20vw;
	}

	header .title {
		align-self: center;
		font-size: 24px;
		font-weight: 900;
		flex: 1 0 0%;
	}



nav {
	z-index: 100;
	/*position: fixed;
    left: 1vh;
    top: 1vh;*/
	position: relative;
	align-self: center;
	height: 36px;
	margin-left: 20px;
}

	nav #nav-trigger {
		position: relative;
		z-index: 1;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 36px;
		height: 36px;
		background: rgba(255, 255, 255, 0.8);
		border-radius: 6px;
		cursor: pointer;
		transition: background .1s linear;
		/*padding-top: 2px;*/
		/*border: 2px solid #4e5d6c;*/
	}

		nav #nav-trigger:hover {
			background: #FFF;
		}

		nav #nav-trigger i {
			font-size: 19px;
			transition: transform .2s linear;
		}

			nav #nav-trigger i.fa-arrow-up {
				transform: rotate(315deg);
			}



	nav #nav-content .logout {
		border: none;
		display: flex;
		display: flex;
		margin: 10px 0 0 0;
		padding: 0 !important;
	}

		nav #nav-content .logout form {
			display: flex;
			width: 100%;
		}

		nav #nav-content .logout .btn {
			flex: 1 0 100%;
			margin: 0;
			background: none;
			color: #e02828;
			font-weight: bold;
			border: none;
			padding: 10px 10px 10px 15px;
			margin: 0;
			/* text-align: left; */
			display: flex;
			/* margin-top: 20px;*/
		}


			nav #nav-content .logout .btn i {
				margin-right: 7px;
			}

	nav #nav-content {
		z-index: 0;
		position: absolute;
		right: 0;
		top: 0;
		width: 200px;
		width: 36px;
		height: 36px;
		overflow: hidden;
		background: #FFF;
		padding-top: 36px;
		border-radius: 6px;
		box-shadow: 0 5px 10px rgba(0, 0, 0, 0);
		transition: width 0.1s linear 0.2s, height 0.2s cubic-bezier(0.14, -0.03, 0.81, -0.07), box-shadow 0.3s linear;
		overflow: hidden;
	}

		nav #nav-content.opened {
			width: 200px;
			/*overflow: visible;*/
			box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
			transition: width 0.1s linear, height 0.2s cubic-bezier(0.43, 1.38, 0.75, 1.01) 0.1s;
		}

			nav #nav-content.opened li {
				opacity: 1;
				transition: background .1s linear, opacity .1s linear .3s;
			}

		nav #nav-content ul {
			list-style: none;
		}

		nav #nav-content > ul > li {
			opacity: 0;
			transition: background .1s linear, opacity .1s linear;
		}

			nav #nav-content > ul > li:hover {
				background: #f2f5f8;
			}

			nav #nav-content > ul > li:first-child a span {
				font-weight: 400;
			}

			nav #nav-content > ul > li:first-child button {
				background: none;
				border: none;
				cursor: pointer;
			}

				nav #nav-content > ul > li:first-child button i.fa-sign-out {
					color: #d9534f;
				}

			nav #nav-content > ul > li:last-child {
				padding-bottom: 10px;
			}

				nav #nav-content > ul > li:last-child a {
					padding-bottom: 5px;
				}

			nav #nav-content .bloc, nav #nav-content > ul > li > a {
				display: flex;
				align-items: center;
				padding: 10px;
				color: #4e5d6c;
				/*white-space: nowrap;*/
				line-height: 1.2;
				text-decoration: none;
			}

				nav #nav-content .bloc i, nav #nav-content a i {
					font-size: 20px;
				}

				nav #nav-content .bloc span, nav #nav-content a span {
					flex: 1 1 0%;
					font-weight: 900;
					padding-left: 5px;
					font-size: 14px;
				}


		nav #nav-content #boucles {
			padding-left: 40px;
			width: 200px;
		}

			nav #nav-content #boucles a {
				padding: 0;
				font-size: 12px;
				font-weight: 400;
				font-style: italic;
				color: #4e5d6c;
				text-decoration: none;
			}

				nav #nav-content #boucles a:hover {
					text-decoration: underline;
				}


	nav.opened::before {
		content: '';
		position: fixed;
		top: 0;
		left: 0;
		height: 100%;
		width: 100%;
		z-index: 0;
		background: rgba(0,0,0,0.5);
	}


#wrapper {
	padding-top: 0;
	height: 100%;
	display: flex;
	align-items: center;
}

#page-content-wrapper {
	width: 100%;
}

h1 {
	font-size: 30px;
}

.page-container {
	background: rgba(255, 255, 255, 0.5);
	padding-top: 80px;
}



.form-control {
	padding: 8px 10px;
	border-radius: 2px;
	box-shadow: none;
	/*border: none;*/
	font-size: 18px;
	color: #2e2e2e;
}

textarea {
	font-size: 13px !important;
	opacity: 0.80;
}

.text-success {
	padding: 7px 10px;
	background: #5cb85c;
	border-radius: 6px;
	margin: 10px 0;
	color: #c7ffc7;
}

.validation-summary-errors {
	background: #ffc7c7;
	border-radius: 4px;
}

	.validation-summary-errors ul li {
		padding: 0 10px;
		margin: 10px 0;
		display: flex;
		align-items: flex-start;
		justify-content: flex-start;
		flex-direction: row;
	}

.message.success {
	margin: 0 0 10px 0;
	background: #86c382;
	border-radius: 5px;
	padding: 3px 7px;
}



.will-unhide {
	opacity: 0;
	visibility: hidden;
	transition: all 0.2s ease-in;
}

.unhide {
	animation: zoomIn 0.2s ease-in forwards 0.2s;
	visibility: visible;
}


@media screen and (max-height:600px) and (min-aspect-ratio: 18/10) {
	header {
		height: 7vh;
	}

		header #logo {
			flex: 0 0 110px;
		}

		header h1 {
			font-size: 12px;
			flex: 1 0 auto;
		}

		header .btn {
			font-size: 14px;
			padding: 0 5px;
			margin: 3px;
			flex-wrap: nowrap;
			width: auto;
		}

			header .btn i + span {
				display: none;
			}
}

header {
	position: fixed;
	z-index: 99;
	left: 0;
	right: 0;
	top: 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 60px;
	padding: 0 20px;
	background: #FFF;
}

	header .mobile-visible {
		display: none;
		visibility: hidden;
	}

	header #logo {
		height: 100%;
	}

		header #logo img {
			display: block;
			height: 90%;
		}

	header #mode-switch {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		background: #fff;
		border-radius: 40px;
		border: 1px solid #c3d7de;
		margin: 0 10px 0 0px;
	}

		header #mode-switch .mode {
			padding: 8px 16px;
			color: #4E5D6C;
			background: #FFF;
			border-radius: 39px;
			-webkit-user-select: none;
			-moz-user-select: none;
			-ms-user-select: none;
			user-select: none;
			text-align: center;
			text-transform: uppercase;
			font-size: 11px;
			line-height: 1.2em;
			font-weight: bold;
			text-decoration: none;
			cursor: pointer;
			-webkit-transition: background .1s linear;
			transition: background .1s linear;
		}

			header #mode-switch .mode:hover:not(.active) {
				background: rgba(29, 183, 233, 0.2);
			}

			header #mode-switch .mode.active {
				color: #FFF;
				background: #1DB7E9;
				cursor: default;
			}

	header h1 {
		display: flex;
		align-items: center;
	}

		header h1 .premium {
			width: 40px;
			display: block;
			margin-right: 10px;
		}

		header h1 span {
			display: block;
			/* flex: 100%; */
			max-width: 30em;
			white-space: nowrap;
			text-overflow: ellipsis;
			overflow: hidden;
			/* font-weight: bold; */
			color: #4E5D6C;
			line-height: 1.20em;
		}

@media screen and (max-width: 1300px) {
	header h1 span {
		max-width: 18em;
	}
}

@media screen and (max-width: 1024px) {
	header h1 span {
		max-width: 12em;
	}
}

header #menu {
	display: flex;
	align-items: center;
}

	header #menu > * {
		margin: 0 10px;
	}

	header #menu > a {
		color: #4E5D6C;
		font-size: 20px;
		transition: color .1s linear;
	}

		header #menu > a:hover {
			color: #0192BD;
		}

	header #menu nav #nav-trigger {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 30px;
		height: 30px;
		color: #FFF;
		background: #4E5D6C;
		border-radius: 30px;
		cursor: pointer;
	}

	header #menu nav #nav-content {
		position: absolute;
		z-index: 1;
		top: 100%;
		right: 0;
		transform: translateX(100%);
		width: 250px;
		padding: 10px 20px;
		font-size: 14px;
		background: #FFF;
		border-radius: 0 0 0 12px;
		transition: transform 0.2s ease-out;
	}

		header #menu nav #nav-content.active {
			transform: translate(0);
		}

		header #menu nav #nav-content ul {
			list-style: none;
		}

			header #menu nav #nav-content ul > li {
				margin: 5px 0;
			}

				header #menu nav #nav-content ul > li.mobile {
					display: none;
				}

		header #menu nav #nav-content a {
			text-decoration: none;
			color: #4E5D6C;
			font-weight: bold;
		}

		header #menu nav #nav-content .login {
			color: #4E5D6C;
		}

		header #menu nav #nav-content .logout button {
			background: none;
			border: none;
			color: #e02828;
			cursor: pointer;
		}

		header #menu nav #nav-content #boucles {
			padding-left: 20px;
		}

			header #menu nav #nav-content #boucles a {
				display: block;
				margin: 5px 0;
				font-weight: normal;
			}

@media screen and (max-width: 768px) {
	header {
		position: static;
	}

		header .mobile-visible {
			display: inline;
			visibility: visible;
		}

		header #logo {
			overflow: hidden;
			position: fixed;
			z-index: 99;
			left: 0;
			top: 0;
			width: 47px;
			height: 60px;
		}

			header #logo img {
				height: 100%;
			}

		header h1 {
			position: fixed;
			z-index: 98;
			left: 0;
			right: 0;
			top: 0;
			height: 60px;
			padding-left: 70px;
			padding-right: 20px;
			background: #FFF;
		}

			header h1 span {
				max-width: 16em;
			}

		header #mode-switch {
			position: fixed;
			z-index: 99;
			right: 10px;
			bottom: 10px;
			width: 100vw;
			left: 0;
			bottom: 0;
			padding: 0px;
			border-radius: 0;
		}

			header #mode-switch .mode[href],
			header #mode-switch .mode.active {
				/*display: none;*/
			}

		header #menu {
			position: fixed;
			z-index: 98;
			left: 0;
			right: 0;
			bottom: 0;
			height: 60px;
			justify-content: flex-start;
			background: #FFF;
		}

			header #menu::after {
				content: "";
				position: relative;
				z-index: 1;
				display: block;
				flex: 100%;
				height: 60px;
				background: #FFF;
			}

			header #menu > .btn {
				display: none;
			}

			header #menu nav {
				position: relative;
				z-index: 0;
				margin: 0;
			}

				header #menu nav #nav-trigger {
					position: relative;
					z-index: 1;
					display: flex;
					justify-content: center;
					align-items: center;
					flex: 0 0 60px;
					width: 60px;
					height: 60px;
					border-radius: 0;
					background: #FFF;
				}

					header #menu nav #nav-trigger i {
						display: flex;
						justify-content: center;
						align-items: center;
						width: 30px;
						height: 30px;
						background: #4E5D6C;
						border-radius: 30px;
					}

						header #menu nav #nav-trigger i::before {
							content: "\f0c9";
						}

				header #menu nav #nav-content {
					z-index: 0;
					top: auto;
					left: 0;
					right: 0;
					bottom: 0;
					transform: translateY(100%);
					width: 100vw;
					padding: 10px;
					border-radius: 12px 12px 0 0;
					background: #4E5D6C;
				}

					header #menu nav #nav-content.active {
						margin-bottom: 60px;
					}

					header #menu nav #nav-content ul {
						display: flex;
						flex-direction: column;
					}

						header #menu nav #nav-content ul > li {
							order: 2;
							background: #FFF;
							border-radius: 6px;
						}

							header #menu nav #nav-content ul > li.mobile {
								display: block;
							}

							header #menu nav #nav-content ul > li.login {
								order: 0;
								margin-top: 0;
								margin-bottom: 10px;
								background: none;
							}

								header #menu nav #nav-content ul > li.login .bloc {
									display: flex;
									justify-content: center;
									align-items: center;
									color: #FFF;
								}

									header #menu nav #nav-content ul > li.login .bloc span {
										margin-left: 10px;
										font-size: 18px;
									}

							header #menu nav #nav-content ul > li.logout {
								order: 1;
							}

							header #menu nav #nav-content ul > li a,
							header #menu nav #nav-content ul > li button.btn {
								display: block;
								width: auto;
								padding: 10px 10px;
								font-size: 16px;
								font-weight: bold;
							}

								header #menu nav #nav-content ul > li a i,
								header #menu nav #nav-content ul > li button.btn i {
									font-weight: bold;
								}

					header #menu nav #nav-content #boucles li {
						margin: 0;
					}

						header #menu nav #nav-content #boucles li a {
							margin: 0;
							padding: 5px;
						}
}

nav .help {
	display: none;
}

#faq {
	width: 100%;
	position: absolute;
	top: 7vh;
	right: 0;
	z-index: 100;
	height: 93vh;
	display: flex;
	/* align-items: flex-end; */
	justify-content: flex-end;
	overflow: hidden;
	/*transform: scale(0);*/
	transition: all 0.2s linear;
	visibility: hidden;
}

	#faq.show {
		/*transform: scale(1);*/
		visibility: visible;
	}


		#faq.show #faq-wrapper {
			/*transform: translateX(0);*/
			opacity: 1;
		}

		#faq.show #faq-content {
			transform: translate3d(0,0,0);
		}

	#faq .header {
		display: flex;
		align-items: center;
		margin-bottom: 12px;
	}

		#faq .header h2 {
			font-size: 30px;
			flex: 2;
			display: flex;
			align-items: center;
		}


			#faq .header h2 .external {
				margin: 0 10px;
				font-size: 19px;
				cursor: pointer;
			}


		#faq .header .content {
			display: flex;
			background: #53c4ec;
			border-radius: 5px;
			padding: 2px 10px;
			color: #FFF;
			align-items: center;
			flex: 1;
		}

		#faq .header .search {
			flex: 1 0 auto;
			display: flex;
			justify-content: flex-end;
		}

			#faq .header .search .content {
				padding: 10px;
			}

				#faq .header .search .content input {
					border-radius: 5px;
					box-shadow: none;
					border: none;
					/* height: auto; */
					font-size: 18px;
					padding: 7px 10px;
					box-shadow: -2px 2px 0px #1984aa;
					margin: 0 10px;
				}

	#faq #faq-wrapper {
		height: 100%;
		width: 100vw;
		position: absolute;
		/* box-shadow: -2px 0px 12px #000000b5; */
		/* border-radius: 5px; */
		overflow-y: auto;
		background: #696969c9;
		/*transform: translateX(-100%);*/
		opacity: 0;
		transition: all 0.2s ease-in;
	}

	#faq #faq-content {
		display: flex;
		flex-direction: column;
		background: white;
		/*box-shadow: -2px 0px 50px #00000061;*/
		/*border-radius: 5px;*/
		width: 50vw;
		padding: 2vw;
		transform: translateX(100%);
		transition: all 0.3s ease-in-out 0.2s;
		max-height: 100%;
		overflow-y: auto;
	}

@@media screen and (max-width: 1200px) {
	#faq #faq-content {
		width: 100vw;
		padding: 1vw;
	}
}

#faq #faq-content .questions {
	overflow-y: auto;
	max-height: 100%;
}


	#faq #faq-content .questions .question {
		/*border-left: 2px solid #53c4ec;*/
		padding-left: 15px;
		margin: 25px 0;
		position: relative;
		overflow: hidden;
		padding-right: 15px;
	}

		#faq #faq-content .questions .question::before {
			content: ' ';
			display: block;
			position: absolute;
			height: 100%;
			width: 4px;
			background: #53c4ec;
			left: 0;
			top: 0;
			height: 0;
			/*transform-origin:50%;
                        transform: translateY(0);*/
			transform-origin: top;
			transition: all 0.5s cubic-bezier(.15,-0.3,.72,1.4);
			opacity: 0;
		}

		#faq #faq-content .questions .question.opened::before {
			background: #2a82a1;
			/*transform: translateY(100%);*/
			height: 100%;
			opacity: 1;
		}

		#faq #faq-content .questions .question strong {
		}

		#faq #faq-content .questions .question .title {
			font-size: 20px;
			color: #53c4ec;
			/* text-shadow: 0px -1px 0 #cff3ff; */
			font-weight: 900;
			cursor: pointer;
			transition: all 0.4s cubic-bezier(.43,1.9,.83,.67);
			margin-bottom: 10px;
		}

			#faq #faq-content .questions .question .title:hover {
				color: #038dbe;
			}

		#faq #faq-content .questions .question .answer {
			background: #f3f3f3;
			border-radius: 8px;
			/*box-shadow: 0px 2px 2px #cecece4f;
                        border: 1px solid #dadada;*/
			/*height: 0px;*/
			opacity: 0;
			transition: all 0.5s ease-in;
			overflow: hidden;
			font-size: 18px;
			display: none;
		}

			#faq #faq-content .questions .question .answer p {
				margin: 10px;
			}


			#faq #faq-content .questions .question .answer ol {
				margin: 10px;
			}


		#faq #faq-content .questions .question.opened .answer {
			/*height: auto;*/
			display: block;
			opacity: 1;
		}



#faq #faq-content .close {
	display: flex;
	justify-content: flex-end;
}

	#faq #faq-content .close .btn {
		padding: 5px 7px;
		font-size: 18px;
		border-radius: 50%;
		align-items: center;
		border: 1px solid #038dbe;
		background: #038dbe;
		display: flex;
		align-items: center;
		justify-content: center;
	}

		#faq #faq-content .close .btn:hover {
			background: white;
			color: #038dbe;
		}

		#faq #faq-content .close .btn i {
			margin: 0;
		}

ol {
	padding-left: 20px;
}


#faq #faq-content .questions::-webkit-scrollbar-track {
}

#faq #faq-content .questions::-webkit-scrollbar {
	transition: opacity .2s ease-in-out,background-color .2s ease-in-out;
	height: 12px;
	width: 6px;
	background: rgba(0, 0, 0, 0.20);
	opacity: .2;
	cursor: pointer;
}


#faq #faq-content .questions::-webkit-scrollbar {
	background: #d3f0fa;
	border-right: 1px solid rgba(211, 240, 250, 0.50);
	border-left: 1px solid rgba(211, 240, 250, 0.50);
	border-radius: 6px;
}

#faq #faq-content .questions::-webkit-scrollbar-thumb {
	background: #84dbfa;
	border-radius: 6px;
}


#contact {
	width: 100%;
	position: absolute;
	top: 7vh;
	right: 0;
	z-index: 100;
	height: 93vh;
	display: flex;
	/* align-items: flex-end; */
	justify-content: flex-end;
	overflow: hidden;
	/*transform: scale(0);*/
	transition: all 0.2s linear;
	visibility: hidden;
}

	#contact.show {
		/*transform: scale(1);*/
		visibility: visible;
	}


		#contact.show #contact-wrapper {
			/*transform: translateX(0);*/
			opacity: 1;
		}

		#contact.show #contact-content {
			transform: translate3d(0,0,0);
		}

	#contact .header {
		display: flex;
		align-items: center;
		margin-bottom: 12px;
	}

		#contact .header h2 {
			font-size: 30px;
			flex: 2;
			display: flex;
			align-items: center;
		}


			#contact .header h2 .external {
				margin: 0 10px;
				font-size: 19px;
				cursor: pointer;
			}


		#contact .header .content {
			display: flex;
			background: #53c4ec;
			border-radius: 5px;
			padding: 2px 10px;
			color: #FFF;
			align-items: center;
			flex: 1;
		}

		#contact .header .search {
			flex: 1 0 auto;
			display: flex;
			justify-content: flex-end;
		}

			#contact .header .search .content {
				padding: 10px;
			}

				#contact .header .search .content input {
					border-radius: 5px;
					box-shadow: none;
					border: none;
					/* height: auto; */
					font-size: 18px;
					padding: 7px 10px;
					box-shadow: -2px 2px 0px #1984aa;
					margin: 0 10px;
				}

	#contact #contact-wrapper {
		height: 100%;
		width: 100vw;
		position: absolute;
		/* box-shadow: -2px 0px 12px #000000b5; */
		/* border-radius: 5px; */
		overflow-y: auto;
		background: #696969c9;
		/*transform: translateX(-100%);*/
		opacity: 0;
		transition: all 0.2s ease-in;
	}

	#contact #contact-content {
		display: flex;
		flex-direction: column;
		background: white;
		/*box-shadow: -2px 0px 50px #00000061;*/
		/*border-radius: 5px;*/
		width: 50vw;
		padding: 2vw;
		transform: translateX(100%);
		transition: all 0.3s ease-in-out 0.2s;
		max-height: 100%;
		overflow-y: auto;
	}

@@media screen and (max-width: 1200px) {
	#contact #contact-content {
		width: 100vw;
		padding: 1vw;
	}
}

#contact #contact-content .questions {
	overflow-y: auto;
	max-height: 100%;
}


	#contact #contact-content .questions .question {
		/*border-left: 2px solid #53c4ec;*/
		padding-left: 15px;
		margin: 25px 0;
		position: relative;
		overflow: hidden;
		padding-right: 15px;
	}

		#contact #contact-content .questions .question::before {
			content: ' ';
			display: block;
			position: absolute;
			height: 100%;
			width: 4px;
			background: #53c4ec;
			left: 0;
			top: 50%;
			height: 0;
			/*transform-origin:50%;
                        transform: translateY(0);*/
			transform-origin: center;
			transition: all 0.3s cubic-bezier(.15,-0.3,.72,1.4);
		}

		#contact #contact-content .questions .question.collapsed::before {
			background: #2a82a1;
			transform: translateY(-50%);
			height: 100%;
		}

		#contact #contact-content .questions .question strong {
		}

		#contact #contact-content .questions .question .title {
			font-size: 20px;
			color: #53c4ec;
			/* text-shadow: 0px -1px 0 #cff3ff; */
			font-weight: 900;
			cursor: pointer;
			transition: all 0.4s cubic-bezier(.43,1.9,.83,.67);
			margin-bottom: 10px;
		}

			#contact #contact-content .questions .question .title:hover {
				color: #038dbe;
			}

		#contact #contact-content .questions .question .answer {
			background: #f3f3f3;
			border-radius: 8px;
			/*box-shadow: 0px 2px 2px #cecece4f;
                        border: 1px solid #dadada;*/
			height: 0px;
			opacity: 0;
			transition: all 0.2s ease-in;
			overflow: hidden;
			font-size: 18px;
		}

			#contact #contact-content .questions .question .answer p {
				margin: 10px;
			}


			#contact #contact-content .questions .question .answer ol {
				margin: 10px;
			}


		#contact #contact-content .questions .question.collapsed .answer {
			height: auto;
			opacity: 1;
		}



#contact #contact-content .close {
	display: flex;
	justify-content: flex-end;
}

	#contact #contact-content .close .btn {
		padding: 5px 7px;
		font-size: 18px;
		border-radius: 50%;
		align-items: center;
		border: 1px solid #038dbe;
		background: #038dbe;
		display: flex;
		align-items: center;
		justify-content: center;
	}

		#contact #contact-content .close .btn:hover {
			background: white;
			color: #038dbe;
		}

		#contact #contact-content .close .btn i {
			margin: 0;
		}

ol {
	padding-left: 20px;
}


#contact #contact-content .questions::-webkit-scrollbar-track {
}

#contact #contact-content .questions::-webkit-scrollbar {
	transition: opacity .2s ease-in-out,background-color .2s ease-in-out;
	height: 12px;
	width: 6px;
	background: rgba(0, 0, 0, 0.20);
	opacity: .2;
	cursor: pointer;
}


#contact #contact-content .questions::-webkit-scrollbar {
	background: #d3f0fa;
	border-right: 1px solid rgba(211, 240, 250, 0.50);
	border-left: 1px solid rgba(211, 240, 250, 0.50);
	border-radius: 6px;
}

#contact #contact-content .questions::-webkit-scrollbar-thumb {
	background: #84dbfa;
	border-radius: 6px;
}

#contact-infos {
	background: #eafaff;
	border: 1px solid #d0f3ff;
	border-radius: 6px;
	box-shadow: 0 5px 25px #3d92b036;
	padding: 10px 15px;
	margin: 10px 15px;
	font-size: 18px;
	color: #1b9ecc;
}

	#contact-infos p {
		margin: 10px 0;
	}

	#contact-infos a {
		color: #1b9ecc;
		font-weight: bold;
		margin: 0 10px;
	}

	#contact-infos ul {
		padding: 0px 0 0 20px;
		list-style: none;
	}

	#contact-infos em {
		font-size: 14px;
	}

	#contact-infos ul li {
		display: flex;
		align-items: center;
	}

		#contact-infos ul li i {
			margin-right: 7px;
		}

@media screen and (max-width: 768px) {
	#tv-catalogue {
		width: 100%;
		margin: 0;
	}

		#tv-catalogue > .content {
			padding: 10px;
		}

	header #help {
		display:none;
	}
	nav .help {
		display: block;
	}
}


@media screen and (max-width: 1250px) {
	#help .btn {
		padding: 0;
		font-size: 20px;
		margin: 0 7px;
	}

		#help .btn i {
			margin-right: 7px;
			margin: 0;
		}

	#help a span {
		display: none;
	}
}



		header h1 .classique {
			filter: grayscale(1) contrast(0) brightness(1.6);
		}
		