.bloc_grid                 { display: grid; grid-template-columns: 1fr 1fr; grid-gap: 100px; align-items: center; margin: 100px 0 100px 0; position: relative; }
.bloc_grid.align_top       { align-items: start; }
.bloc_grid .photo          { position: relative; line-height: 0; }
.bloc_grid .photo img      { width: 100%; height: auto; object-fit: cover; display: block; position: relative; z-index: 10; transition: transform 300ms ease-in-out; border-radius: 20px;}
@media (max-width: 1000px) {
.bloc_grid .photo img      { border-radius: 10px;}
}


.bloc_grid .photo img.photo_sup { position: absolute; left: 100%; top: 0; margin-left: 20px; width: auto; height: 100%;}

/***** reverse *****/
@media (min-width: 1000px) {
.bloc_grid.reverse .texte     { grid-area: 1 / 2; }
.bloc_grid.reverse .photo     { grid-area: 1; }
}

@media (max-width:1000px) {
.bloc_grid .texte             { grid-area: 2;}
.bloc_grid .photo             { grid-area: 1;}
.bloc_grid                    { grid-gap: 40px; grid-template-columns: 1fr; }
.bloc_grid.reverse            { grid-template-columns: 1fr; }
}

.bloc_grid .texte .link_cta, .bloc_grid .texte .link { margin-top: 15px;}

/***** responsive espacements autour de bloc grid ******/
@media (max-width:1800px) {
  .bloc_grid {
    margin: 80px 0;
  }
}
@media (max-width:1400px) {
  .bloc_grid {
    margin: 80px 0;
    grid-gap: 60px;
  }
}
@media (max-width:1200px) {
  .bloc_grid {
    margin: 60px 0;
    grid-gap: 60px;
    align-items: start;
  }
  .bloc_grid .texte .link_cta, .bloc_grid .texte .link {
    margin-top: 10px;
  }
}
@media (max-width:1000px) {
  .bloc_grid {
    grid-gap: 15px;
  }
}
@media (max-width:700px) {
  .bloc_grid {
    margin: 40px 0;
  }
  .bloc_grid .texte p {
    margin-bottom: 10px;
  }
  .bloc_grid .texte p:last-child {
    margin-bottom: 0px;
  }
  /*.bloc_grid .texte p b {
    font-size: 14px;
  }*/
  .bloc_grid .texte .link_cta, .bloc_grid .texte .link {
    width: 100%;
    text-align: center;
    margin-top: 10px;
  }
}
/* ------ */
/* ------ */
/* custom - home - bloc about */
/* ------ */
/* ------ */
.bloc_grid.about {
  margin-bottom: 0;
}

@media (min-width: 1000px) {
.bloc_grid.about .texte{
      max-width: 518px;
}
  }
.bloc_grid.about > div.photo.milk {
  line-height: inherit;
  background-color: var(--clear-green);
  border-radius: 20px 0px 20px 0px;
}
.bloc_grid.about > .photo.milk div {
  padding: 20px;
}
.bloc_grid.about > .photo.milk img {
  border-radius: 0 0 20px 0;
}
@media (min-width: 700px) {
  .bloc_grid.about {
    margin-top: -50px;
    gap: 60px;
  }
  .bloc_grid.about > .photo.milk div {
   padding: 55px;
  }
  .bloc_grid.about .texte {
    margin-top: 140px;
  }
  .bloc_grid.about > div.photo.milk {
    border-radius: 40px 0px 40px 0px;
  }
  .bloc_grid.about > .photo.milk img {
    border-bottom-right-radius: 40px;
  }
  .bloc_grid.about .photo.milk .sous_titre {
    font-size: 20px;
    line-height: 30px;
  }
}
@media (min-width: 1200px) {
  .bloc_grid.about .texte {
    margin-top: 50px;
  }
}
/* ------ */
/* ------ */
/* custom - home - blocgrid photo grid */
/* ------ */
/* ------ */
.bloc_grid.images {
  margin: 140px 0;
}
@media (max-width: 1000px) {
  .bloc_grid.images.reverse {
    grid-template-columns: 1fr;
    margin: 120px 0;
  }
}
@media (min-width: 1000px) {
  .bloc_grid.images.reverse .photo {
    grid-area: 1;
  }
  .bloc_grid.images.reverse .texte {
    grid-area: 1 / 2;
    justify-self: center;
  }
}
.bloc_grid.images .photo.grid .img_grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
.bloc_grid.images .photo.grid .img_grid img {
  border-radius: 10px;
}
@media (min-width: 1000px) {
  .bloc_grid.images .texte {
    max-width: 600px;
  }  
  .bloc_grid.images .photo.grid {
    width: 90%;
    justify-self: flex-end;
  }
  .bloc_grid.images .photo.grid:after {
    content: '';
    z-index: -1;
    width: 50vw;
    height: auto;
    position: absolute;
    top: -60px;
    bottom: -60px;
    right: 80%;
    background-color: var(--clear-green);
    border-top-right-radius: 40px;
  }
}
@media (max-width: 700px) {
    .bloc_grid.images {
      margin: 40px 0 60px;
    }
    .bloc_grid.images.reverse {
    margin: 50px 0;
    }
    
}
/* ------ */
/* ------ */
/* custom - home - bloc_grid partenaires */
/* ------ */
/* ------ */
.bloc_grid .cta {
  margin-top: 30px;
  background-color: var(--dark-blue);
  border-radius: 20px 0 20px 0;
  padding: 20px;
  color: #fff;
}
@media (min-width: 1000px) {
  .bloc_grid .cta {
    border-radius: 40px 0 40px 0;
    padding: 40px;
  }
}
@media (min-width: 450px) {
  .bloc_grid .cta {
    padding: 30px;
  }
}
/* ------ */
/* ------ */
/* custom - page - bloc widht green background and only 1 img */
/* ------ */
/* ------ */
/* reponsive espacements */
/*page d'accueil agriculteurs*/

.bloc_grid.green_bg, .bloc_grid.green_bg.reverse           { margin: 140px 0; }
/* les blocs long sont deux bloc-grid qui se suivent */
.bloc_grid.green_bg.long, .bloc_grid.green_bg.reverse.long { margin: 160px 0; }
@media (max-width: 1000px) {
.bloc_grid.green_bg.long, .bloc_grid.green_bg.reverse.long { margin: 80px 0; }
.bloc_grid.green_bg, .bloc_grid.green_bg.reverse           { margin: 100px 0; }
    
}
@media (max-width: 700px) {
.bloc_grid.green_bg.long, .bloc_grid.green_bg.reverse.long     {  margin: 50px 0; }
.bloc_grid.green_bg, .bloc_grid.green_bg.reverse               { margin: 50px 0; }
}


/* green bg apparaît à partir de 1000px */
@media (min-width: 1000px) {
.bloc_grid.green_bg .photo:after          { content: ''; z-index: -1; width: 50vw; top: -60px; bottom: -60px; position: absolute; left: 80%; border-top-left-radius: 40px; }
.bloc_grid.green_bg.reverse .photo:after  { border-top-right-radius: 40px; border-top-left-radius: 0; left: inherit; right: 80%;  }
}