body {
  font-size: 16px;
}

.page-header {
  padding: 3rem 0 2rem;
  #breadcrumb {
    margin: -2rem 0 3rem;
  }

  & > .inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    z-index: 10;
    h1 {
      font-size: 104px;
      line-height: 104px;
      color: var(--yellow-color);
      p {
        font-size: 24px;
        font-family: "Inter";
        font-weight: 600;
        color: #000;
      }
    }

    h1.hasQuote::before {
      left: -3rem;
    }

    .entry-content {
      max-width: 750px;
      a {
        strong {
          white-space: nowrap;
        }
      }
    }
  }
}

.page-template-page-produits-accueil {
  .page-header {
    h1 {
      p {
        line-height: 40px;
      }
    }
  }
  #quickLinks {
    margin-top: 6rem;
    padding-bottom: 10rem;
    .inner {
      display: flex;
      align-items: center;
      max-width: 100%;
      padding-left: 0;
      .blocCarte {
        position: relative;
        flex: 0 0 55%;
        margin: 0 -3rem 0 -3rem;
        .bgImage {
          max-width: 100%;
          overflow: hidden;
          transform: rotate(-3deg);
          position: relative;
          left: 0;
          z-index: 0;
          display: flex;
          align-items: center;
          justify-content: center;
          aspect-ratio: 680/450;
          img {
            max-width: 160%;
            position: relative;
            left: -30%;
          }
        }

        .content-text {
          position: absolute;
          width: 100%;
          height: 100%;
          z-index: 10;
          top: 0;
          left: 0;
          display: flex;
          align-items: center;
          flex-direction: column;
          justify-content: center;
          padding: 0% 0 20% 30%;
          h3 {
            font-family: "DeliciousHandrawn";
            font-size: 56px;
            color: #fff;
            text-align: left;
            line-height: 50px;
            font-weight: 100;
            max-width: 300px;
            p {
              font-family: "Inter";
              font-size: 25px;
            }
            & + .blocCTA {
              min-width: 300px;
            }
          }
        }
      }

      .blocQuizz {
        position: relative;
        padding: 6rem 3rem 5rem 3rem;
        top: 4rem;
        &::after {
          background: var(--yellow-color);
          content: "";
          position: absolute;
          z-index: 0;
          width: 100%;
          height: 100%;
          top: 0;
          left: 0;
          transform: rotate(1deg);
          mask-image: url(../img/masks/colonne-page-produit.svg),
            linear-gradient(
              transparent,
              transparent calc(100%),
              #2c2121 calc(100%),
              black
            );
          mask-repeat: no-repeat;
          mask-size: 100% 100%;
          mask-position: center center;
        }

        & > img {
          position: absolute;
          z-index: 1;
          top: 0;
          right: 0;
          transform: translate(25%, -40%);
          max-width: 200px;
        }

        .content-text {
          position: relative;
          z-index: 10;
          h3 {
            font-family: "DeliciousHandrawn";
            font-size: 48px;
            color: #fff;
            line-height: 48px;
            font-weight: 100;
            text-align: left;
            margin-bottom: 2rem;
            &::before {
              left: -2.5rem;
              top: -1rem;
            }

            p {
              font-size: 21px;
              font-family: "Inter";
              font-weight: 600;
              margin-bottom: 0;
            }

            span {
              font-size: 58px;
              &::after {
                content: "";
              }
            }
          }
        }
      }

      .blocCalendrier {
        position: relative;
        padding: 3rem 3rem 4rem 3rem;
        margin-left: 4rem;
        &::after {
          background: var(--green-color);
          content: "";
          position: absolute;
          z-index: 0;
          width: 100%;
          height: 100%;
          top: 0;
          left: 0;
          transform: rotate(-1deg);
          mask-image: url(../img/masks/colonne-page-produit.svg),
            linear-gradient(
              transparent,
              transparent calc(100%),
              #2c2121 calc(100%),
              black
            );
          mask-repeat: no-repeat;
          mask-size: 100% 100%;
          mask-position: center center;
        }

        .content-text {
          position: relative;
          z-index: 10;
          display: flex;
          align-items: center;
          flex-direction: column;
          h3 {
            font-family: "DeliciousHandrawn";
            font-size: 42px;
            color: #fff;
            line-height: 48px;
            font-weight: 100;
            text-align: center;
            margin-bottom: 1rem;
            display: flex;
            align-items: center;
            &::before {
              content: "";
              width: 105px;
              height: 90px;
              background: url(../img/svg/ico-calendar.svg) left center no-repeat;
              display: block;
              background-size: contain;
            }

            p {
              font-size: 21px;
              font-family: "Inter";
              font-weight: 600;
              margin-bottom: 0;
            }

            span {
              font-size: 58px;
              &::after {
                content: "";
              }
            }
          }

          h4 {
            font-family: "DeliciousHandrawn";
            font-size: 42px;
            color: #000;
            line-height: 48px;
            font-weight: 100;
            text-align: left;
            margin-bottom: 2rem;
            span {
              font-size: 48px;
            }
          }
        }
      }
    }
  }
}

#productTypeList {
  margin: 0rem 0 4rem;
  background: url(../img/svg/decouvrez-path.svg) 50% 50% no-repeat;
  background-size: 100% auto;
  position: relative;
  max-width: 100vw;
  &::before {
    content: "";
    position: absolute;
    top: -44%;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(../img/svg/decouvrez-couverts.svg) 90% 0% no-repeat;
  }

  .inner {
    position: relative;
    z-index: 10;
    ul {
      display: flex;
      align-items: center;
      justify-content: center;
      flex-wrap: wrap;
      gap: 30px;
      max-width: 1000px;
      margin: 0 auto;
      li {
        filter: drop-shadow(0 5px 15px rgb(0 0 0 / 30%));
        background: url(../img/masks/filtre.svg);
        background-size: 100% 100%;
        transition: all ease-in-out 0.3s;
        a {
          display: flex;
          align-items: center;
          flex-direction: column;
          background: #fff;
          width: 175px;
          height: 175px;
          justify-content: center;
          padding: 1rem;
          color: #000;
          text-align: center;
          font-weight: 600;
          line-height: 20px;
          padding: 1rem 2rem;
          mask-image: url(../img/masks/filtre.svg),
            linear-gradient(
              transparent,
              transparent calc(100%),
              #2c2121 calc(100%),
              black
            );
          mask-repeat: no-repeat;
          mask-size: 100% 100%;
          mask-position: center center;
          img {
            margin-bottom: 0.5rem;
          }

          &.fruits {
            img {
              height: 75px;
            }
          }

          &.boissons {
            img {
              height: 95px;
            }
          }
        }

        &:hover:not(.active) {
          filter: drop-shadow(-1px -4px 0px var(--main-color))
            drop-shadow(4px -1px 0px var(--main-color))
            drop-shadow(-4px 1px 0px var(--main-color))
            drop-shadow(2px 4px 0px var(--main-color))
            drop-shadow(0 5px 15px rgb(0 0 0 / 30%));
        }

        &.active {
          a {
            background: var(--main-color);
            color: #fff;
            img {
              filter: brightness(0) invert(1);
            }
          }
        }
      }
    }
  }

  &.archive {
    background: #fff url(../img/svg/recettes-radis.svg) 100% 20% no-repeat;
    padding: 4rem 0 7rem;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    &::before {
      display: none;
    }

    h2 {
      font-size: 104px;
      line-height: 104px;
      margin: 0 0 3rem;
      &::before {
        left: -5rem;
      }
    }
  }
}

.term-fruits,
#productTypeList li:has(> a.fruits) {
  --main-color: var(--term-fruits-color);
}

.term-epices-condiments-et-miel,
#productTypeList li:has(> a.epices-condiments-et-miel) {
  --main-color: var(--term-epices-condiments-et-miel-color);
}

.term-poissons-fruits-de-mer,
#productTypeList li:has(> a.poissons-fruits-de-mer) {
  --main-color: var(--term-poissons-fruits-de-mer-color);
}

.term-viandes,
#productTypeList li:has(> a.viandes) {
  --main-color: var(--term-viandes-color);
}

.term-legumes,
#productTypeList li:has(> a.legumes) {
  --main-color: var(--term-legumes-color);
}

.term-fromages-et-produits-laitiers,
#productTypeList li:has(> a.fromages-et-produits-laitiers) {
  --main-color: var(--term-fromages-et-produits-laitiers-color);
}

.term-boissons,
#productTypeList li:has(> a.boissons) {
  --main-color: var(--term-boissons-color);
}

.term-specialites,
#productTypeList li:has(> a.specialites) {
  --main-color: var(--term-specialites-color);
}

.tax-type-de-produit {
  .page-header {
    background: #fff;
    position: relative;
    z-index: 0;
    &::before {
      content: "";
      position: absolute;
      width: 100%;
      height: 500px;
      top: 40%;
      left: 0;
      background: url(../img/svg/menu-bg-miam.svg) 102% 90% no-repeat;
      z-index: 1;
    }

    &::after {
      content: "";
      position: absolute;
      width: 100%;
      height: 150px;
      top: 80%;
      left: 0;
      background: url(../img/svg/bg-page-header.svg) 50% 0% no-repeat;
      z-index: 0;
      background-size: 110% auto;
    }

    h1 {
      display: flex;
      align-items: center;
      font-size: 91px;
      text-align: left;
      color: var(--main-color);
      img {
        margin-right: 2rem;
        height: 130px;
      }

      div {
        p {
          margin: 0;
          color: #000;
        }
      }
    }
  }

  #productList {
    padding-bottom: 2rem;
    background: url(../img/svg/bg-produits-topo.svg) 0px 0px no-repeat;
    position: relative;
    z-index: 10;
  }
}

.single-produit {
  header.entry-header {
    position: relative;
    margin-top: -2rem;
    height: calc(655px + 2rem);
    &::before,
    &::after {
      content: "";
      position: absolute;
      width: 100%;
      height: 100%;
      z-index: 0;
      background: linear-gradient(0deg, rgb(42 42 42 / 11%) 0%, #000000 100%);
      opacity: 0.6;
    }

    &:not(.noLabel) {
      &::after {
        z-index: 5;
        background: url(../img/svg/produits/single-path.svg) 50% 100% no-repeat;
        opacity: 1;
        background-size: 110% auto;
        top: 26%;
      }
    }

    h1 {
      position: relative;
      z-index: 10;
      text-align: left;
      margin: 0 auto 0 0;
      max-width: 1250px;
      width: 50%;
      padding: 2rem 0 0 4rem;
      font-size: 70px;
      line-height: 80px;
    }

    .inner {
      max-width: 1250px;
      flex: 1;
    }

    #productLabel {
      position: absolute;
      z-index: 10;
      display: flex;
      align-items: center;
      flex-direction: column;
      bottom: 2rem;
      right: 2rem;
      gap: 0;
      justify-content: flex-end;
      & > div.label {
        display: flex;
        transition: all ease-in-out 0.3s;
        align-items: center;
        /* background: #fff; */
        position: relative;
        /* height: 100%; */
        /* flex: 1; */
        padding: 0;
        margin-left: auto;
        img {
          display: block;
          height: 95px;
          transform: scale(0.75);
          width: auto;
          transition: all ease-in-out 0.3s;
        }

        .labelResume {
          width: 0;
          opacity: 1;
          transition: all ease-in-out 0.3s;
          overflow: hidden;
          max-height: 0;
          display: flex;
          align-items: flex-start;
          flex-direction: column;
          justify-content: center;
          /* position: absolute; */
          h3 {
            text-align: left;
            text-transform: inherit;
            font-family: "DeliciousHandrawn";
            font-size: 1.5rem;
            font-weight: 100;
            line-height: 1.75rem;
            width: 320px;
            min-width: 320px;
            margin-bottom: 0.25rem;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
          }

          div {
            width: 320px;
            min-width: 320px;
            font-size: 0.9rem;
          }

          a {
            font-size: 1rem;
            white-space: nowrap;
          }
        }

        &:hover,
        &:focus {
          background: var(--blue-color);
          mask-image: url(../img/masks/block.svg),
            linear-gradient(
              transparent,
              transparent calc(100%),
              #2c2121 calc(100%),
              black
            );
          mask-repeat: no-repeat;
          mask-size: 100% 100%;
          mask-position: center center;
          padding: 1rem;
          img {
            transform: scale(1);
            margin-right: 1rem;
          }

          .labelResume {
            width: 320px;
            max-height: 100%;
          }
        }
      }
    }

    #creditPhoto {
      position: absolute;
      /* width: 100%; */
      text-align: right;
      padding: 0rem 1rem 0;
      bottom: 0;
      z-index: 10;
      font-size: 10px;
      text-shadow: 0 0 20px #000;
    }

    #breadcrumb {
      position: absolute;
      top: 4rem;
      left: 0;
      width: 100%;
      z-index: 10;
      .inner {
        max-width: 1250px;
        flex: 1;
        width: 100%;
        margin: 0 auto;
      }
    }
  }

  .entry-content {
    background: #fff url(../img/svg/bg-produits-topo.svg) 0px 0px no-repeat;
    max-width: 100%;
    overflow: hidden;
    z-index: 15;
    &.has-avis {
      background-position: 0px 400px;

      .bloc-avis-gourmand {
        padding-bottom: 6rem;
        .wrapper {
          position: relative;
          z-index: 20;
          flex-direction: row;
          padding: 0 5vw;
          gap: 100px;
          justify-content: space-evenly;
          width: 100%;
          .carousel {
            flex: 0 0 50%;
            max-width: 50%;
            #productGallery {
              max-width: 100%;
              .slick-slide {
                margin: 0 1rem;
              }

              .galleryItem {
                display: flex !important;
                align-items: center;
                justify-content: center;
                width: 100%;
                max-width: 100%;
                aspect-ratio: 198 / 139;
                img {
                  width: 100%;
                  height: 100%;
                  object-fit: cover;
                  max-width: inherit;
                }
              }
            }
          }

          .carousel + .avis-gourmand {
            max-width: 30%;
            flex: 0 0 30%;
          }
        }
      }
    }

    .content-wrapper {
      .content {
        section {
          div {
            font-family: "Inter", sans-serif;
            font-size: 18px;
            font-size: 1.125rem;
            line-height: 34px;
            color: #000;
            &.topo-content {
              & > ul {
                & > li {
                  position: relative;
                  margin: 2rem 0 2rem;
                  padding-left: 2.75rem;
                  &::before {
                    content: "";
                    background: url(../img/svg/check.svg) no-repeat;
                    display: block;
                    width: 40px;
                    height: 40px;
                    flex: 0 0 40px;
                    position: absolute;
                    left: 0;
                    top: 0;
                  }
                }
              }
            }
          }
        }
      }

      .bonnes-pratiques {
        .bien-etre-animal {
          &::before {
            content: "";
            background-position: center center;
            background-repeat: no-repeat;
            background-size: contain;
            width: 66px;
            height: 66px;
          }
        }
      }

      .infos-utiles {
        font-size: 18px;
        line-height: 30px;
        .wrapper {
          position: relative;
          &::before {
            content: "";
            position: absolute;
            display: block;
            width: 150px;
            height: 60px;
            background: url(../img/svg/decouvrez-feuille.svg) left center
              no-repeat;
            z-index: 0;
            top: -1rem;
            right: -3rem;
          }

          .inner > div:not(:first-child) {
            margin-top: 1.5rem;
          }

          a:not(.button) {
            color: var(--yellow-color) !important;
            text-decoration: none !important;
            &::after {
              height: 1px !important;
              top: 100% !important;
            }
          }

          .contact {
            & > div > p {
              &.mail {
                span {
                  background: var(--yellow-color);
                  color: #000;
                  padding: 0.25rem 1rem;
                  border-radius: 15px;
                  mask-image: url(../img/masks/bouton.svg),
                    linear-gradient(
                      transparent,
                      transparent calc(100%),
                      #2c2121 calc(100%),
                      black
                    );
                  mask-repeat: no-repeat;
                  mask-size: 100% 100%;
                  mask-position: center center;
                }
              }
            }
          }

          p {
            margin: 0.5rem 0 0;
            font-size: 18px;
          }
        }
      }

      #contentImage {
        width: 180%;
        margin: 4rem 0 0;
        display: flex;
        align-items: center;
        justify-content: center;
        mask-image: url(../img/masks/vignette-produit.svg),
          linear-gradient(
            transparent,
            transparent calc(100%),
            #2c2121 calc(100%),
            black
          );
        mask-repeat: no-repeat;
        mask-size: 100% 100%;
        mask-position: center center;
        /* aspect-ratio: 680 / 538; */
        transform: rotate(-3deg);
        img {
          width: 100%;
          height: 100%;
          max-width: inherit;
        }
      }

      .produitSidebar {
        max-width: 450px;
      }
    }
  }

  article.produit.type-produit {
    &.animal-oiseau,
    &.animal-poule {
      .bien-etre-animal {
        &::before {
          background-image: url(../img/svg/pictos/produits/poule.svg);
        }
      }
    }

    &.animal-cochon,
    &.animal-porc {
      .bien-etre-animal {
        &::before {
          background-image: url(../img/svg/pictos/produits/cochon.svg);
        }
      }
    }

    &.animal-vache {
      .bien-etre-animal {
        &::before {
          background-image: url(../img/svg/pictos/produits/vache.svg);
        }
      }
    }

    &.animal-veau {
      .bien-etre-animal {
        &::before {
          background-image: url(../img/svg/pictos/produits/veau.svg);
        }
      }
    }

    &.animal-canard,
    &.animal-oie {
      .bien-etre-animal {
        &::before {
          background-image: url(../img/svg/pictos/produits/canard.svg);
        }
      }
    }

    &.animal-agneau,
    &.animal-brebis,
    &.animal-mouton {
      .bien-etre-animal {
        &::before {
          background-image: url(../img/svg/pictos/produits/mouton-agneau-brebis.svg);
        }
      }
    }

    &.animal-chevre {
      .bien-etre-animal {
        &::before {
          background-image: url(../img/svg/pictos/produits/chevre.svg);
        }
      }
    }

    &.animal-poisson {
      .bien-etre-animal {
        &::before {
          background-image: url(../img/svg/pictos/produits/poisson.svg);
        }
      }
    }

    #routeProduit {
      display: flex;
      align-items: center;
      justify-content: center;
      flex-direction: column;
      background: url(../img/svg/bg-route-produits.svg) 0px 160px no-repeat;
      padding-bottom: 4rem;
      .routes-list {
        display: flex;
        align-items: center;
        justify-content: center;
        position: relative;
        .slick-arrow {
          top: 0 !important;
          margin-top: -7rem;
        }

        .slick-list {
          padding-bottom: 10rem;
        }

        .slick-slide {
          margin: 0 1rem;
          transition: all ease-in-out 0.5s;
          transform: none;
          &.slick-current.slick-active {
            transform: rotate(1deg);
            & + .slick-active {
              transform: translateY(30%) rotate(-2deg);
              & + .slick-active {
                transform: translateY(10%) rotate(-1deg);
              }
            }
          }
        }

        .route-list-item {
          background: #fff;
          padding: 1.5rem;
          border-radius: 15px;
          .routeImage {
            display: flex;
            align-items: center;
            justify-content: center;
            overflow: hidden;
            aspect-ratio: 373/218;
          }

          .routeLocation {
            display: flex;
            align-items: flex-end;
            justify-content: flex-start;
            font-weight: 600;
            margin-top: -1.75rem;
            &::before {
              content: "";
              background: url(../img/svg/marker-cross.svg) center center
                no-repeat;
              width: 53px;
              height: 65px;
            }
          }
        }
      }
    }
  }
}

.page-template-page-calendrier-de-saison {
  .page-header {
    padding-bottom: 7rem;
    h1 {
      display: flex;
      align-items: center;
      text-align: left;
      font-size: 50px;
      line-height: 50px;
      img {
        margin-right: 2rem;
        height: 75px;
        width: auto;
      }

      p {
        font-size: 20px;
      }

      span {
        position: relative;
        &::after {
          content: "";
          background: url(../img/svg/title-shape-yellow.svg) 100% 50% no-repeat;
          width: 120%;
          height: 15px;
          position: absolute;
          top: 100%;
          left: 0rem;
          display: block;
          background-size: 100% auto;
        }
      }
    }
  }

  .color-ete {
    &::before {
      content: "";
      position: absolute;
      width: 100%;
      height: 500px;
      top: 40%;
      left: 0;
      background: url(../img/svg/bg-header-ete.svg) 102% 90% no-repeat;
      z-index: 0;
    }

    #productList {
      background: url(../img/svg/bg-ete.svg) 0px 0px no-repeat;
      position: relative;
      z-index: 10;
    }
  }

  .color-hiver {
    &::before {
      content: "";
      position: absolute;
      width: 100%;
      height: 500px;
      top: 40%;
      left: 0;
      background: url(../img/svg/bg-header-hiver.svg) 102% 90% no-repeat;
      z-index: 0;
    }

    #productList {
      background: url(../img/svg/bg-hiver.svg) 0px 0px no-repeat;
      position: relative;
      z-index: 10;
    }
  }

  .color-printemps {
    &::before {
      content: "";
      position: absolute;
      width: 100%;
      height: 500px;
      top: 40%;
      left: 0;
      background: url(../img/svg/bg-header-printemps.svg) 102% 90% no-repeat;
      z-index: 0;
    }

    #productList {
      background: url(../img/svg/bg-printemps.svg) 0px 0px no-repeat;
      position: relative;
      z-index: 10;
    }
  }

  .color-automne {
    &::before {
      content: "";
      position: absolute;
      width: 100%;
      height: 500px;
      top: 40%;
      left: 0;
      background: url(../img/svg/bg-header-automne.svg) 102% 90% no-repeat;
      z-index: 0;
    }

    #productList {
      background: url(../img/svg/bg-automne.svg) 0px 0px no-repeat;
      position: relative;
      z-index: 10;
    }
  }

  #productTypeList {
    background: none;
    &::before {
      display: none;
    }

    .inner {
      ul {
        max-width: 100%;
        li {
          flex: 0 0 145px;

          a {
            width: auto !important;
            font-size: 14px;
            height: auto;
            aspect-ratio: 1/1;
            line-height: 15px;
            padding: 0 2rem;

            img {
              max-width: 85px;
              max-height: 45px;
              width: auto;
              height: auto;
              margin: 0;
              margin-bottom: 5px;
            }

            &.viandes,
            &.legumes {
              img {
                max-height: 50px;
              }
            }

            &.fruits {
              img {
                max-height: 65px;
              }
            }
            &.boissons {
              img {
                max-height: 85px;
              }
            }
          }
        }
      }
    }
  }

  #pagination {
    margin-bottom: 6rem;
  }

  section.recettes.archives {
    h2 {
      font-family: "DeliciousHandrawn";
      font-size: 111px;
      line-height: 30px;
      margin-bottom: 4rem;
      p {
        font-family: "Inter";
        font-size: 46px;
      }
    }
    #recettesList {
      justify-content: center;
      gap: 1rem;
    }
  }
}

#calendarNav {
  margin: -5rem 0 3rem 0;
  .inner {
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    .saison {
      font-size: 18px;
      text-transform: uppercase;
      background: var(--saison-color);
      mask-image: url(../img/masks/bouton.svg),
        linear-gradient(
          black,
          black calc(100% - 80px),
          transparent calc(100% - 80px),
          transparent
        );
      mask-repeat: no-repeat;
      mask-position: bottom center;
      mask-size: 100% 100%;
      padding: 0.5rem 1rem;
      min-width: 100px;
      text-align: center;
      color: #fff;
      font-weight: 600;
    }

    .monthNav {
      display: flex;
      align-items: center;
      justify-content: center;
      .monthName {
        font-family: "DeliciousHandrawn";
        font-size: 104px;
        line-height: 104px;
      }

      .prevMonth,
      .nextMonth {
        margin: 0 4rem;
        a {
          font-size: 1px;
          color: rgb(0 0 0 / 97%);
          display: flex;
          align-items: center;
          justify-content: center;
          height: 60px;
          width: 66px;
          background: url(../img/svg/month-nav-bg.svg) center center no-repeat;
          background-size: 90% auto;
          &::before {
            content: "";
            background: url(../img/svg/slider-arrow.svg) center center no-repeat;
            display: block;
            height: 30px;
            width: 67px;
            position: relative;
            left: -1rem;
            background-size: 100% auto;
          }
        }
      }

      .prevMonth {
        transform: rotate(180deg);
      }
    }
  }
}

.page-template-page-producteurs {
  .page-header {
    padding-bottom: 6rem;
    .inner {
      h1 {
        line-height: 3rem;
        margin-bottom: 3rem;
        font-size: 80px;
      }
    }
  }

  #totalPost {
    .inner {
      margin: 5rem 0 0;
      justify-content: center;
    }
  }

  #productList {
    background: url(../img/svg/bg-produits-topo.svg) 0px 0px no-repeat;
    #productArchiveResult {
      .product-list-item {
        flex: 0 0 calc(25% - 15px);
      }
    }
    .product-list {
      & .product-list-item {
        & > div {
          & .product-image {
            & a {
              aspect-ratio: 800 / 800;
              picture {
                aspect-ratio: 800 / 800;
              }
            }
          }
        }
      }
    }
  }

  #productTypeList {
    padding: 5rem 0 10rem;
    margin-bottom: 0;
    &::before {
      top: 90px;
    }

    h2 {
      font-size: 70px;
      line-height: 70px;
      margin-bottom: 4rem;
      p {
        font-family: "Inter";
        font-weight: 600;
        font-size: 30px;
        color: #000;
      }
    }
  }

  #videoSlider {
    display: flex;
    overflow: hidden;
    max-width: 100vw;
    justify-content: center;
    align-items: center;
    gap: 2rem;
    margin: 1rem 0 0rem;
    padding: 2rem 0 4rem;
    .slick-list,
    .slick-track {
      min-width: 100%;
    }

    .videoItem {
      display: flex !important;
      align-items: center;
      justify-content: center;
      flex: 0 0 685px;
      & > div {
        position: relative;
        overflow: hidden;
        padding-top: 56.25%;
        transition: all ease-in-out 0.3s;
        width: 100%;
        transform: scale(0.85);
        iframe {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          border: 0;
          transform: scale(0.9);
        }
      }
    }

    .slick-current {
      .videoItem {
        & > div {
          transform: scale(1) rotate(1deg);
        }
      }
    }

    .slick-arrow {
      z-index: 10;
      top: calc(100% - 50px);
      right: calc(25vw + 1.5rem) !important;
    }
  }
}

.page-template-page-quizz {
  #primary {
    transition: all ease-in-out 1s;
    &[data-step="0"],
    &[data-step="6"] {
      background: var(--yellow-color) url(../img/svg/bg-dite-nous.svg) no-repeat
        88vw 0%;

      #stepContainer {
        &::after {
          content: "";
          background: url(../img/svg/macaron.svg) center center no-repeat;
          width: 210px;
          height: 210px;
          position: absolute;
          right: 3rem;
          top: 0;
          transition: all ease-in-out 1s;
          opacity: 1 !important;
        }
      }
    }

    &[data-step="1"] {
      --step-color: var(--blue-color);
      background: var(--step-color);
      .gf_step:not(.gf_step_active) {
        .gf_step_number {
          color: var(--step-color) !important;
        }
      }
    }

    &[data-step="2"] {
      --step-color: var(--green-color);
      background: var(--step-color);
      .gf_step:not(.gf_step_active) {
        .gf_step_number {
          color: var(--step-color) !important;
        }
      }
    }

    &[data-step="3"] {
      --step-color: var(--orange-color);
      background: var(--step-color);
      .gf_step:not(.gf_step_active) {
        .gf_step_number {
          color: var(--step-color) !important;
        }
      }
    }

    &[data-step="4"] {
      --step-color: var(--green-dark-color);
      background: var(--step-color);
      .gf_step:not(.gf_step_active) {
        .gf_step_number {
          color: var(--step-color) !important;
        }
      }
    }

    &[data-step="5"] {
      --step-color: var(--term-fruits-color);
      background: var(--step-color);
      .gf_step:not(.gf_step_active) {
        .gf_step_number {
          color: var(--step-color) !important;
        }
      }
    }

    .page-header {
      #breadcrumb {
        margin-bottom: 0;
      }
    }

    #pageContent {
      #stepContainer {
        display: flex;
        align-items: flex-start;
        position: relative;
        padding: 2rem 15vw 10rem 0;
        &::after {
          opacity: 0;
        }

        .blocImage {
          position: relative;
          display: flex;
          align-items: center;
          justify-content: center;
          flex: 0 0 40%;
          .image {
            transition: all ease-in-out 1s;
            &:not(.active) {
              position: absolute;
              width: 100%;
              height: 100%;
              opacity: 0;
              visibility: hidden;
            }

            img {
              mask-image: url(../img/masks/colonne-page-produit.svg),
                linear-gradient(
                  transparent,
                  transparent calc(100%),
                  #2c2121 calc(100%),
                  black
                );
              mask-repeat: no-repeat;
              mask-size: 100% 100%;
              mask-position: center center;
              width: 100%;
              height: auto;
              position: relative;
              left: -2rem;
            }

            &::after {
              content: "";
              display: block;
              position: absolute;
              right: -3rem;
              bottom: -6rem;
              height: 250px;
              width: 250px;
              background: var(--deco-url) center center no-repeat;
              background-size: contain;
            }

            &.step-0 {
              &::after {
              }
            }

            &.step-1 {
              &::after {
                width: 300px;
                right: -8rem;
                bottom: -4rem;
              }
            }

            &.step-2 {
              &::after {
                right: -5rem;
                bottom: -3rem;
                height: 270px;
              }
            }

            &.step-3 {
              &::after {
                right: -5rem;
                bottom: -1rem;
              }
            }

            &.step-4 {
              &::after {
                width: 200px;
                bottom: -3rem;
              }
            }

            &.step-5 {
              &::after {
              }
            }
          }
        }

        .blocContent {
          position: relative;
          flex: 1;
          .stepOne {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            text-align: center;
            h1 {
              color: var(--blue-dark-color);
              font-size: 50px;
              font-weight: 100;
              margin-bottom: 3rem;
              p {
                color: #000;
                font-family: "Inter";
                font-weight: 600;
                font-size: 30px;
                text-transform: uppercase;
                span {
                  display: block;
                  font-family: "DeliciousHandrawn";
                  font-size: 79px;
                  font-weight: 100;
                  margin-top: 1rem;
                  text-transform: initial;
                  position: relative;
                  /* line-height: 79px; */
                  &::after {
                    content: "";
                    display: block;
                    position: absolute;
                    right: 4rem;
                    top: calc(100% + 1rem);
                    height: 50px;
                    width: 190px;
                    background: url(../img/svg/after-quoi-manger-black.svg)
                      center center no-repeat;
                    background-size: contain;
                  }
                }
              }
            }

            & > div {
              max-width: 75%;
              p {
                font-size: 1.15rem;
                line-height: 2rem;
              }
            }
          }

          .stepForm {
            display: none;
            .gform_wrapper {
              form {
                display: flex;
                flex-direction: column;
                align-items: center;
                justify-content: center;
                text-align: center;
                .gf_page_steps {
                  gap: 15px;
                  .gf_step {
                    display: flex;
                    align-items: center;
                    .gf_step_number {
                      mask-image: url(../img/masks/filtre.svg),
                        linear-gradient(
                          transparent,
                          transparent calc(100%),
                          #2c2121 calc(100%),
                          black
                        );
                      mask-repeat: no-repeat;
                      mask-size: 100% 100%;
                      mask-position: center center;
                      border: none;
                      border-radius: 0;
                      background: #2d2b2b;
                      font-family: "DeliciousHandrawn";
                      color: #000;
                      font-size: 2rem;
                      padding-bottom: 8px;
                      font-weight: 100;
                    }

                    &.gf_step_active {
                      .gf_step_number {
                        transform: scale(1.5);
                        background: var(--yellow-color);
                        color: #000;
                      }
                    }

                    &.gf_step_completed {
                      .gf_step_number {
                        transform: scale(1);
                        background: var(--yellow-color);
                        color: #000 !important;
                        &::after {
                          display: none;
                        }
                      }
                    }

                    &:not(:last-child) .gf_step_label {
                      display: flex;
                      align-items: center;
                      gap: 15px;
                      &::before,
                      &::after {
                        content: "";
                        display: flex;
                        align-items: center;
                        width: 5px;
                        height: 5px;
                        background: #000;
                        border-radius: 50%;
                        opacity: 0.5;
                      }
                    }
                  }
                }

                .gform-body.gform_body {
                  margin: 1rem 0 0;
                  .gform_page_fields {
                    .gfield_label.gform-field-label {
                      color: #fff;
                      font-family: "DeliciousHandrawn";
                      font-size: 50px;
                      margin: 1rem 0 2rem;
                      .gfield_required {
                        display: none;
                      }

                      &:is(legend) {
                        display: block;
                        width: 100%;
                        text-align: center;
                      }
                    }

                    .gfield_radio {
                      flex-direction: row;
                      justify-content: center;
                      gap: 3rem;
                      flex-wrap: wrap;
                      .gchoice {
                        display: flex;
                        align-items: center;
                        .gform-field-label {
                          font-weight: 600;
                          color: #fff;
                          font-size: 26px;
                          white-space: nowrap;
                        }
                      }
                    }
                  }
                }

                .gform_page_footer {
                  display: flex;
                  align-items: center;
                  justify-content: center;
                  margin-top: 4rem;
                  gap: 3rem;
                  .button {
                    display: inline-flex;
                    align-items: center;
                    justify-content: center;
                    font-family: "Inter";
                    font-size: 1.15rem;
                    font-weight: 600;
                    position: relative;
                    color: #fff;
                    mask-image: url(../img/masks/bouton.svg),
                      linear-gradient(
                        transparent,
                        transparent calc(100%),
                        #2c2121 calc(100%),
                        black
                      );
                    mask-repeat: no-repeat;
                    mask-size: 100% 100%;
                    mask-position: center center;
                    background: #a61833 url(../img/svg/arrow-white.svg)
                      calc(100% - 1.25rem) 50% no-repeat;
                    padding: 1rem 3.5rem 1rem 2rem;
                    font-size: 1rem;
                    text-decoration: none !important;
                    border: none !important;
                    transition: all ease-in-out 0.3s;
                    &:hover {
                      padding-right: 4rem;
                      background-color: var(--red-color);
                    }

                    &.gform_previous_button {
                      background: #a61833 url(../img/svg/arrow-white-back.svg)
                        15% 50% no-repeat;
                      padding: 1rem 2rem 1rem 3.5rem;
                      &:hover {
                        padding-left: 4rem;
                        background-color: var(--red-color);
                      }
                    }
                  }
                }
              }
            }
          }

          .disclaimer {
            display: none;
          }
        }
      }

      .quizCTA {
        margin: 4rem auto 2rem;
        display: inline-block;
        &::before {
          left: -50px;
          top: -30px;
        }

        &::after {
          left: calc(100% + 15px);
          top: 89%;
        }
      }
    }

    &:not([data-step="0"]) {
      #pageContent {
        #stepContainer {
          align-items: center;
        }
      }
    }

    &[data-step="2"],
    &[data-step="3"] {
      .gform-body.gform_body {
        .gform_page_fields {
          .gfield_label.gform-field-label {
            color: #000 !important;
          }

          .gfield_radio {
            .gchoice {
              .gform-field-label {
                color: #000 !important;
              }
            }
          }
        }
      }
    }

    &[data-step="4"] {
      .blocImage {
        .image {
          &::after {
          }
        }
      }
    }

    &[data-step="6"] {
      background: transparent url(../img/svg/bg-dite-nous.svg) no-repeat 125% 0%;

      #pageContent {
        #stepContainer {
          padding-left: 0 !important;
          padding-right: 0 !important;
          &::after {
            filter: drop-shadow(0px 0px 6px rgba(0, 0, 0, 0.15));
          }

          .blocImage {
            width: 0;
            overflow: hidden;
            flex: 0 0 0px !important;
            padding-left: 0 !important;
          }

          .blocContent {
            max-width: 950px;
            margin: 0 auto;
            .gf_page_steps {
              display: none;
            }

            #gform_page_2_6 {
              margin-top: -3rem;
              max-width: 750px;
              .gfield--type-section {
                border: none !important;
                .gsection_title {
                  font-size: 50px;
                  font-family: "DeliciousHandrawn";
                  font-weight: 100;
                }
              }

              #field_2_17 {
                max-width: 700px;
                & > a {
                  color: #000;
                  font-weight: 600;
                  text-decoration: 2px underline #999;
                }
              }

              .gfield_label.gform-field-label {
                color: #000;
                font-size: 1rem;
                margin: 0 0 0.5rem 0rem;
                display: none;
              }

              .ginput_container {
                display: flex;
                &.ginput_container_text,
                &.ginput_container_email,
                &.ginput_container_textarea {
                  filter: drop-shadow(1px 1px 2px #00000029);
                }
              }

              input[type="text"],
              input[type="tel"],
              input[type="email"],
              input[type="date"] {
                border: none;
                background-color: transparent;
                box-shadow: none;
                text-align: left;
                padding: 0 1.5rem;
                width: 100%;
              }

              textarea {
                text-align: left;
                padding: 0.5rem 1.5rem;
              }

              ::placeholder {
                color: #000;
                background: transparent;
              }

              input[type="checkbox"] {
                border: 1px solid var(--yellow-color) !important;
                width: 25px !important;
                height: 25px !important;
                clip: inherit !important;
                overflow: visible !important;
                display: block;
                position: relative !important;
                top: -2px;
                & + label {
                  text-align: left;
                }

                &::before {
                  top: -5px;
                  position: relative;
                  color: #000;
                  font-size: 2rem;
                }
              }

              .gfield_checkbox {
                display: flex;
                align-items: flex-start;
                justify-content: flex-start;
              }

              .gform_page_footer {
                display: flex;
                align-items: center;
                justify-content: center;
                .gform_previous_button {
                  display: none !important;
                }
              }

              #field_2_25 {
                .gfield_description.gfield_consent_description {
                  text-align: left;
                  border: none;
                  padding: 0 0rem 0 2.5rem;
                }
              }
            }

            .disclaimer {
              display: block;
              margin: 4rem 0 0;
              font-size: 0.9rem;
              font-size: 12px;
              line-height: 1.25rem;
              p {
                font-size: 12px;
                line-height: 1.25rem;
              }
            }
          }
        }
      }
    }
  }
}

.tax-label {
  .page-header {
    padding: 0 0 8rem;
    h1 {
      img {
        max-width: 250px;
        margin: 0 auto 2rem;
      }

      div {
        color: #000;
        font-size: 60px;
      }
    }

    .entry-content {
      text-align: center;
      .blocCTA {
        width: 100%;
      }
    }
  }

  #productTypeList {
    background: none;
    &::before {
      display: none;
    }

    .inner {
      h2 {
        font-size: 70px;
        margin-bottom: 3rem;
        p {
          font-size: 30px;
          font-family: "Inter";
          font-weight: 600;
          color: #000;
        }
      }

      ul {
        max-width: 100%;
        li {
          flex: 0 0 130px;
          a {
            width: auto !important;
            font-size: 12px;
            height: auto;
            aspect-ratio: 1/1;
            line-height: 15px;
            padding: 0 2rem;
            img {
              max-width: 75px;
              max-height: 35px;
              width: auto;
              height: auto;
              margin: 0;
              margin-bottom: 5px;
            }

            &.viandes,
            &.legumes {
              img {
                max-height: 40px;
              }
            }

            &.boissons,
            &.fruits {
              img {
                max-height: 55px;
              }
            }
          }
        }
      }
    }
  }

  #productList {
    position: relative;
    &::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 250px;
      height: 100%;
      background: url(../img/svg/bg-produits-topo.svg) 0px 0px no-repeat;
      z-index: 0;
    }

    &::after {
      content: "";
      position: absolute;
      bottom: -190px;
      right: 0;
      width: 190px;
      height: 210px;
      background: url(../img/svg/recettes-radis.svg) 100% 0% no-repeat;
      z-index: 0;
    }

    .inner {
      position: relative;
      z-index: 70;
    }
  }

  #pagination {
    margin: 2rem 0 7rem;
  }

  #contentTexte {
    .inner {
      max-width: 750px;
      min-width: initial;
      padding: 1rem 1rem 5rem !important;

      .blocCTA {
        margin: 3rem 0 0;
      }
    }
  }

  #labelList {
    padding: 4rem 0 6rem;
    h2 {
      font-size: 70px;
      margin-bottom: 5rem;
      p {
        font-size: 30px;
        font-family: "Inter";
        font-weight: 600;
        color: #000;
      }
    }

    ul {
      max-width: 100%;
      display: flex;
      li {
        flex: 1;
        a {
          display: block;
          width: auto !important;
          font-size: 12px;
          height: auto;
          aspect-ratio: 1/1;
          line-height: 15px;
          padding: 0 2rem;
          font-weight: 600;
          color: #000;
          text-align: center;
          font-size: 1rem;
          line-height: 1.5rem;
          img {
            width: auto;
            height: 110px;
            margin: 0 auto 1rem;
          }
        }
      }
    }
  }
}

.relatedProducts {
  display: flex;
  gap: 120px 60px;
  justify-content: center;
  flex-wrap: wrap;
  .produitItem {
    flex: 0 0 25%;
    background: var(--yellow-color);
    padding: 1.5rem 2rem;
    border-radius: 15px;
    display: flex;
    flex-direction: column;
    align-items: center;
    transition: all ease-in-out 0.3s;
    &:hover {
      transform: scale(1.2) rotate(1deg);
    }

    .productImage {
      width: 100%;
      position: relative;
      top: -5rem;
      .product-labels {
        position: absolute;
        z-index: 10;
        top: -1.5rem;
        right: -0.5rem;
        display: flex;
        flex-direction: column;
        align-items: flex-end;
        justify-content: flex-end;
        gap: 1rem;
        a {
          aspect-ratio: initial !important;
          img {
            width: 75px !important;
            height: auto !important;
          }
        }
      }

      & > a {
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        aspect-ratio: 800/960;
        width: 90%;
        margin: 0 auto;
        picture {
          display: flex;
          align-items: center;
          justify-content: center;
          overflow: hidden;
          aspect-ratio: 800/960;
          width: 90%;
          margin: 0 auto;
        }
        img {
          width: 100%;
          height: 100%;
          object-fit: cover;
          mask-image: url(../img/masks/vignette-produit.svg),
            linear-gradient(
              transparent,
              transparent calc(100%),
              #2c2121 calc(100%),
              black
            );
          mask-repeat: no-repeat;
          mask-size: 100% 100%;
          mask-position: center center;
        }
      }

      h3 {
        font-family: "DeliciousHandrawn";
        font-size: 30px;
        margin-top: 1rem;
      }
    }

    .productCTA {
      margin-top: -3rem;
    }
  }
}

body.page-template-page-resultat-quizz {
  .product-list {
    flex-wrap: wrap;
    margin-bottom: 3rem;

    & + .container-load-more {
      margin-bottom: 3rem;
    }
  }
}
