@font-face{font-family:Catalog;src:url('./assets/catalog.woff2') format('woff2');font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:#292b28;font-family:Catalog,'Segoe UI',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:wait}[hidden]{display:none!important}button:focus-visible,a:focus-visible{outline:3px solid #698b7e;outline-offset:4px}.site-header{height:86px;background:#fbfbf9}.header-inner{height:100%;max-width:1540px;width:calc(100% - 9%);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px}.logo img{display:block;width:180px;height:auto}.header-inner nav{display:flex;align-items:center;gap:32px;font-size:15px}.header-inner nav span,.header-inner nav a{padding:10px 0}.header-inner .active{border-bottom:2px solid #e57830}.header-contact{display:flex;gap:24px;align-items:center;font-size:13px}.contact-button{font-size:11px;border:1px solid #4b4e48;padding:12px 20px}.map-stage{position:relative;width:100%;height:60vh;min-height:450px;overflow:hidden;background:#dce2db;isolation:isolate}.canvas-host,.poster{position:absolute;inset:0;width:100%;height:100%}.canvas-host canvas{width:100%;height:100%;display:block}.poster{object-fit:cover;transition:opacity .5s}.ready .poster{opacity:0;pointer-events:none}.canvas-host{opacity:0}.ready .canvas-host{opacity:1}.map-fade{position:absolute;inset:0;pointer-events:none;z-index:1;background:linear-gradient(to bottom,transparent 76%,#ffffffbb 94%,#fff 100%)}.map-heading{position:absolute;top:24px;left:3%;display:flex;gap:10px;align-items:center;z-index:2;font-size:10px;letter-spacing:1.8px;color:#354840;background:#ffffffcc;padding:10px 14px;border:1px solid #ffffff77;border-radius:2px}.live-dot{width:5px;height:5px;background:#557e65;border-radius:50%}.heading-separator{color:#9da59d;margin:0 3px}.map-caption{position:absolute;bottom:36px;left:3%;z-index:3;display:flex;flex-direction:column;gap:8px;color:#3e5147;font-size:13px;text-shadow:0 1px 5px #fff}.map-caption a{font-size:11px;text-decoration:underline;text-underline-offset:4px}.map-controls{position:absolute;bottom:38px;right:3%;display:flex;gap:6px;z-index:3}.play-button,.icon-button{height:36px;border:1px solid #8b9c8960;background:#fffffff0;color:#2e4338;border-radius:3px;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 3px 15px #2234210b}.play-button{font-size:12px;min-width:109px;padding:0 14px}.icon-button{width:36px;font-size:21px}.play-button:hover,.icon-button:hover{background:#fff}.progress-track{height:2px;position:absolute;bottom:20px;left:3%;right:3%;background:#86947b22;z-index:3}.progress-track>div{height:100%;width:0;background:#5c7b67}.credits{position:absolute;bottom:5px;right:3%;z-index:3;font-size:8px;color:#6f796e}.pin-label{position:absolute;transform:translate(-50%,-100%);padding:12px 20px;background:#fffef8eF;border:1px solid #c6ccbf;color:#304a3a;text-align:center;border-radius:3px;z-index:2;box-shadow:0 4px 22px #2b3f2720;pointer-events:none;white-space:nowrap}.pin-label:after{content:'';position:absolute;top:100%;left:50%;border:6px solid transparent;border-top-color:#fffef8;transform:translateX(-50%)}.pin-label small{font-size:8px;letter-spacing:1px;display:block;margin-bottom:4px}.pin-label strong{font-size:17px;font-weight:500}.loading{position:absolute;top:42%;left:50%;transform:translate(-50%,-50%);background:#fffef7ef;display:flex;align-items:center;gap:12px;padding:17px 23px;border-radius:3px;z-index:5;font-size:13px;white-space:nowrap}.loader{width:14px;height:14px;border:2px solid #d1dccb;border-top-color:#638268;border-radius:50%;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.activate{position:absolute;top:55%;left:50%;transform:translate(-50%,-50%);z-index:5;padding:12px 20px;border:0;background:#364d3b;color:#fff;border-radius:3px}.error .loading{white-space:normal;max-width:85%;min-width:250px;line-height:1.6}.error .loader{display:none}.contact-section{padding:50px 6% 80px;background:linear-gradient(165deg,#fff 0%,#f7f8f7 36%,#fff 37%,#f7f8f8 63%,#fff 64%)}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:75px;max-width:1080px;margin:auto}.eyebrow{font-size:12px;letter-spacing:2px;color:#d97532;margin:0 0 16px}.contact-info h1{font-size:20px;font-weight:600;margin:0 0 8px}.contact-info .intro-copy{font-size:17px;line-height:1.7;margin:0 0 32px}.contact-info h2{font-size:14px;margin:27px 0 9px;font-weight:600}.contact-info a,.contact-info p:not(.eyebrow){color:#959a96;font-size:16px;line-height:1.7}.contact-card{background:white;border-top:3px solid #e87a2f;border-radius:5px;box-shadow:0 8px 40px #20282013;padding:36px 38px}.contact-card h2{font-size:22px;margin:0 0 30px;font-weight:600}.contact-card label{display:block;font-size:12px;margin-bottom:20px}.contact-card input,.contact-card textarea{display:block;width:100%;margin-top:8px;border:1px solid #eee;background:#fafafa;padding:12px;border-radius:3px}.preview-note{font-size:11px;color:#929991;margin:20px 0 0}.embed-page{overflow:hidden}.embed-page .map-stage{height:100vh;min-height:0}.map-stage:fullscreen{height:100vh}.map-stage:fullscreen .map-fade{background:linear-gradient(transparent 76%,#fff9)}
@media(max-width:900px){.header-inner{width:92%}.header-inner nav{gap:18px}.header-contact{display:none}.contact-layout{gap:35px}.logo img{width:160px}}
@media(max-width:600px){.site-header{height:74px}.header-inner nav{font-size:12px;gap:15px}.header-inner nav a{display:none}.logo img{width:150px}.map-stage{height:50vh;min-height:450px}.map-heading{top:16px;left:16px;font-size:9px;letter-spacing:1px;padding:9px 11px}.map-caption{left:16px;bottom:84px;font-size:11px;gap:5px}.map-controls{bottom:33px;right:16px}.progress-track{left:16px;right:16px;bottom:19px}.credits{right:16px;font-size:7px}.contact-layout{grid-template-columns:1fr}.contact-section{padding:32px 7%}.contact-card{padding:28px}.pin-label{padding:10px 15px}.pin-label small{font-size:7px}.pin-label strong{font-size:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.poster{transition:none}.loader{animation:none}}

/* Arrival card and independently animated sky. */
.map-stage{background:#e6eced}.sky-host{position:absolute;inset:0;z-index:0}.sky-host canvas{display:block;width:100%;height:100%}.canvas-host{z-index:1}.map-fade{z-index:2}.map-heading{z-index:3}.pin-label{z-index:4;width:244px;padding:18px 20px 16px;pointer-events:auto;white-space:normal;background:#fffef8f5;border-radius:5px}.pin-label img{display:block;width:100%;height:auto;margin:0 auto 13px}.pin-label strong{display:block;font-size:21px;line-height:1.25}.pin-label a{display:block;margin-top:10px;font-size:12px;text-decoration:underline;text-underline-offset:4px;padding:6px 0;color:#496271}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:600px){.pin-label{width:202px;padding:15px 16px 12px}.pin-label img{margin-bottom:10px}.pin-label strong{font-size:19px}.pin-label a{font-size:11px;margin-top:7px}}

.error .pin-label{left:50%!important;top:95%!important}.error .loading{top:22%}

.map-heading{flex-direction:column;align-items:flex-start;gap:8px}.map-place{display:flex;align-items:center;gap:10px}.map-directions{font-size:12px;letter-spacing:0;line-height:1.4;text-decoration:underline;text-underline-offset:3px;padding:3px 0;color:#354f5f}
