/* ==========================================================================
   How to get involved · Members map — Figma 116:36
   Two pathways 202:837 · Directory 202:1145 · CTA 130:798
   (Members map styles: members-map.css, loaded with the template part.)
   ========================================================================== */

/* Two pathways ------------------------------------------------------------ */
.pathways .section-head { margin-bottom: 40px; }
.pathways__cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; align-items: stretch; }

.pathway { gap: 14px; padding: 0 28px 28px; box-shadow: var(--shadow-medium); }
.pathway .card__bar { margin: 0 0 20px; }
.pathway__icon { width: 48px; height: 48px; border-radius: 50%; background: var(--sage-700); flex-shrink: 0; }
.pathway--navy .pathway__icon { background: var(--navy-900); }
.pathway--green .pathway__icon { background: var(--green-600); }
.pathway--amber .pathway__icon { background: var(--amber-500); }
.pathway__section { display: flex; flex-direction: column; gap: 14px; margin-top: 18px; }
.pathway__section p, .pathway__list li { font-size: 15px; line-height: 22px; color: var(--color-text-body); }
.pathway__list li { position: relative; padding-left: 16px; }
.pathway__list li::before { content: "•"; position: absolute; left: 2px; }
.pathway__cta { margin-top: 24px; }

.pathway__apply > summary { list-style: none; display: inline-flex; cursor: pointer; }
.pathway__apply > summary::-webkit-details-marker { display: none; }
.pathway__apply > summary::after { content: ""; width: 8px; height: 8px; margin-left: 4px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: translateY(-2px) rotate(45deg); transition: transform .2s; }
.pathway__apply[open] > summary::after { transform: translateY(2px) rotate(-135deg); }
.pathway__form {
  margin-top: 20px; padding: 24px; border-radius: var(--radius-lg);
  border: 1px solid var(--color-border-default); background: var(--color-bg-soft);
}

/* Directory of member organizations -------------------------------------- */
.directory .section-head { margin-bottom: 40px; }
.directory__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.org-card { gap: 14px; padding: 0 28px 28px; min-height: 260px; box-shadow: var(--shadow-medium); }
.org-card .card__bar { margin: 0 0 20px; background: var(--olive-700); }
.org-card:nth-child(4n+2) .card__bar { background: var(--navy-900); }
.org-card:nth-child(4n+3) .card__bar { background: var(--green-700); }
.org-card:nth-child(4n) .card__bar { background: var(--amber-600); }
.org-card__mark { width: 48px; height: 48px; border-radius: 50%; background: var(--sage-700); flex-shrink: 0; }
.org-card:nth-child(4n+2) .org-card__mark { background: var(--navy-900); }
.org-card:nth-child(4n+3) .org-card__mark { background: var(--green-600); }
.org-card:nth-child(4n) .org-card__mark { background: var(--amber-500); }
.org-card__logo { display: flex; align-items: center; height: 48px; }
.org-card__logo img { max-height: 48px; width: auto; max-width: 160px; object-fit: contain; }
.org-card .small { font-size: 15px; line-height: 22px; }
.org-card .link-more { margin-top: 0; }
.org-card .link-more:hover { text-decoration: underline; text-underline-offset: 3px; }

/* CTA ---------------------------------------------------------------------- */
.involvement-cta.section { padding: 64px var(--section-x-tight); background: var(--color-bg-canvas); }
.involvement-cta .cta-box .lede { flex: 1; min-width: 0; }
.involvement-cta .pill { flex-shrink: 0; }

/* Responsive --------------------------------------------------------------- */
@media (max-width: 1100px) {
  .directory__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 960px) {
  .pathways__cards { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .pathways.section, .directory.section { padding: 48px 24px; }
  .pathway { padding: 0 20px 24px; }
  .pathway__cta .btn, .pathway__apply > summary { width: 100%; justify-content: center; }
  .pathway__form { padding: 16px; }

  /* Directory: list-style rows (Figma mobile partner rows) */
  .directory__grid { grid-template-columns: 1fr; gap: 12px; }
  .org-card {
    display: grid; grid-template-columns: 48px minmax(0, 1fr); column-gap: 16px; row-gap: 4px;
    min-height: 0; padding: 0 20px 20px; align-items: start;
  }
  .org-card .card__bar { grid-column: 1 / -1; margin-bottom: 14px; }
  .org-card__mark, .org-card__logo { grid-row: span 3; }
  .org-card__logo { width: 48px; }
  .org-card__logo img { max-width: 48px; }
  .org-card > :not(.card__bar):not(.org-card__mark):not(.org-card__logo) { grid-column: 2; }

  .involvement-cta.section { padding: 32px 24px 48px; }
  .involvement-cta .cta-box { flex-direction: column; align-items: flex-start; padding: 24px; }
}
