/* Models: a drafting table. Real parts come apart on a pale sheet of paper. */
#stage{position:fixed;inset:0;width:100vw;height:100lvh;z-index:3;pointer-events:none}
#stage canvas{width:100%!important;height:100%!important;opacity:0;transition:opacity .6s linear}
#stage.is-ready canvas{opacity:1}
.world--draft{height:260svh}
.shots{position:relative;z-index:4;display:grid;background:var(--w-bg)}
.shots figure{margin:0}
.shots img{width:100%;height:100%;object-fit:cover;display:block}
.shots--2{grid-template-columns:1fr 1fr}
.shots--1 img{height:auto}
@media (max-width:760px){.shots--2{grid-template-columns:1fr}}
/* The page ends as home does: the way on, and the footer line, low on the plain wall. */
.coda{position:relative;z-index:4;min-height:100svh;pointer-events:none;display:flex;flex-direction:column;justify-content:flex-end;gap:clamp(4px,.8svh,10px);padding:0 var(--gut) clamp(26px,5svh,52px);color:var(--w-ink)}
.coda a{pointer-events:auto}
.coda__big{display:block;width:max-content;font-size:clamp(28px,3vw,52px);font-weight:400;line-height:1.1;letter-spacing:-.032em;transition:opacity .3s}
@media (hover:hover){.coda:hover .coda__big{opacity:.4}.coda .coda__big:hover{opacity:1}}
.coda__foot{display:flex;flex-wrap:wrap;gap:8px clamp(20px,3vw,44px);margin-top:clamp(32px,7svh,72px);color:var(--w-ink2);font-size:var(--cap)}
.coda__foot a{transition:color .3s}
.coda__foot a:hover{color:var(--w-ink)}
@media (pointer:coarse){.coda__big{padding:7px 0;margin:-7px 0}.coda__foot a{display:inline-block;padding:11px 0;margin:-11px 0}}
/* Without WebGL a model is its name on a short band over its photographs, not a blank screen. */
html.no-gl .world--draft{height:auto}
html.no-gl .world--draft .world__pin{position:relative;height:clamp(200px,34svh,320px)}
@media (pointer:coarse){.coda{gap:14px}} /* padded links stop overlapping */
