/* Keep the fleet visible above the introduction, independently of translated copy. */
.page-hero.services-hero { display:block; min-height:0; padding-top:70px; background:var(--forest); }
.services-hero::after { content:none; }
.services-hero__visual { position:relative; height:clamp(300px, 29vw, 440px); overflow:hidden; }
.services-hero__visual img { object-position:50% 57%; }
.services-hero .inner { padding-block:32px 48px; }
.services-hero .crumb { margin-bottom:20px; }
.services-hero h1 { max-width:none; font-size:clamp(40px, 5vw, 72px); }
.services-hero .sub { max-width:66ch; margin-top:18px; }
@media (max-width:600px) {
  .page-hero.services-hero { padding-top:68px; }
  .services-hero__visual { height:auto; aspect-ratio:4/3; }
  .services-hero__visual img { object-position:center; }
  .services-hero .inner { padding-block:26px 36px; }
  .services-hero h1 { font-size:clamp(32px, 10vw, 40px); }
  .services-hero .crumb { font-size:12px; flex-wrap:wrap; gap:6px 10px; }
}

/* Shared by the team and on-board dining galleries. Native swipe, no autoplay. */
.photo-gallery { min-width:0; margin:0; background:var(--forest-2, #102923); }
.photo-gallery__track {
  display:flex;
  width:100%;
  aspect-ratio:4/3;
  overflow-x:auto;
  overscroll-behavior-x:contain;
  scroll-snap-type:x mandatory;
  scrollbar-width:thin;
  scrollbar-color:var(--ember-2, #e49b71) transparent;
}
.photo-gallery__slide { position:relative; flex:0 0 100%; min-width:0; align-self:stretch; scroll-snap-align:start; }
.photo-gallery .photo-gallery__slide img {
  position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:contain;
}
.photo-gallery__controls { display:flex; align-items:center; gap:10px; padding:12px 16px; }
.photo-gallery__controls[hidden] { display:none; }
.photo-gallery__count { margin-right:auto; color:var(--on-dark-soft, #c1cec9); font-size:12px; font-variant-numeric:tabular-nums; letter-spacing:.08em; }
.photo-gallery__controls button {
  display:grid; place-items:center; width:44px; height:44px; padding:0;
  border:1px solid rgba(255,255,255,.24); border-radius:50%;
  background:transparent; color:var(--on-dark, #fff); cursor:pointer;
  transition:background .18s, border-color .18s;
}
.photo-gallery__controls button:hover:not(:disabled) { background:rgba(255,255,255,.09); border-color:var(--ember-2, #e49b71); }
.photo-gallery__controls button:disabled { opacity:.3; cursor:default; }
.photo-gallery__controls button:focus-visible,
.photo-gallery__track:focus-visible { outline:2px solid var(--ember-2, #e49b71); outline-offset:-3px; }
.photo-gallery__controls svg { width:18px; height:18px; }
.about-team { min-height:0; align-items:center; background:var(--forest-2); }
.about-team .about-team-media { min-height:0; }
.about-team-media.photo-gallery::after { content:none; }
.atlas-yacht-details .photo-gallery__track { aspect-ratio:3/2; }
.atlas-yacht-details .photo-gallery__slide img { border-radius:0; }
.atlas-yacht-details .photo-gallery figcaption { padding:0 16px 12px; margin:0; }
.photo-gallery__slide.is-unavailable { display:grid; place-items:center; padding:24px; }
.photo-gallery__slide.is-unavailable img { height:auto; color:var(--on-dark-soft); text-align:center; }
.svc-gallery .thumb { padding:0; border:0; background:transparent; }
.svc-gallery .thumb:focus-visible { outline:2px solid var(--ember-2); outline-offset:3px; }
#sup .svc-gallery { grid-template-columns:repeat(3, minmax(0, 1fr)); }
@media (prefers-reduced-motion:reduce) { .photo-gallery__controls button { transition:none; } }
