/* Custom styles for Omni Plumbing Services */

/* Smooth scroll offset for fixed navbar */
section[id] {
  scroll-margin-top: 80px;
}

/* Custom scrollbar */
::-webkit-scrollbar {
  width: 10px;
}
::-webkit-scrollbar-track {
  background: #fefdfb;
}
::-webkit-scrollbar-thumb {
  background: #9c2537;
  border-radius: 5px;
}
::-webkit-scrollbar-thumb:hover {
  background: #811f2e;
}

/* Selection color */
::selection {
  background: #fad0d9;
  color: #3b0a10;
}

/* Subtle pattern for hero section */
.pattern-bg {
  background-image: 
    radial-gradient(circle at 20% 80%, rgba(250, 208, 217, 0.4) 0%, transparent 50%),
    radial-gradient(circle at 80% 20%, rgba(250, 221, 212, 0.4) 0%, transparent 50%),
    radial-gradient(circle at 50% 50%, rgba(253, 242, 244, 0.6) 0%, transparent 70%);
}

/* Animation for stat cards */
@keyframes float {
  0%, 100% { transform: translateY(0px); }
  50% { transform: translateY(-10px); }
}

.stat-card:nth-child(1) { animation: float 4s ease-in-out infinite; }
.stat-card:nth-child(2) { animation: float 4s ease-in-out infinite 0.5s; }
.stat-card:nth-child(3) { animation: float 4s ease-in-out infinite 1s; }
.stat-card:nth-child(4) { animation: float 4s ease-in-out infinite 1.5s; }

/* Button focus states */
.btn-primary:focus, .btn-secondary:focus {
  outline: 3px solid #fad0d9;
  outline-offset: 2px;
}

/* Input focus styles */
input:focus, textarea:focus {
  box-shadow: 0 0 0 3px rgba(212, 69, 92, 0.1);
}

/* Service card hover effect */
.service-card {
  position: relative;
  overflow: hidden;
}
.service-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(135deg, rgba(156, 37, 55, 0.02) 0%, rgba(250, 208, 217, 0.02) 100%);
  opacity: 0;
  transition: opacity 0.3s ease;
}
.service-card:hover::before {
  opacity: 1;
}

/* Decorative elements */
.decoration-circle {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
}

/* Print styles */
@media print {
  nav, .btn-primary, .btn-secondary {
    display: none;
  }
  body {
    color: #000;
    background: #fff;
  }
}
