/* Custom Styles for Mr.Yarm Organic Farm Landing Page */

@import url('https://fonts.googleapis.com/css2?family=Prompt:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&family=Playfair+Display:ital,wght@0,600;0,700;1,600&display=swap');

:root {
  --font-prompt: 'Prompt', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --font-serif: 'Playfair Display', serif;
  --primary-forest: #1b4332;
  --primary-leaf: #2d6a4f;
  --primary-emerald: #40916c;
  --primary-mint: #52b788;
  --primary-light: #74c69d;
  --accent-gold: #e9c46a;
  --accent-terracotta: #e76f51;
  --bg-cream: #fbfaf5;
  --bg-cream-soft: #f4f1ea;
  --text-dark: #1f2937;
  --text-muted: #4b5563;
}

body {
  font-family: var(--font-prompt);
  background-color: var(--bg-cream);
  color: var(--text-dark);
  scroll-behavior: smooth;
  overflow-x: hidden;
}

.font-serif {
  font-family: var(--font-serif);
}

/* Custom scrollbar */
::-webkit-scrollbar {
  width: 8px;
}
::-webkit-scrollbar-track {
  background: #f1ede4;
}
::-webkit-scrollbar-thumb {
  background: #52b788;
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: #2d6a4f;
}

/* Glassmorphism Header */
.glass-nav {
  background: rgba(251, 250, 245, 0.88);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(45, 106, 79, 0.12);
}

/* Organic Hero Background */
.hero-gradient {
  background: radial-gradient(circle at 80% 20%, rgba(82, 183, 136, 0.18) 0%, transparent 50%),
              radial-gradient(circle at 10% 80%, rgba(233, 196, 106, 0.15) 0%, transparent 40%),
              linear-gradient(180deg, #fbfaf5 0%, #f4f1ea 100%);
}

/* Badge Glow Effect */
.glow-badge {
  box-shadow: 0 0 15px rgba(82, 183, 136, 0.35);
}

/* Card Hover 3D Lift */
.card-hover {
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}
.card-hover:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 30px -10px rgba(27, 67, 50, 0.12), 0 10px 15px -5px rgba(0, 0, 0, 0.04);
}

/* Floating Elements Animation */
@keyframes floatSlow {
  0%, 100% {
    transform: translateY(0px) rotate(0deg);
  }
  50% {
    transform: translateY(-8px) rotate(1.5deg);
  }
}
.animate-float {
  animation: floatSlow 6s ease-in-out infinite;
}

/* Pulse soft */
@keyframes pulseSubtle {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.05);
  }
}
.animate-pulse-subtle {
  animation: pulseSubtle 3s ease-in-out infinite;
}

/* Leaf Pattern Texture */
.pattern-dots {
  background-image: radial-gradient(#2d6a4f 0.75px, transparent 0.75px);
  background-size: 16px 16px;
  opacity: 0.15;
}

/* Tab Active State */
.filter-btn.active {
  background-color: var(--primary-forest);
  color: #ffffff;
  box-shadow: 0 4px 12px rgba(27, 67, 50, 0.25);
}

/* Modal Transitions */
.modal-backdrop {
  background-color: rgba(15, 23, 42, 0.65);
  backdrop-filter: blur(4px);
}

/* Ribbon badge */
.ribbon {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 10;
}

/* Floating Contact Button */
.floating-contact-btn {
  box-shadow: 0 10px 25px -5px rgba(45, 106, 79, 0.4);
}

/* Responsive adjustments */
@media (max-width: 640px) {
  .hero-heading {
    font-size: 2.25rem;
    line-height: 1.25;
  }
}
