/* Custom styles for Olive & Co. Studios */

/* Smooth scrolling */
html {
  scroll-behavior: smooth;
}

/* Custom dropdown hover effects */
.group:hover .group-hover\:opacity-100 {
  opacity: 1;
}

.group:hover .group-hover\:visible {
  visibility: visible;
}

/* Hero background patterns */
.hero-section {
  background-image: 
    linear-gradient(135deg, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0.6) 100%),
    url('data:image/svg+xml,<svg width="60" height="60" viewBox="0 0 60 60" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><g fill="%23ffffff" fill-opacity="0.05"><circle cx="7" cy="7" r="3"/><circle cx="53" cy="7" r="3"/><circle cx="30" cy="30" r="3"/><circle cx="7" cy="53" r="3"/><circle cx="53" cy="53" r="3"/></g></svg>');
}

/* Button hover effects */
.btn-hover {
  transition: all 0.3s ease;
}

.btn-hover:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 25px rgba(0,0,0,0.15);
}

/* Card hover effects */
.card-hover {
  transition: all 0.3s ease;
}

.card-hover:hover {
  transform: translateY(-5px);
  box-shadow: 0 20px 40px rgba(0,0,0,0.1);
}

/* Navigation scroll effect */
.nav-scrolled {
  background-color: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(10px);
}

/* Loading animation for images */
.img-loading {
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
  background-size: 200% 100%;
  animation: loading 1.5s infinite;
}

@keyframes loading {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}

/* Custom focus states for accessibility */
button:focus,
a:focus,
input:focus,
textarea:focus {
  outline: 2px solid #dc2626;
  outline-offset: 2px;
}

/* Print styles */
@media print {
  .no-print {
    display: none;
  }
}

/* High contrast mode support */
@media (prefers-contrast: high) {
  .hero-section {
    background: #000000;
  }
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}