.founder-sticky { position: static; min-width: 0; }
.founder-sticky .founder-mark {
  width: 56px; height: 56px; margin: 28px 0 14px;
  font-size: 17px; animation: none;
}
.founder-photo-essay {
  grid-column: 1 / -1; min-width: 0; margin-top: 12px;
}
.founder-gallery {
  display: grid; grid-template-columns: .9fr 1.25fr .9fr;
  gap: 12px; margin-top: 12px; direction: ltr;
}
.founder-gallery-intro { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 24px; }
.founder-gallery-intro h3 { max-width: 720px; font-size: clamp(24px, 3vw, 44px); line-height: 1.15; letter-spacing: 0; }
.founder-photo-cropped img { transform: scale(1.25); transform-origin: 55% 25%; }
.founder-lightbox-frame.founder-photo-cropped {
  position: relative; overflow: hidden; aspect-ratio: 3 / 2;
  width: min(100%, calc((100dvh - 150px) * 1.5)); margin-inline: auto;
}
.founder-lightbox-frame.founder-photo-cropped img {
  position: absolute; inset: 0; height: 100%; max-height: none;
  object-fit: cover; object-position: 55% 25%;
}
.founder-photo {
  position: relative; display: block; width: 100%; aspect-ratio: 4 / 3; padding: 0;
  border: 0; border-radius: 0; overflow: hidden; background: #d5d5d5;
  cursor: zoom-in;
}
.founder-photo-main { aspect-ratio: 2 / 1; }
.founder-photo::after {
  content: ""; position: absolute; z-index: 2; inset: auto 0 0 0; height: 5px;
  background: var(--pink); transform: scaleX(.14); transform-origin: left;
  transition: transform 450ms cubic-bezier(.16,1,.3,1);
}
.founder-gallery .founder-photo:nth-child(2)::after { background: var(--acid); }
.founder-photo-main img { object-position: 50% 42%; }
.founder-photo img {
  display: block; width: 100%; height: 100%; object-fit: cover;
  filter: grayscale(1) contrast(1.08); transition: transform 350ms ease;
}
.founder-photo-essay.is-motion-ready .founder-photo {
  opacity: 0; transform: translateX(calc((var(--photo-order) - 1.5) * 18px));
  transition: opacity 700ms ease calc(var(--photo-order) * 90ms), transform 850ms cubic-bezier(.16,1,.3,1) calc(var(--photo-order) * 90ms);
}
.founder-photo-essay.is-visible .founder-photo { opacity: 1; transform: translateX(0); }
@media (hover: hover) {
  .founder-photo:hover img { transform: scale(1.035); }
  .founder-photo-cropped:hover img { transform: scale(1.28); }
  .founder-photo:hover::after { transform: scaleX(1); }
}
.founder-photo:focus-visible { outline: 3px solid var(--pink); outline-offset: 3px; }
.founder-lightbox {
  width: min(1100px, calc(100% - 32px)); max-width: none;
  max-height: calc(100dvh - 32px); padding: 16px; margin: auto;
  border: 1px solid #444; border-radius: 0; color: #fff; background: #111;
}
.founder-lightbox::backdrop { background: rgb(0 0 0 / 85%); }
.founder-lightbox-bar {
  display: flex; align-items: center; justify-content: space-between; gap: 20px;
  margin-bottom: 14px; font-size: 13px; line-height: 1.6;
}
.founder-lightbox-close {
  flex-shrink: 0; padding: 8px 12px; border: 0; border-radius: 0;
  background: var(--acid); color: #111; font: inherit; font-weight: 700; cursor: pointer;
}
.founder-lightbox-close:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.founder-lightbox img {
  display: block; width: 100%; max-height: calc(100dvh - 130px);
  object-fit: contain; filter: grayscale(1) contrast(1.08);
}
body.founder-lightbox-open { overflow: hidden; }
@media (max-width: 560px) {
  .founder-photo-essay { grid-column: 1; margin-top: 0; }
  .founder-gallery { grid-template-columns: 1fr; gap: 8px; }
  .founder-gallery-intro { margin-bottom: 16px; }
  .founder-gallery-intro h3 { font-size: 24px; }
  .founder-photo-main { aspect-ratio: 4 / 3; }
  .founder-lightbox { padding: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .founder-photo img { transition: none; }
}
