/* Full-screen cylindrical panorama; navigation and titles are fixed overlays. */
.home-page{overflow:hidden;overscroll-behavior:none;background:#030303}.home-page .music-world{height:100svh;min-height:0;overflow:hidden;padding:0;position:relative;background:#030303}
.home-page .site-header{position:fixed;z-index:12;pointer-events:none;background:none;padding-top:25px}.home-page .site-header a,.home-page .site-header button{pointer-events:auto}.home-page .brand img{width:70px;height:70px}.home-page .header-listen{font-size:11px;letter-spacing:.06em;text-shadow:0 1px 15px #000}
.home-page .site-dock{position:fixed;z-index:12;pointer-events:none;background:none;bottom:28px;padding:0 4vw}.home-page .site-dock a,.home-page .site-dock button{pointer-events:auto}.home-page .dock-links{letter-spacing:.12em;font-size:12px;text-shadow:0 2px 15px #000,0 0 30px #000}.home-page .sound-toggle{font-size:11px;text-shadow:0 1px 15px #000}
.space-viewport{position:absolute;inset:0;overflow:hidden;overflow:clip;touch-action:pinch-zoom;outline-offset:-5px;isolation:isolate;cursor:default}
.space-camera{position:absolute;left:50%;top:50%;width:0;height:0;z-index:1}
.space-item{position:absolute;left:0;top:0;width:220px;transform-origin:0 0;pointer-events:none;will-change:transform}
.space-card{width:100%;pointer-events:auto;transform:translate(-50%,-50%);transition:filter .25s;filter:brightness(.85)}
.space-image{display:block;position:relative;box-shadow:0 18px 40px #0009;outline-offset:4px;transition:box-shadow .3s}
.space-image img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;pointer-events:none;user-select:none;-webkit-user-drag:none;border:1px solid #ffffff10}
.space-image::before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(var(--fog-angle,90deg),#03030388,#020202df 60%,#000);opacity:var(--depth-fog,0);pointer-events:none}
.space-image::after{content:'';position:absolute;inset:0;z-index:2;border:1px solid transparent;background:linear-gradient(130deg,#ffffff08,transparent 45%);pointer-events:none;transition:border-color .3s,background-color .3s}
.space-item.is-active .space-image{box-shadow:0 24px 65px #000e}.space-item.is-active .space-image::after{border-color:#d6be8760}.space-viewport.has-selection .space-item:not(.is-active) .space-image::after{background-color:#0005}
.space-card-caption{position:absolute;bottom:0;left:0;right:0;z-index:3;display:flex;align-items:center;gap:6px;padding:5px 8px;background:linear-gradient(transparent,#000e);opacity:0;pointer-events:none;transition:opacity .2s}
.space-card-caption .release-number,.space-poet{display:none}.space-card-caption h2{font-size:14px;line-height:1.2;letter-spacing:0;font-weight:500;flex:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.space-card-caption .small-play{width:40px;height:40px;flex:none;margin:0}.space-item.is-active .space-card-caption{opacity:1;pointer-events:auto}
.space-vignette{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(#0008,transparent 23%,transparent 72%,#000b),radial-gradient(ellipse at center,#0002,transparent 46%,#0003 100%)}
.home-page .world-toolbar{position:absolute;left:4vw;right:auto;top:auto;bottom:82px;width:auto;margin:0;z-index:8;pointer-events:none}.world-toolbar p{color:#aaa79f;font-size:10px;letter-spacing:.1em;text-shadow:0 1px 12px #000}
.space-hud{position:absolute;left:50%;top:49%;transform:translate(-50%,-50%);width:min(900px,82vw);text-align:center;z-index:10;pointer-events:none}
.space-index{display:inline-flex;flex-direction:column;align-items:center;gap:6px;pointer-events:auto;min-height:65px;justify-content:center;font-size:13px;text-transform:uppercase;letter-spacing:.32em;text-shadow:0 2px 15px #000,0 0 40px #000;color:#d6d5ce}.space-index>span[aria-hidden]{font-size:27px;font-weight:400;line-height:1;color:#959c9a}.space-index:hover{color:var(--gold)}.space-hud.is-selected .space-index{visibility:hidden;pointer-events:none}
.space-selection{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);opacity:0;transition:opacity .2s}.space-hud.is-selected .space-selection{opacity:1}.space-selection h2{font-size:clamp(25px,4vw,58px);font-weight:400;letter-spacing:.08em;line-height:1.16;text-transform:uppercase;text-shadow:0 2px 20px #000,0 0 60px #000}.space-selection p{font-size:13px;letter-spacing:.04em;color:#ddd3bd;margin-top:15px;text-shadow:0 1px 15px #000}
.space-controls{position:absolute;right:4vw;bottom:79px;z-index:11}.space-controls button{height:32px;padding:0;font-size:11px;color:#aaa79f;letter-spacing:.03em;text-shadow:0 1px 12px #000}.space-controls button:hover{color:var(--gold)}.space-controls button:disabled{opacity:.6;cursor:default}
.space-instructions{position:absolute;left:4vw;bottom:62px;font-size:11px;color:#999a95;letter-spacing:.03em;z-index:8;pointer-events:none;text-shadow:0 1px 12px #000}.space-instructions .touch-instruction,.space-key-help{display:none}.space-viewport:focus-visible~.space-instructions .space-key-help{display:inline}.space-viewport.is-dragging,.space-viewport.is-dragging *{cursor:grabbing!important;user-select:none}
.space-initializing .space-viewport{visibility:hidden}
/* Complete reading grid if the panorama cannot initialize or scripts are disabled. */
.home-page:not(.space-ready):not(.space-initializing){overflow:auto}.home-page:not(.space-ready):not(.space-initializing) .music-world{height:auto;min-height:100svh;padding:150px 5vw}.home-page:not(.space-ready):not(.space-initializing) .space-viewport{position:relative;inset:auto;overflow:visible;touch-action:auto;cursor:auto}.home-page:not(.space-ready):not(.space-initializing) .space-camera{position:relative;inset:auto;width:auto;height:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 30px}.home-page:not(.space-ready):not(.space-initializing) .space-item{position:relative;inset:auto;width:auto;transform:none!important}.home-page:not(.space-ready):not(.space-initializing) .space-card{transform:none!important;filter:none}.home-page:not(.space-ready):not(.space-initializing) .space-card-caption{position:relative;opacity:1;pointer-events:auto;background:none;padding:12px 0}.home-page:not(.space-ready):not(.space-initializing) .space-hud{top:110px}.home-page:not(.space-ready):not(.space-initializing) .space-index{flex-direction:row;font-size:12px;min-height:35px}.home-page:not(.space-ready):not(.space-initializing) .space-controls,.home-page:not(.space-ready):not(.space-initializing) .space-instructions,.home-page:not(.space-ready):not(.space-initializing) .space-vignette,.home-page:not(.space-ready):not(.space-initializing) .world-toolbar{display:none}
@media(max-width:700px){.home-page .site-header{padding-top:18px}.home-page .brand img{width:64px;height:64px}.space-hud{width:86vw;top:47%}.space-selection h2{font-size:clamp(23px,6vw,36px)}.space-selection p{font-size:12px}.space-index{font-size:12px;letter-spacing:.24em}.home-page .world-toolbar{left:5vw;bottom:97px}.space-controls{right:5vw;bottom:85px}.space-instructions{left:5vw;bottom:76px;font-size:10px}.space-instructions .mouse-instruction{display:none}.space-instructions .touch-instruction{display:inline}.space-card-caption h2{display:none}.space-card-caption{justify-content:flex-end;padding:0}.home-page .site-dock{bottom:24px}.home-page:not(.space-ready):not(.space-initializing) .space-camera{grid-template-columns:1fr;gap:30px}.home-page:not(.space-ready):not(.space-initializing) .space-card-caption h2{display:block}}
@media(max-height:540px){.home-page .site-header{padding-top:12px}.home-page .brand img{width:48px;height:48px}.home-page .site-dock{bottom:17px}.home-page .world-toolbar{bottom:68px}.space-controls{bottom:58px}.space-instructions{bottom:47px}}
@media(prefers-reduced-motion:reduce){.space-item,.space-card,.space-image,.space-selection,.space-card-caption{transition:none;will-change:auto!important}}
