/* =========================================================
   CENTRAL TAXI AIRPORT LIMA — servicios.css (solo página Servicios)
   ========================================================= */

/* Tipos de servicio */
.service-card {
  background: #f7f7f5;
  border-radius: 1rem;
  padding: 1.75rem 1.5rem;
  height: 100%;
  border: 2px solid var(--color-gold);
  transition: transform .3s var(--ease-out), box-shadow .3s var(--ease-out);
}
@media (hover: hover) and (pointer: fine) {
  .service-card:hover { transform: translateY(-6px); box-shadow: 0 14px 30px rgba(0,0,0,.08); }
}
.service-icon { font-size: 2rem; margin-bottom: 1rem; line-height: 1; }
.service-card h5 { font-family: var(--font-display); font-weight: 700; color: var(--color-dark); margin-bottom: .5rem; }
.service-card p { color: #666; font-size: .9rem; margin-bottom: 1.25rem; }
.btn-consult {
  display: inline-flex;
  align-items: center;
  gap: .3rem;
  border: 1px solid var(--color-gold);
  border-radius: 999px;
  padding: .5rem 1.2rem;
  font-size: .85rem;
  font-weight: 600;
  color: var(--color-dark);
  background: transparent;
  transition: background-color .2s var(--ease-out), color .2s var(--ease-out);
}
.btn-consult:hover { background-color: var(--color-gold); color: var(--color-black); }

.step-item { text-align: center; position: relative; padding: 1rem; }
.step-number {
  width: 56px;
  height: 56px;
  margin: 0 auto 1rem;
  border-radius: 50%;
  border: 2px solid var(--color-gold);
  color: var(--color-gold);
  font-family: var(--font-display);
  font-weight: 800;
  font-size: 1.3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color .25s var(--ease-out), color .25s var(--ease-out);
}
@media (hover: hover) and (pointer: fine) {
  .step-item:hover .step-number { background-color: var(--color-gold); color: var(--color-black); }
}
.step-item h5 { font-family: var(--font-display); font-weight: 700; }
.step-item p { color: #666; font-size: .9rem; }

/* Fotos de conductores con su vehículo */
.driver-photo {
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  border-radius: 1rem;
  border: 3px solid transparent;
  transition: border-color .3s var(--ease-out), transform .3s var(--ease-out);
}
@media (hover: hover) and (pointer: fine) {
  .driver-photo:hover { border-color: var(--color-gold); transform: scale(1.02); }
}
.driver-name {
  font-family: var(--font-display);
  font-weight: 700;
  color: var(--color-white);
  margin-top: .75rem;
  margin-bottom: 0;
}

/* Línea conectora entre pasos (desktop) */
@media (min-width: 992px) {
  .steps-row { position: relative; }
  .step-item:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 28px;
    left: 60%;
    width: 80%;
    height: 2px;
    background: repeating-linear-gradient(90deg, rgba(201,162,39,.4) 0 8px, transparent 8px 16px);
  }
}
