/* Private landing page — EN prototype, v134 */
.private-landing .private-hero{background-image:linear-gradient(90deg,rgba(7,25,42,.7),rgba(7,25,42,.12)),url('../hero.jpg');background-size:cover;background-position:center}
.private-landing .private-nav{display:flex;gap:22px;align-items:center}.private-nav a{color:#fff;text-decoration:none;font-size:13px;letter-spacing:.04em}.private-nav a:hover{text-decoration:underline}
.private-landing .private-intro{max-width:850px;margin:0 auto;text-align:center;padding:68px 24px 36px}.private-intro span{font-size:11px;letter-spacing:.19em;color:#a38b66}.private-intro p{font-size:clamp(18px,2vw,25px);line-height:1.55;color:#193650}
.private-landing .private-gallery{padding:70px 24px;background:#f7f6f3}.private-gallery-heading{text-align:center;max-width:650px;margin:0 auto 28px}.private-gallery-heading h2{font-size:clamp(29px,4vw,48px);margin:10px 0}.private-gallery-heading p:last-child{line-height:1.6}.private-gallery-grid{max-width:1160px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.private-gallery-grid img{width:100%;height:300px;object-fit:cover;border-radius:5px}
.private-final{text-align:center;padding:70px 20px 90px;background:#102b46;color:white}.private-final h2{font-size:clamp(30px,4vw,46px);margin:10px 0}.private-final p{margin:15px auto 28px;max-width:520px}.private-final .cta{display:inline-flex}
.private-landing .port-tasting-cta{scroll-margin-top:40px}
@media(max-width:700px){.private-landing .private-nav{gap:10px}.private-nav a{font-size:11px}.private-nav a:nth-child(2){display:none}.private-landing .private-intro{padding:42px 22px 22px}.private-gallery-grid{grid-template-columns:1fr 1fr}.private-gallery-grid img{height:165px}.private-gallery-grid img:first-child{grid-column:1/-1;height:230px}.private-landing .private-gallery{padding:46px 18px}.private-final{padding:50px 18px 76px}}

/* v135 — remove redundant intro and integrate final CTA into footer */
.private-conversion-footer{padding-top:0}
.private-footer-booking{text-align:center;padding:58px 20px 34px;color:#fff}
.private-footer-booking .section-kicker{color:#c9953c;letter-spacing:.17em;font-size:11px;font-weight:700;text-transform:uppercase}
.private-footer-booking h2{font-family:Georgia,serif;font-size:clamp(28px,3.3vw,43px);line-height:1.15;margin:10px auto 12px}
.private-footer-booking p:not(.section-kicker){max-width:520px;margin:0 auto 20px;line-height:1.55}
.private-footer-booking .cta{display:inline-flex}
.private-conversion-footer .footer-inner{padding-top:24px}
@media(max-width:700px){.private-footer-booking{padding:42px 20px 22px}.private-conversion-footer .footer-inner{padding-top:20px}}

/* v136 — private landing mobile conversion and spacing refinements */
@media (max-width:700px){
  /* Keep the yacht visible while retaining both clear booking paths. */
  .private-landing .hero-content .hero-offers{gap:11px}
  .private-landing .hero-offers > a.hero-offer{width:min(82%,340px);max-width:340px;min-height:0;padding:10px 33px 10px 16px;box-sizing:border-box}
  .private-landing .hero-offer span{font-size:clamp(11px,3.15vw,13px);line-height:1.12}
  .private-landing .hero-offer strong{font-size:clamp(10px,2.65vw,11px);line-height:1.15;margin-top:3px}
  /* Mobile has prominent in-flow booking buttons; avoid covering prices, photos and FAQ. */
  .private-landing .fareharbor-floating-book{display:none!important}
  /* Mobile review cards should size to their own content, not the tallest review. */
  .private-landing .reviews-carousel{align-items:start}
  .private-landing .reviews-carousel .review-card{height:auto;min-height:0;align-self:start}
  .private-landing .reviews-carousel .review-text{flex:0 0 auto}
  .private-landing .private-footer-booking{padding:30px 18px 20px}
  .private-landing .private-footer-booking h2{margin:6px auto 10px}
  .private-landing .private-footer-booking p:not(.section-kicker){margin:0 auto 16px}
  .private-landing .private-conversion-footer .footer-inner{padding-top:12px}
}

/* v137 — mobile: contain hero CTA labels and centre footer booking CTA. */
@media (max-width:700px){
  .private-landing .hero-content .hero-offers{width:min(250px,calc(100vw - 48px));max-width:100%;align-items:stretch}
  .private-landing .hero-offers > a.hero-offer,
  .private-landing .hero-offers > a.hero-offer:link,
  .private-landing .hero-offers > a.hero-offer:visited{
    width:100%;max-width:100%;min-width:0;min-height:58px;
    padding:9px 31px 9px 12px;display:flex;flex-direction:column;
    justify-content:center;align-items:center;position:relative;text-align:center;
  }
  .private-landing .hero-offer span{font-size:11px;letter-spacing:.015em;line-height:1.16;white-space:normal;overflow-wrap:normal}
  .private-landing .hero-offer strong{font-size:10px;line-height:1.15;white-space:normal}
  .private-landing .hero-offer::after{right:11px;top:50%;transform:translateY(-50%);font-size:15px}
  .private-landing .private-footer-booking .cta{
    display:flex;width:min(100%,355px);min-width:0;box-sizing:border-box;
    margin-left:auto;margin-right:auto;align-items:center;justify-content:center;
    text-align:center;padding:18px 15px;font-size:14px;line-height:1.3;
  }
}

/* v138 — shorter hero CTAs and precisely centred footer CTA on all devices. */
.private-landing .hero-offers > a.hero-offer span{white-space:nowrap;font-size:clamp(11px,1.05vw,14px)}
.private-landing .private-footer-booking > a.cta{display:flex;align-items:center;justify-content:center;text-align:center;box-sizing:border-box;padding-left:18px;padding-right:18px;margin-left:auto;margin-right:auto;}
@media(min-width:701px){
 .private-landing .hero-offers > a.hero-offer{min-width:0;}
 .private-landing .hero-offers > a.hero-offer span{font-size:13px;letter-spacing:.025em;}
}
@media(max-width:700px){
 .private-landing .hero-content .hero-offers{width:min(225px,calc(100vw - 48px));}
 .private-landing .hero-offers > a.hero-offer{padding-left:12px;padding-right:29px;}
 .private-landing .hero-offers > a.hero-offer span{font-size:11px;}
}

/* v139: Aboard GLEE gallery */
.private-landing .private-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:1160px;margin:0 auto}.private-gallery-slide{min-width:0;overflow:hidden;border-radius:12px;background:#e7e9e9}.private-landing .private-gallery-grid .private-gallery-slide img{display:block;width:100%;height:260px;object-fit:cover;border-radius:0}.private-gallery-pagination{display:none}@media(max-width:700px){.private-landing .private-gallery-grid{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:18px;padding:0 18px 8px;margin:0 -18px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.private-landing .private-gallery-grid::-webkit-scrollbar{display:none}.private-gallery-slide{flex:0 0 88%;scroll-snap-align:center;border-radius:14px}.private-landing .private-gallery-grid .private-gallery-slide img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.private-gallery-pagination{display:flex;justify-content:center;gap:8px;margin-top:16px}.private-gallery-pagination span{width:7px;height:7px;border-radius:50%;background:#b7c0c7}.private-gallery-pagination span.active{background:#153553}}

/* v140 — Private Cruise: footer CTA has a compact, centered desktop width. */
@media (min-width: 701px) {
  .private-landing .private-footer-booking > a.cta {
    display: inline-flex;
    width: min(380px, calc(100% - 36px));
    max-width: 380px;
    min-width: 0;
    margin: 0 auto;
    padding: 17px 24px;
    align-items: center;
    justify-content: center;
    text-align: center;
    box-sizing: border-box;
    white-space: nowrap;
  }
}

/* v143: align hero photo crop with the homepage (desktop and mobile). */
@media (min-width: 801px) {
  .private-landing .private-hero { background-position: center 56%; }
}
@media (min-width: 701px) and (max-width: 800px) {
  .private-landing .private-hero { background-position: 52% 58%; }
}
@media (max-width: 700px) {
  .private-landing .private-hero { background-position: 52% 58%; }
}
@media (max-width: 480px) {
  .private-landing .private-hero { background-size: cover; background-position: 38% top; }
}

/* v156 — unify mobile hero CTA sizing across Home, Private and Shared (EN). */
@media (max-width:700px){
  html[lang="en"] .hero-content .hero-offers,
  html[lang="en"] .private-landing .hero-content .hero-offers{
    width:min(204px,calc(100vw - 44px));max-width:100%;gap:12px;
  }
  html[lang="en"] .hero-offers > a.hero-offer,
  html[lang="en"] .hero-offers > a.hero-offer:link,
  html[lang="en"] .hero-offers > a.hero-offer:visited,
  html[lang="en"] .private-landing .hero-offers > a.hero-offer,
  html[lang="en"] .private-landing .hero-offers > a.hero-offer:link,
  html[lang="en"] .private-landing .hero-offers > a.hero-offer:visited{
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    width:100%;max-width:100%;min-width:0;height:62px;min-height:62px;
    box-sizing:border-box;padding:8px 23px 8px 8px;text-align:center;
  }
  html[lang="en"] .hero-offers > a.hero-offer span,
  html[lang="en"] .private-landing .hero-offers > a.hero-offer span{
    font-size:10.5px;line-height:1.16;letter-spacing:.012em;white-space:nowrap;
  }
  html[lang="en"] .hero-offers > a.hero-offer strong,
  html[lang="en"] .private-landing .hero-offers > a.hero-offer strong{
    font-size:10px;line-height:1.16;margin-top:3px;
  }
  html[lang="en"] .hero-offers > a.hero-offer::after,
  html[lang="en"] .private-landing .hero-offers > a.hero-offer::after{
    right:9px;top:50%;transform:translateY(-50%);font-size:15px;
  }
}


/* v159 localized cruise navigation */
.landing-lang-switch{display:inline-flex;gap:7px;align-items:center;margin-left:12px}.landing-lang-switch a{font-size:11px;letter-spacing:.03em;opacity:.85}.landing-lang-switch a:hover{opacity:1}@media(max-width:700px){.landing-lang-switch{display:none}}
