<style>
    html {
      scroll-behavior: smooth;
    }
    
    .font-serif {
      font-family: 'Playfair Display', Georgia, serif;
    }
    
    body {
      font-family: 'Inter', system-ui, sans-serif;
    }
    
    /* Hero slider animations */
    .slide {
      transition: opacity 1s ease-in-out;
    }
    
    .slide.active {
      opacity: 1;
      z-index: 1;
    }
    
    .slide.inactive {
      opacity: 0;
      z-index: 0;
      pointer-events: none;
    }
    
    /* Fade in animation */
    @keyframes fadeIn {
      from { opacity: 0; transform: translateY(20px); }
      to { opacity: 1; transform: translateY(0); }
    }
    
    .animate-fadeIn {
      animation: fadeIn 0.8s ease-out forwards;
    }
    
    /* Bounce animation for scroll indicator */
    @keyframes bounce {
      0%, 100% { transform: translateY(0) rotate(90deg); }
      50% { transform: translateY(-10px) rotate(90deg); }
    }
    
    .animate-bounce {
      animation: bounce 2s infinite;
    }
    
    /* Form input styling */
    .form-input {
      width: 100%;
      padding: 0.5rem 0.75rem;
      border: 1px solid #d1d5db;
      border-radius: 0.375rem;
      font-size: 0.875rem;
      transition: border-color 0.2s, box-shadow 0.2s;
    }
    
    .form-input:focus {
      outline: none;
      border-color: #2563eb;
      box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
    }
    
    .form-label {
      display: block;
      font-size: 0.875rem;
      font-weight: 500;
      color: #374151;
      margin-bottom: 0.25rem;
    }
    
    /* Card shadow */
    .card-shadow {
      box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    }
    
    .card-shadow-xl {
      box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
    }
  </style>