@font-face {
	font-family  : "Prototype";
	src          : url("../polices/Prototype.woff2") format("woff2"),
	url("../polices/Prototype.woff") format("woff");
	font-weight  : normal;
	font-style   : normal;
	font-display : swap;
}

/* --------------------------------------------------------------- */
/*
/* HTML
/*
/* --------------------------------------------------------------- */
* {
	box-sizing : border-box;
}

html, body {
	margin      : 0;
	padding     : 0;
	width       : 100%;
	height      : 100%;
	font-family : "Open Sans", sans-serif;
	font-size   : 15px;
}

body {
	text-align : center;
}

#main {
	position         : relative;
	top              : 0;
	left             : 0;
	width            : 100%;
	min-height       : 100%;
	margin           : 0 auto;
	text-align       : left;
	color            : #000000;
	background-color : #FFFFFF;
}

/* --------------------------------------------------------------- */
/*
/* Header
/*
/* --------------------------------------------------------------- */
#entete {
	/*position: relative; top: 0; left: 0;*/
	background-color : rgba(255, 255, 255, 1);
	box-shadow       : 0 0 3px rgba(0, 0, 0, .15)
}

#entete_haut {
	position : relative;
	top      : 0;
	left     : 0;
	padding  : 20px 0;
	z-index  : 10;
}

@media (max-width : 991.98px) {
	#entete_haut {
		padding : 0;
	}

	#entete .logo {
		text-align : center;
		padding    : 15px 0;
	}
}

/* --------------------------------------------------------------- */
/*
/* Diaporama
/*
/* --------------------------------------------------------------- */
#diaporama {
	position : relative;
	top      : 0px;
	left     : 0;
	width    : 100%;
	height   : 620px;
	z-index  : 5;
}

#diaporama img {
	position   : relative;
	width      : 100%;
	height     : 100%;
	object-fit : cover;
	z-index    : 5;
}

#diaporama .overlay {
	position : absolute;
	top      : 0;
	left     : 0;
	width    : 100%;
	height   : 100%;
	/*background : url("../img/diaporama_overlay.png") no-repeat top left;*/
	z-index  : 10;
}

#diaporama .texte_diapo {
	position    : absolute;
	top         : 0;
	left        : 0;
	width       : 100%;
	height      : 100%;
	display     : flex;
	align-items : center;
	z-index     : 20;
}

#diaporama .texte_diapo .sur_titre {
	font-family : "Prototype";
	font-size   : 19px;
	color       : #E6E7E8;
}

#diaporama .texte_diapo .titre {
	font-weight : bold;
	font-size   : 50px;
	color       : #FFFFFF;
}

#diaporama .texte_diapo .sous_titre {
	font-size : 25px;
	color     : #FFFFFF;
}

@media (max-width : 991.98px) {
	#diaporama {
		height : 150px;
	}

	#diaporama .texte_diapo:after {
		content          : "";
		position         : absolute;
		top              : 0;
		left             : 0;
		width            : 100%;
		height           : 100%;
		background-color : rgba(0, 0, 0, 0.4);
	}

	#diaporama .overlay {
		left            : 0;
		width           : 225px;
		background-size : contain;

		display         : none;
	}

	#diaporama .texte_diapo .titre {
		position  : relative;
		font-size : 35px;
		z-index   : 10;
	}

	#diaporama .texte_diapo .sous_titre {
		position  : relative;
		font-size : 14px;
		z-index   : 15;
	}
}

@media (max-height : 750px) {
	#diaporama {
		height : 250px;
	}

	#diaporama .overlay {
		background-size : contain;
	}
}


/* --------------------------------------------------------------- */
/*
/* Menu
/*
/* --------------------------------------------------------------- */
#menu {
	position   : relative;
	top        : 0;
	left       : 0;
	margin-top : -10px;
}

#menu ul {
	padding         : 0;
	margin          : 0;
	list-style-type : none;
	display         : flex;
	justify-content : space-between;
	align-items     : center;
	width           : 100%;
}

#menu ul li {
	position : relative;
	top      : 0;
	left     : 0;
}

#menu ul li a {
	position        : relative;
	top             : 0;
	left            : 0;
	text-decoration : none;
	color           : #000000;
	font-size       : 15px;
	text-transform  : uppercase;
	line-height     : 50px;
}

#menu ul li a.btn-projet {
	position         : relative;
	top              : 0;
	left             : 0;
	padding          : 5px 7px;
	color            : #FFFFFF;
	background-color : #0E0F38;
	border-radius    : 5px;
}

#menu ul li:hover ul, #menu ul li a.hover + ul {
	display : block;
}

#menu ul li ul {
	position         : absolute;
	top              : 50px;
	left             : 50%;
	width            : 220px;
	margin-left      : -110px;
	display          : none;
	background-color : #B6AFAB;
	text-align       : center;
	padding          : 10px 0;
	border-bottom    : 2px solid #0E0F38;
}

#menu ul li ul li a {
	line-height : normal;
	padding     : 10px 30px;
	color       : #FFFFFF;
	font-size   : 95%;
	display     : inline-block;
}

#menu ul li ul li.titre {
	font-family : "Prototype";
	font-size   : 17px;
	color       : #0E0F38;
}


/* --------------------------------------------------------------- */
/*
/* Menu responsive
/*
/* --------------------------------------------------------------- */
.navbar {
	display : block !important;
	padding : 0;
}

.navbar-toggler {
	text-transform : uppercase;
	color          : #FFFFFF;
	box-shadow     : none !important;
	outline        : none !important;
	border         : none;
}

.navbar-toggler i {
	margin-right : 5px;
}

@media (max-width : 991.98px) {
	#menu {
		margin-top : 0;
	}

	#menu ul {
		display : block;
	}

	#menu ul li {
		border-bottom : 1px solid #B6AFAB;
	}

	#menu ul li:last-child {
		border-bottom : none;
	}

	#menu ul li a {
		display    : block;
		text-align : center;
	}

	.bg-navbar {
		background-color : #8C817C;
	}

	.bg-menu {
		background-color : #FFFFFF;
		padding          : 0;
	}

	.bg-menu .show {
		border-bottom : 5px solid #840F00;
	}

	#menu ul li ul {
		position    : relative;
		top         : 0;
		left        : 0;
		margin-left : 0;
		width       : 100%;
	}

}

/* --------------------------------------------------------------- */
/*
/* Language switcher
/*
/* --------------------------------------------------------------- */
.conteneur_locale {
	position : relative;
	height   : 50px;
}

.languagepicker {
	position         : absolute;
	top              : 0;
	left             : 0;
	display          : inline-block;
	padding          : 0;
	height           : 40px;
	overflow         : hidden;
	transition       : all .3s ease;
	margin           : 0 0;
	background-color : transparent;
}

.languagepicker:hover, .languagepicker.hover {
	/* don't forget the 1px border */
	height : 122px;
}

.languagepicker a {
	color           : #000000;
	text-decoration : none;
}

.languagepicker li {
	display     : block;
	padding     : 0px 20px;
	line-height : 40px;
	border-top  : 1px solid #5B5B5B;
}

.languagepicker li:hover {
	background-color : #EEEEEE;
}

.languagepicker li:first-child {
	border : none;
}

.languagepicker li img {
	margin-right : 5px;
	width        : 16px;
}

.roundborders {
	border-radius : 5px;
}

.large:hover {
	/*
	don't forget the 1px border!
	The first language is 40px heigh,
	the others are 41px
	*/
	height : 245px;
}

@media (max-width : 991.98px) {
	.conteneur_locale {
		height : 39px;
	}

	.languagepicker li:first-child a {
		pointer-events : none;
	}

	.languagepicker li:last-child {
		background-color : rgba(255, 255, 255, 0.7);
	}
}


/* --------------------------------------------------------------- */
/*
/* Page
/*
/* --------------------------------------------------------------- */
#page {
	position : relative;
	top      : 0;
	left     : 0;
}

#page section {
	position : relative;
	z-index  : 1;
}

#page .section_page {
	padding : 80px 0;
}

#page .section_page.no_bottom {
	padding-bottom : 0px;
}

#page section.grid-background {
	background : url(../img/grid_background.png) repeat-y top right;
	padding    : 60px 0 100px 0;
}

#page section.gray-background {
	background : #ECECEC;
	padding    : 50px 0;
}

#page .section_page.logo_societe {
	/*background          : url("../img/logo_societe.png") no-repeat;*/
	background-position : calc(100% / 2 + 380px) bottom;
	background-color    : #E2DDDB;
}

#page .sur_titre {
	font-size   : 14px;
	display     : flex;
	align-items : center;
}

#page h1.titre-section, #page h2 {
	position       : relative;
	top            : 0;
	left           : 0;
	font-family    : "Prototype";
	color          : #9D0A0E;
	font-size      : 40px;
	text-transform : uppercase;
	margin-bottom  : 30px;
	padding-left   : 50px;
}

#page .sur_titre span {
	display    : inline-block;
	width      : 70px;
	height     : 1px;
	border-top : 1px solid #939598;
	margin     : 0 10px;
}

#page h1.titre-section:before, #page h2:before {
	content  : url("../img/before_titre.png");
	position : absolute;
	top      : 0;
	left     : 0;
}

#page h1.titre-section .sous-titre, #page h2 .sous-titre {
	margin-left    : -50px;
	font-family    : "Open Sans";
	font-size      : 15px;
	color          : #000000;
	position       : relative;
	display        : block;
	text-transform : initial;
}

#page h1.titre-section .sous-titre:before, #page h2 .sous-titre:before {
	content      : "//";
	position     : relative;
	display      : inline-block;
	margin-right : .5em;
}

#page h1.titre-page {
	position                  : relative;
	top                       : 0;
	left                      : 0;
	font-family               : "Open Sans";
	font-weight               : bold;
	font-size                 : 70px;
	-webkit-text-stroke-width : 1px;
	-webkit-text-stroke-color : #8C827E;
	color                     : transparent;
	margin-bottom             : 10px;
	margin-left               : -50px;
	z-index                   : -1;
}

#page h1.titre-page:after {
	content      : "";
	display      : inline-block;
	width        : 0;
	height       : 0;
	border-style : solid;
	border-width : 120px 0 0 120px;
	border-color : transparent transparent transparent #E2DDDB;
	position     : absolute;
	left         : -5px;
	top          : 35px;
	z-index      : -1;
}

#page .page-intro {
	margin-bottom : 50px;
}

/* -- IE 11 hack -- */
@media screen and (-ms-high-contrast : active), (-ms-high-contrast : none) {
	#page h1.h1-stroke {
		color : #8C827E;
	}
}

#page h1.h1-stroke:before {
	content          : "";
	position         : absolute;
	top              : 45px;
	left             : -15px;
	width            : 120px;
	height           : 120px;
	background-color : #E2DDDB;

}

#page h1.h1-stroke + div.texte {
	position    : relative;
	margin-left : 20px;
}

#page .texte h3 {
	font-size     : 24px;
	color         : #8C817C;
	font-weight   : normal;
	margin-bottom : 10px;
}

#page .section_page .image.carre_rouge {
	position : relative;
	top      : 0;
	left     : 0;
}

#page .section_page .image.carre_rouge:before {
	content          : "";
	position         : absolute;
	bottom           : -16px;
	right            : -16px;
	width            : 46px;
	height           : 46px;
	background-color : #0E0F38;
}

#page .section_page .image.carre_rouge img {
	position : relative;
}

@media (max-width : 991.98px) {
	#page h1, #page h2 {
		margin-bottom : 25px;
	}

	#page h1.h1-stroke {
		font-size : 50px;
	}

	#page .section_page {
		padding : 50px 0;
	}
}


#page a.btn {
	padding       : 10px 15px;
	line-height   : 1;
	display       : inline-block;
	border        : 1px solid;
	font-size     : 16px;
	border-radius : 5px;
	outline       : none;
	box-shadow    : none;
	transition    : .25s ease-in-out;
}

#page .btn.btn-red {
	border-color : #9C1006;
	color        : #9C1006;
}

#page .btn.btn-red:hover {
	background : #9C1006;
	color      : #FFFFFF;
	box-shadow : 1px 1px 6px 3px rgba(0, 0, 0, 0.15);
}

#page ul {
	list-style-type : none;
	padding-left    : 1em;
}

#page ul li {
	padding-left  : 2em;
	position      : relative;
	margin-bottom : 7px;
}

#page ul li:before {
	content         : "";
	background      : url("../img/before_titre.png") no-repeat center center;
	background-size : contain;
	width           : 16px;
	height          : 16px;
	position        : absolute;
	top             : 4px;
	left            : 0;
}

/* --------------------------------------------------------------- */
/*
/* Footer
/*
/* --------------------------------------------------------------- */
#pied {
	position         : relative;
	top              : 0;
	left             : 0;
	background-color : #840F00;
	padding-top      : 65px;
	padding-bottom   : 10px;
	color            : #FFFFFF;
	z-index          : 1;
}

#pied #newsletter_footer {
	top           : -115px;
	margin-top    : -115px;
	margin-bottom : 35px;
}

#pied #newsletter_footer .conteneur_newsletter {
	padding          : 35px 0;
	background-color : #E2DDDB;
	color            : #000000;
}

#pied #newsletter_footer .conteneur_newsletter #input_newsletter_footer {
	padding : 7px 15px;
	border  : none;
	width   : 320px;
}

#pied #newsletter_footer .conteneur_newsletter .btn-rouge {
	background-color : #9D0A0E;
	color            : #FFFFFF;
	font-weight      : bold;
	text-transform   : uppercase;
	border           : none;
	padding          : 7px 10px;
	margin-left      : -3px;
}

#pied #footer_haut {
	padding-bottom : 35px;
	border-bottom  : 1px solid #FFFFFF;
}

#pied #logo_texys {
	margin-top : 185px;
}

#pied .box_pied h4 {
	font-family   : "Prototype";
	font-size     : 25px;
	color         : #BCBEC0;
	margin-bottom : 15px;
}

#pied .box_pied ul {
	padding         : 0;
	margin          : 0;
	list-style-type : none;
}

#pied .box_pied ul li {
	margin : 15px 0;
}

#pied .box_pied p {
	font-size : 16px;
}

#pied .box_pied a {
	color           : #FFFFFF;
	text-decoration : none;
	font-size       : 16px;
}

#pied #reseaux_footer {
	display         : flex;
	justify-content : space-around;
	margin-top      : 25px;
}

#pied #reseaux_footer a {
	font-size     : 25px;
	width         : 45px;
	height        : 45px;
	display       : block;
	border        : 1px solid #FFFFFF;
	border-radius : 50%;
	text-align    : center;
	line-height   : 43px;
}


#pied #footer_bas {
	position  : relative;
	top       : 0;
	left      : 0;
	padding   : 30px 0;
	font-size : 14px;
}

#pied #footer_bas a {
	color           : #FFFFFF;
	text-decoration : none;
}

@media (max-width : 991.98px) {
	/*#pied {*/
	/*	margin-top : 85px;*/
	/*}*/
	#pied #newsletter_footer .conteneur_newsletter {
		padding : 15px;
	}

	#pied #newsletter_footer .conteneur_newsletter #input_newsletter_footer {
		margin-top    : 15px;
		padding-right : 49px;
		width         : 100%;
	}

	#pied #newsletter_footer .conteneur_newsletter .btn-rouge {
		position : absolute;
		top      : 15px;
		right    : 10px;
	}

	#pied .box_pied ul li {
		margin : 5px 0;
	}

	#pied #reseaux_footer {
		margin-top : 0;
	}

	#pied #logo_texys {
		margin-top : 0;
	}
}

@media screen and (max-width : 767px) {
	#page h1.titre-page {
		margin-left : -15px;
		font-size   : 45px;
	}

	#page h1.titre-page:after {
		top : -5px;
	}

	#page h1.titre-section,
	#page h2.titre-section {
		font-size : 30px;
	}

	#page .titre-section .sous-titre {
		margin-top : 15px;
	}
}


html body .grecaptcha-badge {
	z-index : 10 !important;
	visibility: visible !important;
}
