/* Ultra Modern CSS with Cutting-Edge Design Features */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  -webkit-tap-highlight-color: transparent;
}

:root {
  /* Modern Color System */
  --primary-color: #6366f1;
  --primary-hover: #4f46e5;
  --secondary-color: #14b8a6;
  --accent-color: #f43f5e;
  --success-color: #10b981;
  --warning-color: #f59e0b;
  --error-color: #ef4444;
  --text-primary: #0f172a;
  --text-secondary: #475569;
  --text-tertiary: #94a3b8;
  --bg-primary: #f8fafc;
  --bg-secondary: #ffffff;
  --bg-tertiary: #f1f5f9;
  
  /* 3D Effects */
  --depth-1: 20px;
  --depth-2: 40px;
  --depth-3: 60px;
  --perspective: 1000px;
  --rotate-x: 15deg;
  --rotate-y: 15deg;
  
  /* Advanced Shadows */
  --shadow-sm: 0 1px 3px rgba(0,0,0,0.1);
  --shadow-md: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.05);
  --shadow-lg: 0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.05);
  --shadow-xl: 0 20px 25px -5px rgba(0,0,0,0.1), 0 10px 10px -5px rgba(0,0,0,0.04);
  --shadow-inner: inset 0 2px 4px 0 rgba(0,0,0,0.05);
  --shadow-neumorph: 12px 12px 24px #d1d9e6, -12px -12px 24px #ffffff;
  --shadow-neumorph-inset: inset 6px 6px 12px #d1d9e6, inset -6px -6px 12px #ffffff;
  --shadow-3d: 0 var(--depth-1) var(--depth-2) rgba(0,0,0,0.2);
  
  /* Modern Gradients */
  --gradient-primary: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
  --gradient-accent: linear-gradient(135deg, var(--accent-color), var(--warning-color));
  --gradient-conic: conic-gradient(from 225deg, var(--primary-color), var(--secondary-color), var(--accent-color));
  --gradient-shine: linear-gradient(45deg, transparent 25%, rgba(255,255,255,0.3) 50%, transparent 75%);
  --gradient-rainbow: linear-gradient(to right, #ff0000, #ff8000, #ffff00, #80ff00, #00ff00, #00ff80, #00ffff, #0080ff, #0000ff, #8000ff, #ff00ff, #ff0080);
  --gradient-mesh: radial-gradient(at 40% 20%, hsla(228,100%,74%,1) 0px, transparent 50%),
                  radial-gradient(at 80% 0%, hsla(189,100%,56%,1) 0px, transparent 50%),
                  radial-gradient(at 0% 50%, hsla(355,100%,93%,1) 0px, transparent 50%),
                  radial-gradient(at 80% 50%, hsla(340,100%,76%,1) 0px, transparent 50%),
                  radial-gradient(at 0% 100%, hsla(22,100%,77%,1) 0px, transparent 50%),
                  radial-gradient(at 80% 100%, hsla(242,100%,70%,1) 0px, transparent 50%),
                  radial-gradient(at 0% 0%, hsla(343,100%,76%,1) 0px, transparent 50%);

  /* Animations */
  --transition-bounce: cubic-bezier(0.68, -0.55, 0.265, 1.55);
  --transition-smooth: cubic-bezier(0.4, 0, 0.2, 1);
  --transition-spring: cubic-bezier(0.175, 0.885, 0.32, 1.275);
  --transition-fast: 150ms var(--transition-smooth);
  --transition-normal: 300ms var(--transition-smooth);
  --transition-slow: 500ms var(--transition-smooth);
  --transition-bounce-normal: 300ms var(--transition-bounce);
  
  /* Border Radius */
  --radius-sm: 0.375rem;
  --radius-md: 0.5rem;
  --radius-lg: 1rem;
  --radius-xl: 1.5rem;
  --radius-2xl: 2rem;
  --radius-full: 9999px;
}

/* Modern Animations */
@keyframes float {
  0%, 100% { -webkit-transform: translateY(0); transform: translateY(0); }
  50% { -webkit-transform: translateY(-10px); transform: translateY(-10px); }
}

@keyframes pulse {
  0% { transform: scale(1); }
  50% { transform: scale(1.05); }
  100% { transform: scale(1); }
}

@keyframes shimmer {
  0% { background-position: -1000px 0; }
  100% { background-position: 1000px 0; }
}

@keyframes rotate {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

/* Enhanced Base Styles */
body {
  font-family: 'Inter', system-ui, -apple-system, sans-serif;
  line-height: 1.6;
  background-color: var(--bg-primary);
  color: var(--text-primary);
  padding: 20px;
  overflow-x: hidden;
}

/* Modern Card Styles */
.card {
  background: var(--bg-secondary);
  border-radius: var(--radius-xl);
  padding: 24px;
  margin-bottom: 24px;
  position: relative;
  isolation: isolate;
  transition: all var(--transition-normal);
}

.card-neumorph {
  background: var(--bg-primary);
  box-shadow: var(--shadow-neumorph);
  border: none;
}

.card-glass {
  background: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(10px) saturate(180%);
  -webkit-backdrop-filter: blur(10px) saturate(180%);
  border: 1px solid rgba(255, 255, 255, 0.3);
}

.card-gradient {
  background: var(--gradient-mesh);
  color: white;
}

/* Modern Button Styles */
.btn {
  padding: 12px 24px;
  border-radius: var(--radius-full);
  font-weight: 500;
  transition: all var(--transition-bounce-normal);
  position: relative;
  overflow: hidden;
  z-index: 1;
}

.btn-primary {
  background: var(--gradient-primary);
  color: white;
  box-shadow: var(--shadow-md);
}

.btn-neumorph {
  background: var(--bg-primary);
  box-shadow: var(--shadow-neumorph);
  color: var(--text-primary);
}

.btn-neumorph:active {
  box-shadow: var(--shadow-neumorph-inset);
  transform: scale(0.98);
}

.btn-glass {
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: var(--text-primary);
}

/* Modern Form Elements */
.input-modern {
  background: var(--bg-tertiary);
  border: 2px solid transparent;
  border-radius: var(--radius-lg);
  padding: 12px 20px;
  transition: all var(--transition-normal);
  box-shadow: var(--shadow-inner);
}

.input-modern:focus {
  border-color: var(--primary-color);
  background: var(--bg-secondary);
  box-shadow: var(--shadow-md);
}

.input-neumorph {
  background: var(--bg-primary);
  box-shadow: var(--shadow-neumorph-inset);
  border: none;
}

/* Advanced Utility Classes */
.gradient-text {
  background: var(--gradient-primary);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
}

.gradient-border {
  border: 2px solid transparent;
  background-image: linear-gradient(var(--bg-secondary), var(--bg-secondary)),
                    var(--gradient-primary);
  background-origin: border-box;
  -webkit-background-origin: border-box;
  background-clip: padding-box, border-box;
}

.animate-float {
  animation: float 3s ease-in-out infinite;
}

.animate-pulse {
  animation: pulse 2s var(--transition-bounce) infinite;
}

.animate-shimmer {
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
  background-size: 1000px 100%;
  animation: shimmer 2s infinite;
}

.animate-rotate {
  animation: rotate 20s linear infinite;
}

.hover-lift {
  transition: transform var(--transition-bounce-normal);
}

.hover-lift:hover {
  transform: translateY(-8px);
}

/* Modern Layout Components */
.grid-modern {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 24px;
}

.flex-center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

/* Dark Mode Enhancements */
@media (prefers-color-scheme: dark) {
  :root {
    --bg-primary: #0f172a;
    --bg-secondary: #1e293b;
    --bg-tertiary: #334155;
    --text-primary: #f8fafc;
    --text-secondary: #cbd5e1;
    --text-tertiary: #94a3b8;
    --shadow-neumorph: 12px 12px 24px #0c1220, -12px -12px 24px #121e34;
    --shadow-neumorph-inset: inset 6px 6px 12px #0c1220, inset -6px -6px 12px #121e34;
    --shadow-3d: 0 var(--depth-1) var(--depth-2) rgba(0,0,0,0.4);
  }

  .card-glass {
    background: rgba(30, 41, 59, 0.7);
    border-color: rgba(255, 255, 255, 0.1);
  }

  .btn-glass {
    background: rgba(30, 41, 59, 0.3);
  }

  .input-modern {
    background: var(--bg-tertiary);
  }
}

/* Print Styles */
@media print {
  .no-print {
    display: none;
  }
  
  body {
    background: white;
    color: black;
  }
}

/* Enhanced Animations */
@keyframes tilt {
  0%, 100% { transform: rotate3d(1, 1, 1, 0deg); }
  25% { transform: rotate3d(1, 1, 1, 5deg); }
  75% { transform: rotate3d(1, 1, 1, -5deg); }
}

@keyframes float-3d {
  0%, 100% { transform: translateZ(0) translateY(0); }
  50% { transform: translateZ(20px) translateY(-20px); }
}

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

@keyframes rainbow-text {
  0% { background-position: 0% 50%; }
  100% { background-position: 100% 50%; }
}

@keyframes morph {
  0%, 100% { border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%; }
  50% { border-radius: 30% 60% 70% 40% / 50% 60% 30% 60%; }
}

/* Modern Card Variants */
.card-3d {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  -webkit-perspective: var(--perspective);
  perspective: var(--perspective);
  transition: all 0.6s var(--transition-spring);
}

.card-3d:hover {
  -webkit-transform: 
    rotateX(var(--rotate-x))
    rotateY(var(--rotate-y))
    translateZ(var(--depth-1));
  -ms-transform: 
    rotateX(var(--rotate-x))
    rotateY(var(--rotate-y))
    translateZ(var(--depth-1));
  transform: 
    rotateX(var(--rotate-x))
    rotateY(var(--rotate-y))
    translateZ(var(--depth-1));
  box-shadow: var(--shadow-3d);
}

.card-morph {
  animation: morph 8s ease-in-out infinite;
  border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%;
  transition: all 1s ease-in-out;
  background: var(--gradient-primary);
}

.card-rainbow {
  background: var(--gradient-rainbow);
  background-size: 200% 200%;
  animation: rainbow-text 3s linear infinite;
}

/* Enhanced Button Effects */
.btn-shine {
  background: var(--gradient-primary);
  position: relative;
  overflow: hidden;
}

.btn-shine::after {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: var(--gradient-shine);
  background-size: 200% 200%;
  animation: shine 3s linear infinite;
  opacity: 0;
  transition: opacity 0.3s;
}

.btn-shine:hover::after {
  opacity: 1;
}

.btn-3d {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  transition: all 0.3s var(--transition-spring);
}

.btn-3d:hover {
  -webkit-transform: translateZ(20px) rotateX(-15deg);
  -ms-transform: translateZ(20px) rotateX(-15deg);
  transform: translateZ(20px) rotateX(-15deg);
}

.btn-3d:active {
  -webkit-transform: translateZ(10px) rotateX(-5deg);
  -ms-transform: translateZ(10px) rotateX(-5deg);
  transform: translateZ(10px) rotateX(-5deg);
}

/* Text Effects */
.text-3d {
  text-shadow: 
    1px 1px 1px var(--text-secondary),
    2px 2px 1px var(--text-secondary),
    3px 3px 1px var(--text-secondary),
    4px 4px 1px var(--text-secondary),
    5px 5px 1px var(--text-secondary),
    6px 6px 1px var(--text-secondary);
}

.text-rainbow {
  /* Base styles */
  background: var(--gradient-rainbow);
  background-size: 200% auto;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: var(--text-primary); /* Fallback */
  /* Animation */
  -webkit-animation: rainbow-text 3s linear infinite;
  animation: rainbow-text 3s linear infinite;
}

/* Rainbow text animation */
@-webkit-keyframes rainbow-text {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

@keyframes rainbow-text {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

/* Feature detection and fallbacks */
@supports (-webkit-background-clip: text) or (background-clip: text) {
  .text-rainbow,
  .text-gradient,
  .gradient-text {
    color: transparent;
  }
}

/* Ensure proper support in different browsers */
@supports not ((-webkit-background-clip: text) or (background-clip: text)) {
  .text-rainbow,
  .text-gradient,
  .gradient-text {
    background: none;
    color: var(--text-primary);
  }
}

.text-shine {
  position: relative;
  color: transparent;
  background: linear-gradient(0deg, #000, #000);
  -webkit-background-clip: text;
  background-clip: text;
}

.text-shine::before {
  content: attr(data-text);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(45deg, 
    transparent 0%,
    rgba(255,255,255,1) 30%,
    rgba(255,255,255,1) 70%,
    transparent 100%);
  -webkit-background-clip: text;
  background-clip: text;
  animation: shine 3s linear infinite;
}

/* Advanced Hover Effects */
.hover-3d {
  -webkit-transition: transform 0.3s var(--transition-spring);
  transition: transform 0.3s var(--transition-spring);
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.hover-3d:hover {
  -webkit-transform: 
    perspective(1000px)
    rotateX(var(--rotate-x))
    rotateY(var(--rotate-y))
    scale(1.1);
  -ms-transform: 
    perspective(1000px)
    rotateX(var(--rotate-x))
    rotateY(var(--rotate-y))
    scale(1.1);
  transform: 
    perspective(1000px)
    rotateX(var(--rotate-x))
    rotateY(var(--rotate-y))
    scale(1.1);
}

.hover-tilt {
  animation: tilt 10s ease-in-out infinite;
}

.hover-float-3d {
  animation: float-3d 3s ease-in-out infinite;
}

/* Glass Card with Advanced Effects */
.card-glass-advanced {
  background: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(10px) saturate(180%) contrast(1.2);
  -webkit-backdrop-filter: blur(10px) saturate(180%) contrast(1.2);
  border: 1px solid rgba(255, 255, 255, 0.3);
  box-shadow: 
    0 4px 6px rgba(0, 0, 0, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.3);
  position: relative;
  overflow: hidden;
}

.card-glass-advanced::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 200%;
  height: 100%;
  background: linear-gradient(
    120deg,
    transparent,
    rgba(255, 255, 255, 0.3),
    transparent
  );
  transform: rotate(45deg);
  animation: shine 3s linear infinite;
}

/* Premium Tractor Showroom Styling 2.0 */
:root {
  /* Enhanced Color System */
  --primary-color: #2B7A0B;
  --primary-hover: #1d5208;
  --secondary-color: #FF5722;
  --accent-color: #FFA000;
  --success-color: #388E3C;
  --warning-color: #F57C00;
  --error-color: #D32F2F;
  
  /* Gradient Combinations */
  --gradient-primary: linear-gradient(135deg, #2B7A0B, #388E3C);
  --gradient-secondary: linear-gradient(135deg, #FF5722, #FFA000);
  --gradient-accent: linear-gradient(45deg, #2B7A0B, #FFA000);
  --gradient-dark: linear-gradient(135deg, #1A1A1A, #4A4A4A);
  
  /* Enhanced Shadows */
  --shadow-sm: 0 2px 4px rgba(0,0,0,0.1);
  --shadow-md: 0 4px 8px rgba(0,0,0,0.12);
  --shadow-lg: 0 8px 16px rgba(0,0,0,0.15);
  --shadow-xl: 0 12px 24px rgba(0,0,0,0.18);
  --shadow-inner: inset 0 2px 4px rgba(0,0,0,0.05);
  --shadow-glow: 0 0 20px rgba(43, 122, 11, 0.2);
}

/* Advanced Animations */
@keyframes float {
  0%, 100% { -webkit-transform: translateY(0); transform: translateY(0); }
  50% { -webkit-transform: translateY(-10px); transform: translateY(-10px); }
}

@keyframes pulse {
  0% { box-shadow: 0 0 0 0 rgba(43, 122, 11, 0.4); }
  70% { box-shadow: 0 0 0 10px rgba(43, 122, 11, 0); }
  100% { box-shadow: 0 0 0 0 rgba(43, 122, 11, 0); }
}

@keyframes slideIn {
  from { transform: translateY(20px); opacity: 0; }
  to { transform: translateY(0); opacity: 1; }
}

/* Enhanced Hero Section */
.hero {
  position: relative;
  height: 70vh;
  min-height: 500px;
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: white;
}

.hero::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.7));
  z-index: 1;
}

.hero-content {
  position: relative;
  z-index: 2;
  max-width: 800px;
  padding: 0 20px;
}

.hero h1 {
  font-size: clamp(2.5rem, 8vw, 4rem);
  font-weight: 700;
  margin-bottom: 1rem;
  text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
  animation: fadeInUp 1s ease-out;
}

.hero p {
  font-size: clamp(1.1rem, 3vw, 1.5rem);
  margin-bottom: 2rem;
  animation: fadeInUp 1s ease-out 0.2s backwards;
}

/* Enhanced Search Section */
.search-section {
  background: rgba(255, 255, 255, 0.95);
  padding: 30px;
  border-radius: 20px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.1);
  margin: 20px auto;
  max-width: 800px;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255,255,255,0.2);
}

.search-container {
  display: flex;
  gap: 15px;
  align-items: center;
  justify-content: center;
}

/* Search Input */
#searchInput {
  width: 90%;
  max-width: 800px;
  padding: 12px 20px;
  font-size: 16px;
  border: 1px solid #ccc;
  border-radius: 8px;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  transition: all 0.3s ease;
  margin: 0 auto;
}

#searchInput:focus {
  border-color: #2d6a4f;
  box-shadow: 0 2px 8px rgba(45, 106, 79, 0.2);
  outline: none;
}

/* Search Button */
button[onclick="highlightAndScroll()"] {
  width: 200px;
  padding: 12px 24px;
  background: #2d6a4f;
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  margin: 10px auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

button[onclick="highlightAndScroll()"]:hover {
  background: #40916c;
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}

/* Mobile Adjustments */
@media (max-width: 768px) {
  #searchInput {
    width: 85%;
  }
  
  button[onclick="highlightAndScroll()"] {
    width: 180px;
  }
}

.search-results {
  text-align: center;
  margin-top: 15px;
  color: var(--text-secondary);
  font-size: 1.1rem;
  animation: fadeIn 0.3s ease-out;
}

/* Enhanced Map Section */
.map-section {
  padding: 60px 20px;
  background: linear-gradient(135deg, rgba(43, 122, 11, 0.05), rgba(255, 87, 34, 0.05));
}

.map-container {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 20px 40px rgba(0,0,0,0.1);
}

.map-container iframe {
  width: 100%;
  height: 450px;
  border: none;
  display: block;
}

.map-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(43, 122, 11, 0.1);
  pointer-events: none;
}

/* Enhanced Section Headers */
.section-header {
  text-align: center;
  margin-bottom: 40px;
  position: relative;
}

.section-title {
  font-size: clamp(2rem, 4vw, 2.5rem);
  font-weight: 700;
  color: var(--text-primary);
  margin-bottom: 15px;
  position: relative;
  display: inline-block;
}

.section-title::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: -10px;
  transform: translateX(-50%);
  width: 80px;
  height: 4px;
  background: var(--gradient-primary);
  border-radius: 2px;
}

.section-subtitle {
  color: var(--text-secondary);
  font-size: 1.1rem;
  max-width: 600px;
  margin: 0 auto;
}

/* Enhanced Footer */
.footer {
  background: var(--gradient-dark);
  color: white;
  padding: 40px 20px;
  position: relative;
  overflow: hidden;
}

.footer::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, 
    transparent,
    rgba(255,255,255,0.2),
    transparent
  );
}

.footer-content {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 40px;
}

.footer-info {
  text-align: center;
}

.footer-logo {
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 15px;
  background: var(--gradient-primary);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.footer-contact {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-contact li {
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.footer-bottom {
  text-align: center;
  margin-top: 40px;
  padding-top: 20px;
  border-top: 1px solid rgba(255,255,255,0.1);
  font-size: 0.9rem;
  color: rgba(255,255,255,0.7);
}

/* Dark Mode Adjustments */
@media (prefers-color-scheme: dark) {
  .search-section {
    background: rgba(30, 41, 59, 0.95);
  }

  #searchInput {
    background: rgba(30, 41, 59, 0.8);
    border-color: rgba(255,255,255,0.1);
    color: white;
  }

  .search-results {
    color: rgba(255,255,255,0.7);
  }

  .map-overlay {
    background: rgba(30, 41, 59, 0.1);
  }
}

/* Animation for Search Results */
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Enhanced WhatsApp Button */
.whatsapp-button {
  position: fixed;
  bottom: 30px;
  right: 30px;
  width: 60px;
  height: 60px;
  background: linear-gradient(135deg, #25D366, #128C7E);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  text-decoration: none;
  font-size: 30px;
  box-shadow: 0 5px 15px rgba(37, 211, 102, 0.3);
  transition: all 0.3s ease;
  z-index: 1000;
}

.whatsapp-button::before {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  background: inherit;
  border-radius: inherit;
  z-index: -1;
  transition: all 0.3s ease;
}

.whatsapp-button:hover {
  transform: scale(1.1) translateY(-5px);
}

.whatsapp-button:hover::before {
  transform: scale(1.2);
  opacity: 0;
}

/* Scroll to Top Button */
.scroll-top {
  position: fixed;
  bottom: 100px;
  right: 30px;
  width: 50px;
  height: 50px;
  background: var(--gradient-primary);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
  z-index: 1000;
}

.scroll-top.visible {
  opacity: 1;
  visibility: visible;
}

.scroll-top:hover {
  transform: translateY(-5px);
}

/* Ultra Modern Tractor Cards */
.tractor {
  position: relative;
  background: rgba(255, 255, 255, 0.95);
  border-radius: 20px;
  padding: 30px;
  margin-bottom: 30px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.1);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255,255,255,0.2);
  transform-style: preserve-3d;
  perspective: 1000px;
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.tractor:hover {
  transform: translateY(-10px) rotateX(2deg) rotateY(2deg);
  box-shadow: 0 20px 40px rgba(0,0,0,0.2);
}

.tractor::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255,255,255,0.1), rgba(255,255,255,0));
  border-radius: inherit;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.tractor:hover::before {
  opacity: 1;
}

.image-gallery {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: 10px;
  overflow-x: auto;
  padding: 10px 0;
  margin: 10px 0;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
}

.image-gallery img {
  width: 100%;
  height: auto;
  object-fit: contain;
  border-radius: 15px;
  scroll-snap-align: start;
  flex-shrink: 0;
  transform: translateZ(20px);
  box-shadow: 0 10px 20px rgba(0,0,0,0.1);
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.image-gallery::-webkit-scrollbar {
  height: 8px;
}

.image-gallery::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 4px;
}

.image-gallery::-webkit-scrollbar-thumb {
  background: var(--primary-color);
  border-radius: 4px;
}

.image-gallery::-webkit-scrollbar-thumb:hover {
  background: var(--primary-hover);
}

.tractor:hover img {
  transform: translateZ(30px) scale(1.05);
  box-shadow: 0 15px 30px rgba(0,0,0,0.2);
}

.tractor h3 {
  font-size: 1.8rem;
  color: var(--primary-color);
  margin-bottom: 15px;
  transform: translateZ(25px);
  text-shadow: 2px 2px 4px rgba(0,0,0,0.1);
  background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.tractor p {
  transform: translateZ(15px);
  color: var(--text-secondary);
  line-height: 1.6;
  margin-top: 15px;
}

.tractor strong {
  color: var(--primary-color);
  font-weight: 600;
}

/* Premium Header Styling */
header {
  position: relative;
  min-height: 300px;
  max-height: 400px;
  height: 40vh;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  overflow: hidden;
  background-size: cover;
  background-position: center;
}

header::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.7));
  z-index: 1;
}

header::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: url('data:image/svg+xml,<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><rect width="100" height="100" fill="none" stroke="white" stroke-width="0.25" stroke-opacity="0.1"/></svg>');
  background-size: 30px 30px;
  opacity: 0.1;
  z-index: 2;
}

header h1 {
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 800;
  color: white;
  text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
  position: relative;
  z-index: 3;
  animation: fadeInUp 1s ease-out;
  margin-bottom: 0.5rem;
}

header p {
  font-size: clamp(1rem, 2vw, 1.2rem);
  color: rgba(255,255,255,0.9);
  position: relative;
  z-index: 3;
  animation: fadeInUp 1s ease-out 0.2s backwards;
  text-shadow: 1px 1px 2px rgba(0,0,0,0.3);
}

/* Mobile adjustments for header */
@media (max-width: 768px) {
  header {
    min-height: 200px;
    height: 30vh;
  }
  
  header h1 {
    font-size: clamp(1.8rem, 3vw, 2.5rem);
  }
  
  header p {
    font-size: clamp(0.9rem, 1.5vw, 1.1rem);
  }
}

/* Enhanced Contact Form */
.contact-form {
  background: rgba(255, 255, 255, 0.98);
  border-radius: 30px;
  padding: 40px;
  box-shadow: 0 20px 40px rgba(0,0,0,0.1);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(255,255,255,0.2);
  transform-style: preserve-3d;
  perspective: 1000px;
}

.contact-form input[type="text"],
.contact-form input[type="tel"] {
  width: 100%;
  padding: 15px 25px;
  border: 2px solid rgba(0,0,0,0.1);
  border-radius: 15px;
  font-size: 1.1rem;
  background: rgba(255,255,255,0.9);
  transition: all 0.3s ease;
  transform: translateZ(10px);
  margin-bottom: 20px;
}

.contact-form input:focus {
  border-color: var(--primary-color);
  box-shadow: 0 0 0 3px rgba(43, 122, 11, 0.1);
  outline: none;
  transform: translateZ(20px);
}

.contact-form input[type="submit"] {
  width: 100%;
  padding: 15px;
  border: none;
  border-radius: 15px;
  background: var(--gradient-primary);
  color: white;
  font-size: 1.2rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
  transform: translateZ(15px);
  box-shadow: 0 10px 20px rgba(43, 122, 11, 0.2);
}

.contact-form input[type="submit"]:hover {
  transform: translateZ(25px) scale(1.02);
  box-shadow: 0 15px 30px rgba(43, 122, 11, 0.3);
}

/* Tractor Title Styling */
#tractor-title {
  color: #000000 !important;
  font-size: 2em !important;
  font-weight: 600 !important;
  margin-bottom: 1em !important;
  font-family: 'Segoe UI', sans-serif !important;
  line-height: 1.2 !important;
  text-shadow: none !important;
  background: none !important;
  -webkit-text-fill-color: #000000 !important;
  background-image: none !important;
  -webkit-background-clip: unset !important;
  background-clip: unset !important;
}

.tractor h3,
h3#tractor-title {
  color: #000000 !important;
  background: none !important;
  -webkit-background-clip: unset !important;
  background-clip: unset !important;
  -webkit-text-fill-color: #000000 !important;
  text-shadow: none !important;
}

/* Dark Mode Enhancements */
@media (prefers-color-scheme: dark) {
  .tractor {
    background: rgba(30, 41, 59, 0.95);
  }

  .contact-form {
    background: rgba(30, 41, 59, 0.98);
  }

  .contact-form input[type="text"],
  .contact-form input[type="tel"] {
    background: rgba(30, 41, 59, 0.8);
    border-color: rgba(255,255,255,0.1);
    color: white;
  }

  #searchInput {
    background: rgba(30, 41, 59, 0.95);
    border-color: rgba(255,255,255,0.1);
    color: white;
  }
}

/* Advanced Animations */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes float {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-10px);
  }
}

/* Responsive Enhancements */
@media (max-width: 768px) {
  .tractor img {
    width: 100%;
    float: none;
    margin-bottom: 20px;
  }

  #searchInput {
    width: 100%;
  }

  button[onclick="highlightAndScroll()"] {
    width: 100%;
    margin-top: 10px;
  }

  .contact-form {
    padding: 30px;
    margin: 20px;
  }

  .container {
    padding: 10px;
  }

  #searchInput,
  button[onclick="highlightAndScroll()"] {
    width: 90%;
    max-width: none;
    margin: 8px auto;
    padding: 12px 20px;
    font-size: 16px;
  }

  .image-gallery {
    margin: 5px -10px;
    padding: 5px 10px;
  }

  .image-gallery img {
    width: 95vw !important;
    height: auto !important;
    min-width: 500px !important;
    min-height: 400px !important;
    border-radius: 10px;
  }

  .tractor {
    padding: 15px;
    margin-bottom: 20px;
  }

  .tractor h3 {
    font-size: 1.5rem;
    margin-bottom: 10px;
  }

  .contact-buttons {
    flex-direction: column;
    gap: 10px;
  }

  .contact-button {
    width: 100%;
    padding: 12px 20px;
  }
}

/* Modern Link Preview Card */
.link-preview-card {
  background: white;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 4px 15px rgba(0,0,0,0.1);
  margin: 15px 0;
  transition: all 0.3s ease;
  border: 1px solid rgba(0,0,0,0.08);
}

.link-preview-image {
  width: 100%;
  height: 200px;
  object-fit: cover;
  border-bottom: 1px solid rgba(0,0,0,0.05);
}

.link-preview-content {
  padding: 16px;
}

.link-preview-title {
  font-size: 1.25rem;
  font-weight: 600;
  color: #1a1a1a;
  margin-bottom: 8px;
  line-height: 1.4;
}

.link-preview-description {
  font-size: 0.95rem;
  color: #666;
  margin-bottom: 12px;
  line-height: 1.5;
}

.link-preview-url {
  font-size: 0.85rem;
  color: #2d6a4f;
  display: flex;
  align-items: center;
  gap: 6px;
}

.link-preview-url::before {
  content: '🔗';
  font-size: 1rem;
}

/* Hover effects */
.link-preview-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(0,0,0,0.12);
}

/* Mobile adjustments */
@media (max-width: 768px) {
  .link-preview-card {
    border-radius: 12px;
    margin: 10px 0;
  }

  .link-preview-image {
    height: 180px;
  }

  .link-preview-content {
    padding: 12px;
  }

  .link-preview-title {
    font-size: 1.1rem;
  }
}

/* Modern Link Preview Card */
.share-preview {
  background: white;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 4px 15px rgba(0,0,0,0.1);
  margin: 15px auto;
  max-width: 600px;
  transition: all 0.3s ease;
  border: 1px solid rgba(0,0,0,0.08);
}

.share-preview-image {
  width: 100%;
  height: 250px;
  object-fit: cover;
  border-bottom: 1px solid rgba(0,0,0,0.05);
}

.share-preview-content {
  padding: 20px;
}

.share-preview-title {
  font-size: 1.4rem;
  font-weight: 600;
  color: #1a1a1a;
  margin-bottom: 12px;
  line-height: 1.4;
}

.share-preview-description {
  font-size: 1rem;
  color: #666;
  margin-bottom: 15px;
  line-height: 1.6;
}

.share-preview-url {
  font-size: 0.9rem;
  color: #2d6a4f;
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 8px;
  padding-top: 10px;
  border-top: 1px solid rgba(0,0,0,0.08);
}

.share-preview-url::before {
  content: '🔗';
  font-size: 1.1rem;
}

/* Hover effects */
.share-preview:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(0,0,0,0.12);
}

/* Mobile adjustments */
@media (max-width: 768px) {
  .share-preview {
    border-radius: 12px;
    margin: 10px 15px;
  }

  .share-preview-image {
    height: 200px;
  }

  .share-preview-content {
    padding: 15px;
  }

  .share-preview-title {
    font-size: 1.2rem;
    margin-bottom: 10px;
  }

  .share-preview-description {
    font-size: 0.95rem;
    margin-bottom: 12px;
  }
}
  