.tour-viewport{cursor:url('hand-cursor-red.svg?v=1') 8 4,grab!important}
.tour-viewport.dragging{cursor:url('hand-cursor-red.svg?v=1') 8 4,grabbing!important}
.tour-frame:hover,.info-card:hover{cursor:url('assets/magnifier-cursor.svg?v=2') 23 23,zoom-in!important}
.garage-wall-cables{position:fixed;z-index:3;top:2vh;left:0;width:100%;height:190px;transform:translateY(-48px);pointer-events:none;opacity:.7;filter:drop-shadow(0 2px 2px rgba(0,0,0,.55))}
.garage-wall-cables svg{display:block;width:100%;height:100%;overflow:visible}
.garage-wall-cables path{fill:none;stroke-linecap:round;stroke-linejoin:round}
.garage-wall-cables .cable-shadows path{stroke:#55544e;stroke-width:2}
.garage-wall-cables .cable-lines path{stroke:#f4f3ec;stroke-width:.9}
.garage-wall-cables .cable-clips rect{fill:#716d62;stroke:#292824;stroke-width:1}
.tour-story-wall{position:relative;z-index:1;flex:0 0 620px;width:620px;height:100%;display:grid;grid-template-columns:210px 1fr;gap:34px;align-items:center;padding:54px 56px;background:#f3f0e7;color:#171715;box-shadow:inset 0 0 0 1px #d0cbc0,inset 0 -22px 0 rgba(0,0,0,.08)}
.story-wall-photo{position:relative;align-self:start;margin-top:68px;padding:0;background:transparent;box-shadow:none;transform:none;mix-blend-mode:multiply}
.story-wall-photo img{display:block;width:100%;aspect-ratio:3/4;object-fit:contain;filter:grayscale(100%) contrast(1.18);mix-blend-mode:multiply}
.story-wall-photo:before,.story-wall-copy:before{content:"";position:absolute;z-index:3;top:-42px;left:50%;width:34px;height:7px;transform:translateX(-50%);border-radius:4px;background:#34322d;box-shadow:0 2px 0 #11100f}
.story-wall-photo:after,.story-wall-copy:after{content:"";position:absolute;z-index:2;top:-35px;left:50%;width:150px;height:105px;transform:translateX(-50%);background:linear-gradient(180deg,rgba(214,204,160,.22),transparent 82%);clip-path:polygon(44% 0,56% 0,100% 100%,0 100%);pointer-events:none}
.story-wall-photo{margin-top:68px;align-self:start;}
.story-wall-photo img{transform:translateY(-96px);}
.story-wall-photo:before{top:-92px;width:42px;height:20px;background:radial-gradient(circle at 50% 87%,#fff3c1 0 3px,transparent 4px),#11110f;border-radius:5px 5px 10px 10px;box-shadow:0 2px 0 #050504,0 0 12px 5px rgba(255,236,168,.55)}
.story-wall-photo:after{top:-69px;width:126px;height:230px;background:linear-gradient(180deg,rgba(255,231,142,.52),rgba(255,211,75,.2) 42%,transparent 88%);clip-path:polygon(43% 0,57% 0,100% 100%,0 100%);filter:blur(6px);opacity:.82}
.tour-story-wall .story-spotlight{position:absolute;top:30px;left:50%;z-index:4;}
.tour-story-wall .story-wall-photo:before,.tour-story-wall .story-wall-photo:after{display:none;}
.story-wall-copy{position:relative;align-self:start;margin-top:28px;max-width:285px}.story-kicker{display:block;color:#666159;font-size:7px;letter-spacing:.15em;line-height:1.4}.story-wall-copy h2{margin:12px 0 14px;color:#171715;font:500 30px/.92 'Playfair Display',serif;letter-spacing:-.05em}.story-wall-copy p{margin:0 0 11px;color:#4d4941;font-size:8px;line-height:1.6}.story-signature{display:block;margin-top:16px;color:#171715;font:500 8px/1 'DM Mono',monospace;letter-spacing:.16em}
@media(max-width:760px){.tour-story-wall{flex-basis:90vw;width:90vw;grid-template-columns:34% 1fr;gap:18px;padding:30px 20px}.story-wall-copy h2{font-size:25px}.story-wall-copy p{font-size:8px;line-height:1.5}.story-kicker{font-size:6px}.story-signature{font-size:8px}}
.garage-radio-widget,.garage-tv-widget{visibility:hidden;opacity:0;transition:opacity .35s ease,visibility .35s ease}
.garage-door-intro.is-open~.garage-tv-widget{visibility:visible;opacity:1}
body.worker-has-left .garage-door-intro.is-open~.garage-radio-widget{visibility:visible;opacity:1}
.garage-radio-widget{position:fixed;z-index:8;right:2.4vw;bottom:2.2vw;width:min(22vw,290px);min-width:185px;color:#f4f0df;pointer-events:none;filter:drop-shadow(0 18px 18px rgba(0,0,0,.45))}
.garage-tv-widget{position:fixed;z-index:8;left:2.4vw;right:auto;bottom:2.2vw;width:min(20vw,260px);min-width:175px;pointer-events:none;filter:drop-shadow(0 18px 18px rgba(0,0,0,.5))}
.garage-tv-screen{position:relative;width:100%;line-height:0;isolation:isolate;pointer-events:auto;cursor:pointer}
.garage-tv-player{position:absolute;left:0;top:0;width:1px;height:1px;opacity:0;pointer-events:none;overflow:hidden}
.garage-tv-screen:before,.garage-tv-screen:after{display:none}
.garage-tv-frame{display:block;width:100%;height:auto;object-fit:contain}
.garage-tv-click-hint{position:absolute;left:50%;top:50%;z-index:6;transform:translate(-50%,-50%);padding:5px 9px;border:1px solid rgba(255,255,255,.82);border-radius:2px;background:rgba(9,12,11,.86);color:#fff;font:700 11px/1 Arial,sans-serif;letter-spacing:.16em;opacity:0;pointer-events:none;text-shadow:0 0 6px rgba(255,255,255,.8);transition:opacity .18s ease;white-space:nowrap}
.garage-tv-screen:hover .garage-tv-click-hint,.garage-tv-screen:focus-visible .garage-tv-click-hint{opacity:1}
.garage-tv-frame-closed{animation:garageTvPicture .28s steps(2,end) infinite}
.garage-tv-frame-open{position:absolute;inset:0;opacity:0;animation:garageTvPicture .16s steps(2,end) infinite}
.garage-tv-screen.is-playing .garage-tv-frame-open{animation:garageTvSpeak 5s steps(1,end) infinite,garageTvPicture .28s steps(2,end) infinite}
.garage-tv-audio-icon{position:absolute;left:calc(100% + 10px);right:auto;bottom:14%;z-index:5;display:flex;align-items:center;gap:5px;width:max-content;height:26px;padding:3px 7px;border:1px solid rgba(255,244,193,.8);border-radius:3px;background:rgba(10,15,14,.86);color:#fff3c1;font:10px/1 Arial,sans-serif;letter-spacing:.05em;text-shadow:0 0 5px #fff3c1;pointer-events:none;filter:drop-shadow(0 1px 2px rgba(0,0,0,.8));white-space:nowrap}
.garage-tv-audio-icon b{font-size:15px;line-height:1}.garage-tv-audio-icon small{font:700 8px/1 Arial,sans-serif}
.garage-tv-screen.is-playing .garage-tv-audio-icon{color:#b9ff9e;border-color:#b9ff9e;box-shadow:0 0 8px rgba(185,255,158,.65)}
@keyframes garageTvSpeak{0%,14%,32%,48%,66%,84%,100%{opacity:0}15%,31%,49%,65%{opacity:1}}
@keyframes garageTvFlicker{0%,100%{opacity:.16}50%{opacity:.28}}
@keyframes garageTvSnow{0%{transform:translate3d(0,0,0);filter:contrast(1.8) brightness(1.2)}35%{transform:translate3d(4px,-3px,0);filter:contrast(2.4) brightness(1.45)}70%{transform:translate3d(-3px,3px,0);filter:contrast(1.5) brightness(1.05)}100%{transform:translate3d(2px,1px,0);filter:contrast(2) brightness(1.3)}}
@keyframes garageTvPicture{0%,100%{filter:contrast(1) brightness(1);transform:translate3d(0,0,0)}45%{filter:contrast(1.12) brightness(1.08);transform:translate3d(.5px,0,0)}70%{filter:contrast(.96) brightness(.94);transform:translate3d(-.4px,.3px,0)}}
.garage-radio-button{position:relative;overflow:hidden}
.garage-radio-display{position:absolute;left:48%;top:61%;width:34%;height:11%;overflow:hidden;display:block;color:#7dff62;font-family:"DotGothic16",monospace;font-size:clamp(8px,1vw,13px);font-weight:400;line-height:1;letter-spacing:.02em;text-align:left;white-space:nowrap;text-rendering:geometricPrecision;text-shadow:0 0 5px rgba(93,255,72,.65);pointer-events:none}
.garage-radio-display span{display:inline-block;padding-left:100%;animation:garageRadioTicker 8s linear infinite}
@keyframes garageRadioTicker{from{transform:translateX(0)}to{transform:translateX(-100%)}}
.garage-radio-table{position:relative;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;overflow:visible}
.garage-radio-table:before{display:none}
.garage-radio-button{display:block;width:100%;appearance:none;border:0;padding:0;background:transparent;cursor:pointer;pointer-events:auto}
.garage-radio-button:focus-visible{outline:2px solid #d8ef58;outline-offset:5px}
.garage-radio-button img{display:block;width:100%;height:auto;object-fit:contain}
.garage-radio-status{display:none}
.tour-cursor{display:grid!important;place-items:center;width:64px;height:64px;color:#d5f33b!important;font-size:0!important}
.tour-cursor svg{display:block;width:58px;height:58px;fill:#f4f1e7;stroke:#171715;stroke-width:2.5;filter:drop-shadow(3px 4px 0 rgba(0,0,0,.55))}
.tour-cursor{display:none!important}
.garage-kitten{position:absolute!important;left:0;bottom:15%;z-index:8!important;pointer-events:auto!important;cursor:url('hand-cursor-red.svg?v=1') 8 4,pointer!important}
.tour-zoom #tour-zoom-in{cursor:url('assets/magnifier-cursor.svg') 23 23,zoom-in!important}
.tour-zoom #tour-zoom-out{cursor:url('assets/magnifier-cursor.svg') 23 23,zoom-out!important}
.garage-radio-status.is-playing{color:#d8ef58}
.garage-oil-can{position:absolute;right:calc(100% + 76px);bottom:-1px;width:78px;height:auto;padding:0;background:transparent;border:0;box-shadow:none;transform:rotate(-4deg);pointer-events:auto;cursor:pointer;filter:drop-shadow(4px 5px 0 rgba(0,0,0,.42));z-index:30;overflow:visible}
.garage-radio-table{z-index:10}
.garage-oil-can:focus{outline:0}
.garage-oil-can:focus:not(:focus-visible){animation:garageOilPour 2.4s cubic-bezier(.2,.72,.25,1) both}
.garage-oil-can img{display:block;width:100%;height:auto;object-fit:contain;transform-origin:50% 8%;transition:transform .22s ease}
.garage-oil-can:focus-visible{outline:2px solid #d8ef58;outline-offset:3px}
.garage-oil-can:before{content:"";position:absolute;z-index:3;top:2px;left:26%;width:48%;height:9%;border-radius:45% 45% 35% 35%;background:linear-gradient(180deg,#ff4d4a,#ae171d 72%);box-shadow:0 2px 2px rgba(0,0,0,.45);transform-origin:10% 90%;opacity:0;pointer-events:none}
.garage-oil-pour{position:absolute;z-index:40;left:-3%;top:13%;width:7px;height:66px;border-radius:999px;background:linear-gradient(90deg,#4f2509,#c87416 38%,#efb53b 55%,#6b3210);opacity:0;transform:rotate(-18deg);transform-origin:top center;filter:drop-shadow(1px 2px 1px rgba(0,0,0,.65));pointer-events:none}
.garage-oil-pour:after{content:"";position:absolute;left:50%;bottom:-7px;width:10px;height:10px;border-radius:50%;background:#b46615;transform:translateX(-50%);box-shadow:0 2px 2px rgba(0,0,0,.5)}
.garage-oil-can.is-pouring{animation:garageOilPour 2.4s cubic-bezier(.2,.72,.25,1) both}
.garage-oil-can.is-pouring img{animation:oilBottleNatural 4s ease-in-out both}
.garage-oil-can.is-pouring:before{animation:garageOilCap 2.4s ease both}
.garage-oil-can.is-pouring .garage-oil-pour{animation:garageOilStream 2.1s .34s ease both}
.garage-oil-can:focus .garage-oil-pour{opacity:.95;animation:garageOilStream 2.1s ease both}
.garage-oil-can.is-pouring:after{content:"";position:absolute;z-index:41;left:-1%;top:8%;width:7px;height:64px;border-radius:999px;background:linear-gradient(90deg,#542709,#d4861b 40%,#f3b43a 55%,#6b3210);transform:rotate(-18deg);transform-origin:top center;filter:drop-shadow(1px 2px 1px rgba(0,0,0,.7));animation:garageOilStream 2.1s .25s ease both;pointer-events:none}
@keyframes garageOilPour{0%{transform:rotate(-4deg)}35%,78%{transform:rotate(-66deg) translate(-9px,8px)}100%{transform:rotate(-4deg)}}
@keyframes garageOilCap{0%,20%{opacity:0;transform:translate(0,0) rotate(0)}35%,78%{opacity:1;transform:translate(-7px,-10px) rotate(-28deg)}100%{opacity:0;transform:translate(0,0) rotate(0)}}
@keyframes garageOilStream{0%,18%{opacity:0;transform:rotate(-18deg) scaleY(0)}30%,78%{opacity:.9;transform:rotate(-18deg) scaleY(1)}100%{opacity:0;transform:rotate(-18deg) scaleY(0)}}
.garage-oil-can,.garage-oil-can.is-pouring,.garage-oil-can:focus:not(:focus-visible){transform:none;animation:none}
.garage-oil-can img{transform-origin:50% 65%;transition:none}
.garage-oil-can>img{clip-path:inset(10% 0 0)}
.oil-ad-label{position:absolute;left:50%;bottom:calc(100% + 10px);transform:translate(-50%,6px);padding:4px 7px;border:1px solid #d9ef58;background:rgba(10,10,8,.92);color:#d9ef58;font-family:inherit;font-size:9px;letter-spacing:.12em;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease;z-index:60}
.oil-ad-label:after{content:"";position:absolute;left:50%;top:100%;border:4px solid transparent;border-top-color:#d9ef58;transform:translateX(-50%)}
.garage-oil-can:hover .oil-ad-label,.garage-oil-can:focus-visible .oil-ad-label{opacity:1;transform:translate(-50%,0)}
.oil-cap-flight{position:absolute;inset:0;pointer-events:none;transform-origin:50% 5%;z-index:4}
.oil-cap-flight img{width:100%;height:100%;clip-path:inset(0 0 90%);transform:none!important;animation:none!important}
.garage-oil-can.is-pouring .oil-cap-flight{animation:oilCapUnscrew 4s linear both}
@keyframes oilCapUnscrew{0%{transform:translate(0,0) rotateY(0);opacity:1}5%{transform:translate(0,-2px) rotateY(180deg);opacity:1}10%{transform:translate(0,-5px) rotateY(360deg);opacity:1}15%{transform:translate(0,-8px) rotateY(540deg);opacity:1}21%{transform:translate(-5px,-38px) rotateY(720deg) rotate(-20deg);opacity:1}27%{transform:translate(-13px,-64px) rotateY(900deg) rotate(-50deg);opacity:.6}32%,86%{transform:translate(-22px,-78px) rotateY(1080deg) rotate(-80deg);opacity:0}88%{transform:translate(-13px,-64px) rotateY(900deg) rotate(-50deg);opacity:1}91%{transform:translate(0,-8px) rotateY(540deg);opacity:1}94%{transform:translate(0,-5px) rotateY(360deg);opacity:1}97%{transform:translate(0,-2px) rotateY(180deg);opacity:1}100%{transform:translate(0,0) rotateY(0);opacity:1}}
.garage-oil-can:before,.garage-oil-can.is-pouring:after,.garage-oil-pour{display:none!important}
.oil-liquid{position:absolute;left:-82px;top:0;width:160px;height:180px;overflow:visible;pointer-events:none;opacity:0}
.oil-flow{fill:none;stroke:url(#oil-amber);stroke-width:4;stroke-linecap:round;stroke-dasharray:90;stroke-dashoffset:90}
.oil-shine{fill:none;stroke:#f1cb7e;stroke-width:.65;opacity:.48;stroke-dasharray:90;stroke-dashoffset:90}
.oil-puddle{fill:#624015;opacity:0;transform-origin:30px 165px}
.oil-drop{fill:#a16b27;opacity:0}
.garage-oil-can.is-pouring .oil-liquid{animation:oilVisible 4s linear both}
.garage-oil-can.is-pouring .oil-flow,.garage-oil-can.is-pouring .oil-shine{animation:oilViscous 4s linear both}
.garage-oil-can.is-pouring .oil-puddle{animation:oilPool 4s ease both}
.garage-oil-can.is-pouring .oil-drop{animation:oilLastDrop 4s linear both}
@keyframes oilBottleNatural{0%,20%,100%{transform:rotate(0);clip-path:inset(10% 0 0)}35%,70%{transform:rotate(-105deg);clip-path:inset(10% 0 0)}88%{transform:rotate(0);clip-path:inset(10% 0 0)}}
@keyframes oilVisible{0%,32%,100%{opacity:0}36%,90%{opacity:1}}
@keyframes oilViscous{0%,34%{stroke-dashoffset:90;stroke-width:2}46%,67%{stroke-dashoffset:0;stroke-width:4}74%{stroke-dashoffset:0;stroke-width:1.5;opacity:1}80%,100%{stroke-dashoffset:-90;opacity:0}}
@keyframes oilPool{0%,43%{opacity:0;transform:scaleX(.2)}60%,85%{opacity:.75;transform:scaleX(1)}100%{opacity:0;transform:scaleX(1.1)}}
@keyframes oilLastDrop{0%,76%{opacity:0;transform:translateY(-30px)}78%{opacity:1;transform:translateY(-30px)}87%{opacity:1;transform:translateY(15px)}90%,100%{opacity:0;transform:translateY(18px)}}
.garage-oil-lid{position:absolute;top:7px;left:7px;width:42px;height:8px;background:#171715;border-radius:2px 2px 4px 4px;box-shadow:0 2px 0 rgba(255,255,255,.18)}
.garage-oil-can strong{display:block;margin:5px 0 3px;color:#f3db66;font-size:7px;line-height:1;letter-spacing:.08em}
.garage-oil-can b{display:block;color:#f1eee7;font-size:13px;line-height:.82;letter-spacing:.02em;text-shadow:1px 1px 0 #171715}
.garage-oil-can small{display:block;margin-top:8px;color:#f3db66;font-size:4px;line-height:1;letter-spacing:.04em}
@media(max-width:760px){.garage-tv-widget{left:3vw;right:auto;bottom:3vw;width:min(34vw,180px);min-width:132px}.garage-radio-widget{right:3vw;bottom:3vw;width:min(34vw,180px);min-width:132px}.garage-radio-table{padding:10px 7px 7px}.garage-radio-status{font-size:7px}.garage-tv-audio-icon{left:0;right:auto;bottom:auto;top:-30px}.garage-tv-click-hint{font-size:9px;padding:4px 7px}}
