/* ==========================================================================
   Resources — Figma "Resources" 116:35
   Toolbar 128:483 · Resources grid 128:502 (Doc Tile 121:86) · Core focus 128:669
   Also loaded by resource type archives and the resource detail page (doc tiles).
   ========================================================================== */

/* Toolbar: type filters (links) + search */
.resources-toolbar { margin-bottom: 32px; align-items: center; }
.resources-toolbar .filters { gap: 10px; }
.resources-toolbar .filter { display: inline-flex; align-items: center; }
.resources-toolbar .filter[aria-current="page"] { background: var(--navy-900); border-color: var(--navy-900); color: #fff; }
.resources-toolbar .search { width: 280px; min-width: 0; padding: 10px 16px; }
.resources-toolbar .search:focus-within { border-color: var(--navy-900); box-shadow: 0 0 0 3px rgba(62, 155, 92, 0.25); }
.resources-toolbar .search img { width: 16px; height: 16px; flex-shrink: 0; }
.resources-toolbar .search input { min-width: 0; line-height: 22px; }
.resources-toolbar .search input::placeholder { color: var(--color-text-muted); }

.resources-status { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin: -12px 0 24px; }
.resources-empty { padding: 48px 0; }

/* Grid of doc tiles (4 × 294px at 1440) */
.resources-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; align-items: stretch; }

/* Doc tile — Figma 121:86 (overrides of the shared .doc-tile) */
.resources-grid .doc-tile {
  border-color: var(--color-border-default); border-radius: var(--radius-lg);
  padding: 24px 24px 28px; gap: 18px; min-width: 0;
}
.resources-grid .doc-tile__thumb { aspect-ratio: auto; height: 184px; border-color: var(--color-border-default); }
.resources-grid .doc-tile .tag { font-size: 12px; }
.doc-tile .card-title a { color: inherit; }
.doc-tile .card-title a:hover { text-decoration: underline; text-underline-offset: 3px; }
.doc-tile__actions { gap: 10px; }
.doc-tile__actions .pill { padding: 10px 16px; }
.doc-tile--olive .pill { border-color: var(--olive-700); color: var(--olive-700); }
.doc-tile--amber .pill { color: var(--amber-500); border-color: var(--amber-500); }
.doc-tile--amber .pill:hover { background: rgba(224, 151, 60, 0.08); }
.doc-tile--sage .pill:hover { background: rgba(94, 138, 104, 0.08); }

/* Pagination — Figma 128:662 */
.resources-list .pagination { margin-top: 32px; }

/* Core focus (AMME) — navy band, Figma 128:669 */
.core-focus {
  display: flex; align-items: center; gap: 64px;
  padding: 64px var(--section-x-tight); background: var(--color-brand-navy); color: var(--color-text-inverse);
}
.core-focus__glow {
  position: absolute; left: -420px; top: -32px; width: 880px; height: 880px; pointer-events: none; z-index: 0;
  background: radial-gradient(circle, rgba(94, 138, 104, 0.22) 0%, rgba(94, 138, 104, 0) 60%);
}
.section.core-focus > .core-focus__glow { position: absolute; z-index: 0; }
.core-focus__media {
  flex: 0 0 420px; height: 300px; border-radius: var(--radius-lg); overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.2);
}
.core-focus__media img { width: 100%; height: 100%; object-fit: cover; }
.core-focus__text { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 16px; align-items: flex-start; }
.core-focus__text .h2 { color: var(--color-text-inverse); }
.core-focus__text .lede { color: rgba(255, 255, 255, 0.85); max-width: 828px; }

/* Responsive */
@media (max-width: 1200px) {
  .resources-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 1100px) {
  .resources-toolbar { flex-direction: column; align-items: stretch; }
  .resources-toolbar .search { width: 100%; }
}
@media (max-width: 960px) {
  .resources-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .core-focus { flex-direction: column; align-items: stretch; gap: 32px; padding: 48px var(--section-x); }
  .core-focus__media { flex: none; width: 100%; max-width: 560px; height: auto; aspect-ratio: 420 / 300; }
}
@media (max-width: 640px) {
  .resources-list.section { padding: 48px 24px; }
  .resources-toolbar .filters { flex-wrap: nowrap; overflow-x: auto; margin: 0 -24px; padding: 2px 24px 6px; scrollbar-width: none; }
  .resources-toolbar .filters::-webkit-scrollbar { display: none; }
  .resources-toolbar .filter { flex-shrink: 0; }
  .resources-grid { grid-template-columns: 1fr; gap: 16px; }
  .resources-grid .doc-tile__thumb { height: auto; aspect-ratio: 16 / 10; }
  .core-focus { padding: 48px 24px; }
  .core-focus__media { max-width: none; }
}
