/* MOBILE HERO - FORCE FULL SCREEN BACKGROUND COVERAGE */

@media (max-width: 768px) {
  /* Show mobile hero, hide desktop */
  .mobile-hero {
    display: block !important;
  }
  
  .desktop-hero {
    display: none !important;
  }

  /* Mobile hero container - FULL SCREEN */
  .mobile-hero {
    position: relative !important;
    width: 100vw !important;
    height: 100vh !important;
    min-height: 100vh !important;
    max-height: 100vh !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .mobile-hero .carousel-container {
    width: 100% !important;
    height: 100vh !important;
  }

  /* Mobile slides - FULL SCREEN */
  .mobile-hero .carousel-slide,
  .mobile-hero .mobile-slide {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100vh !important;
    overflow: hidden !important;
  }

  /* FORCE background to cover ENTIRE screen - any div with background-image INSIDE mobile slide */
  .mobile-hero .carousel-slide div[style*="background-image"],
  .mobile-hero .mobile-slide div[style*="background-image"] {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    z-index: 1 !important;
  }

  /* FORCE slide background itself to cover */
  .mobile-hero .carousel-slide[style*="background:"],
  .mobile-hero .mobile-slide[style*="background:"] {
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
  }

  /* Video backgrounds - FULL COVER */
  .mobile-hero iframe[src*="youtube"],
  .mobile-hero iframe[src*="vimeo"] {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    width: 177.78vh !important;
    height: 100vh !important;
    min-width: 100% !important;
    min-height: 100% !important;
    transform: translate(-50%, -50%) !important;
    z-index: 1 !important;
  }

  /* GI patterns - FULL SCREEN */
  .mobile-hero .gi-pattern-bg {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 3 !important;
  }

  /* Content wrapper - ON TOP of background */
  .mobile-hero .carousel-slide > div[style*="position:relative"] {
    position: relative !important;
    z-index: 10 !important;
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    padding: 80px 20px 100px !important;
  }

  /* Text content - always on top */
  .mobile-hero h1,
  .mobile-hero p,
  .mobile-hero a,
  .mobile-hero span {
    position: relative !important;
    z-index: 15 !important;
  }

  /* Navigation - always on top */
  .mobile-hero .carousel-prev,
  .mobile-hero .carousel-next,
  .mobile-hero .carousel-dot,
  .mobile-hero .mobile-carousel-dots {
    position: absolute !important;
    z-index: 50 !important;
    pointer-events: auto !important;
  }
}

/* Extra small mobile */
@media (max-width: 390px) {
  .mobile-hero h1[data-hero-title] {
    font-size: 1.1rem !important;
  }
  
  .mobile-hero p[data-hero-subtitle] {
    font-size: 0.7rem !important;
  }
}

/* Landscape */
@media (max-width: 768px) and (orientation: landscape) {
  .mobile-hero {
    height: 100vh !important;
  }
  
  .mobile-hero .carousel-slide > div[style*="position:relative"] {
    padding: 40px 20px 70px !important;
  }
}

/* Tablet - show desktop version */
@media (min-width: 769px) and (max-width: 1024px) {
  .desktop-hero {
    display: block !important;
  }
  
  .mobile-hero {
    display: none !important;
  }
}
