.faculty-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 60px 40px; padding: 40px 0; }
.faculty-card { display: flex; gap: 24px; border-top: 1px solid #999; border-bottom: 1px solid #999; padding: 20px 0; }
.faculty-photo-wrap { flex: 0 0 120px; text-align: center; }
.faculty-photo-wrap .img-box { width: 120px; height: 151px; margin-bottom: 20px; background: #f4f4f4; overflow: hidden; }
.faculty-photo-wrap .img-box img { width: 100%; height: 100%; object-fit: cover; }
.faculty-name { font-size: 17px; font-weight: 700; color: #222; line-height: 1.3; }
.faculty-info { flex: 1; display: flex; flex-direction: column; padding-top: 5px; }
.faculty-section-title { font-size: 16px; font-weight: 700; color: #222; margin-bottom: 15px; }
.faculty-research { font-size: 14px; color: #444; line-height: 1.5; margin-bottom: auto; min-height: 60px; }
.faculty-contact { margin-top: 20px; padding-top: 12px; border-top: 1px solid #eee; display: flex; flex-wrap: wrap; gap: 10px 30px; }
.contact-item { display: flex; align-items: center; gap: 8px; font-size: 13px; color: #666; }
.contact-item .img-box { width: 18px; height: 18px; display: flex; align-items: center; justify-content: center; }
.contact-item img { max-width: 100%; max-height: 100%; }
@media screen and (max-width: 1024px) {
  .faculty-grid { gap: 40px 30px; }
}
@media screen and (max-width: 768px) {
  .faculty-grid { grid-template-columns: 1fr; gap: 40px; }
}
@media screen and (max-width: 400px) {
  .faculty-card { flex-direction: column; align-items: center; text-align: center; }
  .faculty-contact { justify-content: center; }
}