/* Excursion gallery: real 768 x 482 files, independent of archived plugins. */
.excursion-photo-set{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%;max-width:1140px;margin:12px auto 24px;box-sizing:border-box;clear:both}
.excursion-photo-set>a{display:block;overflow:hidden;aspect-ratio:768/482;line-height:0;background:#eee;cursor:zoom-in}
.excursion-photo-set img.excursion-photo{width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;margin:0!important}
@media(max-width:899px){.excursion-photo-set{grid-template-columns:repeat(2,minmax(0,1fr))}}
.excursion-photo-dialog{box-sizing:border-box;width:816px;max-width:calc(100vw - 24px);padding:24px 24px 12px;border:0;border-radius:4px;background:#111;color:#fff;overflow:visible}
.excursion-photo-dialog::backdrop{background:rgba(0,0,0,.86)}
.excursion-photo-dialog img{display:block;width:768px;max-width:100%;height:auto;max-height:75vh;object-fit:contain;margin:0 auto}
.excursion-photo-dialog .photo-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;font:14px Arial,sans-serif}
.excursion-photo-dialog button{background:#106b9d;color:#fff;border:0;border-radius:4px;cursor:pointer;line-height:1;padding:10px 16px;font:22px Arial,sans-serif}
.excursion-photo-dialog .photo-close{position:absolute;top:-18px;right:-10px;border-radius:50%;background:#fff;color:#222;width:36px;height:36px;padding:0;font-size:28px}
@media(max-width:600px){.excursion-photo-dialog{padding:12px 12px 8px}.excursion-photo-dialog .photo-controls{font-size:12px}}
