/* =========================================
   MOBILE HERO OVERRIDES (Max-width: 768px)
   ========================================= */

@media (max-width: 768px) {
  /* Container adjustment */
  .winota-hero-container {
    height: 90vh !important; /* Taller for mobile */
    min-height: 600px !important;
    margin-top: 0 !important;
    background-position: center bottom;
    background-size: cover;
    overflow: hidden !important;
  }

  /* 1. CAROUSEL STAGE & CHARACTERS */
  .winota-carousel-stage {
    position: absolute !important;
    right: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    top: 0 !important;
    z-index: 5 !important; /* Behind text */
    pointer-events: none; /* Allow clicks to pass through if needed, though chars might be clickable */
  }

  .hero-char {
    position: absolute !important;
    width: 80vw !important; /* Reduced width (was 85vw) */
    height: auto !important;
    bottom: 0px !important; /* Anchored to bottom */
    top: auto !important;
    transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1) !important;
    opacity: 1 !important; /* Always visible */
    display: block !important;
  }

  .hero-char img {
    height: auto !important;
    margin: 0 auto !important;
  }

  /* Active Character (Center) */
  .hero-char.pos-center {
    left: 50% !important;
    transform: translateX(-50%) scale(1.1) !important;
    z-index: 10 !important;
    filter: brightness(1) !important;
    bottom: -20px !important; /* Slightly lower to show more body */
  }

  /* Left Character */
  .hero-char.pos-left {
    left: 50% !important;
    transform: translateX(-110%) scale(0.85) translateY(-20px) !important; /* Move left and slightly up/back */
    z-index: 5 !important;
    filter: brightness(0.5) blur(1px) !important; /* Dimmed */
    opacity: 0.8 !important;
  }

  /* Right Character */
  .hero-char.pos-right {
    left: 50% !important;
    transform: translateX(10%) scale(0.85) translateY(-20px) !important; /* Move right and slightly up/back */
    z-index: 5 !important;
    filter: brightness(0.5) blur(1px) !important;
    opacity: 0.8 !important;
  }

  /* 2. CONTENT OVERLAY (Text + Button) */
  /* Corrected selector from .winota-hero-content to .winota-hero-overlay */
  .winota-hero-overlay {
    position: absolute !important;
    top: auto !important; /* Reset top */
    bottom: 80px !important; /* Anchor to bottom, space for footer/dots */
    left: 0 !important;
    width: 100% !important;
    height: auto !important;
    padding: 0 15px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    align-items: center !important;
    text-align: center !important;
    z-index: 20 !important; /* Above characters */
    transform: none !important; /* Remove centering transform */
  }

  /* Inner text container */
  .hero-text-content {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 10px !important;
  }

  .hero-subtitle {
    font-size: 16px !important;
    letter-spacing: 3px !important;
    margin-bottom: 5px !important;
    text-transform: uppercase;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 1) !important;
    font-weight: 700 !important;
    color: #fff !important;
  }

  .hero-main-title {
    font-size: 36px !important; /* Slightly smaller to fit */
    line-height: 1.1 !important;
    margin-bottom: 15px !important;
    text-shadow: 0 4px 8px rgba(0, 0, 0, 0.9) !important;
    color: #ffd700 !important;
  }

  .hero-main-title .highlight {
    font-size: 48px !important;
    display: block !important;
    margin-top: 5px !important;
  }

  /* 3. CTA BUTTON - NEW STRUCTURE OVERRIDES */
  .btn-winota-hero-cta {
    width: auto !important; /* Auto width based on content/flex */
    min-width: 200px !important;
    max-width: 90% !important;
    height: 54px !important; /* Slightly smaller on mobile */
    padding: 0 !important;
    margin-top: 15px !important;
    box-shadow: none !important; /* Reset old styles */
    border: none !important;
    border-radius: 0 !important;
    background: none !important;
    display: inline-flex !important;
    align-items: stretch !important;
    justify-content: center !important;
  }

  .btn-l {
    width: 24px !important;
  }

  .btn-c {
    font-size: 22px !important;
    padding: 0 5px !important;
  }

  .btn-r {
    width: 24px !important;
  }

  /* Terms link */
  .hero-terms-link {
    font-size: 12px !important;
    margin-top: 10px !important;
    color: rgba(255, 255, 255, 0.8) !important;
  }

  /* 4. CAT (Bottom Left) */
  .winota-hero-cat {
    display: block !important; /* Show cat */
    width: 80px !important;
    left: 10px !important;
    bottom: 10px !important;
    z-index: 30 !important;
    filter: brightness(0.8) !important;
  }

  /* 5. DOTS NAVIGATION */
  .hero-dots-nav {
    margin-top: 15px !important;
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
  }
}

@media (max-width: 836px) {
  .hero-char img {
    width: 100% !important;
  }
}

@media (max-width: 481px) {
  .hero-char img {
    width: 125% !important;
    max-width: none;
  }

  .hero-char.pos-center {
    transform: translateX(-65%) scale(1.1) !important;
  }
}

@media (max-width: 471px) {
  .hero-char img {
    width: 110% !important;
    max-width: none;
  }
}

@media (max-width: 371px) {
  .hero-char.pos-center {
    transform: translateX(-50%) scale(1.2) !important;
  }

  .section-header {
    flex-direction: column;
  }
}
