  /* ─── RESEARCH PAGE SPECIFIC ─── */
  .results-list {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 4rem 4rem;
  }

  .results-count {
    font-family: 'Barlow', sans-serif;
    font-size: 0.8rem;
    color: var(--ink-light);
    opacity: 0.5;
    margin-bottom: 1.5rem;
    letter-spacing: 0.04em;
  }

  .no-results {
    text-align: center;
    padding: 4rem 2rem;
    color: var(--ink-light);
    font-size: 1.1rem;
  }

  .category-tabs {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 4rem 1.5rem;
    display: flex;
    gap: 0;
    border-bottom: 1px solid rgba(44,36,22,0.08);
    margin-bottom: 2rem;
  }

  .category-tab {
    font-family: 'Barlow', sans-serif;
    font-size: 0.8rem;
    font-weight: 500;
    letter-spacing: 0.04em;
    padding: 0.75rem 1.5rem;
    border: none;
    background: none;
    color: var(--ink-light);
    cursor: pointer;
    border-bottom: 2px solid transparent;
    margin-bottom: -1px;
    transition: all 0.3s var(--ease);
  }

  .category-tab:hover { color: var(--ink); }
  .category-tab.active {
    color: var(--ink);
    font-weight: 600;
    border-bottom-color: var(--amber);
  }

  .study-card {
    animation: fadeUp 0.4s var(--ease) both;
  }

  /* ─── PAGINATION ─── */
  .pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.5rem;
    padding: 2rem 0;
    margin-top: 1rem;
  }

  .pagination button {
    font-family: 'Barlow', sans-serif;
    font-size: 0.875rem;
    font-weight: 500;
    min-width: 2.5rem;
    height: 2.5rem;
    border: 1px solid rgba(44,36,22,0.12);
    border-radius: var(--radius-sm);
    background: white;
    color: var(--ink-light);
    cursor: pointer;
    transition: all 0.2s var(--ease);
  }

  .pagination button:hover { border-color: var(--amber); color: var(--ink); }
  .pagination button.active { background: var(--ink); color: var(--warm-white); border-color: var(--ink); }
  .pagination button:disabled { opacity: 0.3; cursor: default; }

  .pagination .page-arrow {
    font-size: 1rem;
    padding: 0 0.75rem;
  }

  @media (max-width: 900px) {
    /* ── Global: kill any horizontal overflow on this page ── */
    html, body { overflow-x: hidden; max-width: 100%; }

    .results-list { padding: 0 1.5rem 3rem; }

    /* ── Hero heading: lighter on small phones ── */
    .page-header { padding: 6.5rem 1.5rem 1.5rem; }
    .page-header h1 {
      font-size: clamp(1.625rem, 7vw, 2rem);
      line-height: 1.25;
    }

    /* ── Filter pills: wrap instead of overflowing horizontally ── */
    .filter-bar {
      display: flex;
      flex-wrap: wrap;
      gap: 0.5rem;
      padding: 0 1.5rem 1.25rem;
      overflow-x: visible;
      box-sizing: border-box;
      max-width: 100%;
    }
    .filter-pill {
      min-height: 44px;
      min-width: 44px;
      padding: 0.6rem 1rem;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      box-sizing: border-box;
    }

    /* ── Category tabs: horizontally scrollable, full bleed-safe ── */
    .category-tabs {
      padding: 0 1.5rem 1rem;
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
      scrollbar-width: none;
      flex-wrap: nowrap;
      scroll-snap-type: x proximity;
      max-width: 100%;
      box-sizing: border-box;
    }
    .category-tabs::-webkit-scrollbar { display: none; }
    .category-tab {
      flex: 0 0 auto;
      white-space: nowrap;
      scroll-snap-align: start;
      min-height: 44px;
    }

    /* ── Search bar/input: constrain to viewport ── */
    .search-bar {
      padding: 0 1.5rem 1.5rem;
      box-sizing: border-box;
      max-width: 100%;
    }
    .search-input {
      width: 100%;
      max-width: 100%;
      box-sizing: border-box;
    }

    /* ── Pagination: proper touch targets ── */
    .pagination {
      flex-wrap: wrap;
      padding: 2rem 1rem;
    }
    .pagination button {
      min-width: 44px;
      min-height: 44px;
    }
    .pagination .page-arrow {
      min-width: 44px;
      min-height: 44px;
    }

    /* ── Results count: legible, breathing room from search ── */
    .results-count {
      font-size: 1rem;
      margin-top: 0.75rem;
      margin-bottom: 1.25rem;
      opacity: 1;
      font-weight: 700;
      color: var(--ink);
    }
    .results-count::before {
      content: '';
      display: inline-block;
      width: 6px;
      height: 6px;
      border-radius: 50%;
      background: var(--amber);
      margin-right: 0.5rem;
      vertical-align: middle;
    }

    /* ── Study category pill: keep tight on narrow phones ── */
    .study-tag {
      max-width: 60vw;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }
    .study-tags { display: flex; flex-wrap: wrap; gap: 0.4rem; margin-top: 0.5rem; }

    /* ── Footer social icons: 44px hit boxes, even spacing ── */
    footer .footer-col a img[alt="Instagram"],
    footer .footer-col a img[alt="X"],
    footer .footer-col a img[alt="TikTok"],
    footer .footer-col a img[alt="YouTube"],
    footer .footer-col a img[alt="Newsletter"],
    footer .footer-col a img[alt="LinkedIn"] {
      width: 24px;
      height: 24px;
    }
    footer .footer-col a:has(> img) {
      min-width: 44px;
      min-height: 44px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
    }

    /* ── Nav: ensure logo has breathing room and hamburger is a real target ── */
    nav .nav-left { max-width: calc(100% - 64px); }
    .nav-hamburger { min-width: 44px; min-height: 44px; }
  }

  @media (max-width: 600px) {
    .page-header h1 { font-size: clamp(1.5rem, 7.5vw, 1.875rem); }
    .filter-pill { font-size: 0.8rem; padding: 0.55rem 0.9rem; }
    .study-tag { max-width: 55vw; }
  }
