.folder-gallery{width:100%;}
.folder-gallery__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.folder-gallery__item{display:block;overflow:hidden;border-radius:8px;background:#f1f1f1;aspect-ratio:4/3}
.folder-gallery__item img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .2s ease}
.folder-gallery__item:hover img{transform:scale(1.035)}
.folder-gallery__pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:7px;margin:30px 0 15px}
.folder-gallery__pagination a,.folder-gallery__pagination span{min-width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #d3d8df;border-radius:5px;text-decoration:none;color:#182548;padding:0 7px}
.folder-gallery__pagination .is-active{background:#182548;color:white;border-color:#182548}
.folder-gallery__lightbox[hidden]{display:none!important}
.folder-gallery__lightbox{position:fixed;inset:0;z-index:999999;background:rgba(0,0,0,.93);display:flex;align-items:center;justify-content:center;color:#fff}
.folder-gallery__lightbox figure{margin:0;display:flex;align-items:center;justify-content:center;flex-direction:column;max-width:calc(100vw - 120px);max-height:88vh}
.folder-gallery__lightbox figure img{display:block;max-width:100%;max-height:78vh;width:auto;height:auto;object-fit:contain}
.folder-gallery__lightbox figcaption{padding:12px;text-align:center;font-size:14px;color:#eee}
.folder-gallery__lightbox button{position:absolute;border:0;background:rgba(255,255,255,.12);color:white;font-size:30px;cursor:pointer;min-width:48px;min-height:48px;border-radius:5px}
.folder-gallery__close{top:18px;right:18px}
.folder-gallery__previous{left:16px;top:50%;transform:translateY(-50%)}
.folder-gallery__next{right:16px;top:50%;transform:translateY(-50%)}
.folder-gallery__counter{position:absolute;bottom:20px;left:0;right:0;text-align:center;color:#ddd;font-size:13px;pointer-events:none}
.folder-gallery__notice{padding:15px;border:1px solid #eee}
@media(max-width:767px){.folder-gallery__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.folder-gallery__lightbox figure{max-width:calc(100vw - 88px)}.folder-gallery__previous{left:4px}.folder-gallery__next{right:4px}.folder-gallery__lightbox button{min-width:38px}}
@media(max-width:440px){.folder-gallery__grid{grid-template-columns:1fr}}
.folder-gallery.is-loading .folder-gallery__grid { opacity: .5; pointer-events: none; }
.folder-gallery__ajax-error { color: #b42318; margin: 12px 0; }
