@charset "utf-8";
/* =====================================================================
   さきほこる
   style-team.css  ―  メンバー紹介ページ（team.html）専用スタイル
   ※ 共通スタイルは style-common.css を先に読み込んでください。
   ===================================================================== */

/* ---------- 1. 代表挨拶 -------------------------------------------- */
.greeting{padding-top:10px}
.greeting-grid{display:grid;gap:26px}
@media (min-width:760px){
  .greeting-grid{grid-template-columns:220px 1fr;gap:34px;align-items:start}
}
.greeting-photo-wrap{position:relative;transform:rotate(-2deg);max-width:220px}
.greeting-photo-wrap .frame{
  background-color:var(--paper-2);border:1px solid var(--rule);
  padding:10px 10px 12px;box-shadow:0 6px 16px rgba(34,48,42,.10);
}
.greeting-photo-wrap .photo-slot{aspect-ratio:3/4}
.greeting-badge{
  display:inline-block;margin-top:10px;font-family:var(--round);font-weight:700;
  font-size:12px;color:var(--green-deep);background-color:var(--leaf-pale);
  border:1px solid var(--leaf);padding:3px 10px;
}
.greeting-org{font-size:13.5px;color:var(--ink-2);margin:0 0 16px;line-height:1.8}
.greeting-body p{font-size:14.5px;margin:0 0 12px}
.greeting-sign{font-family:var(--hand);font-size:16px;color:var(--green-deep);margin-top:18px}

/* ---------- 2. メンバー紹介グリッド -------------------------------- */
.members-lead{font-size:14.5px;color:var(--ink-2);max-width:36em}
.member-grid{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:18px}
@media (min-width:640px){.member-grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:980px){.member-grid{grid-template-columns:repeat(3,1fr)}}
.member-card{
  background-color:var(--paper-2);border:1px solid var(--rule);
  padding:18px 16px 20px;
}
.member-card:nth-child(3n+1){transform:rotate(-.6deg)}
.member-card:nth-child(3n+2){transform:rotate(.5deg)}
.member-card:nth-child(3n+3){transform:rotate(-.4deg)}
.member-card--featured{border-top:3px solid var(--coral)}
.member-card > img.photo-slot.has-photo{
  width:clamp(140px,58%,180px);aspect-ratio:1/1;
  margin:0 auto 14px;
}
.member-badge{
  display:inline-block;font-family:var(--round);font-weight:700;font-size:11px;
  color:var(--green-deep);background-color:var(--leaf-pale);
  border:1px solid var(--leaf);padding:2px 9px;margin-bottom:9px;
}
.member-card--featured .member-badge{
  background-color:var(--coral-pale);border-color:var(--coral);color:#9A3412;
}
.member-name{font-family:var(--round);font-weight:700;font-size:16.5px;margin:0 0 2px}
.member-role-en{
  font-family:var(--mincho);font-size:11.5px;color:var(--ink-3);
  margin:0 0 10px;letter-spacing:.04em;
}
.member-message{font-size:13px;color:var(--ink-2);margin:0;line-height:1.8}
