/* Solutions overview: concise service rows */
html {
  scroll-behavior: auto;
}

.solutions-hero {
  padding-block: clamp(4.5rem, 8vw, 6.5rem);
}

.solutions-hero h1 {
  max-width: 940px;
}

.solutions-offers {
  padding-block: clamp(4.5rem, 8vw, 7rem);
}

.solutions-offers-head {
  margin-bottom: 2rem;
}

.solutions-offers .offer-card {
  min-height: 330px;
}

.solutions-offers .offer-card > p:first-of-type {
  font-size: .98rem;
  line-height: 1.55;
}

.service-story {
  padding: clamp(4.5rem, 8vw, 7rem) 0;
  border-top: 1px solid var(--line);
  scroll-margin-top: 72px;
}

.service-row {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(360px, .9fr);
  gap: clamp(3rem, 9vw, 8rem);
  align-items: center;
}

.service-copy {
  max-width: 700px;
}

.service-copy h2 {
  margin-top: .8rem;
  font-size: clamp(2.25rem, 4.6vw, 3.9rem);
  letter-spacing: -.055em;
}

.service-copy p {
  max-width: 590px;
  margin-top: 1.25rem;
  color: var(--ink-soft);
  font-size: 1rem;
  line-height: 1.6;
}

.service-points {
  margin: 0;
  padding: 0;
  border-top: 1px solid var(--line);
  list-style: none;
}

.service-points li {
  display: grid;
  grid-template-columns: minmax(120px, .7fr) minmax(0, 1.3fr);
  gap: 1.5rem;
  padding: 1.35rem 0;
  border-bottom: 1px solid var(--line);
}

.service-points b {
  color: var(--coral-dark);
  font-size: .88rem;
}

.service-points span {
  color: var(--ink-soft);
  font-size: .9rem;
  line-height: 1.5;
}

.story-link {
  display: inline-flex;
  margin-top: 1.6rem;
  color: var(--coral-dark);
  font-size: .88rem;
  font-weight: 750;
}

.story-link:hover {
  text-decoration: underline;
  text-underline-offset: 3px;
}

.crm-story {
  background: #e8e3d9;
}

.full-story {
  border-color: var(--navy-2);
  background: var(--navy);
  color: #fff;
}

.full-story .eyebrow,
.full-story .service-points b,
.full-story .story-link {
  color: #ef9b8d;
}

.full-story .service-copy p,
.full-story .service-points span {
  color: #cbd9d3;
}

.full-story .service-points,
.full-story .service-points li {
  border-color: rgba(255, 255, 255, .22);
}

@media (max-width: 850px) {
  .service-row {
    grid-template-columns: 1fr;
    gap: 2.5rem;
  }

  .service-copy {
    max-width: 650px;
  }

  .service-points {
    max-width: 650px;
  }
}

@media (max-width: 560px) {
  .solutions-hero,
  .solutions-offers,
  .service-story {
    padding-block: 4rem;
  }

  .solutions-offers .offer-card {
    min-height: 0;
  }

  .service-copy h2 {
    font-size: clamp(2rem, 10vw, 2.8rem);
  }

  .service-row {
    gap: 2rem;
  }

  .service-points li {
    grid-template-columns: 1fr;
    gap: .45rem;
    padding: 1.1rem 0;
  }
}