/**
 * Hero Section CSS
 * Word of the Day hero section with card
 */

/* ============================================
   Hero Section
   ============================================ */
.hero {
  min-height: 80vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--space-xl) var(--space-md);
  background: linear-gradient(135deg, rgba(47, 136, 193, 0.1), rgba(134, 102, 162, 0.1));
  position: relative;
  overflow: hidden;
}

.hero__container {
  max-width: 800px;
  width: 100%;
  text-align: center;
  position: relative;
  z-index: 2;
}

.hero__title {
  /* font-size: clamp(2rem, 5vw, 3.5rem); */
  margin-bottom: var(--space-md);
  color: var(--color-text);
  animation: heroTitleEntry 0.8s ease backwards;
  animation-delay: 0.2s;
}

.hero__card-wrapper {
  display: flex;
  justify-content: center;
  margin-bottom: var(--space-md);
}

/* ============================================
   Hero Card Styles
   ============================================ */
.card--hero {
  width: 100%;
  max-width: 500px;
  height: auto;
  aspect-ratio: 3 / 4;
  animation: heroEntry 1s ease backwards;
  animation-delay: 0.4s;
}

.card--hero .card__inner {
  height: 100%;
}

.card--hero img {
  width: 100%;
  height: 100%;
  /* object-fit: cover; */
}

/* ============================================
   Scroll Hint
   ============================================ */
.hero__scroll-hint {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border: 2px solid var(--color-text);
  color: var(--color-text);
  transition: all var(--transition-base);
  animation: bounce 2s ease-in-out infinite;
}

.hero__scroll-hint:hover {
  background-color: var(--color-text);
  color: var(--color-bg);
  transform: translateY(4px);
}

/* ============================================
   Animations
   ============================================ */
@keyframes heroEntry {
  from {
    opacity: 0;
    transform: scale(0.8);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}

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

@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-10px);
  }
  60% {
    transform: translateY(-5px);
  }
}

/* ============================================
   Responsive
   ============================================ */
@media (max-width: 768px) {
  .hero {
    min-height: 70vh;
    padding: var(--space-xl) var(--space-md);
  }
  
  .card--hero {
    max-width: 350px;
  }
}
