:root{font-family:Arial,Helvetica,sans-serif;color:#214c3f;background:#f3f7f2;--green:#216c50;--border:#d6e3d6;--muted:#6a8170;--orange:#df7b36;--purple:#856393}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,summary{cursor:pointer}button{color:inherit}button:disabled{opacity:.45;cursor:default}[hidden]{display:none!important}a{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #92b69c;outline-offset:3px}header,main,footer{max-width:1470px;margin:auto}header{padding:14px 30px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.brand{display:flex;gap:14px;align-items:center;text-decoration:none;font-size:12px;color:var(--muted)}.brand img{object-fit:contain}.trial{font-size:10px;letter-spacing:.1em;padding:9px 13px;border:1px solid var(--border);border-radius:20px}main{padding:30px}.eyebrow{font-size:10px;color:#77937e;letter-spacing:.11em;font-weight:600}h1,h2,h3{font-family:Georgia,serif;font-weight:400}h1{font-size:38px;margin:10px 0}h2{font-size:27px;margin:8px 0}.intro p{font-size:14px;color:var(--muted);line-height:1.6;margin:0}.intro{margin-bottom:24px}.tabs{display:flex;gap:26px;border-bottom:1px solid var(--border);margin-bottom:22px}.tabs button{border:0;border-bottom:3px solid transparent;background:none;padding:14px 0;font-size:13px;color:var(--muted)}.tabs button[aria-pressed=true]{border-color:var(--green);color:var(--green);font-weight:600}.total-bar{display:flex;align-items:center;justify-content:space-between;gap:22px;background:#e9f1e6;border:1px solid #d0dfcd;border-radius:12px;padding:19px 22px}.total-bar h2{font-size:31px;margin:7px 0}.total-bar p{font-size:12px;color:#637b66;line-height:1.5;margin:0}.actions{display:flex;gap:8px;flex-wrap:wrap}.actions button,.section-heading button,#reset,#back-map{border:1px solid var(--border);border-radius:7px;background:#fff;padding:11px 13px;min-height:42px;font-size:12px}.actions .primary{background:var(--green);border-color:var(--green);color:white;font-weight:600}.selection-caption{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:18px 0 9px}.selection-caption p{font-size:12px;color:var(--muted);margin:0}#reset{font-size:10px;padding:6px 9px;min-height:30px;background:none}.place-picker{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:20px}.picker-button{background:#fff;border:1px solid var(--border);border-radius:20px;padding:7px 11px;font-size:10px;line-height:1.3;min-height:34px}.picker-button[aria-pressed=true]{background:#e4eee0;border-color:#8eb393;color:#245a3c}.picker-button.is-current{outline:2px solid #a9c4a7;outline-offset:1px}.map-toolbar{display:flex;gap:15px;justify-content:space-between;align-items:center;margin-bottom:11px}.view-switch{display:flex;gap:2px;border:1px solid var(--border);background:#e9efe6;padding:3px;border-radius:7px;flex:none}.view-switch button{border:0;border-radius:5px;background:none;padding:8px 11px;font-size:11px}.view-switch button[aria-pressed=true]{background:#fff;box-shadow:0 1px 5px #173d3010}.map-toolbar>span{font-size:11px;line-height:1.5;color:var(--muted);text-align:right}.map-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:17px;align-items:start}.map-wrap{height:820px;position:relative;overflow:hidden;border:1px solid var(--border);border-radius:12px;background:#e1ece1;min-width:0}#map{position:absolute;inset:0}#photo-layer{position:absolute;inset:0;z-index:5;pointer-events:none;overflow:hidden}#leaders{position:absolute;inset:0;pointer-events:none}.photo-halo{stroke:white;stroke-width:4.5;stroke-linecap:round}.photo-line-link{stroke:#856393;stroke-width:2.2;stroke-linecap:round}.map-photo{position:absolute;pointer-events:auto;width:101px;border:1px solid #bfcec0;border-radius:7px;background:#ffffffed;padding:4px;display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center;box-shadow:0 2px 8px #25483120;transition:opacity .18s}.map-photo strong{font-size:10px;line-height:1.25;font-weight:600;overflow-wrap:anywhere}.map-photo img{display:block;width:91px;height:51px;object-fit:cover;border-radius:4px}.map-photo span{font-size:9px;line-height:1.3;color:#62725f}.map-photo.is-muted{opacity:.52;filter:saturate(.6)}.map-photo.is-selected{border:2px solid #4f8c5f;padding:3px}.map-photo.is-current{outline:2px solid #9872a7;outline-offset:2px}.map-badge{position:absolute;z-index:7;top:12px;left:12px;background:#ffffffed;padding:8px 11px;border-radius:6px;font-size:11px;line-height:1.4;max-width:calc(100% - 70px);box-shadow:0 2px 6px #203e2810;pointer-events:none}#fullscreen{position:absolute;z-index:8;top:10px;right:10px;width:37px;height:37px;font-size:25px;line-height:1;border:1px solid var(--border);background:white;border-radius:5px}.loading{position:absolute;inset:0;z-index:15;display:grid;place-items:center;padding:24px;text-align:center;background:#edf3ea;color:#607d65;font-size:13px}.map-wrap:fullscreen{width:100vw;height:100vh;border-radius:0;border:0}.map-stop,.vehicle{position:absolute;transform:translate(-50%,-50%);border-radius:50%;display:grid;place-items:center;box-shadow:0 2px 6px #1f352c35}.map-stop{width:22px;height:22px;background:#3d7c57;color:#fff;border:2px solid #fff;font-size:9px;cursor:pointer;pointer-events:auto}.map-stop.boat-stop{background:var(--orange)}.vehicle{width:44px;height:44px;z-index:30;background:#fff;border:2px solid #4c84b2;font-size:28px;pointer-events:none}.vehicle.boat{border-color:var(--orange)}.vehicle.cable{border-color:var(--purple)}.vehicle.is-cruise{animation:bob 1.8s ease-in-out infinite}@keyframes bob{50%{transform:translate(-50%,-65%) rotate(-6deg)}}.options-panel{position:relative;background:#fff;border:1px solid var(--border);border-radius:11px;overflow:hidden;min-width:0}.hero{height:190px;position:relative;background:#dfe8df}.hero img{width:100%;height:100%;display:block;object-fit:cover}.hero:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#12362688)}.hero>span{position:absolute;z-index:1;bottom:12px;left:15px;color:#fff;font-size:11px;line-height:1.4}.panel-copy{padding:18px}.panel-copy h2{font-size:27px;line-height:1.15;margin:9px 0 13px}.panel-copy>p{font-size:12px;line-height:1.65;color:var(--muted)}#close-options{display:none;position:absolute;z-index:4;top:10px;right:10px;background:#fff;border:0;border-radius:50%;width:31px;height:31px;font-size:24px;color:#35583e}.include-place{display:flex;align-items:center;gap:10px;background:#edf4e9;padding:12px;border-radius:7px;margin:17px 0;font-size:12px;font-weight:600;line-height:1.5}.include-place input{width:18px;height:18px;accent-color:var(--green);flex:none}.option-row{display:flex;align-items:center;gap:10px;justify-content:space-between;padding:12px 0;border-bottom:1px solid #e4ece1;font-size:12px;line-height:1.5}.option-row:has(select),.option-row.numeric{display:block}.option-row input[type=checkbox]{width:16px;height:16px;accent-color:var(--green);flex:none;margin:0}.option-row .option-text{flex:1}.option-row small{color:#7e917b;white-space:nowrap;font-size:10px}.option-row select{display:block;max-width:100%;width:100%;margin-top:8px;min-height:40px;border:1px solid var(--border);border-radius:6px;padding:7px;background:#fff;color:#28523b;font-size:11px}.minute-controls{display:flex;align-items:center;gap:7px;margin-top:8px;flex-wrap:wrap}.minute-controls input{width:72px;min-height:36px;border:1px solid var(--border);border-radius:5px;padding:7px;color:#315e42;font-size:14px}.minute-controls button{font-size:10px;padding:6px 8px;border:1px solid #dce6d6;background:#f4f7f1;border-radius:5px}.minute-controls span{font-size:10px;color:var(--muted)}.option-hint{font-size:10px;line-height:1.6;color:#75886e}.boat-stations{display:flex;gap:6px;overflow-x:auto;padding:8px 0}.boat-stations button{width:75px;flex:none;text-align:left;background:#fff;border:1px solid var(--border);border-radius:5px;padding:4px;font-size:9px;line-height:1.35}.boat-stations img{width:65px;height:40px;object-fit:cover;display:block;margin-bottom:4px;border-radius:3px}.visit-detail{background:#edf4e9;border-radius:7px;padding:13px;line-height:1.6;font-size:12px;margin:17px 0}.visit-detail strong{display:block;font-size:16px;margin-top:5px}#next-stop{display:block;width:100%;padding:11px;text-align:left;background:#f2f7ed;border:1px solid var(--border);border-radius:7px;color:#2f5d40;font-size:12px}#back-map{margin-top:14px;width:100%;background:#f4f7f1;font-size:11px}.credit{font-size:9px!important;line-height:1.5!important;color:#8b9785!important}.playback-tools{display:flex;gap:20px;justify-content:space-between;margin:15px 0 6px;font-size:12px;line-height:1.5}.playback-tools span{font-size:10px;color:var(--muted);text-align:right}#scrub{display:block;width:100%;height:22px;accent-color:var(--orange);margin:0}.legend{display:flex;flex-wrap:wrap;gap:12px 22px;margin-top:10px;font-size:10px;color:#6f836c}.legend span{display:flex;align-items:center;gap:6px}.legend i{width:23px;border-top:3px solid #4384b3}.legend .boat-line{border-top-color:var(--orange);border-top-style:dashed}.legend .cable-line{border-color:var(--purple)}.legend .photo-line{border-color:#856393;border-top-width:2px}.notes{font-size:11px;line-height:1.7;color:#6f8169;margin-top:14px}.notes p{margin:7px 0}.notes .error{color:#9b4d31}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;margin:30px 0 15px}.section-heading h2{margin:0}.section-heading>span{color:var(--muted);font-size:11px}.journey{display:flex;align-items:stretch;overflow-x:auto;padding:3px 2px 12px}.journey-stop{flex:0 0 132px;width:132px;background:white;border:1px solid var(--border);border-radius:8px;padding:6px;text-align:left;position:relative;color:#31583f}.journey-stop img{display:block;width:118px;height:66px;object-fit:cover;border-radius:4px}.journey-stop>b{position:absolute;top:10px;left:10px;width:20px;height:20px;background:#fff;border-radius:50%;display:grid;place-items:center;font-size:10px}.journey-stop strong{display:block;font-size:11px;line-height:1.4;margin:8px 0 5px}.journey-stop small{font-size:10px;line-height:1.5;color:#73846f;display:block}.journey-stop.is-active{outline:2px solid #6b9870;outline-offset:-2px}.journey-leg{flex:0 0 90px;display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:center;text-align:center;font-size:10px;color:#65826d;line-height:1.5;padding:6px}.journey-leg:before{content:'';display:block;width:100%;border-top:2px dashed #94ad92}.journey-leg.boat{color:#b2713b}.journey-leg.boat:before{border-color:#d8945d}.credits{font-size:11px;color:#7d8d77;line-height:1.7;margin-top:22px}.credits a{color:#597b54}#division-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}.division-card{background:#fff;border:1px solid var(--border);border-radius:10px;overflow:hidden}.division-card summary{display:flex;align-items:center;gap:13px;padding:13px;list-style:none}.division-card summary img{width:80px;height:58px;object-fit:cover;border-radius:5px}.division-card summary small{display:block;font-size:9px;color:#7b9074;margin-bottom:6px}.division-card summary strong{font:400 20px/1.3 Georgia,serif}.division-card summary:after{content:'+';margin-left:auto;font-size:20px}.division-card[open] summary:after{content:'−'}.division-content{padding:0 20px 16px;font-size:13px;line-height:1.75}.division-content p{font-size:11px;color:var(--muted)}.division-content ul{padding-left:18px;margin:0}footer{display:flex;justify-content:space-between;gap:18px;padding:24px 30px;border-top:1px solid var(--border);font-size:11px;color:#7d9176}
@media(max-width:1100px){.map-layout{grid-template-columns:minmax(0,1fr) 280px;gap:12px}.map-wrap{height:900px}.total-bar{align-items:start}.actions{max-width:320px}.map-photo{width:91px}.map-photo img{width:81px;height:48px}.map-photo strong{font-size:9px}.map-photo span{font-size:8px}.panel-copy{padding:16px}.map-toolbar{align-items:start}.map-toolbar>span{font-size:10px}}
@media(max-width:780px){header{padding:11px 16px}.brand span{display:none}.brand img{width:48px;height:48px}main{padding:24px 16px}.intro h1{font-size:32px}.intro p{font-size:12px}.tabs{gap:20px}.tabs button{font-size:11px}.total-bar{display:block;padding:16px}.total-bar h2{font-size:29px}.total-bar p{font-size:11px}.actions{max-width:none;margin-top:14px}.actions button{font-size:11px;padding:10px 11px}.actions .primary{flex:1}.selection-caption{gap:10px}.selection-caption p{font-size:11px}.place-picker{gap:5px;max-height:127px;overflow-y:auto;padding:3px 1px}.picker-button{font-size:9px;padding:6px 8px;min-height:31px}.map-layout{display:block}.map-wrap{height:950px}.options-panel{display:none;position:fixed;bottom:0;left:0;right:0;max-height:82vh;overflow-y:auto;z-index:50;border-radius:15px 15px 0 0;border-top:2px solid #83ab83;box-shadow:0 -12px 50px #193e3540}.options-panel[data-open=true]{display:block}.hero{height:165px}#close-options{display:block}.panel-copy{padding:19px}.panel-copy h2{font-size:27px}.map-toolbar{display:block}.view-switch{display:inline-flex}.map-toolbar>span{display:block;text-align:left;margin-top:8px}.map-photo{width:75px;padding:3px;gap:2px}.map-photo.is-selected{padding:2px}.map-photo img{width:67px;height:39px}.map-photo strong{font-size:9px}.map-photo span{font-size:8px}.map-badge{font-size:10px;line-height:1.4}.playback-tools{font-size:11px;gap:12px}.playback-tools strong{max-width:72%}.playback-tools span{font-size:9px}.section-heading h2{font-size:24px}#division-list{grid-template-columns:minmax(0,1fr)}.division-card summary strong{font-size:19px}.division-content{font-size:12px}.legend{gap:10px 15px}.notes{font-size:10px}.trial{font-size:9px}.option-row select,.minute-controls input{font-size:16px}footer{padding:20px 16px;flex-wrap:wrap}.credit{margin-bottom:0}}
@media(prefers-reduced-motion:reduce){.vehicle.is-cruise{animation:none}.map-photo{transition:none}}
.option-row.choice-row{display:block}.choice-options{display:grid;gap:7px;margin-top:9px}.choice-options button{min-height:40px;background:#fff;border:1px solid var(--border);border-radius:6px;padding:9px 10px;text-align:left;font-size:11px;line-height:1.45}.choice-options button[aria-pressed=true]{background:#eaf2e5;border-color:#8aaf86;color:#2b603b;font-weight:600}#retry-route{background:white;border:1px solid var(--border);border-radius:6px;padding:9px;font-size:11px}

/* Programme totals explain the existing duration without changing route or playback. */
.total-bar{align-items:flex-start}.total-bar>div:first-child{flex:1;min-width:0}.total-bar>.actions{flex:0 0 auto;margin-top:6px}#total-detail{display:grid;gap:10px;margin-top:13px;max-width:890px}.programme-time-row{display:block;border-top:1px solid #d3e0d0;padding-top:9px}.programme-time-heading{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-size:12px;color:#315d44;line-height:1.6}.programme-time-heading>strong{font-weight:600}.programme-time-heading>b{font-weight:600}.programme-time-details{display:block;margin-top:3px;font-size:11px;line-height:1.75;color:#607660;overflow-wrap:anywhere}.programme-time-details b{font-weight:600;white-space:nowrap}@media(max-width:780px){.total-bar>.actions{margin-top:16px}#total-detail{gap:10px}.programme-time-heading{font-size:12px}.programme-time-details{font-size:11px}}

/* Panoramic driving details reuse the saved road legs and preserve all existing totals. */
.programme-car-legs{display:grid;gap:4px;margin-top:7px}.programme-car-leg{display:flex;flex-wrap:wrap;gap:0 7px;align-items:baseline}.programme-car-leg>strong{white-space:nowrap;font-weight:600}.programme-car-leg>strong::before{content:'·';margin-right:7px}@media(max-width:539px){.programme-car-leg{display:block}.programme-car-leg>strong{display:block}.programme-car-leg>strong::before{content:none}}
/* End panoramic driving details. */

/* Estimated tour duration and the included preparation allowance. */
.total-bar .tour-duration-note{font-size:12px;line-height:1.6;max-width:700px;margin:8px 0 5px;color:#526c55}.total-bar .tour-departure-note{font-size:11px;margin:5px 0 0;color:#607660}[data-programme-kind="preparation"] .programme-time-heading{color:#315d44}
/* End estimated tour duration. */

/* Guest selection stays above the map; only the chosen places appear on it. */
.place-selection{margin:30px 0 27px}.selection-heading h2{font-size:30px;line-height:1.2;margin:9px 0 10px}.selection-heading>p{font-size:13px;line-height:1.6;color:var(--muted);margin:0;max-width:650px}.place-selection .selection-caption{margin:18px 0 13px}.place-selection .selection-caption p{font-size:12px;font-weight:600;color:#426d4f}.place-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:17px;margin:0;max-height:none;overflow:visible;padding:0}.place-card{position:relative;min-width:0;overflow:hidden;background:#fff;border:1px solid #d2dfd0;border-radius:11px;box-shadow:0 3px 13px #23452c08;transition:border-color .18s,box-shadow .18s}.place-card.is-selected{border-color:#5b9467;box-shadow:0 0 0 1px #5b9467}.place-card.is-current{box-shadow:0 0 0 2px #b2c8ad,0 5px 16px #23452c0b}.place-card .picker-button{position:relative;display:block;width:100%;min-height:0;background:#fff;border:0;border-radius:0;padding:0;text-align:left;color:#214c3f;line-height:1.4;outline-offset:-4px}.place-card .picker-button[aria-pressed=true]{background:#fff;border:0;color:#214c3f}.place-card .picker-button:hover{background:#f8fbf5}.place-card .picker-button:focus-visible{outline:3px solid #4d865f;outline-offset:-4px}.place-card .picker-button img{display:block;width:100%;height:auto;aspect-ratio:1.75;object-fit:cover;background:#dfe8dc}.picker-copy{display:block;padding:15px 16px 16px}.place-card .picker-button strong{display:block;font:400 21px/1.2 Georgia,serif;overflow-wrap:anywhere}.picker-description{display:block;font-size:11px;line-height:1.6;color:#73816d;margin-top:7px;min-height:35px}.picker-check{position:absolute;top:11px;right:11px;display:grid;place-items:center;width:28px;height:28px;border:1px solid #ffffffce;border-radius:50%;background:#ffffffed;color:#5e7962;font-size:15px;font-weight:700;box-shadow:0 2px 7px #203d2920}.place-card.is-selected .picker-check{border-color:#26704c;background:#26704c;color:#fff}.picker-chevron{display:inline-flex;align-items:center;justify-content:center;margin-top:11px;font-size:10px;font-weight:600;color:#527c58;gap:5px}.place-card .picker-button[aria-expanded=true] .picker-chevron{color:#235c3c}.place-options{padding:0 16px 16px;border-top:1px solid #dce6d6;background:#f8fbf5}.place-options .include-place{font-size:11px;margin:13px 0 6px;padding:11px 10px}.place-options .option-row{font-size:11px;padding:11px 0}.place-options .option-row:last-child{border-bottom:0}.place-options .option-row small{font-size:9px;white-space:normal;text-align:right}.place-options .choice-options button{font-size:10px;padding:8px;min-height:38px}.place-options .minute-controls{gap:5px}.place-options .minute-controls input{width:63px;min-height:36px;font-size:13px}.place-options .minute-controls button{padding:6px;font-size:9px}.place-options .option-hint{font-size:10px;line-height:1.6}.place-options .visit-detail{font-size:11px;margin:12px 0}.place-options .boat-stations button{width:69px}.place-options .boat-stations img{width:59px;height:37px}.selected-map-note{display:flex;align-items:center;gap:7px;margin:0;font-size:11px;color:#54765a;line-height:1.5}.selected-map-note>span{display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#e4eee0;color:#32704b;font-size:12px}.map-layout{grid-template-columns:minmax(0,1fr)}.map-layout[data-options-open=true]{grid-template-columns:minmax(0,1fr) 310px}.options-panel[data-open=false]{display:none}.options-panel[data-open=true]{display:block}.map-toolbar{margin-bottom:12px}.map-toolbar>span{max-width:55%}
@media(max-width:1100px){.place-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.map-layout[data-options-open=true]{grid-template-columns:minmax(0,1fr) 280px}.picker-description{min-height:0}.place-card .picker-button img{aspect-ratio:1.95}.place-options .choice-options button{font-size:11px}.place-options .option-row{font-size:12px}.place-options .minute-controls button{padding:7px 9px;font-size:10px}}
@media(max-width:780px){.place-selection{margin:25px 0}.selection-heading h2{font-size:27px}.selection-heading>p{font-size:12px}.place-selection .selection-caption{margin:16px 0 12px}.place-selection .selection-caption p{font-size:11px}.place-picker{gap:13px;max-height:none;overflow:visible;padding:0}.picker-copy{padding:13px}.place-card .picker-button strong{font-size:21px}.picker-description{font-size:11px}.place-options{padding:0 13px 13px}.place-options .option-row{font-size:11px}.place-options .minute-controls input{font-size:16px}.map-layout[data-options-open=true]{display:block}.map-toolbar>span{max-width:none;margin-top:7px}.map-toolbar .selected-map-note{font-size:11px}.options-panel[data-open=true]{display:block}}
@media(max-width:539px){.place-picker{grid-template-columns:minmax(0,1fr);gap:14px}.selection-heading h2{font-size:27px;max-width:300px}.place-card .picker-button img{aspect-ratio:2.05}.picker-copy{padding:13px 15px 15px}.place-card .picker-button strong{font-size:22px}.picker-description{font-size:12px;line-height:1.5;margin-top:6px}.place-options{padding:0 15px 15px}.place-options .option-row{font-size:12px}.place-options .choice-options button{font-size:11px}.picker-chevron{margin-top:9px}.selected-map-note{font-size:10px}}
@media(prefers-reduced-motion:reduce){.place-card{transition:none}}
.picker-check{color:transparent}.place-card.is-selected .picker-check{color:#fff}.picker-action{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;margin-top:10px;color:#527c58}.picker-action .picker-chevron{margin-top:0;font-size:14px}.selection-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 19px;margin-top:20px;background:#e9f1e6;border:1px solid #cfdfcc;border-radius:10px}.selection-footer>div:first-child{display:flex;flex-direction:column;gap:6px}.selection-footer>div>span{font-size:10px;color:#6c846d}.selection-footer strong{font:400 25px/1.2 Georgia,serif;white-space:nowrap}.selection-footer-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.selection-footer-actions button{border:1px solid var(--border);border-radius:7px;background:#fff;padding:11px 13px;min-height:42px;font-size:12px}.selection-footer-actions .primary{background:var(--green);border-color:var(--green);color:white;font-weight:600}.selection-footer-actions button:focus-visible{outline:3px solid #92b69c;outline-offset:3px}
@media(max-width:780px){.selection-footer{align-items:flex-start;padding:15px;gap:14px}.selection-footer-actions{justify-content:flex-end;gap:7px}.selection-footer-actions button{font-size:11px;padding:10px 11px}.selection-footer strong{font-size:23px}}
@media(max-width:539px){.selection-footer{display:block}.selection-footer>div:first-child{flex-direction:row;justify-content:space-between;align-items:center;gap:12px}.selection-footer-actions{display:grid;grid-template-columns:minmax(0,1fr);margin-top:15px;gap:8px}.selection-footer-actions button{width:100%;font-size:12px;min-height:43px}}

/* A guided choice, before the existing route and animation. */
.wizard-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 30px;padding:0;isolation:isolate}
.wizard-steps button{position:relative;display:flex;align-items:center;gap:12px;min-height:78px;padding:15px 18px;border:1px solid #d5e0d1;border-radius:10px;background:#edf2e9;text-align:left;line-height:1.4;transition:background .18s,border-color .18s}
.wizard-steps button b{display:grid;place-items:center;flex:none;width:31px;height:31px;border:1px solid #b4c7ae;border-radius:50%;background:#f7faf4;font-size:12px;font-weight:500}
.wizard-steps button>span{display:block;min-width:0}.wizard-steps strong{display:block;font-size:13px;font-weight:600}.wizard-steps small{display:block;font-size:10px;color:#7c8b74;margin-top:3px;line-height:1.4}
.wizard-steps button[aria-current=step],.wizard-steps button.is-active{border-color:#3d7a54;background:#fff;box-shadow:0 2px 9px #2356330a}
.wizard-steps button[aria-current=step] b,.wizard-steps button.is-active b{background:var(--green);border-color:var(--green);color:#fff}
.wizard-steps button.is-complete b{background:#deebd7;border-color:#a5bf9d;color:#346d43}.wizard-steps button:hover:not(:disabled){background:#fff;border-color:#9eb899}
.wizard-screen{min-width:0;scroll-margin-top:20px}.step-heading{max-width:740px;margin-bottom:24px}.step-heading h2{font-size:34px;line-height:1.2;margin:9px 0 10px}.step-heading p{font-size:13px;line-height:1.7;color:var(--muted);margin:0}.step-heading .eyebrow{display:block}
.wizard-screen button.primary,.wizard-actions .primary,#confirm-place.primary{background:var(--green);border-color:var(--green);color:#fff;font-weight:600}
.wizard-screen button.primary:hover:not(:disabled),.wizard-actions .primary:hover:not(:disabled){background:#195e43;border-color:#195e43}
.wizard-screen .primary,#editor-close,.wizard-actions button,.review-actions button,.chosen-place button,.lovcen-addon button{min-height:44px;border:1px solid #cfdccc;border-radius:7px;background:#fff;padding:11px 15px;font-size:12px;line-height:1.45}
.boat-intro{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,1fr);border:1px solid #cfddcc;border-radius:13px;overflow:hidden;background:#fff;margin-bottom:22px}
.boat-intro>img{display:block;width:100%;height:100%;min-height:285px;max-height:410px;object-fit:cover;background:#d8e8e1}.boat-intro>div{align-self:center;padding:32px 36px}.boat-intro h3{font-size:32px;line-height:1.15;margin:8px 0 15px}.boat-intro p{font-size:13px;line-height:1.75;color:var(--muted);margin:0 0 21px}.boat-intro .eyebrow{font-size:10px}.boat-intro button{min-width:180px}
.boat-editor,.place-editor{border:1px solid #b4cbb0;border-radius:12px;background:#fff;padding:24px;margin-bottom:22px;box-shadow:0 4px 20px #284a2d06;scroll-margin-top:22px}
.boat-editor h3{font-size:26px;margin:0 0 12px}.boat-editor .option-row{font-size:13px}.boat-editor .choice-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.boat-editor .choice-options button{min-height:70px;padding:15px;font-size:13px;line-height:1.6;border-radius:8px}
.boat-editor .choice-options button[aria-pressed=true]{box-shadow:inset 0 0 0 1px #7caa7d}.boat-editor .boat-stations{gap:10px;padding:12px 0 5px}.boat-editor .boat-stations button{width:112px;font-size:10px;line-height:1.4;padding:5px}.boat-editor .boat-stations img{width:100px;height:60px;margin-bottom:6px}.boat-editor .option-hint{font-size:11px;line-height:1.7}
.wizard-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;padding-top:20px;margin-top:22px;border-top:1px solid #d7e3d2}.wizard-actions>p,.wizard-actions>span{font-size:11px;color:var(--muted);line-height:1.6;margin:0 auto 0 0}.wizard-actions button{min-height:46px}.wizard-actions .primary{min-width:175px}
.wizard-notice{margin:15px 0;padding:13px 16px;background:#edf3e8;border:1px solid #d7e5d0;border-radius:7px;color:#627a60;font-size:12px;line-height:1.7}.wizard-notice strong{color:#315f3e}.wizard-progress-summary{font-size:12px;line-height:1.6;color:#4c6e51;margin:15px 0}
#boat-selection-summary{margin:18px 0}.chosen-place{display:flex;align-items:center;gap:13px;background:#fff;border:1px solid #cbdcc6;border-radius:9px;padding:10px;min-width:0}.chosen-place>img{width:78px;height:54px;object-fit:cover;flex:none;border-radius:5px;background:#dce8d7}.chosen-place>div{min-width:0;flex:1}.chosen-place strong{font-size:13px;line-height:1.4;display:block;overflow-wrap:anywhere}.chosen-place small{display:block;font-size:11px;line-height:1.6;color:#708169;margin-top:4px}.chosen-place button{flex:none;min-height:38px;padding:8px 10px;font-size:10px}.chosen-place button[data-remove-place]{border-color:transparent;background:transparent;color:#8c7462;padding:8px}
#chosen-places{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:17px 0 26px}#chosen-places:empty{display:none}
.place-editor .editor-head{display:flex;align-items:center;gap:20px;padding-bottom:20px;margin-bottom:4px;border-bottom:1px solid #e0e8db}.editor-head>img{width:152px;height:96px;object-fit:cover;border-radius:7px;background:#e1ebdc;flex:none}.editor-head>div{flex:1;min-width:0}.editor-head h3{font-size:28px;margin:0 0 7px;line-height:1.2}.editor-head p{font-size:12px;line-height:1.65;color:var(--muted);margin:0}.editor-head .eyebrow{display:block;margin-bottom:6px}#editor-close{align-self:flex-start;min-width:37px;min-height:37px;padding:6px 10px;font-size:12px}
#place-editor-options{padding:4px 0}.place-editor .include-place{margin:16px 0 3px;max-width:620px}.place-editor .option-row{font-size:13px;padding:14px 0}.place-editor .option-row.numeric{display:block}.place-editor .minute-controls input{min-height:42px}.place-editor .minute-controls button{min-height:36px;padding:7px 12px;font-size:11px}.place-editor .choice-options{display:flex;flex-wrap:wrap;gap:8px}.place-editor .choice-options button{flex:1 1 180px;min-height:45px;font-size:12px;padding:10px 13px}.place-editor .option-hint{font-size:11px}.place-editor .visit-detail{margin:16px 0;font-size:12px}.place-editor .wizard-actions{margin-top:14px;padding-top:18px}
.lovcen-addon{padding:17px 19px;background:#f1f6ed;border:1px solid #d7e4cf;border-radius:8px;margin-top:16px}.lovcen-addon>label{display:block;font-size:12px;font-weight:600;line-height:1.6;margin-bottom:8px}.lovcen-addon p{font-size:12px;color:var(--muted);line-height:1.6;margin:0 0 11px}.lovcen-addon button{font-size:12px;background:white;text-align:left;min-width:230px}.lovcen-addon button[aria-pressed=true]{background:#e1edd9;border-color:#85a87d}.lovcen-addon input{accent-color:var(--green);width:17px;height:17px;vertical-align:middle;margin-right:8px}
.wizard-screen .place-selection{margin:0}.wizard-screen .selection-caption{margin:18px 0 13px}.wizard-screen .place-picker{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.wizard-screen .picker-description{min-height:0}.wizard-screen .place-card .picker-button strong{font-size:21px}.wizard-screen .place-card .picker-button img{aspect-ratio:1.8}
.review-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 20px}.review-heading h2{margin:0}.review-heading p{font-size:12px;color:var(--muted);line-height:1.65;margin:7px 0 0}.review-heading button{min-height:42px;padding:10px 14px;border:1px solid var(--border);background:#fff;border-radius:7px;font-size:11px}
#review-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:25px}.review-choice{display:flex;gap:12px;min-width:0;padding:11px;border:1px solid #d3dfce;background:#fff;border-radius:9px}.review-choice>img{width:80px;height:65px;object-fit:cover;border-radius:5px;background:#e0e9da;flex:none}.review-choice>div{min-width:0;flex:1}.review-choice h3{font:400 20px/1.2 Georgia,serif;margin:0 0 6px;overflow-wrap:anywhere}.review-choice p{font-size:10px;line-height:1.6;color:#6d8264;margin:0}.review-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.review-actions button{min-height:33px;padding:6px 9px;font-size:10px}.review-actions button[data-remove-place]{border:0;background:transparent;color:#8c7462}.wizard-screen .total-bar{margin:0 0 23px}.wizard-screen .map-toolbar{margin-top:21px}
@media(min-width:1500px){.wizard-screen .place-picker{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1100px){.wizard-screen .place-picker{grid-template-columns:repeat(3,minmax(0,1fr))}.wizard-steps button{padding:13px;gap:10px}.wizard-steps strong{font-size:12px}.wizard-steps small{font-size:9px}.boat-intro>div{padding:25px}.boat-intro h3{font-size:29px}.boat-intro>img{min-height:270px}.boat-editor .choice-options{gap:8px}.boat-editor .choice-options button{font-size:12px;padding:12px}#review-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.review-choice h3{font-size:19px}}
@media(max-width:780px){.wizard-steps{gap:7px;margin-bottom:25px}.wizard-steps button{display:block;padding:12px 10px;min-height:93px}.wizard-steps button b{width:25px;height:25px;font-size:10px;margin-bottom:7px}.wizard-steps strong{font-size:11px;line-height:1.35}.wizard-steps small{font-size:9px;margin-top:4px}.step-heading{margin-bottom:20px}.step-heading h2{font-size:29px;line-height:1.2}.step-heading p{font-size:12px}.boat-intro{grid-template-columns:minmax(0,1fr)}.boat-intro>img{height:230px;min-height:0;max-height:none}.boat-intro>div{padding:23px}.boat-intro h3{font-size:29px}.boat-intro p{font-size:12px;margin-bottom:17px}.boat-editor,.place-editor{padding:18px}.boat-editor .choice-options{grid-template-columns:minmax(0,1fr)}.boat-editor .choice-options button{min-height:51px}.boat-editor .option-row{font-size:12px}.wizard-actions{gap:8px;margin-top:20px;padding-top:17px}.wizard-actions>p,.wizard-actions>span{flex-basis:100%;font-size:10px}.wizard-actions button{font-size:11px;padding:10px 13px}.wizard-actions .primary{min-width:160px}.wizard-screen .place-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.wizard-screen .place-card .picker-button strong{font-size:20px}.wizard-screen .place-card .picker-button img{aspect-ratio:1.7}.wizard-screen .picker-copy{padding:12px}.wizard-screen .picker-description{font-size:10px;line-height:1.6}.wizard-screen .picker-action{font-size:10px}.editor-head>img{width:104px;height:78px}.place-editor .editor-head{gap:13px;align-items:start}.editor-head h3{font-size:25px}.editor-head p{font-size:11px}.place-editor .option-row{font-size:12px}.place-editor .minute-controls input{font-size:16px}.place-editor .minute-controls button{min-height:39px}.place-editor .choice-options button{font-size:11px}.lovcen-addon{padding:14px}.lovcen-addon button{min-width:0;width:100%;font-size:11px}.review-heading{align-items:start;gap:12px}.review-heading h2{font-size:28px}.review-heading p{font-size:11px}.review-heading button{font-size:10px;white-space:nowrap}#chosen-places{grid-template-columns:minmax(0,1fr);margin-bottom:20px}.chosen-place{gap:10px}.review-choice>img{width:68px;height:56px}.review-choice h3{font-size:18px}.review-choice p{font-size:10px}.review-choice{gap:10px;padding:10px}}
@media(max-width:539px){.wizard-steps{gap:5px}.wizard-steps button{padding:10px 8px;min-height:85px;border-radius:8px}.wizard-steps small{display:none}.wizard-steps strong{font-size:10px}.step-heading h2{font-size:28px}.boat-intro>img{height:195px}.boat-intro>div{padding:21px}.boat-intro h3{font-size:28px}.boat-intro button{width:100%;min-width:0}.boat-editor,.place-editor{padding:15px}.boat-editor .boat-stations button{width:93px}.boat-editor .boat-stations img{width:81px;height:50px}.wizard-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:9px}.wizard-actions button{width:100%;font-size:12px;min-height:45px}.wizard-actions .primary{min-width:0}.wizard-actions>p,.wizard-actions>span{grid-column:1;margin-bottom:4px}.wizard-actions .primary{grid-row:auto}.wizard-screen .place-picker{gap:10px}.wizard-screen .place-card .picker-button strong{font-size:19px;line-height:1.25}.wizard-screen .picker-copy{padding:11px}.wizard-screen .picker-description{font-size:10px}.wizard-screen .picker-check{width:23px;height:23px;right:8px;top:8px;font-size:12px}.wizard-screen .picker-action{font-size:9px;align-items:start;gap:4px}.wizard-screen .place-card .picker-button img{aspect-ratio:1.55}.editor-head>img{width:78px;height:68px}.place-editor .editor-head{gap:10px;padding-bottom:16px}.editor-head h3{font-size:23px}.editor-head p{font-size:10px}.editor-head .eyebrow{font-size:8px}#editor-close{padding:5px;min-width:30px;min-height:32px;font-size:10px}.chosen-place{flex-wrap:wrap;gap:9px}.chosen-place>img{width:65px;height:49px}.chosen-place>div{min-width:calc(100% - 84px)}.chosen-place>button{min-height:34px;margin-left:74px}.chosen-place>button+button{margin-left:0}.chosen-place strong{font-size:12px}.chosen-place small{font-size:10px}.review-heading{display:block}.review-heading button{margin-top:12px}#review-choices{grid-template-columns:minmax(0,1fr);gap:9px}.review-choice>img{width:81px;height:64px}.review-choice h3{font-size:20px}.review-choice p{font-size:11px}.review-actions button{font-size:10px;min-height:34px}.wizard-notice{font-size:11px;padding:11px 13px}.wizard-progress-summary{font-size:11px}.wizard-screen .total-bar{margin-bottom:18px}}
@media(prefers-reduced-motion:reduce){.wizard-steps button{transition:none}}

/* Final guided-flow markup: compact summaries with separate action rows. */
.review-heading{display:block;margin-bottom:24px}.review-heading h2{margin:9px 0 10px}.review-heading .wizard-actions{justify-content:flex-start;border:0;padding-top:0;margin-top:16px}.review-heading .wizard-actions button{margin-top:0;white-space:normal}
.review-choice,.chosen-place{display:grid;grid-template-columns:80px minmax(0,1fr);column-gap:12px;row-gap:9px;align-items:start}.review-choice>img,.chosen-place>img{grid-row:1 / span 2;width:80px;height:65px}.review-choice>div,.chosen-place>div{min-width:0}.review-choice>.review-actions,.chosen-place>.review-actions{grid-column:2;display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0;flex:none}.chosen-place>.review-actions button{margin:0;min-height:34px;padding:6px 9px;font-size:10px}.chosen-place>.review-actions button[data-remove-place]{background:transparent;border-color:transparent;padding:6px 8px}
.lovcen-addon{display:grid;grid-template-columns:96px minmax(0,1fr);gap:16px;align-items:start}.lovcen-addon>img{display:block;width:96px;height:74px;object-fit:cover;border-radius:6px;background:#e0ebd9}.lovcen-addon>div{min-width:0}.lovcen-addon strong{display:block;font-size:13px;line-height:1.5;margin:0 0 6px}.lovcen-addon p{margin-bottom:11px}.lovcen-addon button{min-width:0;max-width:100%;width:auto;white-space:normal}.lovcen-addon button+button{margin-top:8px}.nested-options{margin:14px 0 4px;padding:16px 18px 8px;border-left:3px solid #93b58a;border-radius:0 7px 7px 0;background:#f6f9f2}.nested-options .option-row:last-child{border-bottom:0}
.boat-stations .boat-station{width:112px;flex:none;background:#fff;border:1px solid var(--border);border-radius:5px;padding:5px;font-size:10px;line-height:1.45;color:#54704d}.boat-stations .boat-station img{display:block;width:100px;height:60px;object-fit:cover;margin-bottom:6px;border-radius:3px}
@media(max-width:780px){.review-heading h2{font-size:29px}.review-choice,.chosen-place{grid-template-columns:68px minmax(0,1fr);column-gap:10px}.review-choice>img,.chosen-place>img{width:68px;height:56px}.review-heading .wizard-actions{display:flex}.nested-options{padding:13px 14px 6px}.lovcen-addon{grid-template-columns:80px minmax(0,1fr);gap:13px}.lovcen-addon>img{width:80px;height:66px}.lovcen-addon strong{font-size:12px}}
@media(max-width:539px){.review-heading h2{font-size:28px}.review-heading .wizard-actions button{width:auto;min-height:41px;font-size:11px}.review-choice{grid-template-columns:81px minmax(0,1fr);row-gap:8px}.review-choice>img{width:81px;height:64px}.chosen-place{grid-template-columns:65px minmax(0,1fr);row-gap:7px}.chosen-place>img{width:65px;height:49px}.chosen-place>div{min-width:0}.chosen-place>.review-actions button{min-height:34px;font-size:10px}.lovcen-addon{grid-template-columns:70px minmax(0,1fr);gap:11px;padding:13px}.lovcen-addon>img{width:70px;height:61px}.lovcen-addon p{font-size:11px}.lovcen-addon button{font-size:10px;padding:9px 10px;min-height:40px;width:100%}.nested-options{padding:11px 12px 5px}.boat-stations .boat-station{width:93px;font-size:9px}.boat-stations .boat-station img{width:81px;height:50px}}
.parking-stop{background:#2369b0!important;width:32px;height:32px;border:3px solid white;border-radius:7px;font-weight:700;font-size:19px;z-index:4;cursor:default;pointer-events:none}
.journey-stop.journey-parking{flex:0 0 108px;width:108px;align-self:center;min-height:108px;padding:11px 8px;background:#edf5fc;border-color:#b7d2e9;text-align:center;color:#315f84;box-shadow:none}
.journey-parking-symbol{display:grid;place-items:center;width:31px;height:31px;margin:0 auto 7px;border-radius:6px;background:#2369b0;color:#fff;font-size:22px;font-weight:700;line-height:1}
.journey-parking strong{font-size:10px;line-height:1.4;margin:0 0 5px}
.journey-parking small{font-size:9px;line-height:1.5;color:#627c90}
.journey-parking.is-active{outline-color:#2369b0;background:#e0effc}

/* The cable-car visit is one itinerary card; the route animation stays separate. */
.journey-stop.journey-cable{flex:0 0 175px;width:175px}
.journey-cable img{width:100%;height:86px}
.journey-cable .cable-card-details{display:grid;gap:5px;margin:7px 0 0;font-size:10px;line-height:1.4;color:#6b8068}
.cable-card-details>span{display:flex;justify-content:space-between;align-items:baseline;gap:7px}
.cable-card-details em{flex:none;white-space:nowrap;font-style:normal;font-weight:600;color:#31583f}
.journey-cable .cable-card-total{margin-top:8px;padding-top:7px;border-top:1px solid #dce7d7;font-size:10px;line-height:1.4;font-weight:600;color:#31583f}
.journey:has(.journey-cable)>.journey-stop:not(.journey-cable){align-self:center}

/* Two optional choices on one page; the route review retains its existing layout. */
.stacked-choice .intro{margin-bottom:24px}
.stacked-choice .intro p{max-width:750px}
.stacked-choice .choice-guide{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-top:18px}
.stacked-choice .choice-guide a{display:inline-flex;align-items:center;gap:9px;min-height:40px;padding:10px 15px;border:1px solid #c7d8ce;border-radius:24px;background:#fff;text-decoration:none;font-size:12px;font-weight:600;line-height:1.35;color:#356452;transition:background .15s,border-color .15s}
.stacked-choice .choice-guide a:first-child{color:#315f70;background:#edf5f7;border-color:#c4dce2}
.stacked-choice .choice-guide a:hover{background:#e5efe6;border-color:#88ae94}
.stacked-choice .choice-guide a:focus-visible{outline:3px solid #92b69c;outline-offset:3px}
.stacked-choice #boat-step,.stacked-choice #car-step{padding:26px;border:1px solid #d1dfd3;border-radius:15px;scroll-margin-top:18px}
.stacked-choice #boat-step{background:#edf5f4;border-color:#c8dcda;margin-bottom:24px}
.stacked-choice #car-step{background:#f9fbf6}
.stacked-choice #boat-step>.step-heading,.stacked-choice #car-step>.step-heading{max-width:840px;margin-bottom:21px}
.stacked-choice #boat-step>.step-heading .eyebrow{color:#587e84}
.stacked-choice #boat-step>.step-heading h2,.stacked-choice #car-step>.step-heading h2{font-size:32px;line-height:1.2;margin:9px 0 10px}
.stacked-choice #boat-step>.step-heading p,.stacked-choice #car-step>.step-heading p{max-width:730px}
.stacked-choice #boat-step .boat-intro{grid-template-columns:minmax(0,1.05fr) minmax(280px,1fr);border-color:#c7dcd8;border-radius:11px;margin-bottom:0}
.stacked-choice #boat-step .boat-intro>img{min-height:240px;max-height:300px}
.stacked-choice #boat-step .boat-intro>div{padding:26px 30px}
.stacked-choice #boat-step .boat-intro h3{font-size:30px;margin:8px 0 12px}
.stacked-choice #boat-step .boat-intro p{margin-bottom:19px}
.stacked-choice #boat-step .boat-editor{margin-bottom:0;border-color:#afc9c4}
.stacked-choice #boat-selection-summary{margin:15px 0 0;padding:13px 16px;border:1px solid #bdd4cb;border-radius:8px;background:#fff;color:#37664f}
.stacked-choice #boat-navigation{justify-content:flex-start;border:0;padding-top:0;margin-top:12px}
.stacked-choice #boat-navigation #boat-skip{background:transparent;border-color:#b7cec8;min-height:38px;padding:8px 12px;font-size:11px}
.stacked-choice #boat-next,.stacked-choice #car-back{display:none!important}
.stacked-choice #car-step .selection-caption{margin-top:0}
.stacked-choice #car-step .place-picker{margin-bottom:0}
.stacked-choice #car-step .selection-footer{position:static;margin-top:24px;padding:20px 22px;box-shadow:none;background:#e6efe1;border-color:#c6dac0;align-items:center}
.stacked-choice #car-step .selection-footer>div:first-child{gap:7px}
.stacked-choice #car-step .selection-footer>div>span{font-size:11px}
.stacked-choice #car-step .selection-footer strong{white-space:normal;font-size:24px;line-height:1.25}
.stacked-choice #selection-summary{max-width:720px;font-size:11px;line-height:1.6;color:#627a60;margin:0;overflow-wrap:anywhere}
.stacked-choice #selection-summary:empty{display:none}
.stacked-choice #car-step .selection-footer-actions{flex:none}
.stacked-choice #car-step #car-review{min-width:215px;min-height:46px}
.stacked-choice #selection-hint:empty{display:none}

@media(max-width:1100px){
  .stacked-choice #boat-step,.stacked-choice #car-step{padding:22px}
  .stacked-choice #boat-step .boat-intro>img{min-height:235px;max-height:285px}
  .stacked-choice #boat-step .boat-intro>div{padding:23px 25px}
}
@media(max-width:780px){
  .stacked-choice .intro{margin-bottom:21px}
  .stacked-choice .choice-guide{margin-top:15px;gap:8px}
  .stacked-choice .choice-guide a{font-size:11px;padding:9px 12px}
  .stacked-choice #boat-step,.stacked-choice #car-step{padding:19px;border-radius:12px}
  .stacked-choice #boat-step{margin-bottom:20px}
  .stacked-choice #boat-step>.step-heading h2,.stacked-choice #car-step>.step-heading h2{font-size:28px}
  .stacked-choice #boat-step .boat-intro{grid-template-columns:minmax(0,1fr)}
  .stacked-choice #boat-step .boat-intro>img{height:210px;min-height:0;max-height:none}
  .stacked-choice #boat-step .boat-intro>div{padding:22px}
  .stacked-choice #boat-step .boat-intro h3{font-size:28px}
  .stacked-choice #car-step .selection-footer{gap:15px;padding:17px;align-items:flex-start}
  .stacked-choice #car-step .selection-footer strong{font-size:22px}
  .stacked-choice #car-step #car-review{min-width:185px;font-size:11px}
}
@media(max-width:539px){
  .stacked-choice main{padding:23px 14px}
  .stacked-choice .intro h1{font-size:31px;line-height:1.15}
  .stacked-choice .choice-guide{gap:7px}
  .stacked-choice .choice-guide a{font-size:10px;min-height:37px;padding:9px 11px}
  .stacked-choice #boat-step,.stacked-choice #car-step{padding:15px;border-radius:11px}
  .stacked-choice #boat-step{margin-bottom:18px}
  .stacked-choice #boat-step>.step-heading,.stacked-choice #car-step>.step-heading{margin-bottom:17px}
  .stacked-choice #boat-step>.step-heading h2,.stacked-choice #car-step>.step-heading h2{font-size:26px;line-height:1.2}
  .stacked-choice #boat-step>.step-heading p,.stacked-choice #car-step>.step-heading p{font-size:11px;line-height:1.7}
  .stacked-choice #boat-step>.step-heading .eyebrow,.stacked-choice #car-step>.step-heading .eyebrow{font-size:9px;line-height:1.5}
  .stacked-choice #boat-step .boat-intro>img{height:174px}
  .stacked-choice #boat-step .boat-intro>div{padding:19px}
  .stacked-choice #boat-step .boat-intro h3{font-size:26px}
  .stacked-choice #boat-step .boat-intro p{font-size:11px;line-height:1.7;margin-bottom:17px}
  .stacked-choice #boat-step .boat-intro button{min-height:44px}
  .stacked-choice #boat-navigation{display:flex;margin-top:10px}
  .stacked-choice #boat-navigation #boat-skip{width:auto;min-height:38px;font-size:11px}
  .stacked-choice #boat-selection-summary{padding:11px 12px;font-size:11px}
  .stacked-choice #car-step .place-picker{gap:9px}
  .stacked-choice #car-step .picker-copy{padding:10px}
  .stacked-choice #car-step .place-card .picker-button strong{font-size:18px}
  .stacked-choice #car-step .picker-description{font-size:10px;line-height:1.55}
  .stacked-choice #car-step .picker-action{font-size:9px;line-height:1.4}
  .stacked-choice #car-step .selection-caption{gap:9px}
  .stacked-choice #car-step .selection-caption p{font-size:10px}
  .stacked-choice #car-step .selection-footer{padding:15px;margin-top:20px}
  .stacked-choice #car-step .selection-footer>div:first-child{display:block}
  .stacked-choice #car-step .selection-footer strong{display:block;margin-top:7px;font-size:22px}
  .stacked-choice #selection-summary{margin-top:7px;font-size:10px;line-height:1.6}
  .stacked-choice #car-step .selection-footer-actions{margin-top:15px}
  .stacked-choice #car-step #car-review{width:100%;min-width:0;font-size:12px}
}
@media(prefers-reduced-motion:reduce){.stacked-choice .choice-guide a{transition:none}}

/* A road feature of the chosen route, never a separate visit. */
.serpentine-note{display:flex;align-items:flex-start;gap:9px;margin:18px 0 15px;padding:12px 15px;border:1px solid #e4cc73;border-radius:8px;background:#fff7d8;color:#6c5219;font-size:12px;line-height:1.6}
.serpentine-note>span{flex:none;font-weight:700}
.legend .serpentine-line{border-top-color:#e9b92b;border-top-width:5px}
.route-feature-label{position:absolute;transform:translate(-50%,calc(-100% - 11px));padding:6px 9px;border:1px solid #b88c24;border-radius:6px;background:#fff4bf;color:#654913;font-size:11px;font-weight:600;line-height:1.3;white-space:nowrap;pointer-events:none;z-index:5;box-shadow:0 2px 6px #58461422}
.choice-route-feature{display:block;margin-top:7px;font-size:10px;line-height:1.5;color:#7b5b14;font-weight:600}
.journey-leg .leg-route-feature{display:block;font-size:9px;font-weight:600;line-height:1.4;padding:4px;border-radius:4px;background:#fff5ce;color:#795b1b;max-width:90px}
@media(max-width:539px){.serpentine-note{font-size:11px;padding:10px 12px}.route-feature-label{font-size:10px;padding:5px 7px;max-width:160px;white-space:normal;text-align:center}}

/* The lake choices extend the published layout as a third matching section. */
.stacked-choice #car-step{margin-bottom:24px}
.stacked-choice #lake-step{padding:26px;border:1px solid #d1dfd3;border-radius:15px;background:#f9fbf6;scroll-margin-top:18px}
.stacked-choice #lake-step>.step-heading{max-width:840px;margin-bottom:21px}
.stacked-choice #lake-step>.step-heading h2{font-size:32px;line-height:1.2;margin:9px 0 10px}
.stacked-choice #lake-step>.step-heading p{max-width:730px}
.stacked-choice #lake-step .selection-caption{margin-top:0}
.stacked-choice #lake-step .place-picker{margin-bottom:0}
#lake-chosen-places{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:17px 0 26px}
#lake-chosen-places:empty{display:none}
.stacked-choice #selection-overview .selection-footer{position:static;margin-top:24px;padding:20px 22px;box-shadow:none;background:#e6efe1;border-color:#c6dac0;align-items:center}
.stacked-choice #selection-overview .selection-footer>div:first-child{gap:7px}
.stacked-choice #selection-overview .selection-footer>div>span{font-size:11px}
.stacked-choice #selection-overview .selection-footer strong{white-space:normal;font-size:24px;line-height:1.25}
.stacked-choice #selection-overview .selection-footer-actions{flex:none}
.stacked-choice #selection-overview #car-review{min-width:215px;min-height:46px}
@media(max-width:1100px){
  .stacked-choice #lake-step{padding:22px}
}
@media(max-width:780px){
  .stacked-choice #car-step{margin-bottom:20px}
  .stacked-choice #lake-step{padding:19px;border-radius:12px}
  .stacked-choice #lake-step>.step-heading h2{font-size:28px}
  #lake-chosen-places{grid-template-columns:minmax(0,1fr);margin-bottom:20px}
  .stacked-choice #selection-overview .selection-footer{gap:15px;padding:17px;align-items:flex-start}
  .stacked-choice #selection-overview .selection-footer strong{font-size:22px}
  .stacked-choice #selection-overview #car-review{min-width:185px;font-size:11px}
}
@media(max-width:539px){
  .stacked-choice #car-step{margin-bottom:18px}
  .stacked-choice #lake-step{padding:15px;border-radius:11px}
  .stacked-choice #lake-step>.step-heading{margin-bottom:17px}
  .stacked-choice #lake-step>.step-heading h2{font-size:26px;line-height:1.2}
  .stacked-choice #lake-step>.step-heading p{font-size:11px;line-height:1.7}
  .stacked-choice #lake-step>.step-heading .eyebrow{font-size:9px;line-height:1.5}
  .stacked-choice #lake-step .place-picker{gap:9px}
  .stacked-choice #lake-step .picker-copy{padding:10px}
  .stacked-choice #lake-step .place-card .picker-button strong{font-size:18px}
  .stacked-choice #lake-step .picker-description{font-size:10px;line-height:1.55}
  .stacked-choice #lake-step .picker-action{font-size:9px;line-height:1.4}
  .stacked-choice #lake-step .selection-caption{gap:9px}
  .stacked-choice #lake-step .selection-caption p{font-size:10px}
  .stacked-choice #selection-overview .selection-footer{padding:15px;margin-top:20px}
  .stacked-choice #selection-overview .selection-footer>div:first-child{display:block}
  .stacked-choice #selection-overview .selection-footer strong{display:block;margin-top:7px;font-size:22px}
  .stacked-choice #selection-overview .selection-footer-actions{margin-top:15px}
  .stacked-choice #selection-overview #car-review{width:100%;min-width:0;font-size:12px}
}

/* The boat entry uses the same card grid and mobile sizing as the places. */
.stacked-choice #boat-step #boat-intro.place-picker{margin-bottom:0}
@media(max-width:539px){
 .stacked-choice #boat-step #boat-intro.place-picker{gap:9px}
 .stacked-choice #boat-step #boat-intro .picker-copy{padding:10px}
 .stacked-choice #boat-step #boat-intro .place-card .picker-button strong{font-size:18px}
 .stacked-choice #boat-step #boat-intro .picker-description{font-size:10px;line-height:1.55}
 .stacked-choice #boat-step #boat-intro .picker-action{font-size:9px;line-height:1.4}
}

/* One location card groups Rijeka's visit and cruise without changing the route. */
.journey-stop.journey-rijeka{flex:0 0 175px;width:175px}
.journey-rijeka img{width:100%;height:86px}
.journey-rijeka .visit-card-details{display:grid;gap:5px;margin:7px 0 0;font-size:10px;line-height:1.4;color:#6b8068}
.visit-card-details>span{display:flex;justify-content:space-between;align-items:baseline;gap:7px}
.visit-card-details em{flex:none;white-space:nowrap;font-style:normal;font-weight:600;color:#31583f}
.journey-rijeka .visit-card-total{margin-top:8px;padding-top:7px;border-top:1px solid #dce7d7;font-size:10px;line-height:1.4;font-weight:600;color:#31583f}
.journey:has(.journey-rijeka)>.journey-stop:not(.journey-rijeka){align-self:center}

/* Virpazar shares the existing grouped visit/cruise card dimensions. */
.journey-stop.journey-virpazar{flex:0 0 175px;width:175px}
.journey-virpazar img{width:100%;height:86px}
.journey-virpazar .visit-card-details{display:grid;gap:5px;margin:7px 0 0;font-size:10px;line-height:1.4;color:#6b8068}
.journey-virpazar .visit-card-total{margin-top:8px;padding-top:7px;border-top:1px solid #dce7d7;font-size:10px;line-height:1.4;font-weight:600;color:#31583f}
.journey:has(.journey-virpazar)>.journey-stop:not(.journey-virpazar){align-self:center}

/* The route camera stays fixed; only this independent map enlarges the crossing. */
.map-stage{position:relative;min-width:0;container-type:inline-size}
.perast-detail{position:absolute;left:14px;top:14px;bottom:auto;width:308px;padding:10px;z-index:8;border:1px solid var(--border);border-radius:12px;background:#fff;box-shadow:0 6px 22px #1f352c30}
.perast-detail-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.perast-detail-heading strong{font-size:13px;color:var(--green)}
.perast-detail-heading>span{font-size:10px;color:var(--muted)}
#perast-detail-map{height:212px;width:100%;border-radius:6px;overflow:hidden}
#perast-detail-status{margin:8px 2px 0;font-size:11px;line-height:1.45;color:var(--muted)}
.perast-detail-label{position:absolute;transform:translate(-50%,19px);padding:3px 5px;background:#fffffff2;border-radius:4px;white-space:nowrap;color:#31583f;font:500 11px/1.4 Arial,sans-serif;box-shadow:0 1px 5px #1f352c25;pointer-events:none}
.perast-detail-label.perast{transform:translate(-60%,-28px)}
.perast-detail-label:before{content:'';position:absolute;left:50%;top:-14px;width:8px;height:8px;background:var(--green);border:2px solid #fff;border-radius:50%;transform:translateX(-50%)}
.perast-detail-label.perast:before{top:calc(100% + 3px);left:60%}
.vehicle.perast-detail-vehicle{width:36px;height:36px;font-size:24px}
.map-stage:fullscreen{width:100vw;height:100vh;background:#e1ece1}
.map-stage:fullscreen .map-wrap{width:100%;height:100%;border:0;border-radius:0}
@media(max-width:780px){.perast-detail{position:relative;left:auto!important;top:auto!important;bottom:auto;width:100%;margin-top:10px;box-shadow:0 3px 12px #1f352c15}#perast-detail-map{height:220px}}
@container(max-width:679px){.perast-detail{position:relative;left:auto!important;top:auto!important;bottom:auto;width:100%;margin-top:10px;box-shadow:0 3px 12px #1f352c15}}
.map-stage:fullscreen .perast-detail{position:absolute;top:auto!important;left:14px!important;bottom:48px;width:min(308px,calc(100% - 28px));margin:0}

/* Programme journey groups: presentation only; original cards and route order remain intact. */
.journey{display:grid;gap:16px;overflow:visible;padding:0;min-width:0}.journey-programme{min-width:0;border:1px solid #cbded2;border-radius:10px;padding:14px;background:#edf4e9}.journey-programme-boka{border-color:#bbd4e2;background:#eaf4fa}.journey-programme-lake{border-color:#bcdedb;background:#edf8f4}.journey-programme-heading{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:8px}.journey-programme-heading h3{font:600 13px/1.5 Arial,Helvetica,sans-serif;margin:0;color:#315e50}.journey-programme-heading>strong{font-size:12px;white-space:nowrap;color:#416b60}.journey-programme-boka .journey-programme-heading h3,.journey-programme-boka .journey-programme-heading>strong{color:#345f7b}.journey-programme-note{font-size:10px;color:#617f90;line-height:1.5;margin:0 0 10px}.journey-programme-stops{display:flex;align-items:stretch;overflow-x:auto;min-width:0;padding:4px 2px 12px}.journey-transfer{justify-content:center;padding:0}.journey-transfer>.journey-leg{flex-basis:110px;min-height:70px}.journey-programme-stops:has(.journey-cable)>.journey-stop:not(.journey-cable),.journey-programme-stops:has(.journey-rijeka)>.journey-stop:not(.journey-rijeka),.journey-programme-stops:has(.journey-virpazar)>.journey-stop:not(.journey-virpazar){align-self:center}@media(max-width:780px){.journey{gap:12px}.journey-programme{padding:12px 10px}.journey-programme-heading{gap:10px}.journey-programme-heading h3{font-size:12px}.journey-programme-heading>strong{font-size:11px}.journey-programme-note{font-size:10px}}
/* Keep saved guest/owner views read-only from the first paint, before the module loads. */
.saved-tour-view .choice-guide,.saved-tour-view #boat-step,.saved-tour-view #car-step,.saved-tour-view #lake-step,.saved-tour-view #selection-overview,.saved-tour-view #review-choices,.saved-tour-view .selection-footer,.saved-tour-view #review-back,.saved-tour-view #edit,.saved-tour-view #reset,.saved-tour-view #edit-this,.saved-tour-view #retry-route{display:none!important}.saved-tour-view .intro{padding-bottom:14px}.saved-tour-view .review-heading{display:none}
/* End programme journey groups. */

.tour-language-toolbar{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin:0 0 20px;font-size:13px}.tour-language-toolbar[hidden]{display:none}.tour-language-toolbar select{width:auto;max-width:210px;padding:7px 12px;border:1px solid #cbdcd6;border-radius:8px;background:white;color:#174d4a}.tour-language-toolbar label{font-weight:600}
/* The estimate is separate from route calculation and map playback. */
.tour-price-estimate{margin:18px 0 4px;padding:17px 18px;border:1px solid #bed5cc;background:#f3faf6;border-radius:12px;text-align:left}.tour-price-estimate[hidden]{display:none!important}.tour-price-estimate h3{margin:0 0 12px;font-size:17px;color:#244b43}.tour-price-controls{display:grid;grid-template-columns:100px minmax(0,1fr);gap:12px;margin-bottom:14px}.tour-price-controls[hidden]{display:none}.tour-price-controls label{display:grid;gap:5px;min-width:0;font-size:12px;color:#50685f}.tour-price-controls select{width:100%;min-height:42px;padding:9px;border:1px solid #bed0c7;border-radius:8px;background:white;color:#244b43;font:inherit;font-size:14px}.tour-price-result{display:flex;align-items:baseline;gap:8px 14px;flex-wrap:wrap}.tour-price-result>strong{color:#12645e;font-size:32px;line-height:1.15}.tour-price-result>span{font-size:13px;color:#50685f}.tour-price-result>b{font-size:18px;color:#12645e}.tour-price-result small{flex-basis:100%;font-size:12px}.tour-price-result .tour-price-unconfirmed{font-size:20px;color:#8b6018}.tour-price-note{margin:10px 0 0!important;font-size:12px!important;line-height:1.6!important;color:#50685f!important}@media(max-width:480px){.tour-price-estimate{padding:14px}.tour-price-controls{grid-template-columns:75px minmax(0,1fr);gap:9px}.tour-price-controls select{font-size:12px;padding:8px}.tour-price-result>strong{font-size:29px}.tour-price-result>b{flex-basis:100%;font-size:16px}}
/* A boat programme already includes its skipper; land service is optional only with land visits. */
.tour-price-controls [data-price-service-label][hidden]{display:none!important}
.tour-price-controls [data-price-pickup-label]{grid-column:1/-1}.tour-price-controls [data-price-pickup-label][hidden]{display:none!important}
.cable-availability-note{padding:0 12px 12px;margin:0;color:#526657;font-size:12px;line-height:1.5}
.place-card.is-unavailable .picker-button{opacity:.6;cursor:not-allowed}
.standalone-tour-date{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 16px;font-size:14px}
.standalone-tour-date input{border:1px solid #bac9bb;border-radius:8px;padding:10px;font:inherit;background:#fff}

/* One set of map actions remains within the currently visible map. */
.map-controls-slot{height:72px;position:relative;z-index:40}
.map-controls.actions{position:absolute;left:0;right:0;top:0;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,.8fr);gap:8px;max-width:none;margin:0;padding:8px;border:1px solid #d0dfd5;border-radius:11px;background:#fffffff5;box-shadow:0 2px 9px #214c3f12;will-change:transform}
.map-controls.actions button{width:100%;min-width:0;min-height:46px;padding:7px 10px;font-size:12px;line-height:1.25;white-space:normal}
.saved-tour-view .map-controls.actions{grid-template-columns:repeat(2,minmax(0,1fr))}
.map-controls.actions.is-pinned{box-shadow:0 5px 20px #214c3f24}
.map-controls.actions button:focus-visible{outline:3px solid #4c9270;outline-offset:2px}
.map-stage:fullscreen{display:flex;flex-direction:column;height:100vh;height:100dvh}
.map-stage:fullscreen>.map-controls-slot{flex:none;height:72px}
.map-stage:fullscreen .map-wrap{flex:1;min-height:0;height:auto}
@media(max-width:539px){.map-controls.actions{gap:6px;padding:7px}.map-controls.actions button{font-size:11px;padding:5px 7px}.map-controls-slot,.map-stage:fullscreen>.map-controls-slot{height:72px}}
/* End map actions. */

/* The detailed journey is a separate document; the existing request button stays unchanged. */
.tour-review-actions{display:flex;align-items:stretch;justify-content:center;gap:12px;margin:22px auto 0;max-width:720px}
.tour-review-actions>button,.tour-review-actions>.selection-footer{flex:1;min-width:0}
.tour-review-actions>.selection-footer{display:block;margin:0;padding:0;border:0;border-radius:0;background:none}
.tour-review-actions button{width:100%;min-height:48px;padding:12px 16px;border:1px solid #b9d0c0;border-radius:8px;background:#fff;color:#245c46;font-size:13px;line-height:1.4;font-weight:600}
.tour-review-actions button.primary{border-color:var(--green);background:var(--green);color:#fff}
@media(max-width:539px){.tour-review-actions{flex-direction:column;gap:10px}.tour-review-actions button{min-height:48px;font-size:13px}}
/* End detailed journey actions. */

/* Selected places, unchanged map, then a compact duration and price summary. */
body.embedded-tour .intro{display:none}body.reviewing-tour:not(.embedded-tour) .intro>p,body.reviewing-tour:not(.embedded-tour) .intro>.eyebrow{display:none}
.review-heading{display:block;margin-bottom:18px}.review-heading h2{font-size:30px}
#review-choices .review-choice{display:grid;grid-template-columns:minmax(0,1fr);gap:0;padding:0;overflow:hidden;align-content:start}
#review-choices .review-choice>img{width:100%;height:auto;aspect-ratio:1.9;object-fit:cover;border-radius:0}
#review-choices .review-choice>div{padding:13px 15px}#review-choices .review-choice>div.review-actions{padding:0 15px 12px;margin:0}
#review-choices .review-choice h3{font-size:22px}#review-choices .review-choice p{font-size:12px;line-height:1.6}
.review-add-attractions{margin:-5px 0 25px;text-align:center}.review-add-attractions button{min-height:44px;padding:11px 20px;background:#fff;border:1px solid #a9c6b5;border-radius:8px;font-size:13px}
.tour-overview-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin:22px 0 0;align-items:start;min-width:0}
.wizard-screen .tour-overview-summary .total-bar{margin:0;padding:20px;background:#fff;min-width:0}
.tour-overview-summary #tour-price-host{min-width:0}.tour-overview-summary .tour-price-estimate{margin:0;padding:20px;background:#fff}
.tour-overview-summary .total-bar h2{font-size:32px;margin:10px 0}.tour-overview-summary .eyebrow{font-size:11px;letter-spacing:.045em}
.duration-breakdown summary{display:flex;gap:12px;justify-content:space-between;align-items:center;list-style:none;min-height:44px;font-size:13px;font-weight:600;color:#216c50;border-top:1px solid #dfebdf;padding:11px 0}
.duration-breakdown summary::-webkit-details-marker{display:none}.duration-breakdown summary:after{content:'⌄';font-size:20px;line-height:1}.duration-breakdown[open] summary:after{content:'⌃'}
.duration-breakdown #total-detail{margin-top:0;max-width:none}.duration-breakdown .duration-sum{margin:12px 0 4px;font-weight:700;font-size:15px;color:#214c3f}
.tour-overview-summary .tour-duration-note{font-size:12px;line-height:1.65;margin-top:10px}.tour-overview-summary .programme-time-heading{justify-content:space-between}.tour-overview-summary .programme-car-leg{flex-wrap:wrap}
.tour-overview-summary .tour-price-result>strong{font-size:32px}.tour-overview-summary .tour-price-controls{grid-template-columns:135px minmax(0,1fr)}
.tour-price-controls .tour-guest-stepper{display:flex;align-items:stretch;gap:3px;min-width:0}.tour-guest-stepper select{width:48px;flex:1;text-align:center;padding:8px 3px}.tour-guest-stepper button{flex:none;width:36px;min-height:42px;padding:6px;border:1px solid #bed0c7;border-radius:7px;background:#f3f8f3;font-size:21px;color:#245c46}
@media(max-width:780px){.tour-overview-summary{grid-template-columns:minmax(0,1fr);gap:12px}.tour-overview-summary .total-bar,.tour-overview-summary .tour-price-estimate{padding:17px}}
@media(max-width:539px){#review-choices{gap:15px}#review-choices .review-choice>img{aspect-ratio:1.9}#review-choices .review-choice h3{font-size:24px}.review-heading h2{font-size:27px}.tour-overview-summary .tour-price-controls{grid-template-columns:minmax(0,1fr)}.tour-price-controls .tour-guest-stepper{max-width:160px}}

/* Keep the original photographs; small display copies and bounded fallback avoid blank cards. */
#review-choices .review-choice{position:relative}
.chosen-photo-status{position:absolute;inset:0 0 auto;aspect-ratio:1.9;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;background:#eaf1e8;color:#4e6f59;font-size:12px;text-align:center;padding:15px;pointer-events:none}
.chosen-photo-status[hidden]{display:none!important}.chosen-photo-status button{pointer-events:auto;min-height:40px;padding:9px 13px;border:1px solid #adc7b2;border-radius:7px;background:#fff;color:#245c46;font-size:12px}

/* Clear the legacy two-column placement as well as its column template. */
#review-choices .review-choice>img{grid-column:1;grid-row:auto}#review-choices .review-choice>div,#review-choices .review-choice>.review-actions{grid-column:1}

/* Compact review: two map actions and one duration headline. */
.map-controls.actions{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}
.map-controls.actions #edit[hidden],.place-card[hidden],#duration-sum[hidden]{display:none!important}
.tour-overview-summary .total-bar h2{font-size:clamp(28px,3.6vw,40px);line-height:1.2;text-wrap:balance}
.duration-breakdown .notes{margin:12px 0 0}.duration-breakdown .notes p,.duration-breakdown .programme-route-note{font-size:12px;line-height:1.65}

/* Date, guests and land service share the same price card. */
.tour-price-controls [data-price-date-label]{grid-column:1/-1}
.tour-price-controls input[data-price-date]{display:block;width:100%;min-width:0;min-height:44px;padding:9px 11px;border:1px solid #bed0c7;border-radius:8px;background:#fff;color:#244b43;font:16px Arial,Helvetica,sans-serif;box-sizing:border-box}
.tour-date-availability{margin:0 0 14px;padding:12px 13px;border:1px solid #dfc28b;border-radius:9px;background:#fff8e9;color:#72501d;font-size:12px;line-height:1.55}
.tour-date-availability[hidden]{display:none!important}
.tour-date-availability p{margin:0 0 9px}.tour-date-availability>div{display:flex;gap:8px;flex-wrap:wrap}
.tour-date-availability button{min-height:44px;padding:9px 12px;border:1px solid #d2b67f;border-radius:7px;background:#fff;color:#72501d;font:600 12px/1.35 Arial,Helvetica,sans-serif;cursor:pointer}
.tour-date-availability button:focus-visible,.tour-price-controls input[data-price-date]:focus-visible{outline:3px solid #75a48a;outline-offset:2px}
#cable-date-notice{grid-column:1/-1;margin:0;font-size:12px;line-height:1.6}

/* Keep the whole-route preview compact; descriptive controls are available on demand. */
.map-layout .map-wrap{height:480px}
.map-legend{margin:7px 0 0;min-width:0;border-bottom:1px solid #dce7dc;color:#506b5b}
.map-legend>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;min-height:40px;padding:8px 2px;font-size:12px;font-weight:600}
.map-legend>summary::-webkit-details-marker{display:none}.map-legend>summary:after{content:'⌄';font-size:19px;line-height:1}.map-legend[open]>summary:after{content:'⌃'}
.map-legend-content{padding:0 2px 12px}.map-legend #route-status{margin:0 0 8px;font-size:12px;line-height:1.5;color:#6a8170}.map-legend .playback-tools{margin:0 0 5px}.map-legend .legend{margin-top:8px}.map-legend #scrub{margin:0}
.tour-overview-summary{grid-template-columns:minmax(0,1fr);gap:12px;margin:10px 0 0}
.wizard-screen .tour-overview-summary .total-bar{margin:0;padding:17px 20px}.tour-overview-summary .total-bar>div{width:100%;min-width:0}.tour-overview-summary .total-bar h2{margin:7px 0 10px}
@media(max-width:780px){.map-layout .map-wrap{height:400px}.wizard-screen .tour-overview-summary .total-bar{padding:16px}.map-legend>summary{min-height:40px}.tour-overview-summary{margin-top:9px}}
.map-wrap #map-badge{display:none}

/* A static selected status belongs to each included place, independent of playback. */
#review-choices .review-choice{border:2px solid #216c50}
.review-selected-badge{position:absolute;top:12px;right:12px;z-index:2;display:inline-flex;align-items:center;gap:7px;min-height:30px;padding:6px 12px;border:1px solid rgba(255,255,255,.9);border-radius:999px;background:#216c50;color:#fff;font:700 12px/1.25 Arial,sans-serif;white-space:nowrap;pointer-events:none}
.review-selected-badge>span[aria-hidden]{font-size:17px;line-height:1}

/* Playback and the detailed itinerary share one toolbar below the map. */
.map-controls-slot{height:auto;margin-top:8px}
.map-controls.actions,.saved-tour-view .map-controls.actions{position:relative;left:auto;right:auto;top:auto;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.15fr)}
.map-controls.actions #view-itinerary{font-weight:600}
.map-stage:fullscreen>.map-controls-slot{height:auto;flex:none}
.map-stage:fullscreen .perast-detail{bottom:88px}
@media(max-width:539px){.map-controls.actions,.saved-tour-view .map-controls.actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.map-controls.actions #view-itinerary{grid-column:1/-1}.map-controls-slot,.map-stage:fullscreen>.map-controls-slot{height:auto}.map-stage:fullscreen .perast-detail{bottom:148px}}

/* Visit duration overlays the existing photo row without changing its size. */
#review-choices .review-choice>img{grid-row:1}
#review-choices .review-duration-badge{grid-column:1;grid-row:1;align-self:end;justify-self:start;position:relative;z-index:2;display:inline-flex;align-items:center;gap:6px;max-width:calc(100% - 24px);min-height:30px;margin:0 0 12px 12px;padding:6px 10px;border:1px solid rgba(255,255,255,.95);border-radius:999px;background:rgba(255,255,255,.94);box-shadow:0 2px 8px #173d3324;color:#214c3f;font:600 12px/1.25 Arial,Helvetica,sans-serif;white-space:nowrap;pointer-events:none}
#review-choices .review-duration-badge svg{flex:none}
#review-choices .review-duration-badge strong{font:700 12px/1.25 Arial,Helvetica,sans-serif}

/* Enlargement presents the same map DOM in fullscreen or a same-frame fallback. */
.map-presentation-header{display:none}
.map-stage.is-map-expanded{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;width:100vw;max-width:none;height:100vh;height:100dvh;min-height:0;margin:0;padding:0;background:#f3f7f2;border-radius:0;overflow:hidden}
.map-stage.is-map-expanded>.map-presentation-header{display:flex;flex:none;align-items:center;justify-content:space-between;gap:16px;min-height:58px;padding:8px max(12px,env(safe-area-inset-right)) 8px max(16px,env(safe-area-inset-left));background:#fff;border-bottom:1px solid #d6e3d6;z-index:45}
.map-presentation-header strong{font:600 17px/1.3 Arial,Helvetica,sans-serif;color:#214c3f}
.map-presentation-close{flex:none;min-height:42px;min-width:76px;padding:8px 14px;border:1px solid #bdd1c2;border-radius:8px;background:#fff;color:#245c46;font:600 13px/1.35 Arial,Helvetica,sans-serif}
.map-stage.is-map-expanded>.map-wrap{position:relative;flex:1;min-height:0;width:100%;height:auto;border:0;border-radius:0}
.map-stage.is-map-expanded>.map-controls-slot{position:relative;flex:none;height:auto;margin:0;padding:7px 10px max(7px,env(safe-area-inset-bottom));z-index:40;background:#f3f7f2}
.map-stage.is-map-expanded .map-controls.actions{transform:none!important}
.map-stage.is-map-expanded .perast-detail{position:absolute;top:auto!important;left:14px!important;bottom:102px;width:min(308px,calc(100% - 28px));margin:0}
@media(max-width:539px){.map-stage.is-map-expanded>.map-presentation-header{min-height:56px;gap:10px;padding-top:max(7px,env(safe-area-inset-top));padding-bottom:7px}.map-presentation-header strong{font-size:16px}.map-presentation-close{min-height:42px;min-width:74px}.map-stage.is-map-expanded>.map-controls-slot{padding-left:7px;padding-right:7px}.map-stage.is-map-expanded .perast-detail{bottom:162px}}
.map-stage.is-map-expanded #fullscreen{display:none}

/* Available activities are separate from the guest's Selected checkmark. */
.place-card .activity-photo{display:block;width:100%;min-width:0;background:#fff}
.place-card .activity-photo>img{display:block;width:100%}
.place-card .activity-badge{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:7px;width:max-content;max-width:calc(100% - 20px);min-height:32px;margin:-16px auto 0;padding:5px 10px;border:1px solid #dce8e5;border-radius:999px;background:#fff;box-shadow:0 2px 7px #153f4524;color:#164b4e;font:600 11px/1.3 Arial,Helvetica,sans-serif;text-align:center;pointer-events:none}
.place-card .activity-badge-icons{display:inline-flex;align-items:center;justify-content:center;gap:4px;flex:none;pointer-events:none}
.place-card .activity-badge .activity-icon{display:block;flex:none;width:24px;height:24px;pointer-events:none}
.place-card .activity-badge-label{min-width:0;overflow-wrap:anywhere;pointer-events:none}
@media(max-width:539px){.place-card .activity-badge{gap:6px;max-width:calc(100% - 18px);font-size:11px;padding:5px 9px}.place-card .activity-badge .activity-icon{width:23px;height:23px}}

/* Keep navigation headings available to keyboard and screen-reader users. */
.picker-section-anchor{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}
.picker-section-anchor:focus{position:static;width:auto;height:auto;margin:0 0 12px;overflow:visible;clip:auto;clip-path:none;white-space:normal;outline:2px solid #8aafa0;outline-offset:3px}
.option-text>.activity-icon,.option-row.numeric>label>.activity-icon{display:inline-block;width:20px;height:20px;margin-right:7px;vertical-align:middle}

/* One attraction catalogue while browsing; existing editor/review sections retain their layout. */
.catalogue-browsing .choice-guide{display:none}
.catalogue-browsing #map-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}
.catalogue-browsing #boat-step,.catalogue-browsing #car-step,.catalogue-browsing #lake-step,.catalogue-browsing #boat-intro,.catalogue-browsing #place-picker,.catalogue-browsing #lake-picker{display:contents}
.catalogue-browsing #boat-step>.step-heading{display:none}
.catalogue-browsing #map-panel .place-card{order:10;min-width:0;margin:0;display:flex;flex-direction:column}
.catalogue-browsing #map-panel .picker-button{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;height:auto;width:100%;min-width:0;flex:1;align-content:start}
.catalogue-browsing #boat-selection-summary,.catalogue-browsing #chosen-places,.catalogue-browsing #lake-chosen-places,.catalogue-browsing #boat-car-note,.catalogue-browsing #map-panel .selection-caption{grid-column:1/-1;order:0;margin:0}
.catalogue-browsing #chosen-places:empty,.catalogue-browsing #lake-chosen-places:empty,.catalogue-browsing #lake-step>.selection-caption,.catalogue-browsing #car-editor-slot,.catalogue-browsing #lake-editor-slot{display:none}
.catalogue-browsing #selection-overview{grid-column:1/-1;order:20;margin:8px 0 0}
@media(max-width:900px){.catalogue-browsing #map-panel{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}
@media(max-width:540px){.catalogue-browsing #map-panel{grid-template-columns:minmax(0,1fr);gap:14px}}

/* Additional free time uses exact 15-minute steps above the committed stay. */
.minute-controls.free-time-controls{display:flex;align-items:center;gap:8px;max-width:100%;flex-wrap:nowrap;margin-top:7px}
.minute-controls.free-time-controls>button{flex:none;width:44px;min-width:44px;min-height:44px;padding:5px;font-size:22px;line-height:1;border:1px solid #b8d2c9;border-radius:7px;background:#fff;color:#216c50}
.minute-controls.free-time-controls>button:disabled{opacity:.4;cursor:default}
.minute-controls.free-time-controls>button:focus-visible{outline:3px solid #7bb7a6;outline-offset:2px}
.minute-controls.free-time-controls>.free-time-output{display:block;flex:none;width:65px;min-width:65px;max-width:65px;text-align:center;font-size:13px;line-height:1.4;font-weight:600;color:#315e46;overflow-wrap:anywhere}
@media(max-width:540px){.minute-controls.free-time-controls{gap:6px}.minute-controls.free-time-controls>.free-time-output{font-size:12px}}

/* Back and Continue share one row on both desktop and phone. */
.tour-review-actions>.selection-footer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}

/* The initial selection has a direct return to the page where it began. */
#selection-overview .selection-footer-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}

/* Automatic preview actions share the existing enlarged map header. */
.map-presentation-header strong{flex:1;min-width:0}
.map-presentation-skip{flex:none;min-height:44px;min-width:76px;padding:8px 14px;border:1px solid #bdd1c2;border-radius:8px;background:#eef4ef;color:#245c46;font:600 13px/1.35 Arial,Helvetica,sans-serif}
.map-presentation-header [hidden]{display:none!important}
@media(max-width:539px){.map-presentation-skip{min-width:74px;padding-left:10px;padding-right:10px}}

/* The viewport review dock forwards these original actions; retain notices in flow. */
.review-dock-active #review-return,.review-dock-active #request-tour{display:none}
.review-dock-active .tour-review-actions>.selection-footer{display:contents}
.review-dock-active main{padding-bottom:180px}

.review-dock-active .review-add-attractions{display:none}

/* The review begins with the actual journey, followed by the unchanged map. */
#review-choices.review-itinerary{display:block;margin-bottom:14px}
.review-itinerary .inline-itinerary-journey{display:grid;gap:18px;min-width:0}
.review-itinerary .journey-programme{min-width:0;border:1px solid #c7dacd;border-radius:12px;padding:16px;background:#edf4e9}
.review-itinerary .journey-programme-boka{border-color:#b8d3e0;background:#eaf4fa}
.review-itinerary .journey-programme-lake{border-color:#bcdbd3;background:#edf8f4}
.review-itinerary .journey-programme-heading{display:flex;align-items:center;gap:10px 18px;flex-wrap:wrap;margin:0 0 12px}
.review-itinerary .journey-programme-heading h3{flex:1;min-width:0;margin:0;font:600 16px/1.5 Arial,Helvetica,sans-serif;color:#315e50}
.review-itinerary .journey-programme-heading>strong{font-size:13px;white-space:nowrap}
.review-itinerary .journey-programme-note{margin:0 0 12px;color:#617f90;font-size:12px}
.review-itinerary .journey-programme-stops{display:grid;gap:12px;padding:0;overflow:visible;min-width:0}
.review-itinerary .journey-stop{position:relative;display:grid;grid-template-columns:92px 26px minmax(0,1fr);gap:6px 12px;align-items:start;width:100%;min-width:0;padding:12px;border:1px solid #d2e0d5;border-radius:9px;background:#fff;color:#31583f;text-align:left;cursor:default;box-shadow:none;box-sizing:border-box}
.review-itinerary .journey-stop>img{display:block;grid-column:1;grid-row:1 / span 2;width:92px;height:68px;object-fit:cover;border-radius:6px;background:#e1e9df}
.review-itinerary .journey-stop>b{position:static;display:grid;place-items:center;grid-column:2;grid-row:1;width:26px;height:26px;border-radius:50%;background:#e7efe3;color:#31583f;font:600 12px/1 Arial,Helvetica,sans-serif}
.review-itinerary .journey-stop>strong{grid-column:3;margin:0;font:400 23px/1.3 Georgia,serif;overflow-wrap:anywhere}
.review-itinerary .journey-stop>small,.review-itinerary .journey-stop>span{grid-column:3;min-width:0;margin:0;font-size:13px;line-height:1.65;color:#567263}
.review-itinerary .journey-stop.has-inline-story{grid-template-columns:218px 26px minmax(0,1fr);padding:14px;gap:8px 12px}
.review-itinerary .journey-stop.has-inline-story>img{grid-row:1 / span 4;width:218px;height:156px}
.review-itinerary .journey-stop.has-inline-story>small,.review-itinerary .journey-stop.has-inline-story>span,.review-itinerary .journey-stop>.inline-story-desktop,.review-itinerary .journey-stop>.inline-story-mobile,.review-itinerary .journey-stop>.inline-place-short{grid-column:2 / -1;min-width:0}
.review-itinerary .inline-place-short,.review-itinerary .inline-story-mobile{display:none}
.review-itinerary .inline-story-desktop{display:block}
.review-itinerary .montis-place-story{margin:0;color:#4e665d;font-size:14px;line-height:1.7;overflow-wrap:anywhere}
.review-itinerary .montis-place-note{display:block;margin:8px 0 0;color:#6c786c;font-size:12px;line-height:1.6}
.review-itinerary .inline-itinerary-edit{grid-column:2 / -1;justify-self:start;min-height:40px;margin:3px 0 0;padding:8px 13px;border:1px solid #b6cdbd;border-radius:7px;background:#fff;color:#245b48;font:600 12px/1.4 Arial,Helvetica,sans-serif;cursor:pointer}
.review-itinerary .journey-programme-heading .inline-itinerary-edit{margin:0;flex:none}
.review-itinerary .inline-itinerary-edit:focus-visible,.review-itinerary summary:focus-visible{outline:3px solid #6aa786;outline-offset:3px}
.review-itinerary .cable-card-details,.review-itinerary .visit-card-details{display:grid!important;gap:5px}
.review-itinerary .cable-card-details>span,.review-itinerary .visit-card-details>span{display:flex;justify-content:space-between;align-items:baseline;gap:6px 12px;flex-wrap:wrap}
.review-itinerary .cable-card-details em,.review-itinerary .visit-card-details em{font-style:normal;font-weight:600;white-space:nowrap}
.review-itinerary .cable-card-total,.review-itinerary .visit-card-total{font-weight:600}
.review-itinerary .journey-leg{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:6px 12px;flex-wrap:wrap;width:auto;min-width:0;margin:0;padding:10px 12px;border-left:3px solid #8fb2bf;border-radius:5px;background:#ffffff90;color:#52776a;font-size:13px;line-height:1.5}
.review-itinerary .journey-leg:before{display:none}
.review-itinerary .journey-leg.boat{border-left-color:#df9e6a;color:#936433}
.review-itinerary .journey-leg>span:first-child{font-size:20px}
.review-itinerary .leg-route-feature{padding:3px 7px;border-radius:4px;background:#fff4cb;color:#795b1b;font-size:11px}
.review-itinerary .journey-stop>.inline-photo-status{grid-column:2 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:#687a6d;font-size:12px}
.review-itinerary .inline-photo-status[hidden],.review-itinerary .inline-photo-retry[hidden]{display:none!important}
.review-itinerary .inline-photo-retry{min-height:38px;padding:6px 10px;border:1px solid #adc7b2;border-radius:6px;background:#fff;color:#245c46;font-size:12px;cursor:pointer}
.review-dock-active #review-back{display:inline-flex;align-items:center;justify-content:center;margin:0 0 22px;min-height:44px;padding:10px 16px;border:1px solid #b6cdbd;border-radius:8px;background:#fff;color:#245b48;font:600 13px/1.5 Arial,Helvetica,sans-serif;cursor:pointer}
@media(max-width:600px){
  .review-itinerary .journey-programme{padding:12px 10px}
  .review-itinerary .journey-programme-heading h3{font-size:14px}
  .review-itinerary .journey-stop{grid-template-columns:66px 23px minmax(0,1fr);gap:5px 8px;padding:10px}
  .review-itinerary .journey-stop>img{width:66px;height:56px}
  .review-itinerary .journey-stop>b{width:23px;height:23px;font-size:11px}
  .review-itinerary .journey-stop>strong{font-size:19px}
  .review-itinerary .journey-stop>small,.review-itinerary .journey-stop>span{font-size:12px}
  .review-itinerary .journey-stop.has-inline-story{grid-template-columns:24px minmax(0,1fr);gap:9px 8px;padding:10px}
  .review-itinerary .journey-stop.has-inline-story>img{grid-column:1 / -1;grid-row:1;width:100%;height:auto;aspect-ratio:16 / 9;max-height:260px}
  .review-itinerary .journey-stop.has-inline-story>b{grid-column:1;grid-row:2}
  .review-itinerary .journey-stop.has-inline-story>strong{grid-column:2;grid-row:2;font-size:24px}
  .review-itinerary .journey-stop.has-inline-story>small,.review-itinerary .journey-stop.has-inline-story>span,.review-itinerary .journey-stop>.inline-story-mobile,.review-itinerary .journey-stop>.inline-place-short,.review-itinerary .inline-itinerary-edit{grid-column:1 / -1}
  .review-itinerary .inline-story-desktop{display:none}
  .review-itinerary .inline-story-mobile,.review-itinerary .inline-place-short{display:block}
  .review-itinerary .inline-place-short{margin:0;color:#4e665d;font-size:14px;line-height:1.65}
  .review-itinerary .inline-story-mobile summary{min-height:40px;padding:8px 0;color:#245b48;font:600 13px/1.5 Arial,Helvetica,sans-serif;cursor:pointer}
  .review-itinerary .inline-story-mobile[open]{padding-bottom:4px}
  .review-itinerary .journey-programme-heading .inline-itinerary-edit{width:auto;font-size:11px}
}

/* Open transport rows and one expandable, photo-first card per real visit. */
.review-itinerary .journey-leg,.review-itinerary .journey-leg.boat{border:0;border-radius:0;background:transparent;box-shadow:none;padding:13px 4px;color:#355a4c}
.review-itinerary .journey-leg:before,.review-itinerary .journey-leg:after{display:none;content:none}
.review-itinerary .journey-leg .leg-route-feature{border:0;border-radius:0;background:transparent;padding:0;color:#795b1b}
.review-itinerary .journey-stop.has-inline-visit{grid-template-columns:44px minmax(0,1fr) auto;gap:0;padding:0;overflow:hidden}
.review-itinerary .journey-stop.has-inline-visit>img{grid-column:1 / -1;grid-row:1;width:100%;height:auto;max-height:none;aspect-ratio:3.6;object-fit:cover;border-radius:8px 8px 0 0}
.review-itinerary .journey-stop.has-inline-visit>b{grid-column:1;grid-row:2;width:26px;height:26px;margin:16px 0 0 14px}
.review-itinerary .journey-stop.has-inline-visit>strong{grid-column:2 / -1;grid-row:2;margin:14px 18px 0 8px;font-size:27px;line-height:1.35}
.review-itinerary .journey-stop.has-inline-visit>.inline-visit-duration{grid-column:1 / -1;grid-row:1;align-self:start;justify-self:end;position:relative;z-index:1;display:inline-flex;align-items:center;gap:7px;width:max-content;max-width:calc(100% - 24px);margin:12px;padding:8px 12px;border:1px solid #ffffffd9;border-radius:8px;background:#fffffff5;color:#214c3f;font:600 13px/1.35 Arial,Helvetica,sans-serif;white-space:nowrap;box-shadow:0 1px 7px #183c3020;pointer-events:none}
.review-itinerary .inline-visit-clock{font-size:19px;line-height:1;font-weight:400}
.review-itinerary .inline-place-details{grid-column:1 / -1;grid-row:3;min-width:0;margin:0;border:0;background:transparent}
.review-itinerary .inline-place-details>summary{width:calc(100% - 152px);min-width:110px;min-height:54px;padding:14px 18px;color:#245b48;font:600 13px/1.6 Arial,Helvetica,sans-serif;cursor:pointer}
.review-itinerary .inline-place-details>summary::marker{font-size:11px}
.review-itinerary .inline-place-details-body{padding:0 18px 18px;min-width:0}
.review-itinerary .inline-place-details-body>small,.review-itinerary .inline-place-details-body>span{display:block;margin:10px 0 0;color:#567263;font-size:13px;line-height:1.65}
.review-itinerary .inline-place-details-body .montis-place-note{margin-top:12px;font-size:12px;color:#6c786c}
.review-itinerary .journey-stop.has-inline-visit>.inline-itinerary-edit{grid-column:3;grid-row:3;align-self:start;justify-self:end;min-height:40px;margin:6px 18px 12px 8px;padding:8px 13px}
.review-itinerary .journey-stop.has-inline-visit>.inline-photo-status{grid-column:1 / -1;grid-row:4;padding:0 18px 12px}
@media(max-width:600px){
  .review-itinerary .journey-stop.has-inline-visit{grid-template-columns:37px minmax(0,1fr) auto}
  .review-itinerary .journey-stop.has-inline-visit>img{aspect-ratio:16 / 9;max-height:none}
  .review-itinerary .journey-stop.has-inline-visit>b{margin:13px 0 0 10px;width:23px;height:23px}
  .review-itinerary .journey-stop.has-inline-visit>strong{margin:11px 12px 0 6px;font-size:24px}
  .review-itinerary .journey-stop.has-inline-visit>.inline-visit-duration{margin:10px;padding:7px 9px;font-size:12px}
  .review-itinerary .inline-place-details>summary{width:calc(100% - 126px);padding:13px 12px;min-height:54px;font-size:14px}
  .review-itinerary .inline-place-details-body{padding:0 12px 16px}
  .review-itinerary .journey-stop.has-inline-visit>.inline-itinerary-edit{margin:6px 12px 12px 6px;min-height:40px}
  .review-itinerary .journey-stop.has-inline-visit>.inline-photo-status{padding:0 12px 12px}
}

/* Travel remains unboxed; its full-width row opens only the recorded details. */
.review-itinerary .journey-leg.inline-travel-details{display:block;width:100%;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.review-itinerary .inline-travel-summary{display:grid;grid-template-columns:32px minmax(0,1fr) 22px;align-items:center;gap:10px;width:100%;min-height:52px;margin:0;padding:11px 5px;border:0;background:transparent;list-style:none;cursor:pointer;color:#355a4c;text-align:left}
.review-itinerary .inline-travel-summary::-webkit-details-marker{display:none}
.review-itinerary .inline-travel-summary::marker{content:''}
.review-itinerary .inline-travel-summary>span:first-child{display:block;font-size:23px;line-height:1;text-align:center}
.review-itinerary .inline-travel-label{min-width:0;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.review-itinerary .inline-travel-chevron{display:block;justify-self:end;font-size:22px;line-height:1;transform:rotate(0deg);transition:transform .15s ease}
.review-itinerary .inline-travel-details[open]>.inline-travel-summary>.inline-travel-chevron{transform:rotate(180deg)}
.review-itinerary .inline-travel-body{display:flex;align-items:baseline;flex-wrap:wrap;justify-content:flex-start;gap:5px 14px;min-width:0;padding:0 37px 13px 47px;color:#567263;font-size:13px;line-height:1.6;text-align:left}
.review-itinerary .inline-travel-route{flex-basis:100%;margin:0;overflow-wrap:anywhere}
.review-itinerary .inline-travel-body>strong{font-size:13px}
.review-itinerary .inline-travel-body>.leg-route-feature{border:0;border-radius:0;background:transparent;padding:0}
@media(max-width:600px){
  .review-itinerary .inline-travel-summary{grid-template-columns:27px minmax(0,1fr) 18px;gap:8px;min-height:52px;padding:11px 2px}
  .review-itinerary .inline-travel-summary>span:first-child{font-size:21px}
  .review-itinerary .inline-travel-chevron{font-size:20px}
  .review-itinerary .inline-travel-body{padding:0 22px 12px 37px;font-size:12px;gap:4px 10px}
}

/* Each photo names its selected activities, using the recorded minutes once. */
.review-itinerary .journey-stop.has-inline-visit>.inline-visit-duration{display:flex;flex-direction:column;align-items:stretch;gap:5px;max-width:min(440px,calc(100% - 24px));white-space:normal;text-align:left}
.review-itinerary .inline-visit-activity-row{display:grid;grid-template-columns:19px minmax(0,1fr);align-items:center;gap:7px;min-width:0}
.review-itinerary .inline-visit-activity-row+.inline-visit-activity-row{padding-top:5px;border-top:1px solid #dce8e1}
.review-itinerary .inline-visit-activity-icon{display:flex;align-items:center;justify-content:center;width:19px;min-width:0;line-height:1}
.review-itinerary .inline-visit-activity-icon>.activity-icon{display:block;width:18px;height:18px}
.review-itinerary .inline-visit-activity-label{min-width:0;overflow-wrap:anywhere;line-height:1.45}
@media(max-width:600px){
  .review-itinerary .journey-stop.has-inline-visit>.inline-visit-duration{max-width:calc(100% - 20px);gap:5px;font-size:12px}
  .review-itinerary .inline-visit-activity-row{grid-template-columns:18px minmax(0,1fr);gap:6px}
}

/* Quiet dotted connections keep the existing journey details behind one tap. */
.review-itinerary .inline-travel-summary{display:flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:8px 12px;text-align:center}
.review-itinerary .inline-travel-summary>span.inline-travel-dots{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:8px;height:30px;font-size:0;line-height:1}
.review-itinerary .inline-travel-dots>span{display:block;flex:none;width:5px;height:5px;border-radius:50%;background:#66968b}
.review-itinerary .inline-travel-summary>.inline-travel-chevron{flex:none;justify-self:auto;font-size:21px;color:#355a4c}
.review-itinerary .inline-travel-summary:focus-visible{outline:2px solid #355a4c;outline-offset:-3px;border-radius:6px}
.review-itinerary .inline-travel-summary:hover .inline-travel-dots>span{background:#355a4c}
.review-itinerary .inline-travel-body{justify-content:center;gap:4px 12px;padding:0 14px 13px;text-align:center}
.review-itinerary .inline-travel-body>.inline-travel-route{font-weight:600;color:#355a4c}
.review-itinerary .inline-travel-body>.inline-travel-label{margin:0;font-size:13px;line-height:1.6}
@media(max-width:600px){
  .review-itinerary .inline-travel-summary{gap:10px;min-height:52px;padding:8px 10px}
  .review-itinerary .inline-travel-body{padding:0 10px 12px;gap:4px 10px}
  .review-itinerary .inline-travel-body>.inline-travel-label{font-size:12px}
}

/* Photo controls share the image geometry; native details still opens below the title. */
@supports (width:1cqw){
  .review-itinerary .journey-stop.has-inline-visit{container-type:inline-size;--inline-photo-height:max(200px,calc(100cqw / 3.6))}
  .review-itinerary .journey-stop.has-inline-visit>img{height:var(--inline-photo-height);aspect-ratio:auto}
  .review-itinerary .journey-stop.has-inline-visit>b{margin-bottom:14px}
  .review-itinerary .journey-stop.has-inline-visit>strong{margin-bottom:14px}
  .review-itinerary .journey-stop.has-inline-visit>.inline-place-details{position:static}
  .review-itinerary .journey-stop.has-inline-visit>.inline-place-details>summary,
  .review-itinerary .journey-stop.has-inline-visit>.inline-itinerary-edit{position:absolute;top:calc(var(--inline-photo-height) - 56px);grid-row:auto;grid-column:auto;align-self:auto;justify-self:auto;z-index:3;display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;width:auto;min-width:0;max-width:calc(50% - 18px);margin:0;padding:9px 13px;border:1px solid #ffffffd9;border-radius:8px;background:#fffffff0;box-shadow:0 1px 6px #183c301a;color:#245b48;font:600 13px/1.4 Arial,Helvetica,sans-serif;text-align:center;list-style:none;cursor:pointer}
  .review-itinerary .journey-stop.has-inline-visit>.inline-place-details>summary{left:12px}
  .review-itinerary .journey-stop.has-inline-visit>.inline-itinerary-edit{right:12px}
  .review-itinerary .journey-stop.has-inline-visit>.inline-place-details>summary::-webkit-details-marker{display:none}
  .review-itinerary .journey-stop.has-inline-visit>.inline-place-details>summary::marker{content:''}
  .review-itinerary .journey-stop.has-inline-visit>.inline-place-details>summary::after{content:'⌄';font-size:16px;line-height:1;transition:transform .15s ease}
  .review-itinerary .journey-stop.has-inline-visit>.inline-place-details[open]>summary::after{transform:rotate(180deg)}
  .review-itinerary .journey-stop.has-inline-visit>.inline-place-details>summary:focus-visible,
  .review-itinerary .journey-stop.has-inline-visit>.inline-itinerary-edit:focus-visible{outline:2px solid #245b48;outline-offset:2px}
  @media(max-width:600px){
    .review-itinerary .journey-stop.has-inline-visit{--inline-photo-height:max(210px,calc(100cqw * 9 / 16))}
    .review-itinerary .journey-stop.has-inline-visit>b{margin-bottom:12px}
    .review-itinerary .journey-stop.has-inline-visit>strong{margin-bottom:12px}
    .review-itinerary .journey-stop.has-inline-visit>.inline-place-details>summary,
    .review-itinerary .journey-stop.has-inline-visit>.inline-itinerary-edit{padding:9px 11px;max-width:calc(50% - 16px)}
    .review-itinerary .journey-stop.has-inline-visit>.inline-place-details>summary{left:10px}
    .review-itinerary .journey-stop.has-inline-visit>.inline-itinerary-edit{right:10px}
  }
}

/* Text actions leave the photo visible; the local shade keeps white labels readable. */
@supports (width:1cqw){
  .review-itinerary .journey-stop.has-inline-visit>img{z-index:0}
  .review-itinerary .journey-stop.has-inline-visit::after{content:'';position:absolute;top:calc(var(--inline-photo-height) - 92px);left:0;right:0;height:92px;z-index:1;background:linear-gradient(180deg,transparent 0%,rgba(5,26,22,.68) 52%,rgba(5,26,22,.82) 100%);pointer-events:none}
  .review-itinerary .journey-stop.has-inline-visit>.inline-visit-duration{z-index:2}
  .review-itinerary .journey-stop.has-inline-visit>.inline-place-details>summary,
  .review-itinerary .journey-stop.has-inline-visit>.inline-itinerary-edit{border:0;border-radius:3px;background:transparent;box-shadow:none;color:#fff;text-shadow:0 1px 3px #000c}
  .review-itinerary .journey-stop.has-inline-visit>.inline-itinerary-edit::before{content:'✎' / '';flex:none;font-size:18px;line-height:1}
  .review-itinerary .journey-stop.has-inline-visit>.inline-place-details>summary:hover,
  .review-itinerary .journey-stop.has-inline-visit>.inline-itinerary-edit:hover{text-decoration:underline;text-underline-offset:3px}
  .review-itinerary .journey-stop.has-inline-visit>.inline-place-details>summary:focus-visible,
  .review-itinerary .journey-stop.has-inline-visit>.inline-itinerary-edit:focus-visible{outline:2px solid #fff;outline-offset:2px}
  @media(forced-colors:active){
    .review-itinerary .journey-stop.has-inline-visit::after{display:none}
    .review-itinerary .journey-stop.has-inline-visit>.inline-place-details>summary,
    .review-itinerary .journey-stop.has-inline-visit>.inline-itinerary-edit{background:Canvas;color:CanvasText;border:1px solid CanvasText;text-shadow:none;outline-color:Highlight}
    .review-itinerary .journey-stop.has-inline-visit>.inline-place-details>summary:focus-visible,
    .review-itinerary .journey-stop.has-inline-visit>.inline-itinerary-edit:focus-visible{outline-color:Highlight}
  }
}

/* One continuous frame contains the heading and the unchanged chronological plan. */
.review-plan-frame{min-width:0;margin:0 0 18px;padding:18px;border:1px solid #bdd2c4;border-radius:12px;background:#f8fbf8;overflow:visible}
.review-plan-frame>.review-heading{margin:0 0 14px;padding:0}
.review-plan-frame>.review-heading h2{margin:0}
.review-plan-frame>#review-choices.review-itinerary{margin:0}
.review-plan-frame .review-itinerary .journey-programme{border:0;border-radius:0;padding:0;background:transparent;box-shadow:none}
.review-plan-frame .review-itinerary .journey-programme-heading{margin:0 0 10px;padding:0;border:0;background:transparent}
.review-plan-frame .review-itinerary .journey-programme-heading h3{font-size:14px}
.saved-tour-view .review-plan-frame{display:none!important}
@media(max-width:600px){
  .review-plan-frame{padding:12px 10px;border-radius:10px;margin-bottom:16px}
  .review-plan-frame>.review-heading{margin-bottom:12px}
  .review-plan-frame .review-itinerary .journey-programme-heading h3{font-size:13px}
}

/* The visible plan is one continuous journey; programme grouping stays in its source. */
.review-plan-frame .review-itinerary .journey-programme-heading,
.review-plan-frame .review-itinerary .journey-programme-note{display:none}
.review-plan-frame .inline-itinerary-journey{gap:12px}
.review-itinerary .journey-stop:not(.has-inline-visit)>.inline-itinerary-edit{grid-column:3;min-height:44px;max-width:100%;margin:0;padding:8px 0;border:0;background:transparent;white-space:normal;text-align:left}

/* A fine vertical connection and a small chevron open the unchanged travel details. */
.review-itinerary .inline-travel-summary{position:relative;display:grid;grid-template-columns:1fr;place-items:center;gap:0;min-height:56px;padding:0}
.review-itinerary .inline-travel-summary>span.inline-travel-line{display:block;width:1px;height:44px;margin:0;background:#9cb8aa;opacity:.85;font-size:0;line-height:1}
.review-itinerary .inline-travel-summary>.inline-travel-chevron{position:absolute;left:50%;top:50%;display:grid;place-items:center;width:24px;height:22px;background:#f8fbf8;color:#567c69;font-size:18px;transform:translate(-50%,-50%)}
.review-itinerary .inline-travel-details[open]>.inline-travel-summary>.inline-travel-chevron{transform:translate(-50%,-50%) rotate(180deg)}
.review-itinerary .inline-travel-summary:hover>.inline-travel-line{background:#567c69}
@media(forced-colors:active){
  .review-itinerary .inline-travel-summary>span.inline-travel-line{background:CanvasText;opacity:1}
  .review-itinerary .inline-travel-summary>.inline-travel-chevron{background:Canvas;color:CanvasText}
}

/* An open photo itinerary: captions sit on the page without enclosing cards. */
.review-plan-frame{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.review-plan-frame .review-itinerary .journey-stop{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>img{border-radius:10px}
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit::after{border-radius:0 0 10px 10px}
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>b{margin-left:0}
.review-plan-frame .review-itinerary .inline-travel-summary>.inline-travel-chevron{background:#f3f7f2}
@media(forced-colors:active){
  .review-plan-frame .review-itinerary .inline-travel-summary>.inline-travel-chevron{background:Canvas}
}

/* Individual white destination cards, with the shared journey left open. */
.review-plan-frame .review-itinerary .journey-stop{padding:12px;border:1px solid #d2e0d5;border-radius:9px;background:#fff;box-shadow:none}
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit{padding:0}
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>img{border-radius:8px 8px 0 0}
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit::after{border-radius:0}
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>b{margin-left:14px}
@media(max-width:600px){
  .review-plan-frame .review-itinerary .journey-stop{padding:10px}
  .review-plan-frame .review-itinerary .journey-stop.has-inline-visit{padding:0}
  .review-plan-frame .review-itinerary .journey-stop.has-inline-visit>b{margin-left:10px}
}

/* Activity text replaces the separate Change action on visit photos. */
.review-itinerary .journey-stop.has-inline-visit>.inline-visit-duration{grid-column:1 / -1;grid-row:1;align-self:end;justify-self:end;position:relative;z-index:3;display:flex;flex-direction:column;align-items:stretch;gap:4px;width:max-content;max-width:calc(100% - 144px);min-height:44px;margin:0 12px 12px 124px;padding:4px 0;border:0;border-radius:3px;background:transparent;box-shadow:none;color:#fff;font:600 13px/1.4 Arial,Helvetica,sans-serif;text-align:left;text-shadow:0 1px 3px #000e;white-space:normal;pointer-events:none}
.review-itinerary .journey-stop.has-inline-visit>.inline-visit-duration.inline-visit-activity-action{justify-content:center;padding-right:18px;cursor:pointer;pointer-events:auto}
.review-itinerary .journey-stop.has-inline-visit>.inline-visit-duration.inline-visit-activity-action::before{content:none}
.review-itinerary .journey-stop.has-inline-visit>.inline-visit-duration.inline-visit-activity-action::after{content:'⌄' / '';position:absolute;right:0;top:50%;transform:translateY(-50%);font-size:18px;line-height:1}
.review-itinerary .inline-visit-duration .inline-visit-activity-row+.inline-visit-activity-row{padding-top:0;border-top:0}
.review-itinerary .journey-stop.has-inline-visit>.inline-visit-duration.inline-visit-activity-action:hover{text-decoration:underline;text-underline-offset:3px}
.review-itinerary .journey-stop.has-inline-visit>.inline-visit-duration.inline-visit-activity-action:focus-visible{outline:2px solid #fff;outline-offset:2px}
@media(max-width:600px){
  .review-itinerary .journey-stop.has-inline-visit>.inline-visit-duration{max-width:calc(100% - 128px);margin:0 10px 10px 114px;font-size:12px}
}
@supports (width:1cqw){
  .review-itinerary .journey-stop.has-inline-visit>.inline-visit-duration{position:absolute;top:var(--inline-photo-height);right:12px;bottom:auto;left:auto;max-width:calc(100% - 144px);margin:0;transform:translateY(calc(-100% - 12px))}
  .review-itinerary .journey-stop.has-inline-visit::after{top:calc(var(--inline-photo-height) - 140px);height:140px}
  @media(max-width:600px){
    .review-itinerary .journey-stop.has-inline-visit>.inline-visit-duration{right:10px;max-width:calc(100% - 128px);transform:translateY(calc(-100% - 10px))}
    .review-itinerary .journey-stop.has-inline-visit:has(>.inline-visit-duration>.inline-visit-activity-row:nth-child(3)){--inline-photo-height:max(260px,calc(100cqw * 9 / 16))}
    .review-itinerary .journey-stop.has-inline-visit:has(>.inline-visit-duration>.inline-visit-activity-row:nth-child(3))::after{top:calc(var(--inline-photo-height) - 220px);height:220px}
  }
}
@media(forced-colors:active){
  .review-itinerary .journey-stop.has-inline-visit>.inline-visit-duration{background:Canvas;color:CanvasText;text-shadow:none}
  .review-itinerary .journey-stop.has-inline-visit>.inline-visit-duration.inline-visit-activity-action{border:1px solid CanvasText;outline-color:Highlight}
  .review-itinerary .journey-stop.has-inline-visit>.inline-visit-duration.inline-visit-activity-action:focus-visible{outline-color:Highlight}
}

/* A fixed boat stop can retain its programme editor below the visit card. */
.review-itinerary .journey-stop.has-inline-visit>.inline-itinerary-edit:not(.inline-visit-activity-action){position:static;top:auto;right:auto;bottom:auto;left:auto;transform:none;grid-column:1 / -1;grid-row:5;align-self:start;justify-self:end;width:auto;max-width:calc(100% - 28px);min-height:44px;margin:0 14px 12px;padding:8px 13px;color:#245b48;text-shadow:none}
.review-itinerary .journey-stop.has-inline-visit>.inline-itinerary-edit:not(.inline-visit-activity-action):focus-visible{outline-color:#245b48}
@media(forced-colors:active){
  .review-itinerary .journey-stop.has-inline-visit>.inline-itinerary-edit:not(.inline-visit-activity-action){color:CanvasText}
  .review-itinerary .journey-stop.has-inline-visit>.inline-itinerary-edit:not(.inline-visit-activity-action):focus-visible{outline-color:Highlight}
}

/* One map represents the included boat programme; following land cards stay unchanged. */
.inline-boat-card{min-width:0;width:100%;margin:0;border:1px solid #c7dad3;border-radius:10px;background:#fff;overflow:hidden;color:#214c3f}
.inline-boat-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px 20px;flex-wrap:wrap;max-width:none;margin:0;padding:17px 18px;border:0;background:#fff}
.inline-boat-title{min-width:0;margin:0;font:400 25px/1.3 Georgia,serif;overflow-wrap:anywhere}
.inline-boat-total{flex:none;font:700 14px/1.5 Arial,Helvetica,sans-serif;white-space:nowrap;color:#245b48}
.inline-boat-stage{position:relative;width:100%;height:460px;min-width:0;overflow:hidden;background:#e8f1ee}
.inline-boat-canvas,.inline-boat-photo-layer{position:absolute;inset:0}
.inline-boat-photo-layer{z-index:3;pointer-events:none;overflow:hidden}
.inline-boat-leaders{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.inline-boat-leaders line,.inline-boat-leaders polyline{stroke:#587f72;stroke-width:1.6;fill:none}
.inline-boat-photo{position:absolute;z-index:2;width:128px;margin:0;padding:4px;border:1px solid #b8cec4;border-radius:6px;background:#fffffff5;box-shadow:0 1px 6px #204c4326;color:#214c3f;text-align:center;overflow:hidden}
.inline-boat-photo img{display:block;width:100%;height:62px;margin:0 0 4px;object-fit:cover;border-radius:3px}
.inline-boat-photo strong,.inline-boat-photo small{display:block;margin:0;font:600 11px/1.35 Arial,Helvetica,sans-serif;overflow-wrap:anywhere}
.inline-boat-photo small{font-weight:400;color:#4b6c60}
.inline-boat-map-status{position:absolute;z-index:4;inset:0;display:grid;place-items:center;margin:0;padding:28px;text-align:center;background:#edf4f0e8;color:#486e5d;font:13px/1.7 Arial,Helvetica,sans-serif;pointer-events:none}
.inline-boat-expand{position:absolute;z-index:5;top:10px;right:10px;display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;max-width:calc(100% - 20px);padding:8px 11px;border:1px solid #bed2c8;border-radius:6px;background:#fffffff2;color:#245b48;font:600 12px/1.4 Arial,Helvetica,sans-serif;box-shadow:0 1px 5px #204c431a;cursor:pointer}
.inline-boat-stop-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px;list-style:none;margin:0;padding:14px 18px}
.inline-boat-stop{min-width:0;border:1px solid #d6e3dc;border-radius:6px;overflow:hidden;background:#f8fbf9}
.inline-boat-stop>img{display:block;width:100%;height:88px;object-fit:cover}
.inline-boat-stop-copy{padding:8px 9px}
.inline-boat-stop-copy strong,.inline-boat-stop-copy small{display:block;overflow-wrap:anywhere;font:600 12px/1.45 Arial,Helvetica,sans-serif}
.inline-boat-stop-copy small{margin-top:3px;font-weight:400;color:#577362}
.inline-boat-route-note{margin:0;padding:0 18px 12px;color:#61796b;font:11px/1.6 Arial,Helvetica,sans-serif}
.inline-boat-footer{display:flex;align-items:center;justify-content:space-between;gap:10px 18px;flex-wrap:wrap;padding:13px 18px;border-top:1px solid #deebe3;background:#fff}
.inline-boat-breakdown{flex:1;min-width:0;margin:0;font:13px/1.7 Arial,Helvetica,sans-serif;color:#365e4c;overflow-wrap:anywhere}
.inline-boat-edit{flex:none;min-height:44px;max-width:100%;padding:9px 12px;border:1px solid #b9d0c3;border-radius:6px;background:#fff;color:#245b48;font:600 12px/1.4 Arial,Helvetica,sans-serif;white-space:normal;cursor:pointer}
.inline-boat-edit:focus-visible,.inline-boat-expand:focus-visible{outline:3px solid #4f9475;outline-offset:2px}
.inline-boat-stage.is-expanded{height:min(760px,85vh);height:min(760px,85dvh)}
.inline-boat-stage:fullscreen{width:100vw;height:100vh;height:100dvh;background:#e8f1ee}
@media(max-width:600px){
  .inline-boat-heading{padding:14px 12px;gap:6px 12px}
  .inline-boat-title{font-size:21px}
  .inline-boat-total{font-size:12px}
  .inline-boat-stage{height:480px}
  .inline-boat-photo{width:88px;padding:3px}
  .inline-boat-photo img{height:48px;margin-bottom:3px}
  .inline-boat-photo strong,.inline-boat-photo small{font-size:10px;line-height:1.3}
  .inline-boat-stop-list{padding:12px;gap:8px}
  .inline-boat-stop>img{height:74px}
  .inline-boat-footer{padding:12px;gap:8px}
  .inline-boat-breakdown{flex-basis:100%;font-size:12px}
  .inline-boat-route-note{padding:0 12px 10px}
  .inline-boat-stage.is-expanded{height:680px}
}
@media(forced-colors:active){
  .inline-boat-card,.inline-boat-photo,.inline-boat-stop,.inline-boat-edit,.inline-boat-expand{border-color:CanvasText;background:Canvas;color:CanvasText;box-shadow:none}
  .inline-boat-edit:focus-visible,.inline-boat-expand:focus-visible{outline-color:Highlight}
}

/* The sea programme shares destination typography; its photos stay unboxed. */
.inline-boat-stage{height:520px;container-type:inline-size}
.inline-boat-caption{display:grid;grid-template-columns:26px minmax(0,1fr) auto;align-items:start;gap:10px 8px;padding:14px 18px;background:#fff}
.inline-boat-number{display:grid;place-items:center;width:26px;height:26px;margin-top:5px;border-radius:50%;background:#e7efe3;color:#31583f;font:600 12px/1 Arial,Helvetica,sans-serif}
.inline-boat-caption-copy{min-width:0}
.inline-boat-title{margin:0;font:400 27px/1.35 Georgia,serif}
.inline-boat-total{display:block;margin-top:5px;font:600 15px/1.5 Arial,Helvetica,sans-serif;white-space:normal}
.inline-boat-caption>.inline-boat-edit{align-self:center;justify-self:end}
.inline-boat-photo{width:clamp(100px,28cqw,180px);padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible;color:#214c3f}
.inline-boat-photo img{height:clamp(64px,17cqw,104px);margin:0 0 6px;border:0;border-radius:7px}
.inline-boat-photo strong{font:400 17px/1.3 Georgia,serif;text-shadow:0 1px 2px #fff,1px 0 2px #fff,-1px 0 2px #fff}
.inline-boat-activity{display:flex;align-items:center;justify-content:center;gap:5px;min-width:0;margin-top:4px;font:600 12px/1.4 Arial,Helvetica,sans-serif;color:#214c3f;text-shadow:0 1px 2px #fff,1px 0 2px #fff,-1px 0 2px #fff}
.inline-boat-activity>.activity-icon{display:block;flex:none;width:18px;height:18px}
.inline-boat-activity-icon{display:flex;align-items:center;justify-content:center;flex:none;width:18px;height:18px}
.inline-boat-activity-icon>.activity-icon{display:block;width:18px;height:18px}
.inline-boat-activity-label{min-width:0;overflow-wrap:anywhere}
.inline-boat-boarding{position:absolute;z-index:3;width:132px;padding:0;border:0;background:transparent;box-shadow:none;text-align:center;color:#214c3f;font:600 13px/1.4 Arial,Helvetica,sans-serif;text-shadow:0 1px 2px #fff,1px 0 2px #fff,-1px 0 2px #fff}
.inline-boat-vessel{position:absolute;z-index:4;display:grid;place-items:center;width:88px;height:54px;padding:0;border:0;background:transparent;color:#175c53;pointer-events:none;filter:drop-shadow(0 1px 1px #fff)}
.inline-boat-vessel>.gospa-access-illustration{display:block;width:88px;height:50px}
.inline-boat-stop-list{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}
.inline-boat-stop{border:0;border-radius:0;background:transparent;box-shadow:none}
.inline-boat-stop>img{border:0;border-radius:7px;height:104px}
.inline-boat-stop-copy{padding:7px 0}
.inline-boat-stop-copy strong{font:400 17px/1.3 Georgia,serif}
.inline-boat-stop-copy .inline-boat-activity{justify-content:flex-start;text-shadow:none}
.inline-boat-stop-copy .inline-boat-boarding{position:static;width:auto;text-align:left;text-shadow:none}
.inline-boat-route-note{padding-top:0}
@media(max-width:600px){
  .inline-boat-stage{height:600px}
  .inline-boat-caption{grid-template-columns:23px minmax(0,1fr);gap:8px 6px;padding:11px 12px}
  .inline-boat-number{width:23px;height:23px;font-size:11px;margin-top:4px}
  .inline-boat-title{font-size:24px}
  .inline-boat-total{font-size:14px}
  .inline-boat-caption>.inline-boat-edit{grid-column:2;justify-self:end}
  .inline-boat-photo{width:clamp(100px,28cqw,140px);padding:0}
  .inline-boat-photo img{height:clamp(64px,17cqw,84px);margin-bottom:5px}
  .inline-boat-photo strong{font-size:14px;line-height:1.25}
  .inline-boat-activity{gap:4px;font-size:11px}
  .inline-boat-activity>.activity-icon{width:16px;height:16px}
  .inline-boat-activity-icon,.inline-boat-activity-icon>.activity-icon{width:16px;height:16px}
  .inline-boat-boarding{width:100px;font-size:12px}
  .inline-boat-vessel,.inline-boat-vessel>.gospa-access-illustration{width:72px;height:44px}
}
@media(forced-colors:active){
  .inline-boat-photo,.inline-boat-stop{border:0;background:transparent;box-shadow:none;color:CanvasText}
  .inline-boat-photo strong,.inline-boat-activity,.inline-boat-boarding{color:CanvasText;text-shadow:none}
  .inline-boat-caption{background:Canvas;color:CanvasText}
  .inline-boat-number{background:Canvas;color:CanvasText;outline:1px solid CanvasText}
  .inline-boat-vessel{color:CanvasText;filter:none}
}

/* Programme photos follow the visit order in one left column. */
.inline-boat-photo{z-index:4;width:clamp(112px,24cqw,240px);height:132px;padding:0;border:0;border-radius:7px;background:transparent;box-shadow:none;overflow:hidden;color:#fff;text-align:left}
.inline-boat-photo>img{display:block;width:100%;height:100%;margin:0;border:0;border-radius:7px;object-fit:cover}
.inline-boat-photo::after{content:'';position:absolute;left:0;right:0;bottom:0;height:88%;z-index:1;background:linear-gradient(180deg,transparent 0%,rgba(5,26,22,.54) 40%,rgba(5,26,22,.9) 100%);pointer-events:none}
.inline-boat-photo-copy{position:absolute;z-index:2;left:0;right:0;bottom:0;min-width:0;padding:8px;color:#fff}
.inline-boat-photo-copy>strong{display:block;margin:0;color:#fff;font:400 17px/1.25 Georgia,serif;text-align:left;text-shadow:0 1px 3px #000d;overflow-wrap:anywhere}
.inline-boat-photo .inline-boat-activity{align-items:center;justify-content:flex-start;gap:5px;margin-top:4px;color:#fff;font:600 12px/1.35 Arial,Helvetica,sans-serif;text-shadow:0 1px 3px #000d}
.inline-boat-photo .inline-boat-activity-icon{align-self:center}
.inline-boat-vessel{z-index:3}
@media(max-width:600px){
  .inline-boat-photo{width:112px;height:152px;padding:0}
  .inline-boat-photo>img{height:100%;margin:0}
  .inline-boat-photo-copy{padding:6px}
  .inline-boat-photo-copy>strong{font-size:14px;line-height:1.25}
  .inline-boat-photo .inline-boat-activity{gap:4px;font-size:11px;line-height:1.3}
  .inline-boat-photo .inline-boat-activity-icon,.inline-boat-photo .inline-boat-activity-icon>.activity-icon{width:15px;height:15px}
  .inline-boat-boarding{width:88px}
}
@media(forced-colors:active){
  .inline-boat-photo{border:0;background:transparent;box-shadow:none}
  .inline-boat-photo::after{background:Canvas;opacity:.92;height:100%}
  .inline-boat-photo-copy,.inline-boat-photo-copy>strong,.inline-boat-photo .inline-boat-activity{color:CanvasText;text-shadow:none}
}

/* Activity copy continues beside the photo, over a quiet translucent strip. */
.inline-boat-photo{overflow:visible}
.inline-boat-photo::after{height:55%;border-radius:0 0 7px 7px}
.inline-boat-side-activity{position:absolute;z-index:2;left:100%;bottom:0;box-sizing:border-box;width:var(--inline-boat-side-width,320px);min-width:0;margin:0;padding:8px 18px 8px 8px;border:0;border-radius:0;background:linear-gradient(90deg,rgba(5,26,22,.9) 0%,rgba(5,26,22,.84) 90%,rgba(5,26,22,0) 100%);color:#fff;text-align:left;text-shadow:0 1px 3px #000d}
.inline-boat-side-activity>.inline-boat-activity{margin:0;align-items:center;justify-content:flex-start;font-size:12px;line-height:1.35;color:#fff;text-shadow:0 1px 3px #000d}
.inline-boat-side-activity .inline-boat-activity-label{white-space:normal;overflow-wrap:anywhere}
.inline-boat-vessel{z-index:5}
@media(max-width:600px){
  .inline-boat-side-activity{padding:6px 14px 6px 6px}
  .inline-boat-side-activity>.inline-boat-activity{font-size:11px;line-height:1.3}
}
@media(forced-colors:active){
  .inline-boat-side-activity{background:Canvas;color:CanvasText;text-shadow:none;outline:1px solid CanvasText}
  .inline-boat-side-activity>.inline-boat-activity{color:CanvasText;text-shadow:none}
}
/* Approved fixed three-hour illustration; the other map programmes keep their layout. */
.inline-boat-stage.is-watercolor{display:grid;grid-template-rows:minmax(0,1fr) auto;height:350px;min-height:0!important;gap:0;background:#faf7ed}
.inline-boat-stage.is-watercolor>.inline-boat-watercolor{position:static;grid-area:1 / 1;width:100%;height:100%;min-height:0;max-height:none;object-fit:contain;object-position:center;border:0;border-radius:0;margin:0}
.inline-boat-stage.is-watercolor>.inline-boat-expand{position:static;grid-area:2 / 1;justify-self:end;align-self:end;min-height:44px;margin:4px 8px 8px;max-width:calc(100% - 16px)}
.inline-boat-stage.is-watercolor.is-expanded,.inline-boat-stage.is-watercolor:fullscreen{height:100vh;height:100dvh;min-height:0!important;background:#faf7ed}
@media(max-width:600px){
  .inline-boat-stage.is-watercolor{height:270px}
  .inline-boat-stage.is-watercolor.is-expanded,.inline-boat-stage.is-watercolor:fullscreen{display:block;height:100vh;height:100dvh;overflow:auto;overscroll-behavior:contain}
  .inline-boat-stage.is-watercolor.is-expanded>.inline-boat-watercolor,.inline-boat-stage.is-watercolor:fullscreen>.inline-boat-watercolor{width:960px;height:auto;max-width:none}
  .inline-boat-stage.is-watercolor.is-expanded>.inline-boat-expand,.inline-boat-stage.is-watercolor:fullscreen>.inline-boat-expand{position:sticky;top:8px;bottom:auto;right:auto;left:calc(100vw - 140px);z-index:10;display:block;margin:8px}
}
@media print{.inline-boat-stage.is-watercolor{height:auto;display:block}.inline-boat-stage.is-watercolor>.inline-boat-watercolor{height:auto}.inline-boat-stage.is-watercolor>.inline-boat-expand{display:none}}

/* Compact map controls retain the existing image box and native programme editor. */
.inline-boat-caption{grid-template-columns:25px minmax(0,1fr)}
.inline-boat-title>.inline-boat-edit{display:inline-flex;align-items:center;gap:10px;max-width:100%;min-height:44px;margin:0;padding:3px 0;border:0;border-radius:0;background:transparent;color:inherit;font:inherit;text-align:left;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;cursor:pointer}
.inline-boat-title>.inline-boat-edit::after{content:'';display:block;flex:0 0 8px;width:8px;height:8px;margin-right:4px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px)}
.inline-boat-stage.is-watercolor{height:294px;grid-template-rows:minmax(0,1fr)}
.inline-boat-stage.is-watercolor>.inline-boat-expand.is-icon{position:absolute;grid-area:auto;top:8px;right:8px;bottom:auto;left:auto;display:grid;place-items:center;width:44px;height:44px;min-width:44px;min-height:44px;margin:0;padding:0;border:0;border-radius:4px;background:transparent;box-shadow:none;color:#214c3f;line-height:1;z-index:10}
.inline-boat-expand.is-icon>svg{display:block;width:20px;height:20px;pointer-events:none}
.inline-boat-expand.is-icon:hover{background:rgba(255,255,255,.35)}
.inline-boat-card[data-map-state=ready] .inline-boat-watercolor{cursor:zoom-in}
.inline-boat-stage.is-watercolor.is-expanded>.inline-boat-watercolor,.inline-boat-stage.is-watercolor:fullscreen>.inline-boat-watercolor{cursor:default}
@media(max-width:600px){
  .inline-boat-stage.is-watercolor{height:214px}
  .inline-boat-stage.is-watercolor.is-expanded>.inline-boat-expand.is-icon,.inline-boat-stage.is-watercolor:fullscreen>.inline-boat-expand.is-icon{position:sticky;top:8px;right:auto;left:calc(100vw - 52px);margin:8px;display:grid}
  .inline-boat-stage.is-watercolor.is-expanded>.inline-boat-watercolor,.inline-boat-stage.is-watercolor:fullscreen>.inline-boat-watercolor{cursor:grab}
}
@media(forced-colors:active){.inline-boat-stage.is-watercolor>.inline-boat-expand.is-icon{color:ButtonText;background:Canvas}}
@media print{
  .inline-boat-stage.is-watercolor,.inline-boat-stage.is-watercolor.is-expanded,.inline-boat-stage.is-watercolor:fullscreen{height:auto;display:block;overflow:visible}
  .inline-boat-stage.is-watercolor>.inline-boat-watercolor,.inline-boat-stage.is-watercolor.is-expanded>.inline-boat-watercolor,.inline-boat-stage.is-watercolor:fullscreen>.inline-boat-watercolor{width:100%;height:auto;max-width:100%}
  .inline-boat-stage.is-watercolor>.inline-boat-expand.is-icon{display:none}
}

/* The selected programme is the caption; its duration belongs to the map. */
.inline-boat-stage>.inline-boat-total{position:absolute;z-index:6;right:64px;bottom:42px;max-width:calc(100% - 88px);margin:0;padding:7px 12px;border:0;border-radius:5px;background:#214c3feb;color:#fff;font:600 20px/1.25 Georgia,serif;white-space:normal;pointer-events:none}
.inline-boat-stage.is-watercolor>.inline-boat-total{top:12px;right:auto;bottom:auto;left:12px;max-width:calc(100% - 80px);font-size:22px}
.inline-boat-art-cover{position:absolute;z-index:5;pointer-events:none}
.inline-boat-art-cover[hidden]{display:none}
.inline-boat-art-title-mask,.inline-boat-art-time-mask{position:absolute;display:block;background:#faf7ed;box-shadow:0 0 4px 2px #faf7ed;pointer-events:none}
.inline-boat-art-title-mask{left:3%;top:1.5%;width:29%;height:7.5%}
.inline-boat-art-time-mask{left:90.5%;top:3%;width:7%;height:5%}
.inline-boat-art-vessel{position:absolute;left:77.6%;top:40.8%;display:block;width:clamp(30px,7.5%,105px);aspect-ratio:88 / 54;transform:translate(-50%,-50%);color:#175c53;filter:drop-shadow(0 1px 1px #ffffffd9);pointer-events:none}
.inline-boat-art-vessel>.gospa-access-illustration{display:block;width:100%;height:100%}
@media(max-width:600px){
  .inline-boat-stage>.inline-boat-total{font-size:17px;padding:6px 9px}
  .inline-boat-stage.is-watercolor>.inline-boat-total{font-size:18px}
}
@media(forced-colors:active){
  .inline-boat-stage>.inline-boat-total{color:CanvasText;background:Canvas;outline:1px solid CanvasText}
  .inline-boat-art-vessel{color:CanvasText;filter:none}
}
@media print{
  .inline-boat-stage.is-watercolor>.inline-boat-art-cover{left:0!important;top:0!important;width:100%!important;height:auto!important;aspect-ratio:1586 / 992}
  .inline-boat-stage>.inline-boat-total{color:#214c3f;background:#faf7ed;print-color-adjust:exact}
}

/* One art family, with a read-only programme description beside its duration. */
.inline-boat-card{--boat-actions-height:44px}
.inline-boat-stage.is-watercolor{height:calc(294px + var(--boat-actions-height));grid-template-rows:minmax(0,1fr) var(--boat-actions-height)}
.inline-boat-map-actions{position:absolute;z-index:7;left:12px;right:64px;bottom:34px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;box-sizing:border-box;height:var(--boat-actions-height);padding:5px 10px;background:#214c3feb;color:#fff}
.inline-boat-stage.is-watercolor>.inline-boat-map-actions{position:static;grid-area:2 / 1;left:auto;right:auto;bottom:auto;width:100%}
.inline-boat-details,.inline-boat-trip-action{min-width:0;min-height:32px;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:inherit;cursor:pointer}
.inline-boat-details{font:600 14px/1.35 Arial,Helvetica,sans-serif;text-decoration:underline;text-underline-offset:4px}
.inline-boat-trip-action{display:flex;justify-content:flex-end;align-items:center;gap:7px;font:500 14px/1.35 Arial,Helvetica,sans-serif;text-align:right}
.inline-boat-trip-icon{display:block;flex:0 0 25px;width:25px;height:22px}
.inline-boat-trip-icon>.gospa-access-illustration{display:block;width:100%;height:100%}
.inline-boat-trip-copy{min-width:0}
.inline-boat-trip-copy>.inline-boat-total{position:static;display:inline;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:inherit;font:700 15px/1.35 Arial,Helvetica,sans-serif;white-space:normal;pointer-events:none}
.inline-boat-stage:not(.is-watercolor) .inline-boat-trip-label{display:none}
.inline-boat-details:focus-visible,.inline-boat-trip-action:focus-visible{outline:2px solid #fff;outline-offset:3px}
.inline-boat-art-route-layer{position:absolute;inset:0;display:block;width:100%;height:100%;overflow:visible;pointer-events:none}
.inline-boat-art-route{fill:none;stroke:#df7b36;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.inline-boat-art-route.is-return{stroke:#216571;stroke-width:2;stroke-dasharray:6 5}
.inline-boat-art-credit{position:absolute;left:2.5%;right:2.5%;bottom:3%;color:#46594f;font:400 clamp(7px,1cqw,12px)/1.3 Arial,Helvetica,sans-serif;text-align:center}
.inline-boat-art-stop>circle{fill:#126c6e;stroke:#fff;stroke-width:4}
.inline-boat-art-stop>text{fill:#123f38;stroke:#faf7ed;stroke-width:7;paint-order:stroke;font:600 43px Georgia,serif;stroke-linejoin:round}
.inline-boat-art-custom-note{position:absolute;left:15%;top:48%;max-width:45%;padding:3px 8px;background:#faf7edc9;color:#214c3f;font:400 clamp(12px,1.8cqw,24px)/1.3 Georgia,serif;text-align:center}
.inline-boat-dialog{width:min(760px,calc(100% - 24px));max-height:calc(100dvh - 24px);box-sizing:border-box;margin:auto;padding:0;border:1px solid #c8d8ce;border-radius:12px;background:#fafcf8;color:#214c3f;box-shadow:0 18px 70px #102e2a55;overflow:hidden}
.inline-boat-dialog[open]{display:flex;flex-direction:column}
.inline-boat-dialog::backdrop{background:#102e2a99}
.inline-boat-dialog-header{display:flex;flex:none;justify-content:space-between;align-items:start;gap:18px;padding:18px 20px;border-bottom:1px solid #dbe5dd}
.inline-boat-dialog-header>h2{margin:0;font:400 27px/1.25 Georgia,serif;color:#214c3f}
.inline-boat-dialog-close{flex:none;min-height:40px;margin:0;padding:5px 8px;border:0;background:transparent;box-shadow:none;color:#214c3f;font:600 14px/1.4 Arial,Helvetica,sans-serif;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.inline-boat-dialog-body{min-height:0;padding:4px 20px 20px;overflow:auto;overscroll-behavior:contain;font:400 14px/1.65 Arial,Helvetica,sans-serif}
.inline-boat-dialog-intro{margin:15px 0}
.inline-boat-dialog-boarding{font-weight:600}
.inline-boat-dialog-stop{display:grid;grid-template-columns:200px minmax(0,1fr);gap:16px;margin:22px 0}
.inline-boat-dialog-stop>img{display:block;width:100%;height:138px;border:0;border-radius:8px;object-fit:cover}
.inline-boat-dialog-stop>div>h3{margin:0 0 5px;font:400 24px/1.25 Georgia,serif;color:#214c3f}
.inline-boat-dialog-stop>div>p{margin:8px 0 0}
.inline-boat-dialog-stop .inline-boat-activity{justify-content:flex-start;color:#245b48;text-shadow:none}
.inline-boat-dialog-note{font-size:13px;color:#526c60}
@media(max-width:600px){
  .inline-boat-card{--boat-actions-height:76px}
  .inline-boat-stage.is-watercolor{height:calc(214px + var(--boat-actions-height))}
  .inline-boat-map-actions{gap:9px;padding:6px 10px}
  .inline-boat-trip-action{font-size:12px;line-height:1.3;gap:5px}
  .inline-boat-trip-copy>.inline-boat-total{font-size:13px;line-height:1.3}
  .inline-boat-trip-icon{flex-basis:21px;width:21px;height:20px}
  .inline-boat-stage.is-watercolor.is-expanded,.inline-boat-stage.is-watercolor:fullscreen{padding-bottom:var(--boat-actions-height);box-sizing:border-box}
  .inline-boat-stage.is-watercolor.is-expanded>.inline-boat-map-actions,.inline-boat-stage.is-watercolor:fullscreen>.inline-boat-map-actions{position:fixed;left:0;right:0;bottom:0;width:100vw}
  .inline-boat-dialog-header{padding:14px;gap:10px}
  .inline-boat-dialog-header>h2{font-size:23px}
  .inline-boat-dialog-body{padding:2px 14px 14px}
  .inline-boat-dialog-stop{grid-template-columns:minmax(0,1fr);gap:11px}
  .inline-boat-dialog-stop>img{height:auto;aspect-ratio:16 / 9}
}
@media(forced-colors:active){
  .inline-boat-map-actions{color:ButtonText;background:Canvas;outline:1px solid CanvasText}
  .inline-boat-dialog{border-color:CanvasText;background:Canvas;color:CanvasText}
  .inline-boat-dialog-header>h2,.inline-boat-dialog-stop>div>h3,.inline-boat-dialog-close,.inline-boat-dialog-note{color:CanvasText}
}
@media print{
  .inline-boat-stage.is-watercolor>.inline-boat-art-cover{aspect-ratio:var(--art-ratio,1586 / 992)}
  .inline-boat-stage.is-watercolor>.inline-boat-map-actions{position:relative;display:block;height:auto;padding:8px;color:#214c3f;background:#faf7ed}
  .inline-boat-details{display:none}
  .inline-boat-trip-action{display:block;text-align:left}
  .inline-boat-trip-icon{display:none}
  .inline-boat-dialog:not([open]){display:none}
}

/* Boat actions share the quiet white-on-photo treatment of destination actions. */
.inline-boat-stage.is-watercolor{height:294px;grid-template-rows:minmax(0,1fr)}
.inline-boat-stage.is-watercolor>.inline-boat-map-actions,.inline-boat-stage.is-watercolor.is-expanded>.inline-boat-map-actions,.inline-boat-stage.is-watercolor:fullscreen>.inline-boat-map-actions{position:absolute;grid-area:auto;left:var(--boat-art-actions-left,0px);right:auto;top:calc(var(--boat-art-actions-bottom,100%) - var(--boat-actions-height));bottom:auto;width:var(--boat-art-actions-width,100%);height:var(--boat-actions-height);padding:4px 10px;background:linear-gradient(180deg,rgba(5,26,22,0),rgba(5,26,22,.52) 45%,rgba(5,26,22,.78));color:#fff;text-shadow:0 1px 3px #000d}
.inline-boat-stage.is-watercolor .inline-boat-details,.inline-boat-stage.is-watercolor .inline-boat-trip-action{min-height:36px;color:#fff;font:600 13px/1.35 Arial,Helvetica,sans-serif;text-shadow:0 1px 3px #000d;text-decoration:underline;text-underline-offset:3px}
.inline-boat-stage.is-watercolor .inline-boat-trip-copy>.inline-boat-total{font:inherit;color:inherit}
.inline-boat-stage.is-watercolor .inline-boat-art-credit{top:2%;bottom:auto;padding:1px 3px;background:#faf7edb3;font-size:7px;line-height:1.25}
@media(max-width:600px){
  .inline-boat-stage.is-watercolor{height:214px}
  .inline-boat-stage.is-watercolor:not(.is-expanded):not(:fullscreen)>.inline-boat-map-actions{left:0;top:auto;right:0;bottom:0;width:100%}
  .inline-boat-stage.is-watercolor.is-expanded,.inline-boat-stage.is-watercolor:fullscreen{padding-bottom:0}
  .inline-boat-stage.is-watercolor{--boat-actions-height:52px}
  .inline-boat-stage.is-watercolor .inline-boat-details,.inline-boat-stage.is-watercolor .inline-boat-trip-action{font-size:12px;line-height:1.3;min-height:44px}
  .inline-boat-stage.is-watercolor .inline-boat-map-actions{gap:8px;padding:4px 8px}
}
@media(forced-colors:active){
  .inline-boat-stage.is-watercolor>.inline-boat-map-actions{background:Canvas;color:CanvasText;outline:1px solid CanvasText;text-shadow:none}
  .inline-boat-stage.is-watercolor .inline-boat-details,.inline-boat-stage.is-watercolor .inline-boat-trip-action{color:CanvasText;text-shadow:none}
}
@media print{
  .inline-boat-stage.is-watercolor{height:auto;display:block}
  .inline-boat-stage.is-watercolor>.inline-boat-map-actions{position:relative;left:0;top:auto;right:auto;bottom:auto;display:block;width:100%;height:auto;padding:6px;color:#214c3f;background:#faf7ed;text-shadow:none}
  .inline-boat-stage.is-watercolor .inline-boat-trip-action{color:#214c3f;text-shadow:none;text-decoration:none}
  .inline-boat-stage.is-watercolor .inline-boat-details{display:none}
}

/* Match the existing Perast photo actions, including their opening indicators. */
.inline-boat-stage.is-watercolor .inline-boat-details,.inline-boat-stage.is-watercolor .inline-boat-trip-action{font:600 13px/1.4 Arial,Helvetica,sans-serif;text-decoration:none}
.inline-boat-stage.is-watercolor .inline-boat-details{display:inline-flex;align-items:center;justify-content:flex-start;gap:6px;text-align:left}
.inline-boat-stage.is-watercolor .inline-boat-details::after{content:'⌄' / '';flex:none;font-size:16px;line-height:1}
.inline-boat-stage.is-watercolor .inline-boat-trip-action{position:relative;padding-right:18px}
.inline-boat-stage.is-watercolor .inline-boat-trip-action::after{content:'⌄' / '';position:absolute;right:0;top:50%;transform:translateY(-50%);font-size:18px;line-height:1}
.inline-boat-stage.is-watercolor .inline-boat-details:hover,.inline-boat-stage.is-watercolor .inline-boat-trip-action:hover{text-decoration:underline;text-underline-offset:3px}
.inline-boat-stage.is-watercolor .inline-boat-details:focus-visible,.inline-boat-stage.is-watercolor .inline-boat-trip-action:focus-visible{outline:2px solid #fff;outline-offset:2px}
@media(max-width:600px){
  .inline-boat-stage.is-watercolor .inline-boat-details,.inline-boat-stage.is-watercolor .inline-boat-trip-action{font-size:12px;line-height:1.4}
}
@media print{
  .inline-boat-stage.is-watercolor .inline-boat-details{display:none}
  .inline-boat-stage.is-watercolor .inline-boat-trip-action{padding-right:0}
  .inline-boat-stage.is-watercolor .inline-boat-trip-action::after{display:none}
}

/* The boat picture is static; the activity action opens programme choices. */
.inline-boat-expand[hidden],.inline-boat-stage.is-watercolor>.inline-boat-expand{display:none!important}
.inline-boat-stage.is-watercolor>.inline-boat-watercolor{cursor:default}
.inline-boat-programme-name{display:inline;color:inherit;font:inherit;text-decoration:none}

/* Geographic attribution sits below the picture, outside its illustration. */
.inline-boat-data-credit{display:block;width:fit-content;margin-top:6px;color:#586d62;font:400 11px/1.4 Arial,Helvetica,sans-serif;text-decoration:underline;text-underline-offset:2px}
.inline-boat-data-credit[hidden]{display:none}
@media(forced-colors:active){.inline-boat-data-credit{color:LinkText}}

/* A small, readable source label on the map's quiet upper edge. */
.inline-boat-stage>.inline-boat-data-credit{position:absolute;top:4px;right:5px;z-index:8;width:auto;max-width:calc(100% - 16px);margin:0;padding:2px 3px;color:#53645b;font:400 9px/1.3 Arial,Helvetica,sans-serif;background:transparent;text-align:right;text-decoration:none;text-shadow:0 0 2px #faf7ed,0 0 4px #faf7ed}
.inline-boat-stage>.inline-boat-data-credit:hover{text-decoration:underline;text-underline-offset:2px}
.inline-boat-stage>.inline-boat-data-credit:focus-visible{outline:1px solid currentColor;outline-offset:2px}
@media(forced-colors:active){.inline-boat-stage>.inline-boat-data-credit{color:LinkText;background:Canvas;text-shadow:none}}

/* Initial boat chooser: one unselected artwork, independent of programme maps. */
.boat-chooser-card{position:relative}
#boat-open .boat-chooser-art{position:relative;display:block;aspect-ratio:2/1;overflow:hidden;background:#faf7ee}
#boat-open .boat-chooser-art>img{display:block;width:100%;height:100%;min-height:0;max-height:none;aspect-ratio:2/1;object-fit:contain}
#boat-open .boat-chooser-places{position:absolute;inset:0;display:block;width:100%;height:100%;pointer-events:none;overflow:visible}
#boat-open .boat-chooser-places circle{fill:#073f37;stroke:#fff;stroke-width:4}
#boat-open .boat-chooser-places text{fill:#073f37;stroke:#fffaf0;stroke-width:7;paint-order:stroke fill;stroke-linejoin:round;font:500 42px Georgia,serif}
.boat-chooser-card>.boat-chooser-credit{position:absolute;top:4px;right:5px;z-index:2;color:#52645a;font:9px/1.2 Arial,sans-serif;text-decoration:none;text-shadow:0 0 3px #fff,0 0 3px #fff}
.boat-chooser-card>.boat-chooser-credit:focus-visible{outline:2px solid #176b60;outline-offset:2px}

/* Add affordance stays inside the single accessible whole-card button. */
.place-card .picker-add{display:inline-flex;align-items:center;justify-content:center;gap:6px;max-width:100%;padding:7px 11px;border:1px solid #c6dbd2;border-radius:6px;background:#eef6f1;color:#245847;font:600 12px/1.3 Arial,Helvetica,sans-serif;white-space:normal}
.place-card .picker-button:hover .picker-add,.place-card .picker-button:focus-visible .picker-add{background:#e1efe6;border-color:#7da591}
.place-card .picker-button:disabled .picker-add{opacity:.65}

/* A compact, stationary catalogue. Only the page scrolls vertically; the
 * existing modal, route, pricing and presentation screens retain their styles. */
.catalogue-browsing #map-panel{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;overflow:visible}
.catalogue-browsing #map-panel .selection-caption{display:none}
.catalogue-browsing #map-panel .place-card{position:relative;overflow:visible;border:0;border-radius:12px;background:transparent;box-shadow:none}
.catalogue-browsing #map-panel .picker-button{position:relative;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:12px;width:100%;min-height:100px;height:100%;padding:12px;border:1px solid #d6e3d6;border-radius:12px;background:#fffdf8;text-align:left;box-shadow:none}
.catalogue-browsing #map-panel .picker-button:hover{border-color:#8aad9c;background:#f0f6ee}
.catalogue-browsing #map-panel .picker-button:focus-visible{outline:3px solid #77a98d;outline-offset:3px}
.catalogue-browsing #map-panel .place-card.is-selected .picker-button{border-color:#216c50;background:#eef6ef}
.catalogue-browsing #map-panel .activity-photo{position:relative;flex:none;width:64px;height:64px;border-radius:50%;background:#e3ece4}
.catalogue-browsing #map-panel .activity-photo>img,.catalogue-browsing #map-panel .boat-chooser-art,.catalogue-browsing #map-panel .boat-chooser-art>img{display:block;width:64px;height:64px;min-height:0;max-height:none;aspect-ratio:1;object-fit:cover;border:0;border-radius:50%}
.catalogue-browsing #map-panel .boat-chooser-places{display:none}
.catalogue-browsing #map-panel .activity-badge{position:absolute;right:-3px;bottom:-3px;width:24px;min-height:24px;max-width:none;margin:0;padding:3px;border:1px solid #d9e5dc;border-radius:50%;background:#fff;box-shadow:none}
.catalogue-browsing #map-panel .activity-badge-label,.catalogue-browsing #map-panel .activity-badge-icons>.activity-icon:not(:first-child){display:none}
.catalogue-browsing #map-panel .activity-badge .activity-icon{width:17px;height:17px}
.catalogue-browsing #map-panel .picker-copy{display:block;min-width:0;padding:0 6px 0 0}
.catalogue-browsing #map-panel .place-card .picker-copy strong{display:block;min-width:0;font:400 18px/1.25 Georgia,serif;color:#214c3f;overflow-wrap:anywhere;hyphens:auto}
.catalogue-browsing #map-panel .picker-description,.catalogue-browsing #map-panel .picker-action{display:none}
.catalogue-browsing #map-panel .picker-check{position:absolute;top:5px;right:5px;display:none;place-items:center;width:20px;height:20px;border:0;border-radius:50%;background:#216c50;color:white;font:700 12px/1 Arial,Helvetica,sans-serif;box-shadow:none}
.catalogue-browsing #map-panel .place-card.is-selected .picker-check{display:grid}
.catalogue-browsing #map-panel .boat-chooser-credit{position:static;align-self:flex-start;margin:3px 0 0 4px;font:9px/1.4 Arial,Helvetica,sans-serif;color:#62786c;background:none}
.catalogue-browsing #map-panel .place-card:not(.is-unavailable)>[data-cable-availability],.catalogue-browsing #map-panel .place-card:not(.is-unavailable)>[data-jaz-availability]{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.catalogue-browsing #map-panel .place-card.is-unavailable>.option-hint{margin:5px 3px 0;font-size:11px;line-height:1.4}
@media(max-width:1100px){.catalogue-browsing #map-panel{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.catalogue-browsing #map-panel{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.catalogue-browsing #map-panel .picker-button{min-height:92px;gap:8px;padding:9px}.catalogue-browsing #map-panel .activity-photo,.catalogue-browsing #map-panel .activity-photo>img,.catalogue-browsing #map-panel .boat-chooser-art,.catalogue-browsing #map-panel .boat-chooser-art>img{width:52px;height:52px}.catalogue-browsing #map-panel .place-card .picker-copy strong{font-size:16px}}
@media(max-width:380px){.catalogue-browsing #map-panel .picker-button{gap:7px;padding:8px}.catalogue-browsing #map-panel .activity-photo,.catalogue-browsing #map-panel .activity-photo>img,.catalogue-browsing #map-panel .boat-chooser-art,.catalogue-browsing #map-panel .boat-chooser-art>img{width:42px;height:42px}.catalogue-browsing #map-panel .place-card .picker-copy strong{font-size:14px}}
@media(max-width:340px){.catalogue-browsing #map-panel .picker-button{flex-direction:column;justify-content:center;gap:7px;min-height:112px;text-align:center}.catalogue-browsing #map-panel .picker-copy{width:100%;padding:0}.catalogue-browsing #map-panel .place-card .picker-copy strong{font-size:14px;line-height:1.25;hyphens:none}}
.catalogue-browsing #boat-step #boat-intro .place-card .picker-button strong{font:400 18px/1.25 Georgia,serif}
@media(max-width:760px){.catalogue-browsing #boat-step #boat-intro .place-card .picker-button strong{font-size:16px}}
@media(max-width:380px){.catalogue-browsing #boat-step #boat-intro .place-card .picker-button strong{font-size:14px}}

/* The homepage reuses these same selection controls in one manual horizontal strip. */
body.homepage-sights{background:transparent}
.homepage-sights main{max-width:none;margin:0;padding:0}
.homepage-sights .intro,.homepage-sights .choice-guide,.homepage-sights #selection-overview,.homepage-sights #boat-car-note,.homepage-sights .picker-section-anchor,.homepage-sights .selection-caption,.homepage-sights footer{display:none!important}
.homepage-sights.catalogue-browsing #map-panel{display:flex;gap:10px;align-items:stretch;width:100%;padding:5px 4px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.homepage-sights #map-panel::-webkit-scrollbar{display:none}
.homepage-sights.catalogue-browsing #map-panel .place-card{flex:0 0 80px;width:80px;scroll-snap-align:start}
.homepage-sights.catalogue-browsing #map-panel .place-card .picker-button{flex-direction:column;justify-content:flex-start;gap:7px;min-height:106px;padding:4px 2px;text-align:center;border:0;border-radius:8px;background:transparent}
.homepage-sights.catalogue-browsing #map-panel .picker-copy{width:100%;padding:0}
.homepage-sights.catalogue-browsing #boat-step #boat-intro .picker-copy{padding:0}
.homepage-sights.catalogue-browsing #map-panel .place-card .picker-copy strong,.homepage-sights.catalogue-browsing #boat-step #boat-intro .place-card .picker-button strong{font:400 12px/1.25 Georgia,serif;overflow-wrap:anywhere;hyphens:none}
.homepage-sights.catalogue-browsing #map-panel .activity-photo,.homepage-sights.catalogue-browsing #map-panel .activity-photo>img,.homepage-sights.catalogue-browsing #map-panel .boat-chooser-art,.homepage-sights.catalogue-browsing #map-panel .boat-chooser-art>img{width:52px;height:52px}
.homepage-sights.catalogue-browsing #map-panel .activity-photo::after{content:'+';position:absolute;right:-2px;bottom:-2px;display:grid;place-items:center;width:20px;height:20px;border:2px solid #f3f7f2;border-radius:50%;background:#216c50;color:#fff;font:600 17px/1 Arial,Helvetica,sans-serif;pointer-events:none}
.homepage-sights.catalogue-browsing #map-panel .place-card.is-selected .activity-photo::after{content:'✓';font-size:12px}
.homepage-sights.catalogue-browsing #map-panel .activity-badge,.homepage-sights.catalogue-browsing #map-panel .picker-check{display:none}
.homepage-sights.catalogue-browsing #map-panel .place-card.is-selected .picker-check{display:none}
.homepage-sights.catalogue-browsing #map-panel .place-card .picker-button:hover{background:#e4efe4}
.homepage-sights #map-panel .place-card:not(.is-unavailable)>[data-cable-availability],.homepage-sights #map-panel .place-card:not(.is-unavailable)>[data-jaz-availability]{position:absolute}
.homepage-sights #map-panel .place-card.is-unavailable>.option-hint{display:none}
@media(prefers-reduced-motion:reduce){.homepage-sights #map-panel{scroll-behavior:auto}}

.option-row [data-remove-activity]{min-height:40px;margin-left:8px;padding:5px 9px;border:1px solid #b8d2c9;border-radius:6px;background:#fff;color:#315e46;font:inherit;cursor:pointer}

/* One total duration with its compact controls, without a separate extra-time row. */
.free-time-option>span{display:block;margin-bottom:8px}
.free-time-single-row{display:flex;align-items:center;justify-content:space-between;gap:8px;max-width:100%}
.free-time-single-row>.minute-controls.free-time-controls{margin:0;gap:5px}
.free-time-toggle{flex:none;min-width:78px;min-height:44px;padding:7px 10px;border:1px solid #b8d2c9;border-radius:6px;background:#fff;color:#315e46;font:600 12px Arial,sans-serif;cursor:pointer}
.free-time-toggle[aria-pressed=true]{background:#e6f0e6;border-color:#598468}
.free-time-toggle:disabled{opacity:.4;cursor:default}
.free-time-toggle:focus-visible{outline:3px solid #7bb7a6;outline-offset:2px}

.free-time-option [data-free-applied]{font-weight:600;white-space:nowrap}

/* Only the embedded homepage sight strip shares its parent's background. */
html:has(body.homepage-sights) { background: transparent; }
body.homepage-sights #map-panel {
  background: transparent !important;
  border: 0;
  box-shadow: none;
}

/* A partly visible next photo signals the finite homepage sight list. */
.homepage-sights.catalogue-browsing #map-panel { --sight-full-count: 3; }
.homepage-sights.catalogue-browsing #map-panel .place-card {
  flex: 0 0 calc((100% - (var(--sight-full-count) * 10px)) / (var(--sight-full-count) + .5));
  width: calc((100% - (var(--sight-full-count) * 10px)) / (var(--sight-full-count) + .5));
}
@media (min-width: 701px) {
  .homepage-sights.catalogue-browsing #map-panel { --sight-full-count: 7; }
}
@media (min-width: 1000px) {
  .homepage-sights.catalogue-browsing #map-panel { --sight-full-count: 10; }
}


/* Shared brand strip is visible only on a standalone tour document. */
footer.compact-site-footer{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:center;align-items:center;gap:8px;max-width:none;margin:0 auto;padding:14px 12px;border-top:1px solid #d8e4e7;font-family:Arial,sans-serif;font-size:12px;line-height:1.4;white-space:nowrap;color:#526c75}footer.compact-site-footer>span{flex:0 0 auto}footer.compact-site-footer .footer-phone{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:32px;margin:0;padding:0;gap:4px;border:0;border-radius:0;background:none;color:inherit;font:inherit;text-decoration:none;white-space:nowrap}footer.compact-site-footer .footer-phone svg{flex:none}footer.compact-site-footer .footer-phone:hover{text-decoration:underline}footer.compact-site-footer .footer-phone:focus-visible{outline:3px solid #e5a82d;outline-offset:3px}@media(max-width:480px){footer.compact-site-footer{gap:6px;padding:10px 8px;font-size:11px}}
.compact-site-footer .footer-since-en{display:none}html[data-language="en"] .compact-site-footer .footer-since-en{display:inline}html[data-language="en"] .compact-site-footer .footer-since-me{display:none}
.embedded-tour .compact-site-footer,.homepage-sights .compact-site-footer{display:none!important}


/* Photo-first attraction choices; homepage keeps its compact round strip. */
.catalogue-browsing:not(.homepage-sights) #map-panel .place-card{background:transparent;border:0;box-shadow:none}
.catalogue-browsing:not(.homepage-sights) #map-panel .picker-button{position:relative;display:block;flex:none;width:100%;height:180px;min-height:0;padding:0;overflow:hidden;border:1px solid #d4dfd9;border-radius:11px;background:#d9e5df;text-align:left;box-shadow:none}
.catalogue-browsing:not(.homepage-sights) #map-panel .picker-button:hover{border-color:#8aad9c;background:#d9e5df}
.catalogue-browsing:not(.homepage-sights) #map-panel .place-card.is-selected .picker-button{border-color:#216c50;background:#d9e5df;box-shadow:inset 0 0 0 1px #216c50}
.catalogue-browsing:not(.homepage-sights) #map-panel .activity-photo,.catalogue-browsing:not(.homepage-sights) #map-panel .activity-photo>img,.catalogue-browsing:not(.homepage-sights) #map-panel .boat-chooser-art,.catalogue-browsing:not(.homepage-sights) #map-panel .boat-chooser-art>img{position:absolute;inset:0;display:block;width:100%;height:100%;min-height:0;max-height:none;aspect-ratio:auto;object-fit:cover;border:0;border-radius:0}
.catalogue-browsing:not(.homepage-sights) #map-panel .picker-copy{position:absolute;inset:35% 0 0;z-index:1;display:flex;align-items:flex-end;min-width:0;width:100%;padding:10px;border-radius:0 0 10px 10px;background:linear-gradient(to top,#082b39d9,#082b3966 50%,transparent);pointer-events:none}
.catalogue-browsing:not(.homepage-sights) #map-panel .place-card .picker-copy strong,.catalogue-browsing:not(.homepage-sights) #boat-step #boat-intro .place-card .picker-button strong{min-width:0;color:#fff;font:700 12.5px/1.35 Arial,Helvetica,sans-serif;letter-spacing:0;text-shadow:0 1px 3px #000;overflow-wrap:anywhere;hyphens:none}
.catalogue-browsing:not(.homepage-sights) #map-panel .picker-button::after{content:'+' / '';position:absolute;top:8px;right:8px;z-index:2;display:grid;place-items:center;width:24px;height:24px;border:1px solid #ffffffb3;border-radius:50%;background:#fffdf6ed;color:#174c4f;font:600 20px/1 Arial,Helvetica,sans-serif;pointer-events:none}
.catalogue-browsing:not(.homepage-sights) #map-panel .place-card.is-selected .picker-button::after{content:'✓' / '';background:#216c50;color:#fff;font-size:13px}
.catalogue-browsing:not(.homepage-sights) #map-panel .picker-check,.catalogue-browsing:not(.homepage-sights) #map-panel .place-card.is-selected .picker-check{display:none}
.catalogue-browsing:not(.homepage-sights) #map-panel .activity-badge{position:absolute;inset:8px auto auto 8px;z-index:2;width:24px;height:24px;min-height:24px;max-width:none;margin:0;padding:3px;border:0;border-radius:50%;background:#fffdf6e6;box-shadow:none}
.homepage-sights.catalogue-browsing #map-panel .place-card .picker-copy strong,.homepage-sights.catalogue-browsing #boat-step #boat-intro .place-card .picker-button strong{font:700 12.5px/1.35 Arial,Helvetica,sans-serif}
.catalogue-dock-active main{padding-bottom:110px}
@media(max-width:760px){.catalogue-browsing:not(.homepage-sights) #map-panel .picker-button{height:130px}}
@media(max-width:700px){.catalogue-browsing:not(.homepage-sights) #map-panel .place-card .picker-copy strong,.catalogue-browsing:not(.homepage-sights) #boat-step #boat-intro .place-card .picker-button strong,.homepage-sights.catalogue-browsing #map-panel .place-card .picker-copy strong,.homepage-sights.catalogue-browsing #boat-step #boat-intro .place-card .picker-button strong{font-size:12px}}
@media(forced-colors:active){.catalogue-browsing:not(.homepage-sights) #map-panel .picker-copy{background:Canvas;color:CanvasText}.catalogue-browsing:not(.homepage-sights) #map-panel .place-card .picker-copy strong,.catalogue-browsing:not(.homepage-sights) #boat-step #boat-intro .place-card .picker-button strong{color:CanvasText;text-shadow:none}}

/* One quiet reset at the end of the editable catalogue. */
.catalogue-reset-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;grid-column:1/-1;order:20;gap:8px;margin:12px 0 0}
.catalogue-reset-row #catalogue-reset{display:inline-flex;align-items:center;justify-content:center;width:auto;min-height:34px;margin:0;padding:6px 11px;border:1px solid #b2c5c4;border-radius:5px;background:transparent;color:#276b70;font:600 12px/1.4 Arial,Helvetica,sans-serif}
.catalogue-reset-row #catalogue-reset[hidden],.catalogue-reset-row [hidden]{display:none!important}
.catalogue-reset-row #catalogue-reset:hover{background:#e8f0ee}
.catalogue-reset-row #catalogue-reset:focus-visible{outline:3px solid #e5a82d;outline-offset:3px}
.catalogue-reset-row p{flex-basis:100%;margin:0;color:#923326;font-size:12px;line-height:1.5}
.homepage-sights .catalogue-reset-row{display:none}

/* Quiet WhatsApp contact beside the existing compact footer phone. */
.compact-site-footer .footer-whatsapp{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:26px;min-width:26px;min-height:34px;margin:0;padding:0;border:0;border-radius:0;background:none;color:#16864a;font:inherit;text-decoration:none;white-space:nowrap}
.compact-site-footer .footer-whatsapp svg{display:block;flex:none;width:18px;height:18px}
.compact-site-footer .footer-whatsapp:hover{color:#08743b;background:none}
.compact-site-footer .footer-whatsapp:focus-visible{outline:3px solid #e5a82d;outline-offset:3px}
@media(max-width:360px){.footer.compact-site-footer,footer.compact-site-footer{gap:4px;padding-left:6px;padding-right:6px;font-size:10px}}
footer.compact-site-footer .footer-whatsapp-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* The homepage uses the same full-photo choices in a finite manual strip. */
.homepage-sights.catalogue-browsing #map-panel{--sight-full-count:2;gap:10px;padding:5px 4px;align-items:stretch}
.homepage-sights.catalogue-browsing #map-panel .place-card{flex:0 0 calc((100% - (var(--sight-full-count) * 10px)) / (var(--sight-full-count) + .25));width:calc((100% - (var(--sight-full-count) * 10px)) / (var(--sight-full-count) + .25));min-width:0;background:transparent;border:0;box-shadow:none;scroll-snap-align:start}
.homepage-sights.catalogue-browsing #map-panel .place-card .picker-button{position:relative;display:block;flex:none;width:100%;height:130px;min-height:0;gap:0;padding:0;overflow:hidden;border:1px solid #d4dfd9;border-radius:11px;background:#d9e5df;text-align:left;box-shadow:none}
.homepage-sights.catalogue-browsing #map-panel .place-card .picker-button:hover{border-color:#8aad9c;background:#d9e5df}
.homepage-sights.catalogue-browsing #map-panel .place-card.is-selected .picker-button{border-color:#216c50;background:#d9e5df;box-shadow:inset 0 0 0 1px #216c50}
.homepage-sights.catalogue-browsing #map-panel .activity-photo,.homepage-sights.catalogue-browsing #map-panel .activity-photo>img,.homepage-sights.catalogue-browsing #map-panel .boat-chooser-art,.homepage-sights.catalogue-browsing #map-panel .boat-chooser-art>img{position:absolute;inset:0;display:block;width:100%;height:100%;min-height:0;max-height:none;aspect-ratio:auto;object-fit:cover;border:0;border-radius:0}
.homepage-sights.catalogue-browsing #map-panel .picker-copy,.homepage-sights.catalogue-browsing #boat-step #boat-intro .picker-copy{position:absolute;inset:35% 0 0;z-index:1;display:flex;align-items:flex-end;min-width:0;width:100%;padding:10px;border-radius:0 0 10px 10px;background:linear-gradient(to top,#082b39d9,#082b3966 50%,transparent);pointer-events:none}
.homepage-sights.catalogue-browsing #map-panel .place-card .picker-copy strong,.homepage-sights.catalogue-browsing #boat-step #boat-intro .place-card .picker-button strong{min-width:0;color:#fff;font:700 12px/1.35 Arial,Helvetica,sans-serif;letter-spacing:0;text-shadow:0 1px 3px #000;overflow-wrap:anywhere;hyphens:none}
.homepage-sights.catalogue-browsing #map-panel .activity-photo::after,.homepage-sights.catalogue-browsing #map-panel .place-card.is-selected .activity-photo::after{content:none;display:none}
.homepage-sights.catalogue-browsing #map-panel .place-card .picker-button::after{content:'+' / '';position:absolute;top:8px;right:8px;z-index:2;display:grid;place-items:center;width:24px;height:24px;border:1px solid #ffffffb3;border-radius:50%;background:#fffdf6ed;color:#174c4f;font:600 20px/1 Arial,Helvetica,sans-serif;pointer-events:none}
.homepage-sights.catalogue-browsing #map-panel .place-card.is-selected .picker-button::after{content:'✓' / '';background:#216c50;color:#fff;font-size:13px}
.homepage-sights.catalogue-browsing #map-panel .picker-check,.homepage-sights.catalogue-browsing #map-panel .place-card.is-selected .picker-check{display:none}
.homepage-sights.catalogue-browsing #map-panel .activity-badge{position:absolute;inset:8px auto auto 8px;z-index:2;display:flex;width:24px;height:24px;min-height:24px;max-width:none;margin:0;padding:3px;border:0;border-radius:50%;background:#fffdf6e6;box-shadow:none}
@media(min-width:701px){.homepage-sights.catalogue-browsing #map-panel{--sight-full-count:4}.homepage-sights.catalogue-browsing #map-panel .place-card .picker-button{height:150px}.homepage-sights.catalogue-browsing #map-panel .place-card .picker-copy strong,.homepage-sights.catalogue-browsing #boat-step #boat-intro .place-card .picker-button strong{font-size:12.5px}}
@media(min-width:1000px){.homepage-sights.catalogue-browsing #map-panel{--sight-full-count:6}}
@media(forced-colors:active){.homepage-sights.catalogue-browsing #map-panel .picker-copy,.homepage-sights.catalogue-browsing #boat-step #boat-intro .picker-copy{background:Canvas;color:CanvasText}.homepage-sights.catalogue-browsing #map-panel .place-card .picker-copy strong,.homepage-sights.catalogue-browsing #boat-step #boat-intro .place-card .picker-button strong{color:CanvasText;text-shadow:none}}

/* One continuous route spine connects the existing inline plan across programmes. */
.review-plan-frame .review-itinerary .inline-itinerary-journey{--journey-rail:46px;--journey-node:30px;--journey-olive:#6b7850;--journey-line:#b1bba0;position:relative;isolation:isolate;gap:18px;padding:0 0 8px var(--journey-rail)}
.review-plan-frame .review-itinerary .inline-itinerary-journey::before{content:'';position:absolute;z-index:-1;left:14px;top:23px;bottom:4px;width:2px;border-radius:2px;background:var(--journey-line);pointer-events:none}
.review-plan-frame .review-itinerary .inline-itinerary-journey::after{content:'';position:absolute;left:11px;bottom:0;width:8px;height:8px;border-radius:50%;background:var(--journey-olive);pointer-events:none}
.review-plan-frame .review-itinerary .journey-programme,.review-plan-frame .review-itinerary .journey-programme-stops{min-width:0;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
.review-plan-frame .review-itinerary .journey-programme-stops{gap:18px}
.review-plan-frame .review-itinerary .journey-stop{position:relative;min-width:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit{grid-template-columns:minmax(0,1fr)}
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>img{border-radius:10px}
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit::after{border-radius:0 0 10px 10px}
.review-plan-frame .review-itinerary .journey-stop>b,.review-plan-frame .review-itinerary .inline-boat-number{position:absolute;z-index:4;top:8px;left:calc(-1 * var(--journey-rail));display:grid;place-items:center;width:var(--journey-node);height:var(--journey-node);margin:0;padding:0;border:0;border-radius:50%;background:var(--journey-olive);color:#fff;box-shadow:0 0 0 4px #f3f7f2;font:600 12px/1 Arial,Helvetica,sans-serif}
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>b{grid-column:1 / -1;grid-row:2;right:auto;left:calc(-1 * var(--journey-rail));margin:0}
.review-plan-frame .review-itinerary .journey-stop:not(.has-inline-visit)>b{grid-column:1 / -1;grid-row:1;right:auto;left:calc(-1 * var(--journey-rail));margin:0}
.review-plan-frame .review-itinerary .inline-boat-number{grid-area:auto;right:auto;left:calc(-1 * var(--journey-rail));margin:0}
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>strong{grid-column:1 / -1;grid-row:2;margin:10px 0 0;font-size:27px;line-height:1.35}
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>.inline-place-details-body{padding-left:0;padding-right:0}
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>.inline-place-details>.inline-place-details-body{padding-left:0;padding-right:0}

/* Departure, boarding and return remain quiet text stops on the same route. */
.review-plan-frame .review-itinerary .journey-stop:not(.has-inline-visit){display:grid;grid-template-columns:minmax(0,1fr);gap:3px;min-height:46px;padding:9px 0 3px}
.review-plan-frame .review-itinerary .journey-stop:not(.has-inline-visit)>img,.review-plan-frame .review-itinerary .journey-stop:not(.has-inline-visit)>.inline-photo-status{display:none!important}
.review-plan-frame .review-itinerary .journey-stop:not(.has-inline-visit)>strong{grid-column:1;grid-row:auto;margin:0;font:600 15px/1.45 Arial,Helvetica,sans-serif}
.review-plan-frame .review-itinerary .journey-stop:not(.has-inline-visit)>small,.review-plan-frame .review-itinerary .journey-stop:not(.has-inline-visit)>span{grid-column:1;grid-row:auto;margin:0;font-size:12px;line-height:1.55}
.review-plan-frame .review-itinerary .journey-stop:not(.has-inline-visit)>.inline-itinerary-edit{grid-column:1;margin:0}

/* Transport nodes open the same native details, without a second route line. */
.review-plan-frame .review-itinerary .journey-leg.inline-travel-details{overflow:visible}
.review-plan-frame .review-itinerary .inline-travel-summary{position:relative;display:flex;align-items:center;justify-content:flex-start;gap:0;width:var(--journey-rail);min-height:44px;margin:0 0 0 calc(-1 * var(--journey-rail));padding:0;border:0;border-radius:6px;background:transparent;text-align:left;overflow:visible}
.review-plan-frame .review-itinerary .inline-travel-summary>.inline-travel-icon{display:grid;place-items:center;flex:none;width:30px;height:30px;margin:0;border:1px solid #b1bba0;border-radius:50%;background:#f3f7f2;color:var(--journey-olive);font-size:17px;line-height:1;box-shadow:0 0 0 3px #f3f7f2}
.review-plan-frame .review-itinerary .inline-travel-summary>.inline-travel-line{display:none}
.review-plan-frame .review-itinerary .inline-travel-summary>.inline-travel-chevron{position:absolute;top:50%;left:32px;right:auto;display:block;width:auto;height:auto;background:transparent;color:var(--journey-olive);font-size:15px;transform:translateY(-50%)}
.review-plan-frame .review-itinerary .inline-travel-details[open]>.inline-travel-summary>.inline-travel-chevron{transform:translateY(-50%) rotate(180deg)}
.review-plan-frame .review-itinerary .inline-travel-summary:hover>.inline-travel-icon{border-color:var(--journey-olive);background:#e8eddf}
.review-plan-frame .review-itinerary .inline-travel-summary:focus-visible{outline:2px solid var(--journey-olive);outline-offset:2px}
.review-plan-frame .review-itinerary .inline-travel-body{justify-content:flex-start;gap:4px 12px;padding:0 0 10px;text-align:left}

/* A boat programme replaces its source stops after rendering, and joins the rail too. */
.review-plan-frame .review-itinerary .inline-boat-card{position:relative;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
.review-plan-frame .review-itinerary .inline-boat-stage{border-radius:10px}
.review-plan-frame .review-itinerary .inline-boat-caption{grid-template-columns:minmax(0,1fr);gap:0;padding:10px 0 0;background:transparent}
.review-plan-frame .review-itinerary .inline-boat-caption-copy{grid-column:1}
.review-plan-frame .review-itinerary .inline-boat-title{font-size:27px;line-height:1.35}

@media(max-width:600px){
  .review-plan-frame .review-itinerary .inline-itinerary-journey{--journey-rail:40px;gap:16px}
  .review-plan-frame .review-itinerary .journey-programme-stops{gap:16px}
  .review-plan-frame .review-itinerary .journey-stop.has-inline-visit>strong,.review-plan-frame .review-itinerary .inline-boat-title{font-size:24px}
  .review-plan-frame .review-itinerary .journey-stop:not(.has-inline-visit)>strong{font-size:14px}
  .review-plan-frame .review-itinerary .inline-travel-summary>.inline-travel-chevron{left:31px;font-size:13px}
}
/* On the narrowest phones activity text uses its own row above Details. */
@media(max-width:360px){
  .review-plan-frame .review-itinerary .journey-stop.has-inline-visit>.inline-visit-duration{left:10px;right:10px;top:var(--inline-photo-height);bottom:auto;width:auto;max-width:calc(100% - 20px);margin:0;transform:translateY(calc(-100% - 58px))}
  .review-plan-frame .review-itinerary .journey-stop.has-inline-visit::after{top:calc(var(--inline-photo-height) - 190px);height:190px}
  .review-plan-frame .review-itinerary .journey-stop.has-inline-visit:has(>.inline-visit-duration>.inline-visit-activity-row:nth-child(3))::after{top:calc(var(--inline-photo-height) - 220px);height:220px}
}
@media(forced-colors:active){
  .review-plan-frame .review-itinerary .inline-itinerary-journey{--journey-olive:CanvasText;--journey-line:CanvasText}
  .review-plan-frame .review-itinerary .journey-stop>b,.review-plan-frame .review-itinerary .inline-boat-number{border:1px solid CanvasText;background:Canvas;color:CanvasText;box-shadow:none}
  .review-plan-frame .review-itinerary .inline-travel-summary>.inline-travel-icon{border-color:CanvasText;background:Canvas;color:CanvasText;box-shadow:none}
  .review-plan-frame .review-itinerary .inline-travel-summary:hover>.inline-travel-icon{background:Canvas}
}

/* Attraction names sit below untouched photos on one compact warm caption band. */
.catalogue-browsing:not(.homepage-sights) #map-panel .place-card .picker-button,.homepage-sights.catalogue-browsing #map-panel .place-card .picker-button{--sight-photo-height:180px;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;width:100%;height:auto;min-height:0;padding:0;overflow:hidden;background:#f5ebdd}
.homepage-sights.catalogue-browsing #map-panel .place-card .picker-button{--sight-photo-height:130px}
.catalogue-browsing:not(.homepage-sights) #map-panel .place-card .picker-button:hover,.homepage-sights.catalogue-browsing #map-panel .place-card .picker-button:hover,.catalogue-browsing:not(.homepage-sights) #map-panel .place-card.is-selected .picker-button,.homepage-sights.catalogue-browsing #map-panel .place-card.is-selected .picker-button{background:#f5ebdd}
.catalogue-browsing:not(.homepage-sights) #map-panel .activity-photo,.homepage-sights.catalogue-browsing #map-panel .activity-photo{position:relative;inset:auto;display:block;flex:none;width:100%;height:var(--sight-photo-height);min-height:0;max-height:none;aspect-ratio:auto;overflow:hidden;border:0;border-radius:0;background:#d9e5df}
.catalogue-browsing:not(.homepage-sights) #map-panel .activity-photo>img,.homepage-sights.catalogue-browsing #map-panel .activity-photo>img,.catalogue-browsing:not(.homepage-sights) #map-panel .boat-chooser-art,.homepage-sights.catalogue-browsing #map-panel .boat-chooser-art,.catalogue-browsing:not(.homepage-sights) #map-panel .boat-chooser-art>img,.homepage-sights.catalogue-browsing #map-panel .boat-chooser-art>img{position:absolute;inset:0;display:block;width:100%;height:100%;min-height:0;max-height:none;aspect-ratio:auto;object-fit:cover;border:0;border-radius:0}
.catalogue-browsing:not(.homepage-sights) #map-panel .activity-photo::after,.homepage-sights.catalogue-browsing #map-panel .activity-photo::after{content:none;display:none}
.catalogue-browsing:not(.homepage-sights) #map-panel .picker-copy,.homepage-sights.catalogue-browsing #map-panel .picker-copy,.homepage-sights.catalogue-browsing #boat-step #boat-intro .picker-copy{position:static;inset:auto;z-index:auto;display:block;flex:none;min-width:0;width:100%;height:auto;margin:0;padding:8px;border-radius:0;background:#f5ebdd;text-align:left;pointer-events:none}
.catalogue-browsing:not(.homepage-sights) #map-panel .place-card .picker-copy strong,.catalogue-browsing:not(.homepage-sights) #boat-step #boat-intro .place-card .picker-button strong,.homepage-sights.catalogue-browsing #map-panel .place-card .picker-copy strong,.homepage-sights.catalogue-browsing #boat-step #boat-intro .place-card .picker-button strong{display:block;min-width:0;margin:0;color:#214c4e;font:700 12.5px/1.35 Arial,Helvetica,sans-serif;letter-spacing:0;text-shadow:none;white-space:normal;overflow-wrap:anywhere;hyphens:none}
.catalogue-browsing:not(.homepage-sights) #map-panel .activity-badge,.homepage-sights.catalogue-browsing #map-panel .activity-badge{display:none}
.catalogue-browsing:not(.homepage-sights) #map-panel .place-card .picker-button::after,.homepage-sights.catalogue-browsing #map-panel .place-card .picker-button::after{top:8px;right:8px;width:24px;height:24px;border:1px solid #e2d4c2;background:#f5ebdd;color:#174c4f}
.catalogue-browsing:not(.homepage-sights) #map-panel .place-card.is-selected .picker-button::after,.homepage-sights.catalogue-browsing #map-panel .place-card.is-selected .picker-button::after{background:#216c50;color:#fff;border-color:#216c50}
@media(max-width:760px){
  .catalogue-browsing:not(.homepage-sights) #map-panel .place-card .picker-button{--sight-photo-height:130px}
}
@media(max-width:700px){
  .catalogue-browsing:not(.homepage-sights) #map-panel .place-card .picker-copy strong,.catalogue-browsing:not(.homepage-sights) #boat-step #boat-intro .place-card .picker-button strong,.homepage-sights.catalogue-browsing #map-panel .place-card .picker-copy strong,.homepage-sights.catalogue-browsing #boat-step #boat-intro .place-card .picker-button strong{font-size:12px}
}
@media(min-width:701px){
  .homepage-sights.catalogue-browsing #map-panel .place-card .picker-button{--sight-photo-height:150px}
}
@media(forced-colors:active){
  .catalogue-browsing:not(.homepage-sights) #map-panel .picker-copy,.homepage-sights.catalogue-browsing #map-panel .picker-copy,.homepage-sights.catalogue-browsing #boat-step #boat-intro .picker-copy{background:Canvas}
  .catalogue-browsing:not(.homepage-sights) #map-panel .place-card .picker-copy strong,.catalogue-browsing:not(.homepage-sights) #boat-step #boat-intro .place-card .picker-button strong,.homepage-sights.catalogue-browsing #map-panel .place-card .picker-copy strong,.homepage-sights.catalogue-browsing #boat-step #boat-intro .place-card .picker-button strong{color:CanvasText}
  .catalogue-browsing:not(.homepage-sights) #map-panel .place-card .picker-button::after,.homepage-sights.catalogue-browsing #map-panel .place-card .picker-button::after{background:ButtonFace;color:ButtonText;border-color:ButtonText}
}

/* Inline plan headings use the same quiet sans-serif style as the homepage. */
.review-plan-frame>#review-title,.review-plan-frame>.review-heading>#review-title,.review-plan-frame .review-itinerary .journey-stop>strong,.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>strong,.review-plan-frame .review-itinerary .inline-boat-title{color:#193f49;font:700 24px/1.25 Arial,sans-serif;letter-spacing:-.5px}
.review-plan-frame .review-itinerary .journey-stop:not(.has-inline-visit)>strong{color:#193f49;font-weight:700}
@media(max-width:700px){.review-plan-frame>#review-title,.review-plan-frame>.review-heading>#review-title,.review-plan-frame .review-itinerary .journey-stop>strong,.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>strong,.review-plan-frame .review-itinerary .inline-boat-title{font-size:23px}}
@media(max-width:360px){.review-plan-frame>#review-title,.review-plan-frame>.review-heading>#review-title,.review-plan-frame .review-itinerary .journey-stop>strong,.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>strong,.review-plan-frame .review-itinerary .inline-boat-title{font-size:22px}}

/* Clear itinerary photos share one attached beige action strip below the image. */
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>img{border-radius:10px 10px 0 0}
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit::after,.review-plan-frame .review-itinerary .journey-stop.has-inline-visit:has(>.inline-visit-duration>.inline-visit-activity-row:nth-child(3))::after{content:'';position:static;inset:auto;z-index:0;display:block;grid-column:1 / -1;grid-row:2;align-self:stretch;width:auto;height:auto;min-height:44px;border-radius:0 0 10px 10px;background:#f5ebdd;pointer-events:none}
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>.inline-visit-duration{position:relative;inset:auto;grid-column:1 / -1;grid-row:2;align-self:center;justify-self:end;width:max-content;max-width:calc(100% - 90px);min-height:44px;margin:0;padding:8px 10px;border:0;border-radius:0;background:transparent;box-shadow:none;color:#80531c;font:600 13px/1.4 Arial,Helvetica,sans-serif;text-shadow:none;transform:none}
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>.inline-visit-duration.inline-visit-activity-action{justify-content:center;padding-right:26px}
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>.inline-place-details{position:static;grid-column:1 / -1;grid-row:4;width:100%;margin:0}
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>.inline-place-details>summary{position:absolute;inset:auto;top:var(--inline-photo-height);left:0;right:auto;bottom:auto;z-index:3;display:inline-flex;align-items:center;justify-content:flex-start;gap:6px;width:90px;min-width:0;max-width:90px;min-height:44px;margin:0;padding:8px 10px;border:0;border-radius:0;background:transparent;box-shadow:none;color:#80531c;font:600 13px/1.4 Arial,Helvetica,sans-serif;text-shadow:none;transform:none}
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>.inline-place-details>summary:focus-visible,.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>.inline-visit-duration.inline-visit-activity-action:focus-visible{outline:2px solid #80531c;outline-offset:-3px}
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>strong{grid-row:3;margin-top:10px}
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>b{grid-row:3}
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>.inline-photo-status{grid-row:5}
.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>.inline-itinerary-edit:not(.inline-visit-activity-action){grid-row:6}
.review-plan-frame .review-itinerary .inline-visit-activity-label{overflow-wrap:normal;word-break:normal}

/* The fixed boat artwork keeps its image height and gains the same natural action row. */
.review-plan-frame .review-itinerary .inline-boat-stage.is-watercolor{grid-template-rows:294px auto;height:auto;min-height:0!important}
.review-plan-frame .review-itinerary .inline-boat-stage.is-watercolor>.inline-boat-map-actions{position:static;inset:auto;grid-area:2 / 1;align-self:stretch;width:100%;height:auto;min-height:44px;padding:8px 10px;border:0;background:#f5ebdd;color:#80531c;text-shadow:none}
.review-plan-frame .review-itinerary .inline-boat-stage.is-watercolor .inline-boat-details,.review-plan-frame .review-itinerary .inline-boat-stage.is-watercolor .inline-boat-trip-action{min-height:44px;color:#80531c;text-shadow:none}
.review-plan-frame .review-itinerary .inline-boat-stage.is-watercolor .inline-boat-trip-copy>.inline-boat-total{color:#80531c;text-shadow:none}
.review-plan-frame .review-itinerary .inline-boat-stage.is-watercolor .inline-boat-details:focus-visible,.review-plan-frame .review-itinerary .inline-boat-stage.is-watercolor .inline-boat-trip-action:focus-visible{outline:2px solid #80531c;outline-offset:2px}
@media(max-width:600px){
  .review-plan-frame .review-itinerary .journey-stop.has-inline-visit>.inline-visit-duration,.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>.inline-place-details>summary{font-size:12px}
  .review-plan-frame .review-itinerary .inline-boat-stage.is-watercolor{grid-template-rows:214px auto}
}
@container(max-width:260px){
  .review-plan-frame .review-itinerary .journey-stop.has-inline-visit>.inline-visit-duration{align-self:start;justify-self:stretch;width:100%;max-width:100%;margin:44px 0 0}
}
@media(forced-colors:active){
  .review-plan-frame .review-itinerary .journey-stop.has-inline-visit::after,.review-plan-frame .review-itinerary .journey-stop.has-inline-visit:has(>.inline-visit-duration>.inline-visit-activity-row:nth-child(3))::after{display:block;background:Canvas;border:1px solid CanvasText}
  .review-plan-frame .review-itinerary .journey-stop.has-inline-visit>.inline-visit-duration,.review-plan-frame .review-itinerary .journey-stop.has-inline-visit>.inline-place-details>summary,.review-plan-frame .review-itinerary .inline-boat-stage.is-watercolor .inline-boat-details,.review-plan-frame .review-itinerary .inline-boat-stage.is-watercolor .inline-boat-trip-action,.review-plan-frame .review-itinerary .inline-boat-stage.is-watercolor .inline-boat-trip-copy>.inline-boat-total{color:CanvasText}
  .review-plan-frame .review-itinerary .inline-boat-stage.is-watercolor>.inline-boat-map-actions{background:Canvas;color:CanvasText}
}

/* The transport icon and its recorded minutes open the same journey details. */
.review-plan-frame .review-itinerary .inline-travel-summary{width:max-content;max-width:calc(100% + var(--journey-rail));min-height:44px;gap:6px}
.review-plan-frame .review-itinerary .inline-travel-summary>.inline-travel-minutes{display:block;flex:none;min-width:0;color:var(--journey-olive);font:600 12px/1.4 Arial,Helvetica,sans-serif;white-space:nowrap}
.review-plan-frame .review-itinerary .inline-travel-summary>.inline-travel-chevron{position:static;inset:auto;display:block;flex:none;width:auto;height:auto;font-size:15px;transform:none}
.review-plan-frame .review-itinerary .inline-travel-details[open]>.inline-travel-summary>.inline-travel-chevron{transform:rotate(180deg)}

/* A larger main route map keeps one manual animation action below it. */
#review-step .map-stage:not(.is-map-expanded):not(:fullscreen)>.map-wrap{height:700px}
#review-step .map-controls.actions{display:flex;align-items:center;justify-content:center;gap:0;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
#review-step .map-controls.actions #overview,#review-step .map-controls.actions #view-itinerary{display:none}
#review-step .map-controls.actions #play{flex:none;width:auto;max-width:100%;min-height:46px;padding:10px 18px;font-size:13px}
/* Routing failures still open and expose the original operational status. */
#review-step:not(:has(#plan-notes>.error)) #map-legend{display:none}
@media(max-width:780px){#review-step .map-stage:not(.is-map-expanded):not(:fullscreen)>.map-wrap{height:560px}}

/* The local visit total follows its existing selected activities beside the name. */
.review-plan-frame .review-itinerary .journey-stop>strong>.inline-place-total{display:inline-block;margin-inline-start:.35em;color:#80531c;font:600 14px/1.4 Arial,Helvetica,sans-serif;letter-spacing:0;white-space:nowrap;vertical-align:baseline}
@media(forced-colors:active){.review-plan-frame .review-itinerary .journey-stop>strong>.inline-place-total{color:CanvasText}}

/* Prepared programmes end on the same route spine, with quiet page-end actions. */
.prepared-tour .review-plan-frame .review-itinerary .journey-stop.journey-end{display:block;min-height:38px;margin:4px 0 0;padding:6px 0 0}
.prepared-tour .review-plan-frame .review-itinerary .journey-stop.journey-end>strong{display:block;margin:0;color:#193f49;font:700 16px/1.5 Arial,Helvetica,sans-serif}
.prepared-tour #review-back{display:inline-flex;align-items:center;justify-content:center;width:auto;min-height:34px;margin:0 0 16px;padding:6px 11px;border:1px solid #b2c5c4;border-radius:5px;background:transparent;color:#276b70;font:600 12px/1.4 Arial,Helvetica,sans-serif}
.prepared-tour #review-back:hover{background:#e8f0ee}
.prepared-tour #review-back:focus-visible{outline:3px solid #e5a82d;outline-offset:3px}
.prepared-tour .tour-review-actions{position:static;width:100%;max-width:440px;margin:24px auto 0}
.prepared-tour .tour-review-actions>.selection-footer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}

/* Prepared private tours keep only the existing Back and Continue actions. */
.prepared-tour #review-back{display:none}

/* The host's retained details form owns Continue on the same review page.
   The custom tour's viewport Selected menu remains available. */
.inline-details-host.reviewing-tour .tour-review-actions{display:none!important}


/* Overview first: a moderate route map precedes the unchanged connected plan. */
#review-step .map-stage:not(.is-map-expanded):not(:fullscreen)>.map-wrap{height:440px}
#review-step>.map-layout{margin-bottom:24px}
@media(max-width:780px){#review-step .map-stage:not(.is-map-expanded):not(:fullscreen)>.map-wrap{height:320px}}
.prepared-tour #review-step>.prepared-route-intro{max-width:900px;margin:0 0 24px;padding:0;color:var(--montis-ink,#193f49);font:400 16px/1.7 Arial,Helvetica,sans-serif}
.prepared-tour #review-step>.prepared-route-intro a{color:var(--montis-action,#236b58);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.prepared-tour #review-step>.prepared-route-intro a:hover{color:var(--montis-coffee,#76502c);text-decoration-thickness:2px}
.prepared-tour #review-step>.prepared-route-intro a:focus-visible{outline:2px solid var(--montis-action,#236b58);outline-offset:3px}
.custom-tour-summary #review-step>.prepared-route-intro{max-width:900px;margin:0 0 24px;padding:0;color:var(--montis-ink,#193f49);font:400 16px/1.7 Arial,Helvetica,sans-serif}
.custom-tour-summary #review-step>.prepared-route-intro a{color:var(--montis-action,#236b58);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.custom-tour-summary #review-step>.prepared-route-intro a:hover{color:var(--montis-coffee,#76502c);text-decoration-thickness:2px}
.custom-tour-summary #review-step>.prepared-route-intro a:focus-visible{outline:2px solid var(--montis-action,#236b58);outline-offset:3px}
.prepared-tour-highlights{margin:28px 0;padding:22px 0 0;border-top:1px solid var(--montis-line,#dcd4c7);color:var(--montis-ink,#193f49);font-family:Arial,Helvetica,sans-serif}
.prepared-tour-highlights>h2{margin:0 0 18px;font:700 24px/1.25 Arial,Helvetica,sans-serif;letter-spacing:-.4px}
.prepared-tour-highlights>ol{margin:0;padding-left:24px;max-width:900px}
.prepared-tour-highlights>ol>li{margin:0 0 18px;padding-left:4px;overflow-wrap:anywhere}
.prepared-tour-highlights>ol>li::marker{color:var(--montis-coffee,#76502c);font-weight:700}
.prepared-highlight-heading{display:flex;flex-wrap:wrap;align-items:baseline;gap:3px 7px}
.prepared-highlight-heading>h3{margin:0;font:700 16px/1.45 Arial,Helvetica,sans-serif;color:var(--montis-ink,#193f49)}
.prepared-highlight-heading>span{color:var(--montis-coffee,#76502c);font:600 14px/1.45 Arial,Helvetica,sans-serif}
.prepared-tour-highlights li>p,.prepared-tour-highlights>.prepared-highlight-guide{margin:5px 0 0;color:var(--montis-muted,#5b6968);font:400 15px/1.65 Arial,Helvetica,sans-serif}
.prepared-tour-highlights>.prepared-highlight-guide{max-width:900px;margin-top:4px}
@media(max-width:540px){.prepared-tour-highlights{margin:24px 0;padding-top:20px}.prepared-tour-highlights>ol{padding-left:21px}.prepared-tour-highlights>ol>li{padding-left:2px}}

/* The pilot's practical information follows the selected plan, before duration. */
.prepared-tour-information{max-width:900px;margin:28px 0;color:var(--montis-ink,#193f49);font:400 15px/1.65 Arial,Helvetica,sans-serif}
.prepared-tour-information .prepared-info-disclosure{margin:0;border:0;border-top:1px solid var(--montis-line,#dcd4c7);border-radius:0;background:transparent}
.prepared-tour-information .prepared-info-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:18px 0;list-style:none;color:var(--montis-ink,#193f49);cursor:pointer}
.prepared-tour-information .prepared-info-disclosure>summary::-webkit-details-marker{display:none}
.prepared-tour-information .prepared-info-disclosure>summary>h2,.prepared-tour-information .prepared-info-cancellation>h2{margin:0;font:700 24px/1.3 Arial,Helvetica,sans-serif;letter-spacing:-.4px;color:var(--montis-ink,#193f49)}
.prepared-info-chevron{display:block;flex:none;width:10px;height:10px;margin:0 4px 5px 0;border-right:2px solid var(--montis-coffee,#76502c);border-bottom:2px solid var(--montis-coffee,#76502c);transform:rotate(45deg)}
.prepared-info-disclosure[open]>summary>.prepared-info-chevron{margin-bottom:0;transform:rotate(225deg)}
.prepared-info-disclosure>summary:focus-visible{outline:2px solid var(--montis-action,#236b58);outline-offset:3px}
.prepared-info-body{padding:0 0 22px}
.prepared-tour-information p{margin:12px 0;color:var(--montis-ink,#193f49);font:400 15px/1.65 Arial,Helvetica,sans-serif;overflow-wrap:anywhere}
.prepared-info-facts{margin:0 0 14px}
.prepared-info-facts>div{display:grid;grid-template-columns:125px minmax(0,1fr);align-items:start;gap:18px;padding:12px 0;border-bottom:1px solid var(--montis-line,#dcd4c7)}
.prepared-info-facts>div:first-child{padding-top:0}
.prepared-info-facts dt{color:var(--montis-coffee,#76502c);font-weight:700}
.prepared-info-facts dd{min-width:0;margin:0;padding-left:18px;border-left:1px solid var(--montis-line,#dcd4c7)}
.prepared-info-pickup>strong,.prepared-info-exclusions>strong{color:var(--montis-coffee,#76502c)}
.prepared-tour-information .prepared-info-disclosure[data-info-disclosure="adjustments"]{margin-top:18px;border-bottom:1px solid var(--montis-line,#dcd4c7)}
.prepared-tour-information .prepared-info-disclosure[data-info-disclosure="adjustments"]>summary{min-height:48px;padding:12px 0}
.prepared-tour-information .prepared-info-disclosure>summary>h3{margin:0;font:700 16px/1.4 Arial,Helvetica,sans-serif;color:var(--montis-coffee,#76502c)}
.prepared-tour-information .prepared-info-adjustments-note{margin:0 0 15px}
.prepared-info-inclusions{margin:0;padding:0;list-style:none}
.prepared-info-inclusions>li{display:flex;align-items:flex-start;gap:12px;margin:0 0 10px}
.prepared-info-check{flex:none;color:var(--montis-action,#236b58);font-size:20px;font-weight:700;line-height:1.25}
.prepared-info-inclusion-text{min-width:0;overflow-wrap:anywhere}
.prepared-info-inclusion-text>small{display:block;margin-top:2px;color:var(--montis-muted,#5b6968);font-size:13px;line-height:1.5}
.prepared-tour-information .prepared-info-exclusions{margin:18px 0 0;padding-top:12px;border-top:1px solid var(--montis-line,#dcd4c7)}
.prepared-info-cancellation{padding:22px 0 4px;border-top:1px solid var(--montis-line,#dcd4c7)}
.prepared-tour-information .prepared-info-cancellation-lead{margin:16px 0 4px;color:var(--montis-coffee,#76502c);font-weight:700;font-size:17px}
.prepared-info-cancellation>p:last-child{margin:0}
@media(max-width:540px){.prepared-tour-information{margin:24px 0}.prepared-info-facts>div{grid-template-columns:88px minmax(0,1fr);gap:10px}.prepared-info-facts dd{padding-left:10px}.prepared-tour-information .prepared-info-disclosure>summary>h2,.prepared-tour-information .prepared-info-cancellation>h2{font-size:22px}.prepared-info-disclosure>summary{gap:12px}.prepared-info-inclusions>li{gap:10px}}
@media(forced-colors:active){.prepared-info-chevron{border-color:CanvasText}.prepared-info-check{color:CanvasText}.prepared-info-disclosure>summary:focus-visible{outline-color:Highlight}}


.inline-details-host.reviewing-tour .tour-overview-summary{display:none!important}


/* Prepared place galleries keep the existing photo cell and activity strip. */
.review-itinerary .journey-stop.has-inline-visit>.inline-photo-gallery-open{display:block;position:relative;z-index:0;grid-column:1 / -1;grid-row:1;align-self:start;min-width:0;min-height:44px;width:100%;height:auto;aspect-ratio:3.6;margin:0;padding:0;overflow:hidden;border:0;border-radius:10px 10px 0 0;background:transparent;box-shadow:none;color:inherit;font:inherit;line-height:0;text-align:left;appearance:none;cursor:pointer}
.review-itinerary .journey-stop.has-inline-visit>.inline-photo-gallery-open>img{display:block;width:100%;height:100%;max-height:none;margin:0;padding:0;object-fit:cover;aspect-ratio:auto;border:0;border-radius:inherit}
.review-itinerary .journey-stop>strong>.inline-photo-gallery-title{display:inline-flex;align-items:baseline;flex-wrap:wrap;gap:0;max-width:100%;min-height:44px;margin:0;padding:0;border:0;border-radius:2px;background:transparent;box-shadow:none;color:inherit;font:inherit;letter-spacing:inherit;line-height:inherit;text-align:inherit;text-transform:none;white-space:normal;appearance:none;cursor:pointer}
.review-plan-frame .review-itinerary .journey-stop>strong>.inline-photo-gallery-title>.inline-place-total{display:inline-block;margin-inline-start:.35em;color:#80531c;font:600 14px/1.4 Arial,Helvetica,sans-serif;letter-spacing:0;white-space:nowrap;vertical-align:baseline}
.review-itinerary .inline-photo-gallery-open:focus-visible{outline:3px solid var(--montis-action,#236b58);outline-offset:-3px}
.review-itinerary .inline-photo-gallery-title:focus-visible{outline:2px solid var(--montis-action,#236b58);outline-offset:3px}
@media(max-width:600px){.review-itinerary .journey-stop.has-inline-visit>.inline-photo-gallery-open{aspect-ratio:16 / 9}}
@supports(width:1cqw){.review-itinerary .journey-stop.has-inline-visit>.inline-photo-gallery-open{height:var(--inline-photo-height);aspect-ratio:auto}}
@media(forced-colors:active){.review-itinerary .inline-photo-gallery-open:focus-visible,.review-itinerary .inline-photo-gallery-title:focus-visible{outline-color:Highlight}.review-plan-frame .review-itinerary .journey-stop>strong>.inline-photo-gallery-title>.inline-place-total{color:CanvasText}}

/* Browse a place's existing photos in the plan, keeping its activity strip fixed. */
.review-itinerary .journey-stop.has-inline-visit>.inline-photo-gallery{display:block;position:relative;z-index:0;grid-column:1 / -1;grid-row:1;align-self:start;min-width:0;min-height:44px;width:100%;height:auto;aspect-ratio:3.6;margin:0;padding:0;overflow:hidden;border:0;border-radius:10px 10px 0 0;background:#f5ebdd;touch-action:pan-y}
.review-itinerary .journey-stop.has-inline-visit>.inline-photo-gallery>.inline-photo-gallery-open{display:block;position:relative;width:100%;height:100%;min-height:0;margin:0;padding:0;overflow:hidden;border:0;border-radius:inherit;background:transparent;box-shadow:none;color:inherit;font:inherit;line-height:0;text-align:left;appearance:none;cursor:pointer}
.review-itinerary .journey-stop.has-inline-visit>.inline-photo-gallery>img,.review-itinerary .journey-stop.has-inline-visit>.inline-photo-gallery>.inline-photo-gallery-open>img{display:block;width:100%;height:100%;max-height:none;min-height:0;margin:0;padding:0;object-fit:cover;aspect-ratio:auto;border:0;border-radius:inherit;user-select:none;-webkit-user-drag:none}
.review-itinerary .journey-stop.has-inline-visit>.inline-photo-gallery>.inline-photo-gallery-nav{display:grid;place-items:center;position:absolute;top:50%;z-index:1;transform:translateY(-50%);width:44px;min-width:44px;height:44px;min-height:44px;margin:0;padding:0;border:1px solid #d8c9b7;border-radius:50%;background:#f5ebddf2;box-shadow:0 1px 5px #193f4926;color:#80531c;font:400 30px/1 Arial,Helvetica,sans-serif;text-align:center;text-shadow:none;appearance:none;cursor:pointer}
.review-itinerary .inline-photo-gallery>.inline-photo-gallery-prev{left:8px}
.review-itinerary .inline-photo-gallery>.inline-photo-gallery-next{right:8px}
.review-itinerary .journey-stop.has-inline-visit>.inline-photo-gallery>.inline-photo-gallery-nav:disabled{opacity:.4;cursor:default}
.review-itinerary .journey-stop.has-inline-visit>.inline-photo-gallery>.inline-photo-gallery-nav:not(:disabled):hover{background:#f5ebdd;border-color:#80531c}
.review-itinerary .inline-photo-gallery>.inline-photo-gallery-nav:focus-visible{outline:3px solid #216c50;outline-offset:2px}
.review-itinerary .journey-stop.has-inline-visit>.inline-photo-gallery>.inline-photo-gallery-counter{display:block;position:absolute;right:10px;bottom:10px;z-index:1;width:auto;max-width:calc(100% - 20px);margin:0;padding:3px 7px;border-radius:10px;background:#193f49e8;color:#fff;font:600 12px/1.4 Arial,Helvetica,sans-serif;font-variant-numeric:tabular-nums;white-space:nowrap;pointer-events:none}
@media(max-width:600px){.review-itinerary .journey-stop.has-inline-visit>.inline-photo-gallery{aspect-ratio:16 / 9}}
@supports(width:1cqw){.review-itinerary .journey-stop.has-inline-visit>.inline-photo-gallery{height:var(--inline-photo-height);aspect-ratio:auto}}
@media(forced-colors:active){.review-itinerary .journey-stop.has-inline-visit>.inline-photo-gallery{background:Canvas}.review-itinerary .journey-stop.has-inline-visit>.inline-photo-gallery>.inline-photo-gallery-nav{background:ButtonFace;color:ButtonText;border-color:ButtonText;box-shadow:none}.review-itinerary .journey-stop.has-inline-visit>.inline-photo-gallery>.inline-photo-gallery-counter{background:Canvas;color:CanvasText;border:1px solid CanvasText}.review-itinerary .inline-photo-gallery>.inline-photo-gallery-nav:focus-visible{outline-color:Highlight}}

/* A quiet photo-gallery entry replaces browsing controls in the itinerary. */
.review-itinerary .journey-stop.has-inline-visit>.inline-photo-gallery>.inline-photo-gallery-open>.inline-photo-gallery-label{position:absolute;right:10px;bottom:10px;display:inline-flex;align-items:center;max-width:calc(100% - 20px);margin:0;padding:5px 10px;border:0;border-radius:16px;background:#f5ebddee;color:#80531c;box-shadow:none;font:600 12px/1.4 Arial,Helvetica,sans-serif;letter-spacing:0;text-shadow:none;white-space:nowrap;pointer-events:none}
@media(forced-colors:active){.review-itinerary .journey-stop.has-inline-visit>.inline-photo-gallery>.inline-photo-gallery-open>.inline-photo-gallery-label{background:Canvas;color:CanvasText;border:1px solid CanvasText}}

/* Fixed speedboat programmes keep their real visits on the same route spine. */
.review-plan-frame .review-itinerary .connected-boat-heading{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 16px;margin:0 0 12px;padding:0;min-width:0}
.review-plan-frame .review-itinerary .connected-boat-title{flex:1 1 100%;margin:0;color:var(--montis-ink,#193f49);font:700 21px/1.35 Arial,Helvetica,sans-serif;letter-spacing:-.3px}
.review-plan-frame .review-itinerary .connected-boat-subtitle{flex:1 1 180px;min-width:0;margin:0;color:var(--montis-coffee,#76502c);font:600 14px/1.5 Arial,Helvetica,sans-serif}
.review-plan-frame .review-itinerary .connected-boat-change{flex:none;width:auto;min-height:36px;margin:0;padding:5px 0;border:0;border-radius:3px;background:transparent;box-shadow:none;color:var(--montis-action,#236b58);font:600 12px/1.5 Arial,Helvetica,sans-serif;text-align:left;white-space:normal;cursor:pointer}
.review-plan-frame .review-itinerary .connected-boat-change:hover{text-decoration:underline;text-underline-offset:3px}
.review-plan-frame .review-itinerary .connected-boat-change:focus-visible{outline:2px solid var(--montis-action,#236b58);outline-offset:3px}
.review-plan-frame .review-itinerary .connected-boat-intro{max-width:900px;margin:0 0 18px;color:var(--montis-muted,#5b6968);font:400 14px/1.65 Arial,Helvetica,sans-serif;overflow-wrap:anywhere}
.review-plan-frame .review-itinerary .connected-boat-endpoint{position:relative;display:flex;align-items:center;min-width:0;min-height:40px;margin:0;padding:4px 0;color:var(--montis-ink,#193f49);font:600 13px/1.5 Arial,Helvetica,sans-serif;overflow-wrap:anywhere}
.review-plan-frame .review-itinerary .connected-boat-endpoint::before{content:'';position:absolute;left:calc(-1 * var(--journey-rail) + 10px);top:calc(50% - 5px);width:10px;height:10px;border-radius:50%;background:var(--journey-olive,#6b7850);box-shadow:0 0 0 4px var(--montis-page,#f3f7f2);pointer-events:none}
@media(max-width:600px){.review-plan-frame .review-itinerary .connected-boat-title{font-size:20px}.review-plan-frame .review-itinerary .connected-boat-heading{gap:3px 12px}.review-plan-frame .review-itinerary .connected-boat-intro{margin-bottom:16px}}
@media(forced-colors:active){.review-plan-frame .review-itinerary .connected-boat-title,.review-plan-frame .review-itinerary .connected-boat-subtitle,.review-plan-frame .review-itinerary .connected-boat-intro,.review-plan-frame .review-itinerary .connected-boat-endpoint{color:CanvasText}.review-plan-frame .review-itinerary .connected-boat-change{color:LinkText}.review-plan-frame .review-itinerary .connected-boat-change:focus-visible{outline-color:Highlight}.review-plan-frame .review-itinerary .connected-boat-endpoint::before{background:CanvasText;box-shadow:0 0 0 4px Canvas}}

/* Places first, then the existing activity controls together on one page. */
.first-place-flow .first-place-activities-screen[hidden],.first-place-flow .first-place-actions[hidden]{display:none!important}
.first-place-flow.first-place-activities #map-panel{display:none!important}
.first-place-flow .first-place-activities-screen{max-width:900px;margin:0 auto}
.first-place-flow .first-place-activities-screen>h2{margin:0 0 18px;color:var(--montis-heading,#214c4e);font:700 24px/1.25 Arial,Helvetica,sans-serif}
.first-place-flow .first-place-activity-list{display:flex;flex-direction:column;gap:22px}
.first-place-flow .first-place-activity-card{min-width:0;overflow:hidden;border:1px solid #e2d4c2;border-radius:10px;background:var(--montis-surface,#fffdf9)}
.first-place-flow .first-place-activity-card>header{display:flex;align-items:center;gap:16px;padding:12px;background:#f5ebdd}
.first-place-flow .first-place-photo{flex:none;width:124px;height:84px;min-height:0;padding:0;overflow:hidden;border:0;border-radius:6px;background:#d9e5df;cursor:pointer}
.first-place-flow .first-place-photo>img{display:block;width:100%;height:100%;object-fit:cover}
.first-place-flow .first-place-activity-card h3{margin:0 0 6px;color:#214c4e;font:700 19px/1.3 Arial,Helvetica,sans-serif;overflow-wrap:anywhere}
.first-place-flow .first-place-remove{min-height:32px;padding:3px 0;border:0;background:transparent;color:#76552f;font:500 12px/1.4 Arial,Helvetica,sans-serif;text-decoration:underline;text-underline-offset:3px}
.first-place-flow .first-place-options{padding:10px 16px}
.first-place-flow .first-place-options .option-row{min-width:0;margin:0;padding:11px 0;border:0;border-bottom:1px solid #ece4d7;border-radius:0;background:transparent}
.first-place-flow .first-place-options .option-row:last-child{border-bottom:0}
.first-place-flow .first-place-options .option-row>.option-text{min-width:0;overflow-wrap:anywhere}
.first-place-flow .first-place-options .choice-options{display:flex;flex-wrap:wrap;gap:8px}
.first-place-flow .first-place-options .choice-options>button{flex:0 1 auto;width:auto;max-width:100%;white-space:normal}
.first-place-flow .first-place-options .free-time-single-row{justify-content:flex-start;gap:12px}
.first-place-flow .first-place-options .minute-controls{max-width:100%;gap:7px}
.first-place-flow .first-place-options .free-time-output{min-width:65px;text-align:center}
.first-place-flow .first-place-addon{margin-top:12px;padding-top:12px;border-top:1px solid #ece4d7}
.first-place-flow .first-place-addon>button{max-width:100%;white-space:normal;text-align:left}
.first-place-flow .first-place-pending{margin:0;padding:0 16px 12px;color:#76552f;font:400 12px/1.5 Arial,Helvetica,sans-serif}
.first-place-flow .first-place-actions{max-width:900px;margin:22px auto 8px}
.first-place-flow .first-place-actions>div{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:10px}
.first-place-flow .first-place-actions button{flex:0 0 auto;width:auto;min-height:38px;padding:8px 13px;border:1px solid #d9c9b5;border-radius:6px;background:#f5ebdd;color:#684722;font:600 13px/1.4 Arial,Helvetica,sans-serif;box-shadow:none}
.first-place-flow .first-place-actions button.primary{background:#216c50;border-color:#216c50;color:#fff}
.first-place-flow .first-place-actions button:disabled{opacity:.55;cursor:default}
.first-place-flow .first-place-hint{margin:0 0 10px;color:#76552f;font:400 13px/1.5 Arial,Helvetica,sans-serif;text-align:right}
.first-place-flow .first-place-actions button:focus-visible,.first-place-flow .first-place-activity-card button:focus-visible{outline:3px solid #b58a47;outline-offset:3px}
@media(max-width:540px){.first-place-flow .first-place-activity-card>header{gap:12px;padding:10px}.first-place-flow .first-place-photo{width:96px;height:76px}.first-place-flow .first-place-activity-card h3{font-size:17px}.first-place-flow .first-place-options{padding:8px 12px}.first-place-flow .first-place-activities-screen>h2{font-size:21px}.first-place-flow .first-place-options .free-time-single-row{gap:9px}.first-place-flow .first-place-options .free-time-controls{flex:0 0 auto}.first-place-flow .first-place-actions>div{gap:8px}}
@media(forced-colors:active){.first-place-flow .first-place-activity-card,.first-place-flow .first-place-activity-card>header,.first-place-flow .first-place-actions button{background:Canvas;color:CanvasText;border-color:CanvasText}.first-place-flow .first-place-activity-card h3,.first-place-flow .first-place-remove,.first-place-flow .first-place-pending,.first-place-flow .first-place-hint{color:CanvasText}}

/* Full photographs and explicit activity actions on the grouped page only. */
.first-place-activities .first-place-activity-card>header{display:block;padding:0}
.first-place-activities .first-place-photo{display:block;width:100%;height:auto;aspect-ratio:16/9;border-radius:0;overflow:hidden;background:#d9e5df}
.first-place-activities .first-place-photo>img{width:100%;height:100%;aspect-ratio:16/9;object-fit:cover}
.first-place-activities .first-place-activity-card>header>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:#f5ebdd}
.first-place-activities .first-place-activity-card h3{flex:1;min-width:0;margin:0}
.first-place-activities .first-place-remove{flex:none;min-height:44px}
.first-place-activities .first-activity-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;padding:11px 0;border-bottom:1px solid #ece4d7}
.first-place-activities .first-activity-row:last-child{border-bottom:0}
.first-place-activities .first-activity-copy{display:flex;flex-direction:column;flex:1;min-width:0;gap:3px;color:#214c4e;font:500 14px/1.45 Arial,Helvetica,sans-serif;overflow-wrap:anywhere}
.first-place-activities .first-activity-copy small{color:#76552f;font:400 12px/1.4 Arial,Helvetica,sans-serif}
.first-place-activities .first-activity-controls{display:flex;flex:none;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;max-width:100%}
.first-place-activities .first-activity-action{flex:none;width:auto;min-width:70px;min-height:44px;padding:8px 11px;border:1px solid #d9c9b5;border-radius:6px;background:#f5ebdd;color:#684722;font:600 12px/1.4 Arial,Helvetica,sans-serif;box-shadow:none}
.first-place-activities .first-activity-action[aria-pressed=true]{border-color:#93aa99;background:#edf2e9;color:#28533c}
.first-place-activities .first-activity-action:disabled{opacity:.55;cursor:default}
.first-place-activities .first-activity-free{flex-wrap:wrap}
.first-place-activities .first-activity-free .first-activity-copy{flex:1 1 100px}
.first-place-activities .first-activity-free .first-activity-controls{flex:0 1 auto;gap:8px}
.first-place-activities .first-activity-free .minute-controls{display:flex;align-items:center;gap:5px;width:auto;min-width:0}
.first-place-activities .first-activity-free .minute-controls>button{flex:none;width:36px;min-width:36px;min-height:44px;padding:5px;border:1px solid #d9c9b5;border-radius:6px;background:#fffdf9;color:#684722;font-size:19px}
.first-place-activities .first-activity-free .free-time-output{display:block;min-width:62px;font:600 12px/1.4 Arial,Helvetica,sans-serif;text-align:center;white-space:nowrap}
.first-place-activities .first-lake-duration{width:90px;max-width:100%;min-height:44px}
.first-place-activities .first-activity-position{padding:10px 0 15px;border-bottom:1px solid #ece4d7;font-size:13px}
.first-place-activities .first-activity-position .choice-options{margin-top:8px}
.first-place-activities .first-place-addon{margin-top:0;padding-top:11px}
.first-place-activities .first-activity-row select{width:110px;max-width:100%;min-height:44px}
@media(min-width:800px){.first-place-activities .first-place-activity-list{max-width:760px;margin:auto}}
@media(max-width:540px){.first-place-activities .first-place-activity-card>header>div{padding:10px 12px}.first-place-activities .first-activity-row{gap:9px}.first-place-activities .first-activity-copy{font-size:13px}.first-place-activities .first-activity-action{min-width:66px;padding:8px}.first-place-activities .first-activity-free .first-activity-controls{margin-left:auto}}
@media(forced-colors:active){.first-place-activities .first-activity-row,.first-place-activities .first-place-activity-card>header>div,.first-place-activities .first-activity-action,.first-place-activities .first-activity-action[aria-pressed=true]{background:Canvas;color:CanvasText;border-color:CanvasText}.first-place-activities .first-activity-copy,.first-place-activities .first-activity-copy small{color:CanvasText}}
