/* === Global Styles === */
body {
    font-family: 'Segoe UI', sans-serif;
    line-height: 1.6;
    scroll-behavior: smooth;
  }
  
  h1, h2, h3 {
    font-weight: 700;
  }
  
  /* === Hero Section === */
  .bg-gray-900.text-white.py-20 {
    background: linear-gradient(to right, #1f2937, #111827);
  }
  
  .bg-orange-500:hover {
    background-color: #ea580c !important;
  }
  
  /* === Service Cards === */
  .bg-white.p-6.shadow-md.rounded {
    transition: box-shadow 0.3s ease;
  }
  
  .bg-white.p-6.shadow-md.rounded:hover {
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.1);
  }
  
  /* === Section Headings === */
  .text-3xl.font-bold.mb-10,
  .text-3xl.font-bold.mb-4,
  .text-3xl.font-bold.mb-6 {
    position: relative;
    display: inline-block;
  }
  
  .text-3xl.font-bold.mb-10::after,
  .text-3xl.font-bold.mb-4::after,
  .text-3xl.font-bold.mb-6::after {
    content: '';
    display: block;
    width: 60px;
    height: 3px;
    background-color: #f97316;
    margin: 0.75rem auto 0;
  }
  
  /* === Approach Step Numbers === */
  .text-orange-500.text-2xl.font-bold {
    min-width: 2rem;
    display: inline-block;
  }
  
  /* === Footer === */
  footer {
    font-size: 0.95rem;
  }
  
  footer h2,
  footer h3 {
    font-weight: 600;
  }
  
  footer a {
    text-decoration: none;
    transition: color 0.3s ease;
  }
  
  footer a:hover {
    color: #fb923c;
  }
  
  /* === Footer Bottom Border === */
  footer .border-t {
    border-top: 1px solid #1f2937 !important; /* gray-800 override */
  }
  /* === Hover Transitions === */
a,
button {
  transition: all 0.3s ease-in-out;
}

.bg-orange-500:hover,
.hover\:text-orange-600:hover,
.hover\:text-orange-400:hover {
  filter: brightness(1.1);
  transform: scale(1.02);
}

/* === Card Hover Animations === */
.bg-white.p-6.shadow-md.rounded:hover {
  transform: translateY(-5px);
}

/* === Link Hover Underline === */
nav a:hover,
footer a:hover {
  text-decoration: underline;
}

/* === Fade-in Animations === */
@keyframes fadeUp {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/* === Apply animations to known sections === */

/* Hero title and text */
.hero-section h1,
.hero-section p,
.hero-section a {
  animation: fadeUp 1s ease forwards;
  opacity: 0;
}

.hero-section h1 {
  animation-delay: 0.2s;
}

.hero-section p {
  animation-delay: 0.4s;
}

.hero-section a {
  animation-delay: 0.6s;
}

/* Service cards */
.bg-white.p-6.shadow-md.rounded {
  animation: fadeUp 1s ease both;
  animation-delay: 0.3s;
}

/* Approach steps */
.grid > .flex.items-start {
  animation: fadeUp 1s ease both;
  opacity: 0;
}

.grid > .flex.items-start:nth-child(1) { animation-delay: 0.1s; }
.grid > .flex.items-start:nth-child(2) { animation-delay: 0.2s; }
.grid > .flex.items-start:nth-child(3) { animation-delay: 0.3s; }
.grid > .flex.items-start:nth-child(4) { animation-delay: 0.4s; }
.grid > .flex.items-start:nth-child(5) { animation-delay: 0.5s; }
.grid > .flex.items-start:nth-child(6) { animation-delay: 0.6s; }
.grid > .flex.items-start:nth-child(7) { animation-delay: 0.7s; }
.grid > .flex.items-start:nth-child(8) { animation-delay: 0.8s; }
.grid > .flex.items-start:nth-child(9) { animation-delay: 0.9s; }

/* Why Forge Nine cards */
.grid > .bg-white.p-6.rounded.shadow {
  animation: fadeUp 1s ease both;
  opacity: 0;
}

.grid > .bg-white.p-6.rounded.shadow:nth-child(1) { animation-delay: 0.1s; }
.grid > .bg-white.p-6.rounded.shadow:nth-child(2) { animation-delay: 0.2s; }
.grid > .bg-white.p-6.rounded.shadow:nth-child(3) { animation-delay: 0.3s; }
.grid > .bg-white.p-6.rounded.shadow:nth-child(4) { animation-delay: 0.4s; }
.grid > .bg-white.p-6.rounded.shadow:nth-child(5) { animation-delay: 0.5s; }
.grid > .bg-white.p-6.rounded.shadow:nth-child(6) { animation-delay: 0.6s; }

  