#sliderFixedFolder{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:rgba(25, 25, 25,1);
	z-index:100;
	visibility: hidden;
}

.bgYtb{background: #F90403;}
.bgFb{background: #4867AA;}
.bgInsta{background: #C92B9C;}
/*
.icoText{
	display:flex;
}
.icoText .ico{
	flex:20%;
}
.icoText .text{
	flex:80%;
}*/

.btnReserv{
	position:fixed;
	background:#fc0 url(../images/ico_card.png) no-repeat center;
	background-size:60%;
	width:60px;
	height:60px;
	border-radius:50%;
	bottom:20px;
	right:20px;
	z-index:100;
	display:block;
	cursor:pointer;
}
.btnReserv:active{
	background-color: #ccc;
}

#cardCpt{
	position:absolute;
	right:0;
	background:red;
	min-width:20px;
	height:20px;
	color:#fff;
	font-weight:bold;
	text-align:center;
	font-size:12px;
	border-radius:10px;
	padding:0 3px
}

h2.blockTitle{
	margin:0 0 25px;
	text-align:center;
	font-size:30px;
	text-transform: uppercase;
}
.blockSubTitle{
	text-transform: none;
}

.blockProjets, .blockCts{
	padding:30px 0;
}

.ico_box24{
	float:left;
	width:24px;
	height:24px;
	margin:0 5px 0 0;
}
.ico_box24 span{
	display:block;
	width:24px;
	height:24px;
}
.ico_envoi{
	background: url(../images/ico_envoi.png);
	background-repeat: no-repeat;
	background-size: cover;
}

.blockMain{
	float:left;
	clear: both;
	width: 100%;
	min-height:1000px;
	overflow:hidden;
	margin:0 0 20px;
}

.blockModule{
	float:left;
	clear: both;
	width: 100%;
	padding:30px 20px;
}

.projetOptions .item{
	padding:8px 0;
	border-top:1px solid #e5e5e5;
}
.projetOptions .item span{
	color:#000;
	font-weight:bold;
	display:inline-block;
	width:240px;
}

h1.title{
	font-weight:bold;
	margin:0 0 8px;
}
h2.title,
h3.title{
	color:#0170BC;
}

.projetTitle{
	padding:0 0 15px;
}
.projetTitle h1{
	margin:0 0 2px;
}
.projetTitle .location{
	text-transform: uppercase;
}

.projetCom ul li,
.projetCom ol li{
	margin:-2px;
	padding:0;
}

.panierItems .item{
    display:flex;
    margin:10px 0;
}
.panierItems .item .photo{
    width:30%;
}
.panierItems .item .photo img{
    max-width:100%;
}
.panierItems .item .details{
    width:70%;
    padding:0 0 0 14px;
}

.tableScroll{
	position:relative;
	overflow:hidden;
	overflow-x:auto;
}

.flexSlides{
	display:flex;
	flex:1;
}
.flexSlides .flexLeft{
	width:780px;
}
.flexSlides .flexRight{
	width:320px;
}

.flexCts{
	display:flex;
	flex:1;
	column-gap: 30px;
}
.flexCts .flexLeft{
	width:50%;
}
.flexCts .flexRight{
	width:50%;
}

.pageFlex{
	display:flex;
	flex:1;
	column-gap: 30px;
}
.pageFlex .flexLeft{
	width:720px;
}
.pageFlex .flexRight{
	width:340px;
}

.flexHeader{
	display:flex;
	column-gap: 20px;
	align-items: center;
	height: 80px;
}
.flexHeader .snLinks{
	flex:1;
	text-align:left;
}
.flexHeader .fhLogo{
	flex:1;
	text-align: left;
}
.flexHeader .fhLogo img{
	display:inline-block;
	height:60px;
	margin:0 0 -4px 0;
}
.flexHeader .header{
	flex:1;
	text-align:right;
	position:relative;
	z-index:10;
}
.flexHeader .rightItems{
	flex:1;
	text-align:right;
	position:relative;
	z-index:10;
}
.flexHeader .rightItems .item{
	float:right;
}

/*MEDIAS*/
.grid-medias{
	display:grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}
.grid-medias > .item{
    flex:1;
    overflow:hidden;
}

.grid-medias > .item .photo{
	display: block;
}
.grid-medias > .item .photo img{
	display: block;
	width:100%;
    border-radius:6px;
}

.grid-medias > .item .details{
	padding:8px 8px;
}
.grid-medias > .item .details .title{
	padding:0 0 4px;
    font-weight:bold;
}
.grid-medias > .item .details .sub-title{
	padding:0 0 4px;
    font-size:12px;
    color:gray;
}

.grid-rows .grid-medias{
    grid-template-columns: repeat(1, 1fr);
    gap: 10px;
}
.grid-rows .grid-medias > .item{
    display:flex;
    flex-direction: row;
}
.grid-rows .grid-medias > .item .photo{
    flex-basis:120px;
}
.grid-rows .grid-medias > .item .details{
    flex:1;
    padding:0 10px;
}

.video-container{
    position: relative;
    padding-bottom: 56.25%; /* 16:9 */
    height: 0;
}
.video-container iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.gridBlock{
	display:grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}
.gridBlock a{
	text-decoration: none;
}
.gridBlock .item{
	min-height:100px;
	text-align:center;
	overflow:hidden;
}
.gridBlock .item:hover{
	background: #d7eff5;
}
.gridBlock .item:active{
	background: #aed1da;
}
.gridBlock .item .title{
	font-size:14px;
	font-weight:bold;
	padding:8px 0 5px;
}
.gridBlock .item .subTitle{
	font-size:12px;
	color:#999;
	padding:0 0 10px;
}
.gridBlock .item .details{
	display: block;
}
.gridBlock .item .photo{
	display: block;
	text-align:center;
}
.gridBlock .item .photo img{
	display: block;
	width:100%;
	height:auto;
}

.gridRow{
	grid-template-columns: repeat(1, 1fr);
	gap:20px;
}
.gridRow a{
	text-decoration: none;
}
.gridRow .item{
	display:flex;
	flex:1;
	gap: 16px;
	margin:0 0 10px 0;
}
.gridRow .item:hover{
	background: #d7eff5;
}
.gridRow .item:active{
	background: #aed1da;
}
.gridRow .item .title{
	font-size:14px;
	font-weight:bold;
	color:#000;
}
.gridRow .item .subTitle{
	font-size:12px;
	color:#999;
}
.gridRow .item .details{
	display: block;
	padding:5px 0 0 0;
}
.gridRow .item .photo img{
	display:block;
	width:140px;
	height:auto;
}
.gridRow .item .photo .round50{
	width:100px;
	height:100px;
	border-radius:50%;
}
.gridRow .item .shopPrix{
	display:block;
	color:#df0000;
	font-size:14px;
	font-weight:bold;
	padding:3px 0 5px;
}
.gridRow .item .shopBtn{
	display:block;
}
.gridRow .item .shopBtn button{
	padding:2px 8px;
	font-size:12px;
}

.pubNews .item:hover{
	background:#FBEACC;
}
.pubNews .item:active{
	background:#ebd3aa;
}
.pubNews .details{
	padding:0 10px 10px;
}
.pubNews .details .title{
	text-align:left;
}
.pubNews .details .pubDate{
	text-align:left;
}

.modTitle{
	text-align: center;
	padding:0 0 10px;
}
.modTitle .title{
	display:inline-block;
	text-transform: uppercase;
	font-weight:bold;
	font-size:24px;
}
.modTitle hr{
	border:0;
	width:60px;
	height:4px;
	background:#FBB206;
}

.modDefault{
	padding:25px 0;
	background:#fff;
}
.modSep{
	border-top:1px solid #e5e5e5;
}
.modEvent{
	background:#111;
}
.modEvent .gridBlock .item{
	background: #333;
}
.modEvent .gridBlock .item:hover{
	background:#016B86;
}
.modEvent .gridBlock .item .title{
	color:#fff;
}
.modEvent .gridBlock .item .details .subTitle{
	color:#ddd;
}

.modGris{
	background:#ececec;
}
.modGris .gridBlock .item{
	background:#fff;
}
.modGris .gridBlock .item:hover{
	background:#d7eff5;
}
.modGris .gridBlock .item:active{
	background:#aed1da;
}

fieldset.modField{
	padding:15px 0 0 0;
	border:0;
	border-top:1px solid #ddd;
	border-radius:0;
}
fieldset.modField legend{
	background:none;
	color:#016B86;
	font-size:24px;
	padding:0 20px 0 0;
}

.bgSite{
	background: #FBEACC;
}
.bgSite2{
	background: #da6506;
}

button{
	border-radius:4px;
	border:transparent;
	cursor:pointer;
}
button:hover{
	border:0;
}

.buttonSite,
.buttonSite2{
	border:0;
	padding:4px 12px;
}

.buttonSite:hover{
	background: #016B86;
	color:#fff;
}
.buttonSite:active{
	background: #02485a;
}

.buttonSite2,
.buttonSite2:hover{
	background: #da6506;
	color:#fff;
}
.buttonSite2:active{
	background: #111;
}

.modBody{
	display:flex;
	gap:30px;
}
.modBody .body{
	flex:68%;
	padding-top:20px;
}
.modBody .side{
	flex:32%;
	padding-top:20px;
}

.loginPage{
	display:flex;
	gap:30px;
}
.loginPage .body{
	flex:78%;
	padding-top:20px;
}
.loginPage .side{
	flex:22%;
	padding-top:20px;
}

.blockPlayer{
	display:block;
}
.blockPlayer .videoSpan{
	height:400px;
	background:#000;
}
.blockPlayer .videoBody{
	display:block;
}
.blockPlayer .videoTitle{
	display:block;
}
.blockPlayer .videoTitle h1{
	margin:10px 0 5px;
}
.blockPlayer .videoSubTitle{
	display:block;
	color:#999;
}
.blockPlayer .videoText{
	display:block;
}

.blockLogin{
	margin:0 auto;
	width:300px;
	margin-top:60px;
}
.blockLogin input[type='text'],
.blockLogin input[type='password'],
.blockLogin input[type='submit']{
	width:100%;
}

.loginTitle{
	display:block;
	padding:10px 0;
	text-align: center;
}

.blockProfil{
	margin:0 auto;
	width:600px;
	margin-top:20px;
}

.loginSideMenu{
	display:block;
	border-radius:6px;
	border:1px solid #e5e5e5;
	overflow:hidden;
}
.loginSideMenu .item{
	display:block;
	border-bottom:1px solid #e5e5e5;
}
.loginSideMenu .item a{
	display:block;
	padding:12px 12px;
	font-size:14px;
	color:#444;
	text-decoration: none;
}
.loginSideMenu .item a:hover{
	background:#e5e5e5;
}
.loginSideMenu .item a:active{
	background:#ccc;
}
.loginSideMenu .itemOn{
	background:#d7eff5;
}
.loginSideMenu .itemOn a{
	font-weight:bold;
	color:#016B86;
}
.loginMenuBtn{
	display:none;
}

@media(min-width:768px){
	#loginSideMenu{
		display:block;
	}

	.blockBanner{
		display:flex;
		gap:10px;
		height:500px;
		margin:20px 0;
	}
	.blockBanner .bodyPub{
		background:#e5e5e5;
		flex:0.35;
		overflow-y: hidden;
	}
	.blockBanner .bodyPub img{
		display:block;
		max-width:100%;
		height:auto;
	}
	.blockBanner .bodySlide{
		flex:1;
		background:#000;
		overflow-y: hidden;
	}
}

@media(max-width:768px){
	.blockBanner{
		display:block;
		margin:0;
	}
	
	.flexHeader{
		display:block;
	}
	.flexHeader .fhLogo{
		display:none;
	}
	.flexHeader{
		display:none;
	}
	.flexHeader .snLinks a{
		display:block;
		width:100%;
		text-align:center;
		padding:12px 0 14px;
	}

	.gridBlock{
		grid-template-columns: repeat(3, 1fr);
	}

	.modBody{
		display:block;
	}
	.modBody .body{
		display:block;
		padding-top:0;
	}
	.modBody .side{
		display:block;
		padding-top:20px;
	}

	.mobilePad{
		padding-left:20px;
		padding-right:20px;
	}

	.blockLogin, 
	.blockProfil{
		display:block;
		float: left;
		clear: both;
		width:100%;
	}

    .grid-medias{
        grid-template-columns: repeat(3, 1fr);
        gap:16px;
    }
}

@media(max-width:480px){
	.gridBlock{
		grid-template-columns: repeat(2, 1fr);
	}

    .grid-medias{
        grid-template-columns: repeat(1, 1fr);
    }
}

.bgGrisf0{
	background-color: #f0f0f0;
}
.bgGrisf5{
	background-color: #f5f5f5;
}
.bgGrisE5{
	background-color: #e5e5e5;
}

.bgClicEC{
	background-color: #ececec;
	cursor:pointer;
}
.bgClicEC:hover{
	background-color: #d5d5d5;
}
.bgClicEC:active{
	background-color: #bbb;
}

.bgClicGris:hover{
	background-color:#e5e5e5;
}
.bgClicGris:active{
	background-color:#bbb;
}

.bgClicb5{
	background-color:#d5f4ff;
}
.bgClicb5:hover{
	background-color:#b5e2fd;
}
.bgClicb5:active{
	background-color:#89c7ee;
}

.bgClic33{
	background-color:#333;
	cursor: pointer;
}
.bgClic33:active{
	background-color:#000;
}

.floatRight{
	float:right;
}
.floatLeft{
	float:left;
}

.textRight{
	text-align: right;
}
.textLeft{
	text-align: left;
}
.textCenter{
	text-align: center;
}

.clicPush{
	transition: all ease-in-out 0.2s;
	transform: scale(1);
}
.clicPush:active{
	transform: scale(0.9);
}

.flexFacs{
	display:flex;
	gap:20px;
}
.flexFacs .item{
	flex:1;
	border-bottom:1px solid #222;
	padding:10px 16px;
	text-align: center;
	color:#FBB206;
	font-size: 16px;
	text-transform: uppercase;
}

.flexAbout{
	display:flex;
	gap:30px;
}
.flexAbout .photo,
.flexAbout .text{
	flex:1;
}
.flexAbout .photo img{
	display:block;
	width:100%;
	height:auto;	
}
.flexAbout .text p{
	margin:5px 0;
}

.flex50{
	display:flex;
	gap:30px;
}
.flex50 .item{
	flex:1;
}

.etapesTitle{
	background:#528700;
	padding:10px 16px;
	color:#fff;
	margin:10px 0 0;
	text-align:center;
	border-radius:6px;
}

.flexPage{
	display:flex;
	gap:30px;
}
.flexPage .body{
	flex:1;
	padding:20px 0;
}
.flexPage .side{
	flex-basis:320px;
	padding:20px 0;
}

.flexCts{
	display:flex;
	gap:30px;
}
.flexCts .body{
	flex:0.5;
}
.flexCts .side{
	flex:0.5;
}

.sideMenu{
	display:block;
	border:1px solid #d5d5d5;
	border-radius:8px;
	overflow:hidden;
	margin:0 0 20px;
}
.sideMenu .title{
	font-weight:bold;
	background:#fff;
	padding:8px 16px;
	font-size:16px;
}
.sideMenu .items{
	display:flex;
	flex-direction: column;
	gap:1px;
	background:#e7e7e7;
}
.sideMenu .items .item{
	flex:1;
	background:#fff;
}
.sideMenu .items .item:hover{
	background:#f0f0f0;
}
.sideMenu .items .item:active{
	background:#ccc;
}
.sideMenu .items .item a{
	display:block;
	padding:8px 16px;
	text-decoration: none;
}

article :not(h1):not(h2):not(h3){
	font-size:16px;
	line-height:24px;
}
article h1{
	font-size:30px;
	color:#000;
}
article .photo{
	display:block;
}
article .photo img{
	display:block;
	max-width: 100%;
	height:auto;
}

.clicBtnHeader{
	background:#FBEACC;
	border-radius:6px;
	cursor:pointer;
	margin:0 0 0 5px;
	padding:4px 8px;
	min-width:140px;
}
.clicBtnHeader .label{
	text-align:left;
	font-size: 16px;
	line-height:18px;
}

@media(max-width:768px){
	.flexAbout,
	.flexFacs,
	.flexPage,
	.flexCts,
	.flex50
	{
		display:block;
	}

	.flexFacs .item{
		border-bottom:1px solid #fff;
		background-color:#FBB206;
		color:#fff;
	}

	.flexPage .body
	{
		padding-top:10px;
	}

	.flexPage .side,
	.flexCts .side 
	{
		display:block;
		padding:10px 20px;
	}

	.flexAbout .text{
		padding:10px 20px;
	}

	.modDefault{
		padding-top:20px;
	}
}
