:root{--paper:#e8e6df;--paper-deep:#d8d3c6;--ink:#26344f;--ink-soft:#55607a;--pin:#c0362c;--eucalyptus:#6e8b74;--tape:#d9b65c;--hand:"Reenie Beanie", "Bradley Hand", cursive;--book:"Alegreya", Georgia, serif;--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .35 0 0 0 0 .32 0 0 0 0 .27 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--frame:clamp(10px, 2.4vw, 26px)}*,:before,:after{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--paper) var(--grain);color:var(--ink);font-family:var(--book);-webkit-font-smoothing:antialiased;font-size:1.0625rem;line-height:1.5;overflow:hidden}.defs{width:0;height:0;position:absolute}:focus-visible{outline:2px dashed var(--pin);outline-offset:3px}button{font:inherit;color:inherit}.sheet{isolation:isolate;height:100dvh;position:relative}.map{background:var(--paper-deep);z-index:0;position:absolute;inset:0}.map .leaflet-tile-pane{filter:saturate(.74)sepia(.1)contrast(.95)}.grain{z-index:1;pointer-events:none;background-image:var(--grain);mix-blend-mode:multiply;opacity:.55;position:absolute;inset:0}.frame{z-index:2;pointer-events:none;width:100%;height:100%;fill:var(--paper);filter:drop-shadow(0 0 1.5px #50463273);position:absolute;inset:0}.sheet-full{width:100%;height:100%}.sheet-window{x:var(--frame);y:var(--frame);width:calc(100% - 2 * var(--frame));height:calc(100% - 2 * var(--frame))}.title{z-index:3;top:calc(var(--frame) + 18px);left:calc(var(--frame) + 22px);pointer-events:none;background:var(--paper) var(--grain);max-width:21rem;padding:.9rem 1.2rem .9rem 1.1rem;position:absolute;transform:rotate(-.6deg);box-shadow:0 1px #5046322e,2px 6px 14px -6px #3c321e66}.title h1{font-family:var(--hand);color:var(--ink);transform-origin:0 100%;margin:0;font-size:clamp(2.6rem,6vw,4.4rem);font-weight:400;line-height:.9;transform:rotate(-3deg)}.title p{color:var(--ink-soft);max-width:17rem;margin:.6rem 0 0;font-style:italic}.trip-start{pointer-events:auto;font-family:var(--hand);color:var(--pin);text-decoration:underline wavy color-mix(in srgb, var(--pin) 45%, transparent);text-underline-offset:5px;cursor:pointer;background:0 0;border:0;margin:.7rem 0 0;padding:.15rem .1rem;font-size:1.75rem;line-height:1;text-decoration-thickness:1px;transform:rotate(-2deg)}.trip-start:hover{color:var(--ink)}.trip-start[hidden]{display:none}.index{z-index:3;left:calc(var(--frame) + 16px);bottom:calc(var(--frame) + 16px);background:var(--paper) var(--grain);max-width:17rem;padding:.55rem 1rem .7rem;position:absolute;transform:rotate(.8deg);box-shadow:0 1px #5046322e,2px 6px 14px -6px #3c321e66}.index summary{font-family:var(--hand);cursor:pointer;font-size:1.75rem;line-height:1;list-style:none}.index summary::-webkit-details-marker{display:none}.index summary:after{content:" +";color:var(--ink-soft)}.index details[open] summary:after{content:" –"}.index ul{max-height:calc(100dvh - 2 * var(--frame) - 6rem);margin:.4rem 0 0;padding:0;list-style:none;overflow-y:auto}.index button{text-align:left;cursor:pointer;background:0 0;border:0;width:100%;padding:.2rem 0 .2rem 1.1rem;line-height:1.3;display:block;position:relative}.index button:before{content:"";background:var(--pin);opacity:.7;border-radius:48% 52% 45% 55%;width:.55rem;height:.55rem;position:absolute;top:.62em;left:0}.index button:hover{text-decoration:underline wavy color-mix(in srgb, var(--pin) 60%, transparent);text-underline-offset:4px}.region-label span{width:max-content;transform:translate(-50%, -50%) rotate(var(--tilt));font-family:var(--hand);color:color-mix(in srgb, var(--ink) 72%, transparent);text-shadow:0 0 3px var(--paper), 0 0 8px var(--paper);white-space:nowrap;pointer-events:none;font-size:1.55rem;line-height:1;display:block;position:relative}.region-label span:before,.pin-name:before{content:"";z-index:-1;background:var(--paper);filter:blur(7px);opacity:.75;border-radius:50%;position:absolute;inset:-.05em -.3em -.1em}.region-label.big span{letter-spacing:.12em;color:color-mix(in srgb, var(--ink) 45%, transparent);font-size:2.3rem}.place-pin{cursor:pointer}.place-pin svg{width:100%;height:100%;transform:rotate(var(--spin));filter:drop-shadow(0 2px 3px #281e1473);transition:transform .25s;overflow:visible}.place-pin .wash{fill:var(--pin);fill-opacity:.55}.place-pin .edge{fill:none;stroke:var(--pin);stroke-width:2.4px;stroke-opacity:.75}.place-pin .bloom{fill:#fff6e8;fill-opacity:.35}.place-pin:hover svg,.place-pin:focus-visible svg{transform:rotate(var(--spin)) scale(1.18)}.place-pin.is-hinted svg{transform:rotate(var(--spin)) scale(1.4)}.place-pin.is-hinted .wash{fill-opacity:.85}.pin-number{font-family:var(--hand);color:#fffaf0;text-shadow:0 0 2px #78140a99;white-space:nowrap;pointer-events:none;place-items:center;font-size:1.3rem;line-height:1;display:grid;position:absolute;inset:0}.place-pin.is-current svg{transform:rotate(var(--spin)) scale(1.35)}.place-pin.is-current .wash{fill-opacity:.85}.snap-pin.is-current .snap{outline:2px solid var(--pin);transform:rotate(0)scale(1.2)}.route{fill:none;stroke-linecap:round;stroke-linejoin:round}.route-ahead{stroke:var(--ink);stroke-opacity:.35;stroke-width:2px;stroke-dasharray:1 7}.route-walked{stroke:var(--pin);stroke-opacity:.7;stroke-width:2.5px;stroke-dasharray:9 6;filter:url(#wc-bleed)}.pin-name{width:max-content;max-width:14rem;font-family:var(--hand);color:var(--ink);text-shadow:0 0 2px var(--paper), 0 0 5px var(--paper);isolation:isolate;opacity:0;pointer-events:none;font-size:1.45rem;line-height:1;transition:opacity .2s;position:absolute;top:50%;left:34px;transform:translateY(-55%)rotate(-2deg)}.label-left .pin-name{left:auto;right:34px;transform:translateY(-55%)rotate(2deg)}.names-on .pin-name,.place-pin:hover .pin-name,.place-pin:focus-visible .pin-name,.place-pin.is-hinted .pin-name,.place-pin.is-current .pin-name{opacity:1;pointer-events:auto}.snap{width:46px;transform:rotate(var(--tilt));background:#fbfaf6;padding:4px 4px 10px;transition:transform .2s;display:block;box-shadow:0 1px 2px #281e144d,2px 5px 10px -3px #281e148c}.leaflet-container .leaflet-marker-pane .snap img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.snap-pin:hover .snap,.snap-pin:focus-visible .snap{transform:rotate(0)scale(1.12)}.card{z-index:4;top:calc(var(--frame) + 18px);right:calc(var(--frame) + 18px);width:min(22rem, calc(100% - 2 * var(--frame) - 36px));max-height:calc(100% - 2 * var(--frame) - 36px);background:var(--paper) var(--grain);padding:1.6rem 1.4rem 1.3rem;position:absolute;overflow-y:auto;transform:rotate(-.6deg);box-shadow:0 1px #50463226,3px 10px 24px -10px #32281480}.card[hidden]{display:none}.card.is-open{animation:.42s cubic-bezier(.2,.9,.3,1.15) card-drop}@keyframes card-drop{0%{opacity:0;transform:translateY(-14px)rotate(2.5deg)}}.card-close{width:2.75rem;height:2.75rem;font-family:var(--hand);color:var(--ink-soft);cursor:pointer;background:0 0;border:0;font-size:2.4rem;line-height:1;position:absolute;top:.3rem;right:.5rem}.card-close:hover{color:var(--pin)}.polaroid{transform:rotate(var(--tilt,-2deg));background:#fbfaf6;margin:.4rem auto .9rem;padding:10px 10px 34px;transition:transform .3s;position:relative;box-shadow:1px 4px 12px -4px #281e1473}.polaroid[hidden]{display:none}.polaroid img{object-fit:cover;background:var(--paper-deep);width:100%;max-height:55dvh;display:block}.tape{background:color-mix(in srgb, var(--tape) 62%, transparent);clip-path:polygon(3% 8%,0 30%,4% 52%,1% 78%,4% 100%,97% 94%,100% 70%,96% 46%,100% 22%,96% 0);mix-blend-mode:multiply;width:92px;height:26px;position:absolute;top:-12px;left:50%;transform:translate(-50%)rotate(-4deg)}.photo-count{font-family:var(--hand);color:var(--ink-soft);font-size:1.35rem;position:absolute;bottom:4px;right:12px}.photo-caption{box-sizing:border-box;width:0;min-width:100%;font-family:var(--hand);color:var(--ink);text-wrap:pretty;margin-top:8px;padding:0 3.6rem 0 2px;font-size:1.45rem;line-height:1.05;display:block}.photo-caption[hidden]{display:none}.photo-nav{justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.6rem;display:flex}.stop-label{color:var(--ink-soft);white-space:nowrap;font-size:.85rem;font-style:italic}.photo-nav[hidden]{display:none}.polaroid[hidden]+.photo-nav{margin-right:2.2rem}.photo-nav button{font-family:var(--hand);white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:.2rem .3rem;font-size:1.5rem;line-height:1}.photo-nav button:hover:not(:disabled){color:var(--pin)}.photo-nav button:disabled{opacity:.3;cursor:default}.card h2{margin:0 2rem .2rem 0;font-size:1.45rem;font-weight:500;line-height:1.2}.card p{margin:.3rem 0 0}.card-note{font-style:italic}.card-link{color:var(--ink);text-decoration-color:color-mix(in srgb, var(--ink) 40%, transparent);text-underline-offset:.15em}.card-link:hover{text-decoration-color:currentColor}.card-empty{color:var(--ink-soft);font-family:ui-monospace,monospace;font-size:.8rem}.card [hidden]{display:none}.enlarge{cursor:zoom-in;background:0 0;border:0;width:100%;padding:0;display:block}.lightbox{width:100vw;max-width:none;height:100dvh;max-height:none;color:var(--ink);background:0 0;border:0;place-items:center;margin:0;padding:0;display:grid}.lightbox:not([open]){display:none}.lightbox::backdrop{backdrop-filter:blur(3px)sepia(.3);background:#26344f8c}.lightbox[open] .lightbox-sheet{animation:.42s cubic-bezier(.2,.9,.3,1.15) card-drop}.lightbox-sheet{background:var(--paper) var(--grain);max-width:calc(100vw - 32px);padding:1.8rem 1.6rem 1rem;position:relative;transform:rotate(.4deg);box-shadow:4px 16px 40px -12px #140f05b3}.lightbox .polaroid{width:fit-content;margin:.4rem auto .8rem;padding:14px 14px 44px}.lightbox .polaroid img{object-fit:contain;width:auto;max-width:calc(100vw - 60px - 3.2rem);height:auto;max-height:calc(100dvh - 15rem)}.lightbox .photo-caption{margin-top:12px;font-size:1.75rem}.lightbox .photo-count{font-size:1.6rem;bottom:8px;right:16px}.lightbox .tape{width:120px;height:30px}.lightbox .photo-nav{align-items:center;margin:0}.lightbox-caption{text-align:center;margin:0}#lightbox-title{font-size:1.3rem;font-weight:500;line-height:1.2;display:block}.lightbox-close{width:2.75rem;height:2.75rem;font-family:var(--hand);color:var(--ink-soft);cursor:pointer;background:0 0;border:0;font-size:2.4rem;line-height:1;position:absolute;top:.2rem;right:.4rem}.lightbox-close:hover{color:var(--pin)}.leaflet-container{font-family:var(--book);background:var(--paper-deep)}.leaflet-bottom.leaflet-right{bottom:var(--frame);right:var(--frame)}.leaflet-control-zoom.leaflet-bar{border:0;margin:0 14px 30px 0;box-shadow:2px 5px 12px -6px #3c321e73}.leaflet-control-zoom a,.leaflet-control-zoom a:hover{background:var(--paper) var(--grain);width:38px;height:38px;color:var(--ink);line-height:36px;font-family:var(--hand);border-bottom-color:var(--paper-deep);font-size:1.9rem;font-weight:400}.leaflet-control-zoom a:hover{color:var(--pin)}.leaflet-control-attribution.leaflet-control{background:color-mix(in srgb, var(--paper) 80%, transparent);color:var(--ink-soft);margin:0 6px 4px 0;font-size:.68rem;font-style:italic}.leaflet-control-attribution a{color:var(--ink-soft)}@media (width<=640px){.title{max-width:calc(100% - 2 * var(--frame) - 32px);left:calc(var(--frame) + 14px);top:calc(var(--frame) + 12px)}.title h1{font-size:min(2.6rem, (100vw - 2 * var(--frame) - 32px - 2.3rem) / 8.3)}.title p{font-size:.95rem}.title,.index{transition:opacity .2s,visibility .2s}.sheet:has(.card:not([hidden])) :is(.title,.index){opacity:0;visibility:hidden}.leaflet-control-zoom{display:none}.leaflet-control-attribution.leaflet-control{max-width:calc(100vw - 2 * var(--frame) - 12px);font-size:.6rem}.index{left:calc(var(--frame) + 10px);bottom:calc(var(--frame) + 40px);max-width:calc(100% - 2 * var(--frame) - 90px)}.card{top:auto;bottom:calc(var(--frame) + 10px);right:calc(var(--frame) + 10px);left:calc(var(--frame) + 10px);width:auto;max-height:72dvh}.polaroid img{max-height:32dvh}.lightbox-sheet{padding:1.6rem .8rem .6rem}.lightbox .polaroid img{max-width:calc(100vw - 60px - 1.6rem);max-height:calc(100dvh - 14rem)}.lightbox .photo-nav button{font-size:1.3rem}}@media (height<=500px) and (width>=641px){.title{top:calc(var(--frame) + 10px);padding:.6rem .9rem .6rem .8rem}.title h1{font-size:2.4rem}.title p{font-size:.9rem}.index{bottom:calc(var(--frame) + 10px)}.card{top:calc(var(--frame) + 10px);right:calc(var(--frame) + 10px);max-height:calc(100% - 2 * var(--frame) - 20px);padding:1.1rem 1.2rem 1rem}.polaroid img{max-height:42dvh}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
