/* The grid bounds the sticky card; only its middle scrolls on short screens. */
.journey-grid{align-items:start}.timeline-column{min-width:0}.route-panel{position:sticky;top:20px;align-self:start;display:flex;flex-direction:column;max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);padding:0;overflow:hidden;isolation:isolate;box-shadow:0 8px 28px #243e3308}
.route-header{padding:22px 22px 12px;flex-shrink:0}.route-header .route-top{margin-bottom:13px}.route-header h3{font-size:20px;margin-bottom:9px}.route-caption{font-size:11px;line-height:1.8;color:#566653}
.route-body{min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#a5b49b transparent;padding:0 20px}.route-body:focus-visible{outline:2px solid var(--rust);outline-offset:-2px}.route-map{height:clamp(290px,41vh,365px);margin:0 -6px 8px}.map-point{width:130px;min-height:44px;padding:3px;font-size:10px}.map-point b{min-width:26px;height:26px}.map-point:hover b{border-color:#263f30;background:#e0e6d6}.map-point[aria-pressed=true] b{background:var(--green)}.route-extras{border-top:1px solid #cbd5c2}.route-extras>summary{min-height:44px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;list-style:none;font-size:11px;gap:10px}.route-extras>summary::-webkit-details-marker{display:none}.route-extras>summary span{font-size:18px;transition:transform .2s}.route-extras[open]>summary span{transform:rotate(45deg)}.route-extras .route-photo{margin:0 0 14px}.route-extras .small{font-size:11px}.route-photo img{height:145px}.route-extras .underlink{font-size:11px}.route-footer{flex-shrink:0;padding:0 20px 14px;background:#e8ecdf;border-top:1px solid #cbd5c2;box-shadow:0 -5px 14px #e8ecdf90}.route-footer .map-selection{border:0;margin:0;padding:12px 0 5px;min-height:0}.map-selection strong{font-size:12px;line-height:1.7}.map-selection a{display:inline-flex;align-items:center;min-height:40px;font-size:11px}.route-step-controls{display:flex;align-items:center;justify-content:space-between;gap:7px}.route-step-controls button{min-height:44px;padding:7px 10px;background:#f6f6ed;border:1px solid #bbc8b1;border-radius:4px;color:var(--green);font-size:11px;transition:background .2s}.route-step-controls button:hover:not(:disabled){background:#d6e0cc}.route-step-controls button:disabled{opacity:.35;cursor:default}.route-step-controls>span{font:11px Georgia,serif;letter-spacing:1px;color:#66755d}
.stop{scroll-margin-top:35px}.stop summary{scroll-margin-top:35px}.stop summary:hover h3{color:var(--rust)}.stop:focus-within{background-color:#e8ecdf55}.stop.selected{border-radius:0 5px 5px 0}.stop .link-row a{display:inline-flex;align-items:center;min-height:44px}.stop dl{align-items:start}.stop dt{overflow-wrap:normal}.journey-mobile-nav{display:none}
#toast{width:max-content;max-width:calc(100% - 36px);text-align:center;line-height:1.7;box-shadow:0 5px 22px #183b2826}.chapter-nav a{border-bottom:2px solid transparent}.chapter-nav a:hover{border-bottom-color:#b8c5ac}
@media(min-width:761px) and (max-width:1100px){.journey-grid{grid-template-columns:310px minmax(0,1fr);gap:30px}.route-header{padding:19px 18px 10px}.route-body{padding:0 15px}.route-footer{padding:0 15px 12px}.map-point{width:124px;font-size:9px}.route-map{height:340px}.stop h3{font-size:21px}}
@media(max-width:760px){.route-panel{position:static;max-height:none;overflow:visible;box-shadow:none}.route-header{padding:22px 22px 12px}.route-body{overflow:visible;padding:0 22px}.route-map{height:365px;width:min(320px,100%);margin:0 auto 12px}.route-footer{padding:0 22px 17px;border-radius:0 0 10px 10px}.route-footer .map-selection strong{font-size:13px}.route-footer .map-selection a{font-size:12px}.route-step-controls button{font-size:12px;flex:1}.route-step-controls span{padding:0 10px}.journey-mobile-nav{position:sticky;top:8px;z-index:5;display:flex;align-items:center;gap:9px;background:#f7f5eef2;backdrop-filter:blur(12px);border:1px solid #c7d1bd;border-radius:7px;padding:7px;margin-bottom:20px;box-shadow:0 5px 20px #1c382312}.journey-mobile-nav button{flex-shrink:0;background:var(--green);color:#fff;border:0;border-radius:4px;min-height:44px;padding:9px 11px;font-size:11px}.journey-mobile-nav select{min-width:0;width:100%;margin:0;min-height:44px;font-size:12px;padding:8px;border-color:#d1d9c9;background:var(--paper)}.stop,.stop summary{scroll-margin-top:88px}.stop dl{grid-template-columns:65px minmax(0,1fr)}.stop-title{min-width:0}.stop h3{overflow-wrap:anywhere}.stop .link-row{gap:2px 17px}.gallery-credit a{padding:6px 0}#journey-route{scroll-margin-top:15px}}
@media(max-width:380px){.overview dd{font-size:21px}.overview .budget{font-size:18px}.overview dd span{font-size:13px!important}.planner-section{padding:20px 14px}.journey-mobile-nav select{font-size:11px}.route-step-controls button{padding:7px}}
@media(prefers-reduced-motion:reduce){.route-panel,.route-extras>summary span,.route-step-controls button{transition:none}.journey-mobile-nav{backdrop-filter:none}}
@media print{.route-panel,.journey-mobile-nav{display:none!important}.timeline-column{display:block}.journey-grid{display:block}.stop,.stop.selected{background:none!important;scroll-margin:0}.stop summary{padding:8px 0;min-height:0;scroll-margin:0}.stop-title .time{font-size:10px}.stop-summary{font-size:9px}.stop .link-row{font-size:8px;gap:8px}.stop .link-row a{min-height:0;display:inline}.stop dl{grid-template-columns:65px 1fr;gap:5px 10px}.overview dt{font-size:9px}.overview dd{font-size:16px}.overview small{font-size:8px}.overview .budget{font-size:16px}}

@media screen and (max-width:760px){.chapter-nav{scrollbar-width:thin;scrollbar-color:#b7c5aa transparent;padding-bottom:12px}.chapter-nav::-webkit-scrollbar{height:3px}.chapter-nav::-webkit-scrollbar-thumb{background:#b7c5aa;border-radius:3px}}
