/* Custom styling for GoLease */
:root {
  --navy: #0F2B48;
  --navy-dark: #081B2E;
  --gold: #D4AF37;
  --amber: #D97706;
  --slate: #334155;
}

body {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  scroll-behavior: smooth;
}

.text-gold {
  color: #D4AF37;
}

.bg-navy {
  background-color: #0F2B48;
}

.text-navy {
  color: #0F2B48;
}

.border-navy {
  border-color: #0F2B48;
}

.border-gold {
  border-color: #D4AF37;
}

.gold-gradient-text {
  background: linear-gradient(135deg, #F59E0B 0%, #D97706 50%, #B45309 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.gold-gradient-bg {
  background: linear-gradient(135deg, #F59E0B 0%, #D97706 100%);
}

.navy-gradient-bg {
  background: linear-gradient(135deg, #0F2B48 0%, #081B2E 100%);
}

.card-hover-effect {
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

.card-hover-effect:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 32px -8px rgba(15, 43, 72, 0.12), 0 4px 8px -2px rgba(15, 43, 72, 0.06);
}

/* Custom scrollbar */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
::-webkit-scrollbar-track {
  background: #f1f5f9;
}
::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: #94a3b8;
}

/* Modal animation */
.modal-fade-in {
  animation: fadeIn 0.2s ease-out forwards;
}

@keyframes fadeIn {
  from { opacity: 0; transform: scale(0.96); }
  to { opacity: 1; transform: scale(1); }
}

/* Interactive Story Animation Styles */
@keyframes carDrive {
  0% { transform: translateX(-40px); opacity: 0; }
  15% { transform: translateX(0); opacity: 1; }
  85% { transform: translateX(0); opacity: 1; }
  100% { transform: translateX(40px); opacity: 0; }
}

@keyframes pulseGlow {
  0%, 100% { filter: drop-shadow(0 0 10px rgba(217, 119, 6, 0.4)); }
  50% { filter: drop-shadow(0 0 20px rgba(217, 119, 6, 0.8)); }
}

@keyframes keyFloat {
  0%, 100% { transform: translateY(0) rotate(0deg); }
  50% { transform: translateY(-8px) rotate(8deg); }
}

@keyframes signDoc {
  0% { stroke-dashoffset: 100; }
  100% { stroke-dashoffset: 0; }
}

.anim-key-float {
  animation: keyFloat 2s ease-in-out infinite;
}

.anim-pulse-glow {
  animation: pulseGlow 2.5s ease-in-out infinite;
}

.story-progress-bar {
  transition: width 0.4s ease-in-out;
}
