/* Spooky v1: new local iteration. Original approved CSS remains separate. */
[hidden]{display:none!important}:root{--focus:#ffdb94}body{padding-bottom:86px}.site-header nav{gap:25px}.world-intro{top:3.5vh}.world-intro h1{font-size:59px}.world-intro>p:last-child{font-size:17px;line-height:1.4}.mobile-break{display:none}.panorama{height:calc(100svh - 255px);min-height:485px}.scene{width:max(100%,calc((100svh - 255px)*2));min-width:100%}.cabin{top:49%;left:16%}.correspondence{top:52%;left:86%}.wood-sign{position:absolute;left:56%;bottom:18%;width:clamp(84px,7.4vw,112px);transform:translateX(-50%);display:block;filter:drop-shadow(4px 7px 4px #030605b3);z-index:2}.outline-art{display:block;width:100%;height:100%;overflow:visible}.wood-sign .outline-art{aspect-ratio:443/956}.wood-label{position:absolute;left:53%;top:48%;transform:rotate(6deg);font:clamp(8px,.63vw,10px) Fell,Georgia,serif;color:#f8e4bb;text-shadow:0 1px 2px #000;white-space:nowrap;letter-spacing:.03em}.wood-sign:hover{filter:drop-shadow(2px 5px 5px #ffe2a33d)}.wood-sign:focus-visible{outline:2px solid var(--focus);outline-offset:5px}.scene:after{background:linear-gradient(#07101416,transparent 55%,#0c111237)}.explore-bar{font-size:11px}.plain-routes{gap:25px}.review-footer{min-height:46px;padding:16px 4vw;display:flex;gap:16px;align-items:center;font-size:10px;letter-spacing:.03em;color:#8f9997;border-top:1px solid #ffffff0b;background:#0b1011}.review-footer>span:last-child{opacity:.7}.review-audio-note{display:block;font:11px/1.6 Arial,sans-serif;margin-top:10px;color:#abb4b3}.spooky-widget{position:fixed;right:22px;bottom:16px;z-index:15;display:flex;align-items:center;gap:6px;padding:5px 15px 5px 6px;min-height:64px;min-width:165px;background:#111b1ce8;border:1px solid #83938b60;border-radius:50px;box-shadow:0 7px 30px #0004;text-align:left}.spooky-widget img{width:57px;height:57px;object-fit:cover;object-position:50% 15%;border-radius:50%;background:#25312c;transform:rotate(-5deg)}.spooky-widget strong{font:17px Fell,Georgia,serif;display:block;color:#e8dbc0}.spooky-widget .hunt-count{display:block;font:10px/1.6 Arial,sans-serif;letter-spacing:.04em;color:#b6c5c0;margin-top:3px}.spooky-widget:hover{border-color:#e5c88c}.spooky-widget.complete{border-color:#d3b06b}.has-player .spooky-widget{bottom:97px}.has-player .hunt-toast{bottom:174px}.hunt-toast{position:fixed;right:22px;bottom:92px;z-index:19;max-width:310px;padding:14px 18px;background:#e4d7ba;color:#203132;font:15px/1.4 Fell,Georgia,serif;border:1px solid #a3926a;box-shadow:0 6px 20px #0005;opacity:0;transform:translateY(6px);transition:opacity .18s,transform .18s;pointer-events:none}.hunt-toast.visible{opacity:1;transform:none}.hunt-toast:empty{display:none}
/* Invisible 48px targets, honest focus outlines; the artwork itself stays quiet. */
.hidden-raven{position:absolute;display:grid;place-items:center;width:48px;height:48px;min-width:48px;min-height:48px;margin:0;padding:0;background:none;border:0;z-index:3;transform:translate(-50%,-50%);border-radius:50%;touch-action:manipulation}.hidden-raven>img{display:block;width:35px;height:41px;object-fit:contain;pointer-events:none;filter:brightness(.61) saturate(.68)}.hidden-raven .outline-art{pointer-events:none}.raven-shore{left:56.7%;top:46.3%}.raven-shore .outline-art{width:14px;height:31px;opacity:.91;filter:drop-shadow(1px 2px 1px #18303c)}.raven-stars{left:70.2%;top:15.5%;width:58px;height:124px;border-radius:0}.raven-stars .outline-art{width:58px;height:124px;opacity:.76}.raven-eaves{left:31%;top:28%}.raven-eaves>img{width:31px;height:35px;filter:brightness(.5) saturate(.65)}.raven-ferns{left:7%;top:76%}.raven-ferns>img{width:37px;height:43px;filter:brightness(.47) saturate(.65)}.raven-edge{left:97.2%;top:68%;overflow:hidden;border-radius:0}.raven-edge>img{width:55px;height:64px;max-width:none;position:absolute;left:20px;bottom:-14px;filter:brightness(.65) saturate(.65)}.raven-woods{left:19%;top:75%;width:58px;height:60px}.raven-woods>img{width:43px;height:55px;filter:brightness(.58) saturate(.7)}.hidden-raven:focus-visible{outline:2px solid var(--focus);outline-offset:4px;background:#e6c98b12}.hidden-raven:hover{background:#c4d3c909}.found-tick{display:none;position:absolute;right:0;top:0;width:16px;height:16px;place-items:center;background:#233732;border:1px solid #cdbd8c;border-radius:50%;font:10px Arial,sans-serif;color:#eee4c6}.hidden-raven.found .found-tick{display:grid}.raven-tooltip{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%);padding:7px 9px;background:#101a1ef5;border:1px solid #bba46a88;font-size:10px;white-space:nowrap;opacity:0;pointer-events:none}.hidden-raven:focus-visible .raven-tooltip{opacity:1}
/* Journal: an optional, accessible route through the same finds. */
#hunt-dialog{width:min(540px,calc(100vw - 28px));max-height:calc(100svh - 36px);padding:30px 33px 28px;border:1px solid #7d8e7d;border-radius:6px;background:#111d1c;color:#e5e6d7;box-shadow:0 25px 90px #000b;overflow:auto}#hunt-dialog::backdrop{background:#030c11c7;backdrop-filter:blur(4px)}.dialog-close{position:absolute;top:10px;right:10px;background:none;border:0;color:#c0cbbf;font-size:28px;width:44px;height:44px}.journal-title{display:flex;align-items:center;gap:17px;margin:7px 0 20px}.journal-title img{width:97px;height:104px;object-fit:contain;flex-shrink:0}.journal-title .eyebrow{font-size:8px;letter-spacing:.13em;margin-bottom:10px;color:#becea8}.journal-title h2{font:35px/1.03 Fell,Georgia,serif;font-weight:400;letter-spacing:-.025em}.journal-intro{font:14px/1.65 Arial,sans-serif;color:#bcc7bd}.hunt-progress{margin:15px 0 2px;font:17px Fell,Georgia,serif;color:#eed8a4}.text-button{background:none;border:0;border-bottom:1px solid #9dad9066;padding:12px 0;color:#d7c597;text-align:left;font-size:12px;min-height:44px}.hint-toggle{font-size:11px}.hunt-list{list-style:none;padding:0;margin:14px 0 19px}.hunt-list li{display:flex;gap:10px;align-items:flex-start;padding:12px 0;border-bottom:1px solid #b8c8ac1d}.journal-check{color:#7b9587;width:17px;flex:0 0 17px;font-size:15px}.hunt-list strong{font:16px Fell,Georgia,serif;font-weight:400}.find-state{font-size:9px;color:#7f9385;margin-left:auto;white-space:nowrap;line-height:20px}.is-found .journal-check,.is-found .find-state{color:#d5c58a}.hint-copy{font-size:11px;line-height:1.6;color:#9fae9f;margin-top:6px}.hint-copy a{display:inline-flex;align-items:center;min-height:44px;color:#e2c68e;text-decoration:underline;text-underline-offset:4px}.reward-link{width:100%;font-size:12px}.storage-note{font:10px/1.6 Arial,sans-serif;margin:16px 0 4px;color:#8b9e94}.reset-link{font-size:10px;color:#9aaea5}.reset-confirm{margin-top:12px;padding:13px;background:#22352e}.reset-confirm p{font-size:12px;line-height:1.5;margin-bottom:8px}.small-button{border:1px solid #b49b6b;background:#d5bc8d;color:#1b2723;min-height:44px;padding:10px;font-size:11px;margin-right:14px}.reset-confirm .text-button{font-size:11px}.text-button:focus-visible,input:focus-visible{outline:2px solid var(--focus);outline-offset:3px}
/* Two distinct artist destinations: the present and an allusive past. */
.artist-room{padding-top:100px;padding-bottom:55px}.artist-room .room-content{max-width:650px}.artist-letter h1{font-size:60px}.artist-letter>p{font-size:14px!important;line-height:1.65!important}.artist-letter blockquote{font-size:25px;line-height:1.4;margin:25px 0 18px}.now-notes{display:grid;grid-template-columns:1fr 1.2fr;gap:24px;margin:27px 0;border-block:1px solid #d4c18f42;padding:19px 0}.now-notes>div>span{font:9px Arial,sans-serif;text-transform:uppercase;letter-spacing:.13em;color:#bfa66b;display:block;margin-bottom:10px}.now-notes a{color:#e5cd96;font:17px Fell,Georgia,serif}.now-notes small{display:block;font:10px Arial,sans-serif;margin-top:7px;color:#b3b8a5}.now-notes p{font:11px/1.7 Arial,sans-serif;color:#c3c5b7}.now-notes p a{font:11px Arial,sans-serif}.backstory-room{padding-top:110px;min-height:900px}.backstory-room .room-art{object-position:center center}.backstory-room:after{background:linear-gradient(90deg,#07101400 30%,#07101470 54%,#081112a8)}.backstory-letter{margin-left:48%;width:52%;max-width:610px}.backstory-letter h1{font-size:64px}.backstory-letter p:not(.eyebrow):not(.signature){font:18px/1.65 Fell,Georgia,serif!important;margin-bottom:20px;max-width:510px}.backstory-letter .opening-line{font-size:24px!important;color:#dbc9a4}.draft-note{font-size:8px;letter-spacing:.08em;text-transform:none;color:#8fa9a2}.backstory-letter .signature{color:#d1c096}.backstory-letter .text-link{color:#bccebd}
/* A local reward demonstration, with no data transmission path. */
.reward-room{padding:36px max(24px,6vw) 70px;background:radial-gradient(ellipse at 20% 25%,#24332b,#0d1719 65%);min-height:85vh}.reward-intro{text-align:center;position:relative;margin-bottom:38px}.reward-intro .back-link{position:absolute;left:0;top:0}.reward-intro>.eyebrow{padding-top:20px}.reward-intro h1{font-size:64px;margin:14px 0 6px}.reward-intro>p:last-child{font:18px Fell,Georgia,serif;color:#b8c6bb}.reward-lock{display:flex;align-items:center;justify-content:center;gap:50px;max-width:900px;margin:40px auto}.reward-lock>img{width:240px;height:280px;object-fit:contain}.reward-lock h2{font:35px/1.2 Fell,Georgia,serif;margin-bottom:15px}.reward-lock p{font:14px/1.7 Arial,sans-serif;color:#acbcb2;max-width:360px;margin:15px 0 23px}.reward-grid{display:grid;grid-template-columns:1fr 1fr;gap:7vw;max-width:1050px;margin:auto}.sticker-concept{text-align:center;padding:16px 10px}.review-label{font:9px Arial,sans-serif;color:#99b2a2;letter-spacing:.12em;text-transform:uppercase}.sticker-art{max-width:280px;margin:25px auto;background:#c9c4a8;border:1px solid #e7ddba;border-radius:6px;transform:rotate(-5deg);padding:25px 30px;box-shadow:0 15px 50px #0005}.sticker-art img{width:100%;height:auto;filter:drop-shadow(2px 0 0 #f1e8d4) drop-shadow(-2px 0 0 #f1e8d4) drop-shadow(0 2px 0 #f1e8d4) drop-shadow(0 -2px 0 #f1e8d4)}.sticker-concept .eyebrow{margin-top:40px;font-size:9px}.sticker-concept h2{font:40px Fell,Georgia,serif;margin:14px 0}.sticker-concept>p:not(.eyebrow){font:16px/1.6 Fell,Georgia,serif;color:#bdc8b8}.sticker-concept .reward-caveat{font:11px/1.7 Arial,sans-serif!important;color:#8eab9c!important;margin:28px auto 0;max-width:320px}.claim-card{border:1px solid #84947b54;padding:29px 30px;background:#1b2926;align-self:start;box-shadow:0 10px 40px #0003}.claim-card h2{font:34px Fell,Georgia,serif;margin:12px 0}.claim-card>p:not(.eyebrow){font:12px/1.7 Arial,sans-serif;color:#b3c0af;margin-bottom:23px}.claim-card form>label,.form-pair>label{display:block;font-size:11px;color:#c3ceb9;margin-bottom:15px}.claim-card label>span{color:#93a48e;font-size:10px}.claim-card input:not([type=checkbox]){width:100%;display:block;border:1px solid #8f9d7b66;border-radius:0;background:#0e1c1a;color:#eee6d0;padding:12px;font:13px Arial,sans-serif;margin-top:7px;min-height:44px}.claim-card input::placeholder{color:#6c847b}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.claim-card .marketing-choice{display:flex;align-items:flex-start;gap:12px;border-top:1px solid #81927b44;padding-top:15px;margin:4px 0 21px}.marketing-choice input{width:20px;height:20px;flex:0 0 20px;margin:3px 0;accent-color:#d2bf86}.marketing-choice span{font-size:11px!important;line-height:1.6}.marketing-choice small{display:block;font-size:10px;margin-top:5px;color:#92a48f}.claim-card .primary{width:100%;font-size:12px}.demo-fine{text-align:center;font-size:9px;letter-spacing:.03em;color:#8d9e8a;margin-top:11px}.claim-result{padding:25px 0}.claim-result h3{font:30px Fell,Georgia,serif}.claim-result p{font:13px/1.8 Arial,sans-serif;margin:16px 0;color:#bacdbd}
@media(min-width:1700px){.scene{width:100%}.wood-sign{width:105px}.world-intro{top:5vh}}
@media(max-width:900px){.site-header nav{gap:18px}.brand{max-width:255px}.backstory-letter{max-width:550px}.reward-grid{gap:30px}.claim-card{padding:23px}.reward-intro .back-link{position:static;margin-bottom:24px}.reward-intro>.eyebrow{padding-top:0}}
@media(max-width:700px){body{padding-bottom:88px}.site-header{height:110px;padding-bottom:4px;gap:10px}.site-header nav{gap:19px;font-size:11px}.brand{width:240px}.site-header nav a{min-height:44px;padding:12px 0}.world-intro{top:20px;width:340px}.world-intro h1{font-size:43px}.world-intro>p:last-child{font-size:15px}.mobile-break{display:block}.panorama{height:calc(100svh - 320px);min-height:470px}.scene{width:calc(max(470px,100svh - 320px)*2)}.wood-sign{left:56%;width:88px;bottom:18%}.wood-label{font-size:8px}.cabin{left:17%;top:47%}.correspondence{left:86%;top:49%}.hotspot-label{font-size:17px}.raven-shore{top:46.3%}.raven-stars{width:49px;height:104px;top:16%}.raven-stars .outline-art{width:49px;height:104px}.raven-eaves{left:31%}.raven-ferns{left:6.5%}.raven-edge{left:96.8%}.hidden-raven .raven-tooltip{font-size:9px}.explore-bar{min-height:70px;height:auto;padding:10px 15px;gap:11px}.explore-bar p{max-width:none;font-size:10px;line-height:1.7}.plain-routes{gap:18px;padding:8px 10px;min-height:78px}.plain-routes a{min-height:44px;display:inline-flex;align-items:center;font-size:11px}.plain-routes>span{width:100%;margin-bottom:-8px}.review-footer{font-size:9px;min-height:48px;display:block;padding:16px 18px}.review-footer span{display:block;margin-bottom:5px}.spooky-widget{right:14px;bottom:12px;min-width:155px;min-height:60px;padding:3px 13px 3px 5px}.spooky-widget img{width:52px;height:52px}.spooky-widget strong{font-size:16px}.spooky-widget .hunt-count{font-size:9px}.hunt-toast{bottom:84px;right:14px;left:14px;max-width:none;font-size:15px}.has-player .spooky-widget{bottom:137px}.has-player .hunt-toast{bottom:209px}body.has-player{padding-bottom:213px}#hunt-dialog{padding:27px 21px 23px;max-height:calc(100svh - 24px)}.journal-title{gap:12px}.journal-title img{width:77px;height:90px}.journal-title h2{font-size:31px}.journal-title .eyebrow{font-size:7px}.journal-intro{font-size:12px}.hunt-list strong{font-size:15px}.hint-copy{font-size:10px}.find-state{font-size:8px}.artist-room{padding-top:300px;padding-bottom:38px}.artist-room .room-art{object-position:25% center}.artist-room .room-content{width:100%;max-width:none}.artist-letter h1{font-size:45px}.artist-letter blockquote{font-size:24px}.now-notes{gap:16px;margin:23px 0}.now-notes p{font-size:10px}.now-notes a{font-size:16px}.artist-letter .artist-statement{font-size:13px!important}.backstory-room{padding:355px 23px 40px;min-height:0}.backstory-room .room-art{height:450px;object-position:28% center}.backstory-room:after{height:470px;background:linear-gradient(transparent 240px,#0d1315 440px)}.backstory-letter{margin:0;width:100%;max-width:none}.backstory-letter h1{font-size:46px}.backstory-letter p:not(.eyebrow):not(.signature){font-size:18px!important;line-height:1.65!important}.backstory-letter .opening-line{font-size:23px!important}.raven-woods{left:22%;top:293px}.reward-room{padding:26px 20px 40px}.reward-intro{margin-bottom:26px}.reward-intro .back-link{margin-bottom:27px}.reward-intro h1{font-size:48px;margin:12px 0}.reward-intro>p:last-child{font-size:17px}.reward-lock{display:block;text-align:center;margin:10px auto}.reward-lock>img{width:180px;height:200px}.reward-lock h2{font-size:30px}.reward-lock p{font-size:13px;margin:15px auto 24px}.reward-grid{grid-template-columns:1fr;gap:35px}.sticker-concept{padding-top:0}.sticker-art{width:210px;margin:24px auto}.sticker-concept h2{font-size:37px}.sticker-concept .eyebrow{margin-top:31px}.claim-card{padding:23px 20px}.form-pair{gap:10px}.claim-card input:not([type=checkbox]){font-size:16px;padding:11px 10px}.claim-card .marketing-choice{min-height:44px}.room-breadcrumb>span{max-width:135px}.backstory-room .room-breadcrumb>span{max-width:140px}}
@media(prefers-reduced-motion:reduce){.hunt-toast{transition:none}.hidden-raven,.wood-sign{animation:none}}

/* Close portrait keeps Spooky’s wink legible in the small hunt counter. */
.spooky-face{display:block;position:relative;flex:0 0 57px;width:57px;height:57px;overflow:hidden;border-radius:50%;background:#27372f}.spooky-widget .spooky-face img{position:absolute;width:260%;height:260%;max-width:none;left:-48%;top:0;object-fit:contain;transform:none;border-radius:0;background:none}
@media(max-width:700px){.spooky-face{flex-basis:52px;width:52px;height:52px}}
/* Optional lantern: locally reveals material detail; never darkens the rest. */
.lantern-toggle{display:inline-flex;gap:10px;align-items:center;justify-content:center;min-height:44px;padding:8px 13px;border:1px solid #9b895e77;background:#17221f;color:#dfcc9e;font-size:11px;white-space:nowrap}.lantern-toggle svg{width:17px;height:23px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}.lantern-toggle[aria-pressed=true]{color:#f7d89c;background:#433724;border-color:#b89558}.lantern-help{padding:9px 20px;text-align:center;font:10px/1.6 Arial,sans-serif;background:#11191b;color:#afbcaf;border-top:1px solid #b3915a11}.lantern-light{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:0;mask-image:radial-gradient(circle 195px at var(--lantern-x,50%) var(--lantern-y,65%),#000 0%,#000c 20%,transparent 100%);-webkit-mask-image:radial-gradient(circle 195px at var(--lantern-x,50%) var(--lantern-y,65%),#000 0%,#000c 20%,transparent 100%)}.lantern-light img{width:100%;height:100%;object-fit:cover;filter:brightness(1.27) saturate(.92)}.lantern-light:after{content:"";position:absolute;inset:0;background:radial-gradient(circle 185px at var(--lantern-x,50%) var(--lantern-y,65%),#f1c77c23,transparent 95%);pointer-events:none}.lantern-on .lantern-light{opacity:1}.hotspot{z-index:2}
@media(max-width:700px){.explore-bar{flex-wrap:wrap;padding-bottom:10px;min-height:120px}.explore-bar p{flex:1;max-width:245px}.lantern-toggle{min-width:184px;margin:auto}.lantern-help{font-size:10px;padding:9px 24px}.lantern-light{mask-image:radial-gradient(circle 145px at var(--lantern-x,50%) var(--lantern-y,65%),#000,transparent 100%);-webkit-mask-image:radial-gradient(circle 145px at var(--lantern-x,50%) var(--lantern-y,65%),#000,transparent 100%)}}
html:not(.js) .lantern-toggle,html:not(.js) .lantern-help{display:none}

/* The small fixed mask moves as compositor layers; no trailing or per-move filters. */
.scene{--lantern-radius:195px}.lantern-light{inset:auto;left:0;top:0;width:calc(var(--lantern-radius)*2);height:calc(var(--lantern-radius)*2);overflow:hidden;transform:translate3d(calc(var(--lantern-x) - var(--lantern-radius)),calc(var(--lantern-y) - var(--lantern-radius)),0);mask-image:radial-gradient(circle closest-side,#000 0%,#000c 20%,transparent 100%);-webkit-mask-image:radial-gradient(circle closest-side,#000 0%,#000c 20%,transparent 100%)}.lantern-light img{position:absolute;left:0;top:0;width:var(--scene-width);height:var(--scene-height);max-width:none;transform:translate3d(calc(var(--lantern-radius) - var(--lantern-x)),calc(var(--lantern-radius) - var(--lantern-y)),0)}.lantern-light:after{background:radial-gradient(circle closest-side,#f1c77c23,transparent 95%)}.lantern-on .lantern-light,.lantern-on .lantern-light img{will-change:transform}
@media(max-width:700px){.scene{--lantern-radius:145px}}
@media(max-width:700px){.explore-bar{display:grid;grid-template-columns:94px 1fr;gap:8px 14px;padding:10px 15px;min-height:122px}.explore-bar .pan-buttons{grid-column:1;grid-row:1}.explore-bar p{grid-column:2;grid-row:1;max-width:none;margin:0;line-height:1.6}.explore-bar .lantern-toggle{grid-column:1/-1;grid-row:2;justify-self:center;margin:0}.can-pan .correspondence{min-width:225px}.correspondence .hotspot-label{white-space:nowrap}.correspondence .hotspot-label{font-size:17px}}
@media(hover:hover) and (pointer:fine){.scene.lantern-on,.scene.lantern-on a,.scene.lantern-on button{cursor:url('/assets/lantern-cursor.png') 16 2,crosshair}}
@media(max-width:700px){.spooky-widget{min-width:0;min-height:52px;padding:3px 9px 3px 4px;gap:5px}.spooky-widget strong{display:none}.spooky-widget .spooky-face{width:44px;height:44px;flex-basis:44px}.spooky-widget .hunt-count{font-size:9px;margin-top:0}.hunt-toast{bottom:77px}}
.lantern-toggle>img{width:18px;height:27px;object-fit:contain}
html:not(.js) .spooky-widget,html:not(.js) .hidden-raven,html:not(.js) [data-open-hunt]{display:none}
