@font-face {
	font-family: "Berthold";
	src: url("../fonts/Berthold-Akzidenz-Grotesk-Regular.woff");
	src:
		url("../fonts/Berthold-Akzidenz-Grotesk-Regular.woff") format("woff"),
		url("../fonts/Berthold-Akzidenz-Grotesk-Regular.otf") format("opentype");
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: "DK-Appelstroop";
	src: url("../fonts/DK-Appelstroop.woff");
	src:
		url("../fonts/DK-Appelstroop.woff") format("woff"),
		url("../fonts/DK-Appelstroop.otf") format("opentype");
	font-weight: normal;
	font-style: normal;
}

:root {
  --Vert: #88a527;
  --VertClair: #CAD51C;
  --VertBt: #099A49;
  --VertTexte: #217657;
  --VertBg: #b8bd17;
  --Rouge: #E10714;
  --Orange: #db9400;
  --Texte: #171716;
  --Blanc: #ffffff;
}

/*
Filson Pro Light
font-family: "filson-pro", sans-serif;
font-weight: 200;
font-style: normal;
Filson Pro Book
font-family: "filson-pro", sans-serif;
font-weight: 300;
font-style: normal;
Filson Pro Regular
font-family: "filson-pro", sans-serif;
font-weight: 400;
font-style: normal;
Filson Pro Medium
font-family: "filson-pro", sans-serif;
font-weight: 500;
font-style: normal;
Filson Pro Bold
font-family: "filson-pro", sans-serif;
font-weight: 700;
font-style: normal;
Filson Pro Heavy
font-family: "filson-pro", sans-serif;
font-weight: 800;
font-style: normal;
Filson Pro Black
font-family: "filson-pro", sans-serif;
font-weight: 900;
font-style: normal;
*/


/* ******************************* */

html {font-size: 10px;}
body {margin: 0;font-size: 16px;line-height: 1.45; color: var(--Texte); background-color: var(--VertBg); font-family: "filson-pro", sans-serif;, sans-serif; font-weight: 400;}

ul, table {font-size: 1em;margin-bottom:1em;}
p {font-size: 1em;margin-bottom:0;}


.main-content {position: relative; }
.container-1200 {max-width: 1200px; margin :0 auto; position: relative; }

h1 {text-align: center; color: var(--Rouge); font-size: 40px; text-transform: uppercase; font-weight: 800; font-family: "filson-pro", sans-serif; }
h2 {text-align: center; color: var(--Vert); font-size: 1.5em; font-family: "filson-pro", sans-serif; }


.mention-jeu {font-size: 14px; text-align: center; color: #fff; padding-bottom: 15px; line-height: 1.2; }
@media (min-width: 992px) {
	.mention-jeu {position: absolute; bottom:0; width:100%;}
}

.text-rouge {color: var(--Rouge)!important;}
.text-vert {color: var(--Vert)!important;}
.mention-verticale {font-family: "futura-pt-bold", sans-serif; font-weight: 700; font-style: normal; transform: rotate(90deg);  transform-origin: top right; color: #B7C415; font-size: 10px; position: absolute; right: 5px; top: 700px; width: 360px; height: 30px; }
@media (min-width: 1200px) {
	/*.mention-verticale {right: 0px; top: 400px; width: 360px; height: 30px; margin-right: -105px;}*/
}

.btn {background: var(--VertBt); color: #fff!important; text-decoration: none!important; border-radius: 40px; font-weight: 400; padding: 5px 15px; padding-right: 38px; font-size: 1.4em; line-height: 1.53; position: relative; display: inline-block; border: none; cursor: pointer;}
.btn::before {
    content: "";
    position: absolute;
    right: 15px;
    top: 50%;
    width: 15px;
    height: 24px;
    transform: translateY(-50%);
    background: url(../images/fleche-btn.svg) center center no-repeat;
	background-size: 100%;
}
.btn:hover {background: var(--Rouge);}



/* ******************************* COPYRIGHT */
body #copyright {background: url(../images/home/mentions-verticales.svg); background-size: 100%; width: 12px; height:300px; position: absolute; bottom: 290px; right: 5px; z-index: 20;}



/* ******************************* GENERAL */
body {position : relative;}
body .main-content .container-1200 { /*background: url(../images/bg-interieur.svg) top center no-repeat, url(../images/bg-interieur.jpg) top center no-repeat var(--VertBg); background-size: 100%; */ position : relative;}
.contenu .contenu-page {background: #fff; margin-top: 20px; /*padding: 0 15px;*/}

@media (min-width: 768px) {
	body .main-content .container-1200 {padding: 0; /*min-height: 820px;*/ width: 768px; position : relative;}
}
@media (min-width: 992px) {
	body .main-content .container-1200 {padding: 0; /*min-height: 820px;*/ width: 992px; position : relative;}
	.contenu .contenu-page * {z-index: 5; position: relative;}
}
@media (min-width: 1200px) {
	body .main-content .container-1200 { min-height: 940px; width: 1200px;}
}

.checkbox-ligne {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    cursor: pointer;
}

.checkbox-ligne input[type="checkbox"] {
    width: 16px;
    height: 16px;
    margin: 2px 0 0 0;
    flex: 0 0 16px;
    accent-color: #B7C415;
    cursor: pointer;
}

.checkbox-ligne span {
    line-height: 1.4;
}



.contenu {background: url(../images/bg-haut-g-sm.png) top left no-repeat, url(../images/bg-haut-d-sm.png) top right no-repeat; background-size: 50%, 50%; position: relative; }
.contenu .zone-logo {margin-left: 32.5%; width: 35%; position: relative; aspect-ratio: 320/297; }
.contenu .zone-logo .logo {position: absolute; top: 0; left: 0; width: 100%; height: 100%}

@media (min-width: 992px) {
    .contenu {background: url(../images/bg-haut.jpg) top center no-repeat ; background-size: 100%; position: relative; padding-top: 20px;}
	.contenu .zone-logo {margin-left: calc(50% - 131.85px); width: 263.7px; position: relative; aspect-ratio: 320/297; }
	.contenu .zone-logo .logo {position: absolute; top: 0; left: 0; width: 100%; height: 100%}	
	/*.contenu .bg-cotes-pommes {position: absolute; bottom: 0; left: 0; width: 100%; height: 440px; background: url(../images/bg-bas.png) bottom center no-repeat; background-size: 100%;}*/
	.contenu .bg-cotes-pommes-g {position: absolute; bottom: 25px; left: 0; width: 25%; height: 500px; background: url(../images/bg-bas-g.png) bottom center no-repeat; background-size: 100%;}
	.contenu .bg-cotes-pommes-d {position: absolute; bottom: 25px ; right: 0; width: 25%; height: 500px; background: url(../images/bg-bas-d.png) bottom center no-repeat; background-size: 100%;}
}
@media (min-width: 1200px) {
	.contenu .logo {position: absolute; top: 0; left: calc(50% - 159.5px); width: 319px;}
	.contenu .bg-cotes-pommes-g, .contenu .bg-cotes-pommes-d {bottom: 0px ;}
	
}	



/* ******************************* HOME */
.page-home .contenu .zone-trois-produits {position: relative; aspect-ratio: 720/220; }
.page-home .contenu .trois-produits {top:0; left: 15%; width: 70%; height: 100%; margin-top: 26px; position: absolute;}
.page-home .contenu .trois-produits-2 {z-index: 5;}
.page-home .contenu .cent-pourcent {margin-left: 55%; width: 40%; margin-top: 10px;}
.page-home .contenu .dates-jeu {margin-left: 57%; width: 36%; margin-top: 10px;}
.page-home .contenu .zone-cadeaux {aspect-ratio: 720/380; position: relative; background: url(../images/gain-velo.png) top left no-repeat, url(../images/gain-sejour.png) top right 7% no-repeat; background-size: 64%, 40%; margin-top: 35px;}
.page-home .contenu .bt {width: 180px; margin: 0 auto; padding-top: 50px; display: block;}
.page-home .bg-rezo {padding: 10px; background: #fff; margin-top: 60px; }
.page-home .bg-rezo .rezo {margin: 0 auto; width: 220px;}
.page-home .rezo img {height: 47px;}
.page-home .contenu .contenu-page .zone-contenu-page {margin: 0 auto; max-width: 400px; padding: 0 15px;}
.page-home .cases a {color: #000; text-decoration: underline;}
.page-home .conservez {font-weight: 700; font-size: 1.25em;}
@media (min-width: 480px) {
	.page-home .contenu .retrouvez {width: 580px; max-width: 85%; padding-top: 320px;}
	.page-home .contenu .bt {width: 215px; padding-top: 100px;}
}
@media (min-width: 992px) {
	.page-home .contenu .cent-pourcent {margin-left: calc(50% - 131.85px); width: 263.7px; margin-top: 10px;}
	.page-home .contenu .zone-trois-produits {position: relative; aspect-ratio: 1200/231; }
	.page-home .contenu .trois-produits {left: calc(50% - 250px); width: 500px;}
	.page-home .contenu .zone-cadeaux {aspect-ratio: 1200/385; position: relative; background: url(../images/gain-velo.png) top left 9% no-repeat, url(../images/gain-sejour.png) top 20px right 21% no-repeat, url(../images/dates-jeu.svg) top 295px center no-repeat; background-size: 39%, 25%, 26%; margin-top: -20px; z-index: 2; padding-bottom: 15px;}
	.page-home .contenu .bt {width: 180px; padding-top: 115px;}
	.page-home .rezo {padding-top: 40px; margin: 0 auto; width: 200px;}
	.page-home .rezo img {height: 40px;}
		
	.page-home .mention-verticale {color: #fff; top: 740px;}
	
	.page-home .contenu .contenu-page .zone-contenu-page {max-width: 620px;}
	
	.page-home .cases {max-width: 620px; margin: 0 auto; font-size: 0.88em;}
}
@media (min-width: 1200px) {
	/*.page-home .contenu .zone-cadeaux {margin-top: -35px; background: url(../images/gain-velo.png) top left 9% no-repeat, url(../images/gain-sejour.png) top 20px right 22% no-repeat, url(../images/cheerz-photos.png) top 40px center no-repeat, url(../images/autres-cadeaux.svg) top 230px center no-repeat; background-size: 39%, 25%, 15%, 14%; }*/
	.page-home .contenu .zone-cadeaux {aspect-ratio: 1200/365; margin-top: -35px; background: url(../images/gain-velo.png) top left 9% no-repeat, url(../images/gain-sejour.png) top 20px right 22% no-repeat, url(../images/cheerz-photos.png) top 40px center no-repeat, url(../images/autres-cadeaux.svg) top 230px center no-repeat, url(../images/dates-jeu.svg) top 340px center no-repeat; background-size: 39%, 25%, 15%, 14%, 23%; }
	.page-home .contenu .bt {width: 215px; padding-top: 160px;}
	.page-home .rezo {padding-top: 40px; margin: 0 auto; width: 220px;}
	.page-home .rezo img {height: 47px;}
	.page-home .mention-verticale {top: 840px;}
	.page-home .contenu .contenu-page .zone-contenu-page {max-width: 660px;}
	.page-home .cases {max-width: 620px;}
}


/* Formulaire */
.formulaire .champ {width: 100%; border: solid 1px #000; padding: 10px 16px;}
.formulaire .obligatoire {font-size: 0.8em; padding-top: 4px;}
@media (min-width: 992px) {
	.formulaire .champ {border: solid 1.5px #000; padding: 6px 12px;}
}



/* ******************************* PAGE INTERIEURE */
.page-interieure .contenu {background: url(../images/bg-haut-interieur-g-sm.png) top left no-repeat, url(../images/bg-haut-interieur-d-sm.png) top right no-repeat; background-size: 50%, 50%; position: relative; }
.page-interieure .contenu .zone-logo {margin-left: 37%; width: 26%; position: relative; aspect-ratio: 320/297; }
.page-interieure .contenu .contenu-page .zone-contenu-page {padding: 0 15px;}
.page-interieure .contenu .contenu-page .zone-contenu-page .zone-minifiee {margin: 0 auto; max-width: 400px;}
@media (min-width: 480px) {
	.page-interieure .contenu .zone-logo {margin-left: 35%; width: 30%; }
}
@media (min-width: 600px) {
	.page-interieure .contenu .zone-logo {margin-left: 32.5%; width: 35%;  }
}

@media (min-width: 992px) {
	.page-interieure .contenu {background: url(../images/bg-haut-interieur.jpg) top center no-repeat ; background-size: 100%; position: relative; padding-top: 20px;}
	.page-interieure .contenu .zone-logo {margin-left: calc(50% - 100px); width: 200px; position: relative; aspect-ratio: 320/297; }
	.page-interieure .contenu .contenu-page .zone-contenu-page  .zone-minifiee {max-width: 620px;}
}
@media (min-width: 1200px) {
	.page-interieure .contenu .zone-logo {margin-left: calc(50% - 131.85px); width: 263.7px; position: relative; aspect-ratio: 320/297; }
	.page-interieure .contenu .contenu-page .zone-contenu-page  .zone-minifiee {max-width: 660px;}
}






/* ******************************* GAIN */
.page-gain h1 {position: relative;}
.page-gain h2 {color: #000; text-transform: uppercase; font-weight: 700; line-height: 1.3;}
.page-gain h2 span {color: var(--VertClair); font-size: 0.77em;}
.page-gain .reserve {font-size: 1em; text-align: center; font-style: italic;}
.page-gain .img-lot {text-align: center;}
/* On cache l'input mais on le garde accessible */
.page-gain .file-input-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.page-gain .file-name {
  display: block;
  font-size: 0.9em;
  color: #6c757d;
}
.page-gain .joindre .titre {text-transform: uppercase; font-size: 1.35em; font-family: "filson-pro", sans-serif; font-weight: 700; line-height: 1.3;}
.page-gain .joindre .instructions {text-transform: uppercase; color: #C0211C; font-size: 0.94em; font-family: "filson-pro", sans-serif; font-weight: 500; line-height: 1.43;}
.page-gain .joindre .contraintes {font-size: 0.85em; margin-top: 5px;}
.page-gain .joindre .attention {font-size: 0.75em; margin-top: 15px; font-style: italic;}
.zone-erreurs {
  background-color: #fff5f5;
  border: 1px solid #dc3545;
  border-radius: 0.375rem;
  padding: 0.75rem 1rem;
  margin: 1rem auto;
  width: 400px; max-width: 100%;
  text-align: left;
}

.zone-erreurs ul {
  margin: 0;
  padding-left: 1.2rem;
  color: #dc3545;
  font-size: 1.3rem;
}

.champ-erreur {
  border-color: #dc3545 !important;
  background-color: #fff5f5;
}
@media (min-width: 600px) {
	.page-gain h1 {padding-top: 6rem!important;}
	.page-gain h1:after {position: absolute; content: ''; top: 26px; right: calc(50% - 210px); width: 61px; height: 60px; background: url(../images/zigzag-felicitations.svg) top right no-repeat; background-size: 100%;  }
}






/* ******************************* MERCI */
.page-merci h2 {color: var(--Rouge); text-transform: uppercase; font-weight: 700; line-height: 1.3;}






/* ******************************* REGLEMENT */
.page-reglement h1 {margin-bottom: 0; text-align: center;}
.page-reglement h2 {color: var(--VertBt); text-transform: uppercase; font-weight: 700; line-height: 1.3; text-align: center;}

.page-reglement .texte h2 {text-align: left; margin-top: 2em; margin-bottom: 0.25em; font-size: 1.25em;}
.page-reglement .texte ul, .page-reglement .texte p {padding-bottom: 0.7em;}
.page-reglement.page-interieure .contenu .contenu-page .zone-contenu-page .zone-minifiee {max-width: 100%;}
@media (min-width: 480px) {
	.page-reglement.page-interieure .contenu .contenu-page .zone-contenu-page .zone-minifiee {max-width: calc(100% - 60px);}
}
@media (min-width: 992px) {
	.page-reglement .texte {padding-bottom: 120px;}
	.page-reglement.page-interieure .contenu .contenu-page .zone-contenu-page .zone-minifiee {max-width: calc(100% - 120px);}
}
@media (min-width: 1200px) {
	.page-reglement.page-interieure .contenu .contenu-page .zone-contenu-page .zone-minifiee {max-width: calc(100% - 360px);}
}





/* ******************************* DOTATIONS */
.page-dotations h1 {color: var(--VertBt); text-transform: uppercase; font-weight: 700; line-height: 1.23; text-align: center; font-size: 1.65em;}
.page-dotations h1 span {display: block; color: var(--Rouge); }
.page-dotations.page-interieure .contenu .contenu-page .zone-contenu-page .zone-minifiee {max-width: 100%;}
.page-dotations .liste-cadeaux {text-align: center;}
.page-dotations .liste-cadeaux .titre {color: var(--VertBt); text-transform: uppercase; font-weight: 700; font-size: 1.2em;}
.page-dotations .liste-cadeaux .texte {font-size: 0.92em; line-height: 1.25;}
.page-dotations .btn {padding: 3px 15px; font-size: 1.14em; padding-right: 30px; margin-top: 4px;}
.page-dotations .btn::before {right: 10px; width: 12px; height: 20px; }
.page-dotations .plus {margin-top: 40px; font-weight: 700;}
.page-dotations .plus a {color: #000; text-decoration: underline;}
@media (min-width: 480px) {
	.page-dotations.page-interieure .contenu .contenu-page .zone-contenu-page .zone-minifiee {max-width: calc(100% - 60px);}
}
@media (min-width: 992px) {
	.page-dotations.page-interieure .contenu .contenu-page .zone-contenu-page .zone-minifiee {max-width: calc(100% - 120px);}
	.page-dotations .liste-cadeaux .titre span {display: block;}
}
@media (min-width: 1200px) {
	.page-dotations.page-interieure .contenu .contenu-page .zone-contenu-page .zone-minifiee {max-width: calc(100% - 360px);}
}




/* ******************************* ATTENTE   */
/*.page-attente .fin {margin: 0 auto; margin-top: 40px; max-width: 540px;}
.page-attente h1 {margin-top: 2.5em; }
.page-attente .retrouvez {margin-top: 0.5em; margin-bottom: 50px; color: var(--Vert); text-align: center; font-family: "DK-Appelstroop"; font-size: 26px; line-height: 29px; text-decoration: none; }
.page-attente .retrouvez a {padding: 3px 10px; background: var(--Vert); color: #fff; display: block; margin: 0 auto; margin-top: 5px; font-family: "DK-Appelstroop"; text-transform: uppercase; width: 190px; font-size: 37px; line-height: 41px;}
.page-attente .retrouvez a:hover {text-decoration: none; background: var(--Rouge); color: #fff;}
*/




/* ******************************* FOOTER */
.prefooter {text-align: center; color: var(--VertTexte); background: #fff; padding-top: 40px; font-size: 0.7em; padding-bottom: 10px; line-height: 1.25;}
.prefooter .texte-prefooter {max-width: 500px;  margin: 0 auto;}
.prefooter a {color: var(--VertTexte); text-decoration: underline;}
footer {background: #fff; color: var(--VertTexte); position : relative;}
footer .footer-img {width: 100%;}
footer .footer-mobile .nav {text-align: center; padding: 30px 0;}
footer .footer-mobile .nav a {display: block; color: var(--VertTexte); text-align: center; font-weight: 700; font-size: 1.25em; line-height: 1.75; text-transform: uppercase;}
footer .footer-mobile .legal {text-align: center; font-size: 0.82em; padding-top: 10px; padding-bottom: 30px;}
footer .footer-mobile .reseaux {font-weight: 700; border-top: solid 2px var(--VertTexte); border-bottom: solid 2px var(--VertTexte); padding: 15px 0; font-size: 1.2em; margin-bottom: 20px;}
footer .footer-mobile .reseaux img {height: 47px;}
footer .footer-mobile .manger-bouger {text-align: center; font-size: 1.12em; padding: 20px; line-height: 1.45;}
footer .manger-bouger a {color: var(--VertTexte);  text-decoration: none;}
footer .manger-bouger a:hover {color: var(--VertTexte);  text-decoration: underline;}
@media (min-width: 992px) {
	footer {background: #C0D118; color: var(--VertTexte); position : relative;}
	footer * {z-index: 5; position: relative;}
	
	footer .footer-desktop {padding-top: 60px; padding-bottom: 20px;}
	footer .footer-desktop .nav > * {padding: 0 12px; font-weight: 700;}
	footer .footer-desktop .nav a {color: var(--VertTexte);  font-size: 0.91em; text-transform: uppercase;} 
	footer .footer-desktop .nav .lien-icone {padding: 0;}
	footer .footer-desktop .nav span {font-size: 0.87em;  padding: 0;}
	footer .footer-desktop .nav img {height: 41px;}
	footer .footer-desktop .manger-bouger {margin-top: 10px; padding-top: 15px; text-align: center; position: relative;}
	footer .footer-desktop .manger-bouger:before {content: ''; position: absolute; top: 0; left: calc(50% - 220px); width: 440px; height: 5px;  border-top: solid 1.5px var(--VertTexte);}
}
@media (min-width: 1200px) {
	footer .footer-desktop .nav > * {padding: 0 20px;}
	footer .footer-desktop .nav a {font-size: 1em;}
	.prefooter .texte-prefooter {max-width: none; }
}
	
	

/* ******************************* POPUP   */
.popup .cadre {padding:0px; /*box-shadow: 3px 3px 4px #000; */background: #fff; border: solid 5px var(--VertClair); border-radius: 25px; text-transform: uppercase; color: #000;}
.popup .cadre .filet {/*border: solid 4px #e5370d;*/ padding: 8px;}
.popup .cadre .filet .zone-fermer {width: 100%; overflow: hidden; margin-bottom: 20px;}
.popup .cadre .filet .zone-fermer img {width: 17px; height: 17px; float: right; display: block;}
.popup .cadre .filet .zone-contenu {padding: 0 12px; padding-top: 40px; text-align: center; font-size: 20px; line-height: 1.4; font-weight: 400;}
.popup .cadre .filet .zone-contenu.reduit {padding-top: 0; }
.popup .cadre .filet .zone-contenu .rouge {color: #2d3cff;}
@media (min-width:420px) {
	.popup { padding:5px;  }
	.popup .cadre .filet {padding: 18px;}
	.popup .cadre .filet .zone-fermer img {width: 34px; height: 34px; }
}





