/* template-parts/section/benefits.php */
/* ----------------------------------------------------------
   BENEFITS SECTION
---------------------------------------------------------- */
.benefits-section {
  padding: var(--section-py) var(--section-px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 64px;
  background: var(--color-white);
}

.benefits-header {
  width: 100%;
  max-width: 846px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 19px;
}

.benefits-title {
  width: 100%;
  max-width: 568px;
  font-size: var(--fs-3xl);
  font-weight: 700;
  line-height: var(--lh-2xl);
  letter-spacing: -0.2px;
  text-align: center;
}

.benefits-title span {
  color: var(--color-primary);
}

.benefits-subtitle {
  width: 100%;
  max-width: 640px;
  font-size: var(--fs-md);
  font-weight: 400;
  line-height: var(--lh-md);
  text-align: center;
  color: var(--color-text-dark);
}

.benefits-subtitle p {
  margin-bottom: 16px;
}

.benefits-subtitle p:last-child {
  margin-bottom: 0;
}

.benefits-cards {
  width: 100%;
  max-width: var(--container-max);
  display: flex;
  flex-wrap: wrap;
  gap: var(--card-gap);
}

.benefit-card {
  width: calc((100% - (2 * var(--card-gap))) / 3);
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.benefit-card img {
  aspect-ratio: 364 / 294;
  object-fit: cover;
}

.benefit-content {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.benefit-card-title {
  font-size: var(--fs-xl);
  line-height: var(--lh-xl);
  font-weight: 700;
  color: var(--color-text-dark);
}

.benefit-card-description {
  font-size: var(--fs-md);
  font-weight: 400;
  line-height: var(--lh-md);
  color: var(--color-bg-dark);
}

.benefit-card-description p {
  margin-bottom: 16px;
}

.benefit-card-description p:last-child {
  margin-bottom: 0;
}

.benefits-footer {
  width: 640px;
  font-size: var(--fs-md);
  font-weight: 400;
  line-height: var(--lh-md);
  text-align: center;
}

.benefits-footer p {
  margin-bottom: 16px;
}

.benefits-footer p:last-child {
  margin-bottom: 0;
}

/* TABLET */
@media (max-width: 1024px) {
  .benefits-section {
    padding: var(--section-py) var(--section-px);
    gap: 48px;
  }
  .benefits-cards {
    width: 100%;
  }
  .benefit-card {
    width: calc((100% - 48px) / 3);
    height: auto;
  }
  .benefit-card img {
    aspect-ratio: 245 / 198;
  }
  .benefit-card-title {
    font-size: var(--fs-md);
    line-height: var(--lh-md);
  }
  .benefit-card-description {
    font-size: var(--fs-sm);
    line-height: var(--lh-sm);
  }
}

/* MOBILE */
@media (max-width: 767.9px) {
  .benefits-section {
    height: auto;
    padding: var(--section-py) var(--section-px);
    gap: 0;
  }
  .benefits-header {
    width: 100%;
    max-width: 380px;
    gap: 24px;
    margin-bottom: 8px;
  }
  .benefits-title {
    width: 100%;
    font-size: var(--fs-xl);
    line-height: var(--lh-xl);
  }
  .benefits-subtitle {
    width: 100%;
    font-size: var(--fs-sm);
    line-height: var(--lh-sm);
	margin-bottom: var(--lh-sm);
  }
  .benefits-cards {
    width: 100%;
    flex-direction: column;
  }
  .benefit-card {
    width: 100%;
    height: auto;
    gap: 24px;
  }
  .benefit-card img {
    width: 100%;
    aspect-ratio: 16 / 10;
    object-fit: cover;
    display: block;
  }
  .benefit-content {
    gap: 8px;
  }
  .benefit-card-title {
    font-size: var(--fs-md);
    line-height: var(--lh-md);
  }
  .benefit-card-description {
    font-size: var(--fs-sm);
    line-height: var(--lh-sm);
  }
  .benefits-footer {
    display: none;
  }
}
