/*
 * Services / What We Do
 *
 * Developed by: Rhyll Neri
 */

.services-overview__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-6);
}

@media (max-width: 1024px) { .services-overview__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px)  { .services-overview__grid { grid-template-columns: 1fr; } }

.service-feature {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(2rem, 6vw, 6rem);
  align-items: center;
  padding: var(--space-9) 0;
  border-bottom: 1px solid var(--color-border);
}

.service-feature:last-child { border-bottom: 0; }

.service-feature--reverse { grid-template-columns: 1fr 1fr; }
.service-feature--reverse .service-feature__media { order: 2; }

@media (max-width: 1024px) {
  .service-feature { grid-template-columns: 1fr; gap: var(--space-7); }
  .service-feature--reverse .service-feature__media { order: 0; }
}

.service-feature__media {
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border-radius: var(--radius-lg);
}

.service-feature__media img { width: 100%; height: 100%; object-fit: cover; }

.service-feature__num {
  display: inline-block;
  font-family: var(--font-display);
  font-size: var(--fs-22);
  color: var(--color-accent);
  font-weight: var(--fw-semibold);
  margin-bottom: var(--space-3);
}

.service-feature__title {
  font-size: clamp(1.5rem, 2vw + 0.5rem, var(--fs-42));
  margin-bottom: var(--space-4);
}

.service-feature__list {
  margin-top: var(--space-5);
  padding: 0;
  list-style: none;
  display: grid;
  gap: var(--space-2);
}

.service-feature__list li {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  color: var(--color-text);
  font-size: var(--fs-15, 0.95rem);
}

.service-feature__list li::before {
  content: '';
  width: 18px;
  height: 18px;
  background: var(--color-accent);
  mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>") no-repeat center / contain;
  -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>") no-repeat center / contain;
  flex-shrink: 0;
  margin-top: 4px;
}

.service-process__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--space-5);
  counter-reset: process;
}

@media (max-width: 1024px) { .service-process__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px)  { .service-process__grid { grid-template-columns: 1fr; } }

.service-process__step {
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  padding: var(--space-7);
  position: relative;
  counter-increment: process;
}

.service-process__step::before {
  content: counter(process, decimal-leading-zero);
  display: block;
  font-family: var(--font-display);
  font-size: var(--fs-22);
  color: var(--color-accent);
  font-weight: var(--fw-semibold);
  margin-bottom: var(--space-3);
}

.service-process__step h4 {
  font-family: var(--font-display);
  font-size: var(--fs-20);
  margin-bottom: var(--space-3);
}

.service-process__step p { color: var(--color-text-muted); margin: 0; }
