*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;background:#faf6ef;min-height:100svh;font-family:IBM Plex Mono,ui-monospace,Consolas,monospace;overflow:hidden}#screen-1,#screen-2{transition:transform 1.2s cubic-bezier(.76,0,.24,1);position:fixed;inset:0}#screen-1{background:#faf6ef;justify-content:center;align-items:center;display:flex;overflow:hidden}#screen-2{visibility:hidden;cursor:none;background:#000;overflow:hidden;transform:translateY(100vh)}#screen-2 *{cursor:none}#custom-cursor{pointer-events:none;z-index:100;position:absolute;transform:translate(-4px,-4px)}#custom-cursor svg .cursor-stroke{stroke-dasharray:120;stroke-dashoffset:120px;animation:.6s forwards draw-cursor,2.4s .6s infinite redraw}@keyframes draw-cursor{to{stroke-dashoffset:0}}@keyframes redraw{0%{stroke-dashoffset:0}40%{stroke-dashoffset:120px}41%{stroke-dashoffset:120px}to{stroke-dashoffset:0}}body.slide-up #screen-1{transform:translateY(-100vh)}body.slide-up #screen-2{visibility:visible;transform:translateY(0)}#loader{justify-content:center;align-items:center;display:flex}.terminal-box{align-items:center;display:flex}.terminal-header{display:none}.terminal-body{color:#1a1a1a;letter-spacing:.02em;align-items:center;font-size:16px;line-height:1.5;transition:opacity .6s;display:flex}#typed-text{color:#1a1a1a;cursor:default;position:relative}#typed-text:before,#typed-text:after{content:attr(data-text);opacity:0;width:100%;height:100%;position:absolute;top:0;left:0}#typed-text:before{color:#ff2d2d;clip-path:polygon(0 20%,100% 20%,100% 40%,0 40%)}#typed-text:after{color:#2d6fff;clip-path:polygon(0 55%,100% 55%,100% 75%,0 75%)}#typed-text.glitching:before{opacity:.85;animation:.4s step-end infinite glitch-top}#typed-text.glitching:after{opacity:.85;animation:.4s step-end infinite glitch-bot}@keyframes glitch-top{0%{clip-path:polygon(0 15%,100% 15%,100% 35%,0 35%);transform:translate(-3px,-1px)}25%{clip-path:polygon(0 25%,100% 25%,100% 45%,0 45%);transform:translate(3px)}50%{clip-path:polygon(0 5%,100% 5%,100% 20%,0 20%);transform:translate(-2px,1px)}75%{clip-path:polygon(0 30%,100% 30%,100% 50%,0 50%);transform:translate(2px,-1px)}to{clip-path:polygon(0 15%,100% 15%,100% 35%,0 35%);transform:translate(-3px)}}@keyframes glitch-bot{0%{clip-path:polygon(0 55%,100% 55%,100% 70%,0 70%);transform:translate(3px,1px)}25%{clip-path:polygon(0 65%,100% 65%,100% 80%,0 80%);transform:translate(-3px)}50%{clip-path:polygon(0 75%,100% 75%,100% 90%,0 90%);transform:translate(2px,-1px)}75%{clip-path:polygon(0 50%,100% 50%,100% 65%,0 65%);transform:translate(-2px,1px)}to{clip-path:polygon(0 55%,100% 55%,100% 70%,0 70%);transform:translate(3px)}}.cursor{color:#1a1a1a;margin-left:1px;animation:1s step-end infinite blink}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.reveal-word{color:#1a1a1a;letter-spacing:-.02em;pointer-events:none;opacity:0;font-family:IBM Plex Mono,ui-monospace,Consolas,monospace;font-size:48px;font-weight:500;animation:.35s cubic-bezier(.16,1,.3,1) forwards word-in;position:absolute}@keyframes word-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}#map-image{object-fit:cover;object-position:center;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;inset:0}#map-car{pointer-events:none;z-index:10;filter:drop-shadow(0 2px 4px #00000080);position:absolute}.building-hotspot{cursor:none;z-index:20;justify-content:center;align-items:flex-start;display:flex;position:absolute}.building-hotspot .hotspot-label{color:#1a1a1a;letter-spacing:.08em;white-space:nowrap;opacity:0;pointer-events:none;background:#faf6ef;padding:3px 7px;font-family:IBM Plex Mono,monospace;font-size:10px;transition:opacity .2s;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.building-hotspot:hover .hotspot-label{opacity:1}#grain-overlay{z-index:300;opacity:0;pointer-events:none;background:#faf6ef;transition:opacity .45s;position:fixed;inset:0}#grain-overlay:after{content:"";background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='256' height='256'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.82' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='256' height='256' filter='url(%23n)' opacity='0.28'/%3E%3C/svg%3E");background-size:256px 256px;position:absolute;inset:0}#screen-3{visibility:hidden;z-index:5;background:#faf6ef;flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:96px 48px 64px;display:flex;position:fixed;inset:0;overflow-y:auto}#screen-3:after{content:"";pointer-events:none;z-index:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='256' height='256'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.82' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='256' height='256' filter='url(%23n)' opacity='0.07'/%3E%3C/svg%3E");background-size:256px 256px;position:absolute;inset:0}#dest-title{color:#1a1a1a;letter-spacing:-.02em;text-transform:uppercase;z-index:1;font-family:IBM Plex Mono,monospace;font-size:clamp(32px,5vw,64px);font-weight:500;position:relative}#back-btn{color:#1a1a1a;letter-spacing:.08em;cursor:pointer;opacity:.5;z-index:1;font-family:IBM Plex Mono,monospace;font-size:28px;text-decoration:none;transition:opacity .2s;position:absolute;top:32px;left:36px}#back-btn:hover{opacity:1}.lbx-entry{border-bottom:1px solid #1a1a1a1f;flex-direction:row;align-items:flex-start;gap:24px;padding-bottom:48px;display:flex}.lbx-entry:last-child{border-bottom:none}.lbx-poster{object-fit:cover;object-position:center;border-radius:2px;flex-shrink:0;align-self:flex-start;width:200px;height:300px;display:block}.lbx-meta{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.lbx-rating-date{letter-spacing:.12em;text-transform:uppercase;color:#1a1a1a;opacity:.5;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:400}.lbx-review{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.lbx-review--expanded{-webkit-line-clamp:unset;display:block;overflow:visible}.lbx-toggle{letter-spacing:.1em;text-transform:uppercase;color:#1a1a1a;opacity:.45;cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:400;transition:opacity .2s}.lbx-toggle:hover{opacity:1}#dest-title{margin-bottom:48px}#dest-content{z-index:1;flex-direction:column;gap:64px;width:100%;max-width:720px;display:flex;position:relative}.dest-entry{border-bottom:1px solid #1a1a1a1f;flex-direction:column;gap:20px;padding-bottom:48px;display:flex}.dest-entry:last-child{border-bottom:none}.dest-entry-label{letter-spacing:.12em;text-transform:uppercase;color:#1a1a1a;opacity:.5;font-family:IBM Plex Mono,monospace;font-size:11px}.dest-card{flex-direction:column;gap:6px;display:flex}.dest-card-label{letter-spacing:.1em;text-transform:uppercase;color:#1a1a1a;opacity:.45;font-family:IBM Plex Mono,monospace;font-size:10px}.dest-title-text{color:#1a1a1a;letter-spacing:-.01em;font-family:IBM Plex Mono,monospace;font-size:clamp(22px,3vw,32px);font-weight:500;line-height:1.2}.dest-subtitle-text{color:#1a1a1a;opacity:.75;font-family:IBM Plex Mono,monospace;font-size:clamp(16px,2vw,20px);font-weight:500;line-height:1.3}.dest-text{color:#1a1a1a;white-space:pre-wrap;font-family:IBM Plex Mono,monospace;font-size:14px;line-height:1.7}.dest-image{border-radius:2px;width:100%;height:auto;display:block}.dest-link{color:#1a1a1a;text-underline-offset:3px;align-self:flex-start;font-family:IBM Plex Mono,monospace;font-size:13px;text-decoration:underline}.dest-link:hover{opacity:.6}
