/* ==========================================================================
   RESPONSIVE DESIGN SYSTEM
   Laptop & Mobile Focused | Pixel-Perfect Sizing
   ========================================================================== */

/* Laptop Screens (Up to 1440px) */
@media (max-width: 1440px) {
  .hero-main-grid {
    grid-template-columns: 1.4fr 1fr;
    gap: 20px;
  }

  .hero-title {
    font-size: clamp(2.8rem, 4.8vw, 4.6rem);
  }

  .hero-tagline {
    font-size: clamp(0.95rem, 1.4vw, 1.25rem);
    letter-spacing: 0.4em;
  }
}

/* Laptop Screens (Up to 1200px) */
@media (max-width: 1200px) {
  .hero-standalone-wrapper, .hero-foreground-layer {
    background-position: 70% center;
  }

  .hero-title {
    font-size: clamp(2rem, 3.4vw, 3.2rem);
  }

  .hero-content {
    transform: translateY(-25px);
  }

  .hero-tagline {
    font-size: 0.85rem;
    letter-spacing: 0.28em;
  }
}

/* Tablet Screens (Up to 992px) */
@media (max-width: 992px) {
  .hero-standalone-wrapper, .hero-foreground-layer {
    background-position: 80% center;
  }

  .hero-standalone-wrapper {
    padding: 60px 0;
  }

  .hero-main-grid {
    grid-template-columns: 1fr;
    text-align: left;
  }

  .hero-title {
    white-space: normal;
    font-size: clamp(2.4rem, 6.5vw, 3.6rem);
  }

  .hero-content {
    max-width: 100%;
    transform: none;
  }

  .hero-tagline {
    text-align: left;
  }

  .hero-visual-stage {
    min-height: 380px;
  }
}

/* Mobile Screens (Up to 768px) */
@media (max-width: 768px) {
  .hero-standalone-wrapper {
    background-position: 85% top;
    background-size: cover;
  }

  .hero-standalone-wrapper .app-container {
    padding: 0 20px;
  }

  .hero-standalone-wrapper {
    padding: 40px 0;
    align-items: flex-start;
  }

  .hero-content {
    transform: none;
  }

  .hero-title {
    white-space: normal;
    font-size: clamp(2rem, 8vw, 3rem);
    line-height: 1.15;
  }

  .hero-tagline {
    font-size: 0.72rem;
    letter-spacing: 0.2em;
    margin-top: 10px;
    text-align: left;
  }

  .hero-visual-stage {
    min-height: 300px;
  }
}
