/* ============================================================
   iDEALCAR — SERVICES PAGE
   ============================================================ */

.services-hero {
  background: var(--color-gradient); color: #fff;
  text-align: center; padding: 90px 24px 70px;
}
.services-hero h1 { font-size: clamp(2rem, 5vw, 3.2rem); margin-bottom: 16px; }
.services-hero p { max-width: 640px; margin: 0 auto; opacity: 0.9; font-size: 16px; }

.services-grid {
  max-width: var(--max-width); margin: 60px auto; padding: 0 24px;
  display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 26px;
}
.service-card {
  border: 1px solid var(--color-border); border-radius: var(--radius-md);
  padding: 32px 28px; transition: box-shadow var(--transition), transform var(--transition);
  display: flex; flex-direction: column;
}
.service-card:hover { box-shadow: var(--shadow-md); transform: translateY(-4px); }
.service-card h2 { font-size: 20px; font-weight: 700; margin-bottom: 10px; }
.service-card > p { color: var(--color-text-muted); font-size: 14px; margin-bottom: 18px; }
.service-features { margin-bottom: 22px; flex: 1; }
.service-features li {
  font-size: 13.5px; color: var(--color-text); padding: 6px 0 6px 24px; position: relative;
}
.service-features li::before {
  content: '✓'; position: absolute; left: 0; color: var(--color-red); font-weight: 700;
}
/* Get Quote button design lives in base.css (.quote-btn, shared with
   Home & Products) — this just fits it into the card's flex layout. */
.service-card .quote-btn { align-self: flex-start; }

.why-choose-us { background: var(--color-bg-soft); padding: 70px 24px; text-align: center; }
.why-choose-us h2 { font-size: clamp(1.6rem, 3.5vw, 2.3rem); margin-bottom: 40px; }
.benefits-grid {
  max-width: var(--max-width); margin: 0 auto;
  display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 26px;
}
.benefit-item { padding: 10px; }
.benefit-icon {
  width: 72px; height: 72px; border-radius: 50%; margin: 0 auto 14px;
  background: #fff; color: var(--color-red); box-shadow: var(--shadow-sm);
  display: flex; align-items: center; justify-content: center;
}
.benefit-icon svg { width: 32px; height: 32px; }
.benefit-item h3 { font-size: 16px; font-weight: 700; margin-bottom: 6px; }
.benefit-item p { font-size: 13.5px; color: var(--color-text-muted); }

.process-section { max-width: var(--max-width); margin: 70px auto; padding: 0 24px; text-align: center; }
.process-section h2 { font-size: clamp(1.6rem, 3.5vw, 2.3rem); margin-bottom: 44px; }
.process-steps { display: grid; grid-template-columns: repeat(6, 1fr); gap: 18px; }
.process-step { padding: 10px; }
.step-number {
  width: 42px; height: 42px; border-radius: 50%; background: var(--color-gradient); color: #fff;
  display: flex; align-items: center; justify-content: center; font-weight: 700; margin: 0 auto 14px;
}
.process-step h3 { font-size: 14.5px; font-weight: 700; margin-bottom: 6px; }
.process-step p { font-size: 12.5px; color: var(--color-text-muted); }

.cta-section {
  background: var(--color-black); color: #fff; text-align: center; padding: 70px 24px;
}
.cta-section h2 { font-size: clamp(1.6rem, 3.5vw, 2.2rem); margin-bottom: 12px; }
.cta-section p { opacity: 0.75; margin-bottom: 28px; }
.cta-buttons { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }
.cta-button {
  padding: 14px 30px; border-radius: 30px; font-weight: 700; font-size: 14px;
  background: var(--color-gradient); color: #fff;
}
.cta-button.secondary { background: transparent; border: 2px solid #555; }
.cta-button:hover { transform: translateY(-2px); }

@media (max-width: 900px) {
  .process-steps { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 560px) {
  .process-steps { grid-template-columns: repeat(2, 1fr); }
  .services-grid { grid-template-columns: 1fr; }
  .service-card { padding: 24px 20px; }
}
