.ws-tcm,.ws-tcm-page .ws-tcm-identity,.ws-tcm-page .ws-tour-header__facts,.ws-tcm-page .ws-fast-booking{font-family:"WanderSiam DM Sans","DM Sans",Arial,sans-serif!important;color:#333}
.ws-tcm{--ws-blue:#075b98;--ws-line:#dce3e7;font-size:16px;line-height:1.75;overflow-wrap:anywhere}
.ws-tcm *{box-sizing:border-box}.ws-tcm [hidden]{display:none!important}
.ws-tcm p,.ws-tcm li,.ws-tcm .triply-single-content p{font-size:16px!important;line-height:1.75!important;font-weight:400;color:#333!important}
.ws-tcm p{margin:0 0 20px}.ws-tcm h2{font-family:inherit!important;font-size:42px!important;line-height:1.12!important;letter-spacing:-.03em;font-weight:600!important;color:#2b2b2b!important;margin:0 0 24px}
.ws-tcm h3{font-family:inherit!important;font-size:18px!important;line-height:1.35!important;font-weight:700!important;color:#2b2b2b!important;margin:0 0 10px}
.ws-tcm a{color:var(--ws-blue)}.ws-tcm :focus-visible{outline:3px solid #0875c1;outline-offset:4px}
.ws-tcm .ws-tcm-copy :is(p,li,span){font-family:inherit!important;color:#333!important}.ws-tcm .ws-tcm-copy :is(p,li) span{font-size:inherit!important;line-height:inherit!important}.ws-tcm .ws-tcm-copy a,.ws-tcm .ws-tcm-copy a span{color:var(--ws-blue)!important}
.ws-tcm-tabs{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:6px;padding:6px;margin-bottom:35px;border:1px solid #a9c5d7;border-radius:12px;background:#edf4f8;box-shadow:0 3px 0 #dcebf4}
.ws-tcm-tabs a{display:flex;align-items:center;justify-content:center;text-align:center;min-height:50px;padding:12px 10px;border-radius:7px;font-size:16px;font-weight:700;line-height:1.4;text-decoration:none}
.ws-tcm-tabs a[aria-selected=true]{background:var(--ws-blue);color:#fff}.ws-tcm-tabs a:hover{background:#dcebf4;color:var(--ws-blue)}
.ws-tcm-panel{padding:0 0 35px;scroll-margin-top:30px}.ws-tcm-mobile-toggle{display:none}
.ws-tcm .ws-tcm-label{font-size:12px!important;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ws-blue)!important;margin-bottom:10px}
.ws-tcm-guide{display:flex;gap:24px;align-items:center;margin:30px 0;background:#f7f5f0;border:1px solid #e4ded4;padding:22px}.ws-tcm-guide img{width:150px;height:150px;object-fit:cover}.ws-tcm-guide blockquote{border:0;margin:0;padding:0;font-size:18px;font-weight:500}.ws-tcm-guide p{font-size:14px!important;margin:12px 0 0}
.ws-tcm-route{border-top:1px solid var(--ws-line);margin-top:38px;padding-top:38px}.ws-tcm-route ol{list-style:none;margin:0;padding:0}
.ws-tcm-stop{display:grid;grid-template-columns:46px minmax(0,1fr) minmax(170px,30%);gap:20px;align-items:center;padding:28px 0}
.ws-tcm-stop+.ws-tcm-stop{border-top:1px solid #a8c6d6}.ws-tcm-stop-copy{min-width:0}.ws-tcm-stop-copy p:last-child{margin:0}
.ws-tcm-number{width:46px;height:46px;display:grid;place-items:center;border:1px solid #8bbbd4;border-radius:50%;font-size:12px;font-weight:700;color:var(--ws-blue);background:#f7f5f0}
.ws-tcm-route-photo{width:100%;height:155px;object-fit:cover;border-radius:3px}
.ws-tcm-stop:nth-child(even){grid-template-columns:minmax(170px,30%) 46px minmax(0,1fr)}.ws-tcm-stop:nth-child(even) .ws-tcm-route-photo{grid-column:1;grid-row:1}.ws-tcm-stop:nth-child(even) .ws-tcm-number{grid-column:2;grid-row:1}.ws-tcm-stop:nth-child(even) .ws-tcm-stop-copy{grid-column:3;grid-row:1}
.ws-tcm-stop.ws-tcm-no-photo{grid-template-columns:46px minmax(0,1fr)}.ws-tcm-stop.ws-tcm-no-photo .ws-tcm-number{grid-column:1}.ws-tcm-stop.ws-tcm-no-photo .ws-tcm-stop-copy{grid-column:2}
.ws-tcm-meeting-photos,.ws-tcm-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.ws-tcm-meeting-photos:empty,.ws-tcm-notes:empty{display:none}.ws-tcm-meeting-photos img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:10px}.ws-tcm-meeting-photos span{font-size:14px}.ws-tcm-map{display:inline-block;padding:10px 16px;border:1px solid #9fc4d8;border-radius:8px;margin-top:24px}
.ws-tcm-meeting-points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.ws-tcm-meeting-points[data-count="1"]{grid-template-columns:minmax(0,1fr);max-width:680px}
.ws-tcm-meeting-point{min-width:0;padding:20px;border:1px solid #d7dfe4;border-radius:14px;background:#fff;overflow-wrap:anywhere}
.ws-tcm .ws-tcm-meeting-point h3{margin:0 0 12px!important}
.ws-tcm-meeting-photo{display:block;margin-top:20px}
.ws-tcm-meeting-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:10px}
.ws-tcm-meeting-point .ws-tcm-map{margin:12px 0 16px;min-height:44px;font:inherit}
.ws-tcm-map-embed{display:block;width:100%;height:260px;border:0;border-radius:10px;background:#f4f6f7}
/* Equalise only the two-point desktop pair. Text stays complete; no height measurement or booking selectors. */
@media(min-width:821px){
 .ws-tcm-meeting-points[data-count="2"]{align-items:stretch}
 .ws-tcm-meeting-points[data-count="2"]>.ws-tcm-meeting-point{display:flex;flex-direction:column}
 .ws-tcm-meeting-points[data-count="2"]>.ws-tcm-meeting-point>*{flex-shrink:0}
 .ws-tcm-meeting-points[data-count="2"] .ws-tcm-meeting-copy{flex-grow:1}
 .ws-tcm-meeting-points[data-count="2"] .ws-tcm-meeting-copy>:last-child{margin-bottom:0!important}
 .ws-tcm-meeting-points[data-count="2"] .ws-tcm-map{align-self:flex-start;max-width:100%}
}
@media(max-width:820px){.ws-tcm-meeting-points{grid-template-columns:minmax(0,1fr)}.ws-tcm-meeting-point{padding:16px}.ws-tcm-map-embed{height:240px}}
.ws-tcm-notes article{border:1px solid var(--ws-line);border-radius:10px;background:#fafafa;padding:20px}.ws-tcm-notes p:last-child{margin-bottom:0}.ws-tcm [data-tcm-faq-slot]{margin-top:24px}
.ws-tcm-preview-note{padding:12px;background:#fff8dd;border:1px solid #d5bf68;font-size:14px!important}
.ws-tcm-page #page{overflow:clip visible!important}
/* Override the live theme's stretched-section !important viewport margins only
   inside an enabled TCM layout. Other Elementor sections remain untouched. */
body.ws-tcm-page .elementor-location-single .elementor-section.ws-tcm-layout{width:100%!important;max-width:1240px!important;margin:32px auto 0!important;padding:0 24px!important;left:auto!important;overflow:visible!important}
body.ws-tcm-page .elementor-location-single .elementor-section.ws-tcm-identity{background:none!important;padding:0!important;margin:0 0 24px!important;width:100%!important;left:auto!important}
.ws-tcm-page .ws-tcm-identity>.elementor-container{max-width:none!important;margin:0!important}
.ws-tcm-page .ws-tcm-identity .elementor-widget-wrap{padding:0!important;gap:12px!important}
.ws-tcm-page .ws-tcm-identity .elementor-widget{margin-bottom:0!important}
.ws-tcm-page .ws-tcm-identity h1{font:700 clamp(30px,3vw,44px)/1.15 "WanderSiam DM Sans","DM Sans",Arial,sans-serif!important;color:#112946!important;text-transform:none!important;letter-spacing:-.035em;margin:0!important}
.ws-tcm-page .ws-tcm-columns{display:grid!important;grid-template-columns:minmax(0,1fr) 360px!important;gap:32px!important;align-items:start!important;max-width:none!important;width:100%!important;overflow:visible!important}
.ws-tcm-page .ws-tcm-main-column,.ws-tcm-page .ws-tcm-booking-column{width:100%!important;min-width:0!important;margin:0!important;overflow:visible!important}
.ws-tcm-page .ws-tcm-main,.ws-tcm-page .ws-tcm-booking-column>.elementor-widget-wrap{display:block!important;width:100%!important;padding:0!important;overflow:visible!important}
.ws-tcm-page .ws-tour-visual-stack{display:flex!important;flex-direction:column!important;gap:28px!important;margin:0 0 32px!important;width:100%!important;min-width:0!important}
.ws-tcm-page .ws-tour-visual-stack>.elementor-widget-babe-item-slideshow{order:0!important;width:100%!important;margin:0!important;position:relative!important;top:auto!important;transform:none!important}
.ws-tcm-page .ws-tour-visual-stack>.elementor-widget-babe-item-slideshow>.elementor-widget-container{margin:0!important;padding:0!important;transform:none!important;--ws-hero-flow-offset:0px!important}
.ws-tcm-page .ws-hero-gallery{width:100%!important;height:auto!important;aspect-ratio:2/1;margin:0!important;transform:none!important;border-radius:16px!important}
.ws-tcm-page .ws-hero-gallery__item{min-height:0!important}
.ws-tcm-page .ws-tcm-facts-source,.ws-tcm-page .ws-tcm-empty-divider{display:none!important}
.ws-tcm-page .ws-tcm-review-line{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:14px 0 0;font-size:15px;color:#112946}
.ws-tcm-page .ws-tcm-review-line[hidden]{display:none!important}
.ws-tcm-page .ws-tcm-identity-meta{display:flex;align-items:center;gap:16px;width:100%;min-width:0}
.ws-tcm-page .ws-tcm-identity-meta>.elementor-widget-babe-item-address{flex:0 0 auto;width:auto!important;max-width:100%;margin:0!important}
.ws-tcm-page .ws-tcm-identity-meta .elementor-widget-container,.ws-tcm-page .ws-tcm-identity-meta .triply-single-address{margin:0!important}
.ws-tcm-page .ws-tcm-identity-meta>.ws-tcm-review-line{margin:0;min-width:0;max-width:100%}
.ws-tcm-page .ws-tcm-identity-meta .ws-tcm-review-line>span,.ws-tcm-page .ws-tcm-identity-meta .ws-tcm-review-line>strong{max-width:100%;overflow-wrap:anywhere}
.ws-tcm-review-badge{font-size:12px;font-weight:700;padding:3px 8px;border-radius:5px;background:#112946;color:#fff}
.ws-tcm-review-star{color:#ec9b00;font-size:20px;line-height:1}
.ws-tcm-native-facts{display:grid;grid-template-columns:minmax(0,.75fr) minmax(220px,1.25fr) minmax(0,1fr);gap:20px;padding:0 0 24px;margin:0 0 28px;border-bottom:1px solid #dce3e7}
.ws-tcm-native-facts:empty{display:none}
.ws-tcm .ws-tcm-native-facts>.elementor-widget{width:auto!important;min-width:0;margin:0!important;padding:0!important;border:0!important}
.ws-tcm .ws-tcm-native-facts .elementor-widget-container{margin:0!important;padding:0!important;border:0!important}
.ws-tcm-native-facts .item_icon{display:none!important}
.ws-tcm-native-facts .meta-field-inner{display:block!important}
.ws-tcm-native-facts .item_info{padding:0!important}
.ws-tcm .ws-tcm-native-facts .babe-section-title{font:600 12px/1.4 "WanderSiam DM Sans",Arial,sans-serif!important;text-transform:uppercase;letter-spacing:.03em;color:#65748b!important;margin:0 0 6px!important}
.ws-tcm .ws-tcm-native-facts .item-meta-value,.ws-tcm .ws-tcm-native-facts .item-meta-value :is(span,a){font:600 15px/1.5 "WanderSiam DM Sans",Arial,sans-serif!important;color:#112946!important}
body.ws-tcm-page .ws-tcm .ws-tcm-native-facts .elementor-widget .item-meta-value{white-space:normal!important;overflow-wrap:anywhere;min-width:0;max-width:100%}
.ws-tcm .ws-tcm-native-facts .ws-tcm-group-line{display:block;overflow-wrap:normal}
.ws-tcm-page .ws-tour-visual-stack>[data-ws-options],.ws-tcm-page .ws-tcm-options{order:1!important;width:100%!important;position:static!important;transform:none!important;margin:0!important}
.ws-tcm-page .ws-tcm-options[hidden]{display:none!important}
/* Match the existing Tour Options breakpoint. Mobile retains its native
   horizontal carousel, all options, arrows/dots and touch behaviour. */
@media(min-width:901px){
 .ws-tcm-page .ws-tcm-options:not(.is-showing-all) .ws-tcm-extra-option{display:none!important}
 .ws-tcm-page .ws-tcm-options .ws-canal-options__grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-auto-flow:row!important;grid-auto-columns:auto!important;gap:12px!important;overflow:visible!important;scroll-snap-type:none!important;width:100%!important}
 .ws-tcm-page .ws-tcm-options .ws-canal-options__mobile-controls{display:none!important}
 .ws-tcm-page .ws-tcm-options .ws-canal-options__show-all{display:block!important;min-height:44px;margin:18px auto 0!important;padding:10px 20px!important}
}
.ws-tcm-page .ws-fast-booking{border-top:4px solid #0875c1!important}.ws-tcm-page .ws-fast-booking__live-total>span,.ws-tcm-page .ws-fast-booking__price-total>span{display:inline!important}
.ws-tcm-page .ws-fast-booking :is(label,span,strong,p,input,button){font-family:inherit!important}
.ws-tcm-date-display{box-sizing:border-box;max-width:100%}
@media(min-width:1025px){
 .ws-tcm-page .ws-tcm-booking-column{position:sticky!important;top:var(--ws-tcm-sticky-top,20px)!important;align-self:start!important}
 .ws-tcm-page .ws-tcm-booking-column .elementor-widget-babe-booking-form{position:static!important;top:auto!important;left:auto!important;width:100%!important;transform:none!important;margin:0!important}
 .ws-tcm-page .ws-tcm-booking-column .elementor-widget-container{margin:0!important}
 .ws-tcm-page .ws-tcm-booking-column .elementor-sticky__spacer{display:none!important}
 .ws-tcm-page .ws-tcm-booking-column .ws-fast-booking{margin-top:0!important}
}
@media(max-width:1024px){
 .ws-tcm-page .ws-tcm-columns{display:flex!important;flex-direction:column!important;gap:24px!important}
 .ws-tcm-page .ws-tcm-main-column{order:0!important}
 .ws-tcm-page .ws-tcm-booking-column{order:1!important;position:static!important}
 body.ws-tcm-page .elementor-location-single .elementor-section.ws-tcm-layout{padding:0 16px!important;margin-top:24px!important}
}
@media(max-width:600px){
 .ws-tcm-native-facts{grid-template-columns:1fr;gap:16px}
 .ws-tcm-page .ws-hero-gallery{aspect-ratio:4/3}
}
.ws-tcm-date-field{position:relative}.ws-tcm-date-field .ws-tcm-date-source{color:transparent!important;-webkit-text-fill-color:transparent!important}.ws-tcm-date-source::-webkit-calendar-picker-indicator{opacity:0}.ws-tcm-date-display{position:absolute;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:0 16px;pointer-events:none;color:#2b2b2b;font:700 16px/1.4 "WanderSiam DM Sans",Arial,sans-serif}.ws-tcm-date-display svg{width:20px;height:20px;flex:none;color:#0875c1}
@media(max-width:1180px){.ws-tcm-tabs{grid-template-columns:1fr}.ws-tcm h2{font-size:34px!important}.ws-tcm-stop,.ws-tcm-stop:nth-child(even){grid-template-columns:46px minmax(0,1fr);gap:16px}.ws-tcm-stop .ws-tcm-number,.ws-tcm-stop:nth-child(even) .ws-tcm-number{grid-column:1;grid-row:1}.ws-tcm-stop .ws-tcm-stop-copy,.ws-tcm-stop:nth-child(even) .ws-tcm-stop-copy{grid-column:2;grid-row:1}.ws-tcm-stop .ws-tcm-route-photo,.ws-tcm-stop:nth-child(even) .ws-tcm-route-photo{grid-column:1/-1;grid-row:2;height:auto;aspect-ratio:3/2}}
@media(max-width:820px){.ws-tcm-tabs{display:flex;flex-wrap:wrap;padding:12px;gap:8px;margin-bottom:18px}.ws-tcm-tabs a{font-size:14px;border:1px solid #b4cddc;background:#fff;min-height:44px}.ws-tcm-enhanced .ws-tcm-mobile-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;font:700 16px/1.4 "WanderSiam DM Sans",Arial,sans-serif;min-height:60px;text-align:left;padding:16px;border:1px solid #b4cddc;border-radius:9px;margin:12px 0;background:#edf4f8;color:#075b98}.ws-tcm-mobile-toggle[aria-expanded=true]{background:#075b98;color:#fff}.ws-tcm h2{font-size:31px!important}.ws-tcm-panel{padding:22px 4px}.ws-tcm-page .ws-tcm-identity h1{font-size:30px!important}.ws-tcm-guide{display:block}.ws-tcm-guide img{margin-bottom:18px}.ws-tcm-meeting-photos,.ws-tcm-notes{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.ws-tcm *{scroll-behavior:auto!important}}
@media(max-width:820px){
 .ws-tcm.ws-tcm-enhanced .ws-tcm-mobile-toggle[aria-expanded=true]{background:#075b98;color:#fff}
 .ws-tcm-page .ws-tcm-identity-meta{gap:10px}
 .ws-tcm-page .ws-tcm-identity-meta>.ws-tcm-review-line{column-gap:6px;row-gap:3px;font-size:13px;line-height:1.5}
}
.ws-tcm-mobile-booking{order:0!important;width:100%;min-width:0}
@media(max-width:1024px){
 .ws-tcm-page .ws-tcm-booking-relocated{display:none!important}
 .ws-tcm-mobile-booking .elementor-widget-babe-booking-form{position:static!important;width:100%!important;margin:0!important;transform:none!important}
 .ws-tcm-mobile-booking .ws-fast-booking{margin:0!important}
}
