/* Scoped styles. Existing section background and STAFF heading can be retained. */
.ysm-staff { --ysm-card-bg: #fff; --ysm-text: #333; --ysm-gap: 20px; width:100%; color:var(--ysm-text); font-family:var(--e-global-typography-text-font-family, "Noto Serif JP"),serif; font-size:16px; line-height:1.8; }
.ysm-staff *, .ysm-staff *::before, .ysm-staff *::after { box-sizing:border-box; }
.ysm-staff .ysm-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--ysm-gap); align-items:stretch; }
.ysm-staff .ysm-card { min-width:0; margin:0; padding:30px; border:0; border-radius:30px; background:var(--ysm-card-bg); box-shadow:0 0 10px rgba(0,0,0,.5); text-align:center; overflow-wrap:anywhere; }
.ysm-staff .ysm-card > figure.ysm-photo { display:flex; justify-content:center; align-items:center; float:none; width:100%; max-width:100%; margin:0 0 15px !important; padding:0; }
.ysm-staff .ysm-photo .ysm-image { display:block; width:164px; max-width:100%; height:auto; max-height:none; aspect-ratio:9 / 16; object-fit:contain; object-position:center center; float:none; margin:0 auto; border:0; border-radius:0; }
.ysm-staff .ysm-name, .ysm-staff .ysm-experience, .ysm-staff .ysm-note { margin:0; padding:0; font-family:inherit; font-size:inherit; font-weight:400; line-height:1.8; color:inherit; }
.ysm-staff .ysm-description { margin:15px 0 0; padding:0; font-size:inherit; line-height:1.8; color:inherit; }
.ysm-staff .ysm-heading { margin:0 0 30px; color:#dce6e8; font-family:"Cormorant Garamond",serif; font-size:32px; font-weight:900; text-align:center; }
.ysm-staff .ysm-card[lang="en"] { font-family:"Noto Serif",Georgia,serif; }
.ysm-staff .ysm-card[lang="ko"] { font-family:"Noto Serif KR",serif; }
.ysm-staff .ysm-card[lang="zh-Hant"] { font-family:"Noto Serif TC",serif; }
@media (max-width:1024px) { .ysm-staff .ysm-grid { grid-template-columns:minmax(0,1fr); } }
@media (max-width:480px) { .ysm-staff .ysm-card { padding:26px 20px; } }
