/* A full-width architectural world. All message and controls remain HTML. */
.aperture-hero{padding:0!important;overflow:clip;background:#191c1c!important;--ap-p:0;--entry-alpha:1;--arrival-alpha:0;--copy-shift:0px}
.aperture-viewport{position:relative;isolation:isolate;min-height:760px;height:100svh;max-height:1200px;overflow:clip;background:#191c1c}
.aperture-hero .foundry-stage{position:absolute;inset:0;width:100%;height:100%;min-height:0;aspect-ratio:auto;z-index:0;overflow:hidden}
.aperture-hero .foundry-poster img{object-fit:cover;display:block}
.aperture-shade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#191c1cf5 0%,#191c1ce0 18%,#191c1caa 32%,#191c1c00 56%)}
.aperture-content{position:relative;z-index:2;height:100%;display:flex;align-items:center;padding-top:105px;padding-bottom:110px;pointer-events:none}
.aperture-hero .aperture-copy{max-width:560px;width:47%;padding:0;opacity:var(--entry-alpha);transform:translateY(var(--copy-shift));pointer-events:auto;will-change:transform,opacity}
.aperture-copy h1{font-size:clamp(52px,5.8vw,88px);line-height:1.04;letter-spacing:-.06em;max-width:12ch}
.aperture-copy .eyebrow{font-size:9px;color:#d7cfc2;letter-spacing:.06em;margin-bottom:29px}
.aperture-copy>p{font-size:16px;max-width:32ch;line-height:1.7;margin-top:27px;color:#ddd5c9}
.aperture-copy .actions{gap:25px;margin-top:28px;flex-wrap:wrap}.aperture-copy .solid{font-size:13px;min-height:48px;padding:14px 28px}.aperture-copy .foundry-work-link{font-size:12px;min-height:48px;color:#eee5d6}
.aperture-arrival{position:absolute;left:0;max-width:410px;opacity:1;min-height:310px;pointer-events:auto}
.aperture-arrival h2{font-size:clamp(40px,4.6vw,69px);line-height:1.05;letter-spacing:-.055em;max-width:13ch;color:#f4eee2;font-weight:430}.aperture-arrival h2 span{color:#edaa84}
.aperture-arrival p{font-size:15px;line-height:1.8;margin-top:25px;color:#ddd5c9}.aperture-arrival .button{margin-top:29px;background:#edaa84;color:#25251f;min-height:48px;font-size:13px}
.aperture-controls{position:absolute;z-index:3;left:0;right:0;bottom:26px;display:flex;align-items:center;justify-content:space-between;gap:24px;pointer-events:none}
.aperture-chapters{display:flex;gap:28px;pointer-events:auto;max-width:600px;width:70%}.aperture-chapters[hidden]{display:none}
.aperture-chapters button{position:relative;flex:1;background:none;border:0;border-top:1px solid #858478;padding:13px 0;text-align:left;min-height:48px;font-size:11px;color:#d8d2c5;white-space:nowrap}
.aperture-chapters button:before{content:'';position:absolute;left:0;top:-1px;width:100%;height:2px;transform:scaleX(0);transform-origin:left;background:#efb38c;transition:transform 200ms}.aperture-chapters button[aria-pressed=true]{color:#ffd4b7}.aperture-chapters button[aria-pressed=true]:before{transform:scaleX(1)}
.aperture-hero #foundry-motion{display:inline-flex;align-items:center;justify-content:center;pointer-events:auto;width:46px;height:46px;border:1px solid #a2a194;border-radius:50%;color:#f6c5a4;background:#191c1ccc;padding:0;margin:0 0 0 auto;flex:none}.aperture-hero #foundry-motion[hidden]{display:none}.aperture-hero #foundry-motion:hover{background:#43443a;border-color:#f5c4a3}
.aperture-hero #foundry-motion svg{width:15px;height:15px;fill:currentColor}.aperture-hero #foundry-motion .motion-play{display:none}.aperture-hero #foundry-motion[aria-pressed=true] .motion-pause{display:none}.aperture-hero #foundry-motion[aria-pressed=true] .motion-play{display:block}
.aperture-hero[data-scroll-ready=true]{height:640svh}.aperture-hero[data-scroll-ready=true] .aperture-viewport{position:sticky;top:0;height:100svh;min-height:0;max-height:none}.aperture-hero [inert]{pointer-events:none}
@media(min-width:701px) and (max-height:700px){.aperture-content{padding-top:100px;padding-bottom:90px}.aperture-copy h1{font-size:clamp(42px,5vw,65px)}.aperture-copy .eyebrow{margin-bottom:20px;font-size:8px}.aperture-copy>p{font-size:14px;margin-top:18px}.aperture-copy .actions{margin-top:20px;gap:15px}.aperture-arrival h2{font-size:47px}}
@media(max-width:1000px) and (min-width:701px){.aperture-hero .aperture-copy{width:48%}.aperture-copy h1{font-size:clamp(45px,6.1vw,62px)}.aperture-copy .eyebrow{font-size:7px}.aperture-copy>p{font-size:14px}.aperture-arrival{max-width:310px}.aperture-arrival h2{font-size:47px}.aperture-arrival p{font-size:13px}}
@media(max-width:700px){
 .aperture-viewport{min-height:790px;max-height:none;height:100svh}.aperture-hero[data-scroll-ready=true]{height:521svh}
 .aperture-content{display:block;padding-top:112px;padding-bottom:0;pointer-events:none}.aperture-hero .aperture-copy{max-width:none;width:100%;padding:0}
 .aperture-copy .eyebrow{font-size:8px;margin-bottom:19px;letter-spacing:.02em}.aperture-copy h1{font-size:clamp(39px,10.5vw,65px);max-width:15ch;line-height:1.03}.aperture-copy>p{font-size:13px;max-width:36ch;margin-top:15px;line-height:1.65}
 .aperture-copy .actions{margin-top:17px;gap:23px}.aperture-copy .solid{min-height:44px;font-size:12px;padding:11px 24px}.aperture-copy .foundry-work-link{font-size:11px;min-height:44px}
 .aperture-arrival{top:116px;left:0;max-width:100%;width:100%}.aperture-arrival h2{font-size:clamp(35px,9.8vw,53px);max-width:18ch}.aperture-arrival p{font-size:12px;line-height:1.7;margin-top:15px}.aperture-arrival .button{font-size:12px;min-height:44px;margin-top:17px}
 .aperture-shade{background:linear-gradient(#191c1c 0%,#191c1cf5 22%,#191c1cd0 38%,#191c1c00 59%)}
 .aperture-controls{bottom:17px;gap:18px}.aperture-chapters{gap:13px;width:calc(100% - 60px)}.aperture-chapters button{font-size:9px;padding-block:12px;min-height:44px}.aperture-hero #foundry-motion{width:44px;height:44px}
}
/* Short phones release the reading plane, then hold only the art. */
@media(max-width:459px) and (max-height:740px){
 .aperture-hero[data-scroll-ready=true]{height:548svh}.aperture-hero[data-scroll-ready=true] .aperture-viewport{height:100%;position:relative;overflow:visible}
 .aperture-hero[data-scroll-ready=true] .foundry-stage{position:sticky;top:76px;height:calc(100svh - 76px);margin-bottom:calc(-100svh + 76px)}
 .aperture-hero[data-scroll-ready=true] .aperture-shade{display:none}
 .aperture-hero[data-scroll-ready=true] .aperture-content{position:absolute;top:0;left:0;right:0;bottom:0;height:100%;padding-top:103px;background:linear-gradient(#191c1c 0px,#191c1cee 275px,transparent 490px);pointer-events:none}
 .aperture-hero[data-scroll-ready=true] .aperture-arrival{display:none}
 .aperture-hero[data-scroll-ready=true] .aperture-controls{position:sticky;top:calc(100svh - 70px);margin-top:calc(100svh - 70px);bottom:auto}.aperture-copy h1{font-size:clamp(38px,10.5vw,52px)}
}
@media(min-width:460px) and (max-width:700px) and (max-height:650px){
 .aperture-hero[data-scroll-ready=true]{height:561svh}.aperture-content{display:flex;align-items:center;padding-block:95px 78px}.aperture-hero .aperture-copy{width:48%}.aperture-copy h1{font-size:34px}.aperture-copy .eyebrow{font-size:6px;margin-bottom:13px}.aperture-copy>p{font-size:11px;margin-top:13px}.aperture-copy .actions{gap:15px;margin-top:15px}.aperture-copy .solid{font-size:10px;padding-inline:17px}.aperture-copy .foundry-work-link{font-size:10px}
 .aperture-arrival{max-width:45%;top:auto}.aperture-arrival h2{font-size:34px}.aperture-shade{background:linear-gradient(90deg,#191c1cf5,#191c1cbb 38%,transparent 65%)}.aperture-controls{bottom:14px}
}
@media(prefers-reduced-motion:reduce){.aperture-hero[data-scroll-ready=true]{height:auto}.aperture-hero[data-scroll-ready=true] .aperture-viewport{position:relative;min-height:790px}.aperture-copy,.aperture-arrival{transform:none;will-change:auto}.aperture-chapters button:before{transition:none}}

@media(min-width:460px) and (max-width:599px) and (max-height:650px){.aperture-copy h1{font-size:29px}.aperture-copy .eyebrow{font-size:6px;line-height:1.5;max-width:27ch}.aperture-copy>p{font-size:10px;max-width:27ch}.aperture-copy .actions{gap:9px;flex-wrap:wrap}.aperture-copy .solid{padding-inline:14px}.aperture-arrival h2{font-size:29px}.aperture-arrival p{font-size:11px}.aperture-controls{gap:15px}.aperture-chapters{gap:12px}.aperture-chapters button{font-size:9px}}

@media(min-width:460px) and (max-width:700px) and (max-height:650px){.aperture-hero:not([data-scroll-ready=true]) .aperture-viewport{min-height:500px;height:100svh}.aperture-hero .foundry-poster img{object-position:65% 50%}}

/* The gallery continues beyond the threshold. Each exhibit has its own reading interval. */
.aperture-project{position:absolute;inset:0;opacity:var(--project-alpha,0);transform:translateY(calc(18px * (1 - var(--project-alpha,0))));will-change:transform,opacity}
.aperture-arrival{width:410px}.aperture-chapters{max-width:700px;gap:22px;width:80%}
@media(max-width:700px){.aperture-arrival{min-height:250px;width:100%}.aperture-chapters{width:calc(100% - 58px);gap:10px}.aperture-chapters button{font-size:8px;white-space:normal;line-height:1.4}.aperture-project p{max-width:35ch}}
@media(max-width:459px) and (max-height:740px){.aperture-hero[data-scroll-ready=true] .aperture-arrival{display:block;position:sticky;top:96px;margin-top:370px;min-height:210px;height:210px}.aperture-arrival h2{font-size:32px}.aperture-arrival p{font-size:11px;line-height:1.6}.aperture-arrival .button{margin-top:13px}.aperture-project{padding-bottom:15px;background:linear-gradient(#191c1cf5,#191c1cd9 78%,transparent)}}
@media(min-width:460px) and (max-width:700px) and (max-height:650px){.aperture-arrival{min-height:260px;max-width:44%}.aperture-arrival .button{font-size:10px;padding-inline:17px}}
@media(prefers-reduced-motion:reduce){.aperture-project{transform:none;will-change:auto}}

/* Finale: keep five useful shortcuts comfortably operable. */
.aperture-chapters{max-width:790px;gap:20px;width:85%}
@media(max-width:700px){.aperture-chapters{width:calc(100% - 56px);gap:8px}.aperture-chapters button{font-size:8px}}
@media(max-width:359px){.aperture-chapters{gap:6px}.aperture-chapters button{font-size:7px}}
