.haut {
	display: block;
	float: none;
	position: relative;
	letter-spacing: 0.01em;
}
.haut-site {
	background-color: #a60000;
	display: table;
	margin: 0px;
	padding: 0px;
	float: none;
	height: 64px;
	width: 100%;
	position: relative;
	background: url(../graphisme/haut/horizon.png) no-repeat right top,url(../graphisme/haut/terre.png) no-repeat left top, linear-gradient(#940101,#670000);
	transition-property: height;
	transition-duration: 0.3s;
	transition-timing-function: ease-in-out;
}
@media screen and (max-width: 767px) {
	.haut-site {
	background-color: #a60000;
	display: table;
	margin: 0px;
	padding: 0px;
	float: none;
	height: 54px;
	width: 100%;
	position: relative;
	background: url(../graphisme/haut/horizon.png) no-repeat right top,linear-gradient(#940101,#670000);
	}	
}
.haut-site-menu {
	text-align: left;
	vertical-align: top;
	display: none;
	position: relative;
	box-sizing: border-box;
	padding-top: 16px;
	padding-left: 20px;
	width: 90px;
}
@media screen and (max-width: 767px) {
	.haut-site-menu {
	display: table-cell;
	}
}
.haut-menu-mobile {
	background-image: url(../graphisme/haut/menu.png);
	background-repeat: no-repeat;
	background-position: left top;
	display: inline-block;
	height: 22px;
	width: 30px;
	position: relative;
	cursor: pointer;
	opacity: 0.7;
}
.haut-menu-mobile:hover {
	opacity: 1;
}
.haut-site-logo {
	text-align: left;
	vertical-align: bottom;
	display: table-cell;
	position: relative;
	box-sizing: border-box;
	padding-bottom: 9px;
	padding-left: 30px;
	font-size: 0px;
}
@media screen and (max-width: 767px) {
	.haut-site-logo {
	text-align: center;
	vertical-align: top;
	padding-bottom: 0px;
	padding-left: 0px;
	padding-top: 15px;
	}	
}
.haut-logo {
	display: inline-table;
	position: relative;
	text-decoration: none;
}
.haut-logo-image {
	background-image: url(../graphisme/haut/logo-lsi.png);
	background-repeat: no-repeat;
	background-position: left top;
	vertical-align: bottom;
	display: table-cell;
	height: 35px;
	width: 99px;
	position: relative;
	font-size: 0px;
}
@media screen and (max-width: 767px) {
	.haut-logo-image {
	background-image: url(../graphisme/haut/logo-lsi.png);
	background-repeat: no-repeat;
	background-position: left bottom;
	vertical-align: top;
	height: 24px;
	width: 72px;
	}	
}
.haut-logo-nom {
	vertical-align: bottom;
	display: table-cell;
	position: relative;
	font-size: 0px;
	text-align: center;
	padding-left: 10px;
}
@media screen and (max-width: 767px) {
	.haut-logo-nom {
	padding-left: 7px;
	}	
}
@media screen and (max-width: 420px) {
	.haut-logo-nom {
	display: none;
	}
}
.haut-logo-nom div:nth-of-type(1) {
	background: linear-gradient(#ccb233,#bea730);
	background-color: #bea730;
	display: block;
	float: none;
	position: relative;
	text-transform: uppercase;
	text-align: center;
	line-height: 22px;
	height: 22px;
	padding-left: 10px;	
}
@media screen and (max-width: 767px) {
	.haut-logo-nom div:nth-of-type(1) {
	line-height: 13px;
	height: 13px;
	padding-left: 8px;	
	}	
}
.haut-logo-nom div:nth-of-type(1) span {
	font-size: 15px;
	color: #FFF;
	font-weight: 400;
	letter-spacing: 0.8em;
	display: inline-block;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.2)
}
@media screen and (max-width: 767px) {
	.haut-logo-nom div:nth-of-type(1) span {
	font-size: 10px;
	letter-spacing: 1em;
	}
}
.haut-logo-nom div:nth-of-type(2) {
	font-size: 10px;
	color: #FFF;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	line-height: 10px;
	display: block;
	padding-top: 3px;
}
@media screen and (max-width: 767px) {
	.haut-logo-nom div:nth-of-type(2) {
	font-size: 9px;
	letter-spacing: 0.02em;
	padding-top: 1px;
	}	
}
.haut-site-service {
	text-align: right;
	vertical-align: bottom;
	display: table-cell;
	position: relative;
	box-sizing: border-box;
	padding-bottom: 14px;
	padding-right: 10px;
	font-size: 0px;
}
@media screen and (max-width: 767px) {
	.haut-site-service {
	vertical-align: middle;
	padding-bottom: 0px;
	width: 90px;
	}	
}
.haut-site-service ul {
	display: inline-block;
	margin: 0px;
	padding: 0px;
	list-style-type: none;
	position: relative;
	white-space: nowrap;
}
.haut-site-service ul li{
	vertical-align: top;
	display: inline-block;
	padding-right: 20px;
	padding-left: 20px;
	border-left-width: 1px;
	border-left-style: solid;
	border-left-color: rgba(255,255,255,0.5);
	line-height: 20px;
}
@media screen and (max-width: 767px) {
	.haut-site-service ul li{
	padding-right: 10px;
	padding-left: 10px;
	border-left-width: 0px;
	line-height: normal;
	}
	.haut-site-service ul li:first-of-type {
	padding-left: 0px;
	}
}
.haut-site-service ul li a {
	font-size: 14px;
	font-weight: 400;
	color: rgba(255,255,255,0.8);
	text-decoration: none;
	letter-spacing: 0.01em;
	line-height: 16px;
	display: inline-block;
	vertical-align: middle;
	transition-property: font-size;
	transition-duration: 0.1s;
	transition-timing-function: ease-in-out;
}
.haut-site-service ul li a:hover {
	color: rgba(255,255,255,1);
	text-shadow: 0px 0px 2px rgba(255,255,255,1);
}
@media screen and (max-width: 767px) {
	.haut-site-service ul li a {
	font-size: 0px;
	line-height: normal;
	}
}
.haut-site-service ul li a img {
	margin-right: 7px;
	vertical-align: top;
	opacity: 0.7;
	margin-top: 0px;
}
.haut-site-service ul li a:hover img{
	opacity:1;
}
.haut-rubriques {
	font-size: 0px;
	line-height: 34px;
	background-color: #FFF;
	text-align: center;
	display: block;
	height: 34px;
	position: relative;
	background-image: linear-gradient(to right, #f2f2f2,#fff,#fff,#fff,#f2f2f2);
}
@media screen and (max-width: 767px) {
	.haut-rubriques {
	display: none;
	}
}
.haut-rubriques ul {
	line-height: normal;
	display: inline-table;
	float: none;
	position: relative;
	vertical-align: middle;
	margin: 0px;
	padding: 0px;
	list-style-type: none;
}
.haut-rubriques ul li {
	vertical-align: top;
	display: inline-block;
	border-left-width: 1px;
	border-left-style: solid;
	border-left-color: #CCC;
	position: relative;
	padding-right: 40px;
	padding-left: 40px;
	transition-property: padding-right,padding-left;
	transition-duration: 0.3s;
	transition-timing-function: ease-in-out;
}
@media screen and (max-width: 1365px) {
	.haut-rubriques ul li {
	padding-right: 30px;
	padding-left: 30px;
	}	
}
@media screen and (max-width: 1279px) {
	.haut-rubriques ul li {
	padding-right: 20px;
	padding-left: 20px;
	}	
}
@media screen and (max-width: 1023px) {
	.haut-rubriques ul li {
	padding-right: 12px;
	padding-left: 12px;
	}		
}
.haut-rubriques ul li:first-of-type {
	border-left-width: 0px;
	padding-left: 0px;	
}
.haut-rubriques ul li:last-of-type {
	padding-right: 0px;
}
.haut-rubriques ul li a{
	font-size: 16px;
	font-weight: 700;
	text-transform: uppercase;
	color: #000;
	text-decoration: none;
	letter-spacing: 0.01em;
}
@media screen and (max-width: 1023px) {
	.haut-rubriques ul li a{
	font-size: 14px;
	font-weight: 400;
	}
}
.haut-rubriques ul li a:hover{
	color: #cc0000;
}
.haut-ligne {
	background-color: #cdcdcd;
	display: block;
	float: none;
	height: 5px;
	position: relative;
	box-shadow: 0 2px 3px rgba(0,0,0,0.1);
}
.message-haut {
	display: none;
	float: none;
	position: relative;
	z-index: 10000;
	box-shadow: 0 0 0 rgba(0,0,0,0);
	border-bottom-width: 0px;
}
.message-haut-cadre {
	display: table;
	float: none;
	width: 100%;
	position: relative;
	background-color: #e6e6e6;
	border-top-width: 1px;
	border-bottom-width: 1px;
	border-top-style: solid;
	border-bottom-style: solid;
	border-top-color: #FFF;
	border-bottom-color: #CCC;
	font-size: 0px;
}
@media screen and (max-width: 767px) {
	.message-haut-cadre {
	background-color: #fff;
	}
}
.message-haut-etiquette {
	vertical-align: top;
	display: table-cell;
	padding-top: 7px;
	padding-left: 15px;
	position: relative;
	box-sizing: border-box;
	height: 30px;
	width: 20px;
}
.message-haut-etiquette span {
	font-size: 12px;
	line-height: 17px;
	color: #FFF;
	background-color: #999;
	display: inline-block;
	padding-right: 6px;
	padding-left: 6px;
	position: relative;
	border-radius: 2px;
	white-space: nowrap;
}
.message-haut-contenu {
	display: table-cell;
	position: relative;
	box-sizing: border-box;
	vertical-align: top;
	height: 30px;
	padding-top: 7px;
	padding-left: 15px;
	padding-bottom: 7px;
	padding-right: 15px;
}
.message-haut-suite {
	background-image: url(../graphisme/haut/fleche-message-haut.png);
	background-repeat: no-repeat;
	background-position: center bottom +7px;
	display: table-cell;
	width: 24px;
	border-left-width: 1px;
	border-left-style: solid;
	border-left-color: #FFF;
	cursor: pointer;
	height: 30px;
}
.message-haut-suite:hover {
	background-position: center bottom +4px;
}
.message-haut-suite-up {
	background-image: url(../graphisme/haut/fleche-message-haut-up.png);
	background-repeat: no-repeat;
	background-position: center bottom +4px;
	display: table-cell;
	width: 24px;
	border-left-width: 1px;
	border-left-style: solid;
	border-left-color: #FFF;
	cursor: pointer;
	height: 30px;
}
.message-haut-suite-up:hover {
	background-position: center bottom +7px;
}
@media screen and (max-width: 767px) {
	.message-haut-suite, .message-haut-suite-up{
	border-left-color: #ccc;
	}
}
.message-haut-resume {
	display: block;
	float: none;
	position: relative;	
}
.message-haut-resume p {
	font-size: 14px;
	position: relative;
	margin: 0px;
	padding: 0px;
}
@media screen and (max-width: 767px) {
	.message-haut-resume p {
	font-size: 13px;
	}
}
.message-haut-detail {
	display: none;
	float: none;
	position: relative;
}
.message-haut-detail-cadre {
	display: table;
	float: none;
	position: relative;
	width: 100%;
}
.message-haut-descriptif {
	display: table-cell;
	float: none;
	position: relative;
	vertical-align: top;
	padding-right: 15px;
}
.message-haut-descriptif h5{
	font-size: 15px;
	margin: 0px;
	padding: 0px;
}
.message-haut-descriptif p{
	font-size: 14px;
	padding: 0px;
	margin-top: 3px;
	margin-bottom: 4px;
}
@media screen and (max-width: 767px) {
	.message-haut-descriptif p{
	font-size: 13px;
	}	
}
.message-haut-boutons {
	display: table-cell;
	position: relative;
	box-sizing: border-box;
	vertical-align: top;
	text-align: right;
}
.message-haut-bouton-action {
	font-size: 13px;
	line-height: 27px;
	font-weight: 400;
	text-transform: uppercase;
	color: #000;
	text-decoration: none;
	background-color: #ffb400;
	display: inline-block;
	height: 26px;
	padding-right: 10px;
	padding-left: 10px;
	position: relative;
	border-radius: 2px;
	box-sizing: border-box;
	cursor: pointer;
}
.haut-mobile {
	background-color: #241f1f;
	display: block;
	float: none;
	position: fixed;
	box-shadow: 0 5px 5px rgba(0,0,0,0.3);
	left: -270px;
	top: 0px;
	height: 100%;
	width: 260px;
	z-index: 20000;
	font-size: 0px;
	opacity: 0;
	overflow: auto;	
}
.haut-mobile-haut {
	display: table;
	width: 100%;
	position: relative;	
}
.haut-mobile-bouton {
	text-align: left;
	vertical-align: top;
	display: table-cell;
	padding-top: 15px;
	padding-left: 20px;
	position: relative;
	padding-bottom: 21px;
}
.haut-mobile-bouton-fermer {
	background-image: url(../graphisme/haut/croix.png);
	display: block;
	float: none;
	height: 18px;
	width: 18px;
	position: relative;
	cursor: pointer;
	opacity: 0.6;
}
.haut-mobile-bouton-fermer:hover {
	opacity: 1;
}
.haut-mobile-logo {
	text-align: right;
	vertical-align: top;
	display: table-cell;
	float: none;
	padding-top: 15px;
	padding-right: 15px;
	position: relative;	
}
.haut-mobile-logo-cadre {
	display: inline-table;
	float: none;
	position: relative;	
}
.haut-mobile-logo-image {
	background-image: url(../graphisme/bas/logo-lsi.png);
	background-repeat: no-repeat;
	background-position: left bottom;
	vertical-align: top;
	height: 24px;
	width: 72px;
	display: table-cell;
}
.haut-mobile-logo-nom {
	vertical-align: bottom;
	display: table-cell;
	position: relative;
	font-size: 0px;
	text-align: center;
	padding-left: 7px;
}
.haut-mobile-logo-nom div:nth-of-type(1) {
	background: linear-gradient(#ccb233,#bea730);
	background-color: #bea730;
	display: block;
	float: none;
	position: relative;
	text-transform: uppercase;
	text-align: center;
	line-height: 13px;
	height: 13px;
	padding-left: 8px;	
}
.haut-mobile-logo-nom div:nth-of-type(1) span {
	font-size: 10px;
	color: #FFF;
	font-weight: 400;
	letter-spacing: 1em;
	display: inline-block;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.2)
}
.haut-mobile-logo-nom div:nth-of-type(2) {
	font-size: 9px;
	color: #FFF;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	line-height: 10px;
	display: block;
	padding-top: 1px;
}
.haut-mobile-menu {
	display: block;
	float: none;
	padding-left: 20px;
	position: relative;	
}
.haut-mobile-menu ul {
	display: block;
	margin: 0px;
	padding: 0px;
	float: none;
	border-top-width: 1px;
	border-bottom-width: 1px;
	border-top-style: solid;
	border-bottom-style: solid;
	border-top-color: #040303;
	border-bottom-color: #3a3636;
	list-style-type: none;
	position: relative;	
}
.haut-mobile-menu ul li {
	display: block;
	float: none;
	border-top-width: 1px;
	border-bottom-width: 1px;
	border-top-style: solid;
	border-bottom-style: solid;
	border-top-color: #3a3636;
	border-bottom-color: #040303;
	position: relative;	
}
.haut-mobile-menu ul li a{
	font-size: 15px;
	line-height: 41px;
	color: #c1c1c1;
	text-decoration: none;
	background-image: url(../graphisme/haut/fleche-menu.png);
	background-repeat: no-repeat;
	background-position: right +20px center;
	display: block;
	float: none;
	height: 41px;
	position: relative;	
	transition-property: padding-left,background-position;
	transition-duration: 0.1s;
	transition-timing-function: ease-in-out;
}
.haut-mobile-menu ul li a:hover{
	color: #e60000;
	background-position: right +15px center;
	padding-left: 3px;
}
.haut-bup {
	display: block;
	float: none;
	margin-right: auto;
	margin-left: auto;
	position: relative;
	max-width: 1366px;
}