/* Approved photo selection. Fixed frames keep the reading position steady. */
.photo-reel{position:relative;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 .9s ease,visibility .9s;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{position:absolute;z-index:2;bottom:calc(var(--reel-image-inset,0px) + clamp(8px,1.5vw,20px));left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;padding:0;border:0}
.photo-reel .reel-controls{display:flex;align-items:center;justify-content:center;gap:0;margin:0}
.photo-reel .reel-dot{display:grid;place-items:center;border:0;background:transparent;width:24px;height:32px;padding:0;margin:0;cursor:pointer;touch-action:manipulation}
.photo-reel .reel-dot span{display:block;width:6px;height:6px;border-radius:50%;background:#fff;box-shadow:0 0 2px #0005;transition:background-color .3s ease}
.photo-reel .reel-dot[aria-pressed=true] span{background:#525252}
.photo-reel .reel-dot:hover span{box-shadow:0 0 0 2px #ffffff60}
.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}
.ritual-cover{width:calc(100% - 2 * var(--gutter));max-width:860px;margin:0 auto}
.ritual-cover .zoom-photo,.ritual-artwork .zoom-photo,.ritual-documentary .zoom-photo{display:block;width:100%;height:auto;padding:0;margin:0;border:0;background:transparent;cursor:zoom-in}
.ritual-cover img,.ritual-artwork img,.ritual-documentary img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;margin:0}
.ritual-artwork{width:calc(100% - 2 * var(--gutter));max-width:1100px;margin:0 auto var(--section-space)}
.ritual-documentary{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,3vw,40px);width:calc(100% - 2 * var(--gutter));max-width:1100px;margin:0 auto var(--section-space)}
.ritual-documentary figure{margin:0;min-width:0}
.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}
@media(min-width:1600px){.curated-gallery{margin-left:auto;margin-right:auto}}
@media(max-width:700px){
 .ritual-documentary{grid-template-columns:1fr}
 .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,.photo-reel .reel-dot span{transition:none}}
