@media (width < 40rem) {
  .benefit-section {
    padding-top: 32px;
    padding-bottom: 32px;
  }

  .benefit-section h2 {
    font-size: 28px;
    text-align: center;
  }

  /* Image stack */
  .image-stack {
    margin-top: 20px;
    gap: 12px;
  }

  .main-img {
    border-radius: 14px;
    margin-bottom: 12px;
  }

  .small-img-1,
  .small-img-2 {
    width: 100%;
  }

  .image-grid .img-2,
  .image-grid .img-3 {
    position: static;
    width: 100%;
    margin-top: 0;
  }

  /* Benefit card */
  .benefit-card {
    flex-direction: column;
    max-width: 100%;
    margin: 20px auto;
  }

  .benefit-card-header {
    width: 100%;
    border-radius: 12px 12px 0 0;
    margin-top: 0;
    padding: 16px;
  }

  .benefit-card-body {
    padding: 16px;
  }

  .benefit-card-body p {
    font-size: 0.8rem;
    line-height: 2;
    margin-left: 0;
  }
}
@media (width >= 40rem) {
  .benefit-section h2 {
    font-size: 34px;
  }

  .benefit-card {
    max-width: 380px;
  }
}
@media (width >= 48rem) {
  .benefit-section {
    padding-top: 48px;
    padding-bottom: 48px;
  }

  .benefit-section h2 {
    font-size: 38px;
  }

  .benefit-card {
    max-width: 420px;
  }
}
@media (width >= 64rem) {
  .benefit-section {
    padding-top: 60px;
    padding-bottom: 60px;
  }

  .benefit-section h2 {
    font-size: 45px;
  }

  .benefit-card {
    flex-direction: flex;
    max-width: 450px;
    margin: 30px auto;
  }

  .benefit-card-header {
    width: 150px;
    border-radius: 12px 0 0 12px;
    margin-top: 30px;
  }

  .benefit-card-body p {
    font-size: 0.85rem;
    line-height: 2.5;
    margin-left: 10px;
  }
}
@media (width >= 80rem) {
  .benefit-card {
    max-width: 480px;
  }
}

@media (width >= 96rem) {
  .benefit-section {
    max-width: 1400px;
    margin-left: auto;
    margin-right: auto;
  }
}
