.member-card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: end;
  gap: 1rem;
  padding: 2rem;
  background-color: var(--color-green);
  border-radius: 8em 0 8em 0;
  overflow: hidden;
  min-height: 23rem;
  transition: all 0.3s;

  .member-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: all 0.3s;

    img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      pointer-events: none;
      user-select: none;
    }
  }

  .member-info {
    width: 100%;
    position: relative;
    opacity: 0;
    translate: 0 1rem;
    transition: all 0.3s;

    .member-name {
      font-size: var(--text-2xl);
      letter-spacing: 0;
      text-transform: capitalize;
      color: var(--color-white);
      padding-right: 2.5rem;
      text-wrap: pretty;
    }

    .member-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 0.5em;
      font-size: 1rem;
      font-weight: 400;
      text-transform: uppercase;
      color: var(--color-white);

      .btn-text {
        letter-spacing: 0.05em;
      }

      .btn-icon {
        width: 1.25em;
        height: 1.25em;
        display: flex;
        align-items: center;
        justify-content: center;
        rotate: -45deg;
        color: var(--color-white);
        transition: all 0.5s;
      }
    }
  }

  .overlay-link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
  }

  &:hover {
    background-color: var(--color-green);
    .member-image {
      opacity: 0.25;
    }
    .member-info {
      opacity: 1;
      translate: 0 0;

      .member-btn {
        .btn-icon {
          rotate: 0deg;
        }
      }
    }
  }
}

.member-modal {
  --bs-modal-width: 56rem;
  .modal-header,
  .modal-body {
    padding: 1.5rem;
  }
  .modal-body {
    padding-top: 0;
  }
  .modal-header {
    border-bottom: none;
  }
  .modal-content {
    background-color: #F9F9F5;
  }

  @media (width >= 576px) {
    .modal-header,
    .modal-body {
      padding: 2rem;
    }
    .modal-body {
      padding-top: 0;
    }
  }
}