/* Mobile version of the selected Journey prototype; desktop A/B remain available. */
.mobile-route-label,#mobile-map-toggle,.photo-swipe-hint{display:none}
.photo-gallery{min-width:0}.photo-gallery>.profile-photo:not(:first-child){display:none}
.photo-open{display:block;position:relative;width:100%;padding:0;text-align:left}.photo-expand{position:absolute;right:10px;bottom:10px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#f6f3ebed;font:24px Arial,sans-serif;color:#263731}.photo-open:focus-visible{outline-offset:2px}
.photo-viewer{padding:55px 18px 20px;max-width:1100px;width:calc(100% - 24px);max-height:94dvh}.photo-viewer>img{display:block;max-height:75dvh;max-width:100%;object-fit:contain;margin:auto}.photo-viewer>p{font:12px/1.5 Arial,sans-serif;margin:16px 0 0}.sheet-close{position:absolute;right:12px;top:6px;min-width:44px;min-height:44px;font-size:28px}.mobile-route-sheet{padding:32px 24px}
@media(max-width:700px){
 :root{--mobile-header:calc(92px + env(safe-area-inset-top,0px));--mobile-map:clamp(155px,29svh,250px);--mobile-dock:calc(64px + env(safe-area-inset-bottom,0px))}
 html{scroll-padding-bottom:var(--mobile-dock)}body{overflow-x:clip}
 .masthead,.winery-experience .masthead{height:var(--mobile-header);padding:0 16px 38px;gap:12px;padding-top:env(safe-area-inset-top,0px)}
 .wordmark{font-size:15px;white-space:nowrap}.wordmark span{font-size:8px;margin-left:6px;padding-left:6px}
 .header-controls{gap:10px}.header-controls button{min-height:44px}.theme-picker select{font-size:12px;min-height:44px}.theme-picker{font-size:10px}
 .edition{display:block!important;position:absolute;left:16px;right:16px;bottom:0;height:38px;border-top:1px solid #d9dbd0}
 #experience-select{width:100%;max-width:none;height:38px;padding:4px 0;font-size:10px;letter-spacing:1px}
 body.custom-journey .map-shell,body.custom-journey.variant-A .map-shell,body.custom-journey.variant-B .map-shell{top:var(--mobile-header);height:var(--mobile-map);width:100%;left:0;z-index:8;border-bottom:1px solid #bdc8b8}
 body.custom-journey #story,body.custom-journey.variant-B #story,body.custom-journey.variant-A #story{width:100%;margin:0;padding:calc(var(--mobile-header) + var(--mobile-map) + 16px) 0 calc(var(--mobile-dock) + 28px);min-height:100svh;background:#e7ebe1;border:0;z-index:2;pointer-events:auto}
 body.custom-journey .intro,body.custom-journey .chapter,body.custom-journey.variant-B .intro,body.custom-journey.variant-B .chapter{margin:0 12px 24px;padding:26px 22px 28px;background:#f6f3eb;border:1px solid #d0d7c6;border-radius:16px;box-shadow:0 4px 15px #283d3408;min-height:0;scroll-margin-top:calc(var(--mobile-header) + var(--mobile-map) + 16px)}
 body.custom-journey .intro h1,body.custom-journey.variant-B .intro h1{font-size:clamp(38px,10.6vw,52px);line-height:1.01;letter-spacing:-1.2px;margin-bottom:18px}
 body.custom-journey .intro .eyebrow{font-size:9px;letter-spacing:1.3px;margin-bottom:17px}
 body.custom-journey .dek{font:18px/1.45 Newsreader,Georgia,serif;margin-bottom:17px;max-width:none}
 body.custom-journey .byline{font-size:9px;margin-bottom:18px}
 body.custom-journey .intro .route-planning{font-size:12px;line-height:1.6;margin:14px 0}
 .journey-entry-links{margin:12px 0}.journey-entry-links a{display:inline-flex;align-items:center;min-height:44px;font-size:12px}
 body.custom-journey .begin{font-size:12px;min-height:52px;padding:13px 0}
 body.custom-journey .chapter .chapter-place{font:32px/1.07 Newsreader,serif;color:#263731;letter-spacing:-.6px;margin:0 0 14px}
 body.custom-journey .chapter h2,body.custom-journey.variant-B .chapter h2{font:23px/1.18 Newsreader,serif;color:#6b735f;letter-spacing:0;margin:0 0 18px}
 body.custom-journey .chapter .eyebrow{font:600 9px/1.4 Arial,sans-serif;margin-bottom:18px;letter-spacing:1.2px}
 body.custom-journey .chapter p{font-size:18px;line-height:1.5}.chapter-number{width:28px;height:28px}
 .photo-set{margin:20px 0 24px;min-width:0}.photo-gallery{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;max-width:100%}.photo-gallery::-webkit-scrollbar{display:none}
 .photo-gallery>.profile-photo,.photo-gallery>.profile-photo:not(:first-child),body.custom-journey .photo-gallery>.profile-photo{display:block;flex:0 0 100%;width:100%;margin:0;scroll-snap-align:start;scroll-snap-stop:always}
 .profile-photo img,body.custom-journey .intro .profile-photo img{width:100%;height:auto;aspect-ratio:3/2;border-radius:8px;object-fit:cover}
 .profile-photo .photo-caption{font:10px/1.4 Arial,sans-serif;margin-top:8px;color:#697263;overflow-wrap:anywhere}
 body.custom-journey .chapter .photo-swipe-hint,body.custom-journey .photo-swipe-hint,.photo-swipe-hint{display:flex;justify-content:space-between;align-items:center;font:11px/1.3 Arial,sans-serif;color:#6a765e;margin:9px 0 0}.photo-swipe-hint span{font-size:11px;font-variant-numeric:tabular-nums}
 .photo-expand{width:36px;height:36px}.profile-facts{margin:22px 0}.profile-facts>div{grid-template-columns:85px minmax(0,1fr);gap:12px;padding:13px 0}.profile-facts dt{font-size:9px}.profile-facts dd{font-size:18px}
 .profile-google>a{min-height:44px;flex-wrap:wrap;gap:9px}.profile-google>a span{font-size:12px}.profile-google>small{font-size:10px;line-height:1.5}.review-topics>span{font-size:13px}.review-topics small{font-size:10px}
 body.custom-journey .chapter .review-topic-label{font:10px/1.4 Arial,sans-serif}.profile-visit h3{font-size:10px}.chapter .profile-visit p{font-size:17px}.profile-links{gap:6px;margin:18px 0}.profile-links a{display:inline-flex;min-height:44px;align-items:center;font-size:12px;padding:0 9px;border:1px solid #c9d0bf;border-radius:5px}
 .profile-sources summary,.route-outline-list summary{font:12px/1.5 Arial,sans-serif;min-height:44px;padding:10px 0}.chapter .profile-sources p,.profile-sources a{font-size:12px;line-height:1.5}.profile-sources a{min-height:44px;padding:10px 0}
 body.custom-journey .chapter .location{font:10px/1.6 Arial,sans-serif}.next-stop{min-height:52px;font-size:12px;text-align:left;align-items:center;gap:12px}
 .custom-journey .map-kicker,.custom-journey.variant-B .map-kicker{left:12px;top:12px;padding:8px;font-size:7px;letter-spacing:1px;max-width:45%}
 .custom-journey .map-tools{top:8px;right:8px;gap:3px}.custom-journey .map-tools button{height:40px;min-width:40px;font-size:11px;padding:0 8px}.map-tools span{display:none}
 .custom-journey .map-caption,.custom-journey.variant-B .map-caption,.custom-journey.variant-A .map-caption{left:12px;right:auto;top:auto;bottom:23px;padding:7px 9px;max-width:calc(100% - 24px);height:auto;font-size:10px;pointer-events:none}.map-distance{display:none}
 .winery-pin{min-width:44px;min-height:44px;justify-content:flex-start;padding-left:10px;transform-origin:center}.winery-pin .pin-num{flex-shrink:0}.winery-pin.in-trip .pin-num{width:25px;height:25px;font-size:10px}.winery-pin .pin-name{font-size:10px;max-width:165px;white-space:normal}.winery-pin:not(.active):hover .pin-name{display:none}
 .custom-journey .map-shell canvas{touch-action:pan-y!important}
 .journey-controls{left:0;right:0;bottom:0;transform:none;z-index:22;border-radius:0;min-height:var(--mobile-dock);padding:6px 12px calc(6px + env(safe-area-inset-bottom,0px));gap:6px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px 44px;background:#f6f3eb;color:#263731;border-top:1px solid #c2ccba;box-shadow:0 -4px 24px #233b3012}
 .journey-controls button{min-width:44px;min-height:46px;border-radius:7px;padding:4px;font-size:12px}.journey-controls #journey-previous,.journey-controls #journey-next{font-size:22px;border:1px solid #c9d2c0}.journey-controls #journey-next{background:#2e493b;color:#fff;border-color:#2e493b}
 #journey-progress{position:absolute;right:14px;top:-23px;padding:5px 9px;border:1px solid #c2ccba;border-bottom:0;border-radius:7px 7px 0 0;background:#f6f3eb;color:#57654f;font-size:10px;line-height:13px}
 .desktop-route-label{display:none}.mobile-route-label,#mobile-map-toggle{display:inline}#mobile-map-toggle{border:1px solid #b9c5af;background:#e9eddf}
 .mobile-route-sheet{position:fixed;inset:auto 0 0;margin:0;width:100%;max-width:none;max-height:85dvh;border:0;border-radius:20px 20px 0 0;padding:28px 22px calc(24px + env(safe-area-inset-bottom,0px));overscroll-behavior:contain}.mobile-route-sheet .eyebrow{margin-bottom:12px}.mobile-route-sheet h2{font:32px/1.05 Newsreader,serif;margin:0 0 12px}.mobile-route-sheet .sheet-note{font:13px/1.5 Arial,sans-serif}.mobile-route-sheet ol{padding:0;list-style:none;margin:20px 0}.mobile-route-sheet li{border-bottom:1px solid #d3d9cb}.mobile-route-sheet li button{width:100%;min-height:62px;display:grid;grid-template-columns:30px 1fr;column-gap:10px;text-align:left;align-content:center;padding:10px 0}.mobile-route-sheet li span{grid-row:span 2;color:#956348;font:12px/1.5 Arial,sans-serif;align-self:center}.mobile-route-sheet li strong{font:19px/1.2 Newsreader,serif}.mobile-route-sheet li small{font:10px/1.5 Arial,sans-serif;color:#65755b;margin-top:3px}.mobile-route-sheet li button[aria-current]{background:#e3e9da}.mobile-route-sheet .primary-action{min-height:48px;border-radius:6px}
 .photo-viewer{width:100%;height:100dvh;max-height:none;margin:0;inset:0;max-width:none;border:0;padding:calc(60px + env(safe-area-inset-top,0px)) 14px 24px;align-content:center;background:#182b23;color:#f6f3eb}.photo-viewer::backdrop{background:#182b23}.photo-viewer>img{max-height:78dvh;width:100%;object-fit:contain}.photo-viewer .sheet-close{top:calc(8px + env(safe-area-inset-top,0px))}
 /* Keep enough list space for filters, route editing and the on-screen keyboard. */
 .winery-experience .map-shell,.winery-experience.variant-A .map-shell,body.winery-experience.variant-B .map-shell{top:var(--mobile-header);height:clamp(120px,23svh,190px)}
 .winery-panel,.winery-experience.variant-A .winery-panel{top:calc(var(--mobile-header) + clamp(120px,23svh,190px));bottom:0}.winery-panel h1{font-size:28px}.winery-panel .panel-head,.winery-experience.variant-A .panel-head{padding:16px 18px 0}.panel-body{padding:0 18px 18px}.explore-tabs{padding:0 18px}.explore-tabs button{min-height:44px;font-size:12px}.filters input{font:16px Arial,sans-serif;min-height:44px}.filter-row select,.featured-filter{font-size:12px;min-height:42px;max-width:145px}.filter-meta{font-size:11px}.filter-meta button{font-size:11px;min-height:40px}.winery-row .add-stop{width:44px;height:44px}.winery-name strong{font-size:23px}.winery-name small{font-size:9px;line-height:1.5}.winery-row{padding:12px 0}.route-launch{padding:10px 18px calc(10px + env(safe-area-inset-bottom,0px))}.primary-action{min-height:46px;font-size:13px}.route-launch small{display:none}.trip-list li{gap:4px;font-size:18px}.trip-list button{min-width:40px;min-height:44px;font-size:18px}.trip-list .trip-order{width:14px}.loop-option{font-size:13px;min-height:48px;align-items:center}.loop-option input{width:20px;height:20px;flex-shrink:0}.trip-actions{justify-content:space-between}.trip-actions button{min-height:44px;font-size:12px}.back-list{min-height:44px;font-size:12px;padding-bottom:0}.winery-detail h2{margin-top:14px}.winery-detail .profile-links a{font-size:12px}.winery-experience .map-kicker{display:none}
}
@media(max-width:370px){.custom-journey .map-kicker{display:none}.custom-journey .map-caption{bottom:45px}.header-controls #about{display:none}.wordmark span{display:none}.journey-controls{gap:4px;padding-left:8px;padding-right:8px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 42px 42px}.journey-controls button{font-size:11px}.profile-links a{padding:0 7px}.filter-row{gap:5px}.filter-row select{max-width:128px}}
@media(max-height:550px) and (max-width:700px){:root{--mobile-header:calc(54px + env(safe-area-inset-top,0px));--mobile-map:125px}.masthead,.winery-experience .masthead{padding-bottom:0}.edition{display:none!important}.winery-panel,.winery-experience.variant-A .winery-panel{top:var(--mobile-header)}.winery-experience .map-shell{display:none}.mobile-route-sheet{max-height:95dvh}}
@media(prefers-reduced-motion:reduce){.photo-gallery{scroll-behavior:auto}}

/* Map-first mobile journey: one map, one highlighted stop, details on demand. */
.mobile-stop-deck{display:none}
@media(max-width:700px){
 body.custom-journey,body.winery-experience{--mobile-header:0px}
 body.custom-journey{overflow:hidden;height:100dvh;background:#dbe6dd}
 body.custom-journey .masthead,body.winery-experience .masthead{display:none}
 body.custom-journey #story,body.custom-journey.variant-A #story,body.custom-journey.variant-B #story{display:none}
 body.custom-journey .map-shell,body.custom-journey.variant-A .map-shell,body.custom-journey.variant-B .map-shell{inset:0;width:100%;height:100dvh;border:0;z-index:1}
 body.custom-journey .map-shell canvas{touch-action:none!important}
 body.custom-journey .map-kicker,body.custom-journey .map-caption{display:none}
 body.custom-journey .map-tools{top:calc(72px + env(safe-area-inset-top,0px));right:14px;display:flex;flex-direction:column;gap:8px}
 body.custom-journey .map-tools button{display:none;border-radius:50%;width:44px;height:44px;box-shadow:0 2px 12px #1d362023;border:1px solid #fff8;background:#fffdf4f5;color:#263731}
 body.custom-journey .map-tools #terrain,body.custom-journey .map-tools #overview{display:none}
 body.custom-journey .map-tools #terrain[aria-pressed=true]{background:#304b3c;color:white}
 body.custom-journey .journey-controls{display:contents}
 body.custom-journey .journey-controls #journey-progress,body.custom-journey .journey-controls #journey-previous,body.custom-journey .journey-controls #journey-next{display:none}
 body.custom-journey .journey-controls #edit-route,body.custom-journey .journey-controls #mobile-map-toggle{position:fixed;z-index:20;top:calc(16px + env(safe-area-inset-top,0px));bottom:auto;height:44px;min-height:44px;width:auto;border-radius:24px;padding:0 17px;border:1px solid #fff9;background:#fffdf4f5;box-shadow:0 3px 18px #213c2920;color:#263731;font:600 12px Arial,sans-serif}
 body.custom-journey .journey-controls #edit-route{left:14px}
 body.custom-journey .journey-controls #mobile-map-toggle{right:14px}
 body.custom-journey .mobile-stop-deck{position:fixed;inset:auto 0 calc(26px + env(safe-area-inset-bottom,0px));height:clamp(260px,42svh,310px);z-index:12;display:flex;gap:10px;overflow-x:auto;overflow-y:hidden;padding:0 28px 0 14px;scroll-snap-type:x mandatory;scroll-padding-left:14px;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x;isolation:isolate}
 .mobile-stop-deck::-webkit-scrollbar{display:none}
 .mobile-stop-card{position:relative;flex:0 0 calc(100vw - 42px);height:100%;display:flex;flex-direction:column;background:#fffdf7;border:0;border-radius:16px;overflow:hidden;scroll-snap-align:start;scroll-snap-stop:always;box-shadow:0 8px 22px #183f291c}
 .stop-card-main{display:flex;flex-direction:column;min-height:0;flex:1;padding:0;text-align:left;width:100%;color:#263731}
 .stop-card-photo{position:relative;width:100%;flex:1;min-height:130px;background:#355547;overflow:hidden}
 .stop-card-photo img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
 .stop-card-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#101f1be6,transparent 80%),linear-gradient(180deg,#13231c80,transparent 40%);pointer-events:none}
 .stop-card-photo>span{position:absolute;bottom:10px;left:16px;color:white;z-index:1;font:600 9px Arial,sans-serif;letter-spacing:1.5px;text-shadow:0 1px 3px #0008}
 .stop-card-copy{padding:12px 16px 8px;width:100%;min-height:0}
 .stop-card-count{font:600 11px Arial,sans-serif;color:#ad6347;margin:0;display:flex;align-items:center;gap:5px}
 .stop-card-count>span{font-weight:400;color:#829080}.stop-card-count .stop-card-hint{margin-left:auto;font-size:10px;letter-spacing:0}
 .stop-card-copy h2{font:25px/1.04 Newsreader,Georgia,serif;letter-spacing:-.4px;margin:7px 0 6px}
 .stop-card-highlights{font:12px/1.4 Arial,sans-serif;color:#405144;margin:0;padding:12px 16px 0;text-align:left;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;flex-shrink:0}
 .stop-card-actions{height:60px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;margin:0 16px;gap:16px}
 .stop-card-actions button,.stop-card-actions a{display:flex;align-items:center;justify-content:space-between;min-height:44px;gap:12px;padding:0;font:600 11px Arial,sans-serif;text-decoration:none;color:#304b3c}.stop-card-actions button{flex:0 0 auto;padding:0 16px;min-height:44px;height:44px;border-radius:24px;background:#304b3c;color:#fff}.stop-card-actions a{color:#304b3c}
 .mobile-stop-sheet{position:fixed;inset:auto 0 0;margin:0;width:100%;max-width:none;max-height:88dvh;padding:32px 24px calc(24px + env(safe-area-inset-bottom,0px));border:0;border-radius:22px 22px 0 0;overscroll-behavior:contain;background:#fffdf7}
 .mobile-stop-sheet>.eyebrow{padding-right:30px;margin-bottom:12px}.mobile-stop-sheet>h2{font:36px/1.05 Newsreader,Georgia,serif;letter-spacing:-.7px;margin:0 0 22px}.mobile-stop-sheet>p,.mobile-stop-sheet .profile-visit p{font:19px/1.5 Newsreader,Georgia,serif;color:#4e5c52}.mobile-stop-sheet .location{font:11px/1.5 Arial,sans-serif}
 .mobile-stop-sheet .sheet-close,.mobile-route-sheet .sheet-close{top:8px;right:12px}
 .sheet-about{width:100%;min-height:48px;font:12px Arial,sans-serif;text-decoration:underline;margin-top:8px}
 .mobile-stop-sheet .photo-swipe-hint{font:11px/1.4 Arial,sans-serif}
 .mobile-stop-sheet .photo-gallery>.profile-photo{margin:0}
 .mobile-stop-sheet .profile-google{margin-top:20px}
 body.custom-journey .maplibregl-ctrl-attrib{font-size:8px!important;line-height:12px!important}
}
@media(max-width:370px){.stop-card-copy h2{font-size:23px}.stop-card-copy{padding-left:13px;padding-right:13px}.stop-card-count .stop-card-hint{font-size:9px}.stop-card-highlights{font-size:11px}}
@media(max-height:550px) and (max-width:700px){body.custom-journey .mobile-stop-deck{height:192px}.stop-card-photo{min-height:90px}.stop-card-copy h2{font-size:23px}.mobile-stop-sheet{max-height:94dvh}}
@media(max-width:700px){
 .winery-pin .pin-name{max-width:calc(50vw - 44px);white-space:normal}
 .mobile-stop-sheet>.eyebrow{font:600 10px/1.5 Arial,sans-serif;letter-spacing:1.2px;color:#966045}
 .mobile-stop-sheet .sheet-close{position:sticky;top:0;float:right;z-index:2;margin-top:-24px;margin-right:-12px;background:#fffdf7;border-radius:50%}
}

/* Mobile motion: the selected card, map and sheet remain spatially connected. */
.sheet-grab{display:none}
@media(max-width:700px){
 body.custom-journey{--motion-arrive:cubic-bezier(.16,1,.3,1);--motion-quick:140ms;--motion-sheet:360ms}
 body.custom-journey .mobile-stop-deck{transition:transform 240ms var(--motion-arrive),opacity 180ms ease,visibility 240ms;transform:translateY(0);opacity:1;visibility:visible}
 .mobile-stop-card{transform:scale(.975);transform-origin:center bottom;opacity:.78;transition:transform 240ms var(--motion-arrive),opacity 180ms ease}
 .mobile-stop-card.current,.mobile-stop-card:has(:focus-visible){transform:scale(1);opacity:1}
 .stop-card-main{transition:background-color var(--motion-quick) ease}
 .stop-card-main:active{background:#edf0e5}
 .stop-card-main:focus-visible{outline-offset:-4px;border-radius:16px 16px 0 0}
 .stop-card-actions :is(button,a):focus-visible{outline-offset:-3px}
 .journey-controls :is(#edit-route,#mobile-map-toggle),.map-tools button,.stop-card-actions :is(button,a),.sheet-close{transition:transform var(--motion-quick) var(--motion-arrive),background-color var(--motion-quick) ease}
 .journey-controls :is(#edit-route,#mobile-map-toggle):active,.map-tools button:active,.sheet-close:active{transform:scale(.94)}
 .stop-card-actions :is(button,a):active{transform:translateY(1px);color:#182d22}
 .winery-pin .pin-num{transition:transform 240ms var(--motion-arrive),background-color 180ms ease,color 180ms ease;box-shadow:0 2px 8px #283a2d23}
 .winery-pin.active .pin-num{box-shadow:0 3px 10px #283a2d40}
 .mobile-stop-sheet,.mobile-route-sheet{overflow-x:hidden;scrollbar-width:thin}
 .mobile-stop-sheet::backdrop,.mobile-route-sheet::backdrop{background:rgb(18 44 43 / calc(.38 * var(--sheet-dim,1)));backdrop-filter:none;animation:sheet-shade-in 260ms ease both}
 .mobile-stop-sheet.sheet-closing::backdrop,.mobile-route-sheet.sheet-closing::backdrop{animation:sheet-shade-out 190ms ease both}
 .sheet-grab{position:sticky;top:-32px;z-index:3;display:flex;align-items:center;justify-content:center;width:80px;height:44px;margin:-28px auto 4px;padding:0;touch-action:none;cursor:grab;background:inherit;border-radius:16px}
 .sheet-grab:active{cursor:grabbing}
 .sheet-grab span{display:block;width:34px;height:4px;border-radius:4px;background:#879582}
 .mobile-stop-sheet .sheet-close{margin-top:-40px}
 .mobile-route-sheet li button{transition:background-color 140ms ease}
 .mobile-route-sheet li button:active{background:#e3e9da}
 .photo-viewer[open]{animation:photo-focus-in 180ms ease}
 @keyframes sheet-shade-in{from{opacity:0}to{opacity:1}}
 @keyframes sheet-shade-out{from{opacity:1}to{opacity:0}}
 @keyframes photo-focus-in{from{opacity:0}to{opacity:1}}
}
@media(prefers-reduced-motion:reduce){
 .mobile-stop-deck,.mobile-stop-card,.photo-viewer,.mobile-stop-sheet,.mobile-route-sheet,.mobile-stop-sheet::backdrop,.mobile-route-sheet::backdrop{animation:none!important;transition:none!important;scroll-behavior:auto!important}
 .mobile-stop-card{transform:none}
}

/* One hierarchy: route context, mapped stops, then the place itself. */
@media(max-width:700px){
 body.custom-journey .map-shell:before{content:'';position:absolute;inset:0 0 auto;height:150px;background:linear-gradient(#e9eee8f5,#e9eee800);z-index:2;pointer-events:none}
 body.custom-journey .journey-controls #edit-route{top:calc(20px + env(safe-area-inset-top,0px));left:20px;max-width:calc(100% - 150px);height:auto;min-height:64px;border:0;border-radius:0;padding:0;background:none;box-shadow:none;text-align:left}
 .mobile-route-label{display:flex;flex-direction:column;gap:8px}
 .mobile-route-label strong{position:relative;font:29px/.97 Newsreader,Georgia,serif;letter-spacing:-.6px}
 .mobile-route-label strong>span{font:20px Arial,sans-serif;display:inline-block;margin-left:8px;vertical-align:2px}
 .mobile-route-label small{font:10px/1.4 Arial,sans-serif;white-space:nowrap;color:#405144}
 body.custom-journey .journey-controls #mobile-map-toggle{top:calc(24px + env(safe-area-inset-top,0px));right:16px;border:1px solid #91a48f;background:#f6f8f2;box-shadow:none;padding:0 14px;min-height:44px;height:44px}
 .stop-photo-top{position:absolute;inset:14px 16px auto;display:flex;align-items:center;justify-content:space-between;z-index:2;color:#fff;font:600 11px/1.4 Arial,sans-serif;text-shadow:0 1px 4px #0009}
 .stop-photo-top>span:first-child{background:#f6f3eb;color:#263731;border-radius:20px;padding:6px 9px;font-variant-numeric:tabular-nums;text-shadow:none}
 .stop-photo-top>span:first-child span{font-weight:400;color:#53644f}
 .stop-photo-title{position:absolute;inset:auto 18px 16px;z-index:2;color:#fff;text-shadow:0 1px 4px #0006}
 .stop-photo-title p{font:11px/1.4 Arial,sans-serif;margin:0 0 5px}
 .stop-photo-title h2{font:31px/1.02 Newsreader,Georgia,serif;letter-spacing:-.5px;margin:0;text-wrap:balance;text-align:left}
 .mobile-stop-card.current{opacity:1}.mobile-stop-card{box-shadow:0 6px 18px #183f292b}
 .stop-card-actions button:active{color:#fff;background:#1c3325}
 .route-map-actions{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #d3d9cb;padding:4px 0 12px}
 .route-map-actions button{font:12px Arial,sans-serif;min-height:44px;text-align:left}
}
@media(max-width:370px){
 .mobile-route-label strong{font-size:26px}
 .mobile-route-label small{font-size:9px}
 .stop-photo-title{left:16px;right:16px}
 .stop-photo-title h2{font-size:28px}
 .stop-card-highlights{font-size:11px}
 .stop-card-actions{gap:10px}
}
@media(max-height:550px) and (max-width:700px){
 body.custom-journey .mobile-stop-deck{height:230px}
 .stop-photo-title h2{font-size:24px}
 .stop-photo-top{top:8px}
 .stop-card-actions{height:52px}
}
