:root{color:#e8efea;background:#0d171d;font-family:Avenir Next,Avenir,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--paper: #e8efea;--muted: #91a39f;--quiet: #647572;--line: rgba(197, 216, 208, .16);--accent: #f0b67f}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0}body{min-width:320px;overflow:hidden;background:#0d171d}button{font:inherit}.zoom-slider{display:none}.app-shell{position:relative;width:100vw;height:100svh;min-height:580px;overflow:hidden;isolation:isolate;background:#0d171d}.viewport{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;cursor:grab}.viewport:active{cursor:grabbing}.viewport canvas{display:block;width:100%;height:100%}.loading-state,.data-error{position:absolute;z-index:4;top:50%;left:50%;display:flex;align-items:center;gap:14px;transform:translate(-50%,-50%);color:var(--muted);font-size:11px;letter-spacing:.12em;text-transform:uppercase;pointer-events:none}.loading-state p{margin:0}.loading-orbit{width:16px;height:16px;border:1px solid rgba(240,182,127,.26);border-top-color:var(--accent);border-radius:50%;animation:spin 1.2s linear infinite}.data-error{max-width:360px;padding:16px 18px;border:1px solid rgba(240,182,127,.22);background:#191512d1;text-transform:none;letter-spacing:0}.error-mark{display:grid;width:22px;height:22px;flex:0 0 auto;place-items:center;border:1px solid var(--accent);border-radius:50%;color:var(--accent);font-weight:700}.data-error strong{display:block;color:var(--paper);font-size:12px;letter-spacing:.08em;text-transform:uppercase}.data-error p{max-width:270px;margin:5px 0 0;color:var(--muted);font-size:11px;line-height:1.5}.company-card{position:absolute;z-index:7;top:158px;right:38px;width:min(300px,calc(100vw - 76px));padding:19px 20px 18px;border:1px solid rgba(240,182,127,.34);background:#102027f0;box-shadow:0 18px 50px #00000047}.company-card .eyebrow{margin:0;font-size:8px}.company-card h2{margin:13px 0 9px;color:var(--paper);font-size:25px;font-weight:400;letter-spacing:-.04em;line-height:1.05}.company-card-close{position:absolute;top:10px;right:12px;width:24px;height:24px;padding:0;border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:22px;line-height:1}.company-card-close:hover,.company-card-close:focus-visible{color:var(--accent)}.company-address{margin:0 20px 16px 0;color:var(--muted);font-size:11px;line-height:1.5}.company-address-missing{color:var(--quiet);font-style:italic}.company-card a,.footer-source a{color:var(--accent);text-decoration:none}.company-card a{font-size:9px;font-weight:700;letter-spacing:.14em}.company-card a:hover,.company-card a:focus-visible,.footer-source a:hover,.footer-source a:focus-visible{text-decoration:underline}.topbar,.intro-copy,.compass,.control-hint,.footer-bar{position:absolute;z-index:5}.topbar{top:27px;right:38px;left:38px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.brand-lockup,.topbar-status,.control-hint,.footer-bar{display:flex;align-items:center}.brand-lockup{gap:12px}.brand-mark{display:flex;width:22px;height:24px;align-items:flex-end;gap:3px}.brand-mark i{display:block;width:5px;background:var(--accent);transform:skewY(-27deg)}.brand-mark i:nth-child(1){height:10px;opacity:.55}.brand-mark i:nth-child(2){height:17px;opacity:.8}.brand-mark i:nth-child(3){height:24px}.brand-name{color:var(--paper);font-size:12px;font-weight:700;letter-spacing:.28em;line-height:1}.brand-subtitle{margin-top:6px;color:var(--quiet);font-size:8px;letter-spacing:.2em;line-height:1}.topbar-status{gap:10px;color:var(--muted);font-size:9px;letter-spacing:.18em;text-transform:uppercase}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#7cc5a1;box-shadow:0 0 0 4px #7cc5a11a}.status-dot.is-offline{background:var(--accent);box-shadow:0 0 0 4px #f0b67f1a}.status-divider,.hint-divider{width:1px;height:11px;background:var(--line)}.status-coordinates{color:var(--quiet)}.intro-copy{top:160px;left:42px;max-width:310px;pointer-events:none}.eyebrow{color:var(--muted);font-size:9px;font-weight:600;letter-spacing:.2em;line-height:1.2;text-transform:uppercase}.eyebrow{display:flex;align-items:center;gap:9px;margin:0}.eyebrow span{display:inline-block;width:25px;height:1px;background:var(--accent)}.intro-copy h1{margin:19px 0 15px;color:var(--paper);font-size:clamp(50px,6vw,83px);font-weight:400;letter-spacing:-.07em;line-height:.86}.intro-copy h1 em{color:var(--accent);font-family:Georgia,Times New Roman,serif;font-weight:400;letter-spacing:-.09em}.intro-description{max-width:250px;margin:0;color:var(--muted);font-size:11px;line-height:1.65}.compass{right:40px;bottom:117px;width:44px;height:44px;border:1px solid rgba(197,216,208,.23);border-radius:50%;opacity:.72}.compass-north{position:absolute;top:-17px;left:50%;color:var(--accent);font-size:9px;letter-spacing:.1em;transform:translate(-50%)}.compass-cross{position:absolute;top:50%;left:50%;display:block;background:#c5d8d047;transform:translate(-50%,-50%)}.compass-cross.vertical{width:1px;height:34px}.compass-cross.horizontal{width:34px;height:1px}.compass-center{position:absolute;top:50%;left:50%;width:5px;height:5px;border-radius:50%;background:var(--accent);transform:translate(-50%,-50%)}.control-hint{bottom:57px;left:50%;gap:10px;color:var(--quiet);font-size:8px;letter-spacing:.14em;transform:translate(-50%);white-space:nowrap}.control-hint strong{color:var(--muted);font-weight:600}.hint-divider{height:9px;margin:0 3px}.mouse-icon{position:relative;display:inline-block;width:12px;height:17px;border:1px solid var(--quiet);border-radius:7px}.mouse-icon i{position:absolute;top:3px;left:50%;width:2px;height:4px;border-radius:2px;background:var(--accent);transform:translate(-50%)}.footer-bar{right:38px;bottom:21px;left:38px;justify-content:space-between;color:var(--quiet);font-size:8px;letter-spacing:.14em;pointer-events:none}.footer-right{color:#91a39f9e}.footer-source{color:var(--muted);pointer-events:auto;white-space:nowrap}.mobile-tutorial{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:grid;place-items:center;padding:24px;background:#070e12ad;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.tutorial-card{position:relative;width:min(100%,340px);padding:28px 24px 24px;border:1px solid rgba(197,216,208,.25);background:#102027;box-shadow:0 18px 60px #00000059;text-align:center;animation:tutorial-in .45s ease both}.tutorial-card .eyebrow{justify-content:center}.tutorial-card h2{margin:15px 0 0;color:var(--paper);font-size:27px;font-weight:400;letter-spacing:-.04em}.tutorial-card p:not(.eyebrow){min-height:38px;margin:12px auto 20px;color:var(--muted);font-size:12px;line-height:1.55}.tutorial-progress{position:absolute;top:12px;right:24px;left:24px;display:flex;gap:5px}.tutorial-progress span{height:2px;flex:1;background:var(--line)}.tutorial-progress span.active{background:var(--accent)}.gesture-demo{position:relative;width:150px;height:112px;margin:22px auto 0}.finger{position:absolute;width:22px;height:22px;border:2px solid var(--accent);border-radius:50%;animation:gesture-pulse 1.6s ease-in-out infinite}.finger-one{top:45px;left:40px}.finger-two{top:45px;left:88px;animation-delay:.2s}.gesture-line{position:absolute;top:55px;left:59px;width:32px;border-top:1px dashed var(--muted)}.gesture-pan .finger-two{display:none}.gesture-pan .finger-one{left:64px;animation:gesture-pan 1.6s ease-in-out infinite}.gesture-rotate .finger-one{animation:none}.gesture-rotate .finger-two{animation:gesture-rotate 1.6s ease-in-out infinite}.tutorial-card button{width:100%;padding:12px;border:0;background:var(--accent);color:#1a2020;cursor:pointer;font-size:10px;font-weight:700;letter-spacing:.18em}.tutorial-skip{margin-top:10px;padding:4px!important;background:transparent!important;color:var(--quiet)!important}@keyframes tutorial-in{0%{opacity:0;transform:translateY(12px)}}@keyframes gesture-pulse{50%{box-shadow:0 0 0 9px #f0b67f1f}}@keyframes gesture-pan{50%{transform:translate(35px)}}@keyframes gesture-rotate{50%{transform:translate(8px,-25px)}}@media(min-width:801px),(pointer:fine){.mobile-tutorial{display:none}}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:800px){.zoom-slider{position:absolute;z-index:6;right:-28px;bottom:116px;display:block;width:120px;height:44px;margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;transform:rotate(-90deg);touch-action:none}.zoom-slider::-webkit-slider-runnable-track{height:2px;background:#c5d8d080}.zoom-slider::-webkit-slider-thumb{width:24px;height:24px;margin-top:-11px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:2px solid var(--accent);border-radius:50%;background:#102027}.zoom-slider::-moz-range-track{height:2px;background:#c5d8d080}.zoom-slider::-moz-range-thumb{width:20px;height:20px;border:2px solid var(--accent);border-radius:50%;background:#102027}.topbar{display:none}.intro-copy{top:28px;left:23px}.intro-copy .eyebrow,.control-hint{display:none}.intro-copy h1{margin:0;font-size:34px}.intro-description{display:none}.company-card{top:auto;right:22px;bottom:58px;left:22px;width:auto;padding:16px 17px 15px}.company-card h2{font-size:22px}.compass{display:none}.footer-bar{right:22px;bottom:18px;left:22px}.footer-right{display:none}.footer-source{font-size:7px}}@media(max-height:700px)and (min-width:801px){.intro-copy{top:128px}}
