.rsmg-gallery { width:100%; }
.rsmg-masonry { columns:4 220px; column-gap:18px; }
.rsmg-masonry.rsmg-js { display:flex; align-items:flex-start; gap:18px; columns:auto; }
.rsmg-col { flex:1 1 0; min-width:0; display:flex; flex-direction:column; }
.rsmg-item { display:block; position:relative; width:100%; padding:0; margin:0 0 18px; border:0 !important; outline:0; background:transparent !important; break-inside:avoid; cursor:zoom-in; overflow:hidden; text-align:inherit; line-height:0; box-shadow:none !important; appearance:none; -webkit-appearance:none; }
.rsmg-item::after { content:none !important; display:none !important; }
.rsmg-item:hover, .rsmg-item:focus, .rsmg-item:focus-visible, .rsmg-item:active { border:0 !important; outline:0 !important; box-shadow:none !important; background:transparent !important; }
.rsmg-item img { display:block; width:100%; height:auto; max-width:100%; transition:transform .35s ease; }
.rsmg-item:hover img { transform:scale(1.025); }
.rsmg-item:focus img { transform:scale(1.025); }
.rsmg-caption { display:block; padding:10px 2px 0; font-size:13px; line-height:1.4; color:inherit; }
.rsmg-lightbox { position:fixed; inset:0; z-index:999999; display:none; align-items:center; justify-content:center; padding:48px 76px; background:rgba(10,10,10,.94); box-sizing:border-box; }
.rsmg-lightbox.is-open { display:flex; }
.rsmg-view { display:flex; flex-direction:column; align-items:center; justify-content:center; width:100%; height:100%; min-width:0; min-height:0; }
.rsmg-full { display:block; max-width:100%; max-height:calc(100% - 42px); width:auto; height:auto; object-fit:contain; margin:auto; box-shadow:0 8px 40px rgba(0,0,0,.25); }
.rsmg-counter { color:rgba(255,255,255,.65); font-size:12px; padding-top:5px; }
.rsmg-close,.rsmg-prev,.rsmg-next { position:absolute; display:flex; align-items:center; justify-content:center; border:0 !important; border-radius:0 !important; background:transparent !important; color:#fff !important; box-shadow:none !important; text-shadow:none; cursor:pointer; padding:0; min-width:0; min-height:0; font-family:Arial,sans-serif; font-weight:300; line-height:1; transition:opacity .2s ease; }
.rsmg-close:hover,.rsmg-prev:hover,.rsmg-next:hover { opacity:.65; }
.rsmg-close { top:17px; right:24px; width:42px; height:42px; font-size:38px; }
.rsmg-prev,.rsmg-next { top:50%; transform:translateY(-50%); width:48px; height:64px; font-size:56px; }
.rsmg-prev { left:17px; }
.rsmg-next { right:17px; }
body.rsmg-no-scroll { overflow:hidden; }
@media(max-width:700px) {
 .rsmg-masonry { columns:2 140px; column-gap:10px; }
 .rsmg-masonry.rsmg-js { gap:10px; columns:auto; }
 .rsmg-item { margin-bottom:10px; }
 .rsmg-lightbox { padding:55px 34px 45px; }
 .rsmg-prev,.rsmg-next { width:32px; height:50px; font-size:42px; }
 .rsmg-prev { left:1px; }
 .rsmg-next { right:1px; }
 .rsmg-close { right:8px; top:7px; }
 .rsmg-full { max-width:100%; max-height:calc(100% - 48px); }
}

.rsmg-item[hidden] { display:none !important; }
.rsmg-load-more-wrap { display:flex; justify-content:center; width:100%; padding:18px 0 8px; break-inside:avoid; }
.rsmg-load-more { appearance:none; border:1px solid currentColor; background:transparent; color:inherit; padding:13px 25px; font:inherit; font-size:13px; letter-spacing:.04em; cursor:pointer; transition:background .2s ease,color .2s ease,border-color .2s ease; }
.rsmg-load-more, .rsmg-load-more:focus, .rsmg-load-more:active { background:transparent; color:inherit; border:1px solid currentColor; box-shadow:none; outline:0; }
@media (hover:hover) and (pointer:fine) {
 .rsmg-load-more:hover { background:#171717; color:#fff; border-color:#171717; }
}
