/* Applied only after enhancement, leaving single photos and no-JS layouts intact. */
.benefit-photo-slideshow{display:block!important;grid-template-columns:none!important;grid-template-rows:none!important;min-height:0!important;overflow:visible!important;max-width:100%;min-width:0}
.benefit-photo-slideshow>.photo-slide{display:block;margin:0!important;min-width:0;width:100%;max-width:100%;position:relative;grid-area:auto!important}
.benefit-photo-slideshow>.photo-slide[hidden]{display:none!important}
.benefit-photo-slideshow>.photo-slide img,.benefit-photo-slideshow>img.photo-slide{display:block;width:100%;height:300px!important;max-height:50vh;object-fit:contain!important;background:#edf2f6}
.benefit-photo-slideshow .gallery-caption{position:static!important;max-height:none!important;background:#f5f8fb!important;color:#25394c!important;overflow-wrap:anywhere;padding:8px}
.benefit-photo-slideshow .gallery-caption a{color:#175a9e!important}
.photo-slide-controls{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;padding:10px;background:#f5f8fb;color:#193c58;box-sizing:border-box;width:100%}
.photo-slide-controls button{min-width:44px;min-height:44px;max-width:100%;border:1px solid #b5c8db;border-radius:10px;background:white;color:#174c7f;font:inherit;padding:6px 12px;cursor:pointer}
.photo-slide-controls button:focus-visible{outline:3px solid #da9300;outline-offset:2px}
.photo-slide-count{font-variant-numeric:tabular-nums}
@media(max-width:420px){.benefit-photo-slideshow>.photo-slide img,.benefit-photo-slideshow>img.photo-slide{height:230px!important}.photo-slide-controls{gap:5px;padding:8px}.photo-slide-controls button{padding:5px 8px}}

/* List photos retain their own source and never cover the map button. */
.card-photo-gallery{overflow:hidden;min-width:0;background:#edf2f6}
.card-photo-gallery figure{margin:0;position:relative}
.card-photo-map{display:block!important;padding:0!important;margin:0!important;width:100%;border:0;background:transparent;cursor:pointer}
.card-photo-map img{display:block;width:100%;height:190px;object-fit:contain;background:#edf2f6}
.card-photo-gallery.benefit-photo-slideshow .photo-slide img{height:190px!important;max-height:none}
.card-photo-gallery .gallery-caption{position:static!important;overflow-wrap:anywhere;padding:7px;font-size:11px;line-height:1.5;background:#f5f8fb;color:#25394c}
.card-photo-gallery .gallery-caption a{color:#175a9e}
.card-photo-gallery .photo-slide-controls{padding:6px;gap:5px;font-size:11px}
.card-photo-gallery .photo-slide-controls button{font-size:11px;padding:4px 6px}
.photo-card-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0}
.photo-card-controls button{font:inherit;font-size:13px;min-width:44px;min-height:44px;border:1px solid #b5c8db;border-radius:10px;padding:6px 10px;background:#fff;color:#174c7f;cursor:pointer}
.photo-card-controls button:focus-visible,.card-photo-map:focus-visible{outline:3px solid #da9300;outline-offset:2px}
@media(max-width:650px){.card-photo-map img,.card-photo-gallery.benefit-photo-slideshow .photo-slide img{height:150px!important}}

.photo-card-controls[hidden]{display:none!important}

/* Keep travel photo rows horizontal at every screen size. */
.overseas-place-grid[data-photo-card-strip],.wt-cities[data-photo-card-strip],.wt-featured[data-photo-card-strip]{
 display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:hidden!important;
 min-width:0;max-width:100%;gap:12px;scroll-snap-type:x proximity;overscroll-behavior-inline:contain;
}
.overseas-place-grid[data-photo-card-strip]>article,.wt-cities[data-photo-card-strip]>article,.wt-featured[data-photo-card-strip]>article{
 flex:0 0 clamp(250px,75vw,330px)!important;min-width:0;max-width:330px;scroll-snap-align:start;
}
.overseas-place-grid[data-photo-card-strip]>.place-category-heading{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.benefit-photo-slideshow>.photo-slide{overflow:hidden}
.benefit-photo-slideshow>.photo-slide:not([hidden]) img,.benefit-photo-slideshow>img.photo-slide:not([hidden]){
 animation:benefit-photo-enter .5s ease-out;
}
@keyframes benefit-photo-enter{from{transform:translateX(100%);opacity:.6}to{transform:translateX(0);opacity:1}}
@media(prefers-reduced-motion:reduce){
 .benefit-photo-slideshow>.photo-slide:not([hidden]) img,.benefit-photo-slideshow>img.photo-slide:not([hidden]){animation:none}
}

.benefit-photo-slideshow{overflow-x:clip!important;overflow-y:visible!important}
