/* ==========================================================================
   AgriNova - Responsive Breakpoints & Viewport Optimizations
   responsive.css
   ========================================================================== */

/* Large Desktop (1440px+) */
@media (min-width: 1400px) {
  .container {
    max-width: 1260px;
  }
}

/* Laptops & Standard Desktop (992px to 1199px) */
@media (max-width: 1199.98px) {
  .hero-image-container {
    max-height: 460px;
  }
  .hero-image-container img {
    height: 460px;
  }
  .stat-number {
    font-size: 1.85rem;
  }
}

/* Tablets (768px to 991px) */
@media (max-width: 991.98px) {
  .hero-wrapper {
    padding-top: 2.75rem;
    padding-bottom: 3.5rem;
  }
  .hero-image-container {
    max-height: 380px;
  }
  .hero-image-container img {
    height: 380px;
  }
  .hero-stats-overlap {
    margin-top: -2.5rem;
  }
  .stat-card {
    padding: 1.25rem 1rem;
    margin-bottom: 1rem;
  }
  .gallery-item {
    flex: 0 0 280px;
  }
  .collab-banner {
    min-height: 340px;
  }
  .pricing-card.featured {
    transform: none;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
  }
  .site-footer {
    padding-top: 3.5rem;
  }
}

/* Mobile Devices (Under 768px) */
@media (max-width: 767.98px) {
  .hero-wrapper {
    padding-top: 2rem;
    padding-bottom: 2.5rem;
  }
  .hero-ctas {
    flex-direction: column;
    width: 100%;
    gap: 0.85rem;
  }
  .hero-ctas .btn {
    width: 100%;
  }
  .hero-image-container {
    max-height: 280px;
    border-radius: var(--an-radius-lg);
  }
  .hero-image-container img {
    height: 280px;
  }
  .hero-stats-overlap {
    margin-top: -1.75rem;
  }
  .hero-badge-overlay {
    top: 1rem;
    right: 1rem;
    font-size: 0.725rem;
    padding: 0.35rem 0.75rem;
  }
  .stat-number {
    font-size: 1.65rem;
  }
  .gallery-section,
  .editorial-intro,
  .solutions-section,
  .platform-section,
  .impact-section {
    padding: 3.5rem 0;
  }
  .impact-metric-box {
    margin-bottom: 1rem;
    padding: 1.25rem;
  }
  .impact-metric-value {
    font-size: 2.2rem;
  }
  .footer-bottom-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
  }
  .page-header {
    padding: 2.75rem 0 2.25rem 0;
  }
}

/* Small Mobile (Under 480px) */
@media (max-width: 479.98px) {
  h1, .h1 {
    font-size: 1.95rem;
  }
  h2, .h2 {
    font-size: 1.6rem;
  }
  .hero-image-container {
    max-height: 230px;
  }
  .hero-image-container img {
    height: 230px;
  }
  .gallery-item {
    flex: 0 0 250px;
  }
  .an-card {
    padding: 1.35rem;
  }
  .pricing-card {
    padding: 1.75rem 1.25rem;
  }
}
