  /* Custom styles beyond Tailwind */

  /* Scroll behavior */
  html {
    scroll-behavior: smooth;
  }

  /* Selection color */
  ::selection {
    background: rgba(200, 90, 60, 0.3);
    color: #f6f6f6;
  }

  /* Scrollbar styling */
  ::-webkit-scrollbar {
    width: 8px;
  }
  ::-webkit-scrollbar-track {
    background: #141414;
  }
  ::-webkit-scrollbar-thumb {
    background: #3f3f3f;
    border-radius: 4px;
  }
  ::-webkit-scrollbar-thumb:hover {
    background: #C85A3C;
  }

  /* Scroll indicator animation */
  @keyframes scrollIndicator {
    0% { transform: translateY(-100%); opacity: 0; }
    50% { opacity: 1; }
    100% { transform: translateY(100%); opacity: 0; }
  }
  .animate-scroll-indicator {
    animation: scrollIndicator 1.5s ease-in-out infinite;
  }

  /* Navbar scroll state */
  #navbar.scrolled {
    background: rgba(12, 12, 12, 0.95);
    backdrop-filter: blur(20px);
    border-bottom: 1px solid rgba(200, 90, 60, 0.1);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.3);
  }

  /* Service card hover glow */
  .service-card:hover {
    box-shadow: 0 20px 60px rgba(200, 90, 60, 0.08), 0 8px 24px rgba(0, 0, 0, 0.3);
  }

  /* Nav link underline animation */
  .nav-link {
    position: relative;
  }
  .nav-link::after {
    content: '';
    position: absolute;
    bottom: -4px;
    left: 0;
    width: 0;
    height: 2px;
    background: #C85A3C;
    transition: width 0.3s ease;
  }
  .nav-link:hover::after {
    width: 100%;
  }

  /* Mobile link animation */
  .mobile-link {
    opacity: 0;
    transform: translateY(20px);
  }
  .mobile-menu-open .mobile-link {
    opacity: 1;
    transform: translateY(0);
    transition: all 0.4s ease;
  }
  .mobile-menu-open .mobile-link:nth-child(1) { transition-delay: 0.1s; }
  .mobile-menu-open .mobile-link:nth-child(2) { transition-delay: 0.2s; }
  .mobile-menu-open .mobile-link:nth-child(3) { transition-delay: 0.3s; }
  .mobile-menu-open .mobile-link:nth-child(4) { transition-delay: 0.4s; }

  /* Menu button animation */
  .menu-open .menu-line:nth-child(1) {
    transform: rotate(45deg) translate(5px, 5px);
  }
  .menu-open .menu-line:nth-child(2) {
    opacity: 0;
  }
  .menu-open .menu-line:nth-child(3) {
    width: 24px;
    transform: rotate(-45deg) translate(5px, -5px);
  }

  /* Fade-in animation */
  @keyframes fadeInUp {
    from {
      opacity: 0;
      transform: translateY(40px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
  .fade-in-up {
    opacity: 0;
    animation: fadeInUp 0.8s ease forwards;
  }

  /* Stagger children */
  .stagger-children > * {
    opacity: 0;
  }
  .stagger-children.visible > *:nth-child(1) { animation: fadeInUp 0.6s ease 0.1s forwards; }
  .stagger-children.visible > *:nth-child(2) { animation: fadeInUp 0.6s ease 0.2s forwards; }
  .stagger-children.visible > *:nth-child(3) { animation: fadeInUp 0.6s ease 0.3s forwards; }
  .stagger-children.visible > *:nth-child(4) { animation: fadeInUp 0.6s ease 0.4s forwards; }
  .stagger-children.visible > *:nth-child(5) { animation: fadeInUp 0.6s ease 0.5s forwards; }
  .stagger-children.visible > *:nth-child(6) { animation: fadeInUp 0.6s ease 0.6s forwards; }

  /* Image parallax container */
  .hero-image-wrapper {
    will-change: transform;
  }

  /* Focus visible styles */
  a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
    outline: 2px solid #C85A3C;
    outline-offset: 2px;
  }

  /* Select dropdown styling */
  select option {
    background: #1f1f1f;
    color: #e3e3e3;
  }

  /* Smooth image loading */
  img {
    image-rendering: auto;
    loading: lazy;
  }

  /* Responsive adjustments */
  @media (max-width: 768px) {
    .font-serif.font-900.text-5xl {
      font-size: 3rem;
    }
  }

  @media (min-width: 1024px) {
    .lg\\:text-8xl {
      font-size: 4.5rem;
      line-height: 0.95;
    }
  }
