/* Requested booking-only readability and alignment corrections. */
#booking-vehicles {grid-template-columns:repeat(3,minmax(0,1fr))!important}
#booking-vehicles article>strong,#booking-vehicles article>span,#booking-vehicles .vehicle-card-facts small,#journey-info>.capacity-note {color:#fff!important}
#booking-vehicles article>strong{font-size:23px!important;line-height:1.2!important}
#booking-vehicles article>span{font-size:15px!important;line-height:1.5!important}
#booking-vehicles .vehicle-card-facts small{font-size:13px!important}
#booking-vehicles .vehicle-real-photo-jump{font-size:13px!important;min-height:44px!important;height:auto!important;border:2px solid #fff!important;color:#075f92!important;background:#fff!important;padding:10px!important}
#vehicle-photos>summary{font-size:18px!important;color:#075f92!important;background:#fff!important;padding:16px 22px!important;border:2px solid #fff!important;cursor:pointer}
#booking-vehicles .vehicle-photo-frame .vehicle-photo--coach{width:100%!important;height:100%!important;object-fit:contain!important;transform:none!important;position:static!important}
@media(max-width:1100px){#booking-vehicles{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:760px){#booking-vehicles{grid-template-columns:1fr!important}}

#booking-vehicles #coachSeatMap img{width:100%!important;height:100%!important;object-fit:contain!important;transform:none!important;position:static!important}
/* Scope every layout correction to the booking form, not shared page sections. */
#quoteForm .booking-pair{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px 24px!important;margin:0!important}
#quoteForm .booking-route-pair{display:grid!important;grid-template-columns:minmax(0,1fr) 190px minmax(0,1fr)!important;gap:18px!important;align-items:start!important}
#quoteForm .booking-route-pair>.location-field{grid-column:auto!important;margin:0!important;min-width:0!important}
#quoteForm .booking-route-pair #swapRouteButton{grid-column:auto!important;align-self:start!important;margin:28px 0 0!important;min-height:44px!important;width:100%!important;padding:8px!important;font-size:12px!important}
#quoteForm .booking-pair>label,#quoteForm .booking-route-pair>label{margin:0!important;min-width:0!important}
#quoteForm .booking-pair input:not([type=hidden]),#quoteForm .booking-pair select,#quoteForm .booking-route-pair input{min-height:44px!important;box-sizing:border-box!important}
#quoteForm .booking-help,#quoteForm .datetime-example,#quoteForm .datetime-example b,#quoteForm .vehicle-form-hint{font-size:11px!important;line-height:1.45!important;letter-spacing:0!important;font-weight:500!important;text-transform:none!important}
#quoteForm .booking-help,#quoteForm .datetime-example{display:block;margin:5px 0 0!important}
#quoteForm .booking-route-pair .datetime-example{min-height:32px}
#quoteForm #outboundTripStep,#quoteForm #returnDecisionStep,#quoteForm #returnDetailsStep{border:0!important;box-shadow:none!important;background:transparent!important;padding:0!important;margin:0 0 22px!important}
#quoteForm .transfer-fields,#quoteForm #returnRouteFields{padding:0!important;border:0!important;background:transparent!important;gap:18px!important}
#quoteForm .flight-information{border:0!important;box-shadow:none!important;padding:0!important;background:transparent!important;margin:8px 0 0!important;min-width:0!important}
#quoteForm .flight-information>legend{padding:0!important;margin:0 0 8px!important}
#quoteForm .flight-information>p{font-size:11px!important;line-height:1.45!important;margin:0 0 10px!important}
#quoteForm .flight-information>.form-grid{gap:12px 24px!important;margin:0!important;align-items:start!important}
#quoteForm .flight-arrival-field{display:contents!important}
#quoteForm .flight-arrival-field[hidden]{display:none!important}
#quoteForm #outboundPartyFields>*{order:initial!important}
#quoteForm #outboundPartyFields{gap:18px 24px!important}
#quoteForm .booking-step-title{margin:12px 0 0!important;padding:0 0 10px!important}
#quoteForm .booking-step-title p{font-size:12px!important}
#quoteForm .children-section{margin-top:14px}
#quoteForm .children-section>label{max-width:calc(50% - 12px)}
#quoteForm .child-age-fields{display:grid;gap:14px;margin-top:14px}
#quoteForm #outboundLuggage h4{margin:4px 0 12px}
#quoteForm .luggage-capacity-help{margin:10px 0!important}
#quoteForm #returnDetailsStep .return-choice-group{padding:0!important;border:0!important;box-shadow:none!important;background:transparent!important}
#quoteForm #returnDetailsStep .return-choice-group legend{padding:0;margin:0 0 12px}
#quoteForm #returnDetailsStep .return-choice-sections{margin:18px 0;gap:18px}
#quoteForm #returnDetailsStep .return-inherited-summary{background:transparent!important;border:0!important;padding:0!important;margin-top:10px!important;font-size:12px!important}
#quoteForm .return-choice-card{padding:12px!important}
#quoteForm .return-choice-card strong{font-size:13px!important}
#quoteForm #additionalNotes{min-height:76px!important;height:76px;resize:vertical}
#quoteForm .stopover-field-link{font-size:13px!important;font-weight:800!important;text-decoration:underline!important}
#quoteForm .submit{margin-top:16px!important}
#quoteForm #whatsappQuote{box-shadow:none!important;font-size:14px!important}
#quoteForm #transferReview{margin-bottom:18px}
#quoteForm #transferReviewSummary{font-size:12px!important}
@media(max-width:760px){
 #quoteForm .booking-pair{grid-template-columns:minmax(0,1fr)!important;gap:14px!important}
 #quoteForm .booking-route-pair{grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
 #quoteForm .booking-route-pair #swapRouteButton{margin:0!important;justify-self:center;max-width:240px}
 #quoteForm .children-section>label{max-width:none}
 #quoteForm .booking-route-pair .datetime-example{min-height:0}
 #quoteForm .flight-information>.form-grid{grid-template-columns:minmax(0,1fr)!important}
}
/* Keep descriptions readable on the existing blue vehicle-section background. */
#booking-vehicles article{background:transparent!important;grid-template-rows:240px 56px 44px 90px 48px 180px!important;min-height:658px!important}
#booking-vehicles .vehicle-photo-frame{height:240px!important;width:100%!important;background:transparent!important}
#booking-vehicles .vehicle-photo-frame img.vehicle-photo{position:static!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:contain!important;transform:none!important}
#booking-vehicles .seat-map-frame{height:180px!important;width:100%!important}
#booking-vehicles .seat-map-frame img.seat-map{position:static!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:contain!important;transform:none!important}
#booking-vehicles .vehicle-real-photo-jump{border-color:#075f92!important}
#quoteForm .booking-pair .datetime-control input{margin-top:7px!important}
#quoteForm .booking-pair .calendar-toggle{height:44px!important;min-height:44px!important}
#booking-vehicles article{grid-template-rows:240px 60px 48px 100px 70px 180px!important}
#booking-vehicles article>strong{grid-row:3!important;height:auto!important;min-height:0!important}
#booking-vehicles article>span{grid-row:4!important;height:auto!important;min-height:0!important;margin:0!important}
#booking-vehicles article>.vehicle-card-facts{grid-row:5!important;height:auto!important;min-height:0!important;margin:0!important;display:flex!important;flex-wrap:wrap;align-content:start;gap:6px 12px!important}
#booking-vehicles .vehicle-card-facts small{white-space:nowrap!important}
#booking-vehicles article>.seat-map-frame{grid-row:6!important;height:180px!important;min-height:0!important;margin:0!important}
#quoteForm .booking-pair input:not([type=hidden]),#quoteForm .booking-pair select,#quoteForm .booking-route-pair input{height:44px!important}
#quoteForm .booking-pair[hidden],#quoteForm .booking-route-pair[hidden]{display:none!important}

/* Three-vehicle display and selection; all other page sections stay unchanged. */
#booking-vehicles article{grid-template-rows:240px 56px 40px 68px auto!important;min-height:0!important;height:auto!important}
#quoteForm .vehicle-choice-field{position:relative;min-width:0;border:0;padding:0;margin:0}
#quoteForm .vehicle-choice-field legend{padding:0;margin-bottom:10px}
#quoteForm .vehicle-model{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;opacity:0;pointer-events:none}
#quoteForm .vehicle-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
#quoteForm .vehicle-choice{min-width:0}
#quoteForm .vehicle-choice-card{position:relative;display:flex!important;align-items:flex-start;gap:8px;padding:14px!important;border:2px solid #ccdce5;border-radius:12px;cursor:pointer;height:auto!important;min-height:104px;box-sizing:border-box;margin:0!important;background:#fff}
#quoteForm .vehicle-choice-card:has(input:checked){border-color:#075f92;background:#eef7fc}
#quoteForm .vehicle-choice-card:focus-within{outline:2px solid #075f92;outline-offset:2px}
#quoteForm .vehicle-choice-card input{position:absolute;width:1px;height:1px;opacity:0}
#quoteForm .vehicle-choice-card strong{display:block;font-size:14px;padding-right:16px}
#quoteForm .vehicle-choice-card small{display:block;font-size:12px;margin-top:5px}
#quoteForm .vehicle-check{position:absolute;right:8px;top:12px;color:#075f92;visibility:hidden}
#quoteForm input:checked~.vehicle-check{visibility:visible}
#quoteForm .vehicle-choice>a{display:inline-block;font-size:12px;text-decoration:underline;margin-top:8px;color:#075f92}
#vehicle-details{width:min(840px,calc(100vw - 32px));max-height:90vh;padding:20px;border:0;border-radius:16px;color:#12384d;background:#fff;margin:auto;box-sizing:border-box}
#vehicle-details::backdrop{background:rgba(0,0,0,.65)}
#vehicle-details header,#vehicle-details footer{display:flex;align-items:center;justify-content:space-between;gap:12px}
#vehicle-details h3{margin:0;font-size:20px}
#vehicle-details img{display:block;width:100%;height:auto;max-height:58vh;object-fit:contain;margin:12px 0}
#vehicle-details button{padding:8px 14px;border:1px solid #075f92;border-radius:8px;background:#fff;color:#075f92;cursor:pointer;font:inherit}
#vehicle-details button:disabled{opacity:.4;cursor:default}
#vehicle-details footer span{font-size:13px;text-align:center}
@media(max-width:760px){#quoteForm .vehicle-choice-grid{grid-template-columns:1fr}#booking-vehicles article{grid-template-rows:240px 56px auto auto auto!important}#vehicle-details{padding:14px}}

#vehicle-details header,#vehicle-details footer{position:static;padding:0!important;margin:0;min-height:0;background:transparent;box-shadow:none;color:inherit}

/* Unified vehicle panel and compact, equal-height booking previews. */
#booking-vehicles{background:#fff!important;gap:0!important;border-radius:12px;overflow:hidden}
#booking-vehicles article{padding:20px!important;grid-template-rows:240px 48px 40px 68px auto!important}
#booking-vehicles article>strong,#booking-vehicles article>span,#booking-vehicles .vehicle-card-facts small{color:#12384d!important}
#booking-vehicles .vehicle-real-photo-jump{width:100%!important;box-sizing:border-box;border-radius:8px!important;margin:0!important;min-height:40px!important;padding:8px!important}
#quoteForm .vehicle-choice-card{min-height:0;height:100%!important;padding:12px!important}
#quoteForm .vehicle-choice-content{display:flex;flex-direction:column;width:100%;gap:8px}
#quoteForm .vehicle-choice-photo{width:100%;height:82px;object-fit:contain;cursor:zoom-in}
#quoteForm .vehicle-choice-layout{width:100%;height:54px;object-fit:contain;cursor:zoom-in}
#quoteForm .vehicle-check{top:10px;right:10px}
#quoteForm .capacity-decision{padding:12px 14px;font-size:13px}
#quoteForm .capacity-decision p{margin:6px 0}
#quoteForm .capacity-fits{background:transparent;border:0;padding:0;box-shadow:none}
@media(max-width:760px){#booking-vehicles article{grid-template-rows:240px 48px auto auto auto!important}}

#quoteForm .vehicle-choice-card:has(input:checked) .vehicle-check{visibility:visible}

#quoteForm .vehicle-choice-photo{height:64px}
#quoteForm .vehicle-choice-layout{height:38px}
#quoteForm .vehicle-choice-content{gap:6px}
@media(max-width:760px){#quoteForm .vehicle-choice-content{display:grid;grid-template-columns:90px minmax(0,1fr);align-items:center;gap:6px 12px}#quoteForm .vehicle-choice-content>span:not(.vehicle-check){grid-column:2;grid-row:1 / 3}#quoteForm .vehicle-choice-layout{grid-column:1}#quoteForm .vehicle-choice-photo{grid-column:1}}

/* Shared image → name → capacity hierarchy, with manual arrows only. */
#booking-vehicles article{grid-template-rows:220px 40px 54px auto!important;gap:8px!important}
#booking-vehicles article>strong{grid-row:2!important;padding:0!important;font-size:22px!important;line-height:1.2!important;color:#12384d!important}
#booking-vehicles article>.vehicle-card-facts{grid-row:3!important;display:block!important;padding-top:0!important;border:0!important}
#booking-vehicles .vehicle-card-facts small{display:block!important;margin:0 0 4px!important}
#booking-vehicles article>span{grid-row:4!important;font-size:14px!important;line-height:1.5!important}
.vehicle-pages{position:relative;width:100%;height:220px;min-width:0;box-sizing:border-box;padding:0 24px 20px}
.vehicle-pages img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;position:static!important;transform:none!important}
.vehicle-pages button{position:absolute;top:calc(50% - 22px);width:28px!important;height:36px!important;min-height:0!important;padding:0!important;border:0!important;border-radius:6px;background:#fff;color:#075f92;font-size:20px;cursor:pointer;box-shadow:none!important}
.vehicle-page-prev{left:0}.vehicle-page-next{right:0}
.vehicle-pages button:disabled{opacity:.3;cursor:default}
.vehicle-page-status{position:absolute;bottom:0;left:0;right:0;text-align:center;font-size:11px!important;color:#12384d;margin:0!important}
#quoteForm .vehicle-choice-card{display:grid!important;grid-template-rows:150px 24px auto;gap:8px!important;align-items:start!important;padding:12px!important;color:#12384d}
#quoteForm .vehicle-choice-card .vehicle-pages{height:150px}
#quoteForm .vehicle-choice-card>strong{font-size:15px;line-height:24px;padding:0;margin:0}
#quoteForm .vehicle-choice-capacity small{font-size:12px;line-height:18px;margin:0;font-weight:500;letter-spacing:0;text-transform:none}
#quoteForm .vehicle-disclaimer{font-size:14px!important;line-height:1.5!important;margin-top:12px!important;font-weight:400!important}
@media(max-width:760px){#booking-vehicles article{grid-template-rows:220px 40px 54px auto!important}}
/* Values measured from untouched baseline 8ac0cc9; only image paging changes its structure. */
#booking-vehicles{background:transparent!important;gap:28px!important;border-radius:0!important;overflow:visible!important}
#booking-vehicles article{padding:28px 26px!important;background:#fff!important;border:1px solid rgba(7,143,207,.17)!important;border-radius:0!important;grid-template-rows:300px 48px 54px auto!important}
#booking-vehicles .vehicle-pages{height:300px}
#booking-vehicles article>strong{font-size:20px!important;color:#103f58!important;font-weight:700!important}
#booking-vehicles article>span{font-size:13px!important;color:#557281!important;font-weight:400!important}
#booking-vehicles .vehicle-card-facts small{font-size:13px!important;color:#0e3b53!important;font-weight:900!important}
#vehicle-photos>summary{font-size:13px!important;color:#fff!important;background:#078fcf!important;padding:0 22px!important;border:0!important;border-radius:999px!important;height:48px!important}
#quoteForm .vehicle-choice-card>strong{color:#103f58;font-family:inherit;font-weight:700}
#quoteForm .vehicle-choice-capacity small{color:#0e3b53}
@media(max-width:760px){#booking-vehicles article{grid-template-rows:300px 48px 54px auto!important}}
#booking-vehicles .vehicle-pages{padding-left:0;padding-right:0}
#booking-vehicles .vehicle-pages img{background:transparent!important;border-radius:0!important}

/* Requested refinements only: arrows occupy their own tracks outside the image. */
#booking-vehicles .vehicle-pages,#quoteForm .vehicle-pages{display:grid;grid-template-columns:34px minmax(0,1fr) 34px;grid-template-rows:minmax(0,1fr) 20px;gap:0 4px;padding:0!important;align-items:center}
.vehicle-pages img{grid-column:2;grid-row:1;min-width:0;min-height:0}
.vehicle-pages .vehicle-page-prev,.vehicle-pages .vehicle-page-next{position:static;grid-row:1;width:34px!important;height:40px!important;min-height:40px!important;font-size:24px;font-weight:700;border:1px solid #cce4ef!important;border-radius:6px;background:#fff;color:#075f92}
.vehicle-pages .vehicle-page-prev{grid-column:1}.vehicle-pages .vehicle-page-next{grid-column:3}
.vehicle-pages button:not(:disabled):hover{background:#eef7fc;border-color:#075f92!important}
.vehicle-pages button:focus-visible{outline:2px solid #075f92;outline-offset:2px}
.vehicle-pages .vehicle-page-status{position:static;grid-column:1 / -1;grid-row:2}
#quoteForm .vehicle-choice-card{grid-template-rows:180px 24px auto}
#quoteForm .vehicle-choice-card .vehicle-pages{height:180px}
#booking-vehicles article>strong{justify-content:center!important;text-align:center!important}
#booking-vehicles .vehicle-card-facts,#quoteForm .vehicle-choice-card>strong,#quoteForm .vehicle-choice-capacity{text-align:center}
#quoteForm .booking-route-pair{grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr)!important}
#quoteForm .booking-route-pair #swapRouteButton{font-size:25px!important;line-height:1!important;padding:0!important;width:44px!important;height:44px!important}
@media(max-width:760px){#quoteForm .booking-route-pair{grid-template-columns:minmax(0,1fr)!important}}

/* Added transfer sections reuse the existing form grid and button styles. */
#quoteForm #assistanceDetails,#quoteForm [data-field="assistanceDetails"]{min-height:58px;height:58px;resize:vertical}
#multiTransfers .additional-transfer{margin:18px 0;padding:0;border:0}
#multiTransfers .segment-details{margin-top:14px}
#multiTransfers .segment-details>summary{cursor:pointer;margin-bottom:12px}
#multiTransfers .segment-price,#multiPriceSummary{font-size:14px;line-height:1.5;margin:12px 0}
#multiTransfers .segment-capacity{font-size:13px;margin-top:10px}
#multiTransfers .booking-step-title [data-remove]{font:inherit;font-size:13px;padding:6px 10px;margin-top:6px}

#quoteForm #multiTransfers{border:0;background:transparent;box-shadow:none;padding:0;margin:0 0 22px}

/* Shared gallery action only: distinct from booking and WhatsApp CTAs. */
#vehicle-photos>summary{display:flex!important;align-items:center;justify-content:center;gap:10px;width:fit-content;max-width:100%;box-sizing:border-box;margin:0 auto!important;padding:11px 22px!important;min-height:44px!important;height:auto!important;background:rgba(255,255,255,.10)!important;color:#fff!important;border:1px solid rgba(255,255,255,.85)!important;border-radius:6px!important;box-shadow:none!important;font-size:16px!important;font-weight:600!important;line-height:1.4!important;text-decoration:none!important;cursor:pointer}
#vehicle-photos>summary::-webkit-details-marker{display:none}
#vehicle-photos>summary::marker{content:""}
#vehicle-photos>summary:hover{background:rgba(255,255,255,.20)!important;text-decoration:none!important}
#vehicle-photos>summary:focus-visible{outline:3px solid #fff;outline-offset:4px}

/* Vehicle information only: larger visuals, unchanged stable typography and colors. */
#booking-vehicles article{padding:12px 10px 24px!important;grid-template-rows:260px 36px 46px auto!important}
#booking-vehicles .vehicle-pages{height:260px;grid-template-columns:28px minmax(0,1fr) 28px;column-gap:4px}
#booking-vehicles .vehicle-pages button{width:28px!important}
#booking-vehicles .vehicle-visual{grid-column:2;grid-row:1;width:100%;height:100%;min-width:0;overflow:hidden;display:flex;align-items:center;justify-content:center}
#booking-vehicles .vehicle-visual img{max-width:none!important;transform:scale(1.06)!important}
#booking-vehicles .vehicle-pages[data-page="1"] .vehicle-visual img{transform:scale(1.30)!important}
#booking-vehicles article>span{text-align:center}
/* Explicit primary recommendation and secondary manual-review choice. */
#capacityDecision [data-capacity-upgrade]{background:#078fcf!important;color:#fff!important;border:1px solid #078fcf!important}
#capacityDecision [data-capacity-keep]{background:#fff!important;color:#075f92!important;border:1px solid #078fcf!important}
#capacityDecision .capacity-actions{display:flex;flex-wrap:wrap;gap:10px}
#capacityDecision .capacity-actions button{white-space:normal;text-align:center;padding:10px 14px}

#booking-vehicles .vehicle-pages[data-page="1"][data-vehicle-pages="minibus9"] .vehicle-visual img,
#booking-vehicles .vehicle-pages[data-page="1"][data-vehicle-pages="microbus18"] .vehicle-visual img{transform:scale(1.18)!important}

/* Add-transfer action only: existing brand button, compact and left-aligned. */
#multiTransfers .add-transfer-action{display:inline-flex!important;width:auto;max-width:100%;margin:0;justify-content:center;font-size:15px!important;font-weight:600!important;min-height:44px!important;padding:10px 18px!important;border-radius:6px;white-space:normal;text-align:center}
#multiTransfers>#addTransferHelp{margin:8px 0 0!important}

/* Optional stopovers only: image-led, native checkbox cards. */
#optional-stopovers .stopover-card-grid,.booking-stopovers-selector .tour-addon-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px!important}
#optional-stopovers .stopover-experience-card{margin:0;min-width:0;padding:0;background:transparent;border:0}
#optional-stopovers .stopover-option-card,.booking-stopovers-selector .stopover-option-card{position:relative;display:flex!important;flex-direction:column;align-items:stretch!important;gap:0!important;height:100%;margin:0!important;padding:0!important;overflow:hidden;background:#fff!important;border:2px solid #d9e4e8!important;border-radius:6px;cursor:pointer;text-transform:none!important;letter-spacing:0!important}
#optional-stopovers .stopover-option-card:has(input:checked),.booking-stopovers-selector .stopover-option-card:has(input:checked){border-color:#078fcf!important;box-shadow:0 0 0 1px #078fcf}
#optional-stopovers .stopover-option-card:focus-within,.booking-stopovers-selector .stopover-option-card:focus-within{outline:2px solid #075f92;outline-offset:3px}
#optional-stopovers .stopover-card-image,.booking-stopovers-selector .stopover-card-image{display:block!important;width:100%!important;height:clamp(200px,18vw,240px)!important;object-fit:cover!important;margin:0!important;border-radius:0!important}
#optional-stopovers .stopover-option-card>input,.booking-stopovers-selector .stopover-option-card>input{position:absolute!important;z-index:1;top:12px;right:12px;width:24px!important;height:24px!important;min-height:24px!important;margin:0!important;accent-color:#078fcf;cursor:pointer}
#optional-stopovers .stopover-card-copy,.booking-stopovers-selector .stopover-card-copy{display:flex!important;flex-direction:column;align-items:flex-start;gap:8px;padding:16px;color:#103f58}
#optional-stopovers .stopover-card-copy>b,.booking-stopovers-selector .stopover-card-copy>b{font-size:19px!important;line-height:1.3;font-weight:700;color:#103f58}
#optional-stopovers .stopover-card-description,.booking-stopovers-selector .stopover-card-description{font-size:13px!important;line-height:1.5;color:#557281}
#optional-stopovers .stopover-card-copy>small,.booking-stopovers-selector .stopover-card-copy>small{font-size:12px!important;line-height:1.5;color:#557281;margin:0}
#optional-stopovers .stopover-card-copy>a,.booking-stopovers-selector .stopover-card-copy>a{position:static!important;font-size:13px!important;color:#075f92;text-decoration:underline;padding:0;background:transparent}
@media(max-width:600px){#optional-stopovers .stopover-card-grid,.booking-stopovers-selector .tour-addon-grid{grid-template-columns:1fr!important}#optional-stopovers .stopover-card-image,.booking-stopovers-selector .stopover-card-image{height:auto!important;aspect-ratio:16/9}}

/* Booking selections stay compact; browsing cards retain their full photographs. */
.booking-stopovers-selector .stopover-card-copy{padding:16px 48px 16px 16px}
.booking-stopovers-selector .stopover-card-copy>b{font-size:16px!important}
.booking-stopovers-selector .stopover-card-copy>small{font-weight:500}
/* Focal adjustment for this photograph only. */
#stopover-matsumoto-castle .stopover-card-image{object-position:center 30%}

.booking-stopovers-selector[hidden],.booking-stopovers-selector .stopover-option-card[hidden]{display:none!important}

/* Return-option alignment only; all checkbox state handling remains unchanged. */
#multiTransfers .additional-transfer>.policy-check{width:100%;box-sizing:border-box;align-items:center;justify-content:flex-start;padding:0!important;border:0;background:transparent;gap:10px}
#multiTransfers .additional-transfer>.policy-check input{flex-shrink:0}
/* Group existing routes content in its original section and shared site wrap. */
#routes .routes-introduction{display:block!important;margin:0 0 28px!important}
#routes .routes-introduction h2{margin:12px 0 16px!important;line-height:1.12!important}
#routes .routes-introduction>p{max-width:900px!important;margin:0!important}
#routes .routes-content-block{margin:0;padding:24px 0 0}
#routes .routes-content-block+.routes-content-block{margin-top:24px;border-top:1px solid var(--line)}
#routes .routes-content-block>h3{font-family:var(--display);font-size:26px;line-height:1.2;margin:0 0 12px;color:inherit}
#routes .routes-content-block>p:not(.pricing-disclaimer){max-width:900px;margin:0 0 12px!important;line-height:1.6}
#routes .routes-comparison>.price-table{margin-top:20px}
@media(min-width:1024px){#routes .routes-introduction h2{white-space:nowrap;font-size:clamp(32px,3.7vw,52px)!important}}
@media(max-width:760px){#routes .routes-introduction{margin-bottom:18px!important}#routes .routes-content-block{padding-top:18px}#routes .routes-content-block+.routes-content-block{margin-top:18px}#routes .routes-content-block>h3{font-size:22px}}

/* Strong selected state without changing card dimensions or selection behavior. */
#quoteForm .vehicle-choice-card:hover{border-color:#5386a4}
#quoteForm .vehicle-choice-card:has(input:checked){border-color:#075f92;box-shadow:inset 0 0 0 1px #075f92;background:#e8f4fb}
#quoteForm .vehicle-choice-card .vehicle-check{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;background:#075f92;color:#fff;font-size:18px;font-weight:700;line-height:1;z-index:2}

/* No trailing comparison-section gap after the shorter route introduction. */
#routes.section{padding-bottom:48px!important}

/* One shared selection marker, matching the 24px stopover checkbox. */
:is(#optional-stopovers,.booking-stopovers-selector) .stopover-option-card>input,
#quoteForm .vehicle-choice-card .vehicle-check,
#quoteForm .return-choice-card>input{
 appearance:none!important;position:absolute!important;top:12px!important;right:12px!important;
 width:24px!important;height:24px!important;min-height:24px!important;padding:0!important;margin:0!important;
 border:1px solid #8999a3!important;border-radius:3px!important;background:#fff!important;
 box-sizing:border-box!important;opacity:1!important;z-index:2;font-size:0!important;
}
:is(#optional-stopovers,.booking-stopovers-selector) .stopover-option-card>input:checked,
#quoteForm .vehicle-choice-card:has(input:checked) .vehicle-check,
#quoteForm .return-choice-card>input:checked{
 border-color:#078fcf!important;background-color:#078fcf!important;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m5 12 4 4 10-10' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
 background-size:20px 20px!important;background-position:center!important;background-repeat:no-repeat!important;
}
#quoteForm .return-choice-card{position:relative;padding-right:48px!important}
:is(#optional-stopovers,.booking-stopovers-selector) .stopover-option-card>input:focus-visible{outline:2px solid #075f92;outline-offset:3px}
#multiTransfers [data-segment-keep]{background:#fff!important;color:#075f92!important;border:1px solid #078fcf!important}
#multiTransfers .segment-capacity[hidden]{display:none!important}
#hakuba-route-map .map-route-facts{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#hakuba-route-map .map-route-facts>a{display:flex!important;flex-direction:column;min-width:0}
@media(max-width:760px){#hakuba-route-map .map-route-facts{grid-template-columns:1fr!important}}
