/*
 * Why Fundi Module
 * ========================================================================
 * Styles for the "Why Choose Fundi" section, including feature cards
 * and value proposition components with responsive layouts.
 */

/* ==========================================================================
   Base Why Fundi Section Styles
   ========================================================================== */

.why-fundi-sction {
  .why-fundi-card {
    padding: 4.375rem 2.5rem;
    background-color: var(--bs-secondary-100);

    @media (max-width: 61.99875rem) {
      padding: 3.125rem 1.25rem;
    }
  }

  .container {
    .why-fundi-card {
      margin: 3.75rem 0;
      border-radius: 1.25rem;

      @media (max-width: 61.99875rem) {
        margin: 3.125rem 0rem;
      }
    }
  }

  .container-fluid {
    .why-fundi-card {
      border-radius: 0rem;
    }
  }
}

.why-fundi-sction[style*="background-color: transparent"] + .community-section {
  padding-top: 0;
}

/* ==========================================================================
   Why Fundi Title Wrapper
   ========================================================================== */

.why-fundi-title-wrapper {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  max-width: 26.75rem;
  width: 100%;
  flex: 1 1 auto;

  @media (max-width: 61.99875rem) {
    max-width: 100%;
  }
}

.sub-heading {
  max-width: 43.125rem;
  display: flex;
}

.why-fundi-card-without-icons {
  .why-fundi-title-wrapper {
    max-width: 100%;
  }
}

/* ==========================================================================
   Why Fundi Title Tag
   ========================================================================== */

.why-fundi-title-tag {
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.25rem;
  text-transform: uppercase;

  @media (max-width: 61.99875rem) {
    font-size: 1rem;
    line-height: 1.25rem;
  }
}

/* ==========================================================================
   Why Fundi Title
   ========================================================================== */

.why-fundi-title {
  font-weight: 400;
  font-size: 2.5rem;
  line-height: 3.4375rem;

  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    font-weight: 400;
    font-size: 2.5rem;
    line-height: 3.4375rem;
    margin-bottom: 0;
  }

  p {
    margin-bottom: 0;
  }

  span {
    color: var(--bs-primary);
  }

  .font-serif {
    font-size: 3.4375rem;
    line-height: 3.4375rem;
    font-weight: 400;
  }

  @media (max-width: 61.99875rem) {
    font-size: 2.5rem;
    line-height: 3.4375rem;

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
      font-size: 2.5rem;
      line-height: 3.4375rem;
    }

    .font-serif {
      font-size: 3.4375rem;
      line-height: 3.4375rem;
    }
  }
}

/* ==========================================================================
   Why Fundi Description
   ========================================================================== */

.why-fundi-description {
  font-size: 1.5rem;
  line-height: 2.125rem;

  @media (max-width: 61.99875rem) {
    font-size: 1rem;
    line-height: 1.5rem;
  }
}

/* ==========================================================================
   Why Fundi Grid
   ========================================================================== */

.why-fundi-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.5rem;
}

/* Grid layout based on item count */
.why-fundi-grid[data-item-count="1"] {
  grid-template-columns: repeat(1, 1fr);
}

.why-fundi-grid[data-item-count="2"] {
  grid-template-columns: repeat(2, 1fr);
}

.why-fundi-grid[data-item-count="3"] {
  grid-template-columns: repeat(3, 1fr);
}

@media (max-width: 61.99875rem) {
  .why-fundi-grid {
    grid-template-columns: repeat(1, 1fr);
  }

  .why-fundi-grid[data-item-count="1"],
  .why-fundi-grid[data-item-count="2"],
  .why-fundi-grid[data-item-count="3"] {
    grid-template-columns: repeat(1, 1fr);
  }
}

/* ==========================================================================
   Why Fundi Item
   ========================================================================== */

.why-fundi-item {
  display: flex;
  flex-direction: column;

  .icon-wrapper {
    height: 4.375rem;
    margin-bottom: 1.25rem;

    img {
      height: 4.375rem;
      width: auto;
    }
  }

  .item-title {
    font-weight: 700;
    font-size: 1.25rem;
    line-height: 1.875rem;
    margin-bottom: 0.15625rem;
  }

  .item-description {
    font-weight: 400;
    font-size: 1.25rem;
    line-height: 1.875rem;
  }
}

/* Icon Position Alignment */
.why-fundi-item[data-icon-position="center"] {
  align-items: center;
  text-align: center;

  .icon-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
  }
}

.why-fundi-item[data-icon-position="left"] {
  align-items: flex-start;
  text-align: left;

  .icon-wrapper {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
  }
}

.why-fundi-item[data-icon-position="right"] {
  align-items: flex-end;
  text-align: right;

  .icon-wrapper {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
  }
}

/* ==========================================================================
   Why Fundi Card Layouts
   ========================================================================== */

.why-fundi-card-left {
  display: flex;
  gap: 2.5rem;
  justify-content: flex-start;
  text-align: start;
  align-items: center;

  @media (max-width: 61.99875rem) {
    flex-direction: column;
    text-align: left;
    align-items: center;
  }
}

.why-fundi-card-center {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;

  .why-fundi-title-wrapper {
    max-width: 100%;
    text-align: center;
    align-items: center;
    margin-bottom: 2.25rem;
  }

  .why-fundi-grid {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    justify-content: center;
    align-items: stretch;
    column-gap: 2.5rem;
    row-gap: 2.25rem;
    margin: 0 auto;

    .why-fundi-item {
      padding: 1.5rem 0rem;
    }

    @media (min-width: 62rem) {
      grid-template-columns: repeat(2, 1fr);
    }

    @media (min-width: 87.5rem) {
      max-width: 86.5rem;
      grid-template-columns: repeat(5, 1fr);
    }

    @media (min-width: 160rem) {
      max-width: 140rem;
      grid-template-columns: repeat(5, 1fr);
    }
  }

  @media (max-width: 61.99875rem) {
    flex-direction: column;
    text-align: left;
    align-items: center;
  }
}

.why-fundi-card-right {
  justify-content: flex-end;
  flex-direction: row-reverse;
  text-align: end;

  @media (max-width: 61.99875rem) {
    flex-direction: column;
    text-align: left;
    align-items: center;
  }
}

/* ==========================================================================
   Why Fundi Card Column
   ========================================================================== */

.why-fundi-card-column {
  display: flex;
  flex-direction: column;

  .why-fundi-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2.5rem;

    @media (max-width: 61.99875rem) {
      grid-template-columns: repeat(1, 1fr);
    }
  }
}

/* ==========================================================================
   Trusted Partner Container
   ========================================================================== */

.trusted-partner-container {
  max-width: 56.25rem;
  margin: 0 auto;
  text-align: start;

  .trusted-partner-section {
    margin-top: 2.25rem;

    .trusted-partners-slider {
      img {
        max-height: 2.65rem;
        max-width: 12.5rem;
      }
    }
  }
}
