.gallery .site-gallery-link{display:block;border-radius:.375rem;cursor:zoom-in}
.gallery .site-gallery-link:focus-visible{outline:3px solid var(--bs-primary);outline-offset:4px}
.public-gallery-modal .modal-dialog{width:calc(100% - 2rem);max-width:800px;margin:1.5rem auto;min-height:calc(100% - 3rem)}
.public-gallery-modal .modal-content{overflow:hidden;max-height:85vh;max-height:85dvh}
.public-gallery-modal .modal-title{font-size:1.1rem}
.public-gallery-modal .modal-body{padding:1rem;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.public-gallery-stage{position:relative;display:flex;flex:1 1 auto;min-height:0;align-items:center;justify-content:center;height:min(55vh,500px);height:min(55dvh,500px);overflow:hidden;border-radius:.375rem;background:#f1f3f5;touch-action:pan-y}
.public-gallery-stage>img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.public-gallery-status{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);max-width:90%;padding:.75rem 1rem;border-radius:.375rem;background:#fffef5f2;box-shadow:0 .125rem .5rem #0002;text-align:center;color:#343a40}
.public-gallery-status[hidden]{display:none}
.public-gallery-caption{margin:.75rem 0 0;max-height:4.5em;overflow:auto;overflow-wrap:anywhere;color:var(--bs-secondary-color,#6c757d);font-size:.9375rem}
.public-gallery-modal .modal-footer{justify-content:center;gap:.75rem}
.public-gallery-modal .btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:.4rem}
.public-gallery-modal .btn-close{padding:.75rem;margin:-.25rem -.25rem -.25rem auto}
.public-gallery-modal svg{width:1.1em;height:1.1em;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.public-gallery-navigation{display:flex;align-items:center;justify-content:center;gap:.5rem}
.public-gallery-counter{font-size:.875rem;min-width:4.5em;text-align:center;white-space:nowrap;font-variant-numeric:tabular-nums}
body.public-gallery-open #cookieAlert{z-index:1040}
@media(min-width:992px){
 .public-gallery-modal .modal-dialog{width:88%;max-width:1040px}
 .public-gallery-stage{height:min(70vh,800px);height:min(70dvh,800px)}
}
@media(max-width:575.98px){
 .public-gallery-modal .modal-body{padding:.75rem}
 .public-gallery-stage{height:min(50vh,420px);height:min(50dvh,420px)}
 .public-gallery-modal .modal-footer{padding:.75rem;justify-content:center}
 .public-gallery-navigation .btn{min-width:44px}
 .public-gallery-caption{flex-shrink:0}
}
@media(prefers-reduced-motion:reduce){.gallery img{transition:none}}
