/* One concise service overview, using the existing Pandora type and blue palette. */
.software-section {
  padding: 44px 0;
  background: var(--pandora-section-light, #f2f6fa);
  color: var(--ink);
}
.software-layout { display: grid; gap: 24px; }
.software-intro .eyebrow {
  margin: 0 0 18px;
  color: #2d6d8c;
}
.software-intro h2 {
  margin: 0;
  font-size: clamp(30px, 3vw, 42px);
  font-weight: 750;
  line-height: 1.22;
  letter-spacing: -.035em;
  text-wrap: balance;
}
.software-intro h2 span { color: var(--pandora-blue-text, #28789f); }
.software-description {
  max-width: 48ch;
  margin: 20px 0 24px;
  color: #526b80;
  font-size: 17px;
  line-height: 1.65;
}
.software-intro .button { max-width: 100%; gap: 10px; }
.software-note { margin: 12px 0 0; color: #526b80; font-size: 14px; }
.software-services {
  display: grid;
  align-content: center;
  margin: 0;
  padding: 0;
  list-style: none;
}
.software-services li {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  gap: 16px;
  padding: 22px 0;
  border-top: 1px solid #bed5e6;
}
.software-services li:last-child { border-bottom: 1px solid #bed5e6; }
.software-icon {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 12px;
  background: #dcecf6;
  color: #28789f;
}
.software-icon .icon { width: 24px; height: 24px; }
.software-services h3 {
  margin: 0 0 7px;
  font-size: clamp(20px, 1.7vw, 24px);
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -.025em;
  text-wrap: pretty;
}
.software-services p { margin: 0; color: #526b80; font-size: 16px; line-height: 1.65; }
@media (min-width: 900px) {
  .software-section { padding: 64px 0; }
  .software-layout {
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: clamp(40px, 6vw, 96px);
  }
}
@media (max-width: 380px) {
  .software-intro .button { width: 100%; padding-inline: 14px; }
  .software-services li { grid-template-columns: 38px minmax(0, 1fr); gap: 12px; }
  .software-icon { width: 38px; height: 38px; border-radius: 10px; }
}
