/* Bali photo groups preserve full photographs; stack on small screens. */
.bali-photos{margin:32px 0;}
.bali-photo-grid{display:grid;gap:12px;align-items:center;}
.bali-photo-grid img{display:block;width:100%;height:auto;border-radius:12px;}
.bali-two .bali-photo-grid,.bali-lunch-pair .bali-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
.bali-three .bali-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
.bali-five .bali-photo-grid{grid-template-columns:repeat(6,minmax(0,1fr));}
.bali-five img{grid-column:span 2;}
.bali-five img:nth-child(4){grid-column:2 / span 2;}
.bali-detail{max-width:390px;margin:32px auto;}
.bali-photos .caption{line-height:1.6;}
@media(max-width:680px){
 .bali-three .bali-photo-grid,.bali-five .bali-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
 .bali-three img:first-child{grid-column:1 / -1;max-width:360px;justify-self:center;}
 .bali-five img,.bali-five img:nth-child(4){grid-column:auto;}
 .bali-five img:last-child{grid-column:1 / -1;width:calc(50% - 6px);justify-self:center;}
 .bali-two .bali-photo-grid,.bali-lunch-pair .bali-photo-grid{grid-template-columns:1fr;}
}

/* Match the pool photographs on desktop without stretching either image. */
.bali-pool-pair img{aspect-ratio:3 / 4;object-fit:cover;object-position:center;}
.bali-gallery-link{text-align:center;margin:0 0 60px;}
@media(max-width:680px){.bali-pool-pair img{aspect-ratio:auto;object-fit:contain;}}
