/* === 賛助会員セクション全体 === */
.supporters-section {
  margin: 2rem auto;
  padding: 2rem;
  color: var(--color-text);
  text-align: center;
}

/* ラッパーで中央整列を管理 */
.supporters-wrapper {
  max-width: 640px;
  margin: 0 auto;
}

/* セクションタイトル */
#supporters-title {
  font-size: 1.4rem;
  margin-bottom: 1.5rem;
  color: var(--color-text);
}

/* グリッド配置（2列固定、中央寄せ） */
.supporters-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
  justify-content: center;
  margin: 0 auto;
}

/* 各支援者カード */
.supporter-card-vertical {
  text-align: left;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
}

/* リンク全体をクリック可能に */
.supporter-link {
  display: block;
  text-decoration: none;
  color: var(--color-text);
  width: 100%;
}

/* ロゴ＋名前の配置 */
.supporter-content {
  display: flex;
  align-items: center;
  gap: 1rem;
  width: 100%;
  flex-wrap: wrap;
}

/* ロゴ画像 */
.supporter-logo {
  height: 45px;
  width: auto;
  object-fit: contain;
}

/* 団体名 */
.supporter-name {
  font-size: 0.95rem;
  font-weight: bold;
  text-align: left;
  flex: 1;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
  word-break: break-word !important;
}

/* 注釈ラッパー：グリッドの外、右寄せ */
.supporter-note-wrapper {
  width: 100%;
  text-align: right;
  margin-top: 0.5rem;
}

/* 注釈テキスト */
.supporter-note {
  font-size: 0.75rem;
  color: var(--color-text);
}

/* スマホ対応（1列表示） */
@media screen and (max-width: 768px) {
  .supporters-grid {
    grid-template-columns: 1fr !important;
  }
}
