/* ============================================================
   services-hero-v61.css · loaded LAST on ALL individual service
   pages (tours, day trips, transfers). Unifies the hero, gallery,
   booking card, one-timeline treatment and type/spacing rhythm.
   Palette: navy #0C2342/#16263a · gold #C19A4D/#A9843A/#E4CB94 ·
   cream #F4EBD9 · off-white #F4EFE6 · muted #5c6674.
   ============================================================ */

/* ============================================================
   1 · HERO GALLERY — tidy mosaic that fits beside the book card
   ============================================================ */
.tour-gallery{padding:clamp(88px,10vw,96px) 0 clamp(40px,5vw,60px)!important;}
.tour-gallery .tour-top{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;align-items:stretch;}
.tour-gallery .tour-top .gallery-grid{margin:0!important;min-height:0!important;grid-template-columns:1.5fr 1fr 1fr!important;grid-template-rows:1fr 1fr!important;grid-auto-rows:0!important;height:clamp(388px,40vw,468px)!important;gap:12px!important;}
.tour-gallery .tour-top .gallery-grid>a{border-radius:16px!important;}
.tour-gallery .tour-top .gallery-grid>a:first-child{grid-row:1 / span 2!important;}
.tour-gallery .tour-top .gallery-grid .more .n{font-size:26px!important;}

/* ============================================================
   2 · BOOK CARD — simplified: badge + basics + one CTA
   (JS relocates .label→.ttb-badge and .tour-kpis→.ttb-facts,
    and strips .ttb-kick / .ttb-sub / .ttb-rate)
   ============================================================ */
.tour-top-cta{gap:0!important;padding:28px 28px 30px!important;justify-content:flex-start!important;border-radius:16px!important;}
.tour-top-cta .ttb-badge{align-self:flex-start;display:inline-flex;align-items:center;gap:9px;background:rgba(228,203,148,.14);border:1px solid rgba(228,203,148,.42);color:#EBD9A9;border-radius:999px;padding:9px 16px;font:800 11px/1 var(--f-body,'Manrope',sans-serif);letter-spacing:.14em;text-transform:uppercase;margin:0 0 20px;}
.tour-top-cta .ttb-badge::before{content:"";width:6px;height:6px;border-radius:50%;background:#C19A4D;flex:0 0 auto;}
/* basics list (moved KPIs) — icons live in visible gold chips */
.tour-top-cta .ttb-facts{display:flex!important;flex-direction:column;gap:0!important;margin:0 0 20px!important;padding:0!important;grid-template-columns:none!important;width:100%;background:none!important;border:none!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important;}
.tour-top-cta .ttb-facts .kpi{display:grid!important;grid-template-columns:44px 1fr!important;column-gap:13px!important;align-items:center;padding:11px 0!important;border:none!important;border-bottom:1px solid rgba(255,255,255,.14)!important;background:none!important;}
.tour-top-cta .ttb-facts .kpi:first-child{padding-top:0!important;}
.tour-top-cta .ttb-facts .kpi .ic{display:flex!important;align-items:center;justify-content:center;flex:none!important;width:44px!important;height:44px!important;color:#EBD9A9!important;background:rgba(228,203,148,.15)!important;border:1px solid rgba(228,203,148,.32)!important;box-shadow:none!important;border-radius:12px!important;padding:0!important;}
.tour-top-cta .ttb-facts .kpi .ic svg{width:25px!important;height:25px!important;stroke-width:1.7!important;stroke:currentColor!important;fill:none!important;}
.tour-top-cta .ttb-facts .kpi>div{display:flex!important;flex-direction:column;gap:2px;min-width:0;}
.tour-top-cta .ttb-facts .kpi .v{font:700 14.5px/1.2 var(--f-body,'Manrope',sans-serif)!important;color:#fff!important;letter-spacing:0!important;}
.tour-top-cta .ttb-facts .kpi .l{font:500 11.5px/1.2 var(--f-body,'Manrope',sans-serif)!important;color:rgba(234,240,247,.64)!important;letter-spacing:.02em!important;text-transform:none!important;}
/* CTA pinned to the base of the card */
.tour-top-cta .ttb-go{margin-top:auto!important;padding:16px 20px!important;border-radius:12px!important;font-weight:700!important;}
.tour-top-cta .ttb-wa{margin-top:12px!important;}
.tour-top-cta .ttb-kick,.tour-top-cta .ttb-sub,.tour-top-cta .ttb-rate{display:none!important;}
/* mobile: card sits under the gallery; float button is redundant */
.ttb-float{display:none!important;}
/* retire the older always-on bottom bar on these pages — the scroll
   sticky bar (sticky-enquire.js) is the single bottom bar here */
.bd-actionbar{display:none!important;}
body.bd-has-actionbar{padding-bottom:0!important;}
@media(max-width:960px){
  .tour-gallery .tour-top{grid-template-columns:1fr;}
  .tour-gallery .tour-top .gallery-grid{height:clamp(320px,54vw,440px)!important;}
  .tour-top-cta{padding:26px 24px 28px!important;}
  .tour-top-cta .ttb-facts{display:grid!important;grid-template-columns:1fr 1fr!important;column-gap:22px!important;}
  .tour-top-cta .ttb-facts .kpi:nth-child(2){padding-top:0!important;}
  .tour-top-cta .ttb-go{margin-top:6px!important;}
}
@media(max-width:560px){
  .tour-gallery .tour-top .gallery-grid{grid-template-columns:1fr 1fr!important;height:auto!important;grid-auto-rows:116px!important;grid-template-rows:none!important;}
  /* TALLER hero image on phones */
  .tour-gallery .tour-top .gallery-grid>a:first-child{grid-column:1 / -1!important;grid-row:auto!important;height:clamp(350px,60vh,480px)!important;}
  .tour-top-cta .ttb-facts{grid-template-columns:1fr!important;}
  .tour-top-cta .ttb-facts .kpi:nth-child(2){padding-top:11px!important;}
}
/* transfers: taller, more immersive subhero on phones */
@media(max-width:640px){.subhero{min-height:min(86vh,620px)!important;}}

/* ============================================================
   3 · HERO (below gallery) — clean: title + tagline only
   ============================================================ */
.tour-hero{padding-top:clamp(30px,3.6vw,44px)!important;}
.tour-hero .tour-hero-grid{grid-template-columns:1fr!important;}
.tour-hero h1{font-family:var(--f-display,'Archivo',sans-serif);font-weight:800;font-size:clamp(30px,4.1vw,50px)!important;line-height:1.04!important;letter-spacing:-.03em!important;margin:0!important;max-width:20ch;}
.tour-hero .tagline{font-size:clamp(16px,1.55vw,18px)!important;line-height:1.6!important;color:#5c6674!important;max-width:60ch;margin-top:16px!important;}
.tour-hero .tour-tags{margin-bottom:16px!important;}

/* ============================================================
   4 · ONE UNIFIED TIMELINE (desktop / tablet ≥ 641px)
   Day-trip .itinerary and tour .itin-v2 share ONE vertical
   schedule: big gold icon · gold time label · title · description.
   (Day-trip items get their icon injected by pages-refresh-v60.js.)
   Phones use mobile-timeline-v59.css (vertical rail w/ icon nodes).
   ============================================================ */
@media(min-width:641px){
  .itinerary .itin-list{position:relative;display:flex!important;flex-direction:column;gap:0!important;padding-left:0!important;margin-top:8px!important;border-top:1px solid rgba(22,38,58,.12)!important;}
  .itinerary .itin-item{position:relative;display:grid!important;grid-template-columns:58px 1fr!important;column-gap:24px!important;align-items:start;background:none!important;border:none!important;border-top:none!important;border-bottom:1px solid rgba(22,38,58,.12)!important;border-radius:0!important;padding:22px 4px!important;box-shadow:none!important;margin:0!important;}
  .itinerary .itin-item::before{display:none!important;}
  .itinerary .itin-item .itin-ic{display:block!important;position:static!important;grid-column:1!important;grid-row:1 / span 3!important;width:auto!important;height:auto!important;min-width:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;color:#A9843A!important;padding:0!important;margin:0!important;}
  .itinerary .itin-item .itin-ic svg{width:42px!important;height:42px!important;stroke-width:1.7!important;}
  .itinerary .itin-item .t{grid-column:2!important;grid-row:1!important;display:block!important;position:static!important;width:auto!important;height:auto!important;min-width:0!important;background:none!important;box-shadow:none!important;padding:0!important;margin:0!important;color:#A9843A!important;font:700 12.5px/1.3 var(--f-body,'Manrope',sans-serif)!important;letter-spacing:.14em!important;text-transform:uppercase!important;}
  .itinerary .itin-item h4{grid-column:2!important;grid-row:2!important;margin:6px 0 5px!important;font-family:var(--f-display,'Archivo',sans-serif)!important;font-size:21px!important;font-weight:700!important;letter-spacing:-.02em!important;color:#16263a!important;}
  .itinerary .itin-item p{grid-column:2!important;grid-row:3!important;margin:0!important;font-size:14.5px!important;line-height:1.6!important;color:#5c6674!important;max-width:60ch!important;}
  .itinerary .section-head::after,.itin-v2 .section-head::after{content:none!important;}
}

/* ============================================================
   5 · TRANSFERS — bring the basics back into the subhero
   (the global stat-strip hide is overridden here, restyled to
    big background-free gold icons)
   ============================================================ */
.subhero .stat-bar{display:grid!important;grid-template-columns:repeat(4,auto)!important;justify-content:start!important;gap:clamp(18px,2.6vw,42px)!important;margin:26px 0 2px!important;padding:22px 0 0!important;border-top:1px solid rgba(255,255,255,.2)!important;}
.subhero .stat{display:flex!important;align-items:center;gap:13px;background:none!important;border:none!important;padding:0!important;box-shadow:none!important;}
.subhero .stat .ic{flex:0 0 auto;color:#E4CB94!important;background:none!important;box-shadow:none!important;width:auto!important;height:auto!important;border-radius:0!important;}
.subhero .stat .ic svg{width:30px!important;height:30px!important;stroke-width:1.6!important;}
.subhero .stat .meta{display:flex;flex-direction:column;gap:2px;}
.subhero .stat .v{font:700 17px/1.1 var(--f-display,'Archivo',sans-serif)!important;color:#fff!important;letter-spacing:-.01em;}
.subhero .stat .l{font:500 12px/1.2 var(--f-body,'Manrope',sans-serif)!important;color:rgba(255,255,255,.72)!important;letter-spacing:.02em;text-transform:none;}
.subhero .hero-ctas{margin-top:clamp(22px,2.6vw,30px)!important;gap:12px!important;}
@media(max-width:720px){
  .subhero .stat-bar{grid-template-columns:1fr 1fr!important;gap:18px 22px!important;}
  .subhero .stat .ic svg{width:26px!important;height:26px!important;}
}

/* ============================================================
   6 · TYPE + SPACING UNIFICATION across individual pages
   Consistent section rhythm, heading + body scale.
   ============================================================ */
/* section vertical rhythm — normalise the ad-hoc inline 80px blocks */
section[style*="padding: 80px 0"],
section[style*="padding:80px 0"]{padding:clamp(56px,6.4vw,88px) 0!important;}
/* section headings */
.section-head h2,
.boat-split h2,
.ms-route-head h2,
.tm-included .section-head h2,
.itinerary .section-head h2{font-family:var(--f-display,'Archivo',sans-serif)!important;font-weight:800!important;font-size:clamp(26px,3vw,40px)!important;line-height:1.05!important;letter-spacing:-.03em!important;}
.section-head h2[style*="margin-top"],
.boat-split h2[style*="margin-top"],
.ms-route-head h2[style*="margin-top"]{margin-top:16px!important;}
/* section lead / intro paragraphs */
.section-head .lead,
.ms-route-head .lead,
.p43-lead,
.itinerary .lead,
.tm-included .lead{font-size:clamp(15px,1.3vw,16.5px)!important;line-height:1.6!important;color:#5c6674!important;}
/* eyebrows consistent */
.h-eyebrow{font-family:var(--f-body,'Manrope',sans-serif)!important;font-weight:800!important;font-size:11px!important;letter-spacing:.22em!important;text-transform:uppercase!important;color:#A9843A!important;}
/* body copy in about columns */
.boat-split .col p{font-size:15px!important;line-height:1.7!important;color:#435061!important;}
/* subhero heading scale = match tour-hero */
.subhero h1{font-family:var(--f-display,'Archivo',sans-serif)!important;font-weight:800!important;font-size:clamp(30px,4.1vw,50px)!important;line-height:1.05!important;letter-spacing:-.03em!important;}
.subhero .sub{font-size:clamp(16px,1.55vw,18px)!important;line-height:1.6!important;}
