.tour{--tour-top:3rem;height:calc(100vh - var(--tour-top));height:calc(100svh - var(--tour-top));height:calc(100dvh - var(--tour-top));background:#02070c;position:relative}.tour-stage{touch-action:pan-y;height:100%;position:relative;overflow:hidden}html.tour-held,html.tour-held body{overscroll-behavior:none;touch-action:none;overflow:hidden}html.tour-held{scrollbar-gutter:stable}.tour-stage[data-locked=true]{touch-action:none;overscroll-behavior:none}.tour-map,.tour-poster,.tour-vignette,.tour-stage .tour-map{position:absolute;inset:0}.tour-map{opacity:0;transition:opacity 1.1s var(--pres-ease)}.tour-map[data-ready=true]{opacity:1}.tour-map .maplibregl-canvas{outline:none}.tour-poster{background:url(/assets/tour/poster-mobile.webp) top/cover no-repeat,radial-gradient(70% 55% at 50% 118%,#5eead459,#0000 62%),radial-gradient(circle at 50% 135%,#0d4b5c 0,#061a24 38%,#02070c 70%);transition:opacity .9s}@media (min-width:640px){.tour-poster{background-image:url(/assets/tour/poster-desktop.webp),radial-gradient(70% 55% at 50% 118%,#5eead459,#0000 62%),radial-gradient(circle at 50% 135%,#0d4b5c 0,#061a24 38%,#02070c 70%);background-position:50%}}.tour-poster[data-ready=true]{opacity:0;pointer-events:none}.tour-vignette{pointer-events:none;background:linear-gradient(#02070c8c 0%,#0000 22%),linear-gradient(#0000 54%,#02070cd9 100%),radial-gradient(120% 90% at 50% 45%,#0000 55%,#02070c8c 100%)}.tour-loading{white-space:nowrap;letter-spacing:.25em;text-transform:uppercase;color:var(--pres-mute);opacity:0;pointer-events:none;font-size:.75rem;transition:opacity .4s;position:absolute;top:4.75rem;left:50%;transform:translate(-50%)}.tour-loading[data-visible=true]{opacity:1;animation:1.8s ease-in-out infinite tour-pulse}.tour-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite tour-spin}@keyframes tour-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.tour-spinner{animation-duration:2.4s}}@keyframes tour-pulse{50%{opacity:.45}}.tour-ui{padding:3.5rem .75rem max(.75rem, env(safe-area-inset-bottom));pointer-events:none;flex-direction:column;justify-content:flex-end;gap:.6rem;display:flex;position:absolute;inset:0}.tour-cards{pointer-events:none;min-height:0;display:grid;overflow-y:auto}.tour-card{border:1px solid var(--pres-line);-webkit-backdrop-filter:blur(16px)saturate(1.2);backdrop-filter:blur(16px)saturate(1.2);opacity:0;visibility:hidden;max-width:30rem;transition:opacity .38s var(--pres-ease), transform .38s var(--pres-ease), visibility 0s linear .38s;background:#040c129e;border-radius:1.25rem;grid-area:1/1;align-self:end;padding:.8rem .9rem .9rem;transform:translateY(16px);box-shadow:0 24px 60px -24px #000c}.tour-card[data-active=true]{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .7s var(--pres-ease) .35s, transform .7s var(--pres-ease) .35s, visibility 0s;transform:none}.tour-card[data-hero=true]{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-color:#0000;max-width:44rem;padding-left:.5rem}.tour-kicker{letter-spacing:.24em;text-transform:uppercase;color:var(--pres-accent);font-size:.7rem}.tour-title{text-wrap:balance;margin-top:.5rem;font-size:1.45rem;font-weight:600;line-height:1.08}.tour-card[data-hero=true] .tour-title{letter-spacing:-.02em;text-shadow:0 2px 40px #0009;font-size:clamp(2.3rem,9vw,4.8rem);line-height:1.02}.tour-stat{color:var(--pres-warm);align-items:baseline;gap:.5rem;margin-top:.4rem;font-size:2.6rem;font-weight:600;line-height:1;display:flex}.tour-stat span:last-child{color:var(--pres-mute);font-size:1rem;font-weight:400}.tour-body{color:#c9dcd6;margin-top:.5rem;font-size:.84rem;line-height:1.5}.tour-card[data-hero=true] .tour-body{text-shadow:0 1px 20px #000000b3;max-width:34rem;font-size:1.05rem}.tour-note{color:var(--pres-mute);margin-top:.7rem;font-size:.72rem;line-height:1.4}.tour-actions{flex-wrap:wrap;align-items:center;gap:.9rem 1.1rem;margin-top:1.4rem;display:flex}.tour-cta{background:var(--pres-accent);color:#04120f;border-radius:999px;align-items:center;gap:.5rem;min-height:2.75rem;padding:0 1.4rem;font-weight:600;animation:2.6s ease-out infinite tour-glow;display:inline-flex;box-shadow:0 0 #5eead499}.tour-cta svg{animation:1.8s ease-in-out infinite tour-bob}@keyframes tour-glow{70%,to{box-shadow:0 0 0 16px #5eead400}}@keyframes tour-bob{50%{transform:translateY(3px)}}.tour-provisional{color:var(--pres-mute);font-size:.72rem}.tour-chips{flex-wrap:wrap;gap:.45rem;margin-top:.9rem;display:flex}.tour-chip{min-height:2.5rem;color:var(--pres-ink);border:1px solid #ffffff2e;border-radius:999px;align-items:center;gap:.45rem;padding:0 .85rem;font-size:.8rem;display:inline-flex}.tour-chip:before{content:"";background:var(--zone);border-radius:50%;width:.55rem;height:.55rem}.tour-chip[aria-pressed=true]{border-color:var(--zone);background:color-mix(in srgb, var(--zone) 22%, transparent)}.tour-controls{pointer-events:auto;flex-direction:column;flex:none;gap:.5rem;max-width:30rem;display:flex}.tour-hint{color:var(--pres-accent);background:#040c129e;border-radius:999px;align-self:flex-start;padding:.25rem .7rem;font-size:.72rem;animation:2.4s ease-in-out infinite tour-pulse}.tour-progress{align-items:center;gap:.75rem;display:flex}.tour-count{font-variant-numeric:tabular-nums;letter-spacing:.08em;color:var(--pres-ink);font-size:.8rem}.tour-restart{width:2.75rem;height:2.75rem;color:var(--pres-ink);opacity:.6;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;margin:-1rem -.75rem -1rem -1rem;padding:0;transition:opacity .15s ease-out;display:inline-flex}.tour-restart:hover,.tour-restart:focus-visible{opacity:1}.tour-bar{background:#fff3;border-radius:2px;flex:1;height:3px;overflow:hidden}.tour-bar>span{background:var(--pres-accent);transform-origin:0;height:100%;transition:transform .5s var(--pres-ease);display:block}.tour-buttons{gap:.6rem;display:flex}.tour-nav{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);min-height:2.75rem;color:var(--pres-ink);background:#040c129e;border:1px solid #ffffff38;border-radius:999px;flex:1;justify-content:center;align-items:center;gap:.4rem;padding:0 1rem;font-weight:600;display:inline-flex}.tour-nav-primary{background:var(--pres-accent);color:#04120f;border-color:#0000;flex:1.4}.tour-cta:disabled{opacity:.6;cursor:default}.tour-nav:disabled{opacity:.35}.tour-skip{z-index:2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#e8f1eed9;background:#040c1280;border:1px solid #ffffff38;border-radius:999px;align-items:center;min-height:2.75rem;padding:0 1rem;font-size:.8rem;display:inline-flex;position:absolute;top:.75rem;right:.75rem}.tour-credit{color:#e8f1ee73;pointer-events:none;max-width:calc(100% - 9.5rem);font-size:.55rem;position:absolute;top:.75rem;left:.75rem}.tm-root{pointer-events:none;width:0;height:0}.tm{opacity:0;width:0;height:0;transition:opacity .5s var(--pres-ease), transform .5s var(--pres-ease);color:#fff;text-shadow:0 1px 3px #000000f2,0 0 14px #000c;font-size:.72rem;position:relative;transform:translateY(8px)scale(.92)}.tm-root[data-on=true] .tm{opacity:1;transform:none}.tm-dot{background:#fff;border-radius:50%;width:10px;height:10px;position:absolute;top:-5px;left:-5px;box-shadow:0 0 0 3px #5eead459}.tm-dot:after{content:"";border:1px solid #5eead4e6;border-radius:50%;animation:2.2s ease-out infinite tm-ping;position:absolute;inset:-3px}@keyframes tm-ping{to{opacity:0;transform:scale(3.2)}}.tm-name,.tm-sub{white-space:nowrap;position:absolute;left:14px}.tm-name{letter-spacing:.02em;font-weight:600;top:-9px}.tm-sub{color:#bfeee2;font-size:.66rem;top:5px}.tm-city .tm-dot{background:#7dd3fc;box-shadow:0 0 0 3px #7dd3fc4d}.tm-small .tm-name{opacity:.85;font-weight:500}.tm-site .tm-dot{background:#d9f99d;width:14px;height:14px;top:-7px;left:-7px;box-shadow:0 0 24px 6px #d9f99d99}.tm-site .tm-name{color:#ecfccb;font-size:.8rem;top:-10px;left:16px}.tm-hub .tm-dot{background:#fcd34d;box-shadow:0 0 0 3px #fcd34d4d}.tm-hub .tm-sub{color:#fde68a}.tm-poi .tm-dot{background:#fda4af;box-shadow:0 0 0 3px #fda4af4d}.tm-water .tm-dot{background:#38bdf8;box-shadow:0 0 0 3px #38bdf859}.tm-scale .tm-dot{display:none}.tm-scale .tm-name,.tm-scale .tm-sub{text-align:center;color:#f5d0fe;left:0;transform:translate(-50%)}.tm-scale .tm-name{font-weight:600;top:-16px}.tm-scale .tm-name,.tm-scale .tm-sub{text-shadow:0 0 3px #000,0 0 10px #000000e6}.tm-scale.tm-scale-site .tm-name,.tm-scale.tm-scale-site .tm-sub{color:#d9f99d}.tm-scale.tm-scale-site .tm-name{color:#ecfccb}.tm-zone .tm-dot{background:var(--zone);box-shadow:0 0 0 3px color-mix(in srgb, var(--zone) 35%, transparent)}.tm-zone .tm-name{color:color-mix(in srgb, var(--zone) 65%, white);text-shadow:0 0 3px #000,0 0 9px #000000e6;font-size:.7rem;font-weight:600;top:12px;left:0;transform:translate(-50%)}.tm-drone .tm-dot{background:#f0abfc;width:14px;height:14px;top:-7px;left:-7px;box-shadow:0 0 22px 6px #f0abfcb3}.tm-drone .tm-name{color:#f5d0fe}.tm-flip .tm-name,.tm-flip .tm-sub{text-align:right;left:auto;right:14px}.tm-region,.tm-dist{--c:#7dd3fc;border:1px solid color-mix(in srgb, var(--c) 70%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);width:max-content;height:auto;text-shadow:none;background:#02070cbd;align-items:center;display:grid;translate:-50% -50%;box-shadow:0 6px 22px #00000080}.tm-region .tm-dot,.tm-dist .tm-dot,.tm-region .tm-name,.tm-region .tm-sub,.tm-dist .tm-name{position:static}.tm-region .tm-dot,.tm-dist .tm-dot{display:none}.tm-region{border-radius:.8rem;grid-template-columns:auto auto;column-gap:.45rem;padding:.32rem .7rem .32rem .5rem}.tm-region .tm-icon{fill:none;width:1.35rem;height:1.35rem;stroke:var(--c);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;grid-row:span 2}.tm-region .tm-name{white-space:nowrap;grid-column:2;max-width:none;font-size:.8rem;font-weight:600}.tm-region .tm-sub{color:var(--c);white-space:nowrap;grid-column:2;font-size:.68rem;display:block}.tm-region .tm-sub[hidden]{display:none}.tm-region-sv{--c:#7dd3fc}.tm-region-cv{--c:#bef264}.tm-region-i5{--c:#fcd34d;border-radius:999px;padding:.22rem .6rem .22rem .45rem}.tm-region-i5 .tm-icon{grid-row:auto;width:1.05rem;height:1.05rem}.tm-dist{border-radius:999px;padding:.18rem .55rem}.tm-dist .tm-name{white-space:nowrap;max-width:none;color:var(--c);font-size:.72rem;font-weight:600}.tm-dist-route{--c:#f5d0fe}@media (max-width:767px){.tm-sub{display:none}.tm-name{white-space:normal;width:max-content;max-width:9rem}}@media (max-height:640px){.tour-card .tour-note{display:none}.tour-card{padding:.65rem .8rem .75rem}.tour-ui{gap:.45rem;padding-top:3.25rem}.tour-title{margin-top:.3rem;font-size:1.25rem}.tour-body{margin-top:.35rem;font-size:.78rem;line-height:1.4}}@media (min-width:768px){.tm-region .tm-name{font-size:1rem}.tm-region .tm-sub,.tm-dist .tm-name{font-size:.8rem}.tm-region .tm-icon{width:1.6rem;height:1.6rem}.tour-ui{align-items:flex-start;gap:.9rem;padding:5rem 2.5rem 2rem}.tour-cards{width:100%}.tour-card{width:26rem;padding:1.4rem 1.5rem 1.5rem}.tour-card[data-hero=true]{width:auto;margin-bottom:8vh;padding-left:0}.tour-title{font-size:2rem}.tour-stat{font-size:3.4rem}.tour-controls{width:26rem}.tour-skip{top:1rem;right:1.5rem}.tour-credit{text-align:right;max-width:60%;font-size:.65rem;inset:auto 1.5rem .7rem auto}.tour-body{font-size:.95rem}.tm{font-size:.8rem}}@media (prefers-reduced-motion:reduce){.tour-card,.tour-card[data-active=true]{transition:opacity .2s;transform:none}.tour-cta,.tour-cta svg,.tm-dot:after,.tour-hint,.tour-loading[data-visible=true]{animation:none}.tm{transform:none}}@media print{.tour{display:none}}
.pres{--pres-ease:cubic-bezier(.23, 1, .32, 1);--pres-bg:#060d12;--pres-ink:#e8f1ee;--pres-mute:#8fa8a2;--pres-line:#8fe8cd29;--pres-accent:#5eead4;--pres-warm:#d9f99d;background:radial-gradient(1200px 600px at 80% -10%, #5eead41f, transparent 60%), radial-gradient(900px 500px at -10% 30%, #d9f99d12, transparent 60%), var(--pres-bg);color:var(--pres-ink)}.pres [data-reveal]{opacity:0;transition:opacity .4s var(--pres-ease), transform .4s var(--pres-ease);transition-delay:calc(var(--i,0) * 60ms);transform:translateY(12px)}.pres [data-reveal][data-in=true]{opacity:1;transform:none}.pres .pres-press{transition:transform .16s var(--pres-ease), background-color .16s ease, border-color .16s ease}.pres .pres-press:active{transform:scale(.97)}@media (hover:hover) and (pointer:fine){.pres .pres-card:hover{border-color:#5eead473}}.pres .pres-card{transition:border-color .2s}.pres .pres-zoom{transition:transform .7s var(--pres-ease)}.pres .pres-grid{background-image:linear-gradient(var(--pres-line) 1px, transparent 1px), linear-gradient(90deg, var(--pres-line) 1px, transparent 1px);background-size:40px 40px}@media (prefers-reduced-motion:reduce){.pres [data-reveal]{transition:opacity .2s;transform:none}.pres .pres-zoom{transition:opacity .2s}}@media print{.pres-noprint{display:none!important}}.pres .energy-bar{transform-origin:0;transition:transform 1.4s var(--pres-ease) .3s;background:linear-gradient(90deg,#5eead4,#d9f99d);transform:scaleX(0)}.pres .energy-bar[data-estimate=true]{background:repeating-linear-gradient(115deg,#d9f99dd9 0 10px,#d9f99d59 10px 20px)}.pres [data-in=true] .energy-bar{transform:none}@media (prefers-reduced-motion:reduce){.pres .energy-bar{transition:none;transform:none}}.pres .pres-photo{transition:transform .9s var(--pres-ease)}@media (hover:hover) and (pointer:fine){.pres .pres-card:hover .pres-photo{transform:scale(1.05)}}.pres section[id]:not(.tour){scroll-margin-top:calc(var(--header-h,3.1rem) + 1rem - 3.5rem)}
