/* Phone and tablet refinements, loaded after the visual theme. */
@media(max-width:1000px){
  .site-header #main-menu a[href="#experience"]{display:block}
  .enquiry-fields input{font-size:16px;min-height:48px}
  .gallery-thumbnails{overflow-x:auto;overscroll-behavior-x:contain}
  .gallery-thumbnails button{flex:0 0 72px;min-height:48px}
}
@media(max-width:640px){
  html{scroll-padding-top:20px}
  .site-header{height:76px;padding:0 20px;gap:10px}
  .site-header .brand-logo{width:104px}
  .header-enquire{min-height:44px;display:inline-flex;align-items:center;padding:9px 13px}
  .header-enquire span{margin-left:12px}
  .site-header #main-menu{top:68px;left:20px;right:20px}
  .hero{height:calc(90svh - 76px);min-height:480px;max-height:700px}
  .hero-content{inset:0;width:auto;max-width:none;display:contents}
  .hero h1{position:absolute;top:24px;left:7%;right:7%;max-width:none}
  .hero-content>.button{position:absolute;left:7%;bottom:82px}
  .hero-shade{background:linear-gradient(180deg,#10111480 0%,transparent 38%,transparent 72%,#101114b3 100%)}
  .hero h1{font-size:clamp(42px,12vw,54px);margin:0}
  .hero h1>span{white-space:normal}
  .hero-bottom a{min-height:44px}
  .section-wrap{padding:44px 20px}
  .collection .section-heading{gap:22px;margin-bottom:22px}
  .collection .section-heading h2{font-size:clamp(30px,8.5vw,38px)}
  .fleet-filters{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:10px}
  .fleet-filters input,.fleet-filters select{font-size:16px;padding-left:10px}
  .collection-rule{padding:14px 0 20px}
  .yacht-grid{gap:32px}
  .yacht-card h3{font-size:30px;overflow-wrap:anywhere}
  .card-bottom{flex-wrap:wrap;gap:8px}
  .card-bottom>a{min-height:44px;display:inline-flex;align-items:center;padding:6px 14px;border:1px solid #ccc}
  .fact-strip>div{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:0 9px}
  .fact-strip img{width:24px;height:24px;aspect-ratio:1}
  .fact-strip dt{font-size:10px;min-height:28px}
  .fact-strip dd{font-size:28px;margin:0}
  .fact-strip dd.unconfirmed{font-size:13px}
  .cabin-configuration p{font-size:13px}
  .chef-portrait{height:340px}
  .service-actions{align-items:stretch;gap:12px}
  .service-actions .button{width:100%}
  .chef-profile{min-height:44px;display:inline-flex;align-items:center}
  .service-card-bottom{flex-wrap:wrap;gap:8px 16px}
  .service-card-bottom>a{min-height:44px;display:inline-flex;align-items:center}
  .service-photo{aspect-ratio:1.5}
  .experience-copy{padding:30px 20px}
  .enquire-section h2{font-size:42px}
  .site-footer{padding:32px 20px max(28px,env(safe-area-inset-bottom))}
  dialog{width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;overscroll-behavior:contain}
  .dialog-close{position:sticky;top:max(8px,env(safe-area-inset-top));float:right;margin:8px 12px -56px 0;width:48px;height:48px;background:white;border:1px solid #ccc}
  .dialog-gallery{padding-top:max(64px,env(safe-area-inset-top))}
  .gallery-stage{padding-top:0}
  .gallery-arrow{width:46px;height:48px}
  .dialog-copy{padding:24px 20px max(32px,env(safe-area-inset-bottom))}
  .dialog-copy h2{font-size:34px;overflow-wrap:anywhere}
  .dialog-copy .fact-strip dt{font-size:10px}
  .dialog-copy .fact-strip dd{font-size:30px}
  .dialog-copy .fact-strip dd.unconfirmed{font-size:13px}
  .enquiry-details summary{min-height:48px;padding:10px 0}
  .enquiry-fields input{appearance:none;border-radius:0;min-height:50px}
  .equipment-grid{grid-template-columns:1fr 1fr}
  .equipment-grid li{font-size:13px;overflow-wrap:anywhere}
  .equipment-tabs button{flex:1;min-height:48px}
}
@media(max-width:350px){.fleet-filters{grid-template-columns:1fr}.site-header{padding:0 14px}.site-header .brand-logo{width:90px}.equipment-grid{grid-template-columns:1fr}}
@media(hover:none){.yacht-photo:hover img{transform:none}}
@media(max-width:850px){.dialog-layout{grid-template-columns:minmax(0,1fr)}.dialog-gallery,.dialog-copy{min-width:0}.gallery-thumbnails{max-width:100%}}

/* Give the complete yacht photograph the full width above its details. */
.dialog-layout{grid-template-columns:minmax(0,1fr)}
.dialog-gallery{padding:64px 0 0;justify-content:flex-start;background:#101114}
.gallery-stage{display:grid;grid-template-columns:60px 1fr 60px;align-items:center;gap:8px;padding:0 0 8px;background:#101114}
#gallery-image{grid-column:1/-1;grid-row:1;width:100%;height:auto;max-height:65svh;aspect-ratio:auto;object-fit:contain}
.gallery-arrow{position:static;transform:none;margin:auto;width:46px;height:48px}
.gallery-prev{grid-column:1;grid-row:2}
.gallery-next{grid-column:3;grid-row:2}
#gallery-count{position:static;grid-column:2;grid-row:2;transform:none;justify-self:center;background:transparent}
.gallery-thumbnails{padding:8px 16px 16px;margin:0;background:#f2f2f2}
.dialog-copy{padding-top:32px}
@media(max-width:640px){.dialog-gallery{padding-top:max(64px,env(safe-area-inset-top))}}
