/* 小さなページ：楽しみ方を教えてくれる人（/curator）、写真のクレジット（/credits）、404 と準備中（/404・/place-soon）
   頭はどれも B 型（写真なし、h1 → リード → 墨の線）。 */

/* ---------- 楽しみ方を教えてくれる人：1人ずつ横長の段。顔（円 102px）・名前と得意なテーマ・紹介文と教えている場所 ---------- */
.silver main .curators { display: block; margin-top: var(--s-8); }
.silver main .curator { display: grid; grid-template-columns: 102px minmax(0, 1fr) minmax(0, 1.414fr); column-gap: var(--s-4); align-items: start; padding: var(--s-6) 0; border: 0; border-bottom: 1px solid var(--ds-rule); }
.silver main .curator:first-child { padding-top: 0; }
.silver main .curator__photo { position: relative; width: 102px; aspect-ratio: 1; margin: 0; border: 0; border-radius: 50%; overflow: hidden; background: var(--ds-face); }
.silver main .curator__photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.silver main .curator__photo:not(:has(img)) { visibility: hidden; }
.silver main .curator__photo > span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.silver main .curator__head h2 { margin: 0 0 var(--s-0); padding: 0; border: 0; font-size: var(--s-1); line-height: var(--lh-head); letter-spacing: .04em; }
.silver main .curator__head .facts { gap: var(--s-n2); }
.silver main .curator__head .facts > div { grid-template-columns: minmax(0, 1fr); row-gap: 0; }
.silver main .curator__body { min-width: 0; }
.silver main .curator__bio { margin: 0; max-width: 40em; }
.silver main .curator__picks { display: flex; flex-wrap: wrap; gap: var(--s-n4); margin: var(--s-1) 0 0; padding: 0; list-style: none; }
.silver main .curator__picks li { margin: 0; font-size: var(--s-n1); }
.silver main .curator__picks a { display: inline-flex; align-items: center; min-height: 44px; box-sizing: border-box; padding: 0 var(--s-n2); border: 1px solid var(--ds-rule); border-radius: 4px; color: var(--ds-sumi); font-size: var(--s-n1); line-height: var(--lh-head); text-decoration: none; }
.silver main .curator__picks a:hover { border-color: var(--ds-sumi); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .25em; }
.silver main .explainer { margin-top: var(--ds-sec); margin-bottom: 0; padding: 0; border: 0; background: none; }
.silver main .explainer ul { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--s-1) var(--s-4); margin: 0; padding: 0; list-style: none; }
.silver main .explainer li { display: grid; gap: var(--s-n4); }
.silver main .explainer li strong { font-size: var(--s-0); line-height: var(--lh-head); }
.silver main .explainer li span { color: var(--ds-sumi); font-size: var(--s-n1); line-height: var(--lh-body); }
.silver main .explainer + p { margin-top: var(--s-6); }

/* ---------- 写真のクレジット：1枚を1行に。写真（1.414:1）・何の写真か・出典とライセンス ---------- */
.silver main .credits { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--ds-rule); }
.silver main .credit { display: grid; grid-template-columns: 144px minmax(0, 1fr) minmax(0, 1fr); column-gap: var(--s-4); align-items: start; margin: 0; padding: var(--s-0) 0; border-bottom: 1px solid var(--ds-rule); }
.silver main .credit__media { grid-column: 1; grid-row: 1 / span 2; width: 144px; aspect-ratio: 1.414 / 1; margin: 0; overflow: hidden; background: var(--ds-face); }
.silver main .credit__media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.silver main .credit__what { grid-column: 2; }
.silver main .credit__subject { margin: 0; }
.silver main .credit__id { margin: var(--s-n4) 0 0; color: var(--ds-muted); font-size: var(--s-n2); line-height: var(--lh-body); }
.silver main .credit__source { grid-column: 3; margin: 0; font-size: var(--s-n1); line-height: var(--lh-body); overflow-wrap: anywhere; }
.silver main .credits-group + .credits-group > .credits + .note { margin-top: var(--s-1); }
.silver main .credits-map ul { max-width: 40em; padding-left: 1.4em; }
.silver main .credits-map li + li { margin-top: var(--s-n2); }
.silver main .credits-map > p { max-width: 40em; }

/* ---------- 404・準備中：写真と行き先を 1.414 : 1。行き先はボタン2つと検索 ---------- */
.silver main .next { display: grid; grid-template-columns: minmax(0, 1.414fr) minmax(0, 1fr); column-gap: var(--s-6); align-items: start; margin-top: var(--s-8); }
.silver main .next__media { aspect-ratio: 1.414 / 1; margin: 0; }
.silver main .next__media img { width: 100%; height: 100%; object-fit: cover; }
.silver main .next__go { display: grid; gap: var(--s-4); }
.silver main .next__act { display: grid; gap: var(--s-n2); margin: 0; }
.silver main .next__act .btn { width: 100%; }
.silver main .search--next { gap: var(--s-n4); padding-top: var(--s-4); border-top: 1px solid var(--ds-rule); }
.silver main .search--next .sr { position: static; width: auto; height: auto; overflow: visible; clip: auto; color: var(--ds-muted); font-weight: 400; }
.silver main .search--next :is(.search__input, .search__btn) { height: 48px; min-height: 48px; }
.silver main .search--next .search__input { border-color: var(--ds-line-strong); font-size: var(--s-0); }
.silver main .search--next .search__btn { padding-inline: var(--s-1); }

@media (max-width: 1023px) {
  .silver main .curator { grid-template-columns: 72px minmax(0, 1fr); column-gap: var(--s-1); }
  .silver main .curator__photo { width: 72px; }
  .silver main .curator__body { grid-column: 2; margin-top: var(--s-1); }
  .silver main .explainer ul { grid-template-columns: minmax(0, 1fr); }
  .silver main .credit { grid-template-columns: 102px minmax(0, 1fr); column-gap: var(--s-0); }
  .silver main .credit__media { width: 102px; grid-row: 1 / span 2; }
  .silver main .credit__source { grid-column: 2; margin-top: var(--s-n2); }
  .silver main .next { grid-template-columns: minmax(0, 1fr); row-gap: var(--s-6); }
  .silver main .next__media { order: 2; }
}
@media (max-width: 767px) {
  .silver main .curators { margin-top: var(--s-4); }
  .silver main .curator { padding: var(--s-4) 0; }
  .silver main .curator__body { grid-column: 1 / -1; }
  .silver main .next { margin-top: var(--s-4); }
}
