#why .card__num,
#why .card__title {
  line-height: normal;
}

#why .section__title.section__title--lg {
  margin-bottom: clamp(36px, 5vw, 56px);
}

#why {
  padding-bottom: clamp(64px, 8vw, 120px);
}

#why .section__title.section__title--lg {
  margin-top: 20px;
}

#why .cards--why .card {
  transition: opacity .6s var(--ease), transform .3s var(--ease), box-shadow .3s var(--ease);
}

#trust .trust__no,
#trust .trust__title,
#trust .trust__text,
#trust .trust__link {
  line-height: normal;
}

#trust {
  padding-bottom: clamp(64px, 8vw, 110px);
}

#trust .section__title.section__title--lg {
  margin-top: 20px;
}

@keyframes why-reveal-in {
  from { opacity: 0; transform: translateY(24px); }
  to   { opacity: 1; transform: translateY(0); }
}

#why .cards--why .card.reveal.is-visible,
#trust .trust__row.reveal.is-visible {
  animation: why-reveal-in .6s ease backwards;
}
#why .cards--why .card:nth-child(3n+2).reveal.is-visible { animation-delay: 70ms; }
#why .cards--why .card:nth-child(3n+3).reveal.is-visible { animation-delay: 140ms; }
#trust .trust__row:nth-child(2).reveal.is-visible { animation-delay: 60ms; }
#trust .trust__row:nth-child(3).reveal.is-visible { animation-delay: 120ms; }
@media (prefers-reduced-motion: reduce) {
  #why .cards--why .card.reveal.is-visible,
  #trust .trust__row.reveal.is-visible { animation: none; }
}

.why__lead { display: none; }

.swipe-dots { display: none; }

@media (max-width: 767px) {
  #why { padding: 64px 0; }
  #why .section__eyebrow { margin: 0; font-size: 11px; line-height: normal; }

  #why .section__title.why__title { margin: 18px 0 0; font-size: 30px; line-height: 1.1; }
  .why__lead {
    display: block;
    margin: 14px 0 0;
    font-size: 13.5px;
    line-height: 1.6;
    color: var(--text-soft);
  }

  .cards--why {
    display: flex;
    gap: 12px;
    margin-top: 14px;
    margin-bottom: -10px;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    scrollbar-width: none;

    padding-block: 10px;
    margin-inline: calc(-1 * clamp(20px, 4vw, 48px));
    padding-inline: clamp(20px, 4vw, 48px);
  }
  .cards--why::-webkit-scrollbar { display: none; }

  .cards--why .card {
    flex: none;
    width: 314px;
    border-radius: 18px;
    padding: 22px;
  }
  .cards--why .card.reveal { opacity: 1; transform: none; }
  #why .cards--why .card.reveal.is-visible { animation: none; }
  .cards--why .card__num { margin-bottom: 14px; line-height: normal; }
  .cards--why .card__title { margin-bottom: 9px; font-size: 16px; line-height: normal; }
  .cards--why .card__text { font-size: 13.5px; line-height: 1.65; }

  .swipe-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    height: 5px;
    margin-top: 18px;
  }
  .swipe-dots i {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: rgba(44, 36, 32, .25);
    transition: width .25s var(--ease), background-color .25s var(--ease);
  }
  .swipe-dots i.is-active {
    width: 16px;
    border-radius: 999px;
    background: var(--accent-gold);
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  #why { padding: 72px 0; }
  #why .section__eyebrow { font-size: 11.5px; line-height: normal; }
  .section__title.why__title { margin: 20px 0 40px; font-size: 38px; line-height: 1.1; }
  .cards--why { grid-template-columns: 1fr 1fr; gap: 14px; }
  .cards--why .card { border-radius: 20px; padding: 26px; }
}

@media (max-width: 767px) {
  #trust .section__eyebrow { margin: 0; font-size: 11px; line-height: normal; }
  #trust .section__title.section__title--lg { margin: 18px 0 24px; }

  #trust .trust__row {
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 7px;
    padding: 18px 2px;
  }
  #trust .trust__main { gap: 7px 12px; }
  #trust .trust__no { font-size: 12px; }
  #trust .trust__title { font-size: 16px; }
  #trust .trust__text { flex-basis: 100%; font-size: 13px; line-height: 1.55; }
}

@media (min-width: 768px) and (max-width: 1023px) {
  #trust { padding: 72px 0; }
  #trust .section__eyebrow { font-size: 11.5px; line-height: normal; }
  #trust .section__title.section__title--lg { margin: 20px 0 24px; font-size: 38px; }
  #trust .trust__row { gap: 24px; padding: 24px 4px; }
  #trust .trust__main { gap: 20px; }
  #trust .trust__no { font-size: 13px; }
  #trust .trust__title { font-size: 19px; }
  #trust .trust__text { font-size: 13.5px; line-height: normal; }
}
