/* ===== Services Page ===== */
.page-hero-sub { color:rgba(255,255,255,.75); font-size:1.05rem; }

/* Alternating bg */
.service-section { background:#fff; }
.service-section.alt { background:var(--c-bg-soft); }

/* Image wrap */
.srv-img-wrap {
  border-radius:var(--r-lg);
  overflow:hidden;
  box-shadow:var(--shadow-lg);
}
.srv-img-wrap img {
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  transition:transform .6s ease;
}
.srv-img-wrap:hover img { transform:scale(1.04); }

/* Service number */
.srv-num {
  font-size:4rem;
  font-weight:900;
  color:var(--c-primary-50);
  line-height:1;
  margin-bottom:-.5rem;
  font-variant-numeric:tabular-nums;
}
.srv-num.accent-num { color:var(--c-accent-50); }

/* Feature list */
.srv-features {
  list-style:none;
  margin:1rem 0 0;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:.4rem 1rem;
}
.srv-features li {
  display:flex;
  align-items:center;
  gap:.5rem;
  font-weight:600;
  font-size:.9rem;
  color:var(--c-text);
}
.srv-features i {
  color:var(--c-primary);
  background:var(--c-primary-50);
  width:22px; height:22px;
  border-radius:50%;
  display:inline-flex; align-items:center; justify-content:center;
  font-size:.65rem;
  flex-shrink:0;
}

@media(max-width:767px){
  .srv-features { grid-template-columns:1fr; }
  .srv-num { font-size:2.8rem; }
}
