.photo-frame{
  position:relative;
  margin:0;
  overflow:hidden;
  min-height:390px;
  border-radius:28px;
  border:1px solid rgba(94,210,255,.24);
  background:#071a2d;
  box-shadow:var(--shadow);
  isolation:isolate;
}
.photo-frame::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 52%,rgba(2,10,19,.92));
  pointer-events:none;
}
.photo-frame img{
  display:block;
  width:100%;
  height:390px;
  object-fit:cover;
  transition:transform .55s ease;
}
.photo-frame:hover img{transform:scale(1.025)}
.photo-frame figcaption{
  position:absolute;
  z-index:1;
  left:24px;
  right:24px;
  bottom:20px;
  color:#e9f7ff;
  font-weight:700;
  font-size:.92rem;
  line-height:1.45;
  text-shadow:0 2px 12px rgba(0,0,0,.8);
}
@media(max-width:600px){
  .photo-frame,.photo-frame img{min-height:300px;height:300px}
  .photo-frame figcaption{left:18px;right:18px;bottom:16px}
}
@media(prefers-reduced-motion:reduce){.photo-frame img{transition:none}}
