/*
  Responsive Styles
  Mobile, Tablet, Desktop breakpoints
*/

/* ===== Tablet (max-width: 768px) ===== */
@media (max-width: 768px) {
  :root {
    /* Reduce section padding */
    --section-padding: 80vh;
    --spacing-xl: 6rem;
    --spacing-lg: 3rem;
    --spacing-md: 1.5rem;
  }

  /* Adjust container padding */
  .container {
    padding: 0 var(--spacing-md);
  }

  /* Hero section adjustments */
  .hero-section {
    min-height: 90vh;
  }

  /* Philosophy sections */
  .philosophy-section {
    min-height: 70vh;
  }

  /* Product & Tech sections */
  .product-section,
  .tech-section {
    min-height: 80vh;
  }

  /* CTA section */
  .cta-section {
    min-height: 50vh;
  }

  /* Scroll hint smaller on tablet */
  .scroll-hint {
    font-size: 1.5rem;
    bottom: var(--spacing-md);
  }

  /* Navbar adjustments for tablet */
  .navbar {
    padding: var(--spacing-xs) 0;
  }

  .navbar-container {
    padding: 0 var(--spacing-sm);
  }
}

/* ===== Mobile (max-width: 480px) ===== */
@media (max-width: 480px) {
  :root {
    /* Further reduce section padding */
    --section-padding: 70vh;
    --spacing-xl: 4rem;
    --spacing-lg: 2.5rem;
    --spacing-md: 1rem;
    --spacing-sm: 0.75rem;
  }

  /* Adjust container padding */
  .container {
    padding: 0 var(--spacing-md);
  }

  /* Hero section */
  .hero-section {
    min-height: 85vh;
    padding: var(--spacing-lg) 0;
  }

  .hero-title {
    letter-spacing: -0.01em;
  }

  /* Philosophy sections */
  .philosophy-section {
    min-height: 65vh;
  }

  /* Product & Tech sections */
  .product-section,
  .tech-section {
    min-height: 70vh;
  }

  /* CTA section */
  .cta-section {
    min-height: 45vh;
  }

  /* App Store badge */
  .app-store-badge img {
    width: 110px;
  }

  /* Scroll hint */
  .scroll-hint {
    font-size: 1.25rem;
    bottom: var(--spacing-sm);
  }

  /* Section text */
  .section-text {
    max-width: 100%;
  }

  /* Navbar adjustments for mobile */
  .navbar {
    padding: var(--spacing-xs) 0;
  }

  .navbar-logo,
  .navbar-cta {
    font-size: 0.875rem;
  }

  .navbar-cta {
    padding: 0.4rem 0.75rem;
  }
}

/* ===== Large Desktop (min-width: 1440px) ===== */
@media (min-width: 1440px) {
  :root {
    /* Increase spacing on large screens */
    --spacing-xl: 10rem;
    --spacing-lg: 5rem;
  }

  /* Slightly larger container */
  .container {
    max-width: 800px;
  }
}

/* ===== Accessibility - Reduce Motion ===== */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }

  html {
    scroll-behavior: auto;
  }

  .scroll-hint {
    animation: none;
  }

  [data-animate] {
    opacity: 1;
    transform: none;
  }
}
