/* Content remains available even when observers are delayed or unavailable. */
.reveal{opacity:1;transform:none}

/* Live Storyforge Music showcase */
.music-ui{isolation:isolate;background:radial-gradient(circle at 54% 54%,#2f1605 0,transparent 37%),linear-gradient(135deg,#14110b,#050505 58%);color:var(--ink);display:flex;align-items:center;justify-content:center;padding:72px 48px}
.music-ui:after{background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(to bottom,#000,transparent);z-index:-1}
.music-ui>p{left:28px;top:22px;margin:0;letter-spacing:.13em;color:#9d927c;z-index:3}
.music-glow{position:absolute;width:65%;height:65%;left:18%;top:19%;border-radius:50%;background:rgba(227,164,39,.18);filter:blur(75px);z-index:-1}
.site-window{display:block;width:min(92%,780px);border:1px solid #38332a;border-radius:10px;overflow:hidden;background:#07070a;box-shadow:0 42px 95px rgba(0,0,0,.7),0 0 0 1px rgba(255,191,55,.08),0 0 65px rgba(255,145,0,.1);transform:perspective(1100px) rotateX(2deg) rotateY(-5deg) rotateZ(-1deg);transition:transform .45s ease,box-shadow .45s ease}
.site-window:hover{transform:perspective(1100px) rotateX(0) rotateY(0) rotateZ(0) scale(1.015);box-shadow:0 52px 110px rgba(0,0,0,.8),0 0 0 1px rgba(255,191,55,.18),0 0 85px rgba(255,145,0,.16)}
.browser-bar{height:36px;display:flex;align-items:center;gap:6px;padding:0 12px;background:#111116;border-bottom:1px solid #28262a}
.browser-bar i{width:7px;height:7px;border-radius:50%;background:#ff5f57}.browser-bar i:nth-child(2){background:#febc2e}.browser-bar i:nth-child(3){background:#28c840}
.browser-bar b{font:400 8px DM Mono;color:#777;letter-spacing:.04em;margin:auto}.browser-bar em{font:400 12px DM Mono;color:#d5a527}
.site-window img{display:block;width:100%;height:auto;aspect-ratio:1.44/1;object-fit:cover;object-position:top}
.build-stamp{position:absolute;right:25px;bottom:22px;text-align:right;font:500 8px/1.65 DM Mono;letter-spacing:.12em;color:#b3a88f}
.project-link{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #2e2e2e;margin-top:28px;padding-top:17px;font:500 9px DM Mono;text-transform:uppercase;letter-spacing:.08em}
.project-link b{color:#d5a527;font-size:15px}.project-link:hover span{color:#d5a527}
@media(max-width:700px){.music-ui{padding:70px 20px 58px}.site-window{width:100%;transform:none}.build-stamp{display:none}.browser-bar{height:30px}}
@media(prefers-reduced-motion:reduce){.site-window{transition:none}.site-window:hover{transform:none}}
