/* ============================================
   TRENDAWAY AGENCY — Responsive Styles
   ============================================ */

/* ——— Desktop Large: 1440px ——— */
@media (max-width: 1440px) {
  :root {
    --container-max: 1280px;
  }
}

/* ——— Desktop: 1280px ——— */
@media (max-width: 1280px) {
  :root {
    --container-max: 1140px;
    --container-pad-x: 48px;
  }

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

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

/* ——— Tablet Landscape: 1024px ——— */
@media (max-width: 1024px) {
  :root {
    --container-pad-x: var(--container-pad-x-md);
    --section-spacing: 100px;
    --section-spacing-sm: 64px;
  }

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

  .grid-5 {
    grid-template-columns: repeat(2, 1fr);
  }

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

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

  .cta-banner {
    padding: 48px 32px;
  }

  /* Navigation - hide desktop links, show hamburger */
  .nav__links {
    display: none;
  }

  .nav__cta {
    display: none;
  }

  .nav__toggle {
    display: flex !important;
  }
}

/* ——— Tablet Portrait: 768px ——— */
@media (max-width: 768px) {
  :root {
    --container-pad-x: var(--container-pad-x-sm);
    --section-spacing: 80px;
    --section-spacing-sm: 56px;
  }

  .grid-2 {
    grid-template-columns: 1fr;
  }

  .grid-3 {
    grid-template-columns: 1fr;
  }

  .grid-4 {
    grid-template-columns: 1fr;
  }

  .grid-5 {
    grid-template-columns: 1fr;
  }

  .grid-6 {
    grid-template-columns: repeat(2, 1fr);
  }

  .grid-12 {
    grid-template-columns: 1fr;
  }

  .col-span-1,
  .col-span-2,
  .col-span-3,
  .col-span-4,
  .col-span-5,
  .col-span-6,
  .col-span-7,
  .col-span-8,
  .col-span-9,
  .col-span-10,
  .col-span-11 {
    grid-column: span 1;
  }

  .section-header {
    margin-bottom: 48px;
  }

  .cta-banner {
    padding: 40px 24px;
  }

  .cta-banner__actions {
    flex-direction: column;
  }

  .btn-primary,
  .btn-secondary {
    width: 100%;
  }

  .result-card__secondary {
    grid-template-columns: repeat(2, 1fr);
  }

  /* Mobile menu overlay */
  .mobile-menu {
    position: fixed;
    inset: 0;
    z-index: var(--z-overlay);
    background: var(--background-primary);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 32px;
    opacity: 0;
    visibility: hidden;
    transition: opacity var(--transition-smooth), visibility var(--transition-smooth);
  }

  .mobile-menu.active {
    opacity: 1;
    visibility: visible;
  }

  .mobile-menu__link {
    font-size: 28px;
    font-weight: var(--weight-semibold);
    color: var(--text-primary);
    transition: color var(--transition-base);
  }

  .mobile-menu__link:hover,
  .mobile-menu__link:focus {
    color: var(--gold-primary);
  }

  .mobile-menu__close {
    position: absolute;
    top: 24px;
    right: 24px;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-primary);
    background: var(--background-card);
    border: 1px solid var(--border-default);
    border-radius: 50%;
  }

  .mobile-menu__cta {
    margin-top: 16px;
  }

  /* Filter buttons scroll */
  .filter-group {
    overflow-x: auto;
    flex-wrap: nowrap;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    padding-bottom: 8px;
  }

  .filter-group::-webkit-scrollbar {
    display: none;
  }

  /* Blog card adjustments */
  .blog-card__image {
    height: 180px;
  }

  /* Testimonial card */
  .testimonial-card {
    padding: 28px 24px;
  }

  .testimonial-card::before {
    font-size: 56px;
    top: 12px;
    left: 16px;
  }

  /* Tab buttons scroll */
  .tab-group {
    overflow-x: auto;
    flex-wrap: nowrap;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  .tab-group::-webkit-scrollbar {
    display: none;
  }
}

/* ——— Mobile Large: 480px ——— */
@media (max-width: 480px) {
  :root {
    --section-spacing: 64px;
    --section-spacing-sm: 48px;
  }

  .grid-6 {
    grid-template-columns: repeat(2, 1fr);
  }

  .metric-card {
    padding: 28px 20px;
  }

  .metric-card__value {
    font-size: 32px;
  }

  .card {
    padding: 24px;
  }

  .result-card {
    padding: 24px;
  }

  .result-card__metric-value {
    font-size: 28px;
  }

  .cta-banner {
    padding: 32px 20px;
  }

  .platform-card {
    padding: 28px 20px;
  }

  .mobile-menu__link {
    font-size: 24px;
  }
}

/* ——— Mobile Small: 360px ——— */
@media (max-width: 360px) {
  .grid-6 {
    grid-template-columns: 1fr;
  }

  .metric-card__value {
    font-size: 28px;
  }

  .result-card__secondary {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .blog-card__content {
    padding: 20px;
  }

  .testimonial-card__quote {
    font-size: var(--font-body);
  }
}

/* ——— Print Styles ——— */
@media print {
  body {
    background: #fff !important;
    color: #000 !important;
  }

  .header,
  .footer,
  .scroll-to-top,
  .reading-progress {
    display: none !important;
  }

  .section {
    padding: 24px 0 !important;
  }

  .card {
    border: 1px solid #ddd !important;
    break-inside: avoid;
  }
}
