/* Stable image space, comfortable touch targets, and narrow-screen typography. */
.header nav a { display: inline-flex; align-items: center; min-height: 44px; }
.viewer-controls button,.close { min-height: 44px; min-width: 44px; }
.member-pagination a { display: inline-flex; align-items: center; min-height: 44px; }
.member-card img,.photo img,.member-layout figure img { background: #fffef2; }
.hero-signature img,.logo-art img,.closing img { aspect-ratio: 2000 / 1414; }
@media (hover:none) {
  .portraits>div:hover img,.photo:hover img { transform: none; filter: none; }
}
@media(max-width:600px) {
  .header { display: flex; flex-direction: column; padding: 2px 12px 8px; }
  .header nav { width: 100%; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 0; }
  .header nav a { display: flex; justify-content: center; padding: 8px 2px; letter-spacing: .04em; }
  .header nav a::after { left: 20%; max-width: 60%; }
  .about-title { padding-right: 0; }
  .about-title .logo-art { display: none; }
  .about-body { gap: 24px; }
  .section-label { flex-wrap: wrap; gap: 10px 18px; }
  .member-card { min-width: 0; }
  .member-name { overflow-wrap: anywhere; }
  .member-link { min-height: 44px; display: flex; align-items: center; margin-top: 4px; }
  .member-page .member-layout figure { width: 100%; }
  .member-detail dl>div { grid-template-columns: minmax(85px,.6fr) minmax(0,1fr); }
  .gallery-heading { align-items: flex-start; flex-wrap: wrap; gap: 8px; }
  .gallery-heading p { max-width: none; margin: 4px 0 0; }
  dialog { width: calc(100vw - 24px); max-width: calc(100vw - 24px); padding: 58px 12px 16px; }
  #large-photo { height: auto; width: auto; max-width: 100%; max-height: calc(100dvh - 190px); }
  .viewer-controls { gap: 8px; }
  .viewer-controls button { padding: 10px 12px; }
  .close { top: 8px; right: 12px; }
}
@media(max-width:360px) {
  .live { margin-left: 4%; margin-right: 4%; padding-left: 18px; padding-right: 18px; }
  .live h2 { font-size: 1.125rem; }
}

/* Keep HTML dimension attributes from imposing a fixed rendered height. */
.logo-art img,.photo img { height: auto; }
