/* Scene 1: home artwork, connected OpenStreetMap checkpoints, and outdoor celebration. */
.tour-intro-bike-image,.tour-intro-osm,.tour-fun-day{opacity:0;overflow:hidden}
.tour-intro-bike-image{z-index:2;left:0;top:3%;width:59%;height:56%;margin:0;background:var(--ink);rotate:-2.5deg}
.tour-intro-bike-image>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.tour-intro-bike-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(16,32,27,.82))}
.tour-intro-bike-image figcaption{position:absolute;z-index:2;left:9px;right:9px;bottom:8px;display:flex;align-items:center;gap:7px;color:#fff}
.tour-intro-bike-image figcaption .brand-mark{width:28px;height:28px;margin:0;padding:0;border:0;background:transparent;transform:none;object-fit:contain;flex:0 0 auto}.tour-intro-bike-image figcaption>span:last-child{display:grid}
.tour-intro-bike-image figcaption small,.tour-intro-osm header small,.fun-day-caption small{font:700 7px "Space Grotesk";letter-spacing:.1em}.tour-intro-bike-image figcaption strong{font:700 17px/1 "Space Grotesk"}
.tour-intro-osm{z-index:3;right:0;top:1%;width:60%;height:61%;padding:0;background:#dce8de}
.tour-intro-osm header{position:absolute;z-index:500;left:8px;top:8px;max-width:calc(100% - 16px);display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:9px;background:rgba(248,248,244,.94);box-shadow:0 4px 12px rgba(16,32,27,.2)}
.tour-intro-osm header>span:first-child{width:27px;height:27px;display:grid;place-items:center;flex:0 0 auto;border-radius:8px;background:var(--ink);color:var(--lime)}.tour-intro-osm header svg{width:15px;height:15px}.tour-intro-osm header>span:last-child{display:grid}.tour-intro-osm header b{font:700 9px/1.1 "Space Grotesk"}
.tour-intro-osm-map{position:absolute;z-index:0;inset:0;background:#dce8de}.tour-art .tour-intro-osm-map svg{width:auto;height:auto;max-height:none;overflow:hidden}.tour-intro-osm header{z-index:1001!important}.tour-intro-osm-map .leaflet-pane,.tour-intro-osm-map .leaflet-control{font-family:"DM Sans",sans-serif}
.tour-intro-osm-map .leaflet-control-attribution{margin:0!important;padding:1px 3px!important;background:rgba(255,255,255,.88)!important;font-size:5px!important;line-height:1.25!important}
.tour-intro-osm-checkpoint{border:0;background:transparent;opacity:0}.tour-intro-osm-checkpoint>span{width:25px;height:25px;display:grid;place-items:center;border:3px solid #fff;border-radius:50% 50% 50% 0;background:var(--green);box-shadow:0 4px 9px rgba(16,32,27,.34);transform:rotate(-45deg) scale(.3)}
.tour-intro-osm-checkpoint b{color:#fff;font:700 9px "Space Grotesk";transform:rotate(45deg)}.tour-intro-osm-checkpoint.intro-osm-pin-5>span{background:var(--coral)}.tour-intro-route-outline,.tour-intro-route-path{stroke-dasharray:400;stroke-dashoffset:400;opacity:0}.fun-people{position:absolute;z-index:6;left:15%;right:8%;bottom:3%;height:74%;opacity:0}.fun-person{position:absolute;bottom:0;width:48px;height:86px;transform-origin:bottom}.fun-head{position:absolute;z-index:5;left:8px;top:0;width:34px;height:34px}
.fun-head svg{display:block;width:34px;height:34px;max-height:none;border:2px solid #fff;border-radius:50%;box-shadow:0 3px 8px rgba(16,32,27,.2)}
.fun-body{position:absolute;z-index:3;left:13px;top:31px;width:24px;height:34px;border:2px solid var(--ink);border-radius:12px 12px 6px 6px;background:var(--shirt)}
.fun-arm,.fun-leg{position:absolute;z-index:2;width:7px;border:2px solid var(--ink);border-radius:999px;background:var(--skin)}.fun-arm{top:36px;height:30px;transform-origin:top}.arm-left{left:9px;rotate:36deg}.arm-right{right:7px;rotate:-36deg}
.fun-leg{top:60px;height:27px;background:var(--trousers);transform-origin:top}.leg-left{left:16px;rotate:10deg}.leg-right{right:12px;rotate:-10deg}
.fun-one{left:0;--shirt:#ff6b52;--skin:#8f5138;--trousers:#263a35;rotate:-4deg}.fun-two{left:43%;bottom:7px;--shirt:#d8f35a;--skin:#efb38f;--trousers:#157f52}.fun-three{right:0;--shirt:#5267d8;--skin:#c97b56;--trousers:#263a35;rotate:4deg}
.fun-one .arm-left{rotate:142deg;top:40px}.fun-one .arm-right{rotate:-52deg}.fun-two .arm-left{rotate:158deg}.fun-two .arm-right{rotate:-158deg}.fun-three .arm-left{rotate:52deg}.fun-three .arm-right{rotate:-142deg;top:40px}.tour-fun-day{z-index:4;left:5%;bottom:0;width:90%;height:48%;padding:10px;background:linear-gradient(#96dce6 0 58%,#9edfc9 58%);rotate:-1deg}
.fun-sun{position:absolute;z-index:1;right:9%;top:9%;width:43px;height:43px;border:3px solid var(--ink);border-radius:50%;background:var(--yellow);opacity:0;transform:scale(.35)}
.fun-sun:before{content:"";position:absolute;inset:-16px;border-radius:50%;background:repeating-conic-gradient(var(--yellow) 0 6deg,transparent 6deg 24deg);mask:radial-gradient(circle,transparent 0 58%,#000 61%)}
.fun-sun i{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 68%,transparent 0 15%,var(--ink) 17% 20%,transparent 22%)}.fun-sun i:before,.fun-sun i:after{content:"";position:absolute;top:14px;width:4px;height:5px;border-radius:50%;background:var(--ink)}.fun-sun i:before{left:11px}.fun-sun i:after{right:11px}
.fun-mountain{position:absolute;bottom:18%;clip-path:polygon(0 100%,48% 0,100% 100%);transform-origin:bottom}.fun-mountain:after{content:"";position:absolute;left:31%;top:0;width:37%;height:38%;background:#f8f8f4;clip-path:polygon(0 0,50% 100%,100% 0)}
.mountain-back{left:-8%;width:78%;height:67%;background:#6d8f83;opacity:.85}.mountain-front{right:-12%;width:82%;height:78%;background:#386f5d}
.fun-day-caption{position:relative;z-index:7;display:grid;width:max-content;max-width:56%;padding:6px 8px;border-radius:8px;background:rgba(248,248,244,.94);box-shadow:0 5px 13px rgba(16,32,27,.16)}.fun-day-caption small{color:var(--green)}.fun-day-caption strong{font:700 9px/1.15 "Space Grotesk"}
.fun-bird{position:absolute;z-index:3;width:26px;height:13px;opacity:0}.fun-bird i{position:absolute;top:4px;width:14px;height:8px;border-top:2px solid var(--ink);border-radius:50%}.fun-bird i:first-child{left:0;rotate:18deg}.fun-bird i:last-child{right:0;rotate:-18deg}.bird-one{left:48%;top:17%}.bird-two{left:64%;top:33%;scale:.7}.tour-slide.is-active .tour-intro-bike-image{animation:tour-intro-bike-in .72s cubic-bezier(.2,1.15,.3,1) .08s forwards}.tour-slide.is-active .tour-intro-bike-image>img{animation:tour-intro-bike-drift 5.5s ease-out .3s both}
#tour.scene1-map-cued .tour-slide.is-active .tour-intro-osm{animation:tour-intro-map-in .72s cubic-bezier(.2,1.12,.3,1) forwards}
#tour.scene1-map-cued .tour-slide.is-active .intro-osm-pin-1{animation:tour-intro-pin-show .3s ease .9s forwards}#tour.scene1-map-cued .tour-slide.is-active .intro-osm-pin-1>span{animation:tour-intro-pin-pop .38s cubic-bezier(.2,1.6,.4,1) .9s forwards}
#tour.scene1-map-cued .tour-slide.is-active .intro-osm-pin-2{animation:tour-intro-pin-show .3s ease 1.47s forwards}#tour.scene1-map-cued .tour-slide.is-active .intro-osm-pin-2>span{animation:tour-intro-pin-pop .38s cubic-bezier(.2,1.6,.4,1) 1.47s forwards}
#tour.scene1-map-cued .tour-slide.is-active .intro-osm-pin-3{animation:tour-intro-pin-show .3s ease 2.04s forwards}#tour.scene1-map-cued .tour-slide.is-active .intro-osm-pin-3>span{animation:tour-intro-pin-pop .38s cubic-bezier(.2,1.6,.4,1) 2.04s forwards}
#tour.scene1-map-cued .tour-slide.is-active .intro-osm-pin-4{animation:tour-intro-pin-show .3s ease 2.61s forwards}#tour.scene1-map-cued .tour-slide.is-active .intro-osm-pin-4>span{animation:tour-intro-pin-pop .38s cubic-bezier(.2,1.6,.4,1) 2.61s forwards}
#tour.scene1-map-cued .tour-slide.is-active .intro-osm-pin-5{animation:tour-intro-pin-show .3s ease 3.18s forwards}#tour.scene1-map-cued .tour-slide.is-active .intro-osm-pin-5>span{animation:tour-intro-pin-pop .38s cubic-bezier(.2,1.6,.4,1) 3.18s forwards}
#tour.scene1-map-cued .tour-slide.is-active .intro-route-segment-1{animation:tour-intro-route-draw .5s ease 1.47s forwards}#tour.scene1-map-cued .tour-slide.is-active .intro-route-segment-2{animation:tour-intro-route-draw .5s ease 2.04s forwards}#tour.scene1-map-cued .tour-slide.is-active .intro-route-segment-3{animation:tour-intro-route-draw .5s ease 2.61s forwards}#tour.scene1-map-cued .tour-slide.is-active .intro-route-segment-4{animation:tour-intro-route-draw .5s ease 3.18s forwards}.tour-slide.is-active .tour-fun-day{animation:tour-fun-day-in .75s cubic-bezier(.2,1.12,.3,1) 6.42s forwards}.tour-slide.is-active .fun-sun{animation:tour-fun-sun-in .55s cubic-bezier(.2,1.5,.3,1) 6.9s forwards,tour-fun-sun-glow 2.4s ease-in-out 7.5s infinite}
.tour-slide.is-active .fun-people{animation:tour-fun-people-in .62s cubic-bezier(.2,1.2,.3,1) 7.05s forwards}.tour-slide.is-active .fun-person{animation:tour-fun-dance 1.75s ease-in-out 7.7s infinite}.tour-slide.is-active .fun-two{animation-delay:7.95s}.tour-slide.is-active .fun-three{animation-delay:8.2s}
.tour-slide.is-active .fun-one .arm-left,.tour-slide.is-active .fun-three .arm-right{animation:tour-fun-wave 1.25s ease-in-out 7.7s infinite}.tour-slide.is-active .fun-bird{animation:tour-fun-bird 4.5s ease-in-out 7.1s infinite}.tour-slide.is-active .bird-two{animation-delay:7.65s}.tour-slide.is-active .mountain-back{animation:tour-fun-mountain 6s ease-in-out 7.2s infinite}
@keyframes tour-intro-bike-in{from{opacity:0;transform:translateX(-75px) rotate(-5deg)}to{opacity:1;transform:translateX(0) rotate(0)}}@keyframes tour-intro-bike-drift{from{scale:1.08;translate:-3% 0}to{scale:1;translate:0 0}}@keyframes tour-intro-map-in{from{opacity:0;right:-75px}to{opacity:1;right:0}}
@keyframes tour-intro-pin-show{to{opacity:1}}@keyframes tour-intro-pin-pop{to{transform:rotate(-45deg) scale(1)}}@keyframes tour-intro-route-draw{to{opacity:1;stroke-dashoffset:0}}@keyframes tour-fun-day-in{from{opacity:0;transform:translateY(80px) rotate(-3deg)}to{opacity:1;transform:translateY(0) rotate(0)}}
@keyframes tour-fun-sun-in{to{opacity:1;transform:scale(1)}}@keyframes tour-fun-sun-glow{50%{filter:drop-shadow(0 0 10px rgba(255,201,69,.8));transform:scale(1.07) rotate(5deg)}}@keyframes tour-fun-people-in{from{opacity:0;transform:translateY(35px)}to{opacity:1;transform:translateY(0)}}
@keyframes tour-fun-dance{50%{translate:0 -6px;rotate:3deg}}@keyframes tour-fun-wave{50%{rotate:172deg}}@keyframes tour-fun-bird{0%,100%{opacity:.45;translate:-8px 3px}50%{opacity:1;translate:12px -5px}}@keyframes tour-fun-mountain{50%{translate:-5px 0}}@media(max-width:520px){.tour-intro-bike-image{width:55%;height:50%}.tour-intro-bike-image figcaption{left:7px;right:7px;bottom:6px;gap:5px}.tour-intro-bike-image figcaption .brand-mark{width:24px;height:24px}.tour-intro-bike-image figcaption strong{font-size:14px}.tour-intro-osm{width:61%;height:59%}.tour-intro-osm header{left:6px;top:6px;padding:5px 6px}.tour-intro-osm header>span:first-child{width:23px;height:23px}.tour-intro-osm header b{font-size:8px}.tour-fun-day{left:4%;width:92%;height:47%;padding:8px}.fun-day-caption strong{font-size:8px}.fun-people{left:12%;right:5%}.fun-person{scale:.9;transform-origin:bottom}}
@media(max-width:520px){.tour-intro-bike-image{width:59%;height:54%}}
@media(max-height:720px){.tour-intro-bike-image{height:51%}.tour-intro-osm{height:61%}.tour-fun-day{height:46%}.fun-day-caption{padding:5px 7px}.fun-person{scale:.8;transform-origin:bottom}.fun-sun{scale:.82;transform-origin:top right}}
@media(prefers-reduced-motion:reduce){.tour-intro-bike-image,.tour-fun-day,.fun-sun,.fun-people,.fun-bird{opacity:1!important;transform:none!important;animation:none!important}.tour-intro-osm,.tour-intro-osm-checkpoint,.tour-intro-route-outline,.tour-intro-route-path{opacity:0!important;animation:none!important}#tour.scene1-map-cued .tour-slide.is-active .tour-intro-osm,#tour.scene1-map-cued .tour-slide.is-active .tour-intro-osm-checkpoint,#tour.scene1-map-cued .tour-slide.is-active .tour-intro-route-outline,#tour.scene1-map-cued .tour-slide.is-active .tour-intro-route-path{opacity:1!important;transform:none!important;stroke-dashoffset:0!important}.tour-intro-osm-checkpoint>span{transform:rotate(-45deg) scale(1)!important;animation:none!important}.tour-intro-bike-image>img,.fun-person,.fun-arm,.mountain-back{animation:none!important}}
