.portrait {
  width: min(100%, 320px);
  aspect-ratio: 4 / 5;
  object-fit: cover;
  object-position: center;
  border-radius: 160px 160px 0 0;
  margin-bottom: 2rem;
  filter: saturate(.82);
}
.monogram { display: none; }
.work-gallery {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
  margin: 0 0 2.5rem;
}
.work-gallery figure { margin: 0; background: #fff; color: var(--ink); padding: .7rem; }
.work-gallery img { display: block; width: 100%; aspect-ratio: 1; object-fit: cover; }
.work-gallery figcaption { padding: .8rem .2rem .2rem; font-size: .8rem; color: #555; }
.media-work {
  display: grid;
  grid-template-columns: 1fr 1.5fr;
  gap: 4rem;
  align-items: center;
  margin: 0 0 7rem;
  padding: 4rem 0;
  border-top: 1px solid #575552;
  border-bottom: 1px solid #575552;
}
.media-copy h3 { font-family: Georgia, serif; font-size: clamp(2.4rem, 4vw, 4.6rem); line-height: 1; margin-bottom: 1.5rem; }
.media-copy > p:not(.kicker) { color: #cbc6c0; }
.media-gallery { display: grid; grid-template-columns: 1fr 1.35fr; grid-template-rows: 1fr 1fr; gap: .7rem; }
.media-gallery img { width: 100%; height: 100%; object-fit: cover; min-height: 190px; }
.media-gallery img:first-child { grid-row: 1 / 3; object-position: 76% center; }
.about-photo { display: block; width: min(100%, 430px); aspect-ratio: 4 / 3; object-fit: cover; margin-top: 3rem; filter: saturate(.75); border-bottom: 8px solid var(--wine); }
@media (max-width: 900px) {
  .portrait { grid-row: 1 / 4; margin: 0; width: 100px; height: 125px; }
  .work-gallery, .media-work { grid-template-columns: 1fr; }
  .media-gallery { grid-template-columns: 1fr 1fr; grid-template-rows: auto; }
  .media-gallery img:first-child { grid-row: auto; }
  .media-gallery img { min-height: 150px; }
}

/* Two event photos, side by side and shown without cropping. */
.media-gallery {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: auto;
  gap: .8rem;
  align-items: start;
}
.media-gallery img,
.media-gallery img:first-child {
  display: block;
  width: 100%;
  height: auto;
  min-height: 0;
  object-fit: initial;
  object-position: initial;
  background: transparent;
}
@media (max-width: 900px) {
  .media-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .media-gallery { grid-template-columns: 1fr; }
}

.media-gallery img,
.media-gallery img:first-child {
  height: clamp(300px, 34vw, 430px);
  object-fit: contain;
  object-position: center;
  background: #181817;
}
@media (max-width: 560px) {
  .media-gallery img,
  .media-gallery img:first-child { height: 360px; }
}

.social-links { display: flex; justify-content: center; gap: 2rem; margin-top: 2rem; }
.social-links a { color: #fff; border-bottom: 1px solid rgba(255,255,255,.55); padding-bottom: .3rem; font-weight: 700; }
.social-links a:hover { color: #f1cbd2; border-color: #f1cbd2; }
footer a { color: #e9cbd0; }
footer a:hover { color: #fff; }
@media (max-width: 700px) {
  footer { align-items: flex-start; }
}
