/***** banner *****/
.banner 									{ position: relative; padding-top: 120px; }
.banner .bg                                 { background-color: var(--mainColor1); border-radius: var(--imgRadius); z-index: 30;}
.banner .inner                              { position: relative; height: 80vh; max-height: 800px; min-height: 400px;}
.banner picture 							{ display: block; position: absolute; bottom: 0; text-align: center; z-index: 20; left: 50%; transform: translateX(-50%);}
.banner picture img  						{ width: 100%; max-width: 80%; height: auto; margin: 0 auto; display: block;} 
.banner .txt_float						    { font-size: 50px; bottom: -10px; left: 67%; transform: rotate(-15deg);}
.banner .content  						    { position: absolute; left: 50%; transform: translateX(-50%); top: 10%; z-index: 0; width: 100%; text-align: center;}
.banner .titre_main                         { color: #fff; font-size: 150px; line-height: 120px;}
.banner .titre_main span                    { font-size: 80px; line-height: 80px;}

.banner .deco.deco_1                        { z-index: -20; top: 60%; left: -90px;}
.banner .deco.deco_2                        { z-index: 2; top: 30%; left: -70px;}
.banner .deco.deco_3                        { z-index: 2; top: 0; right: -18%;}
.banner .deco_3 .parallax                   { height: 400px; }
.banner .parallax                           { position: relative; width: 400px; height: 600px; }
.banner .parallax .float_1                  { position: absolute; top: 0; left: 0; filter: blur(2.5px); height: auto;}
.banner .parallax .float_2                  { position: absolute; top: 67%; left: 2%; height: auto;}
.banner .parallax .float_3                  { position: absolute; top: 20%; left: 25%; height: auto;}
.banner .parallax .float_4                  { position: absolute; top: 30%; left: 15%; height: auto;}
.banner .parallax .float_5                  { position: absolute; top: 67%; left: 40%; height: auto;}

@media (max-width:1500px) {
.banner .txt_float						    { font-size: 45px; left: 70%;}

}
@media (max-width:1300px) {

}
@media (max-width:1200px) {
.banner 									{ padding-top: 100px; width: 100vw; left: 50%; margin-left: -50vw;}
.banner picture img  						{ max-width: inherit;} 
.banner .float                              { max-width: 80px; }
.banner .titre_main                         { font-size: 120px; line-height: 100px;}
.banner .titre_main span                    { font-size: 70px; line-height: 70px;}
.banner .txt_float						    { font-size: 35px;}
}
@media (max-width:1000px) {
.banner .titre_main                         { font-size: 90px; line-height: 90px;}
.banner .titre_main span                    { font-size: 56px; line-height: 56px;}
}
@media (max-width:700px) {
.banner 									{ padding-top: 80px; }
.banner picture       						{ width: 100%;} 
.banner .titre_main                         { font-size: 50px; line-height: 50px;}
.banner .titre_main span                    { font-size: 22px; line-height: 22px;}
.banner .txt_float						    { font-size: 30px; bottom: -10px; left: 50%; transform: translateX(-50%) rotate(-10deg);}
.banner .inner                              { height: 110vw; max-height: inherit; min-height: inherit;}
}


.horaires							        { position:absolute; bottom: -50px; left: 50px; color:#fff; background-color: var(--mainColor2); border-radius: clamp(5px, 2vw, 15px); z-index: 150; box-shadow: 0px 10px 15px rgba(13, 60, 28, 0.2); }
.horaires:after						        { width:168px; height:100%; position: absolute; right: 50%; transform: translateX(50%); top: -85px; background: url("../images/liens_pancarte.svg") 50% no-repeat; content:"";}
.horaires p							        { padding:20px 80px 22px 40px; margin: 0; cursor:pointer; position:relative;}
.horaires p:after					        { width:20px; height:100%; position:absolute; right:30px; top:0; background: url("../images/arrow_sub.svg") 50% no-repeat; transform: rotate(0); content:"";}
.horaires p.active:after			        { transform:rotate(-180deg);}
.horaires b							        { display:block; padding-bottom:2px; color:#fff; font: 400 32px/42px "Delicious Handrawn"; letter-spacing: 1px; }
.horaires ul						        { width: 90%; background:#282828; line-height:30px; padding:10px 30px 25px 30px; border-radius: 0 0 8px 8px; font-size:14px; letter-spacing:0.4px; position:absolute; left:0; top:100%; display:none; margin: 0 18px;}
.horaires span						        { float:right;}
.horaires .hide 					        { display: none;}

@media (max-width:1200px) {
.horaires 							        { margin-top: 20px; }
.horaires b							        { font-size: 30px; line-height: 40px; }
}
@media (max-width:1000px) {
.horaires							        { position: relative; bottom: inherit; left: inherit; right: inherit; top: inherit; margin-top: 15px;}
.horaires:after						        { display: none;}
}
@media (max-width:700px) {
.horaires							        { box-shadow: none; margin-top: 10px; }
.horaires p							        {  padding: 8px 70px 8px 20px; }
.horaires b							        { font-size: 22px; line-height: 30px; }
}



.intro                                      { margin: var(--marginTB); position: relative;}
/*
.intro .wrapper:before                      { content: ""; background: url("../images/lagourmandine_fruit_float_03.webp") 50% / contain no-repeat; width: 380px; height: 380px; display: block; position: absolute; top: -200px; right: -300px;}
.intro .wrapper:after                       { content: ""; background: url("../images/lagourmandine_fruit_float_05.webp") 50% / contain no-repeat; width: 240px; height: 240px; display: block; position: absolute; top: -400px; left: -13vw;}
*/




.produits	 								            { margin: var(--marginTB); margin-bottom: 220px; }
/*
.produits .wrapper:after					            { content: ""; background: url("../images/lagourmandine_legume_float_01.webp") 50% / contain no-repeat; width: 250px; height: 210px; display: block; position: absolute; bottom: 38%; left: -150px; transform: rotate(-25deg); }
*/
.produits .title_wrap .txt_float						{ top: -70px; left: calc(50% + 30px); transform: rotate(9deg); }
.produits .title_wrap .txt_float:after					{ content: ""; background: url("../images/arrow_doodle_up.svg") 50% / contain no-repeat; width: 60px; height: 80px; display: block; position: absolute; bottom: -60px; right: -60px;}
.produits .titre_main						            { margin-bottom: 50px;}
.produits .grid_bloc.col_3 .container img:not(.icon)	{ display: block; width: 100%; height: 100%; object-fit: cover; border-radius: var(--imgRadius);}
.produits .card_item_v1                 	            { position: relative; display: flex; align-items: center; overflow: visible;}
.produits .item.photo                 	                { position: relative; display: flex; height: 100%;}
.produits .item.photo.sandwich         	                { grid-area: 2 / 1 / 3 / 2;}
.produits .item.photo.sandwich .txt_float               { bottom: -110px; right: 50%; transform: rotate(10deg)}
.produits .item.photo.sandwich .txt_float:after			{ content: ""; background: url("../images/arrow_doodle_boucle.svg") 50% / contain no-repeat; width: 40px; height: 100px; display: block; position: absolute; bottom: 10px; right: -65px; transform: rotate(25deg);}
.produits .item.photo.legumes         	                { grid-area: 2 / 3 / 3 / 4;}
.produits .item.photo.fromage        	                { grid-area: 1 / 2 / 2 / 3;}


.produits .deco.deco_1                                  { z-index: -20; top: 25%; right: -460px;}
.produits .deco.deco_2                                  { z-index: 20; top: 25%; right: -460px;}
.produits .deco.deco_3                                  { z-index: -20; bottom: -150px; left: 40%;}
.produits .deco.deco_4                                  { z-index: 20; bottom: -150px; left: 40%;}

.produits .parallax                                     { position: relative; width: 500px; height: 500px; }
.produits .deco.deco_3 .parallax                        { height: 200px; }
.produits .deco.deco_4 .parallax                        { height: 200px; }

.produits .parallax .float_1                            { position: absolute; top: 10%; right: 70%; filter: blur(2px); }
.produits .parallax .float_2                            { position: absolute; top: 45%; right: 45%; filter: blur(1.5px); }
.produits .parallax .float_3                            { position: absolute; top: 60%; right: 80%;}
.produits .parallax .float_4                            { position: absolute; top: 30%; right: 40%; filter: blur(2px);}
.produits .parallax .float_5                            { position: absolute; top: 5%; right: 60%;}


@media (max-width:1200px) {
.produits	 								            { margin-bottom: 180px; }
.produits .titre_main						            { margin-bottom: 40px;}
.produits .grid_bloc.col_3 .container                   { grid-template-columns: 1fr 1fr;}
.produits .item.photo.sandwich         	                { grid-area: auto;}
.produits .item.photo.legumes         	                { grid-area: 2 / 1 / 3 / 2;}
.produits .item.photo.fromage        	                { grid-area: auto;}
.produits .item.photo.sandwich .txt_float               { bottom: -10px; right: 50%; transform: translateX(50%) rotate(10deg); background-color: #fff; padding: 5px 20px; border-radius: 8px;}
.produits .item.photo.sandwich .txt_float:after			{ display: none; }
.produits .parallax .float                              { max-width: 90px }
}
@media (max-width:1000px) {
.produits	 								            { margin-bottom: 100px; }

}
@media (max-width:700px) {
.produits	 								            { margin-bottom: 50px; margin-top: 70px; }    
.produits .titre_main						            { margin-bottom: 30px;}
.produits .grid_bloc.col_3 .container                   { grid-template-columns: 1fr;}
.produits .item.photo.legumes         	                { grid-area: auto;}
.produits .title_wrap .txt_float                        { top: -50px; left: calc(50% + 15px); transform: rotate(0deg); }
}



/***** bloc_grid custom *****/
.about .txt_float                                         { text-align: center; bottom: 0;}
.about .txt_float:after			                          { content: ""; background: url("../images/arrow_doodle.svg") 50% / contain no-repeat; width: 40px; height: 90px; display: block; position: absolute; bottom: -70px; right: -50px; transform: rotate(90deg);}

.about.bloc_txt_img.custom .item.img                      { text-align: right;}
.about.bloc_txt_img.custom .item.img img:first-of-type    { width: 69%;}
.about.bloc_txt_img.custom .item.img img:last-of-type     { width: 47%; display: inline-block; vertical-align: top; position: relative; z-index: 11; margin-top: -125px; border: 10px solid var(--bgColorLight);}

@media (max-width:1000px) {
}
@media (max-width:700px) {
.about.bloc_txt_img.custom .item.img img:last-of-type     { border: 5px solid var(--bgColorLight);}
.about .txt_float                                         { display: none;}
}







