/* A shared viewing area, with framing chosen for the kind of work. */
.work-grid .work-card:nth-child(n) .image-link,
.related-grid :is(.work-card,.person-work) .image-link,
.home-work-rail :is(.work-card,.person-work) .image-link {
  aspect-ratio: 3 / 2;
  background: transparent;
  border: 0;
  box-shadow: none;
  border-radius: 0;
}
.work-art.art-book,.work-art.art-sheet,.work-art.art-screen,.work-art.art-identity {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
}
.art-book::before,.art-sheet::before,.art-screen::before,.art-identity::before {
  content: '';
  position: absolute;
  inset: 8% 12%;
  z-index: -1;
  background: radial-gradient(ellipse at 42% 50%,rgb(var(--art-a) / .13),transparent 65%),
    radial-gradient(ellipse at 62% 62%,rgb(var(--art-b) / .075),transparent 62%);
  filter: blur(24px);
  pointer-events: none;
}
:is(.work-card,.person-work) .work-art.art-book > img {
  height: 94%;
  width: auto;
  max-width: 82%;
  object-fit: contain;
  filter: drop-shadow(0 15px 16px #0005);
  transform: perspective(900px) rotateY(-5deg) rotateZ(-2deg);
  transition: transform .7s cubic-bezier(.22,.68,.25,1),filter .7s;
}
:is(.work-card,.person-work) a:hover .art-book > img,:is(.work-card,.person-work) a:focus-visible .art-book > img {
  transform: perspective(900px) rotateY(0) rotateZ(0) translateY(-3px);
  filter: drop-shadow(0 22px 23px #0005);
}
:is(.work-card,.person-work) .work-art.art-sheet > img {
  height: 90%;width: auto;max-width: 80%;object-fit: contain;
  border-radius: 2px;filter: drop-shadow(0 16px 24px #0005);
}
.art-screen .screen-surface {
  display: block;position: relative;width: 94%;height: auto;aspect-ratio: var(--frame-ratio);
  overflow: hidden;border: 1px solid #ffffff18;border-radius: 7px;
  box-shadow: 0 14px 32px #0004;background: #222426;
}
:is(.work-card,.person-work) .art-screen .screen-surface > img {
  display: block;width: 100%;height: 100%;object-fit: cover;transform: none;
}
.art-screen.art-mobile-screen .screen-surface {
  width: auto;height: 92%;aspect-ratio: var(--frame-ratio);border-radius: 8px;
}
.art-screen.art-sfai .sfai-study {
  width: 94%;aspect-ratio: 966 / 490;
}
:is(.work-card,.person-work) .art-sfai .sfai-study > img {
  position: absolute;left: 0;top: 0;width: 100%;height: 215.91837%;object-fit: fill;object-position: top;
}
:is(.work-card,.person-work) .work-art.art-identity > img {
  width: 94%;height: auto;max-height: 92%;object-fit: contain;
  border-radius: 5px;filter: drop-shadow(0 12px 25px #0003);
}
.work-art.art-document {
  display: flex;align-items: center;justify-content: center;
  overflow: visible;background: transparent;container-type:size;
}
.art-document .document-frame {
  display: block;position: relative;width:min(100cqw,calc(100cqh * var(--frame-ratio)));aspect-ratio: var(--frame-ratio);
  overflow: hidden;border-radius: 9px;
}
:is(.work-card,.person-work) .art-document .document-frame > img {
  display: block;width: 100%;height: 100%;object-fit: cover;object-position: 50% var(--frame-y,50%);
}
.art-document.art-low-resolution .document-frame {max-width: 540px}
.work-grid.index .work-art {height: 100%;overflow: hidden}
.work-grid.index .work-art img {filter: none!important}
.work-grid.index .image-label {display: none}
.work-grid.index .work-art.art-book > img {max-width: 100%;height: 100%;transform: none}
.work-grid.index .art-sheet > img {height: 100%;max-width: 100%}
.work-grid.index .art-document .document-frame {border-radius: 3px}
@media(max-width:700px) {
  :is(.work-card,.person-work) .work-art.art-book > img {height: 97%}
  :is(.work-card,.person-work) .work-art.art-sheet > img {height: 94%}
  .art-document .document-frame {border-radius: 7px}
  .art-screen .screen-surface {border-radius: 5px}
}
@media(prefers-reduced-motion:reduce) {
  :is(.work-card,.person-work) .work-art.art-book > img,
  :is(.work-card,.person-work) a:hover .art-book > img,
  :is(.work-card,.person-work) a:focus-visible .art-book > img {transform:none;transition:none}
}
@media(forced-colors:active) {
  .art-book::before,.art-sheet::before,.art-screen::before,.art-identity::before {display:none}
}

.art-identity-mount-haven .identity-surface {
  position: relative;display: block;width: 94%;aspect-ratio: 3 / 2;
  overflow: hidden;border-radius: 6px;box-shadow: 0 15px 26px #0003;
}
:is(.work-card,.person-work) .art-identity-mount-haven .identity-surface > img {
  position: absolute;max-width: none;width: 200%;height: 200%;left: 0;top: -100%;
  object-fit: fill;transform: none;
}

.profile-rail .person-work-image.image-link {aspect-ratio:3/2;background:none;border-radius:0;box-shadow:none}
.profile-rail .person-work-image .work-art {height:100%;width:100%}

/* Individual entry compositions built from the original posters, stills and studies. */
.work-art.thumb-composition{container-type:size;overflow:visible;background:none}
.thumb-pane{display:block;position:absolute;aspect-ratio:var(--pane-ratio);height:auto;isolation:isolate}
:is(.work-card,.person-work) .thumb-composition .thumb-pane>img,
.thumb-composition .thumb-pane>svg{display:block;width:100%;height:100%;max-width:100%;object-fit:contain;transform:none!important;filter:none;border-radius:0}
.thumb-atmosphere{position:absolute;inset:5%;opacity:.27;filter:blur(23px);mask-image:radial-gradient(ellipse closest-side,#000 18%,transparent 95%);pointer-events:none}
:is(.work-card,.person-work) .thumb-composition .thumb-atmosphere>img,
.thumb-composition .thumb-atmosphere>svg{width:100%;height:100%;object-fit:cover;transform:none!important}
.thumb-cinema .thumb-pane{left:50%;top:49%;width:min(96cqw,calc(88cqh * var(--pane-ratio)));transform:translate(-50%,-50%);border-radius:4px;overflow:hidden}
.thumb-cinema.has-title .thumb-pane{top:41%;width:min(96cqw,calc(72cqh * var(--pane-ratio)))}
.thumb-cinema .thumb-pane-1{opacity:0;animation:thumbnail-scene-change var(--thumb-period,16s) ease-in-out infinite;animation-delay:var(--thumb-delay);animation-play-state:var(--art-play-state)}
.thumb-title{position:absolute;display:block;width:76%;height:20%;left:12%;bottom:3%;pointer-events:none}
.thumb-title svg{width:100%;height:100%;display:block}
.thumb-title-screen{mix-blend-mode:screen}
/* Use the document's inline filter: external SVG filters can leave an opaque
   matte in browsers that do not resolve them. Original RGB and files stay intact. */
.thumb-title-screen svg,.film-title__art--screen{filter:url('#film-title-matte')}
:is(a:hover,a:focus-visible) .thumb-cinema .thumb-source{filter:brightness(1.035)}

.thumb-passport-set .thumb-pane{width:28%;top:18%;filter:drop-shadow(0 13px 15px #0005);animation:thumbnail-sheet-drift 13s ease-in-out infinite;animation-play-state:var(--art-play-state);animation-delay:calc(var(--pane-order) * -3s);--pane-angle:0deg}
.thumb-passport-set .thumb-pane-0{left:5%;--pane-angle:-5deg}
.thumb-passport-set .thumb-pane-1{left:36%;top:11%}
.thumb-passport-set .thumb-pane-2{left:67%;top:20%;--pane-angle:5deg}
.thumb-print .thumb-pane{left:50%;top:50%;width:min(87cqw,calc(82cqh * var(--pane-ratio)));filter:drop-shadow(0 17px 21px #0005);animation:thumbnail-print-drift 15s ease-in-out infinite;animation-play-state:var(--art-play-state);transform:translate(-50%,-50%) rotate(-3deg)}
.thumb-print .thumb-atmosphere{opacity:.38}
.thumb-campaign-set .thumb-pane{width:28%;filter:drop-shadow(0 14px 15px #0006);animation:thumbnail-sheet-drift 13s ease-in-out infinite;animation-play-state:var(--art-play-state);animation-delay:calc(var(--pane-order) * -3s);--pane-angle:0deg}
.thumb-campaign-set .thumb-pane-0{left:5%;top:24%;--pane-angle:-5deg}
.thumb-campaign-set .thumb-pane-1{left:36%;top:10%}
.thumb-campaign-set .thumb-pane-2{left:67%;top:15%;--pane-angle:5deg}

.thumb-poster-scene .thumb-pane-0{left:5%;top:8%;width:min(35cqw,calc(84cqh * var(--pane-ratio)));z-index:2;filter:drop-shadow(0 15px 22px #0008);transform:rotate(-3deg);transition:transform .8s ease}
.thumb-poster-scene .thumb-pane-1{width:53%;left:43%;top:34%;transform:rotate(3deg);filter:drop-shadow(0 12px 22px #0005);transition:transform .8s ease}
:is(a:hover,a:focus-visible) .thumb-poster-scene .thumb-pane-0{transform:rotate(-1deg) translateY(-2%)}
:is(a:hover,a:focus-visible) .thumb-poster-scene .thumb-pane-1{transform:rotate(0) translateY(-4%)}
.thumb-diptych .thumb-pane{filter:drop-shadow(0 12px 20px #0005);--pane-angle:0deg;animation:thumbnail-sheet-drift 14s ease-in-out infinite;animation-play-state:var(--art-play-state)}
.thumb-diptych .thumb-pane-0{left:4%;top:8%;width:68%;--pane-angle:-3deg}
.thumb-diptych .thumb-pane-1{left:32%;top:45%;width:63%;--pane-angle:3deg;animation-delay:-7s}
.thumb-ensemble .thumb-pane{filter:drop-shadow(0 12px 20px #0006);--pane-angle:0deg;animation:thumbnail-sheet-drift 15s ease-in-out infinite;animation-play-state:var(--art-play-state);animation-delay:calc(var(--pane-order) * -4s)}
.thumb-ensemble .thumb-pane-0{left:4%;top:9%;width:24%;--pane-angle:-4deg}
.thumb-ensemble .thumb-pane-1{left:20%;top:31%;width:60%;z-index:2}
.thumb-ensemble .thumb-pane-2{left:72%;top:49%;width:24%;--pane-angle:4deg}

.thumb-screen-studies .thumb-pane{filter:drop-shadow(0 12px 21px #0006);border-radius:4px;overflow:hidden;--pane-angle:0deg;animation:thumbnail-sheet-drift 16s ease-in-out infinite;animation-play-state:var(--art-play-state)}
.thumb-screen-studies .thumb-pane-0{width:72%;left:5%;top:10%;--pane-angle:-4deg}
.thumb-screen-studies .thumb-pane-1{width:min(74cqw,calc(56cqh * var(--pane-ratio)));left:21%;top:39%;--pane-angle:2deg;animation-delay:-8s}
.thumb-mark-device .thumb-pane-0{width:min(61cqw,calc(80cqh * var(--pane-ratio)));left:2%;top:9%;border-radius:50%;overflow:hidden;animation:thumbnail-mark-turn 18s ease-in-out infinite;animation-play-state:var(--art-play-state)}
.thumb-mark-device .thumb-pane-1{width:min(28cqw,calc(87cqh * var(--pane-ratio)));left:68%;top:7%;filter:drop-shadow(0 13px 15px #0006);transform:rotate(3deg);transition:transform .8s ease}
:is(a:hover,a:focus-visible) .thumb-mark-device .thumb-pane-1{transform:rotate(0) translateY(-2%)}
.thumb-identity-set .thumb-pane{width:46%;filter:drop-shadow(0 12px 22px #0005);--pane-angle:0deg;animation:thumbnail-sheet-drift 16s ease-in-out infinite;animation-play-state:var(--art-play-state)}
.thumb-identity-set .thumb-pane-0{left:3%;top:16%;--pane-angle:-4deg}
.thumb-identity-set .thumb-pane-1{left:51%;top:36%;--pane-angle:3deg;animation-delay:-8s}
.thumb-identity-screen .thumb-pane{filter:drop-shadow(0 10px 20px #0005);transition:transform .8s ease}
.thumb-identity-screen .thumb-pane-0{width:63%;left:4%;top:15%;transform:rotate(-3deg)}
.thumb-identity-screen .thumb-pane-1{width:min(27cqw,calc(86cqh * var(--pane-ratio)));left:71%;top:8%;transform:rotate(3deg)}
:is(a:hover,a:focus-visible) .thumb-identity-screen .thumb-pane{transform:rotate(0)}
.thumb-publication-set .thumb-pane{filter:drop-shadow(0 12px 20px #0006);transition:transform .8s ease}
.thumb-publication-set .thumb-pane-0{width:min(37cqw,calc(84cqh * var(--pane-ratio)));left:5%;top:7%;transform:rotate(-3deg);z-index:2}
.thumb-publication-set .thumb-pane-1{width:51%;left:45%;top:20%;transform:rotate(3deg)}
:is(a:hover,a:focus-visible) .thumb-publication-set .thumb-pane{transform:rotate(0) translateY(-2%)}
.thumb-double-exposure .thumb-pane{width:min(94cqw,calc(88cqh * var(--pane-ratio)));left:50%;top:50%;transform:translate(-50%,-50%);mask-image:linear-gradient(transparent,#000 5%,#000 95%,transparent)}
.thumb-double-exposure .thumb-pane-1{mix-blend-mode:screen;opacity:.12;animation:thumbnail-exposure 14s ease-in-out infinite;animation-delay:-4s;animation-play-state:var(--art-play-state)}
:is(.work-card,.person-work) .work-art.art-book>img{animation:thumbnail-book-drift 15s ease-in-out infinite;animation-play-state:var(--art-play-state)}
:is(.work-card,.person-work) a:hover .art-book>img,:is(.work-card,.person-work) a:focus-visible .art-book>img{animation:none}

@keyframes thumbnail-scene-change{0%,28%,100%{opacity:0}40%,80%{opacity:1}}
@keyframes thumbnail-sheet-drift{0%,100%{transform:translateY(1%) rotate(var(--pane-angle))}50%{transform:translateY(-2%) rotate(var(--pane-angle))}}
@keyframes thumbnail-print-drift{0%,100%{transform:translate(-50%,-48%) rotate(-3deg)}50%{transform:translate(-50%,-52%) rotate(1deg)}}
@keyframes thumbnail-mark-turn{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}
@keyframes thumbnail-exposure{0%,100%{opacity:.08}50%{opacity:.56}}
@keyframes thumbnail-book-drift{0%,100%{transform:perspective(900px) rotateY(-7deg) rotateZ(-2deg) translateY(0)}50%{transform:perspective(900px) rotateY(2deg) rotateZ(0) translateY(-2%)}}

/* Interlude: the complete original poster, held as a lightly moving print. */
.thumb-print[data-thumbnail-work="interlude_exhibition_graphics"]{perspective:1000px}
.thumb-print[data-thumbnail-work="interlude_exhibition_graphics"] .thumb-atmosphere{opacity:.13}
.thumb-print[data-thumbnail-work="interlude_exhibition_graphics"] .thumb-pane{width:min(87cqw,calc(87cqh * var(--pane-ratio)));filter:none;transform-origin:50% 50%;transform:translate(-50%,-50%) rotateX(1.5deg) rotateY(-5deg) rotateZ(-1.2deg);box-shadow:1px 1px 0 #b9a9a2,.6cqh 1.4cqh 2cqh #0003;animation:interlude-print-turn 18s ease-in-out infinite;animation-delay:var(--thumb-delay);animation-play-state:var(--art-play-state)}
.thumb-print[data-thumbnail-work="interlude_exhibition_graphics"] .thumb-pane::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 15%,#ffffff45 43%,transparent 66%,#0003 100%);background-size:220% 100%;background-position:0% 50%;mix-blend-mode:soft-light;opacity:.24;animation:interlude-print-reflection 18s ease-in-out infinite;animation-delay:var(--thumb-delay);animation-play-state:var(--art-play-state)}
@keyframes interlude-print-turn{0%,100%{transform:translate(-50%,-50%) rotateX(1.5deg) rotateY(-5deg) rotateZ(-1.2deg);box-shadow:1px 1px 0 #b9a9a2,.6cqh 1.4cqh 2cqh #0003}50%{transform:translate(-50%,-50%) rotateX(-1.5deg) rotateY(5deg) rotateZ(1deg);box-shadow:-1px 1px 0 #b9a9a2,-.6cqh 1.4cqh 2cqh #0003}}
@keyframes interlude-print-reflection{0%,100%{background-position:0% 50%;opacity:.24}50%{background-position:100% 50%;opacity:.4}}
.work-grid.index [data-thumbnail-work="interlude_exhibition_graphics"] .thumb-pane{box-shadow:none}
.work-grid.index [data-thumbnail-work="interlude_exhibition_graphics"] .thumb-pane::after{display:none}
@media(prefers-reduced-motion:reduce){.thumb-print[data-thumbnail-work="interlude_exhibition_graphics"] .thumb-pane{transform:translate(-50%,-50%)}.thumb-print[data-thumbnail-work="interlude_exhibition_graphics"] .thumb-pane::after{animation:none;opacity:.12;background-position:50% 50%}}
@media(forced-colors:active){.thumb-print[data-thumbnail-work="interlude_exhibition_graphics"] .thumb-pane{box-shadow:none}.thumb-print[data-thumbnail-work="interlude_exhibition_graphics"] .thumb-pane::after{display:none}}

/* An index remains a compact, still index. All motion follows the shared control. */
.work-grid.index .thumb-composition .thumb-pane{inset:0;width:100%;height:100%;aspect-ratio:auto;transform:none;animation:none;filter:none;mask-image:none;border-radius:0}
.work-grid.index .thumb-composition .thumb-pane:not(.thumb-pane-0),
.work-grid.index .thumb-title,.work-grid.index .thumb-atmosphere{display:none}
.work-grid.index .thumb-composition .thumb-pane>img{object-fit:contain}
.work-grid.index .work-art.art-book>img{animation:none}
@media(prefers-reduced-motion:reduce){
  .thumb-composition *,:is(.work-card,.person-work) .work-art.art-book>img{animation:none!important;transition:none!important}
  .thumb-cinema .thumb-pane-1{opacity:0}
  .thumb-double-exposure .thumb-pane-1{opacity:0}
}
@media(forced-colors:active){.thumb-atmosphere{display:none}.thumb-pane{filter:none}}

/* Mount Haven: a thin reflective emblem with readable open wave forms. */
.thumb-mount-emblem{perspective:850px}
.thumb-mount-emblem .mount-emblem-object,
.thumb-mount-emblem .mount-emblem-reflection{position:absolute;display:block;left:50%;width:min(74cqh,82cqw);aspect-ratio:1;pointer-events:none}
.thumb-mount-emblem .mount-emblem-object{top:6%;transform-style:preserve-3d;transform:translate(-50%,1%) rotateX(8deg) rotateY(-19deg) rotateZ(-2deg);animation:mount-emblem-object-turn 12s ease-in-out infinite;animation-play-state:var(--art-play-state)}
.thumb-mount-emblem :is(.mount-emblem-front,.mount-emblem-back,.mount-emblem-bevel){position:absolute;display:block;inset:0;backface-visibility:hidden}
.thumb-mount-emblem .mount-emblem-front{transform:translateZ(1px);filter:drop-shadow(-.4px -.6px .3px #ffffe6c0) drop-shadow(.7px 1px .45px #344525a0)}
.thumb-mount-emblem .mount-emblem-back{transform:translateZ(-3px);filter:brightness(.48)}
.thumb-mount-emblem .mount-emblem-bevel{transform:translateZ(-1px);filter:brightness(.72)}
.thumb-mount-emblem svg{display:block;width:100%;height:100%;overflow:visible}
.thumb-mount-emblem .mount-emblem-color{animation:mount-emblem-palette 24s ease-in-out infinite;animation-play-state:var(--art-play-state)}
.thumb-mount-emblem .mount-emblem-metal{opacity:.94;animation:mount-emblem-metal 12s ease-in-out infinite;animation-play-state:var(--art-play-state)}
.thumb-mount-emblem .mount-emblem-light{opacity:.8;animation:mount-emblem-sheen 12s ease-in-out infinite;animation-play-state:var(--art-play-state)}
.thumb-mount-emblem .mount-edge-ink .mount-emblem-color{fill:#89906b;animation:none}
.thumb-mount-emblem .mount-edge-ink .mount-emblem-light{display:none}
.thumb-mount-emblem .mount-emblem-reflection{top:83%;height:16%;aspect-ratio:auto;opacity:.26;overflow:hidden;transform:translateX(-50%);mask-image:linear-gradient(#000b,transparent 96%);-webkit-mask-image:linear-gradient(#000b,transparent 96%);animation:mount-emblem-reflect 12s ease-in-out infinite;animation-play-state:var(--art-play-state)}
.thumb-mount-emblem .mount-emblem-reflection svg{height:74cqh;transform:scaleY(-1);transform-origin:50% 50%}
@keyframes mount-emblem-object-turn{0%,100%{transform:translate(-50%,1%) rotateX(8deg) rotateY(-19deg) rotateZ(-2deg)}45%{transform:translate(-50%,-1.8%) rotateX(-6deg) rotateY(22deg) rotateZ(2deg)}75%{transform:translate(-50%,-.5%) rotateX(3deg) rotateY(4deg) rotateZ(.5deg)}}
@keyframes mount-emblem-palette{0%,100%{fill:#eeead0}50%{fill:#d6e9cf}}
@keyframes mount-emblem-metal{0%,100%{transform:translateX(-130px)}45%{transform:translateX(120px)}75%{transform:translateX(15px)}}
@keyframes mount-emblem-sheen{0%,8%{transform:translateX(-400px);opacity:.3}38%{opacity:.95}63%,100%{transform:translateX(420px);opacity:.45}}
@keyframes mount-emblem-reflect{0%,100%{opacity:.27;transform:translate(-50%,0) scaleX(.93)}45%{opacity:.2;transform:translate(-50%,6%) scaleX(.91)}75%{opacity:.3;transform:translate(-50%,2%) scaleX(1)}}

/* A continuous field of view, with deliberate left / up / right head turns.
   The images overscan the viewing area so no photograph edge is revealed. */
.thumb-mining-pov .mining-pov-field{position:absolute;display:block;inset:2% 0;overflow:hidden;perspective:900px;isolation:isolate;mask-image:linear-gradient(90deg,transparent,#000 16%,#000 84%,transparent),linear-gradient(transparent,#000 17%,#000 79%,transparent);mask-composite:intersect;-webkit-mask-image:linear-gradient(90deg,transparent,#000 16%,#000 84%,transparent),linear-gradient(transparent,#000 17%,#000 79%,transparent);-webkit-mask-composite:source-in}
.thumb-mining-pov .mining-pov-camera{position:absolute;display:block;inset:-23% -27%;transform-origin:50% 50%;animation:mining-pov-head-look 18s cubic-bezier(.38,0,.25,1) infinite;animation-play-state:var(--art-play-state)}
.thumb-mining-pov .mining-pov-sphere{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none}
.thumb-mining-pov .mining-pov-sphere[data-pov-ready="true"]{opacity:1}
.thumb-mining-pov .mining-pov-sphere[data-pov-ready="true"]+.mining-pov-camera{opacity:0}
.thumb-mining-pov .mining-pov-image{position:absolute;display:block;inset:0;opacity:0}
:is(.work-card,.person-work) .thumb-mining-pov .mining-pov-image>img{display:block;position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 50%;border-radius:0;transform:none;filter:none}
.thumb-mining-pov .mining-pov-wide{opacity:1}
.thumb-mining-pov .mining-pov-circle{animation:mining-pov-second 54s linear infinite;animation-play-state:var(--art-play-state)}
.thumb-mining-pov .mining-pov-close{animation:mining-pov-third 54s linear infinite;animation-play-state:var(--art-play-state)}
.thumb-mining-pov .mining-pov-periphery{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 44%,transparent 20%,#03050925 55%,#030509a0 100%)}
@keyframes mining-pov-head-look{
  0%,5%,92%,100%{transform:translate3d(0,0,0) rotateX(0deg) rotateY(0deg) rotateZ(0deg)}
  21%,28%{transform:translate3d(12%,1%,0) rotateX(0deg) rotateY(-5deg) rotateZ(.8deg)}
  47%,54%{transform:translate3d(1%,13%,0) rotateX(5deg) rotateY(0deg) rotateZ(-.4deg)}
  73%,80%{transform:translate3d(-12%,0,0) rotateX(0deg) rotateY(5deg) rotateZ(-.8deg)}
}
@keyframes mining-pov-second{0%,30%,67%,100%{opacity:0}33.333%,63.666%{opacity:1}}
@keyframes mining-pov-third{0%,63.666%,100%{opacity:0}67%,97%{opacity:1}}

/* Jabbara's original figure advances while separately cut papers rattle. */
.thumb-jabbara-scene .jabbara-stage{display:block;position:absolute;left:50%;top:50%;width:98%;aspect-ratio:12/5;transform:translate(-50%,-50%);overflow:visible;isolation:isolate}
.thumb-jabbara-scene .jabbara-void{position:absolute;inset:2% 3%;pointer-events:none;background:radial-gradient(ellipse at 53% 52%,#020606ed,transparent 68%);opacity:0;animation:jabbara-void 18s linear infinite;animation-play-state:var(--art-play-state)}
.thumb-jabbara-scene .jabbara-room,
.thumb-jabbara-scene .jabbara-room-scene,
.thumb-jabbara-scene .jabbara-figure{display:block;position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.thumb-jabbara-scene .jabbara-room{overflow:hidden;opacity:1;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent),linear-gradient(transparent,#000 8%,#000 90%,transparent);mask-composite:intersect;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent),linear-gradient(transparent,#000 8%,#000 90%,transparent);-webkit-mask-composite:source-in;animation:jabbara-room-vanish 18s linear infinite;animation-play-state:var(--art-play-state)}
.thumb-jabbara-scene .jabbara-room-scene{overflow:visible}
.thumb-jabbara-scene .jabbara-drawing{transform-box:view-box;filter:drop-shadow(1px 3px 2px #0008);animation:jabbara-paper-rattle 18s linear infinite;animation-delay:calc(var(--paper-order) * -.075s);animation-play-state:var(--art-play-state)}
.thumb-jabbara-scene .jabbara-room-darkness{opacity:.1;animation:jabbara-room-darken 18s linear infinite;animation-play-state:var(--art-play-state)}
.thumb-jabbara-scene .jabbara-figure{z-index:2;overflow:visible;mask-image:linear-gradient(transparent,#000 6%,#000 93%,transparent);-webkit-mask-image:linear-gradient(transparent,#000 6%,#000 93%,transparent);transform-origin:54% 43%;animation:jabbara-figure-approach 18s cubic-bezier(.35,.05,.2,1) infinite;animation-play-state:var(--art-play-state)}
.thumb-jabbara-scene .jabbara-figure-darkness{opacity:0;animation:jabbara-figure-darken 18s linear infinite;animation-play-state:var(--art-play-state)}
.thumb-jabbara-scene .jabbara-feather-mid{animation:jabbara-feather-mid 18s linear infinite;animation-play-state:var(--art-play-state)}
.thumb-jabbara-scene .jabbara-feather-tail{animation:jabbara-feather-tail 18s linear infinite;animation-play-state:var(--art-play-state)}
@keyframes jabbara-room-vanish{0%,31%,100%{opacity:1}40%,77%{opacity:0}91%{opacity:1}}
@keyframes jabbara-room-darken{0%,9%,100%{opacity:.1}25%{opacity:.65}34%,80%{opacity:1}92%{opacity:.1}}
@keyframes jabbara-void{0%,19%,100%{opacity:0}39%,80%{opacity:1}92%{opacity:0}}
@keyframes jabbara-figure-approach{0%,28%,100%{transform:scale(1)}50%,74%{transform:translateY(-.5%) scale(1.52)}93%{transform:scale(1)}}
@keyframes jabbara-figure-darken{0%,24%,100%{opacity:0}42%,78%{opacity:1}93%{opacity:0}}
@keyframes jabbara-feather-mid{0%,27%,100%{stop-color:white}42%,77%{stop-color:#c0c0c0}93%{stop-color:white}}
@keyframes jabbara-feather-tail{0%,27%,100%{stop-color:white}42%,77%{stop-color:black}93%{stop-color:white}}
@keyframes jabbara-paper-rattle{
  0%,10%,35%,100%{transform:translate(0,0) rotate(0)}
  11.3%,17.2%,24.1%,30.2%{transform:translate(var(--paper-x),var(--paper-y)) rotate(var(--paper-turn))}
  12.1%,18.1%,25.3%,31.1%{transform:translate(calc(var(--paper-x) * -.7),calc(var(--paper-y) * -1.2)) rotate(calc(var(--paper-turn) * -1.5))}
  13.4%,20.2%,27.1%,32.7%{transform:translate(calc(var(--paper-x) * 1.5),calc(var(--paper-y) * -.5)) rotate(calc(var(--paper-turn) * 2.7))}
  14.1%,21.3%,28.4%,33.4%{transform:translate(calc(var(--paper-x) * -1.3),var(--paper-y)) rotate(calc(var(--paper-turn) * -2.1))}
  15.2%,22.6%,29.3%,34.1%{transform:translate(0,0) rotate(calc(var(--paper-turn) * .3))}
}

/* Compact rows and reduced motion retain the source scene without animation. */
.work-grid.index :is(.thumb-mount-emblem,.thumb-mining-pov,.thumb-jabbara-scene) *{animation:none!important}
.work-grid.index .mount-emblem-reflection{display:none}
.work-grid.index .mount-emblem-object{top:8%;width:min(84cqh,92cqw);transform:translateX(-50%) rotateY(-8deg)}
.work-grid.index .mining-pov-camera{inset:0;transform:none}
.work-grid.index :is(.mining-pov-circle,.mining-pov-close){opacity:0}
.work-grid.index .jabbara-room{opacity:1}
.work-grid.index .jabbara-figure{transform:none}
@media(prefers-reduced-motion:reduce){
 .thumb-mount-emblem .mount-emblem-object{transform:translateX(-50%) rotateX(4deg) rotateY(-10deg)}
 .thumb-mining-pov .mining-pov-camera{inset:0;transform:none}
 .thumb-mining-pov :is(.mining-pov-circle,.mining-pov-close){opacity:0}
 .thumb-jabbara-scene .jabbara-room{opacity:1}
 .thumb-jabbara-scene :is(.jabbara-figure,.jabbara-drawing){transform:none}
 .thumb-jabbara-scene :is(.jabbara-figure-darkness,.jabbara-void){opacity:0}
 .thumb-jabbara-scene :is(.jabbara-feather-mid,.jabbara-feather-tail){stop-color:white}
}

/* Entry-motion refinement: original stills, printed objects and title-only works. */
.thumb-cinema .thumb-source{position:absolute;display:block;inset:0;transform-origin:54% 48%;animation:thumbnail-camera var(--thumb-period,16s) ease-in-out infinite;animation-delay:var(--thumb-delay);animation-play-state:var(--art-play-state);transition:filter .6s}
.thumb-cinema .thumb-pane-1 .thumb-source{animation-direction:reverse;transform-origin:42% 54%}
.thumb-cinema .thumb-source>:is(img,svg){position:absolute;display:block;inset:0;width:100%;height:100%;max-width:none;object-fit:contain;transform:none!important;filter:none;border-radius:0}
@keyframes thumbnail-camera{0%,100%{transform:translate(-.45%,.2%) scale(1.025)}50%{transform:translate(.55%,-.4%) scale(1.065)}}
.thumb-publication-set .thumb-pane{animation:publication-turn 14s ease-in-out infinite;animation-play-state:var(--art-play-state);--publication-angle:-3deg;transform-origin:10% 80%}
.thumb-publication-set .thumb-pane-1{--publication-angle:3deg;animation-delay:-7s;transform-origin:90% 80%}
.thumb-publication-set .thumb-pane:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 28%,#fff2 49%,transparent 66%);background-size:260% 100%;animation:publication-reflection 14s ease-in-out infinite;animation-delay:inherit;animation-play-state:var(--art-play-state)}
@keyframes publication-turn{0%,100%{transform:perspective(1000px) rotateY(-5deg) rotateZ(var(--publication-angle)) translateY(1%)}50%{transform:perspective(1000px) rotateY(4deg) rotateZ(calc(var(--publication-angle) * .4)) translateY(-1%)}}
@keyframes publication-reflection{0%,100%{background-position:100% 0;opacity:.25}50%{background-position:0 0;opacity:.6}}
.work-art.art-title-sequence{container-type:size;overflow:visible;perspective:1100px;isolation:isolate}
.art-title-sequence :is(.title-card-face,.title-card-echo){position:absolute;inset:12% 5%;display:flex;align-items:center;justify-content:center}
.art-title-sequence :is(.title-card-face,.title-card-echo)>img{display:block;width:100%;height:100%;max-width:100%;object-fit:contain;transform:none!important;filter:none;border-radius:0}
.title-card-face{animation:title-card-focus 12s ease-in-out infinite;animation-delay:var(--title-phase);animation-play-state:var(--art-play-state)}
.title-card-echo{opacity:0;pointer-events:none;mask-image:linear-gradient(105deg,transparent 26%,#000 48%,transparent 69%);mask-size:240% 100%;animation:title-card-afterimage 12s ease-in-out infinite;animation-delay:var(--title-phase);animation-play-state:var(--art-play-state)}
.title-sequence-stage .title-card-face{transform-origin:50% 100%;animation-name:title-card-stage}
.title-sequence-stage .title-card-echo{animation-direction:reverse}
@keyframes title-card-focus{0%,100%{opacity:.88;transform:rotateY(-4deg) translateY(.8%) scale(.97)}44%,63%{opacity:1;transform:rotateY(3deg) translateY(-.6%) scale(1.025)}}
@keyframes title-card-stage{0%,100%{opacity:.88;transform:rotateX(5deg) translateY(1%) scale(.98)}45%,65%{opacity:1;transform:rotateX(-3deg) translateY(-1%) scale(1.025)}}
@keyframes title-card-afterimage{0%,15%,68%,100%{opacity:0;transform:translateX(-1.5%);mask-position:100% 0}30%,40%{opacity:.15}58%{opacity:0;transform:translateX(1.7%);mask-position:0 0}}
.work-grid.index .thumb-source,.work-grid.index .art-title-sequence *{animation:none!important;transform:none!important}
.work-grid.index .title-card-echo,.work-grid.index .thumb-publication-set .thumb-pane:after{display:none}
.work-grid.index .art-title-sequence .title-card-face{inset:0;opacity:1}
@media(prefers-reduced-motion:reduce){.thumb-source,.art-title-sequence *{animation:none!important;transform:none!important;filter:none!important}.title-card-face{opacity:1}.title-card-echo,.thumb-publication-set .thumb-pane:after{display:none}}
@media print{.title-card-face{opacity:1;transform:none!important}.title-card-echo,.thumb-publication-set .thumb-pane:after{display:none}}
