*{box-sizing:border-box}html{background:#15130f;color:#f5ecda;font-family:Georgia,'Times New Roman',serif}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit}button:focus-visible,a:focus-visible{outline:2px solid #dcc299;outline-offset:6px}.journey{height:210svh}.scene{height:100svh;width:100%;position:sticky;top:0;overflow:hidden;background:#15130f}.composition{position:absolute;width:var(--image-width,100vw);height:var(--image-height,56.25vw);left:var(--image-left,0px);top:var(--image-top,0px)}video,.end-frame{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}.end-frame{opacity:0}.arrived .end-frame,.fallback .end-frame{opacity:1}.sign{position:absolute;left:49.7%;top:34.1%;width:16.8%;height:40.4%;container-type:inline-size}.sign-light{position:absolute;inset:0;background-image:url('assets/for video/endimage.png');background-size:596.4% 253.7%;background-position:59.42% 56.69%;opacity:0}.sign-content{position:absolute;inset:6% 8%;padding:7% 3% 4%;color:#493624;text-align:center;display:flex;flex-direction:column;align-items:center;opacity:0}.sign h1{font-size:14cqw;font-weight:400;letter-spacing:-.04em;margin:6% 0 4%}.sign-rule{width:24%;border-top:1px solid #9d805d}.sign p{font-size:6.3cqw;line-height:1.5;margin:7% 0}.sign a{font-size:6cqw;text-decoration:none;display:flex;justify-content:space-between;width:100%;padding:6% 2%;border-bottom:1px solid #9b805c44}.sign a:hover{color:#090705;background:#9b805c18}.sign-footer{font:3.4cqw Arial,sans-serif;letter-spacing:.15em;margin-top:auto}.lit .sign-light,.lit .sign-content{opacity:1}.flickering .sign-light,.flickering .sign-content{animation:ignite .58s linear both}@keyframes ignite{0%,15%,31%,45%{opacity:0}8%,24%{opacity:.65}38%{opacity:.2}58%{opacity:.9}72%{opacity:.45}100%{opacity:1}}.vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#0005,transparent 25%,transparent 65%,#0009);opacity:var(--intro-opacity,1)}.invitation{position:absolute;left:5vw;bottom:11vh;opacity:var(--intro-opacity,1)}.invitation button{background:none;border:0;color:#efe3cf;cursor:pointer}.invitation button{padding:0;font:9px Arial,sans-serif;letter-spacing:.22em;display:flex;align-items:center;gap:28px}.invitation button span{font-size:22px}.loading{position:absolute;right:4vw;top:5vh;font:10px Arial,sans-serif;letter-spacing:.08em}.loading span{display:inline-block;width:5px;height:5px;border-radius:50%;background:#e4c89c;margin-left:10px;animation:breathe 1s infinite alternate}.ready .loading{display:none}@keyframes breathe{to{opacity:.2}}.progress{position:absolute;bottom:0;left:0;width:100%;height:2px;background:#ffffff0b}.progress span{display:block;height:100%;width:100%;background:#dcc29980;transform:scaleX(var(--progress,0));transform-origin:left}.past-intro .invitation{visibility:hidden}@media(max-width:600px){.invitation{left:6vw;bottom:calc(4svh + env(safe-area-inset-bottom))}.loading{top:5vh;right:6vw;font-size:8px}}@media(prefers-reduced-motion:reduce){.journey{height:100svh}.invitation,.progress{display:none}.flickering .sign-light,.flickering .sign-content{animation:none;opacity:1}}
/* Keep all directory text inside the illuminated glass. */
.sign-content{inset:8% 10%;padding:4% 0}.sign p{margin:5% 0}.sign a{padding:4.5% 2%}.sign-footer{padding-top:4%}
/* Directory rows: engraved icon, label, dotted leader. */
.sign-content{text-shadow:0 1px 0 #fff7}.sign-rule{margin-bottom:1%}
.sign a{align-items:center;gap:3.5cqw;border-bottom:0;padding:4.5% 1%}
.sign-icon{width:6.6cqw;height:6.6cqw;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;opacity:.85}
.sign-leader{flex:1;align-self:flex-end;margin-bottom:1.6cqw;border-bottom:1px dotted #9b805c;opacity:.7}
.sign a:hover,.sign a:focus-visible{background:none;color:#090705}
.sign a:is(:hover,:focus-visible) .sign-leader{border-bottom-style:solid;opacity:1}
.sign a:focus-visible{outline:1px solid #493624;outline-offset:1px}
.sign h1{margin-top:8%}

/* Reached the end before the video loaded: the still end frame stands in for it. */
.waiting .end-frame{opacity:1}.waiting .loading{display:none}
/* The wordmark replaces the typeset name; same ink, same pressed-in shadow. */
.sign h1.sign-logo{width:74%;margin:6% 0 3%;line-height:0}.sign-logo svg{display:block;width:100%;height:auto;filter:drop-shadow(0 1px 0 #fff7)}
