.ah-hero-art { position:absolute;right:8%;top:50%;width:37%;max-width:32rem;transform:translateY(-43%) rotate(-6deg); }
.ah-hero-art img { display:block;width:100%;height:auto;border-radius:.35rem;box-shadow:6px 6px 0 #1111110d; }
.ah-media { display:grid;gap:clamp(2rem,4vw,3.5rem); }
.ah-media img { display:block;width:100%;height:auto;min-width:0; }
.ah-desktop { border:1px solid var(--line);border-radius:.65rem; }
.ah-brand { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;align-items:center; }
.ah-brand > img { border-radius:.5rem; }
.ah-brand > div { display:grid;gap:1rem; }
.ah-mobile { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,3vw,2.5rem);align-items:start; }
@media(max-width:760px) { .arthouse-case .migration-hero { min-height:53rem;padding-bottom:28rem; }.ah-hero-art { top:auto;bottom:3rem;right:15%;width:70%;max-width:24rem;transform:rotate(-6deg); }.ah-brand { grid-template-columns:1fr 1fr; }.ah-brand > div { grid-column:1/-1;grid-template-columns:1fr 1fr;align-items:center; } }

/* Paper outside; a projected studio ident inside the cinema. */
.ah-mobile img { mix-blend-mode:multiply; }
.ah-hero-art.ah-cinema { width:43%;max-width:40rem;right:4%;transform:translateY(-40%) rotate(-5deg);perspective:900px; }
.ah-screen { position:relative;aspect-ratio:16/10;overflow:hidden;background:#111;border:10px solid #242027;border-radius:.45rem;box-shadow:0 10px 0 #1111110c,0 0 45px #1111110f;transform:rotateY(-7deg); }
.ah-screen-light { position:absolute;inset:0;background:radial-gradient(ellipse at center,#7540b045,transparent 70%);animation:ah-projector 8s ease-in-out infinite; }
.ah-cinema .ah-studio-logo { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:0;box-shadow:none;mix-blend-mode:screen;animation:ah-studio-ident 8s cubic-bezier(.2,.65,.3,1) infinite; }
.ah-screen-sheen { position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 10%,#ffffff08 50%,transparent 80%); }
.ah-seats { position:relative;display:flex;gap:2%;justify-content:center;align-items:end;padding-top:2.25rem; }
.ah-seats i { width:12%;aspect-ratio:1.3;background:#332a38;border-radius:45% 45% .2rem .2rem;box-shadow:inset 0 3px 0 #55425d; }
.ah-seats i:nth-child(even) { transform:translateY(.7rem); }
@keyframes ah-studio-ident { 0%,7% { opacity:0;transform:scale(.84);filter:blur(5px); } 30%,78% { opacity:1;transform:scale(1);filter:blur(0); } 94%,100% { opacity:0;transform:scale(1.025);filter:blur(1px); } }
@keyframes ah-projector { 0%,100% { opacity:.25; } 30%,80% { opacity:1; } }
@media(max-width:760px) { .ah-hero-art.ah-cinema { width:84%;right:8%;top:auto;bottom:5rem;transform:rotate(-5deg); }.ah-screen { border-width:7px; } }
@media(prefers-reduced-motion:reduce) { .ah-cinema * { animation:none !important; }.ah-cinema .ah-studio-logo { opacity:1;filter:none;transform:none; } }

/* A visible cone from the projector in the foreground to the screen. */
.ah-cinema { isolation:isolate; }
.ah-projector-beam { position:absolute;left:-5%;top:-3%;width:128%;height:auto;z-index:2;pointer-events:none;overflow:visible;animation:ah-projector-beam 8s ease-in-out infinite; }
.ah-seats { z-index:3; }
@keyframes ah-projector-beam { 0%,100% { opacity:.25; } 20%,80% { opacity:1; } }
@media(prefers-reduced-motion:reduce) { .ah-projector-beam { animation:none;opacity:.7; } }

/* Film leader countdown, using the shared electric spectrum. */
.ah-countdown { position:absolute;inset:0;width:100%;height:100%; }
.ah-count-number { opacity:0;animation:ah-count-digit 3.6s steps(1,end) infinite; }
.ah-count-two { animation-delay:-2.4s; }
.ah-count-one { animation-delay:-1.2s; }
.ah-countdown-sweep { transform:rotate(-90deg);transform-origin:300px 187.5px;animation:ah-count-sweep 1.2s linear infinite; }
@keyframes ah-count-digit { 0% { opacity:1; } 33.333%,100% { opacity:0; } }
@keyframes ah-count-sweep { from { stroke-dashoffset:100; } to { stroke-dashoffset:0; } }
@media(prefers-reduced-motion:reduce) { .ah-count-number { opacity:0; }.ah-count-three { opacity:1; }.ah-countdown-sweep { stroke-dashoffset:0; } }
