/* The play board takes the full width. Stories live in the drawer underneath. */
.site-header{max-width:1920px;height:68px;padding:0 28px}
.brand{font-size:20px}.brand-symbol{width:38px;height:38px;border-radius:12px}.brand-symbol .icon{width:24px;height:24px}
main{max-width:1920px;padding:18px 26px 20px}
.trip-heading{margin-bottom:17px;gap:20px}.breadcrumb{margin-bottom:3px;font-size:12px}.city-pill{padding:3px 10px}
h1{font-size:27px;line-height:1.4}.title-sun{font-size:28px}.trip-heading p{font-size:14px;margin-top:5px}
.ticket{padding:12px 17px}.ticket-code{font-size:26px}
.game-layout{display:block}.play-panel{border-radius:16px;box-shadow:0 5px 30px #254d4a09}
.game-toolbar{padding:10px 18px}.view-bar{padding:9px 16px;gap:14px}.view-help{margin-left:auto}
.focus-button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:8px 13px;background:#e5efec;border:1px solid #d6e5df;border-radius:8px;font-size:14px;white-space:nowrap;font-weight:600;color:#376d61}
.focus-button .icon{width:17px;height:17px}.focus-button[aria-pressed=true]{background:#d6e9df}
.scenes{grid-template-columns:1fr 1fr;gap:14px;padding:0 14px}.scene-frame{border-radius:9px}.scene-frame figcaption{padding:8px 13px}
.photo-label{font-size:14px}.photo-note{font-size:12px}.viewport{aspect-ratio:3/2!important;max-height:none!important}
.scenes.single{grid-template-columns:1fr;max-width:1250px;margin:0 auto;width:100%}
.scene-controls{padding:9px 17px;gap:14px}.zoom-controls{gap:9px}.zoom-controls .icon-button{width:34px;height:32px}
#zoom-level{font-size:13px;min-width:45px}.zoom-controls .text-button{font-size:14px}.drag-tip{font-size:13px;display:inline}
.motion-button{font-size:13px;padding:9px 12px;white-space:nowrap}.motion-button .icon{height:17px;width:17px}
.game-actions{padding:10px 17px;min-height:0}.game-actions p{font-size:13px}.hint-button{font-size:14px;padding:10px 15px}
.travel-drawer{margin:17px 0 0;padding:0;border:1px solid #d2e3e1;border-radius:12px;background:#f7fbf9}
.travel-drawer>summary{padding:14px 18px;font-size:14px;line-height:1.6;color:#57766c;gap:12px}.travel-drawer>summary>span{display:flex;align-items:center;gap:9px}.travel-drawer>summary .icon{width:18px;height:18px}.travel-drawer>summary .drawer-help{font-size:12px;color:#759288}.travel-drawer[open]>summary>span:first-child .icon{transform:none}
.travel-aside{padding:6px 16px 18px;display:grid;grid-template-columns:1fr 1.35fr 1fr;align-items:stretch;gap:18px}
.discovery-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.discovery-note:before{display:none}.guide-note,.discovery-note{box-shadow:none}
.route-teaser{padding:17px;background:#e9f1f2;border-radius:13px;align-self:stretch}.route-teaser b{font-size:14px;line-height:1.8}.route-teaser small{font-size:12px;line-height:1.8}
.page-footer{padding:17px 3px 0}
.start-cover{inset:0 14px;background:#26483f20;backdrop-filter:blur(1.5px)}.start-postcard{padding:22px 29px}.start-postcard h2{font-size:25px}.start-postcard>small{font-size:11px}
/* The canvas carries actual moving pixels from the foliage, plus steam and falling leaves. */
.animated-scene-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}
.paired-cursor{position:absolute;z-index:4;pointer-events:none;width:30px;height:30px;border:1.5px solid #fffdeb;border-radius:50%;box-shadow:0 0 0 1px #294f4980;opacity:0;transform:translate(-50%,-50%) scale(var(--cursor-scale,1));transform-origin:center;transition:opacity .1s}
.paired-cursor:before,.paired-cursor:after{content:"";position:absolute;left:50%;top:50%;background:#fffdeb;box-shadow:0 0 1px #244b47}.paired-cursor:before{width:9px;height:1px;transform:translate(-50%,-50%)}.paired-cursor:after{width:1px;height:9px;transform:translate(-50%,-50%)}.paired-cursor.visible{opacity:.85}
.found-ring,.hint-region,.miss-mark{z-index:3}.keyboard-target{z-index:5}.difference-patch{transition:opacity .95s ease}
.discovery-cheer{position:absolute;z-index:5;pointer-events:none;padding:8px 14px;border-radius:20px;background:#fffcec;color:#307962;box-shadow:0 4px 18px #2d514c30;font-size:14px;font-weight:700;white-space:nowrap;animation:cheer-rise 1.25s both}
@keyframes cheer-rise{0%{opacity:0;transform:translate(-50%,5px) scale(.8)}20%{opacity:1;transform:translate(-50%,-4px) scale(1.05)}70%{opacity:1;transform:translate(-50%,-12px) scale(1)}100%{opacity:0;transform:translate(-50%,-24px) scale(.95)}}
/* This is an in-page large board, so no browser fullscreen permission is necessary. */
body.focus-view{overflow:hidden}.focus-view .play-panel{position:fixed;inset:10px;z-index:20;overflow-y:auto;border-radius:12px;display:flex;flex-direction:column;box-shadow:0 0 0 100vmax #dcebef}
.focus-view .view-bar{position:sticky;top:0;z-index:7;background:#fffefb;border-bottom:1px solid #e1e9e2}
.focus-view .scenes{width:100%;max-width:calc((100dvh - 270px)*3 + 44px);margin:auto;flex-shrink:0;justify-content:center;grid-template-columns:repeat(2,minmax(0,1fr))}
.focus-view .scenes.single{grid-template-columns:1fr;max-width:calc((100dvh - 270px)*1.5 + 30px)}
.focus-view .game-actions,.focus-view .scene-controls,.focus-view .game-toolbar{flex-shrink:0}
.focus-view .game-toolbar{padding:8px 16px}.focus-view .scene-controls{margin-top:auto}
@media(max-width:900px){.ticket{display:none}.brand-note{display:none}.site-header{padding:0 20px}.travel-aside{grid-template-columns:1fr 1fr}.route-teaser{grid-column:1/-1}.scenes{gap:10px;padding:0 10px}.photo-note{display:none}.trip-heading p{max-width:none}.focus-view .scenes{grid-template-columns:1fr 1fr}.focus-view .scenes.single{grid-template-columns:1fr}.focus-view .viewport{max-height:none!important}.start-cover{inset:0 10px}.start-postcard{max-width:320px;padding:20px 25px}.start-postcard h2{font-size:24px}.start-postcard>p:not(.start-eyebrow){font-size:13px}.play-options{margin:12px 0}.scenes:has(.start-cover:not([hidden])){min-height:355px}}
@media(max-width:640px){.site-header{height:59px;padding:0 14px}.brand{font-size:18px}.brand-symbol{width:34px;height:34px}.site-header nav{gap:4px}main{padding:13px 9px 15px}.trip-heading{padding:0 5px;margin-bottom:13px}.breadcrumb{font-size:11px}.trip-heading h1{font-size:23px}.trip-heading p{font-size:12px;line-height:1.7;margin-top:4px}.title-sun{font-size:25px}.game-toolbar{padding:9px 12px}.progress-dots{display:none}.view-bar{padding:8px 9px;gap:6px;flex-wrap:wrap}.view-help{display:none}.segmented{flex:1}.segmented button{flex:1;padding:7px 8px;font-size:12px}.focus-button{padding:7px 9px;font-size:12px;gap:4px}.focus-button .icon{width:15px}.scenes{grid-template-columns:1fr;padding:0 6px;gap:10px}.scene-frame figcaption{padding:6px 10px}.photo-label{font-size:12px}.photo-note{display:inline;font-size:10px}.scene-controls{padding:9px 10px;gap:6px}.zoom-controls{gap:4px}.zoom-controls .icon-button{width:31px;height:31px}.drag-tip{display:none}.motion-button{font-size:12px;padding:8px}.motion-button .icon{height:14px;width:14px}.game-actions{padding:9px 11px;gap:10px}.game-actions p{font-size:12px}.hint-button{padding:10px;font-size:12px}.travel-aside{grid-template-columns:1fr;padding:0 10px 12px}.travel-drawer>summary{padding:12px;font-size:13px}.travel-drawer .drawer-help{font-size:11px}.start-cover{inset:0 6px}.start-postcard{padding:24px}.start-postcard>small{font-size:10px}.focus-view .play-panel{inset:0;border-radius:0}.focus-view .scenes{grid-template-columns:1fr;margin:0;flex:0 0 auto;padding:0 6px;max-width:none}.focus-view .scenes.single{grid-template-columns:1fr;max-width:none}.focus-view .scene-controls{margin-top:0;position:sticky;bottom:0;background:#fffefbf5;z-index:7}.focus-view .game-toolbar{padding:8px 13px}.focus-view .start-cover{align-items:flex-start;padding-top:35px}.discovery-cheer{font-size:12px;padding:6px 10px}}
@media(prefers-reduced-motion:reduce){.animated-scene-canvas{display:none}.discovery-cheer{animation:none;transform:translate(-50%,-12px)}.difference-patch{transition:none}}
