/* ════════════════════════════════════════════════════════════════════
   liveaboards-detail.css — liveaboard detail page
   Faithful copy of the Pahadi House "stay listing" layout (.hgr-* design,
   hand-built by the same team) recoloured to the iDive ocean brand.
   Green #1b6635 → teal #0e7490 · gold #d8a627 → amber #f59e0b ·
   warm cream → soft cyan-white. Scoped under .hgr-page so it can't collide
   with the header/footer (styles.css) or the listing (liveaboards.css).
   Fonts: Bricolage Grotesque (display) + Manrope (body).
   ════════════════════════════════════════════════════════════════════ */
.hgr-page{
  --pg:#0e7490;          /* primary teal (was green #1b6635) */
  --pg-dark:#0b3a4a;     /* deep teal (was #124a26) */
  --py:#f59e0b;          /* amber accent (was gold #d8a627) */
  --ink:#12303a;--ink-2:#3f5763;--mute:#6b818a;
  --line:#e3edef;--cream:#f4f9fa;--card:#ffffff;
  --radius:18px;--radius-sm:12px;
  --shadow:0 8px 30px rgba(13,43,54,.08);--shadow-lg:0 20px 50px rgba(13,43,54,.12);
  font-family:"Manrope","Inter",system-ui,sans-serif;color:var(--ink);background:var(--cream);
  padding:96px 0 80px;line-height:1.55;-webkit-font-smoothing:antialiased; /* top clears the 72px fixed header */
}
.hgr-page *{box-sizing:border-box}
.hgr-page img{max-width:100%;height:auto;display:block}
.hgr-page a{color:inherit;text-decoration:none}
.hgr-page h1,.hgr-page h2,.hgr-page h3,.hgr-page h4{font-family:"Bricolage Grotesque","Manrope",serif;color:var(--ink);line-height:1.15;margin:0 0 .4em;letter-spacing:-.01em}
.hgr-page h1{font-size:clamp(28px,4vw,44px);font-weight:600}
.hgr-page h2{font-size:clamp(22px,2.6vw,30px);font-weight:600}
.hgr-page h3{font-size:20px;font-weight:600}
.hgr-page p{margin:0 0 1em;color:var(--ink-2);font-size:16px}
.hgr-wrap{max-width:1200px;margin:0 auto;padding:0 20px}

/* Breadcrumb */
.hgr-crumbs{font-size:13px;color:var(--mute);margin-bottom:18px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.hgr-crumbs a:hover{color:var(--pg)}
.hgr-crumbs span{color:#b6c4c8}

/* Title block */
.hgr-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:18px}
.hgr-title-row h1{margin-bottom:8px}
.hgr-meta{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;font-size:14px;color:var(--ink-2)}
.hgr-meta .fact{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.hgr-meta .fact i{color:var(--pg);font-size:13px;line-height:1}
.hgr-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:rgba(14,116,144,.09);color:var(--pg);font-weight:600;font-size:12.5px}
.hgr-badge i{color:var(--py)}
.hgr-badge.is-gold{background:rgba(245,158,11,.12);color:#b45309}
.hgr-share{display:flex;gap:12px;color:var(--ink-2);font-size:14px}
.hgr-share button{background:#fff;border:1px solid var(--line);display:inline-flex;gap:7px;align-items:center;padding:9px 16px;border-radius:10px;cursor:pointer;color:var(--ink-2);font-family:inherit;font-size:14px;font-weight:600}
.hgr-share button{transition:var(--transition,all .25s cubic-bezier(.4,0,.2,1))}
.hgr-share button:hover{background:#eaf2f4;color:var(--ink);border-color:var(--pg);transform:translateY(-1px);box-shadow:0 6px 14px rgba(6,182,212,.12)}

/* Gallery collage */
.hgr-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:repeat(2,220px);gap:10px;border-radius:var(--radius);overflow:hidden;margin:22px 0 40px;box-shadow:var(--shadow)}
.hgr-gallery .g{position:relative;overflow:hidden;background:#e8eef0;cursor:pointer}
.hgr-gallery .g img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}
.hgr-gallery .g:hover img{transform:scale(1.05)}
.hgr-gallery .g1{grid-row:1/3;grid-column:1/2}
.hgr-gallery .g5{position:relative}
.hgr-gallery .show-all{position:absolute;right:16px;bottom:16px;background:#fff;color:var(--ink);padding:10px 16px;border-radius:10px;font-weight:600;font-size:13px;display:inline-flex;gap:8px;align-items:center;box-shadow:0 2px 8px rgba(0,0,0,.15);border:1px solid rgba(0,0,0,.06);cursor:pointer;font-family:inherit;transition:var(--transition,all .25s cubic-bezier(.4,0,.2,1))}
.hgr-gallery .show-all:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(13,43,54,.22);border-color:var(--pg)}
.hgr-gallery .show-all i{font-size:14px;line-height:1;margin-right:4px}

/* Main 2-col layout */
.hgr-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:60px;align-items:start}
.hgr-content>section{padding:32px 0;border-bottom:1px solid var(--line)}
.hgr-content>section:first-child{padding-top:0}
.hgr-content>section:last-child{border-bottom:0}
.hgr-subtitle{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.hgr-subtitle .chip{display:inline-flex;align-items:center;gap:7px;background:rgba(14,116,144,.07);color:var(--ink-2);padding:8px 14px;border-radius:999px;font-size:13px;font-weight:500;line-height:1.2;white-space:nowrap}
.hgr-subtitle .chip i{font-size:14px;color:var(--pg);flex-shrink:0;line-height:1}

/* Offers grid */
.hgr-offers{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:8px}
.hgr-offers .item{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:16px 10px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);transition:transform .2s,box-shadow .2s}
.hgr-offers .item:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.hgr-offers .item>i{font-size:22px;color:var(--pg);flex-shrink:0;line-height:1;width:24px;text-align:center}
.hgr-offers .item div{display:flex;flex-direction:column;align-items:center}
.hgr-offers .item b{display:block;color:var(--ink);font-weight:600;font-size:13.5px;margin-bottom:1px;line-height:1.2}
.hgr-offers .item span{color:var(--mute);font-size:12px;line-height:1.3}
.hgr-offers .item .tag{margin-top:4px;font-size:10.5px;font-weight:800;padding:2px 8px;border-radius:999px;letter-spacing:.02em}
.hgr-offers .item .tag.is-free{background:#dcfce7;color:#15803d}
.hgr-offers .item .tag.is-paid{background:#eef2f4;color:#64748b}

/* Accommodation / cabin cards */
.hgr-rooms{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-top:8px}
.hgr-room{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden;transition:transform .25s,box-shadow .25s;display:flex;flex-direction:column}
.hgr-room:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.hgr-room .thumb{aspect-ratio:4/3;overflow:hidden;background:#e8eef0}
.hgr-room .thumb img{width:100%;height:100%;object-fit:cover}
.hgr-room .body{padding:18px;display:flex;flex-direction:column;flex:1}
.hgr-room h3{font-size:18px;margin-bottom:4px}
.hgr-room .size{color:var(--mute);font-size:13px;margin-bottom:10px}
.hgr-room ul{margin:0 0 14px;padding:0;list-style:none}
.hgr-room ul li{font-size:13px;color:var(--ink-2);padding:3px 0;display:flex;gap:6px;align-items:flex-start}
.hgr-room ul li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--py);margin-top:8px;flex-shrink:0}
.hgr-room .price{margin-top:auto;padding-top:12px;border-top:1px dashed var(--line);display:flex;justify-content:space-between;align-items:baseline}
.hgr-room .price b{font-size:16px;color:var(--pg);font-family:"Bricolage Grotesque",serif;font-weight:600}
.hgr-room .price small{color:var(--mute);font-size:12px}
.hgr-room .rcpd{font-size:12px;color:var(--mute);text-align:right;margin-top:4px}

/* Activities / route cards */
.hgr-activities{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin-top:10px}
.hgr-activities .act{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);padding:18px 16px;text-align:center;transition:all .25s}
.hgr-activities .act:hover{border-color:var(--pg);transform:translateY(-3px);box-shadow:var(--shadow)}
.hgr-activities .act>i{font-size:30px;color:var(--pg);margin:0 auto 10px;display:block;text-align:center;line-height:36px}
.hgr-activities .act b{font-size:14px;color:var(--ink);display:block;font-weight:600;margin-bottom:2px}
.hgr-activities .act span{font-size:12px;color:var(--mute);line-height:1.4;display:block}

/* Itinerary cards (route-rich, left teal accent) */
.hgr-itins{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:10px}
.hgr-itin{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--pg);border-radius:var(--radius-sm);padding:18px 20px}
.hgr-itin .top{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap}
.hgr-itin h3{font-size:17px;margin:0}
.hgr-itin .nights{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:#b45309}
.hgr-itin .route{font-size:13px;color:var(--mute);font-weight:600;margin:6px 0 10px;display:flex;gap:7px;align-items:center}
.hgr-itin .route i{color:var(--pg)}
.hgr-itin ul{margin:10px 0 0;padding:10px 0 0;border-top:1px solid var(--line);list-style:none}
.hgr-itin ul li{font-size:13px;color:var(--ink-2);padding:4px 0 4px 16px;position:relative;line-height:1.5}
.hgr-itin ul li::before{content:"";position:absolute;left:0;top:11px;width:6px;height:6px;border-radius:50%;background:var(--py)}

/* Marine-life chips */
.hgr-marine{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}
.hgr-marine a,.hgr-marine span{display:inline-flex;align-items:center;padding:9px 16px;border-radius:999px;background:var(--card);border:1px solid var(--line);color:var(--pg-dark);font-size:14px;font-weight:600;transition:all .2s}
.hgr-marine a:hover{background:linear-gradient(135deg,rgba(16,185,129,.96) 0%,rgba(6,182,212,.96) 50%,rgba(29,78,216,.96) 100%);color:#fff;border-color:rgba(255,255,255,.28);transform:translateY(-1px);box-shadow:0 6px 14px rgba(29,78,216,.18)}

/* Inclusions 2-col */
.hgr-incl{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:10px}
.hgr-incl h4{font-size:15px;color:var(--ink);font-family:"Manrope",sans-serif;font-weight:700;margin:0 0 14px;display:flex;gap:8px;align-items:center}
.hgr-incl h4 i{font-size:18px;line-height:1}
.hgr-incl ul{margin:0;padding:0;list-style:none}
.hgr-incl ul li{padding:8px 0;font-size:14px;color:var(--ink-2);display:flex;gap:10px;align-items:flex-start;border-bottom:1px solid var(--line)}
.hgr-incl ul li:last-child{border-bottom:0}
.hgr-incl .tick{color:#0e9488;flex-shrink:0;font-weight:700}
.hgr-incl .cross{color:#b45309;flex-shrink:0;font-weight:700}

/* Spec / reach cards */
.hgr-reach{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-top:8px}
.hgr-reach .r{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:16px 10px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);transition:transform .2s,box-shadow .2s}
.hgr-reach .r:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.hgr-reach .r i{font-size:22px;color:var(--pg);line-height:1;width:24px}
.hgr-reach .r b{color:var(--ink);font-weight:600;font-size:14px;line-height:1.2}
.hgr-reach .r span{font-size:12px;color:var(--mute);text-transform:uppercase;letter-spacing:.03em;line-height:1.3}

/* FAQ */
.hgr-faq details{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);padding:0;margin-bottom:10px;overflow:hidden}
.hgr-faq summary{padding:18px 20px;cursor:pointer;font-weight:600;color:var(--ink);font-size:15px;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px}
.hgr-faq summary::-webkit-details-marker{display:none}
.hgr-faq summary::after{content:"+";font-size:22px;color:var(--pg);font-weight:400;transition:transform .3s;line-height:1}
.hgr-faq details[open] summary::after{transform:rotate(45deg)}
.hgr-faq details[open]{border-color:var(--pg)}
.hgr-faq .ans{padding:0 20px 20px;color:var(--ink-2);font-size:14px;line-height:1.6}

/* Booking card */
.hgr-book{position:sticky;top:100px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow-lg)}
.hgr-book .from{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:6px}
.hgr-book .from .price{font-family:"Bricolage Grotesque",serif;font-size:28px;font-weight:600;color:var(--ink)}
.hgr-book .from .price small{font-size:14px;color:var(--mute);font-weight:400}
.hgr-book .from .rate{font-size:13px;font-weight:700;color:var(--pg)}
.hgr-book .sub{color:var(--mute);font-size:13px;margin-bottom:18px}
.hgr-book .picker{border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:14px}
.hgr-book .prow{display:flex;justify-content:space-between;gap:12px;padding:13px 16px;border-bottom:1px solid var(--line);font-size:13.5px}
.hgr-book .prow:last-child{border-bottom:0}
.hgr-book .prow span{color:var(--mute)}
.hgr-book .prow b{color:var(--ink);font-weight:600;text-align:right}
.hgr-book .cta{display:block;width:100%;text-align:center;background:linear-gradient(135deg,rgba(16,185,129,.96) 0%,rgba(6,182,212,.96) 50%,rgba(29,78,216,.96) 100%);color:#fff;padding:16px 20px;border:1px solid rgba(255,255,255,.22);border-radius:12px;font-size:16px;font-weight:700;font-family:inherit;cursor:pointer;letter-spacing:.01em;transition:var(--transition,all .25s cubic-bezier(.4,0,.2,1));box-shadow:0 6px 18px rgba(29,78,216,.30),0 3px 10px rgba(16,185,129,.18),inset 0 1px 0 rgba(255,255,255,.26);margin-top:4px}
.hgr-book .cta:hover{transform:translateY(-1px);background:linear-gradient(135deg,#0ea371 0%,#0891b2 50%,#1e40af 100%);box-shadow:0 12px 26px rgba(29,78,216,.42),0 5px 14px rgba(16,185,129,.22),inset 0 1px 0 rgba(255,255,255,.32)}
.hgr-book .cta2{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;background:#fff;color:#164e63;padding:14px 20px;border:1px solid rgba(6,182,212,.3);border-radius:12px;font-size:15px;font-weight:700;font-family:inherit;cursor:pointer;margin-top:10px;text-decoration:none;transition:all .2s}
.hgr-book .cta2:hover{background:#ecfeff;border-color:#06b6d4;transform:translateY(-1px);box-shadow:0 8px 18px rgba(6,182,212,.16)}
.hgr-book .cta2 i{font-size:18px;line-height:1}
.hgr-book .reassure{text-align:center;color:var(--mute);font-size:12px;margin-top:14px;line-height:1.5}
.hgr-book .host{margin-top:22px;padding-top:22px;border-top:1px solid var(--line);display:flex;gap:12px;align-items:center}
.hgr-book .host .ava{width:48px;height:48px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid var(--line)}
.hgr-book .host .ava img{width:100%;height:100%;object-fit:contain;padding:4px;display:block}
.hgr-book .host b{display:block;font-size:14px;color:var(--ink)}
.hgr-book .host span{font-size:12px;color:var(--mute)}

/* Full gallery band */
.hgr-full-gallery{margin-top:60px}
.hgr-full-gallery h2{text-align:center;margin-bottom:6px}
.hgr-full-gallery .sub{text-align:center;color:var(--mute);margin-bottom:28px;font-size:15px}
.hgr-masonry{column-count:3;column-gap:14px}
.hgr-masonry img{width:100%;border-radius:var(--radius-sm);margin-bottom:14px;break-inside:avoid;transition:transform .5s;cursor:pointer}
.hgr-masonry img:hover{transform:scale(.98)}

/* SEO long-form */
.hgr-seo-content{margin-top:50px;max-width:900px}
.hgr-seo-content h2{margin-top:30px}
.hgr-seo-content h3{margin-top:24px;font-size:18px}
.hgr-seo-content p{font-size:15.5px;line-height:1.75}

/* CTA band */
.hgr-cta-band{margin-top:60px;background:linear-gradient(135deg,rgba(15,23,42,.62) 0%,rgba(15,23,42,.38) 50%,rgba(6,95,120,.62) 100%),url('/liveaboards/images/cta-banner.webp') center/cover no-repeat;border-radius:var(--radius);padding:62px 40px;color:#fff;text-align:center;position:relative;overflow:hidden}
.hgr-cta-band::before{display:none}
.hgr-cta-band h2{color:#fff;font-size:clamp(26px,3.4vw,38px);margin-bottom:10px;position:relative}
.hgr-cta-band p{color:rgba(255,255,255,.85);font-size:16px;max-width:580px;margin:0 auto 26px;position:relative}
.hgr-cta-band .hgr-btn-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;position:relative}
.hgr-cta-band a{display:inline-flex!important;align-items:center;gap:8px;padding:14px 28px;border-radius:10px;font-weight:700;font-size:15px;transition:transform .2s;flex:0 0 auto;width:auto!important;white-space:nowrap;text-decoration:none}
.hgr-cta-band a:hover{transform:translateY(-2px)}
.hgr-cta-band a.primary,.hgr-cta-band a.secondary{background:linear-gradient(180deg,rgba(255,255,255,.22) 0%,rgba(255,255,255,.12) 100%);backdrop-filter:blur(14px) saturate(180%);-webkit-backdrop-filter:blur(14px) saturate(180%);color:#fff;border:1.5px solid rgba(255,255,255,.42);box-shadow:0 6px 18px rgba(15,23,42,.18),inset 0 1px 0 rgba(255,255,255,.28),inset 0 -1px 0 rgba(255,255,255,.10)}
.hgr-cta-band a.primary:hover,.hgr-cta-band a.secondary:hover{background:linear-gradient(180deg,rgba(255,255,255,.34) 0%,rgba(255,255,255,.18) 100%);border-color:rgba(255,255,255,.62);box-shadow:0 12px 26px rgba(15,23,42,.26),inset 0 1px 0 rgba(255,255,255,.36),inset 0 -1px 0 rgba(255,255,255,.12)}
.hgr-cta-band i{font-size:18px;line-height:1;vertical-align:middle}
/* solid fallback for the CTA-band glass buttons where backdrop-filter is unsupported */
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .hgr-cta-band a.primary,.hgr-cta-band a.secondary{background:rgba(255,255,255,.20)}
  .hgr-cta-band a.primary:hover,.hgr-cta-band a.secondary:hover{background:rgba(255,255,255,.32)}
}

/* Lightbox */
.hgr-lb{position:fixed;inset:0;background:rgba(8,16,20,.93);z-index:9999;display:none;align-items:center;justify-content:center;padding:20px}
.hgr-lb.on{display:flex}
.hgr-lb img{max-width:92vw;max-height:88vh;border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.hgr-lb .close,.hgr-lb .prev,.hgr-lb .next{position:absolute;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);color:#fff;width:48px;height:48px;border-radius:50%;cursor:pointer;font-size:22px;display:flex;align-items:center;justify-content:center;transition:background .2s}
.hgr-lb .close:hover,.hgr-lb .prev:hover,.hgr-lb .next:hover{background:rgba(255,255,255,.22)}
.hgr-lb .close{top:24px;right:24px}
.hgr-lb .prev{left:24px;top:50%;transform:translateY(-50%)}
.hgr-lb .next{right:24px;top:50%;transform:translateY(-50%)}
.hgr-lb .counter{position:absolute;top:32px;left:50%;transform:translateX(-50%);color:#fff;font-size:14px;opacity:.8}

/* ===================== Responsive ===================== */
@media (max-width:900px){ .hgr-page{padding-top:76px} } /* header is 60px on mobile */
@media (max-width:980px){
  .hgr-layout{grid-template-columns:1fr;gap:0}
  .hgr-book{position:static;margin-top:30px}
  .hgr-gallery{grid-template-columns:1fr 1fr;grid-template-rows:260px 130px 130px;gap:8px}
  .hgr-gallery .g1{grid-row:1/2;grid-column:1/3}
  .hgr-gallery .g2{grid-row:2/3;grid-column:1/2}
  .hgr-gallery .g3{grid-row:2/3;grid-column:2/3}
  .hgr-gallery .g4{grid-row:3/4;grid-column:1/2}
  .hgr-gallery .g5{grid-row:3/4;grid-column:2/3}
  .hgr-masonry{column-count:2}
  .hgr-incl{grid-template-columns:1fr;gap:10px}
  .hgr-offers{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:640px){
  .hgr-page{padding:76px 0 96px}
  .hgr-wrap{padding:0 16px}
  .hgr-title-row{flex-direction:row;align-items:flex-start;gap:12px}
  .hgr-title-row>div:first-child{flex:1 1 0;min-width:0}
  .hgr-meta{gap:6px 12px;font-size:13px}
  .hgr-share{flex:0 0 auto}
  .hgr-share button{padding:8px 12px;font-size:13px}
  .hgr-gallery{grid-template-rows:240px 110px 110px;border-radius:14px}
  .hgr-offers{grid-template-columns:repeat(2,1fr)}
  .hgr-reach{grid-template-columns:1fr 1fr}
  .hgr-masonry{column-count:1}
  .hgr-cta-band{padding:40px 24px}
  .hgr-content>section{padding:24px 0}
  /* Sticky mobile booking bar — show the real price + CTA (no hardcoded text) */
  .hgr-book{position:fixed;left:0;right:0;bottom:0;top:auto;margin:0;border:0;border-top:1px solid rgba(255,255,255,.55);border-radius:0;padding:10px 16px;z-index:300;background:linear-gradient(180deg,rgba(255,255,255,.78) 0%,rgba(255,255,255,.62) 100%);backdrop-filter:blur(22px) saturate(180%);-webkit-backdrop-filter:blur(22px) saturate(180%);box-shadow:0 -6px 24px rgba(6,95,120,.16);display:flex;align-items:center;gap:12px;transition:transform .3s ease,opacity .3s ease}
  .hgr-book.lb-bar-hidden{transform:translateY(130%);opacity:0;pointer-events:none}
  /* hide the price bar while the mobile menu drawer is open */
  body:has(#nav-drawer.open) .hgr-book{transform:translateY(130%);opacity:0;pointer-events:none}
  .hgr-book .sub,.hgr-book .picker,.hgr-book .reassure,.hgr-book .host,.hgr-book .cta2{display:none}
  .hgr-book .from{margin:0;flex:1 1 auto;flex-direction:column;align-items:flex-start;gap:0}
  .hgr-book .from .price{font-size:18px}
  .hgr-book .cta{margin:0 0 0 auto;padding:12px 22px;font-size:14px;width:auto;flex:0 0 auto;border-radius:10px}
  .hgr-cta-band .hgr-btn-row{flex-direction:column;align-items:stretch}
  .hgr-cta-band a{width:100%!important;justify-content:center}
}

/* Single-image hero fallback (boats without a ≥5-photo gallery) */
.hgr-hero-1{border-radius:var(--radius);overflow:hidden;margin:22px 0 40px;box-shadow:var(--shadow);aspect-ratio:16/7;cursor:pointer}
.hgr-hero-1 img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}
.hgr-hero-1:hover img{transform:scale(1.04)}
@media (max-width:640px){.hgr-hero-1{aspect-ratio:16/10}}

/* ── Vessel: full spec table · deck plan · navigation & safety ── */
.hgr-subhead{font-family:"Bricolage Grotesque","Manrope",serif;font-size:17px;color:var(--ink);margin:26px 0 12px;font-weight:600}
.hgr-spectable{display:grid;grid-template-columns:1fr 1fr;gap:0 36px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);padding:4px 20px}
.hgr-spectable .srow{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line);font-size:14px}
.hgr-spectable .srow span{color:var(--mute)}
.hgr-spectable .srow b{color:var(--ink);font-weight:600;text-align:right}
@media (max-width:680px){.hgr-spectable{grid-template-columns:1fr;gap:0}}

.hgr-deckplan{border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden;background:#fff;cursor:pointer;max-width:760px}
.hgr-deckplan img{width:100%;height:auto;display:block;transition:transform .4s}
.hgr-deckplan:hover img{transform:scale(1.02)}

.hgr-nav{display:flex;flex-wrap:wrap;gap:10px}
.hgr-nav span{display:inline-flex;align-items:center;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-size:13px;color:var(--ink-2)}
.hgr-nav span i{color:#0e9488;font-size:12px}

/* ── Gear rental table ── */
.hgr-gear{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden;margin-top:6px}
.hgr-gear .grow{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 20px;border-bottom:1px solid var(--line);font-size:14px}
.hgr-gear .grow:last-child{border-bottom:0}
.hgr-gear .grow span{color:var(--ink-2)}
.hgr-gear .grow b{color:var(--ink);font-weight:600;font-family:"Bricolage Grotesque",serif;white-space:nowrap}
.hgr-gear .grow b.inc{color:#15803d;background:#dcfce7;font-family:inherit;font-size:11.5px;font-weight:800;padding:3px 10px;border-radius:999px}

/* ── Guest reviews ── */
.hgr-revsum{display:grid;grid-template-columns:auto 1fr;gap:30px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:24px 28px;margin-bottom:22px}
.hgr-revsum .big{text-align:center;padding-right:28px;border-right:1px solid var(--line)}
.hgr-revsum .big strong{display:block;font-family:"Bricolage Grotesque",serif;font-size:46px;line-height:1;color:var(--pg)}
.hgr-revsum .big span{font-size:13px;color:var(--mute);font-weight:600}
.hgr-revbars{display:grid;grid-template-columns:1fr 1fr;gap:9px 28px}
.hgr-revbars .bar{display:flex;align-items:center;gap:10px;font-size:13px}
.hgr-revbars .k{color:var(--ink-2);width:64px;flex-shrink:0}
.hgr-revbars .track{flex:1;height:6px;border-radius:999px;background:#e3edef;overflow:hidden}
.hgr-revbars .fill{display:block;height:100%;background:linear-gradient(90deg,var(--pg),var(--pg-dark));border-radius:999px}
.hgr-revbars .v{color:var(--ink);font-weight:700;width:28px;text-align:right;flex-shrink:0}
.hgr-revcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.hgr-revcard{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);padding:20px}
.hgr-revcard .rhead{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.hgr-revcard .rscore{font-family:"Bricolage Grotesque",serif;font-weight:700;background:rgba(14,116,144,.09);color:var(--pg);border-radius:10px;padding:6px 11px;font-size:15px}
.hgr-revcard .rhead b{display:block;font-size:14px;color:var(--ink)}
.hgr-revcard .rhead span{font-size:12px;color:var(--mute)}
.hgr-revcard h4{font-family:"Manrope",sans-serif;font-size:14.5px;font-weight:700;color:var(--ink);margin:0 0 6px}
.hgr-revcard p{font-size:13.5px;line-height:1.6;color:var(--ink-2);margin:0}
@media (max-width:640px){
  .hgr-revsum{grid-template-columns:1fr;gap:18px;text-align:center}
  .hgr-revsum .big{border-right:0;border-bottom:1px solid var(--line);padding:0 0 16px}
  .hgr-revbars{grid-template-columns:1fr}
}

/* ── Itinerary day-by-day (expandable) ── */
.hgr-itins{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}
.hgr-itin .itin-days{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}
.hgr-itin .itin-days summary{cursor:pointer;font-weight:700;font-size:13px;color:var(--pg);list-style:none;display:flex;align-items:center;gap:8px}
.hgr-itin .itin-days summary::-webkit-details-marker{display:none}
.hgr-itin .itin-days summary::after{content:"+";margin-left:auto;font-size:18px;line-height:1;transition:transform .3s}
.hgr-itin .itin-days[open] summary::after{transform:rotate(45deg)}
.hgr-days{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:13px}
.hgr-days .day{display:flex;gap:12px}
.hgr-days .dnum{flex:0 0 auto;font-size:11px;font-weight:800;color:var(--pg);background:rgba(14,116,144,.09);border-radius:8px;padding:4px 9px;height:fit-content;white-space:nowrap}
.hgr-days .day b{display:block;font-size:13.5px;color:var(--ink)}
.hgr-days .day span{display:block;font-size:12.5px;color:var(--ink-2);line-height:1.5;margin-top:2px}

/* Desktop only: more gap under each section heading (mobile ≤640 unchanged) */
@media (min-width:641px){
  .hgr-content > section > h2{margin-bottom:20px}
  .hgr-content > section > h2 + p{margin-top:-8px}
}

/* Gear rental — collapsed behind a "View rental rates" toggle */
.hgr-toggle{margin-top:14px}
.hgr-toggle summary{display:inline-flex;align-items:center;gap:9px;cursor:pointer;list-style:none;color:var(--pg);font-weight:700;font-size:14px;border:1px solid var(--line);background:#fff;padding:11px 18px;border-radius:10px;transition:all .2s}
.hgr-toggle summary::-webkit-details-marker{display:none}
.hgr-toggle summary::after{content:"\f078";font-family:"Font Awesome 6 Free";font-weight:900;font-size:11px;color:var(--pg);transition:transform .3s}
.hgr-toggle[open] summary::after{transform:rotate(180deg)}
.hgr-toggle summary:hover{border-color:var(--pg);background:#eef7f9}
.hgr-toggle > *:not(summary){margin-top:14px}

/* Mobile sticky bar — opaque fallback where backdrop-filter is unsupported */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  @media (max-width:640px){ .hgr-book{background:rgba(255,255,255,.96)} }
}

/* Fix desktop sticky booking box: the global styles.css sets html,body{overflow-x:hidden}
   which makes the root a scroll container and breaks position:sticky. Pahadi uses
   overflow-x:clip — same horizontal-scroll prevention, but sticky keeps working.
   Scoped: this stylesheet only loads on liveaboard detail pages. */
html, body { overflow-x: clip; }

/* Menu close restores scroll via window.scrollTo(); the global html{scroll-behavior:smooth}
   makes that animate ("rolls from the top"). Force instant restore on this page only. */
html { scroll-behavior: auto; }

/* ── Reduced-motion: neutralise hover lifts, zooms & transitions (Elevate §6) ── */
@media (prefers-reduced-motion: reduce){
  .hgr-page *{transition-duration:.01ms!important;animation-duration:.01ms!important}
  .hgr-gallery .g:hover img,
  .hgr-hero-1:hover img,
  .hgr-deckplan:hover img,
  .hgr-masonry img:hover,
  .hgr-offers .item:hover,
  .hgr-reach .r:hover,
  .hgr-room:hover,
  .hgr-activities .act:hover,
  .hgr-book .cta:hover,
  .hgr-book .cta2:hover,
  .hgr-share button:hover,
  .hgr-gallery .show-all:hover,
  .hgr-marine a:hover,
  .hgr-cta-band a:hover{transform:none}
}
