body {
  background-color: hsl(40, 20%, 97%);
  color: hsl(222, 47%, 11%);
  font-family: 'Inter', sans-serif;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Playfair Display', serif;
  letter-spacing: -0.025em;
}

.glass-panel {
  background-color: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid white;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

.miami-text-gradient {
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  background-image: linear-gradient(to right, #0d9488, #f97316);
}

@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(20px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes floatLeft {
  from { opacity: 0; transform: translateX(-50px) rotate(-10deg); }
  to { opacity: 1; transform: translateX(0) rotate(-6deg); }
}

@keyframes floatRight {
  from { opacity: 0; transform: translateX(50px) rotate(10deg); }
  to { opacity: 1; transform: translateX(0) rotate(6deg); }
}

.animate-fade-in-up {
  animation: fadeInUp 0.6s ease-out forwards;
}

.animate-float-left {
  animation: floatLeft 0.8s ease-out forwards;
}

.animate-float-right {
  animation: floatRight 0.8s ease-out forwards;
}
