
.fernando-photo-gallery { margin-top: clamp(40px,5vw,80px); }
.fernando-photo-gallery h2 { font-size: clamp(1.5rem,2.6vw,2.4rem); margin: 0 0 24px; }
.fernando-photo-gallery .press-archive-photos { display: grid; gap: 32px; }
.fernando-photo-gallery figure { margin: 0; min-width: 0; }
.fernando-photo-gallery img { display: block; width: 100%; height: auto; }
.fernando-photo-gallery figcaption { margin-top: 10px; color: #b7bac4; font-size: .9rem; line-height: 1.6; }
.press-photo-frame { position: relative; display: block; overflow: hidden; isolation: isolate; }
.press-photo-frame img { transition: transform 650ms var(--ease-out, ease); transform: scale(1); }
.press-photo-frame::after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: clamp(36px, 4vw, 64px);
  aspect-ratio: 1;
  background: var(--yellow, #feda6a);
  clip-path: polygon(100% 0,100% 100%,0 0);
  opacity: 0;
  transform: translate(46%,-46%) rotate(12deg);
  transform-origin: top right;
  transition: opacity 300ms ease, transform 520ms var(--ease-out, ease);
  pointer-events: none;
}
@media (hover: hover) and (pointer: fine) {
  .press-photo-frame:hover img { transform: scale(1.045); }
  .press-photo-frame:hover::after { opacity: 1; transform: none; }
}
@media (hover: none), (pointer: coarse) {
  .press-photo-frame.is-photo-visible img { transform: scale(1.045); }
  .press-photo-frame.is-photo-visible::after { opacity: 1; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  .press-photo-frame img, .press-photo-frame::after { transition: none; }
  .press-photo-frame:hover img, .press-photo-frame.is-photo-visible img { transform: none; }
}

