@font-face{font-family:Menu;src:url('assets/menu.ttf') format('truetype');font-weight:200 700;font-display:swap}
:root{color-scheme:dark;--cursor:url('assets/cursor.svg') 3 2,default}*{box-sizing:border-box;cursor:var(--cursor)}body{margin:0;background:#000;color:#ddd;font-family:Menu,'Arial Narrow',sans-serif;overflow:hidden}button,a{font:inherit;color:inherit}button{background:none;border:0;padding:0}a{text-decoration:none}#world{height:100svh;min-height:480px;position:relative;isolation:isolate;overflow:hidden}.scene{position:absolute;width:56%;height:72%;left:9%;top:10%;object-fit:contain;pointer-events:none;z-index:-3}#smoke{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:-1}nav{position:absolute;right:6%;top:70%;display:flex;flex-direction:column;align-items:flex-end;gap:4px}nav a,nav button{font-size:clamp(16px,1.52vw,27px);font-weight:300;line-height:1.1;color:#828282;position:relative;transition:color .14s;outline:none}nav .selected,nav a:hover,nav button:hover,nav :focus-visible{color:#fff}nav .selected{transform:scale(1.13);transform-origin:right}footer{position:absolute;bottom:4%;left:3%;right:6%;display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.brand{line-height:.85;text-align:center;opacity:.67}.brand span{display:block;font-size:clamp(17px,1.8vw,30px);font-weight:600;letter-spacing:.035em}.brand strong{display:block;font-size:clamp(13px,1.4vw,24px);font-weight:500;letter-spacing:.045em}.brand small{display:block;font-size:10px;letter-spacing:.15em;margin-top:9px}#copy{font-size:13px;color:#858585;max-width:50vw;word-break:break-all}#copy[hidden]{display:none}#music-toggle{font-size:13px;color:#777;letter-spacing:.04em}#music-toggle span{margin-left:5px;color:#aaa}dialog{background:#070707f5;color:#ddd;border:0;padding:45px;width:360px;box-shadow:0 0 90px #000}dialog::backdrop{background:#000b}dialog h2{font-size:29px;font-weight:300;letter-spacing:.08em;margin:0 0 28px}dialog button:not(.close){display:flex;justify-content:space-between;width:100%;margin:22px 0;font-size:21px;font-weight:300}dialog button span{color:#aaa}.close{position:absolute;right:15px;top:10px;font-size:28px}.volume{display:flex;align-items:center;justify-content:space-between;font-size:20px;font-weight:300}.volume input{width:110px;accent-color:#999}#notice{position:fixed;bottom:12%;left:50%;transform:translateX(-50%);font-size:20px;color:#ddd;background:#000c;padding:12px 20px;opacity:0;transition:opacity .2s;pointer-events:none}#notice.show{opacity:1}button:focus-visible{outline:1px solid #aaa;outline-offset:6px}nav button:focus-visible{outline:none}@media(max-width:700px){.scene{width:83%;left:0;top:13%;height:53%}nav{top:65%;right:8%}nav a,nav button{font-size:22px}footer{bottom:3%}.brand span{font-size:23px}.brand strong{font-size:18px}#copy{position:absolute;bottom:65px;left:0;max-width:88vw;font-size:12px}}

/* Gentle idle levitation; the original image and its composition stay intact. */
.scene{animation:carriage-hover 6.5s ease-in-out infinite;transform-origin:50% 55%;will-change:transform}
@keyframes carriage-hover{0%,100%{transform:translateY(5px) rotate(-.2deg)}50%{transform:translateY(-8px) rotate(.2deg)}}
.atmosphere-paused .scene{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.scene{animation:none;will-change:auto}}
