/* YMU photo library v1: filtered Place gallery using the existing lightbox. */
.ymu-photo-library-page { max-width: 1220px; padding: 24px 20px 64px; margin: 0 auto; }
.ymu-photo-library-back { margin-bottom: 18px; }
.ymu-photo-library-back a, .ymu-photo-library-caption a { color: #176b36; }
.ymu-photo-library-heading { display: flex; align-items: start; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin-bottom: 20px; }
.ymu-photo-library-heading h1 { margin: 0 0 8px; }
.ymu-photo-library-heading p { margin: 0; color: #566b60; }
.ymu-photo-library-eyebrow { text-transform: uppercase; font-weight: 700; font-size: .8rem; letter-spacing: .05em; }
.ymu-photo-library-add { display: inline-flex; border: 1px solid #237544; border-radius: 24px; padding: 10px 16px; color: #176b36; font-weight: 700; text-decoration: none; }
.ymu-photo-library-filters { display: flex; gap: 9px; flex-wrap: wrap; margin: 0 0 22px; }
.ymu-photo-library-filters a { display: inline-flex; padding: 9px 13px; border-radius: 999px; border: 1px solid #cadbd0; text-decoration: none; color: #20573b; font-weight: 600; }
.ymu-photo-library-filters a[aria-current="page"] { background: #256d48; color: white; border-color: #256d48; }
.ymu-photo-library-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.ymu-photo-library-card { min-width: 0; border: 1px solid #d5dfd9; border-radius: 12px; background: #fff; overflow: hidden; }
.ymu-photo-library-card > button { display: block; width: 100%; padding: 0; border: 0; background: #edf2ec; cursor: zoom-in; }
.ymu-photo-library-card > button img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; }
.ymu-photo-library-caption { display: flex; flex-direction: column; align-items: start; gap: 4px; padding: 12px; font-size: .88rem; }
.ymu-photo-library-caption p { margin: 0; overflow-wrap: anywhere; }
.ymu-photo-library-category { font-size: .75rem; font-weight: 700; color: #456251; }
.ymu-photo-library-report { margin-top: 7px; }
.ymu-photo-library-pages { display: flex; gap: 18px; align-items: center; justify-content: center; padding: 24px; }
.ymu-photo-library-pages a { color: #176b36; font-weight: 700; }
.ymu-photo-library-empty { border: 1px solid #d5dfd9; border-radius: 12px; padding: 28px; }
@media (max-width: 850px) { .ymu-photo-library-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .ymu-photo-library-page { padding: 16px 12px 60px; } .ymu-photo-library-grid { gap: 10px; } .ymu-photo-library-caption { padding: 9px; } .ymu-photo-library-card > button img { aspect-ratio: 1 / 1; } }

/* ymu-photo-library-copy-v1: compact editorial gallery heading and breadcrumb */
.ymu-photo-library-back a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-weight: 600;
  text-decoration: none;
  text-underline-offset: 3px;
}
.ymu-photo-library-back a:hover,
.ymu-photo-library-back a:focus-visible {
  text-decoration: underline;
}
.ymu-photo-library-back a span[aria-hidden="true"] {
  font-size: 1.1em;
}
.ymu-photo-library-heading .ymu-photo-library-intro {
  max-width: 64ch;
  line-height: 1.55;
  color: #566b60;
}
