/* Museo Sans Font Faces */
@font-face {
    font-family: 'Museo Sans';
    src: url('Museo/MuseoSans-100_0.otf') format('opentype');
    font-weight: 100;
    font-style: normal;
}
@font-face {
    font-family: 'Museo Sans';
    src: url('Museo/MuseoSans-100Italic_0.otf') format('opentype');
    font-weight: 100;
    font-style: italic;
}
@font-face {
    font-family: 'Museo Sans';
    src: url('Museo/MuseoSans-300_0.otf') format('opentype');
    font-weight: 300;
    font-style: normal;
}
@font-face {
    font-family: 'Museo Sans';
    src: url('Museo/MuseoSans-300Italic_0.otf') format('opentype');
    font-weight: 300;
    font-style: italic;
}
@font-face {
    font-family: 'Museo Sans';
    src: url('Museo/MuseoSans_2.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'Museo Sans';
    src: url('Museo/MuseoSans_500_Italic_0.otf') format('opentype');
    font-weight: 500;
    font-style: italic;
}
@font-face {
    font-family: 'Museo Sans';
    src: url('Museo/MuseoSans-700Italic_0.otf') format('opentype');
    font-weight: 700;
    font-style: italic;
}
@font-face {
    font-family: 'Museo Sans';
    src: url('Museo/MuseoSans-900Italic_0.otf') format('opentype');
    font-weight: 900;
    font-style: italic;
}
@font-face {
    font-family: 'Museo Sans Condensed';
    src: url('Museo/MuseoSansCond-300.OTF') format('opentype');
    font-weight: 300;
    font-style: normal;
}
@font-face {
    font-family: 'Museo Sans Condensed';
    src: url('Museo/MuseoSansCond-500.OTF') format('opentype');
    font-weight: 500;
    font-style: normal;
}
@font-face {
    font-family: 'Museo Sans Condensed';
    src: url('Museo/MuseoSansCond-700.OTF') format('opentype');
    font-weight: 700;
    font-style: normal;
}
@font-face {
    font-family: 'Museo Sans Condensed';
    src: url('Museo/MuseoSansCond-900.OTF') format('opentype');
    font-weight: 900;
    font-style: normal;
}

/* Custom animations that Tailwind doesn't have */
@keyframes glow {
  0%, 100% { filter: drop-shadow(0 0 20px rgba(141, 83, 173, 0.3)); }
  50% { filter: drop-shadow(0 0 40px rgba(141, 83, 173, 0.6)); }
}
@keyframes rotate {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}
@keyframes float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-10px); }
}
@keyframes fillTimeline {
  to { width: 100%; }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes slideInUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes floatBackground {
  0%, 100% { transform: translate(0, 0) rotate(0deg); }
  33% { transform: translate(-20px, -20px) rotate(1deg); }
  66% { transform: translate(20px, -10px) rotate(-1deg); }
}

.hero-subtitle {
  background: linear-gradient(135deg, #8d53ad 0%, #b380cc 50%, #8d53ad 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: glow 3s ease-in-out infinite;
}
.animate-float { animation: float 3s ease-in-out infinite; }
.animate-rotate { animation: rotate 20s linear infinite; }
.animate-fill-timeline { animation: fillTimeline 3s ease-out forwards; }
.animate-fade-in-up { animation: fadeInUp 0.6s ease-out forwards; }
.animate-slide-in-up { 
  opacity: 0;
  transform: translateY(30px);
  animation: slideInUp 0.6s ease-out forwards;
}
.animate-float-bg { animation: floatBackground 20s ease-in-out infinite; }

.gradient-text {
  background: linear-gradient(135deg, #ffffff, #e0d0f0);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.gradient-purple {
  background: linear-gradient(135deg, #8d53ad, #b380cc);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* Museo Sans Font Line-Height Fix */
.font-museo h1,
.font-museo h2,
.font-museo h3,
.font-museo h4,
.font-museo .hero-subtitle {
  line-height: 1.4 !important;
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
}

/* Large text specific fixes */
.font-museo .text-6xl,
.font-museo .text-7xl,
.font-museo .text-8xl {
  line-height: 1.3 !important;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
} 