.hero-section {
  background: url('/assets/img/pexels-photo-6474312.jpeg') center center / cover no-repeat;
  min-height: 100vh;
}

.hero-overlay {
  background: linear-gradient(135deg, rgba(15,27,45,0.92) 0%, rgba(13,110,253,0.3) 100%);
  z-index: 0;
}

.service-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  cursor: default;
}

.service-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 12px 40px rgba(13,110,253,0.15) !important;
}

.service-icon-wrap {
  width: 80px;
  height: 80px;
  background: rgba(13,110,253,0.08);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.3s ease;
}

.service-card:hover .service-icon-wrap {
  background: rgba(13,110,253,0.15);
}

.process-number {
  width: 64px;
  height: 64px;
  background: var(--pv-gradient);
  color: #fff;
  font-size: 1.5rem;
  font-weight: 800;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 6px 20px rgba(13,110,253,0.35);
  transition: transform 0.3s ease;
}

.process-step:hover .process-number {
  transform: scale(1.1);
}

.testimonial-avatar {
  width: 44px;
  height: 44px;
  background: var(--pv-gradient);
  color: #fff;
  font-weight: 700;
  font-size: 0.85rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cta-section {
  background: linear-gradient(180deg, #ffffff 0%, #e8f0fe 100%);
}

.cta-section .form-control, .cta-section .form-select {
  border: 2px solid #e9ecef;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.cta-section .form-control:focus, .cta-section .form-select:focus {
  border-color: #0d6efd;
  box-shadow: 0 0 0 0.2rem rgba(13,110,253,0.15);
}

.btn-primary {
  background: var(--pv-gradient);
  border: none;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(13,110,253,0.4);
  background: linear-gradient(135deg, #0a58ca 0%, #084298 100%);
}

footer a:hover {
  color: #0d6efd !important;
}

.z-1 {
  z-index: 1;
}

@media (max-width: 767.98px) {
  .hero-section h1 {
    font-size: 2.2rem;
  }
}

@media (max-width: 767.98px) {
  .display-5 {
    font-size: 1.8rem;
  }
}

@media (max-width: 767.98px) {
  .display-6 {
    font-size: 1.5rem;
  }
}

