@charset "UTF-8";
/* CSS Document */

/* /////////////////////////////// */
/*               BODY              */
/* /////////////////////////////// */
body,html{ -webkit-overflow-scrolling:touch; -webkit-text-size-adjust:100%; -webkit-font-smoothing:antialiased; height:100%; }
*{ box-sizing:border-box; text-decoration:none; outline:none; }

/* /////////////////////////////// */
/*       ASCENCEUR WEBKIT          */
/* /////////////////////////////// */
::-webkit-scrollbar{ width:12px; }
::-webkit-scrollbar-track{ background-color:#0a7132; }
::-webkit-scrollbar-thumb{ background-color:#fedc00; }

/* /////////////////////////////// */
/*               TYPOS             */
/* /////////////////////////////// */
/*
font-family: 'Open Sans', sans-serif;
font-family: 'Dancing Script', cursive;
rouge : f51d2a
vert : 0a7132
jaune : fedc00
noir : 411200
*/

/* /////////////////////////////// */
/*              HEADER             */
/* /////////////////////////////// */
header{ display:block; position:relative; width:100%; height:46px; background-color:#f51d2a; text-align:center; }
/* !!!!!!!!!!!!!!!!!!!!!! SUPER PRATIQUE ne pas oublier pointer-events !!!!!!!!!!!!!!!!!!!! */
.logoHeader{ display:block; position:relative; width:100%; max-width:990px; margin:0 0 45px 0; z-index:999; pointer-events:none; }
.logoHeaderElem{ padding:5px 0 0 0; height:90px; }
.logoHeaderElem a{ display:block; width:100%; height:100%; }
.logoHeaderElem a img{ display:block; width:100%; height:100%; object-fit:contain; }
.logoHeaderElem p{ display:block; width:100%; padding:10px 0 0 0; font-family: 'Open Sans', sans-serif; font-size:18px; font-weight:800; text-align:center; color:#f51d2a; text-transform:uppercase; }
.btnMenuMobile{ display:block; position:absolute; top:11px; right:11px; width:35px; height:20px; z-index:9999; }
.btnMenuMobile span{ display:block; position:absolute; left:0; width:100%; height:3px; background-color:white; opacity:1; transition:0.35s ease-in-out; }
.btnMenuMobile span:nth-child(1){ top:0; }
.btnMenuMobile span:nth-child(2){ top:10px; }
.btnMenuMobile span:nth-child(3){ top:20px; }
.btnMenuMobile.ouvert span:nth-child(1){ top:10px; transform:rotate(45deg); }
.btnMenuMobile.ouvert span:nth-child(2){ left:-100%; opacity:0; }
.btnMenuMobile.ouvert span:nth-child(3){ top:10px; transform:rotate(-45deg); }
/* nav et topLevelMenu */
nav{ display:none; width:100%; background-color:white; }
nav ul li{ display:block; position:relative; text-align:left; border-bottom:1px solid #0a7132; }
nav ul li:last-child{ border-bottom:none; }
nav ul li a{ display:block; color:#0a7132; font-family: 'Open Sans', sans-serif; font-size:18px; font-weight:400; text-transform:uppercase; padding:15px 20px; }
.subMenuBtn{ display:inline-block; position:absolute; top:8px; right:10px; border:none; font-size:24px; color:#f51d2a; background-color:transparent; transition:0.35s transform ease-in-out; pointer-events:none; }
.subMenuBtn.tourne{ transform:rotate(180deg); }
/* subLevelMenu */
.subLevelMenu{ display:none; }
.subLevelMenu ul{ display:block; }
.subLevelMenu ul li{ border-bottom:1px solid white; }
.subLevelMenu ul li:last-child{ border:none; }
.subLevelMenu ul li a{ display:block; background-color:#0a7132; color:white; font-family: 'Dancing Script', cursive; font-size:26px; text-transform:none; }
.subLevelMenu ul li a span{ display:none; }
/* subHeader */
.subHeader{ display:none; }
.subHeader > div{ display:block; }
.subHeaderElem{ display:block; position:relative; text-align:left; border-bottom:1px solid white; }
.subHeaderElem a{ display:block; background-color:#f51d2a; color:white; font-family: 'Open Sans', sans-serif; font-size:16px; font-weight:700; text-transform:uppercase; padding:15px 20px; }
.subHeaderElem i{ display:inline-block; position:absolute; top:8px; right:10px; width:30px; height:30px; line-height:30px; font-size:20px; background-color:white; color:#f51d2a; border-radius:50%; text-align:center; }
.subHeaderElem:last-of-type{ background-color:#f51d2a; padding:15px 20px; border:none; }
.subHeaderElem input[type="text"]{ display:inline-block; width:calc(100% - 45px); padding:5px; background-color:white; color:#333; font-family: 'Open Sans', sans-serif; font-size:14px; border:1px solid #ccc; }
.subHeaderElem input[type="submit"]{ display:inline-block; position:absolute; top:15px; right:10px; padding:5px; font-family: 'Open Sans', sans-serif; font-size:14px; font-weight:700; background-color:#0a7132; color:white; border:1px solid #0a7132; }
/* placeholder */
::-webkit-input-placeholder{ color:#0a7132; font-style:italic; font-size:12px; }
::-moz-placeholder{ color:#0a7132; font-style:italic; font-size:12px; }
:-ms-input-placeholder{ color:#0a7132; font-style:italic; font-size:12px; }
:-moz-placeholder{ color:#0a7132; font-style:italic; font-size:12px; }

/* /////////////////////////////// */
/*               MAIN              */
/* /////////////////////////////// */
.pushDown{ display:block; width:100%; height:95px; background-color:white; }
#fixedBackground{ display:none; position:fixed; z-index:-1; top:0; right:0; bottom:0; left:0; width:100%; height:100%; overflow:hidden; }
#fixedBackground video{ display:block; width:100%; height:100%; object-fit:cover; }
#fixedBackground .pattern{ display:block; position:absolute; width:100%; height:100%; z-index:9; background:rgba(0,0,0,0.3) url(../images/img_pattern/black-diagonal-lines.png) top left repeat; }
section{ display:block; width:100%; max-width:990px; margin:0 auto; background:rgba(255,255,255,0.8); padding:20px 10px; }
section h1{ font-family: 'Dancing Script', cursive; color:#f51d2a; font-size:34px; font-weight:700; text-align:center; }
section h1 a{ color:#f51d2a; padding:0 0 0 15px; font-size:20px; }
section h2{ padding:20px 0; font-family: 'Dancing Script', cursive; color:#f51d2a; font-size:26px; font-weight:700; text-align:left; }
section article{ display:block; padding:20px 0; }
section article:last-child{ padding:0 0 20px 0; }
section article:last-child h2{ padding:0 0 20px 0; }
section article p{ display:block; padding:5px 0; font-family: 'Open Sans', sans-serif; font-size:15px; text-align:justify; line-height:1.4em; color:#411200; }
section article p b{ font-weight:700; color:#0a7132; }
section article p a{ display:inline-block; padding:5px; background-color:#f51d2a; color:white; font-weight:700; }
/* conteneur3Blocs */
.conteneur3Blocs{ display:block; width:100%; text-align:center; }
.bloc{ display:block; width:100%; margin:0 0 10px 0; padding:10px; background-color:#f51d2a; }
.bloc h3{ padding:10px 0 20px 0; font-family: 'Dancing Script', cursive; color:white; font-size:24px; font-weight:700; text-align:center; }
.conteneurPhoto{ display:block; position:relative; overflow:hidden; }
.conteneurPhoto img{ display:block; width:100%; height:100%; object-fit:cover; }

/* /////////////////////////////// */
/*              FOOTER             */
/* /////////////////////////////// */
footer{ display:block; width:100%; background-color:white; border-top:45px solid #f51d2a; }
.insideFooter{ display:block; position:relative; padding:80px 20px 20px 20px; width:100%; max-width:990px; margin:0 auto; }
.logoFooter{ position:absolute; top:-40px; left:50%; transform:translateX(-50%); }
footer p{ padding:10px 0; font-family: 'Open Sans', sans-serif; font-size:13px; text-align:justify; line-height:1.4em; color:#a6a0a4; }
footer p a{ display:inline-block; padding:5px; background-color:#f51d2a; color:white; font-weight:700; }
footer p img{ vertical-align:middle; padding:0 5px 0 0; }

/* /////////////////////////////// */
/*            >= 768px             */
/* /////////////////////////////// */
@media only screen and (min-width:768px){
	/* header */
	header{ position:fixed; z-index:999; height:225px; background-color:white; transition:0.5s height ease; }
	.btnMenuMobile{ display:none; }
	nav{ display:block; }
	/* logoHeader */
	.logoHeader{ margin:0 auto; z-index:9999; pointer-events:auto; }
	.logoHeaderElem{ position:absolute; top:0; left:20px; height:auto; width:200px; transition:0.5s ease; }
	.logoHeader p{ padding:0; font-size:20px; }
	/* nav */
	nav{ position:absolute; top:150px; left:0; border-top:1px solid #f51d2a;  border-bottom:1px solid #f51d2a; transition:0.5s ease; }
	nav ul.topLevelMenu{ display: -ms-flexbox; display: -webkit-flex; display: flex;
    -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row;
    -webkit-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap;
    -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center;
    -webkit-align-content: stretch; -ms-flex-line-pack: stretch; align-content: stretch;
    -webkit-align-items: center; -ms-flex-align: center; align-items: center;
	max-width:990px; margin:0 auto; transition:0.5s ease; }
	nav ul.topLevelMenu > li{ display:inline-block; -webkit-flex: 1 1 auto; -ms-flex: 1 1 auto; flex: 1 1 auto; cursor:pointer; border-bottom:none; padding:10px 0; margin:10px 0; transition:0.35s padding ease; }
	nav ul li a{ font-size:13px; padding:5px 10px; text-align:center; color:#f51d2a; }
	nav ul li{ border-left:1px solid #f51d2a; }
	nav ul li:first-child{ border:none; }
	.subMenuBtn{ display:none; }
	.subLevelMenu{ position:absolute; top:65px; left:0; width:100%; z-index:999; background-color:#0a7132; }
	.subLevelMenu ul{ display:table; width:100%; max-width:990px; margin:0 auto; }
	.subLevelMenu ul li{ display:table-cell; background-color:#0a7132; padding:20px 10px; border:none; }
	.subLevelMenu ul li a{ display:block; }
	.subLevelMenu ul li a span{ display:block; width:100px; height:100px; margin:0 auto 16px auto; }
	.subLevelMenu ul li a span img{ display:block; width:100%; height:100%; object-fit:cover; }
	/* subHeader */
	.subHeader{ display:block; position:absolute; top:0; left:0; width:100%; padding:10px 0; background-color:#f51d2a; transition:0.5s top ease, 0.5s left ease; }
	.subHeader > div{ display:block; margin:0 auto; width:100%; max-width:990px; text-align:right; }
	.subHeaderElem{ display:inline-block; width:120px; margin:0 10px 0 0; padding:0 10px 0 0; border-right:1px solid white; border-bottom:none; vertical-align:top; }
	.subHeader > div .subHeaderElem:nth-child(2){ display:none; }
	.subHeaderElem:last-of-type{ width:230px; padding:0; }
	.subHeaderElem a{ display:inline-block; padding:0 10px 0 0; width:calc(100% - 40px); font-size:12px; font-weight:400; line-height:1.4em; }
	.subHeaderElem i{ top:4px; width:25px; height:25px; line-height:25px; font-size:14px; }
	.subHeaderElem input[type="submit"]{ position:initial; }
	/* pushDown */
	.pushDown{ height:215px; background-color:transparent; transition:0.5s height ease; }
	/* small scroll */
	header.small{ height:48px; }
	header.small .subHeader{ top:-100%; left:-100%; }
	header.small .logoHeaderElem{ width:130px; left:5px; padding:0; }
	header.small .logoHeaderElem p{ display:none; }
	header.small nav{ top:-1px; box-shadow:0 3px 10px rgba(0,0,0,0.3); border-bottom:5px solid #f51d2a; }
	header.small nav ul.topLevelMenu{ padding-left:130px; }
	header.small nav ul.topLevelMenu > li{ padding:0; }
	header.small .subLevelMenu{ top:49px; }
	header.small .invisible{ display:none; }
	html.small .pushDown{ height:75px; }
	/* section */
	section{ padding:30px; }
	/* conteneur3Blocs */
	.bloc{ display:inline-block; width:calc(50% - 40px); margin:0 20px 20px 0; }
	/* footer */
	footer p{ padding:5px 0; font-size:12px; text-align:center; color:#a6a0a4; }
}

/* /////////////////////////////// */
/*            >= 1024px            */
/* /////////////////////////////// */
@media only screen and (min-width:1024px){
	/* nav */
	nav{ top:160px; }
	nav ul li a{ font-size:14px; font-weight:600; }
	html.no-touchevents nav ul.topLevelMenu > li{ transition:0.35s background ease; }
	html.no-touchevents nav ul.topLevelMenu > li:hover{ background:#f51d2a; }
	html.no-touchevents nav ul.topLevelMenu > li a{ transition:0.35s color ease; }
	html.no-touchevents nav ul.topLevelMenu > li:hover a{ color:white; }
	/* subLevelMenu */
	html.no-touchevents .subLevelMenu ul li a{ transition:0.35s text-shadow ease; }
	html.no-touchevents .subLevelMenu ul li a:hover{ text-shadow:0 0 10px black; }
	/* subHeader */
	.subHeader > div .subHeaderElem:nth-child(2){ display:inline-block; width:100px; }
	.subHeaderElem:last-of-type{ width:270px; }
	/* pushDown */
	.pushDown{ height:225px; }
	/* small scroll */
	header.small .logoHeaderElem{ left:0; }
	/* section */
	section{ padding:60px; }
	html.no-touchevents section h1 a{ transition:0.35s color ease; }
	html.no-touchevents section h1 a:hover{ color:#0a7132; }
	html.no-touchevents section article p a{ transition:0.35s background ease; }
	html.no-touchevents section article p a:hover{ background-color:#0a7132; }
	/* conteneur3Blocs */
	.bloc{ width:calc(33% - 10px); margin:0 10px 0 0; }
	.conteneur3Blocs .bloc:last-child{ margin:0; }
	html.no-touchevents .bloc{ transition:0.35s background ease-in-out; }
	html.no-touchevents .bloc:hover{ background-color:#0a7132; }
	html.no-touchevents .bloc > .conteneurPhoto img{ transition:0.35s transform ease-in-out; }
	html.no-touchevents .bloc:hover > .conteneurPhoto img{ transform:scale(1.1); }
	/* footer */
	html.no-touchevents footer p a{ transition:0.35s background ease; }
	html.no-touchevents footer p a:hover{ background-color:#0a7132; }
}

/* /////////////////////////////// */
/*           >= 1440px             */
/* /////////////////////////////// */
@media only screen and (min-width:1440px){ }

/* /////////////////////////////// */
/*           >= 2560px             */
/* /////////////////////////////// */
@media only screen and (min-width:2560px){ }

/* /////////////////////////////// */
/*            > 5120px             */
/* /////////////////////////////// */
@media only screen and (min-width:5120px){ }

/* /////////////////////////////// */
/*            IMPRESSION           */
/* /////////////////////////////// */
@media only print{
	header, .bloc, #fixedBackground video, .pushDown, section article:last-child, footer{ display:none; }
}