@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--ink:#223b3b;--muted:#718380;--line:#dce6e2;--accent:#426c60;--serif:Georgia,'Times New Roman',serif;--font:'DM Sans',-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font);color:var(--ink);background:#f2f6f4;font-synthesis:none}*{box-sizing:border-box}body{margin:0;font-size:16px}body:has(dialog[open]){overflow:hidden}button,input,textarea,select{font:inherit}button{cursor:pointer;border:0;background:none;color:inherit;transition:background .2s,transform .2s,box-shadow .2s}button:hover{transform:translateY(-1px)}button:disabled{opacity:.4;cursor:not-allowed;transform:none}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #649891;outline-offset:4px}input:focus,textarea:focus,select:focus{outline:3px solid #acc8bf80;border-color:#92b7ab}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}img{display:block;width:100%;object-fit:cover}.ambient{position:fixed;inset:0;background:radial-gradient(ellipse at 80% 5%,#d6e9e57d,transparent 50%),radial-gradient(ellipse at 5% 60%,#e0e7dd60,transparent 55%);z-index:-1}.glass{background:linear-gradient(130deg,#ffffffd9,#ffffff70 65%,#ffffffb5);border:1px solid #ffffffde;backdrop-filter:blur(26px) saturate(160%);-webkit-backdrop-filter:blur(26px) saturate(160%);box-shadow:inset 0 1px 1px #fff,inset 0 -1px 1px #ffffff75,0 8px 32px #294d4210,0 1px 3px #294d4210}.site-nav{height:86px;max-width:1520px;padding:0 5%;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-family:Manrope,sans-serif;font-size:31px;font-weight:800;letter-spacing:-1.8px;display:flex;align-items:center;gap:8px}.brand>span:last-child{margin-left:-7px;color:#7e9f8e}.brand-icon{font-size:32px;line-height:30px;width:33px;height:33px;border-radius:11px;background:#2e5350;color:white;transform:rotate(-22deg);text-align:center;letter-spacing:0}.desktop-nav{display:flex;border-radius:30px;padding:4px;gap:5px}.desktop-nav button{padding:10px 24px;border-radius:24px;font-size:14px;color:#7b8c86}.desktop-nav .active{background:#fff8;box-shadow:inset 0 1px white,0 2px 8px #28453610;color:var(--ink)}.nav-actions{display:flex;align-items:center;gap:19px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:25px;padding:12px 19px;font-size:14px;font-weight:500;border:1px solid #fff;box-shadow:inset 0 1px #fff,0 4px 15px #1f4d3710;background:#ffffff91;white-space:nowrap}.button.dark{background:linear-gradient(135deg,#4b7367e8,#294d42f5);border:1px solid #618778aa;box-shadow:inset 0 1px #ffffff80,inset 0 -1px #183f3380,0 5px 16px #26463722;color:white}.avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(140deg,#ddcbb3,#869a8c);color:white;border:2px solid white;font-family:var(--serif);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.icon-button{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0}.eyebrow{text-transform:uppercase;letter-spacing:1.7px;font-size:10px;font-weight:600;color:#748b81}.muted{color:var(--muted)}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,sans-serif;font-weight:500}em{font-family:var(--serif);font-weight:400}#journey{max-width:1420px;margin:auto;padding:0 4% 55px}.cover{height:315px;border-radius:26px;position:relative;overflow:hidden;background:#bdd0ca}.cover>img{height:100%;object-position:center 58%}.cover:after{content:'';position:absolute;inset:0;background:linear-gradient(#0e272026,transparent 35%,#09282163);pointer-events:none}.cover-top,.cover-bottom{position:absolute;left:24px;right:24px;display:flex;justify-content:space-between;align-items:center;z-index:1}.cover-top{top:20px}.cover-bottom{bottom:22px}.cover .glass{background:linear-gradient(135deg,#ffffff4a,#ffffff16);border-color:#ffffff80;color:white;box-shadow:inset 0 1px 1px #ffffff9a,0 3px 20px #061e1830;text-shadow:0 1px 6px #0004}.cover-back{display:flex;gap:8px;align-items:center;border-radius:24px;padding:10px 15px;font-size:13px}.cover-place{font-size:13px;display:flex;align-items:center;gap:6px}.cover-place svg{width:16px}.cover-photos{font-size:12px;border-radius:24px;display:flex;gap:8px;align-items:center;padding:11px 14px}.cover-sticker{position:absolute;right:39px;top:83px;z-index:1;transform:rotate(7deg);border:1px solid #ffffff8c;background:#ffffff26;backdrop-filter:blur(18px);color:#fff;padding:15px 20px 17px;border-radius:20px;box-shadow:inset 0 1px #fff9,0 10px 30px #132d2a24;font-family:var(--serif);font-style:italic;font-size:21px;line-height:1.2}.cover-sticker span{font-family:var(--font);display:block;font-size:8px;font-style:normal;letter-spacing:2px;margin-bottom:7px}.journey-heading{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:31px 5px 28px}.journey-heading h1{font-size:clamp(30px,3.1vw,43px);letter-spacing:-1.5px;line-height:1.2;margin:9px 0 13px}.journey-heading h1 em{color:#597969}.journey-meta{display:flex;align-items:center;gap:11px;font-size:12px;color:#7d8b82}.journey-meta .avatar{width:23px;height:23px;font-size:11px}.journey-meta strong{font-weight:500;color:#4f6860}.meta-dot{width:3px;height:3px;background:#a7b5ac;border-radius:50%}.heading-actions{display:flex;gap:10px;align-items:center}.journey-caption{max-width:770px;font-family:var(--serif);font-size:19px;line-height:1.7;color:#708276;margin:0 5px 28px}.view-toolbar{display:flex;align-items:center;justify-content:space-between;padding:19px 4px;border-top:1px solid #dbe5df;gap:14px}.tabs{display:flex;align-items:center;gap:6px}.tabs button{font-size:14px;padding:9px 15px;border-radius:24px;color:#7b8d81;display:flex;align-items:center;gap:7px}.tabs .active{color:#3b6150;background:#e3ece4;border:1px solid #fff;box-shadow:inset 0 1px #fff,0 2px 6px #32502b07}.tabs svg{width:16px}.small-action{display:flex;align-items:center;gap:6px;font-size:13px;color:#6e8375;padding:9px 0}.small-action svg{width:16px}.story-layout{display:grid;grid-template-columns:minmax(0,1.16fr) minmax(0,.95fr);gap:36px;align-items:start}.chapter-list{position:relative}.chapter-list:before{content:'';position:absolute;top:25px;bottom:55px;left:15px;width:1px;background:linear-gradient(#c1d3c5,#dfe7de)}.chapter{position:relative;padding-left:48px;margin-bottom:35px}.chapter-step{position:absolute;left:0;top:4px;width:31px;height:31px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:11px;font-weight:500;z-index:1}.chapter:first-child .chapter-step{background:linear-gradient(135deg,#628477,#315d4c);color:white;border-color:#96b1a1}.chapter-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px;gap:10px}.chapter-head h2{font-size:23px;letter-spacing:-.7px;margin:5px 0}.chapter-head .eyebrow{font-size:9px;letter-spacing:1.4px}.chapter-head .day{font-size:11px;color:#8c9e8a}.open-circle{width:33px;height:33px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#80957e}.chapter-photos{display:grid;grid-template-columns:1fr;gap:6px;border-radius:20px;overflow:hidden;position:relative}.chapter-photos.multi{grid-template-columns:1.6fr 1fr}.chapter-photos button{padding:0;overflow:hidden;position:relative}.chapter-photos img{height:218px;transition:transform .6s}.chapter-photos button:hover img{transform:scale(1.035)}.photo-count{position:absolute;bottom:13px;right:13px;pointer-events:none;border-radius:21px;padding:8px 11px;font-size:11px;display:flex;gap:6px;align-items:center;color:#fff;background:linear-gradient(135deg,#ffffff70,#ffffff1c);border:1px solid #ffffff88;backdrop-filter:blur(16px);text-shadow:0 1px 8px #0005;box-shadow:inset 0 1px #ffffff75}.photo-count svg{width:14px;height:14px}.chapter-note{position:relative;margin:12px 0;padding:17px 19px;border-radius:18px;font-family:var(--serif);font-size:16px;line-height:1.65;color:#5f7562;background:linear-gradient(120deg,#ffffffba,#ffffff3e);border:1px solid #fff}.quote-mark{font-family:var(--serif);font-size:35px;line-height:1;color:#a0b7a3;display:block;height:19px}.chapter-foot{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#8b9b87;gap:10px;padding:0 3px}.highlight{display:inline-flex;align-items:center;gap:5px;background:#e4ebdb95;color:#718564;border:1px solid #eff4e6;padding:6px 10px;border-radius:20px;font-size:11px}.add-note-inline{font-size:13px;color:#67866c;display:flex;gap:6px;align-items:center;padding:14px 1px}.map-column{position:sticky;top:20px}.section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-title h2{font-size:21px;letter-spacing:-.6px}.section-title .muted{font-size:12px}.map-shell{height:470px;position:relative;overflow:hidden;border-radius:24px;border:1px solid white;box-shadow:0 8px 30px #35503c0b,inset 0 1px white;background:#dce8e5}.route-map{height:100%;width:100%;background:#dce8e5;z-index:0}.map-toolbar{position:absolute;top:14px;left:14px;right:14px;display:flex;justify-content:space-between;gap:8px;z-index:500;pointer-events:none}.map-toolbar>*{pointer-events:auto}.map-pill{border-radius:24px;font-size:11px;padding:10px 12px;display:flex;gap:6px;align-items:center;background:#ffffffe0}.map-pill svg{width:14px;height:14px}.map-controls{position:absolute;right:15px;bottom:37px;display:flex;flex-direction:column;border-radius:19px;z-index:500;overflow:hidden;background:#ffffffb5}.map-controls button{width:37px;height:35px;display:flex;align-items:center;justify-content:center;font-size:21px}.map-controls button+button{border-top:1px solid #dae4df}.map-controls svg{width:17px}.map-caption{font-size:11px;color:#91a28d;text-align:center;margin:13px 0 20px}.route-summary{display:flex;gap:11px;align-items:center;border-radius:19px;padding:17px 19px}.route-summary>span{height:34px;width:34px;border-radius:12px;background:#dce9df;display:flex;align-items:center;justify-content:center;color:#719479}.route-summary p{font-size:13px;line-height:1.4}.route-summary small{font-size:11px;color:#91a38e;display:block;margin-top:5px}.route-summary button{margin-left:auto;color:#8ca18d}.route-marker{background:none;border:0}.pin-wrap{position:relative;display:flex;flex-direction:column;align-items:center;transform:translateY(-22px)}.photo-pin{width:49px;height:56px;padding:4px 4px 10px;border-radius:13px 13px 17px 17px;background:linear-gradient(#fff,#ecf5edce);border:1px solid white;box-shadow:0 3px 15px #34553e40,inset 0 1px white;backdrop-filter:blur(15px);position:relative}.photo-pin:after{content:'';position:absolute;bottom:-5px;left:20px;width:9px;height:9px;background:#e9f2e8;transform:rotate(45deg);border-right:1px solid white;border-bottom:1px solid white}.photo-pin img{width:39px;height:39px;border-radius:8px}.pin-badge{position:absolute;top:-7px;right:-6px;min-width:19px;height:19px;border-radius:12px;background:#fff;border:1px solid #dce9da;font-size:9px;color:#456647;display:flex;align-items:center;justify-content:center;padding:0 4px}.pin-label{white-space:nowrap;display:block;font-size:10px;font-weight:550;line-height:1.4;margin-top:9px;text-shadow:0 1px 3px white,0 0 5px white,0 0 5px white;color:#516b50}.pin-type{font-size:8px;letter-spacing:1px;font-weight:650;text-transform:uppercase;display:block;color:#749175}.route-marker.selected .photo-pin{outline:2px solid #618b69;outline-offset:2px}.leaflet-container{font-family:var(--font)}.leaflet-container .leaflet-control-attribution{font-size:8px;background:#ffffffa8}.leaflet-tile-pane{filter:saturate(.55) hue-rotate(4deg)}.leaflet-tooltip.note-tooltip{background:#fffffff0;border:1px solid #fff;border-radius:11px;box-shadow:0 4px 18px #34542d18;color:#5e7656;max-width:185px;white-space:normal;font-size:11px;padding:9px 12px}.leaflet-tooltip.note-tooltip:before{display:none}.location-reminder{display:flex;align-items:center;gap:15px;border-radius:20px;padding:17px;margin:0 0 24px;background:linear-gradient(130deg,#fffaf0ba,#fff7e860);border-color:#fff9ed}.location-reminder img{width:46px;height:48px;border-radius:10px}.location-reminder p{font-size:13px;line-height:1.45}.location-reminder small{display:block;font-size:11px;color:#9b9583;margin-top:4px}.location-reminder>button{margin-left:auto;white-space:nowrap;font-size:12px;color:#8f876a;padding:9px 13px;border:1px solid #eee4ce;border-radius:20px;background:#fff8}.empty-story{padding:35px 22px;text-align:center}.empty-story h2{font-size:22px;margin-bottom:12px}.empty-story p{color:var(--muted);font-size:14px;line-height:1.7;margin-bottom:20px}.page-footer{display:flex;align-items:center;justify-content:space-between;padding:30px 5px 0;border-top:1px solid #dde7e0;color:#93a58f;font-size:11px}.page-footer .brand{font-size:23px;color:#728a72}.mobile-dock{display:none}.map-view .story-layout{grid-template-columns:1fr}.map-view .chapter-list{display:none}.map-view .map-column{position:static}.map-view .map-shell{height:620px}.map-view .map-column .section-title{max-width:none}.map-view .map-caption{text-align:left}.map-view .route-summary{max-width:450px}.map-view .journey-caption{display:none}
/* Glass sheets stay in one scroll container, with actions always within reach. */
dialog{color:var(--ink);padding:0;overflow:hidden}dialog::backdrop{background:#183a354d;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}.sheet{border-radius:30px;max-width:660px;width:calc(100% - 32px);max-height:88dvh;background:linear-gradient(130deg,#f9fdf8ed,#eff8efe0);box-shadow:inset 0 1px white,0 25px 100px #0b352947;margin:auto}.sheet-scroll{overflow:auto;max-height:88dvh;padding-bottom:24px;overscroll-behavior:contain}.sheet-hero{height:238px;position:relative;overflow:hidden}.sheet-hero>img{height:100%}.sheet-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(#193b2620,transparent 45%,#11291c80);pointer-events:none}.sheet-grabber{position:absolute;top:9px;left:calc(50% - 19px);width:38px;height:4px;background:#ffffffb3;border-radius:5px;z-index:2}.sheet-close{position:absolute;right:17px;top:20px;z-index:2;background:#ffffffb0}.sheet-hero-bottom{position:absolute;left:24px;right:24px;bottom:20px;color:white;z-index:1;display:flex;align-items:end;justify-content:space-between}.sheet-hero-bottom h2{font-size:30px;letter-spacing:-.8px;margin-top:5px}.sheet-hero-bottom .eyebrow{color:#ffffffd9}.sheet-hero-bottom .photo-count{position:static;background:#ffffff39}.sheet-content{padding:23px 26px 0}.sheet-meta{display:flex;align-items:center;gap:8px;font-size:12px;color:#779175}.sheet-photos{display:flex;gap:8px;overflow:auto;padding:15px 0 22px}.sheet-photos button{padding:0;flex-shrink:0;width:94px;height:81px;border-radius:13px;overflow:hidden;border:2px solid white;box-shadow:0 2px 7px #32542a12}.sheet-photos img{height:100%}.sheet-note{border-radius:20px;padding:20px;margin:0 0 21px;background:linear-gradient(130deg,#ffffffd9,#ffffff69)}.sheet-note-head{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#86a27e;margin-bottom:12px}.sheet-note-head button{font-size:12px;color:#5f8159;display:flex;gap:5px;align-items:center}.sheet-note p{font-family:var(--serif);font-size:19px;line-height:1.7;color:#557150;white-space:pre-line}.sheet-note .highlight{margin-top:17px}.sheet-footer{display:flex;align-items:center;justify-content:space-between;padding:16px 0 0;border-top:1px solid #dce7d7;gap:15px;font-size:12px;color:#859c7b}.sheet-footer button{display:flex;align-items:center;gap:6px}.sheet-footer svg{width:16px}.sheet-count{color:#9caf91}.modal{border-radius:28px;max-width:700px;width:calc(100% - 30px);max-height:90dvh;background:linear-gradient(130deg,#fbfef9f5,#f0f7edef)}.modal-frame{display:flex;flex-direction:column;max-height:90dvh}.modal-header{padding:22px 25px 16px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.modal-header .eyebrow{font-size:9px}.close{font-size:23px;width:32px;height:32px;border-radius:50%;background:#e3ece0a0;display:flex;align-items:center;justify-content:center;color:#7f9576}.modal-content{padding:0 25px 25px;overflow:auto;overscroll-behavior:contain;min-height:0}.modal-content>h2{font-size:30px;letter-spacing:-1px;line-height:1.2;margin:10px 0 12px}.modal-description{font-size:14px;line-height:1.6;color:#809777;margin-bottom:22px}.modal-footer{padding:16px 25px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #dce6d5;background:#f6fbf2df;flex-shrink:0;gap:12px}.modal-footer .muted{font-size:12px}.field{margin:15px 0}.field label{font-size:13px;color:#647f5c;display:block;margin-bottom:8px}.field input,.field textarea,.field select{width:100%;min-width:0;font-size:15px;line-height:1.5;padding:11px 13px;border:1px solid #d6e3ce;border-radius:12px;background:#ffffffb8;color:#3e6039;box-shadow:inset 0 1px white}.field textarea{resize:vertical;min-height:100px}.field input::placeholder,.field textarea::placeholder{color:#99aa8f}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.helper{font-size:12px;color:#829975;line-height:1.6}.organize-summary{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0 20px}.status-chip{display:flex;align-items:center;gap:5px;padding:8px 10px;border:1px solid #e0e9d9;border-radius:20px;background:#ffffff7c;color:#78936b;font-size:11px}.status-chip.warning{background:#fff6e3;color:#a39567;border-color:#f1e4c7}.upload-zone{display:flex;align-items:center;justify-content:center;gap:10px;min-height:94px;border:1px dashed #a7c097;border-radius:17px;position:relative;background:linear-gradient(135deg,#ffffffc5,#e8f2e05e);cursor:pointer;font-size:14px;color:#5b8050;margin:20px 0}.upload-zone input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.upload-zone svg{width:25px;height:25px}.upload-zone small{display:block;font-size:11px;color:#91a881;margin-top:5px}.upload-zone.dragging{background:#dceccd}.group-radius{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#789369;margin:20px 0 13px;gap:10px}.group-radius select{font:inherit;border:1px solid white;border-radius:17px;background:#ffffffa8;padding:8px 12px;color:#60814e}.group-box{border:1px solid #fff;border-radius:18px;background:#ffffff88;padding:15px;margin-bottom:13px}.group-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:11px;gap:10px}.group-title strong{font-size:14px;font-weight:500}.group-title small{font-size:10px;color:#8fa17e}.group-title .small-action{font-size:11px;padding:0}.group-thumbs{display:flex;gap:7px;overflow:auto}.group-thumbs button{position:relative;padding:0;flex-shrink:0;width:83px;height:78px;border-radius:11px;overflow:hidden}.group-thumbs img{height:100%}.group-thumbs .cover-badge{position:absolute;bottom:4px;left:4px;right:4px;text-align:center;background:#ffffffc9;backdrop-filter:blur(10px);border-radius:9px;font-size:8px;padding:3px}.unplaced-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.unplaced-card{padding:0;border:1px solid #f1e4c9;background:#fff9ecb3;border-radius:13px;overflow:hidden;text-align:left}.unplaced-card img{height:95px}.unplaced-card span{font-size:11px;color:#9b8f66;padding:9px 8px;display:flex;align-items:center;gap:4px}.location-target{display:flex;align-items:center;gap:14px;margin:15px 0 22px;background:#ffffff8c;border:1px solid white;padding:12px;border-radius:16px}.location-target img{width:62px;height:68px;border-radius:10px}.location-target strong{display:block;font-size:14px}.location-target small{font-size:11px;display:block;line-height:1.5;color:#8da07d;margin-top:5px}.location-choices{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 19px}.location-choices button{font-size:12px;border:1px solid white;background:#ffffffa6;border-radius:18px;padding:8px 13px}.location-choices .chosen{background:#ddebd4;color:#4e7440;border-color:#a8c197}.location-picker{height:215px;border-radius:17px;overflow:hidden;position:relative;border:1px solid white}.picker-map{height:100%;width:100%;z-index:0}.picker-hint{position:absolute;bottom:11px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:10px;padding:7px 12px;border-radius:16px;pointer-events:none;z-index:450}.coordinate-label{font-size:11px;text-align:center;color:#87a076;margin-top:9px}.composer-stepper{display:flex;gap:9px;align-items:center;margin:3px 0 24px;font-size:11px;color:#9caf8d}.composer-stepper span{display:flex;align-items:center;gap:5px}.composer-stepper b{width:21px;height:21px;border-radius:50%;background:#e4eddb;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:500}.composer-stepper .active{color:#577943}.composer-stepper .active b{background:#5e854b;color:white}.demo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:15px 0}.demo-grid button{height:116px;padding:0;position:relative;border:3px solid transparent;border-radius:13px;overflow:hidden}.demo-grid img{height:100%}.demo-grid .chosen{border-color:#6d9558}.demo-grid .chosen:after{content:'✓';position:absolute;top:5px;right:5px;border-radius:50%;background:#6f975a;color:#fff;width:20px;height:20px;font-size:12px;display:flex;justify-content:center;align-items:center}.review-photo{height:240px;position:relative;overflow:hidden;border-radius:20px;margin:20px 0}.review-photo img{height:100%}.review-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#173f299c)}.review-photo>div{position:absolute;left:22px;right:22px;bottom:21px;z-index:1;color:white}.review-photo h3{font-size:27px;letter-spacing:-.5px;margin:7px 0}.review-photo span{font-size:12px}.review-stops{display:flex;flex-wrap:wrap;gap:7px 13px;font-size:12px;color:#7d9970;line-height:1.9}.collection-card{display:flex;width:100%;align-items:center;gap:16px;padding:12px;background:#ffffffb0;border:1px solid white;border-radius:20px;margin:18px 0;text-align:left}.collection-card img{width:90px;height:110px;border-radius:13px}.collection-card h3{font-size:17px;line-height:1.4;margin:7px 0}.collection-card p{font-size:11px;color:#8ca17c}.collection-card svg{margin-left:auto}.lightbox{border:1px solid #ffffff45;border-radius:23px;background:#162d24e8;width:calc(100% - 26px);max-width:900px;max-height:94dvh;color:white}.lightbox .lightbox-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;font-size:12px}.lightbox img{width:100%;max-height:65dvh;object-fit:contain}.lightbox-footer{display:flex;justify-content:space-between;align-items:center;padding:15px 22px;font-size:12px}.lightbox-footer button{display:flex;align-items:center;gap:7px}.lightbox .close{background:#fff2;color:white}.full-gallery{display:grid;grid-template-columns:1fr 1fr;gap:12px}.full-gallery button{padding:0;position:relative;border-radius:13px;overflow:hidden}.full-gallery img{height:180px}.full-gallery span{position:absolute;bottom:9px;left:9px;border-radius:15px;padding:6px 9px;font-size:10px;color:white;background:#163e3a6b;backdrop-filter:blur(10px)}#toast{position:fixed;bottom:100px;left:50%;transform:translate(-50%,15px);background:#294f41ed;border:1px solid #ffffff4c;backdrop-filter:blur(20px);color:white;max-width:calc(100% - 35px);width:max-content;padding:13px 20px;border-radius:25px;box-shadow:0 8px 25px #13382930;font-size:13px;line-height:1.4;opacity:0;pointer-events:none;z-index:9999;transition:.25s}#toast.visible{transform:translate(-50%,0);opacity:1}.map-error{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:40px;color:#7e9672;background:#e8f0e1;font-size:14px}.location-info{margin-top:15px;border:1px solid white;border-radius:13px;padding:12px;font-size:12px;color:#849e76;background:#ffffff70;line-height:1.6}.note-editor .field:first-child{margin-top:7px}.cover-select{display:flex;gap:7px;overflow:auto;margin:12px 0}.cover-select button{padding:0;border:3px solid transparent;width:70px;height:62px;border-radius:11px;overflow:hidden;flex-shrink:0}.cover-select img{height:100%}.cover-select .chosen{border-color:#6f925b}
@media(min-width:1500px){.cover{height:350px}}@media(max-width:1000px){.story-layout{gap:24px;grid-template-columns:1.06fr 1fr}.chapter{padding-left:41px}.chapter-photos img{height:180px}.chapter-head h2{font-size:21px}.map-shell{height:440px}.desktop-nav{display:none}.journey-meta{font-size:11px}.journey-heading h1{font-size:34px}.heading-actions .share-label{display:none}.heading-actions .button{padding:11px}}@media(max-width:700px){.site-nav{height:75px;padding:0 6%}.brand{font-size:29px}.brand-icon{width:30px;height:30px;font-size:29px}.nav-actions{gap:12px}.nav-actions .button{font-size:12px;padding:10px 14px}.nav-actions .avatar{width:31px;height:31px}#journey{padding:0 17px 105px}.cover{height:286px;border-radius:23px}.cover>img{object-position:55% center}.cover-top{left:14px;right:14px;top:15px}.cover-back{padding:9px 11px;font-size:11px}.cover-top .icon-button{width:35px;height:35px}.cover-top svg{width:17px}.cover-sticker{right:21px;top:87px;font-size:19px;padding:12px 16px;border-radius:16px}.cover-sticker span{font-size:7px}.cover-bottom{left:15px;right:15px;bottom:17px}.cover-place{font-size:11px}.cover-photos{font-size:11px;padding:9px 12px}.cover-photos svg{width:15px}.journey-heading{padding:25px 5px 17px;gap:8px;align-items:start}.journey-heading h1{font-size:32px;line-height:1.24;letter-spacing:-1.3px;margin:9px 0 14px;max-width:320px}.journey-heading h1 em{white-space:nowrap}.journey-heading .eyebrow{font-size:9px;letter-spacing:1.6px}.heading-actions{display:none}.journey-meta{gap:7px;font-size:10px;flex-wrap:wrap}.journey-meta .avatar{width:21px;height:21px;font-size:10px}.journey-caption{font-size:17px;line-height:1.7;margin:0 5px 19px}.view-toolbar{padding:14px 1px 18px}.tabs button{font-size:12px;padding:8px 11px;gap:5px}.tabs button svg{width:15px}.small-action{font-size:11px}.story-layout{display:flex;flex-direction:column;gap:28px}.chapter-list{width:100%}.chapter{padding-left:37px;margin-bottom:28px}.chapter-list:before{left:12px}.chapter-step{width:26px;height:26px;top:5px;font-size:9px}.chapter-head h2{font-size:23px}.chapter-head .eyebrow{font-size:8px}.chapter-head .day{font-size:10px}.chapter-photos img{height:194px}.chapter-photos{border-radius:17px}.chapter-photos.multi{grid-template-columns:1.8fr 1fr}.photo-count{font-size:10px;padding:7px 9px;bottom:10px;right:10px}.chapter-note{font-size:16px;padding:15px 17px;line-height:1.7;border-radius:17px}.chapter-foot{font-size:10px}.highlight{font-size:10px;padding:5px 8px}.location-reminder{padding:12px;gap:9px;border-radius:17px;margin-bottom:23px}.location-reminder img{width:39px;height:45px}.location-reminder p{font-size:12px}.location-reminder small{font-size:10px}.location-reminder>button{font-size:10px;padding:8px 9px}.map-column{position:static;width:100%;padding-top:19px;border-top:1px solid #dce6da}.map-column .section-title h2{font-size:22px}.map-column .section-title .muted{font-size:11px}.map-shell{height:420px;border-radius:22px}.map-caption{font-size:10px}.map-view .cover{height:160px}.map-view .cover-sticker{display:none}.map-view .journey-heading{padding-bottom:15px}.map-view .journey-heading h1{font-size:26px;margin:5px 0 12px}.map-view .journey-heading .eyebrow{display:none}.map-view .view-toolbar{padding-bottom:15px}.map-view .map-column{padding-top:0;border:0}.map-view .map-shell{height:440px}.map-view .location-reminder{margin-bottom:18px}.map-toolbar{left:11px;right:11px;top:12px}.map-pill{font-size:10px;padding:9px 11px}.route-summary{padding:14px}.route-summary p{font-size:12px}.route-summary small{font-size:10px}.mobile-dock{position:fixed;bottom:calc(14px + env(safe-area-inset-bottom,0px));left:50%;transform:translateX(-50%);padding:5px;display:flex;align-items:center;justify-content:center;gap:3px;border-radius:35px;z-index:800;box-shadow:inset 0 1px 2px #fff,inset 0 -1px 1px #fff8,0 10px 35px #294d422b,0 1px 3px #294d4220;white-space:nowrap;background:linear-gradient(135deg,#ffffffd6,#ffffff96)}.mobile-dock button{display:flex;align-items:center;justify-content:center;gap:6px;padding:12px 17px;border-radius:25px;font-size:12px;color:#83927e}.mobile-dock button.active{color:#3e6550;background:linear-gradient(130deg,#e5eee0e3,#f6fcf0a3);box-shadow:inset 0 1px #fff,0 2px 7px #264e3612}.mobile-dock svg{width:16px;height:16px;display:block}.page-footer{padding:27px 4px 0;font-size:9px;gap:20px;line-height:1.7}.page-footer .brand{font-size:23px}.sheet{margin:auto 0 0;width:100%;max-width:none;max-height:91dvh;border-radius:29px 29px 0 0;animation:sheet-up .35s cubic-bezier(.2,.8,.2,1)}.sheet-scroll{max-height:91dvh;padding-bottom:calc(25px + env(safe-area-inset-bottom,0px))}.sheet-hero{height:222px}.sheet-hero-bottom{left:22px;right:22px;bottom:21px}.sheet-hero-bottom h2{font-size:29px}.sheet-close{right:19px;top:23px;width:34px;height:34px}.sheet-content{padding:21px 22px 0}.sheet-meta{font-size:11px;flex-wrap:wrap}.sheet-photos{padding:14px 0 18px;gap:7px}.sheet-photos button{width:83px;height:73px}.sheet-note{padding:18px;border-radius:19px;margin-bottom:16px}.sheet-note p{font-size:18px}.sheet-note-head{font-size:11px}.sheet-footer{font-size:11px;gap:8px}.sheet-footer svg{width:15px}.sheet-note .highlight{font-size:10px}.modal{width:calc(100% - 24px);max-height:92dvh;border-radius:25px}.modal-frame{max-height:92dvh}.modal-header{padding:20px 21px 15px}.modal-content{padding:0 21px 22px}.modal-content>h2{font-size:28px}.modal-description{font-size:14px}.modal-footer{padding:14px 21px}.modal-footer .button{padding:11px 15px;font-size:13px}.modal-footer .muted{font-size:11px}.field-grid{gap:9px}.field input,.field textarea,.field select{font-size:14px}.field label{font-size:12px}.group-box{padding:12px}.unplaced-card img{height:87px}.group-title strong{font-size:13px}.group-thumbs button{width:77px;height:75px}.group-radius{font-size:11px}.group-title small{font-size:9px}.status-chip{font-size:10px;padding:7px 9px}.location-picker{height:200px}.demo-grid button{height:104px}.composer-stepper{font-size:10px;gap:7px}.review-photo{height:220px}.review-photo h3{font-size:24px}.full-gallery img{height:140px}.lightbox img{max-height:65dvh}.collection-card img{width:80px;height:107px}.collection-card h3{font-size:16px}.collection-card .eyebrow{font-size:9px}.cover-select button{width:63px;height:58px}#toast{bottom:98px;font-size:12px}.upload-zone{min-height:85px}.sheet-hero.no-photo{background:#a6bc9b}.sheet-hero.no-photo:after{background:linear-gradient(transparent,#36592970)}}
@keyframes sheet-up{from{transform:translateY(25%);opacity:.4}to{transform:translateY(0);opacity:1}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
.leaflet-tile-pane{filter:saturate(.28) brightness(1.045) contrast(.9);opacity:.86}.leaflet-control-attribution{max-width:90%;line-height:1.5}.chapter-step svg{width:13px;height:13px}.picker-hint{display:flex;align-items:center;gap:5px}.picker-hint svg{width:13px;height:13px}.status-chip svg{width:13px;height:13px}
/* The journey itself is the primary canvas. */
:root{background:#f5f7f4}.site-nav{height:79px}.canvas-page{max-width:1480px!important;padding:0 4.5% 40px!important}.canvas-heading{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:17px 3px 28px}.canvas-breadcrumb{font-size:12px;display:flex;align-items:center;gap:8px;color:#8e9c90;margin-bottom:19px;padding:0}.canvas-breadcrumb svg{width:14px;height:14px}.canvas-breadcrumb span{color:#b5c1b5;margin:0 5px}.canvas-heading h1{font-family:Manrope;font-size:38px;letter-spacing:-1.6px;line-height:1.25;margin-bottom:12px}.canvas-heading h1 em{color:#658371}.canvas-meta{display:flex;gap:10px;align-items:center;font-size:11px;color:#91a28f}.canvas-meta strong{font-weight:500;color:#637e64}.canvas-meta .avatar{width:24px;height:24px;font-size:12px}.canvas-actions{display:flex;gap:10px;align-items:center;margin-top:24px}.canvas-actions .button{font-size:13px;padding:12px 16px}.journey-canvas{position:relative;border:1px solid #ffffff;border-radius:30px;overflow:hidden;background:#e7eeeb;box-shadow:0 12px 45px #44694e09,inset 0 1px 1px #fff;height:650px}.canvas-wash{position:absolute;inset:0;background:radial-gradient(ellipse at 19% 75%,#c4ddd776,transparent 37%),radial-gradient(ellipse at 67% 30%,#fbfff1bd,transparent 48%),radial-gradient(ellipse at 95% 2%,#e5e4c687,transparent 38%),linear-gradient(120deg,#e8efeb,#edf2e8 58%,#eceddb);pointer-events:none}.canvas-grain{position:absolute;inset:0;opacity:.18;background-image:radial-gradient(#a5bfa2 .7px,transparent .7px);background-size:12px 12px;mask-image:linear-gradient(transparent,#0007,transparent);pointer-events:none}.canvas-top{position:absolute;left:30px;right:26px;top:26px;display:flex;align-items:start;justify-content:space-between;z-index:2;pointer-events:none}.canvas-region{font-size:13px;color:#6b8a73;display:flex;align-items:center;gap:6px;flex-wrap:wrap;max-width:220px;line-height:1.5}.canvas-region svg{width:14px;height:14px}.canvas-region small{display:block;width:100%;font-size:8px;letter-spacing:1.5px;margin-top:5px;color:#92a791}.canvas-mode{font-size:11px;color:#839779;border-radius:20px;padding:9px 12px;display:flex;gap:6px;align-items:center;opacity:.85}.canvas-mode svg{width:14px;height:14px}.route-scene{position:absolute;inset:0}.memory-path{position:absolute;inset:0;width:100%;height:100%;stroke:none;overflow:visible}.journey-point{position:absolute;left:var(--x);top:var(--y);width:160px;transform:translate(-50%,0);text-align:center;z-index:3}.memory-photo{position:absolute;left:50%;bottom:16px;transform:translateX(-50%) rotate(var(--tilt));width:114px;height:102px;padding:6px 6px 16px;border-radius:17px;box-shadow:inset 0 1px #ffffff,0 13px 23px #54766620,0 2px 4px #577e5f17;background:linear-gradient(145deg,#ffffffed,#ffffff79);isolation:isolate}.memory-photo:hover{transform:translateX(-50%) translateY(-5px) rotate(0);box-shadow:inset 0 1px #fff,0 22px 28px #416c4525}.memory-photo img{height:100%;width:100%;border-radius:11px;position:relative;z-index:1}.memory-photo-count{position:absolute;right:12px;bottom:23px;display:flex;align-items:center;gap:3px;color:#fff;font-size:9px;background:#233f3559;border:1px solid #ffffff63;backdrop-filter:blur(10px);padding:3px 6px;border-radius:10px;z-index:2}.memory-photo-count svg{width:10px;height:10px}.photo-edge{position:absolute;inset:4px -7px -1px 5px;background:#ffffff89;border:1px solid white;border-radius:15px;transform:rotate(7deg);z-index:-1}.point-stem{position:absolute;bottom:1px;left:50%;height:18px;border-left:1px solid #a5bba270;z-index:-1}.point-label{padding:17px 0 0;display:flex;align-items:center;flex-direction:column;gap:5px;width:100%;cursor:pointer}.point-label small{font-size:7px;letter-spacing:1.5px;color:#a0b293;font-weight:500}.point-label strong{font-size:18px;font-family:Manrope;font-weight:600;letter-spacing:-.55px;color:#4c6d51}.point-label>span{font-size:10px;color:#91a387}.end-point .point-label small{color:#b7a076}.point-memory{position:absolute;top:92px;left:50%;transform:translateX(-50%) rotate(-2deg);white-space:nowrap;font-size:11px;padding:9px 12px;border-radius:15px;color:#7c9268;display:flex;align-items:center;gap:6px;background:linear-gradient(130deg,#ffffffba,#ffffff69);border:1px solid #ffffffd9;box-shadow:inset 0 1px #fff,0 5px 15px #385c3506}.point-memory svg{width:11px;height:11px;opacity:.65}.point-memory:hover{transform:translateX(-50%) rotate(0)}.selected-point .memory-photo{box-shadow:inset 0 1px white,0 0 0 3px #d7e7d455,0 14px 25px #416c4522}.canvas-poem{position:absolute;left:7%;top:26%;color:#9bac94;font-family:Manrope;font-size:23px;letter-spacing:-.6px;line-height:1.55;pointer-events:none}.canvas-poem em{font-size:25px;color:#8ca483}.canvas-bottom{position:absolute;bottom:47px;left:30px;right:25px;display:flex;align-items:end;justify-content:space-between;pointer-events:none}.canvas-caption{font-size:11px;color:#96a98e;line-height:1.8;letter-spacing:.15px}.canvas-caption em{font-size:14px;color:#8ba181}.canvas-fit{width:36px;height:36px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#94a68c;pointer-events:auto}.canvas-fit svg{width:17px;height:17px}.canvas-legend{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);display:flex;align-items:center;gap:6px;white-space:nowrap;font-size:9px;color:#9bab92;pointer-events:none}.canvas-legend i{font-style:normal;margin:0 4px}.legend-dot{width:5px;height:5px;background:#638c7a;border-radius:50%}.legend-dot.end{background:#bd9c61;margin-left:9px}.canvas-under{display:flex;align-items:center;justify-content:space-between;padding:23px 3px;gap:20px}.memory-count{display:flex;align-items:center;gap:19px}.stacked-photos{display:flex;width:65px;height:43px;position:relative}.stacked-photos img{width:34px;height:41px;border:2px solid white;border-radius:8px;position:absolute;left:0;transform:rotate(-9deg);box-shadow:0 3px 8px #284b3621}.stacked-photos img:nth-child(2){left:16px;transform:rotate(3deg)}.stacked-photos img:nth-child(3){left:30px;transform:rotate(11deg)}.memory-count button{text-align:left;padding:0}.memory-count strong{display:block;font-size:13px;font-weight:500;color:#617e61}.memory-count button>span{display:flex;align-items:center;gap:5px;font-size:11px;color:#93a58c;margin-top:6px}.memory-count svg{width:12px;height:12px}.unplaced-pill{display:flex;align-items:center;gap:8px;font-size:12px;color:#9a9679;padding:12px 15px;border-radius:20px;white-space:nowrap;background:linear-gradient(140deg,#fffdf5ba,#fffaf575)}.unplaced-pill svg{width:15px;height:15px}.unplaced-pill b{font-size:15px;font-weight:400}.placed-caption{font-size:12px;color:#92a58c;display:flex;gap:7px;align-items:center}.placed-caption svg{width:15px;height:15px}.canvas-footer{border-top:1px solid #e3e9df;padding:16px 3px;display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#a1af98;gap:20px}.canvas-footer button{font-size:11px;color:#8d9f81;display:flex;align-items:center;gap:6px}.canvas-footer svg{width:12px;height:12px}.canvas-empty{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:80%;max-width:380px;border-radius:25px;padding:35px;text-align:center}.canvas-empty h2{font-size:26px}.canvas-empty p{font-size:14px;line-height:1.7;margin:15px 0 20px;color:#849778}
@media(max-width:1000px) and (min-width:701px){.canvas-heading h1{font-size:31px}.journey-canvas{height:580px}.memory-photo{width:88px;height:83px}.point-label strong{font-size:15px}.point-memory{font-size:9px;padding:7px 9px;top:88px}.canvas-poem{font-size:20px}.canvas-poem em{font-size:23px}}
@media(max-width:700px){.canvas-page{padding:0 15px 90px!important}.site-nav{height:69px}.canvas-heading{padding:11px 5px 24px;align-items:start;gap:6px}.canvas-breadcrumb{font-size:10px;margin-bottom:13px}.canvas-heading h1{font-size:27px;line-height:1.25;letter-spacing:-1px;max-width:290px;margin-bottom:13px}.canvas-heading h1 em{white-space:nowrap}.canvas-meta{gap:6px;font-size:10px}.canvas-meta .avatar{width:20px;height:20px;font-size:10px}.canvas-actions{margin-top:32px;gap:6px;flex-direction:column}.canvas-actions .icon-button{width:31px;height:31px}.canvas-actions .button{padding:7px}.canvas-actions svg{width:16px;height:16px}.canvas-actions .button span{display:none}.journey-canvas{height:705px;border-radius:25px}.route-scene{top:0;bottom:35px}.canvas-top{top:21px;left:19px;right:18px}.canvas-region{font-size:11px;max-width:200px}.canvas-region small{font-size:7px;letter-spacing:1.1px;margin-top:3px}.canvas-region svg{width:12px;height:12px}.canvas-mode{padding:7px;font-size:0;gap:0;opacity:.65}.canvas-mode svg{width:14px;height:14px}.journey-point{width:135px}.memory-photo{width:80px;height:75px;padding:4px 4px 12px;border-radius:14px;bottom:13px}.memory-photo img{border-radius:9px}.memory-photo-count{right:8px;bottom:17px;font-size:8px;padding:2px 5px;gap:2px}.memory-photo-count svg{width:9px;height:9px}.point-label{padding-top:14px;gap:4px}.point-label small{font-size:6.5px;letter-spacing:1.1px}.point-label strong{font-size:16px;letter-spacing:-.4px}.point-label>span{font-size:9px}.point-memory{font-size:9px;top:81px;padding:7px 9px;gap:5px;border-radius:12px}.point-memory svg{width:9px;height:9px}.end-point .point-memory{display:none}.canvas-poem{left:47%;top:12%;font-size:19px;line-height:1.5;letter-spacing:-.5px;color:#a3b296}.canvas-poem em{font-size:23px;color:#8da980}.canvas-bottom{left:20px;right:17px;bottom:45px}.canvas-caption{display:none}.canvas-fit{width:30px;height:30px;border-radius:10px;margin-left:auto}.canvas-fit svg{width:14px;height:14px}.canvas-legend{font-size:8px;bottom:19px;gap:5px}.canvas-under{padding:21px 4px 16px;flex-direction:column;align-items:stretch;gap:17px}.memory-count{gap:15px}.memory-count strong{font-size:12px}.memory-count button>span{font-size:10px}.unplaced-pill{font-size:11px;justify-content:space-between;padding:11px 14px;border-radius:17px}.unplaced-pill span{margin-right:auto}.canvas-footer{padding:14px 5px;line-height:1.7;align-items:start;font-size:9px}.canvas-footer button{white-space:nowrap;font-size:10px}.mobile-dock button{font-size:12px;padding:12px 20px;gap:6px}.mobile-dock{bottom:calc(15px + env(safe-area-inset-bottom,0px))}.sheet .sheet-hero{height:215px}.placed-caption{font-size:11px}}
.journey-point{height:0}.point-label{position:absolute;top:0;left:0}.point-label small{font-size:8px}.canvas-meta{color:#7c907a}.point-label>span{color:#849b77}.point-label strong{color:#4c6d51}@media(max-width:700px){.point-label small{font-size:7px}.point-label strong{font-size:15px}.canvas-poem{top:15%}}

.canvas-mode{display:none}@media(max-width:700px){.canvas-region small{display:none}.canvas-poem{top:14%}.journey-canvas.many-stops{height:var(--scene-height,705px)}}@media(min-width:701px){.journey-canvas.many-stops{overflow-x:auto}.many-stops .route-scene{min-width:var(--scene-width);right:auto;width:var(--scene-width)}}

/* Refined memory-map composition: quiet terrain, tactile glass, legible stops. */
.journey-canvas{height:620px;border-radius:32px;background:#eaf0e8;border:1px solid #fff;box-shadow:inset 0 1px 0 #fff,0 16px 55px #3459480b}
.canvas-wash{background:radial-gradient(ellipse at 12% 80%,#cae2df90,transparent 58%),radial-gradient(ellipse at 89% 13%,#f6edd394,transparent 58%),linear-gradient(135deg,#eff3ed,#eef1e4)}
.canvas-terrain{position:absolute;inset:0;width:100%;height:100%;stroke:none;pointer-events:none}.canvas-grain{opacity:.12;background-size:9px 9px}
.canvas-top{top:27px;left:29px}.canvas-region{font-size:13px;max-width:none;color:#466b5d;font-weight:500;background:#ffffff65;border:1px solid #ffffffba;border-radius:18px;padding:12px 16px;box-shadow:inset 0 1px #fff,0 6px 20px #45614f06;backdrop-filter:blur(18px);column-gap:7px}.canvas-region small{font-weight:400;font-size:10px;letter-spacing:.3px;color:#7b8c7e;margin:0 0 0 20px;width:auto;border-left:1px solid #c5d3c280;padding-left:16px}
.memory-photo{width:126px;height:112px;padding:5px;border-radius:22px;bottom:22px;background:linear-gradient(125deg,#fff,#ffffff65 75%);border:1px solid #fff;box-shadow:inset 0 1px 2px #fff,0 16px 22px -8px #3e65563d,0 3px 4px #48634e15;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.memory-photo img{border-radius:16px}.memory-photo-count{right:10px;bottom:10px;padding:4px 7px;font-size:9px;background:#203e4070;border:1px solid #ffffff70;box-shadow:inset 0 1px #ffffff35}.photo-edge{inset:3px -7px 2px 4px;border-radius:20px}.point-stem{height:24px;border-left:1px solid #8daa9870}
.point-label{gap:6px;padding-top:18px}.point-label small{font-size:8px;font-weight:600;color:#7f9286;letter-spacing:1.3px}.point-label strong{font-size:19px;font-weight:600;letter-spacing:-.65px;color:#355b4d}.point-label>span{font-size:10px;color:#72877b}.end-point .point-label small{color:#9a824e}
.point-memory{top:91px;border-radius:30px;padding:9px 12px;font-size:10px;color:#607661;background:linear-gradient(120deg,#ffffffda,#ffffff68);border:1px solid #fff;box-shadow:inset 0 1px 1px #fff,0 5px 12px #31534309;backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);transform:translateX(-50%)}.point-memory svg{opacity:.7}.point-memory:hover{transform:translateX(-50%) translateY(-2px)}
.canvas-caption{display:none}.canvas-legend{color:#809486;font-size:9px;bottom:22px}.canvas-bottom{bottom:20px}.canvas-fit{margin-left:auto;color:#668272;background:#ffffff8c}.selected-point .memory-photo{box-shadow:inset 0 1px #fff,0 16px 22px -8px #3e65563d,0 3px 4px #48634e15}.canvas-mode{display:none}
@media(min-width:701px) and (max-width:1000px){.journey-canvas{height:610px}.memory-photo{width:99px;height:93px}.point-label strong{font-size:16px}.point-memory{font-size:9px}}
@media(max-width:700px){
.canvas-page{padding:0 12px 90px!important}.canvas-heading{padding:9px 7px 20px}.canvas-heading h1{font-size:26px}.canvas-breadcrumb{margin-bottom:11px}.canvas-top{top:18px;left:17px;right:17px}.canvas-region{padding:10px 12px;font-size:11px;gap:6px;border-radius:15px;max-width:none;box-shadow:inset 0 1px #fff,0 5px 16px #45614f07}.canvas-region small{display:block;font-size:9px;margin-left:4px;padding-left:10px;letter-spacing:0;width:auto}.canvas-region svg{width:12px}
.journey-canvas{height:800px;border-radius:28px}.route-scene{bottom:35px}.canvas-terrain{width:210%;left:-55%;opacity:.85}.journey-point{width:0}.memory-photo{width:94px;height:91px;border-radius:19px;padding:4px;bottom:18px;box-shadow:inset 0 1px #fff,0 13px 19px -7px #3d635841,0 2px 4px #47645412}.memory-photo img{border-radius:14px}.memory-photo-count{right:8px;bottom:8px;font-size:8px;padding:3px 6px}.photo-edge{border-radius:17px}.point-stem{height:19px}
.point-label{left:64px;top:-106px;padding:0;width:163px;align-items:flex-start;text-align:left;gap:6px}.point-label small{font-size:7px;letter-spacing:1.25px}.point-label strong{font-size:18px;letter-spacing:-.65px;line-height:1.2;white-space:nowrap}.point-label>span{font-size:10px}.point-right .point-label{left:auto;right:64px;align-items:flex-end;text-align:right}
.point-memory{left:63px;top:-35px;transform:none;padding:8px 10px;font-size:9px;gap:4px;max-width:165px}.point-memory:hover{transform:translateY(-2px)}.point-right .point-memory{left:auto;right:63px}.end-point .point-memory{display:flex}.point-memory svg{width:10px;height:10px}.canvas-legend{font-size:8px;bottom:19px;gap:4px}.canvas-bottom{right:15px;bottom:40px}.canvas-fit{width:28px;height:28px;border-radius:50%}.canvas-under{padding:20px 7px 14px}.canvas-footer{margin:0 7px}.canvas-poem{display:none}
}
@media(prefers-reduced-motion:reduce){.memory-photo,.point-memory{transition:none}}

/* Each mobile stop is a single, aligned photo-and-caption grid. */
@media(max-width:700px){
.journey-point{left:0!important;top:calc(var(--y) - 112px);transform:none;width:100%;height:91px;padding:0 calc(18.8889% - 47px);display:grid;grid-template-columns:94px minmax(0,1fr);grid-template-rows:1fr 26px;column-gap:17px;row-gap:8px;text-align:left}
.journey-point .memory-photo{position:relative;left:auto;bottom:auto;grid-column:1;grid-row:1 / 3;width:94px;height:91px;transform:rotate(-3deg);align-self:start;margin:0}.journey-point .memory-photo:hover{transform:translateY(-3px) rotate(0)}
.journey-point .point-label{position:static;width:auto;grid-column:2;grid-row:1;align-items:flex-start;text-align:left;padding:1px 0 0;gap:4px;align-self:start}.journey-point .point-label small{line-height:10px;font-size:7px;letter-spacing:1px}.journey-point .point-label strong{line-height:22px;font-size:17px;white-space:normal}.journey-point .point-label>span{line-height:12px;font-size:9px}
.journey-point .point-memory{position:static;grid-column:2;grid-row:2;justify-self:start;align-self:end;transform:none;max-width:100%;height:26px;padding:5px 9px;font-size:9px;white-space:nowrap;gap:4px;box-shadow:inset 0 1px #fff,0 3px 9px #31534306}.journey-point .point-memory:hover{transform:translateY(-2px)}.journey-point .point-memory svg{display:none}
.journey-point .point-stem{left:18.8889%;bottom:-20px;height:20px}.point-right{grid-template-columns:minmax(0,1fr) 94px}.point-right .memory-photo{grid-column:2;transform:rotate(3deg)}.point-right .point-label{grid-column:1;text-align:right;align-items:flex-end}.point-right .point-memory{grid-column:1;justify-self:end}.point-right .point-stem{left:81.1111%}
}

@media(max-width:700px){.journey-canvas{height:912px}.journey-point .memory-photo,.point-right .memory-photo{transform:none}.journey-point .memory-photo:hover{transform:translateY(-3px)}.journey-point .point-label{padding-top:0}.journey-point .point-memory{border-radius:13px}}

@media(max-width:700px){.journey-canvas{height:var(--scene-height,1132px)}}

/* The photos sit on one continuous route, with captions aligned beside them. */
@media(max-width:700px){.journey-point{top:calc(var(--y) - 45.5px)}.journey-point .point-stem{display:none}.canvas-legend{bottom:18px}.canvas-bottom{bottom:38px}}
