/* Native vertical discovery. Touch scrolling belongs to the browser. */
.eye-active{overflow:hidden;background:#faf9f6;color:#141414}
.eye-active .experience{display:none!important}
.eye-world{position:fixed;inset:0;overflow-x:hidden;overflow-y:auto;scroll-snap-type:y mandatory;overscroll-behavior-y:contain;touch-action:pan-y pinch-zoom;scrollbar-width:none;outline:none;background:#faf9f6}
.eye-world::-webkit-scrollbar{display:none}
.eye-active .experience-header{position:fixed;inset:0 0 auto;z-index:4;color:#141414;padding:calc(20px + env(safe-area-inset-top)) 4vw 18px;pointer-events:none;background:#faf9f6;transition:background .15s ease}
.eye-active.gallery-entry .experience-header{background:#ff4b00}
.experience-header button,.experience-header a{pointer-events:auto}
.signature-eye{width:40px;height:34px;object-fit:contain;display:block}
.eye-active .experience-signature{display:flex;align-items:center;gap:10px;font-size:30px;line-height:1;letter-spacing:-.055em;min-height:44px}
.eye-active .experience-header nav{gap:30px;color:inherit}
.gallery-scene{height:100%;min-height:440px;box-sizing:border-box;position:relative;scroll-snap-align:start;scroll-snap-stop:always;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:28px;padding:calc(100px + env(safe-area-inset-top)) 4vw calc(26px + env(safe-area-inset-bottom));background:#faf9f6;isolation:isolate}
.gallery-media{min-width:0;min-height:0;display:flex;align-items:center;justify-content:center;gap:14px;height:100%;width:100%;max-width:1400px;margin:auto}
.gallery-frame{min-width:0;min-height:0;display:flex;align-items:center;justify-content:center;height:100%;flex:1}
.gallery-frame img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;user-select:none;-webkit-user-drag:none}
.gallery-label .gallery-frame img{clip-path:circle(49.9%);aspect-ratio:1;width:auto;height:100%;max-width:100%;object-fit:contain}
.gallery-label .gallery-frame{aspect-ratio:1;max-width:min(100%,calc(100dvh - 260px));flex:0 1 auto}
.gallery-honey .gallery-frame{position:relative;display:block;aspect-ratio:16/15;max-height:100%;width:min(100%,calc((100dvh - 260px)*16/15));height:auto;flex:0 1 auto;overflow:hidden}
.gallery-honey .gallery-frame img{position:absolute;width:125%;max-width:none;height:200%;max-height:none;left:-3.75%;top:-66%;object-fit:fill}
.gallery-caption{display:flex;justify-content:space-between;align-items:end;gap:24px;width:100%;max-width:1400px;margin:auto}
.gallery-copy{min-width:0}
.gallery-open{display:flex;align-items:baseline;gap:22px;text-align:left;padding:0;min-height:44px}
.gallery-open h2{font:500 clamp(28px,3.8vw,58px)/1.03 var(--display);letter-spacing:-.055em;overflow-wrap:anywhere}
.gallery-open>span{font:36px/1 var(--sans);transition:transform .2s}
.gallery-open:hover>span{transform:translate(3px,-3px)}
.gallery-credit{font-size:12px;line-height:1.6;margin-top:10px;word-break:keep-all}
.gallery-source{font-size:10px;line-height:1.5;margin-top:3px;color:#65645f}
.gallery-next{display:flex;align-items:center;gap:24px;min-height:44px;white-space:nowrap;font-size:12px;padding:0 0 0 12px}
.gallery-next span{font-size:29px;font-weight:400;line-height:1}
.gallery-intro{background:#ff4b00;overflow:hidden;gap:0}
.gallery-intro-art{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.gallery-orbit{position:absolute;width:125vmin;height:64vmin;border:8vmin solid #fffde9;border-radius:50%;left:20%;top:12%;transform:translateY(calc(var(--departure,0)*-80px)) rotate(-37deg)}
.gallery-pupil{position:absolute;border-radius:50%;background:#143bff;width:19vmin;height:19vmin;left:13%;top:58%;transform:translateY(calc(var(--departure,0)*60px))}
.gallery-thread{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#171b15;stroke-width:.6;vector-effect:non-scaling-stroke}
.gallery-intro-copy{grid-row:2;display:flex;justify-content:space-between;align-items:end;width:100%;margin:auto;padding-bottom:4px}
.gallery-intro h1{font:500 clamp(70px,12vw,180px)/.84 var(--display);letter-spacing:-.065em}
.gallery-intro p{font-size:12px;margin-top:24px}
.gallery-intro .gallery-next{font-size:13px}
.gallery-intro .gallery-next span{font-size:48px}
.gallery-scene button:focus-visible{outline:2px solid currentColor;outline-offset:6px}
@media(max-width:700px){
 .eye-active .experience-header{padding:calc(11px + env(safe-area-inset-top)) 20px 10px}
 .eye-active .experience-signature{font-size:24px;gap:8px}.signature-eye{width:30px;height:27px}
 .eye-active .experience-header nav{gap:20px;font-size:13px}
 .gallery-scene{gap:25px;padding:calc(80px + env(safe-area-inset-top)) 18px calc(24px + env(safe-area-inset-bottom))}
 .gallery-film .gallery-media{flex-direction:column;gap:10px;justify-content:center}
 .gallery-film .gallery-frame{height:auto;width:100%;flex:0 1 auto;max-height:calc(50% - 5px)}
 .gallery-film img{width:auto;max-height:calc((100dvh - 255px)/2 - 5px)}
 .gallery-media{gap:8px}.gallery-caption{gap:15px}
 .gallery-open{gap:12px;min-height:40px}.gallery-open h2{font-size:33px;line-height:1.03}.gallery-open>span{font-size:27px}
 .gallery-credit{font-size:10px;margin-top:10px}.gallery-source{font-size:9px;margin-top:4px}
 .gallery-next{font-size:10px;gap:9px;min-width:43px}.gallery-next span{font-size:24px}
 .gallery-intro h1{font-size:86px}.gallery-intro p{font-size:11px;margin-top:22px}
 .gallery-orbit{width:170vw;height:87vw;left:10%;top:16%;border-width:10vw}.gallery-pupil{width:23vw;height:23vw;left:12%;top:57%}
 .gallery-intro .gallery-next{font-size:11px;gap:15px}.gallery-intro .gallery-next span{font-size:36px}
 .gallery-label .gallery-frame{max-width:min(100%,calc(100dvh - 240px))}
 .gallery-honey .gallery-frame{width:min(100%,calc((100dvh - 240px)*16/15))}
}
@media(max-width:370px){.eye-active .experience-header nav{gap:15px}.gallery-open h2{font-size:29px}.gallery-intro h1{font-size:74px}}
@media(max-height:550px) and (min-width:701px){
 .eye-active .experience-header{padding-top:8px;padding-bottom:8px}
 .gallery-scene{min-height:300px;padding-top:70px;grid-template-columns:minmax(0,1fr) minmax(190px,.42fr);grid-template-rows:1fr;gap:35px;padding-bottom:16px}
 .gallery-caption{flex-direction:column;align-items:start;gap:20px}.gallery-open h2{font-size:27px}.gallery-credit{font-size:10px}.gallery-source{font-size:9px}.gallery-next{padding:0}
 .gallery-label .gallery-frame{max-width:100%;height:100%}.gallery-honey .gallery-frame{width:min(100%,calc((100dvh - 95px)*16/15))}
 .gallery-intro{display:flex;align-items:end}.gallery-intro h1{font-size:72px}.gallery-intro p{margin-top:12px}.gallery-orbit{left:45%;top:8%}
}
@media(prefers-reduced-motion:reduce){.gallery-orbit,.gallery-pupil{transform:none}.gallery-orbit{rotate:-37deg}.experience-header,.gallery-open>span{transition:none!important}}
/* Clip the square image itself, not its taller flex slot. */
.gallery-label .gallery-frame img{width:100%;height:auto;aspect-ratio:1}
.gallery-label .gallery-frame img{width:auto;height:auto}
.gallery-open h2{word-break:keep-all;overflow-wrap:normal}
