/* Home destinations reuse the existing Tour Card loop engine, controls and dots. */
#ws-homepage-draft main > section.destinations{padding:48px 0 30px}
#ws-homepage-draft .destinations .section-heading{margin-bottom:28px}
#ws-homepage-draft .destinations + .popular-section{padding-top:32px}
#ws-homepage-draft .destination-grid.ws-destination-carousel{
 display:block;--visible-tours:3;--tour-gap:20px;
}
#ws-homepage-draft .ws-destination-carousel .ws-destination-viewport{
 overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory;
}
#ws-homepage-draft .ws-destination-carousel .ws-destination-viewport::-webkit-scrollbar{display:none}
#ws-homepage-draft .ws-destination-carousel .ws-destination-track{
 display:flex;gap:var(--tour-gap);align-items:stretch;
}
#ws-homepage-draft .ws-destination-carousel .ws-destination-slide{
 flex:0 0 calc((100% - (var(--visible-tours) - 1)*var(--tour-gap))/var(--visible-tours));
 width:calc((100% - (var(--visible-tours) - 1)*var(--tour-gap))/var(--visible-tours));
 min-width:0;scroll-snap-align:start;
}
#ws-homepage-draft .destination-grid.ws-destination-carousel .ws-tcd-destination:nth-child(n){
 display:block;width:100%;
 min-width:0;min-height:0;margin:0;padding:0;grid-column:auto;
 color:#192334;background:transparent;isolation:auto;overflow:visible;
 border:0;border-radius:0;scroll-snap-align:start;
}
#ws-homepage-draft .destination-grid.ws-destination-carousel .ws-tcd-destination::after{display:none}
#ws-homepage-draft .destination-grid.ws-destination-carousel .ws-tcd-destination img{
 position:static;display:block;width:100%;height:auto;aspect-ratio:1.52;
 object-fit:cover;z-index:auto;border-radius:18px;transform:none;
}
#ws-homepage-draft .destination-grid.ws-destination-carousel .ws-tcd-destination:nth-child(n) h3{
 margin:12px 0 0;padding:0;color:#192334;font-size:21px;
 font-weight:500;line-height:1.3;letter-spacing:-.025em;
}
#ws-homepage-draft .destination-grid.ws-destination-carousel .ws-tcd-destination p{
 display:block;max-width:100%;margin:6px 0 0;color:#697785;
 font-size:13px;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
#ws-homepage-draft .destination-grid.ws-destination-carousel .ws-tcd-destination:focus-visible{
 outline:3px solid #0875bd;outline-offset:3px;box-shadow:none;
}
/* Inherit .loop-controls / .loop-dots / .loop-dot exactly from Home Tour Cards. */
#ws-homepage-draft .ws-destination-carousel .ws-destination-controls{margin-top:24px}
@media(min-width:701px) and (max-width:1100px){
 #ws-homepage-draft .destination-grid.ws-destination-carousel{--visible-tours:2;--tour-gap:22px}
}
@media(max-width:700px){
 #ws-homepage-draft main > section.destinations{padding:36px 0 26px}
 #ws-homepage-draft .destinations .section-heading{margin-bottom:24px}
 #ws-homepage-draft .destinations + .popular-section{padding-top:28px}
 #ws-homepage-draft .destination-grid.ws-destination-carousel{--visible-tours:1;--tour-gap:16px}
 #ws-homepage-draft .ws-destination-carousel .ws-destination-controls{margin-top:18px}
}

/* Enhanced mode uses the native transform loop, never native scrolling.
 * Keep scroll-snap only for the script-free overflow:auto fallback.
 * A clipped viewport cannot acquire a second scroll offset when slides rotate.
 */
#ws-homepage-draft .destination-grid.ws-destination-carousel.is-enhanced .ws-destination-viewport{
 overflow:clip;scroll-snap-type:none;overflow-anchor:none;
}
#ws-homepage-draft .ws-destination-carousel.is-enhanced :is(.ws-destination-track,.ws-destination-slide,.ws-tcd-destination){
 overflow-anchor:none;scroll-snap-align:none;
}
