.mega-menu {
  position: static;

  .mega-menu__content {
    display: flex;
    flex-direction: row;
    background-color: #FFF;
    border-left: 0;
    border-radius: 0;
    border-right: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 100%;

    .mega-menu__list {
      display: flex;
      flex-direction: column;
      list-style: none;
      width: 30%;
      max-width: 390px;
      border-right: none;
      margin-left: 0;
      margin-right: auto;
      padding-top: 3rem;
      padding-right: 0;
      padding-bottom: 3rem;

      > li {
        padding: .5rem 0;
        transition: padding .3s;

        .mega-menu__link {
          color: rgba(var(--color-foreground), 0.75);
          display: block;
          line-height: calc(1 + 0.3 / var(--font-body-scale));
          padding-bottom: 1rem;
          padding-top: 1rem;
          text-decoration: none;
          transition: text-decoration var(--duration-short) ease;
          word-wrap: break-word;

          .title-part:first-child {
            font-weight: normal;
            font-family: "GreyCliffCF-Regular", sans-serif;
            font-size: 1em;
          }

          .title-part:nth-child(2) {
            display: none;
          }
        }

        .mega-menu__link--active .title-part:nth-child(1){
          font-weight: normal;
          font-family: "GreyCliffCF-Regular", sans-serif;
          text-decoration: underline;
          text-decoration-color: var(--color-secondary);
        }

        .mega-menu__link--active:hover {
          text-decoration-thickness: 0.2rem;
        }

        :last-child {
          width: 100%;
          padding-right: 9px;
          margin-top: 0px;
        }

        > .button {
          width: 100%;
          margin-bottom: 20px;
        }
      }
      > li.hover-active {
        background-color: var(--color-primary);
        padding-left: 15px;

        .mega-menu__link {

          text-decoration: none;

          .title-part:nth-child(2) {
            display: block;
            font-size: 13px;
            font-style: italic;
            margin-top: .3em;
          }
        }
        .mega-menu__link:hover {
          text-decoration: none;
        }
      }
    }

    ul.mega-menu__details-wrapper {
      flex: 1;
      list-style: none;
      padding-left: 0;

      li.mega-menu__details {
        flex: 1;
        display: flex;
        flex-direction: row;
        align-items: start;

        ul {
          list-style: none;
          width: 100%;
          display: flex;
          flex-direction: row;
          flex-wrap: wrap;
          align-items: stretch;
          padding: 14px;
          gap: 14px;

          li {
            width: 25%;
            max-width: calc(25% - 11px);
            background-color: #f3f1eb;

            .card-wrapper > a {
              border: 1px solid transparent;

              > * {
                display: none;
              }

              .card {
                display: block;
              }

              .product--after-title-0 {
                display: block;
                margin: 12px 12px 7px 12px;
              }

              .product--after-title-1 {
                display: block;
                font-size: 14px;
                line-height: 1.33;
                margin: 0 12px 12px 12px;
              }

              .product--callout-pill {
                display: inline-block;
                background-color: #4d6245;
                color: white;
                font-size: 11px;
                font-family: GreycliffCF-Bold, sans-serif;
                border-radius: 12px;
                margin-right: 3px;
                margin-bottom: -3px;
                padding-left: 12px;
                padding-right: 12px;
              }
            }

            .mega-menu__link {
              text-decoration: none;
              display: block;
              width: 100%;
              height: 100%;

              .mega-menu--page {
                overflow: hidden;

                .mega-menu--page-title-0 {
                  font-weight: normal;
                  margin: 12px 9px 7px 12px;
                }

                .mega-menu--page-title-1 {
                  font-size: 14px;
                  line-height: 1.33;
                  margin: 0 12px 12px 12px;
                }
              }
            }
          }

          /* View All text link (enhanced mode) */
          li.mega-menu__view-all {
            width: auto;
            max-width: none;
            background-color: transparent;
            display: flex;
            align-items: center;
            align-self: center;
            flex: 1;
            justify-content: center;
          }

          .mega-menu__view-all-link {
            display: inline-flex;
            align-items: center;
            gap: 0.5rem;
            text-decoration: none;
            font-family: "GreycliffCF-Bold", sans-serif;
            font-size: 14px;
            color: rgba(var(--color-foreground), 0.75);
            white-space: nowrap;
            padding: 1rem 0;
          }

          .mega-menu__view-all-link .mega-menu__view-all-text {
            text-decoration: underline;
            text-underline-offset: 3px;
          }

          .mega-menu__view-all-link:hover {
            color: rgb(var(--color-foreground));
          }

          .mega-menu__view-all-link:hover .mega-menu__view-all-text {
            text-decoration-thickness: 2px;
          }

          /* Collection cards (enhanced mode) */
          li.mega-menu__collection-card {
            background-color: #f3f1eb;
            overflow: hidden;
          }

          li.mega-menu__collection-card a {
            text-decoration: none;
            display: block;
            color: inherit;
          }

          li.mega-menu__collection-card .media {
            background-color: transparent;
          }

          li.mega-menu__collection-card .mega-menu__collection-card-title {
            font-weight: normal;
            margin: 12px 9px 7px 12px;
          }

          li.mega-menu__collection-card .mega-menu__collection-card-desc {
            font-size: 13px;
            line-height: 1.33;
            margin: 0 12px 12px 12px;
            color: rgba(var(--color-foreground), 0.75);
          }
        }
      }
    }
  }
}

.mega-menu--traits {
  display: flex;
  justify-content: space-evenly;

  .mega-menu--trait {
    text-align: center;
    font-size: 13px;
    line-height: 15px;
    max-width: 100px;

    .mega-menu--trait--img {
      display: block;
      margin: 0 auto 10px;
    }
  }
}

@media (max-width: 1399px) {
  .mega-menu__content .okeReviews > div {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (min-width: 1279px) {
  .mega-menu .mega-menu__content ul.mega-menu__details-wrapper li.mega-menu__details ul {
    padding-left: 1vw;
  }
}
@media (min-width: 1440px) {
  .mega-menu .mega-menu__content ul.mega-menu__details-wrapper li.mega-menu__details ul {
    padding-left: 1vw;
  }
}
@media (min-width: 1680px) {
  .mega-menu .mega-menu__content ul.mega-menu__details-wrapper li.mega-menu__details ul {
    padding-left: 1vw;
  }
}
