/* Shared front-end rules for Tourmaster programmes. Editor data is untouched. */
body.single-tour { --lg-tour-ink:#19364c; --lg-tour-muted:#506779; --lg-tour-blue:#086fa9; --lg-tour-line:#dce7ef; --lg-tour-soft:#edf5fb; }
.single-tour .tourmaster-single-tour-content-wrap { color:var(--lg-tour-ink); font-family:Arial,Helvetica,sans-serif; font-size:16px; line-height:1.65; }
.single-tour .tourmaster-single-header-title { font-family:Arial,Helvetica,sans-serif; font-size:clamp(26px,3vw,40px)!important; line-height:1.25!important; letter-spacing:0!important; }
.single-tour .tourmaster-single-tour-content-wrap .gdlr-core-title-item-title,
.single-tour .tourmaster-single-tour-content-wrap .gdlr-core-column-service-title { font-family:Arial,Helvetica,sans-serif!important; font-size:24px!important; font-weight:700!important; line-height:1.35!important; letter-spacing:0!important; color:var(--lg-tour-ink)!important; text-transform:none!important; }
.single-tour .tourmaster-single-tour-content-wrap .gdlr-core-title-item { padding-bottom:20px!important; }
.single-tour .tourmaster-single-tour-content-wrap .gdlr-core-title-item-left-icon { color:var(--lg-tour-blue)!important; }
.single-tour .tourmaster-single-tour-content-wrap .gdlr-core-text-box-item { padding-bottom:24px!important; }
.single-tour .tourmaster-single-tour-content-wrap .gdlr-core-text-box-item-content { font-size:16px!important; line-height:1.65!important; }
.single-tour .lg-tour-prose { min-width:0; max-width:100%; color:var(--lg-tour-ink); font:400 16px/1.65 Arial,Helvetica,sans-serif; overflow-wrap:break-word; }
.single-tour .lg-tour-prose * { box-sizing:border-box; }
.single-tour .lg-tour-prose :is(p,li,td,th,dt,dd,span,font,b,strong,em,u) { font-family:inherit; letter-spacing:normal; }
.single-tour .lg-tour-prose p { margin:0 0 14px; }
.single-tour .lg-tour-prose :is(ul,ol) { padding-left:22px; margin:0 0 20px; }
.single-tour .lg-tour-prose li { margin:0 0 8px; }
.single-tour .lg-tour-prose :is(h1,h2,h3,h4,h5,h6) { font-family:Arial,Helvetica,sans-serif; color:var(--lg-tour-ink); font-weight:700; line-height:1.35; letter-spacing:0; text-transform:none; margin:24px 0 14px; }
.single-tour .lg-tour-prose :is(h1,h2) { font-size:26px; }
.single-tour .lg-tour-prose h3 { font-size:22px; }
.single-tour .lg-tour-prose :is(h4,h5,h6) { font-size:18px; }
.single-tour .lg-tour-prose > :first-child { margin-top:0; }
.single-tour .lg-tour-prose u { text-decoration:none; }
.single-tour .lg-tour-prose a { color:var(--lg-tour-blue); text-underline-offset:3px; }
.single-tour .lg-tour-prose a:focus-visible,.single-tour .lg-tour-table-scroll:focus-visible { outline:3px solid #e5a53e; outline-offset:3px; }
.single-tour .lg-tour-prose a.lg-tour-booking-link { display:inline-flex!important; justify-content:center; align-items:center; max-width:100%; min-height:46px; margin:6px 0 20px; padding:12px 20px!important; border:0!important; border-radius:10px!important; background:#0879bc!important; color:white!important; font:700 16px/1.45 Arial,sans-serif!important; text-align:center!important; text-transform:none!important; text-decoration:none!important; white-space:normal!important; box-shadow:none!important; }
.single-tour .lg-tour-prose a.lg-tour-booking-link:hover { background:#065c91!important; }
.single-tour .lg-tour-prose img:not(.emoji) { max-width:100%; height:auto; }
.single-tour .lg-tour-prose iframe { max-width:100%; }
.single-tour .lg-tour-prose .emoji { width:1em!important; height:1em!important; margin:0 .12em!important; vertical-align:-.12em!important; }
.single-tour .lg-tour-prose .lg-tour-notice { border-left:3px solid #dda641; background:#fff8e9; padding:14px 16px; border-radius:0 10px 10px 0; font-weight:700; }
.single-tour .lg-tour-prose .lg-tour-price-kicker { color:var(--lg-tour-muted); font-size:14px; margin:0 0 8px; }
.single-tour .lg-tour-prose .lg-tour-subheading { margin:0 0 8px; }
.single-tour .lg-tour-prose .lg-tour-cost-caption { font-size:16px; font-weight:400; line-height:1.55; margin:0 0 14px; }
.single-tour .lg-tour-table-scroll { max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; border:1px solid var(--lg-tour-line); border-radius:12px; margin:0 0 24px; }
.single-tour table.lg-tour-table { width:100%!important; min-width:620px; border-collapse:separate!important; border-spacing:0!important; table-layout:auto!important; border:0!important; margin:0!important; font-size:15px; line-height:1.5; }
.single-tour .lg-tour-table :is(th,td) { width:auto!important; height:auto!important; border:0!important; border-bottom:1px solid var(--lg-tour-line)!important; padding:15px 16px!important; color:var(--lg-tour-ink)!important; text-align:left!important; vertical-align:top!important; word-break:normal!important; overflow-wrap:normal!important; white-space:normal!important; background:#fff!important; }
.single-tour .lg-tour-table th { font-weight:700!important; background:var(--lg-tour-soft)!important; font-size:14px; }
.single-tour .lg-tour-table tr:nth-child(odd) td { background:#f8fbfd!important; }
.single-tour .lg-tour-table tr:last-child td { border-bottom:0!important; }
.single-tour .lg-tour-table :is(p,span,font) { font-size:inherit!important; line-height:inherit!important; color:inherit!important; text-align:inherit!important; }
.single-tour .lg-tour-table p { margin:0 0 4px!important; }
.single-tour .lg-tour-table p:last-child { margin-bottom:0!important; }
.single-tour .lg-tour-rate-cards,.single-tour .lg-tour-table-hint { display:none; }
.single-tour .gdlr-core-toggle-box-item-tab { margin-bottom:14px!important; }
.single-tour .gdlr-core-toggle-box-item-content-wrapper { border:1px solid var(--lg-tour-line); border-radius:12px; overflow:hidden; background:#fff; }
.single-tour .gdlr-core-toggle-box-item-title { background:var(--lg-tour-soft)!important; color:var(--lg-tour-ink)!important; padding:17px 20px!important; margin:0!important; font:700 18px/1.4 Arial,Helvetica,sans-serif!important; letter-spacing:0!important; }
.single-tour .gdlr-core-toggle-box-item-title .gdlr-core-head { display:block; width:auto!important; padding:0!important; margin:0 0 6px!important; font:700 13px/1.4 Arial,sans-serif!important; color:var(--lg-tour-blue)!important; }
.single-tour .gdlr-core-toggle-box-item-content { padding:18px 20px!important; margin:0!important; color:var(--lg-tour-ink)!important; font-size:16px!important; }
.single-tour .gdlr-core-toggle-box-item-content-wrapper:has(h4:empty) { border:0; border-radius:0; }
.single-tour .gdlr-core-toggle-box-item-title:empty { display:none!important; }
.single-tour .gdlr-core-toggle-box-item-tab:has(h4:empty) > .gdlr-core-toggle-box-item-icon { display:none!important; }
.single-tour .gdlr-core-toggle-box-item-tab:has(h4:empty) .gdlr-core-toggle-box-item-content { padding:0!important; }
.single-tour .tourmaster-tour-info-wrap { font-family:Arial,Helvetica,sans-serif; color:var(--lg-tour-ink); }
.single-tour .tourmaster-content-navigation-item-outer { border-bottom:1px solid var(--lg-tour-line); }
.single-tour .gdlr-core-widget-box-shortcode { background:var(--lg-tour-soft)!important; color:var(--lg-tour-ink)!important; border:1px solid var(--lg-tour-line); border-radius:12px; padding:24px!important; }
.single-tour .gdlr-core-widget-box-shortcode-title,.single-tour .gdlr-core-widget-list-shortcode-title { font:700 20px/1.35 Arial,sans-serif!important; color:var(--lg-tour-ink)!important; letter-spacing:0!important; text-transform:none!important; }
.single-tour .gdlr-core-widget-list-shortcode { border:1px solid var(--lg-tour-line); border-radius:12px; overflow:hidden; }
.single-tour .gdlr-core-widget-list-shortcode li { color:var(--lg-tour-muted)!important; font:400 15px/1.55 Arial,sans-serif!important; }
/* This promotional counter floats above actual prices and is not a booking alert. */
.single-tour #tourmaster-urgency-message { display:none!important; }
@media(max-width:767px) {
  .single-tour .tourmaster-single-tour-content-wrap .gdlr-core-container { padding-left:0!important; padding-right:0!important; }
  .single-tour .tourmaster-single-tour-content-wrap .gdlr-core-item-pdlr { padding-left:16px!important; padding-right:16px!important; }
  .single-tour .tourmaster-single-header-title { font-size:26px!important; line-height:1.25!important; }
  .single-tour .tourmaster-single-tour-content-wrap :is(.gdlr-core-title-item-title,.gdlr-core-column-service-title) { font-size:21px!important; }
  .single-tour .lg-tour-prose :is(h1,h2) { font-size:23px; }
  .single-tour .lg-tour-prose h3 { font-size:20px; }
  .single-tour .lg-tour-prose :is(h4,h5,h6) { font-size:18px; }
  .single-tour .lg-tour-desktop-table { display:none; }
  .single-tour .lg-tour-rate-cards { display:grid; gap:16px; margin:0 0 24px; }
  .single-tour .lg-tour-rate-card { min-width:0; border:1px solid var(--lg-tour-line); border-radius:12px; overflow:hidden; background:#fff; }
  .single-tour .lg-tour-rate-card h4 { margin:0!important; padding:15px 16px; background:var(--lg-tour-soft); font-size:18px; line-height:1.4; }
  .single-tour .lg-tour-rate-card h4 p { margin:0; font-size:inherit; line-height:inherit; }
  .single-tour .lg-tour-rate-card dl { margin:0; padding:0 16px; }
  .single-tour .lg-tour-rate-card dl > div { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); align-items:start; gap:12px; padding:13px 0; }
  .single-tour .lg-tour-rate-card dl > div + div { border-top:1px solid var(--lg-tour-line); }
  .single-tour .lg-tour-rate-card dt { margin:0; font-size:14px; line-height:1.45; color:var(--lg-tour-muted); font-weight:400; word-break:normal; overflow-wrap:normal; }
  .single-tour .lg-tour-rate-card dd { margin:0; font-size:16px; line-height:1.45; color:var(--lg-tour-ink); font-weight:700; font-variant-numeric:tabular-nums; word-break:normal; overflow-wrap:normal; }
  .single-tour .lg-tour-rate-card dd p { margin:0 0 4px; }
  .single-tour .lg-tour-compact-card summary { display:block; cursor:pointer; position:relative; padding:14px 40px 14px 16px; background:var(--lg-tour-soft); list-style:none; }
  .single-tour .lg-tour-compact-card summary::-webkit-details-marker { display:none; }
  .single-tour .lg-tour-compact-card summary::after { content:'+'; position:absolute; right:16px; top:16px; font-size:22px; color:var(--lg-tour-blue); }
  .single-tour .lg-tour-compact-card[open] summary::after { content:'−'; }
  .single-tour .lg-tour-compact-card summary h4 { padding:0!important; font-size:16px; background:none; }
  .single-tour .lg-tour-compact-label { display:block; color:var(--lg-tour-muted); font-size:13px; margin-top:4px; }
  .single-tour .lg-tour-compact-card summary:focus-visible { outline:3px solid #e5a53e; outline-offset:-3px; }
  .single-tour .lg-tour-table-hint { display:block; font-size:13px; color:var(--lg-tour-muted); margin:0 0 8px; }
  .single-tour .gdlr-core-toggle-box-item-title { padding:15px 16px!important; font-size:17px!important; }
  .single-tour .gdlr-core-toggle-box-item-content { padding:16px!important; }
  .single-tour .gdlr-core-toggle-box-item-icon { display:none!important; }
  .single-tour .gdlr-core-toggle-box-item-content-wrapper { margin-left:0!important; }
  .single-tour .lg-tour-prose a.lg-tour-booking-link { width:100%; font-size:15px!important; }
  .single-tour a.laguna-max-floating { position:static!important; display:flex; width:calc(100% - 32px); max-width:none; margin:16px; box-shadow:none; }
  .single-tour #traveltour-footer-back-to-top-button { display:none!important; }
}
@media(prefers-reduced-motion:no-preference) {
  .single-tour .lg-tour-booking-link { transition:background .16s ease,transform .16s ease; }
  .single-tour .lg-tour-booking-link:active { transform:translateY(1px); }
}
