@font-face{font-family:'DM Sans';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/dm-sans-400.ab89d8f1ce2a.woff2') format('woff2')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:500;font-display:swap;src:url('/assets/fonts/dm-sans-500.3482286a14d7.woff2') format('woff2')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:600;font-display:swap;src:url('/assets/fonts/dm-sans-600.6ff98fa4aafe.woff2') format('woff2')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:700;font-display:swap;src:url('/assets/fonts/dm-sans-700.b773203ea015.woff2') format('woff2')}
:root{color-scheme:light;--bg:#fff;--panel:#fff;--soft:#f4f3ef;--text:#292a2d;--muted:#64656a;--line:#dededb;--accent:#e7b731;--accent-ink:#292a2d;--route:#e7b731;--map:#ecebe7;--link:#765800}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.65 'DM Sans',Arial,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;touch-action:manipulation}a{color:inherit}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,canvas:focus-visible{outline:3px solid #92701a;outline-offset:4px}button svg,a svg{width:20px;height:20px;flex:none}svg{vertical-align:middle}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500;letter-spacing:-.04em;line-height:1.14}small,.muted{color:var(--muted)}[hidden]{display:none!important}.skip{position:fixed;top:-100px;left:16px;background:var(--accent);padding:12px;z-index:1000}.skip:focus{top:8px}.sr-only{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden}.wrap{width:calc(100% - 80px);max-width:1480px;margin:auto}
.header{border-bottom:1px solid var(--line);background:#fff;position:relative;z-index:20}.header-inner{min-height:112px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:block;flex:none;line-height:1}.brand img{width:190px;height:auto;display:block}.nav{display:flex;align-items:center;gap:30px;font-size:15px}.nav a{text-decoration:none;position:relative;white-space:nowrap}.nav a:not(.nav-contact):hover{text-decoration:underline;text-underline-offset:9px}.nav .current:after{content:'';position:absolute;left:0;right:0;height:2px;bottom:-8px;background:var(--accent)}.nav-contact{display:flex;gap:30px;align-items:center;background:var(--accent);padding:15px 24px}.nav-contact:hover,.btn.primary:hover{background:#f0c444}.menu-toggle{display:none;border:0;background:none;font-size:30px;padding:6px;min-width:48px;min-height:48px;line-height:1}
.intro{display:grid;grid-template-columns:1.35fr 1fr;gap:7%;align-items:center;padding:64px 0 62px}.eyebrow{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);font-weight:500;display:flex;align-items:center;gap:14px;margin-bottom:25px;line-height:1.6}.eyebrow:before{content:'';width:24px;height:2px;background:var(--accent);flex:none}h1{font-size:clamp(42px,5.2vw,76px);letter-spacing:-.045em}.intro-text{margin-top:25px;color:var(--muted);max-width:540px;font-size:18px;line-height:1.75}.welcome-card{background:var(--text);color:#fff;padding:34px 38px}.welcome-card .eyebrow{color:#d7d7d4;margin-bottom:19px}.welcome-card h2{font-size:clamp(28px,2.8vw,40px)}.start-note{display:flex;align-items:center;gap:16px;margin:28px 0 22px;color:#d7d7d4;font-size:13px;line-height:1.7}.start-note strong{display:block;color:#fff;font-weight:500;font-size:15px}.parking-icon{display:grid;place-items:center;width:42px;height:42px;background:var(--accent);color:var(--text);font-size:23px;flex:none}.arrival-link{display:inline-flex;align-items:center;gap:25px;font-size:13px;color:white;text-decoration:none;border-bottom:1px solid #999;padding-bottom:7px}.arrival-link:hover{color:var(--accent)}
.layout{display:grid;grid-template-columns:330px minmax(0,1fr);gap:30px;align-items:start;padding-bottom:70px;scroll-margin-top:25px}.sidebar{min-width:0;display:grid;gap:22px}.panel{background:var(--soft);min-width:0;overflow:hidden}.panel-padding{padding:27px 25px}.choose-panel .eyebrow{font-size:10px;margin-bottom:12px;gap:10px}.step-title{font-size:26px;letter-spacing:-.035em}.search{position:relative;margin:23px 0 12px}.search svg{position:absolute;left:13px;top:16px;width:18px;height:18px;color:var(--muted);pointer-events:none}.search input{padding-left:41px}input,select,textarea{width:100%;padding:12px;border:1px solid #aaa;background:#fff;color:var(--text);border-radius:0;min-width:0;line-height:1.5}input::placeholder{color:var(--muted);opacity:1}input[type=search]{font-size:14px;min-height:49px}textarea{resize:vertical;min-height:100px}label{display:block;font-size:12px;color:var(--muted)}.tenant-list{display:grid;gap:0}.tenant{display:flex;align-items:center;gap:10px;width:100%;min-height:75px;text-align:left;padding:16px 10px;background:transparent;border:0;border-bottom:1px solid #d5d4d0;border-left:3px solid transparent;transition:background .15s}.tenant:hover{background:#eae9e4}.tenant.active{background:#fff;border-left-color:var(--accent)}.tenant-dot{display:none}.tenant .text{min-width:0}.tenant strong{display:block;font-size:15px;font-weight:500;line-height:1.4}.tenant small{display:block;font-size:12px;margin-top:4px}.tenant .chevron{margin-left:auto;flex:none}.tenant .chevron svg{width:17px;height:17px}.empty-search{padding:20px 0;color:var(--muted);font-size:14px}.quick-links{margin-top:24px}.quick-links p{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:9px}.quick-links button{display:flex;align-items:center;gap:12px;border:0;background:none;padding:9px 0;font-size:13px;min-height:44px;text-align:left}.quick-links button:hover{text-decoration:underline;text-underline-offset:5px}.quick-links svg{width:19px;height:19px}.initial-help{padding:0 8px;display:flex;align-items:flex-start;gap:12px;color:var(--muted);font-size:12px;line-height:1.75}.initial-help svg{width:24px;height:24px;flex:none;stroke:var(--link)}
.map-column{min-width:0;position:sticky;top:20px}.map-panel{border:1px solid var(--line);background:#fff;overflow:hidden;scroll-margin-top:15px}.map-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;flex-wrap:wrap}.map-name{font-size:20px;letter-spacing:-.035em}.segmented{display:flex;gap:5px}.segmented button{border:1px solid var(--line);border-radius:0;min-height:42px;padding:9px 14px;background:#fff;font-size:12px}.segmented button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--text)}.segmented button:hover{border-color:#a27b13}.stage{height:clamp(470px,43vw,630px);position:relative;overflow:hidden;background:radial-gradient(ellipse at 40% 30%,#f7f6f2,#e2e1dc 90%);border-top:1px solid var(--line);border-bottom:1px solid var(--line);isolation:isolate}.stage canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab}.stage canvas:active{cursor:grabbing}.overlay,.route-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:hidden}.route-under{fill:none;stroke:#292a2d;stroke-width:9;stroke-linejoin:round;stroke-linecap:round;opacity:.8}.route-visible{fill:none;stroke:var(--route);stroke-width:5;stroke-linejoin:round;stroke-linecap:round}.route-flow{fill:none;stroke:#fff;stroke-width:2;stroke-dasharray:2 18;stroke-linecap:round;opacity:.9;animation:routeFlow 2.1s linear infinite}.route-pointer{fill:var(--route);stroke:#292a2d;stroke-width:1}
.pin{position:absolute;display:flex;align-items:center;gap:6px;transform:translate(-50%,-100%);pointer-events:auto;background:#fff;color:var(--text);border:1px solid #bbb;box-shadow:0 3px 12px #0002;padding:6px 8px;min-height:36px;font-size:10px;font-weight:500;line-height:1.3;white-space:nowrap;max-width:210px}.pin:after{content:'';position:absolute;bottom:-7px;left:50%;margin-left:-6px;border-left:6px solid transparent;border-right:6px solid transparent;border-top:7px solid #fff}.pin b{display:grid;place-items:center;min-width:21px;height:22px;padding:0 4px;background:var(--text);color:#fff;font-weight:500;font-size:11px}.pin.selected,.pin.target{background:var(--accent);border-color:var(--accent);z-index:4}.pin.selected:after,.pin.target:after{border-top-color:var(--accent)}.pin.parking b{background:var(--accent);color:var(--text)}.map-controls{position:absolute;right:15px;top:15px;display:grid;gap:6px;z-index:8}.btn,.icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:0;padding:12px 16px;min-height:46px;text-decoration:none;font-weight:500;line-height:1.3}.btn:hover,.icon-btn:hover{border-color:var(--accent);background:#f4edda}.btn.primary{background:var(--accent);color:var(--text);border-color:var(--accent)}.icon-btn{width:44px;height:44px;min-height:44px;padding:0}.icon-btn svg{width:21px;height:21px}.floor-control{position:absolute;left:15px;top:15px;z-index:8}.floor-control select{background:#fff;width:auto;max-width:205px;min-height:44px;padding:10px;font-size:12px}.view-label{position:absolute;left:15px;bottom:15px;font-size:10px;background:#fff;padding:6px 10px;border:1px solid var(--line);color:var(--muted);pointer-events:none}.map-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 18px;font-size:12px;color:var(--muted);flex-wrap:wrap}.map-bottom span{display:flex;align-items:center;gap:8px}.map-bottom svg{width:17px;height:17px;flex:none}.text-btn{border:0;background:none;padding:6px 0;color:var(--link);font-size:12px;text-decoration:underline;text-underline-offset:4px;min-height:36px}.loading{position:absolute;inset:0;display:grid;place-content:center;gap:16px;background:var(--map);z-index:10;text-align:center;padding:25px;color:var(--muted);font-size:14px}.loading:before{content:'';width:28px;height:28px;border:2px solid #ccc;border-top-color:#92701a;border-radius:50%;margin:auto;animation:spin 1s linear infinite}.map-error{position:absolute;top:25px;left:20px;right:20px;padding:18px;background:white;border-left:3px solid var(--accent);font-size:14px;z-index:9}.stage.no-model{height:210px;min-height:210px}.no-model .floor-control{display:none}.legend{display:flex;gap:19px;align-items:center;padding:17px 0 8px;flex-wrap:wrap;font-size:11px;color:var(--muted)}.legend span{display:flex;align-items:center;gap:7px}.legend i{width:20px;height:3px;background:var(--accent)}.legend b{width:20px;height:20px;background:var(--accent);color:var(--text);font-size:12px;display:grid;place-items:center;font-weight:500}.legend .floor-dot{width:9px;height:9px;background:var(--accent)}.hint-line{font-size:11px;color:var(--muted)}
.route-card{padding:24px;border-top:3px solid var(--accent)}.route-card h2{font-size:24px;margin:15px 0 5px}.overline{display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.distance{letter-spacing:0;text-transform:none}.destination-name{font-size:13px;color:var(--muted)}.entry-box{padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:18px 0;display:flex;gap:12px;align-items:center}.entry-box svg{width:22px;height:22px;flex:none}.entry-box small{display:block;font-size:11px}.entry-box strong{font-size:14px;font-weight:500;display:block}.route-note{font-size:13px;color:var(--muted);margin-bottom:20px}.route-card .primary{width:100%}.route-actions{display:flex;gap:7px;margin-top:9px}.route-actions .btn{flex:1;font-size:11px;min-height:43px;padding:9px 4px}.route-actions svg{width:16px;height:16px}.route-details{margin-top:22px}.route-details summary{cursor:pointer;font-size:13px;color:var(--muted);padding:5px 0}.all-steps{padding-left:21px;font-size:13px;margin:16px 0 0}.all-steps li{padding:0 0 13px 4px}.active-step{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.active-step .eyebrow{margin-bottom:10px}.step-progress{display:flex;gap:5px;margin:10px 0}.step-progress i{height:3px;flex:1;background:var(--line)}.step-progress i.done{background:var(--accent)}.step-instruction{font-size:15px;padding:10px 0 18px}.step-nav{display:flex;gap:8px}.step-nav .primary{flex:1}.mode-choice{margin:18px 0 4px}.mode-choice button{flex:1}.footnote{font-size:11px;color:var(--muted);margin-top:18px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.footer{background:var(--text);border-top:3px solid var(--accent);color:#fff;padding:38px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:12px}.footer nav{display:flex;gap:25px;flex-wrap:wrap}.footer a{text-decoration:none}.footer a:hover{text-decoration:underline;text-underline-offset:5px}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--accent);padding:15px 20px;z-index:100;font-size:14px;max-width:calc(100% - 30px);box-shadow:0 4px 20px #0003}dialog{max-width:570px;width:calc(100% - 32px);background:white;color:var(--text);border:1px solid var(--line);border-top:3px solid var(--accent);padding:30px;box-shadow:0 15px 50px #0003}dialog::backdrop{background:#292a2dbb}dialog h2{font-size:28px;margin-bottom:18px}dialog p,dialog li{font-size:14px;color:var(--muted)}dialog ul{padding-left:20px;margin-bottom:25px}dialog li{margin-bottom:12px}dialog .row{justify-content:flex-end;margin-top:18px}.print-heading{display:none}.noscript{padding:28px;background:var(--soft);border-top:3px solid var(--accent);margin-bottom:30px}.noscript p{margin-top:18px}
#map-panel:fullscreen{width:100vw;height:100dvh;background:#fff;border:0;display:flex;flex-direction:column}#map-panel:fullscreen .stage{height:auto;flex:1;min-height:0}#map-panel:fullscreen .map-toolbar,#map-panel:fullscreen .map-bottom{flex:none}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes routeFlow{to{stroke-dashoffset:-40}}
@media(min-width:1550px){.layout{grid-template-columns:365px minmax(0,1fr)}}
@media(max-width:1100px){.wrap{width:calc(100% - 48px)}.header-inner{min-height:100px}.brand img{width:171px}.nav{gap:20px;font-size:13px}.nav-contact{padding:14px 20px;gap:20px}.intro{gap:6%;padding:45px 0}.welcome-card{padding:27px}.intro-text{font-size:16px}.layout{grid-template-columns:290px minmax(0,1fr);gap:20px}.panel-padding,.route-card{padding:22px}.map-toolbar{padding:13px}.map-name{font-size:18px}.stage{height:550px}.floor-control select{max-width:180px;font-size:11px}.map-controls{right:10px}.pin{font-size:9px;max-width:174px;white-space:normal}.map-bottom{padding:10px 13px}}
@media(max-width:760px){.wrap{width:calc(100% - 36px)}.header-inner{min-height:90px}.brand img{width:150px}.menu-toggle{display:grid;place-items:center}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--text);color:white;padding:24px;box-shadow:0 15px 22px #0002}.nav.open{display:flex;align-items:flex-start;flex-direction:column;gap:24px;font-size:16px}.nav .current:after{display:none}.nav .nav-contact{background:var(--accent);color:var(--text)}.intro{grid-template-columns:1fr;gap:28px;padding:35px 0}.intro .eyebrow{margin-bottom:18px}h1{font-size:49px}.intro-text{font-size:16px;margin-top:20px;max-width:470px}.welcome-card{padding:24px}.welcome-card h2{font-size:30px}.welcome-card h2 br{display:none}.welcome-card .eyebrow{margin-bottom:12px}.start-note{margin:20px 0 15px}.layout{display:flex;flex-direction:column;gap:23px;padding-bottom:45px}.sidebar{display:contents}.map-column{width:100%;position:static;order:1}.choose-panel{width:100%;order:0}.route-panel{width:100%;order:2;scroll-margin-top:20px}.initial-help{display:none}.tenant-list{grid-template-columns:1fr 1fr;column-gap:15px}.tenant{min-height:76px;padding:13px 8px}.tenant strong{font-size:14px}.tenant small{font-size:11px}.tenant .chevron{display:none}.panel-padding{padding:23px}.quick-links{display:flex;gap:8px 23px;align-items:center;flex-wrap:wrap;margin-top:18px}.quick-links p{width:100%;margin:0}.quick-links button{padding:4px 0}.stage{height:450px}.map-name{font-size:17px}.map-toolbar{padding:12px;gap:12px}.segmented button{font-size:11px;padding:9px 11px}.floor-control{left:10px;top:12px}.map-controls{top:12px;gap:6px}.floor-control select{max-width:180px;min-height:44px}.pin{font-size:9px;max-width:170px;padding:6px;gap:4px}.pin b{font-size:9px;min-width:17px;height:19px}.legend{gap:10px 16px;font-size:10px}.view-label{left:10px;bottom:10px}.map-bottom{font-size:11px;gap:3px}.map-bottom .text-btn{font-size:11px;min-height:38px}.footer-inner{align-items:flex-start;flex-direction:column;font-size:11px;gap:22px}.footer nav{gap:15px}.route-card{padding:25px}.route-card h2{font-size:27px}.route-actions .btn{font-size:12px}.all-steps{font-size:14px}.route-note{font-size:14px}}
@media(max-width:380px){.wrap{width:calc(100% - 28px)}h1{font-size:43px}.intro-copy .eyebrow{font-size:10px}.welcome-card{padding:22px}.map-toolbar{justify-content:center}.map-name{width:100%;text-align:center}.tenant-list{grid-template-columns:1fr}.floor-control select{max-width:165px}.stage{height:420px}.panel-padding{padding:20px}.pin{max-width:150px;font-size:8px}.footer nav{gap:13px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{body{font-size:12px}.wrap{width:100%;max-width:none}.header,.intro,.choose-panel,.initial-help,.map-toolbar,.map-controls,.floor-control,.map-bottom,.legend,.hint-line,.route-actions,.active-step,.route-card>.primary,.mode-choice,.view-label,.toast,dialog,.footer,.route-details summary{display:none!important}.layout{display:flex;flex-direction:column;gap:20px}.sidebar{display:contents}.route-panel{order:0;width:100%;break-inside:avoid;background:white}.map-column{order:1;width:100%;position:static}.stage{height:430px!important;background:#eee}.map-panel{break-inside:avoid}.print-heading{display:block;padding:12px 0 20px;font-size:21px;font-weight:500}.route-card{padding:18px}.all-steps{font-size:12px}.pin{box-shadow:none}.route-flow{animation:none}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
