/* Motion study tokens: the existing charcoal showroom, real photography, warm white. */
:root{--motion-bg:var(--mg-black-2);--motion-text:var(--mg-paper-2);--motion-muted:var(--mg-muted);--motion-line:color-mix(in srgb,var(--mg-white) 14%,transparent);--motion-ease:var(--mg-ease-big)}
html{scroll-padding-top:72px}body.motion-study{font-family:var(--mg-font);background:var(--motion-bg);color:var(--motion-text);overscroll-behavior-y:none}
.motion-study :is(button,input,textarea,select){font-family:inherit}
.motion-study #showroom-page{padding-top:0;min-height:100svh}
.motion-study #main,.motion-study body[data-view] #main{padding:0!important;max-width:none}
.motion-world{position:relative;height:calc(100svh - 68px);min-height:570px;isolation:isolate;overflow:hidden;background:var(--mg-black-2);--look-x:0px}.motion-viewport{position:absolute;inset:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:none;cursor:grab;touch-action:pan-y;outline-offset:-3px}.motion-viewport::-webkit-scrollbar{display:none}.motion-viewport.is-dragging,.motion-viewport.is-dragging *{cursor:grabbing!important;user-select:none!important}.motion-viewport .open-photo{cursor:inherit}.motion-viewport img{-webkit-user-drag:none;user-select:none}
.motion-portal-image{width:56px;height:82px;flex:none;overflow:hidden;border-radius:1px;background:#d8d7d0}.motion-portal-image img{height:100%;width:100%;object-fit:cover;transition:transform var(--mg-dur-slow) var(--motion-ease)}.motion-portal-copy{display:block;flex:1}.motion-portal-copy b{font-size:var(--mg-fs-2xl);font-weight:var(--mg-weight-medium);display:block;line-height:var(--mg-leading-snug)}.motion-portal-copy small{font-size:var(--mg-fs-2xs);color:var(--mg-muted);display:block;margin-top:var(--mg-space-6);white-space:nowrap}
.motion-wall{margin:0;padding:0 0 var(--mg-space-64)}.motion-study .is-entrance .gallery{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));width:100%;margin-left:0;gap:var(--mg-space-16);transform:none}.motion-study .is-entrance .photo-column{gap:var(--mg-space-16);display:flex;flex-direction:column;align-self:start;min-width:0}.motion-study .is-entrance .photo-column:nth-child(6n+1){padding-top:var(--mg-space-96)}.motion-study .is-entrance .photo-column:nth-child(6n+2){margin-top:-110px}.motion-study .is-entrance .photo-column:nth-child(6n+3){margin-top:-40px}.motion-study .is-entrance .photo-column:nth-child(6n+4){margin-top:-135px}.motion-study .is-entrance .photo-column:nth-child(6n+5){padding-top:var(--mg-space-48)}.motion-study .is-entrance .photo-column:nth-child(6n){margin-top:-70px}
.motion-world .photo-card{margin:0;min-width:0;transform-origin:top left;position:relative}.motion-world .photo-media{border-radius:var(--mg-radius-sm);overflow:visible;background:var(--mg-black-4);transition:box-shadow var(--mg-dur-slow) var(--mg-ease-big)}.motion-world .open-photo{display:block;width:100%;padding:0;overflow:hidden;border-radius:var(--mg-radius-sm);background:transparent;transition:transform .65s var(--motion-ease),filter var(--mg-dur-slow) var(--mg-ease-big);outline-offset:5px}.motion-world .photo-card .open-photo img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;aspect-ratio:auto;border-radius:var(--mg-radius-sm)}.motion-world .photo-card figcaption{display:none}.motion-world .photo-card .save-photo{opacity:0;transform:translateY(5px);transition:opacity var(--mg-dur-fast) var(--mg-ease),transform var(--mg-dur-base) var(--mg-ease);right:8px;top:8px;background:color-mix(in srgb,var(--mg-black-2) 67%,transparent)}.motion-world .photo-card:hover .save-photo,.motion-world .photo-card:focus-within .save-photo,.motion-world .photo-card .save-photo[aria-pressed=true]{opacity:1;transform:none}.motion-world .photo-card:hover{z-index:4}.motion-world .photo-card .open-photo:hover{filter:brightness(1.035)}.motion-world .photo-card .open-photo:active{filter:brightness(.95);transition:filter var(--mg-dur-fast) var(--mg-ease)}
/* The same exhibition stays in view at each existing classification node. */
.motion-world.is-scope .motion-viewport{left:360px;padding:var(--mg-space-32) var(--mg-space-28) var(--mg-space-64);background:var(--mg-black-3)}.motion-study .is-scope .node-gallery{margin:0}.motion-study .is-scope .gallery{gap:var(--mg-space-20);grid-template-columns:repeat(3,minmax(0,1fr))}.motion-study .is-scope .photo-column{display:flex;flex-direction:column;gap:var(--mg-space-20)}.motion-study .is-scope .photo-column:nth-child(3n+2){padding-top:var(--mg-space-80)}.motion-study .is-scope .photo-column:nth-child(3n){padding-top:var(--mg-space-24)}.motion-study .is-scope .gallery-head{display:none}
.motion-world .feed-status{font-size:var(--mg-fs-2xs);color:var(--mg-muted);grid-column:1/-1}.motion-world .photo-loading{min-height:300px;display:grid;place-items:center}.motion-world .saved-empty{grid-column:1/-1;padding:var(--mg-space-80) var(--mg-space-20)}.motion-world .saved-empty h3{font-size:var(--mg-fs-xl);font-weight:var(--mg-weight-regular)}.motion-world .saved-empty p{font-size:var(--mg-fs-2xs);color:var(--mg-muted);margin-top:var(--mg-space-12)}.motion-world .saved-empty a{font-size:var(--mg-fs-2xs)}
@media(min-width:1600px){.motion-portal-image{width:63px;height:94px}.motion-study .is-entrance .gallery{gap:var(--mg-space-20)}.motion-study .is-entrance .photo-column{gap:var(--mg-space-20)}}
@media(max-width:1100px) and (min-width:741px){.motion-portal-image{width:48px;height:73px}.motion-portal-copy b{font-size:var(--mg-fs-xl)}.motion-portal-copy small{font-size:var(--mg-fs-2xs)}.motion-world.is-scope .motion-viewport{left:310px;padding:var(--mg-space-24) var(--mg-space-20)}.motion-study .is-scope .gallery,.motion-study .is-scope .photo-column{gap:var(--mg-space-16)}}
@media(max-width:740px){
 html{scroll-padding-top:56px}
 .motion-world{height:calc(100svh - 56px);min-height:630px}.motion-world.is-entrance{display:flex;flex-direction:column}.motion-portal-image{width:38px;height:59px}.motion-portal-copy b{font-size:var(--mg-fs-xl)}.motion-portal-copy small{font-size:var(--mg-fs-2xs);white-space:normal;line-height:var(--mg-leading-snug);margin-top:var(--mg-space-4);max-width:77px}.motion-world.is-entrance .motion-viewport{position:relative;inset:auto;flex:1;min-height:0;overflow:auto;width:100%;padding-top:var(--mg-space-6)}.motion-study .is-entrance .gallery{width:calc(100% + 34px);margin-left:-17px;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--mg-space-10);transform:none}.motion-study .is-entrance .photo-column{gap:var(--mg-space-10)}.motion-study .is-entrance .photo-column:nth-child(3n+1){padding-top:var(--mg-space-32);margin-top:0}.motion-study .is-entrance .photo-column:nth-child(3n+2){padding-top:0;margin-top:-40px}.motion-study .is-entrance .photo-column:nth-child(3n){padding-top:0;margin-top:-5px}.motion-world .photo-card .save-photo{opacity:1;transform:none;right:5px;top:5px;width:30px;height:30px;min-width:30px;min-height:30px}.motion-world .photo-card .save-photo svg{width:16px;height:16px}.motion-world .open-photo:hover{transform:none!important}
 .motion-world.is-scope{height:auto;min-height:calc(100svh - 56px);overflow:visible}.motion-world.is-scope .motion-viewport{position:relative;inset:auto;height:64svh;min-height:430px;padding:var(--mg-space-20) var(--mg-space-16) var(--mg-space-64);border-top:1px solid var(--motion-line)}.motion-study .is-scope .gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--mg-space-12)}.motion-study .is-scope .photo-column{gap:var(--mg-space-12)}.motion-study .is-scope .photo-column:nth-child(2n+1){padding-top:0}.motion-study .is-scope .photo-column:nth-child(2n){padding-top:var(--mg-space-40)}.motion-study #toast{bottom:22px}
}
@media(prefers-reduced-motion:reduce){.motion-world *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Mobile entrance: the photographs reach every edge; controls float over them. */
@media(max-width:740px){
 .motion-study.motion-entrance #showroom-page{padding-top:0}
 .motion-study:not(.motion-entrance) #showroom-page{padding-top:var(--mg-space-64)}
 .motion-world.is-entrance{height:100svh;min-height:0;display:block;overflow:hidden}
 .motion-world.is-entrance .motion-viewport{position:absolute;inset:0;width:100%;height:100%;min-height:0;padding:0;touch-action:pan-y}
 .motion-world.is-entrance .motion-portal-image{width:33px;height:50px}
 .motion-world.is-entrance .motion-portal-copy b{font-size:var(--mg-fs-xl)}
 .motion-study .is-entrance .gallery{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;margin:0;gap:var(--mg-space-12);transform:none;transition:none}
 .motion-study .is-entrance .photo-column:nth-child(n){padding-top:0;margin-top:0}
 .motion-study .is-entrance .photo-column:nth-child(3n+2){margin-top:-72px}
 .motion-study .is-entrance .motion-wall{padding-left:var(--mg-space-16);padding-right:var(--mg-space-16)}
}

.motion-viewport{overflow-anchor:none}
.motion-world .open-photo[data-pointer-return]{outline:none!important;outline-offset:0!important}

/* Hovered photos rise among photos, beneath the navigation and its readability mask. */
.motion-world .gallery{position:relative;z-index:0;isolation:isolate}
/* Phones turned sideways keep the portrait photo columns (owner decision 2026-11-02). */
@media(orientation:landscape) and (max-height:500px) and (min-width:741px){.motion-study .is-entrance .gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}
