/* 项目索引页：沿用首页案例卡片的视觉语言，用排序与证据层级表达强弱。 */
.projects-hero { padding: 56px 0 30px; }
.projects-hero h1 { margin: 2px 0 12px; font-size: var(--fs-4xl); line-height: 1.2; }
.projects-lead { max-width: 700px; color: var(--muted); font-size: var(--fs-lg); line-height: 1.75; }

.ranking-note {
  display: grid; grid-template-columns: 86px minmax(0, 1fr); gap: 18px;
  margin-top: 28px; padding: 17px 0;
  border-top: 2px solid var(--ink); border-bottom: 1px dashed var(--line);
}
.ranking-note strong { color: var(--accent); font-size: var(--fs-sm); letter-spacing: .08em; }
.ranking-note p { color: var(--muted); font-size: var(--fs-md); line-height: 1.7; }

.projects-index { padding: 8px 0 76px; }
.project-symbols { position: absolute; width: 0; height: 0; overflow: hidden; }
.project-card-grid {
  list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px 18px; margin: 0; padding: 0;
}
.project-card-grid > li { display: flex; min-width: 0; }
.project-card {
  width: 100%; min-width: 0; display: flex; flex-direction: column;
}
.project-card .corner { padding: 2px 10px; font-size: var(--fs-xs); }
.project-card .card-shot { background: var(--bg2); }
.project-card .case-no { color: var(--accent-text); }
.project-card h2 { font-size: 16.5px; line-height: 1.5; }
.project-card .project-summary { color: var(--muted); font-size: var(--fs-sm); line-height: 1.68; }
.project-card .project-proof {
  margin-top: 10px; padding-top: 10px; border-top: 1px dashed var(--line);
  color: var(--muted); font-size: var(--fs-sm); line-height: 1.65;
}
.project-card .project-proof strong { color: var(--accent-text); font-weight: 800; }
.project-card .chips { margin-top: auto; padding-top: 15px; }
.project-card-grid > li:nth-child(-n+3) .case-no { color: var(--accent); }
.project-card-grid > li:last-child { grid-column: 2; }
.projects-footnote { margin-top: 24px; color: var(--muted); font-size: var(--fs-sm); line-height: 1.75; }

@media (min-width: 641px) and (max-width: 899px) {
  .project-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .project-card-grid > li:last-child { grid-column: 1 / -1; width: calc((100% - 18px) / 2); margin-inline: auto; }
}

@media (max-width: 640px) {
  .projects-hero { padding: 36px 0 20px; }
  .projects-hero h1 { font-size: var(--fs-3xl); }
  .projects-lead { font-size: var(--fs-base); }
  .ranking-note { grid-template-columns: 1fr; gap: 5px; margin-top: 22px; padding: 14px 0; }
  .project-card-grid { grid-template-columns: 1fr; gap: 22px; }
  .project-card-grid > li:last-child { grid-column: auto; }
  .project-card {
    display: grid; grid-template-columns: 96px minmax(0, 1fr); column-gap: 14px;
    align-items: start; padding: 16px;
  }
  .project-card .corner { font-size: 10px; }
  .project-card .card-shot {
    grid-column: 1; grid-row: 1 / span 3; width: 96px; margin: 0; align-self: center;
  }
  .project-card .case-no,
  .project-card h2,
  .project-card .project-summary { grid-column: 2; }
  .project-card .case-no { margin-top: 0; }
  .project-card h2 { margin-top: 3px; font-size: var(--fs-md); }
  .project-card .project-summary { margin-top: 5px; font-size: var(--fs-xs); line-height: 1.55; }
  .project-card .project-proof { grid-column: 1 / -1; margin-top: 13px; }
  .project-card .chips { grid-column: 1 / -1; margin-top: 12px; padding-top: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .project-card { transition: none; }
  .project-card:hover { transform: none; }
}
