/* Mobile First Responsive Design */

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {
  .container {
    --container-padding: 24px;
  }

  .news-grid {
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  }
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
  .container {
    --container-padding: 32px;
  }

  .section-title {
    font-size: 4rem;
  }

  .news-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: var(--spacing-2xl);
  }

  .content-grid {
    grid-template-columns: 1fr 1fr;
    gap: var(--spacing-4xl);
  }

  .pagination-nav {
    flex-direction: row;
  }

  .press-content {
    flex-wrap: nowrap;
  }
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
  .container {
    --container-padding: 40px;
  }

  .news-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .news-section {
    padding: var(--spacing-6xl) 0 70px 0;
  }
}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
  .container {
    --container-padding: 0;
  }

  .news-grid {
    grid-template-columns: repeat(4, 1fr);
  }

  .section-title {
    font-size: 4.125rem;
  }
}

/* Extra extra large devices (larger desktops, 1400px and up) */
@media (min-width: 1400px) {
  .main-container {
    max-width: 1920px;
    margin: 0 auto;
  }
}

/* Mobile specific adjustments */
@media (max-width: 575px) {
  .news-section {
    padding: var(--spacing-3xl) 0 var(--spacing-2xl) 0;
  }

  .content-section {
    padding: 0 0 var(--spacing-4xl) 0;
  }

  .section-title {
    font-size: 2.75rem;
  }

  .news-title {
    font-size: 2rem;
  }

  .press-title {
    font-size: 2rem;
  }
  .press-badge {display: none;}

  .pagination-nav {
    flex-direction: column;
    gap: var(--spacing-lg);
    align-items: center;
  }

  .pagination-controls {
    order: 2;
  }

  .view-more-link {
    order: 1;
  }

  .press-meta {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--spacing-sm);
  }

  .faq-question {
    min-height: 80px;
    padding: var(--spacing-lg) 0;
  }

  .faq-question span {
    font-size: 2.125rem;
  }
}

/* High DPI displays */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  .news-image {
    background-size: cover;
  }
}

/* Print styles */
@media print {
  .pagination-nav,
  .faq-toggle {
    display: none;
  }

  .news-card,
  .press-item,
  .faq-item {
    break-inside: avoid;
  }

  .main-container {
    max-width: none;
  }

  .container {
    max-width: none;
    padding: 0;
  }
}

/* Reduced motion preferences */
@media (prefers-reduced-motion: reduce) {
  .news-card {
    transition: none;
  }

  .pagination-btn {
    transition: none;
  }

  .faq-toggle img {
    transition: none;
  }
}

/* Dark mode support */
@media (prefers-color-scheme: dark) {
  :root {
    --color-text-primary: #ffffff;
    --color-text-secondary: #b0b0b0;
    --color-text-tertiary: #d0d0d0;
    --color-text-quaternary: #ffffff;
    --color-text-light: #a0a0a0;
    --color-text-muted: #c0c0c0;
    --color-text-pale: #909090;
    --color-white: #1a1a1a;
    --color-background: #2a2a2a;
    --color-border: #404040;
  }

  .news-card {
    background: #2a2a2a;
  }

  .pagination-btn {
    background: #2a2a2a;
    border-color: #404040;
  }
}
