.photo-callouts{position:absolute;inset:0;pointer-events:none;z-index:1;visibility:hidden;transition:visibility 0s .8s}
.photo-callouts.is-visible{visibility:visible;transition-delay:0s}
.photo-leaders{position:absolute;inset:0;width:100%;height:100%;overflow:visible;stroke:none;fill:none}
.photo-leaders g{opacity:0;transition:opacity .55s}
.is-visible .photo-leaders g{opacity:1;transition-delay:var(--delay)}
.photo-leaders .leader{stroke:currentColor;stroke-width:1.3;stroke-linejoin:round;fill:none;vector-effect:non-scaling-stroke}
.photo-leaders .anchor-halo{stroke:currentColor;stroke-width:1;fill:#e8e9ecd9}
.photo-leaders .anchor-dot{fill:currentColor;stroke:none}
.photo-card{position:absolute;margin:0;overflow:hidden;border:3px solid #e8e9ec;border-radius:5px;box-shadow:0 8px 26px #262a3f26,0 0 0 1px #8389a355;background:#dcdfe7;opacity:0;transform:translateY(10px);transition:opacity .55s,transform .65s cubic-bezier(.2,.7,.2,1)}
.photo-card::after{content:'';position:absolute;inset:0;border-bottom:3px solid var(--accent);pointer-events:none}
.photo-card img{display:block;width:100%;height:auto}
.is-visible .photo-card{opacity:1;transform:translateY(0);transition-delay:var(--delay)}
.photo-card.compute{left:4%;bottom:12%;width:clamp(180px,27vw,350px)}
.photo-card.recompute{left:50%;translate:-50% 0;top:4%;width:min(17vw,190px,22vh)}
.photo-card.tap{left:40%;bottom:12%;width:clamp(180px,26vw,320px)}
@media(max-width:600px){.photo-card.compute{left:4%;bottom:13%;width:39vw}.photo-card.recompute{left:50%;top:4%;width:25vw}.photo-card.tap{left:49%;bottom:13%;width:41vw}}
@media(max-height:550px) and (min-width:601px){.photo-card.compute{width:23vw;max-width:32vh}.photo-card.tap{width:23vw;max-width:32vh;bottom:17%}}
@media(prefers-reduced-motion:reduce){.photo-callouts,.photo-card,.photo-leaders g{transition:none!important;transform:none!important}}
