  /* ===== Custom Styles for Collier Financial ===== */
  
  /* Smooth scrolling */
  html {
    scroll-behavior: smooth;
  }
  
  /* Selection color */
  ::selection {
    background-color: rgba(5, 150, 105, 0.2);
    color: #064e3b;
  }
  
  /* Custom scrollbar */
  ::-webkit-scrollbar {
    width: 8px;
  }
  
  ::-webkit-scrollbar-track {
    background: #FDFCF8;
  }
  
  ::-webkit-scrollbar-thumb {
    background: #a7f3d0;
    border-radius: 4px;
  }
  
  ::-webkit-scrollbar-thumb:hover {
    background: #6ee7b7;
  }
  
  /* ===== Animations ===== */
  @keyframes fadeInUp {
    from {
      opacity: 0;
      transform: translateY(30px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
  
  @keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
  }
  
  .animate-fade-in-up {
    animation: fadeInUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards;
  }
  
  .animate-fade-in {
    animation: fadeIn 1s ease forwards;
  }
  
  /* Scroll reveal (progressive enhancement) */
  .scroll-reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 0.7s cubic-bezier(0.16, 1, 0.3, 1), transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);
  }
  
  .scroll-reveal.revealed {
    opacity: 1;
    transform: translateY(0);
  }
  
  /* Respect reduced motion preference */
  @media (prefers-reduced-motion: no-preference) {
    .scroll-reveal {
      opacity: 0;
      transform: translateY(24px);
    }
  }
  
  @media (prefers-reduced-motion: reduce) {
    .scroll-reveal {
      opacity: 1;
      transform: none;
      transition: none;
    }
    
    .animate-fade-in-up,
    .animate-fade-in {
      animation: none;
      opacity: 1;
      transform: none;
    }
  }
  
  /* ===== Navbar transitions ===== */
  #navbar.scrolled .nav-text {
    color: #064e3b;
  }
  
  #navbar.scrolled .nav-subtext {
    color: #059669;
  }
  
  #navbar.scrolled .nav-link {
    color: #374151;
  }
  
  /* Mobile menu transitions */
  #mobileMenu.open {
    opacity: 1;
    pointer-events: auto;
  }
  
  #mobileMenu.closed {
    opacity: 0;
    pointer-events: none;
  }
  
  /* Menu line animations */
  #menuBtn.active .menu-line:nth-child(1) {
    transform: rotate(45deg) translate(5px, 5px);
  }
  
  #menuBtn.active .menu-line:nth-child(2) {
    opacity: 0;
  }
  
  #menuBtn.active .menu-line:nth-child(3) {
    width: 24px;
    transform: rotate(-45deg) translate(5px, -5px);
  }
  
  /* ===== Subtle hover effects ===== */
  a {
    text-decoration: none;
  }
  
  /* Focus styles for accessibility */
  a:focus-visible,
  button:focus-visible,
  input:focus-visible,
  select:focus-visible,
  textarea:focus-visible {
    outline: 2px solid #059669;
    outline-offset: 2px;
    border-radius: 4px;
  }
  
  /* ===== Responsive adjustments ===== */
  @media (max-width: 768px) {
    .font-serif {
      font-size: clamp(1.75rem, 5vw, 2.5rem);
    }
  }
  
  /* ===== Print styles ===== */
  @media print {
    #navbar,
    #contactForm,
    .scroll-reveal {
      display: none;
    }
    
    body {
      color: #000;
      background: #fff;
    }
  }
