/* Approved photo selection. Fixed frames keep the reading position steady. */
.photo-reel{min-width:0;width:100%;margin:0;color:var(--ink)}
.photo-reel .reel-stage{position:relative;aspect-ratio:3/2;overflow:hidden;isolation:isolate;background:transparent;touch-action:pan-y pinch-zoom}
.photo-reel .reel-slide{position:absolute;inset:0;width:100%;height:100%;padding:0;margin:0;opacity:0;visibility:hidden;transition:opacity .65s ease,visibility .65s;pointer-events:none}
.photo-reel .reel-slide.is-current{opacity:1;visibility:visible;pointer-events:auto;z-index:1}
.photo-reel .reel-photo{display:block;position:static;width:100%;height:100%;padding:0;margin:0;border:0;background:transparent;cursor:zoom-in}
.photo-reel .reel-photo img{display:block;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:center;margin:0;transform:none}
.photo-reel .reel-bottom{display:flex;align-items:center;justify-content:flex-end;padding:12px 0 0;border:0}
.photo-reel .reel-controls{display:flex;align-items:center;justify-content:flex-end;gap:2px;flex-shrink:0}
.photo-reel .reel-controls button{border:0;background:transparent;color:var(--ink);min-width:44px;min-height:44px;padding:8px;line-height:1.3;font:inherit;font-size:19px;cursor:pointer;touch-action:manipulation}
.photo-reel .reel-controls button:hover{color:var(--red)}
.photo-reel .reel-controls .reel-play{font-size:11px;letter-spacing:.04em;margin-left:12px;min-width:78px;border-bottom:1px solid var(--line)}
.photo-reel .reel-count{font:12px Georgia,serif;letter-spacing:.09em;white-space:nowrap;min-width:53px;text-align:center;color:var(--muted)}
.photo-reel button:focus-visible,.reel-filters button:focus-visible{outline:2px solid var(--red);outline-offset:-3px}
.reel-page,.reel-home{width:calc(100% - 2 * var(--gutter));max-width:1400px;margin:0 auto}
.reel-home{margin-bottom:var(--section-space)}
.reel-wide .reel-stage{aspect-ratio:16/9}
.reel-night .reel-stage{background:#171c19}
.reel-night .reel-photo img{object-fit:contain}
.reel-house .reel-stage{aspect-ratio:4/3}
.curated-gallery{margin:0 var(--gutter) var(--section-space);max-width:1400px}
.reel-filters{display:flex;flex-wrap:wrap;gap:12px 30px;border-bottom:1px solid var(--line);margin:0 0 30px;padding:0}
.reel-filters button{font:inherit;font-size:15px;letter-spacing:.08em;min-height:48px;padding:12px 4px;background:none;border:0;border-bottom:2px solid transparent;color:var(--muted);cursor:pointer}
.reel-filters button[aria-pressed=true]{color:var(--red);border-color:var(--red)}
.curated-gallery [hidden]{display:none!important}
.offerings .curated-offering-frame{width:100%;height:auto!important;aspect-ratio:4/3;overflow:hidden;position:relative;background:transparent}
.offerings .curated-offering-frame img{display:block;width:100%;height:100%!important;aspect-ratio:auto;object-fit:cover;margin:0}
.curated-object-hero{width:calc(100% - 2 * var(--gutter));max-width:1400px;aspect-ratio:4/3;margin:0 auto;overflow:hidden}
.curated-object-hero>img{display:block;width:100%;height:100%;object-fit:cover;max-height:none;margin:0}
.curated-object-crop>img,.curated-object-crop>img.photo-reveal{transform:scale(2.25);transform-origin:78% 100%}
.identity-making{max-width:860px;margin:30px 0 45px}
.identity-making img{width:100%;height:auto;display:block}
.visitor-people-photo{max-width:850px;margin:auto}
.visitor-page .photo-reel .reel-bottom{padding-top:12px}
@media(min-width:1600px){.curated-gallery{margin-left:auto;margin-right:auto}}
@media(max-width:700px){
 .photo-reel .reel-bottom{display:block;padding-top:14px}
 .photo-reel .reel-controls{justify-content:flex-end;margin-top:3px}
 .photo-reel .reel-controls .reel-play{margin-left:15px}
 .reel-filters{gap:4px 20px;margin-bottom:24px}
 .reel-filters button{font-size:14px}
 .identity-making{margin:25px 0 35px}
}
@media(prefers-reduced-motion:reduce){.photo-reel .reel-slide{transition:none}}
