.rpg-gallery{width:100%;max-width:1600px;margin:0 auto;font-family:inherit}.rpg-gallery *{box-sizing:border-box}.rpg-toolbar{display:grid;grid-template-columns:minmax(280px,1fr) minmax(240px,360px);gap:20px;align-items:end;margin-bottom:24px}.rpg-year-filter{display:flex;flex-direction:column;gap:8px}.rpg-filter-label{font-size:13px;font-weight:700}.rpg-year-options{display:flex;flex-wrap:wrap;gap:8px}.rpg-year{appearance:none;border:1px solid #d7dbe0;background:#fff;color:inherit;border-radius:8px;min-width:64px;min-height:42px;padding:8px 16px;font:inherit;font-size:14px;font-weight:600;line-height:1;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease}.rpg-year:hover{border-color:var(--rpg-accent)}.rpg-year.is-active{background:var(--rpg-accent);border-color:var(--rpg-accent);color:#fff;box-shadow:0 2px 8px rgb(0 0 0 / .08)}.rpg-year:focus-visible{outline:2px solid var(--rpg-accent);outline-offset:2px}.rpg-control{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700}.rpg-search-control{min-width:0}.rpg-control select,.rpg-control input{min-height:46px;width:100%;padding:10px 13px;border:1px solid #d7dbe0;border-radius:8px;background:#fff;font:inherit;font-weight:400;outline:0}.rpg-control select:focus,.rpg-control input:focus{border-color:var(--rpg-accent);box-shadow:0 0 0 3px rgb(0 0 0 / .06)}.rpg-results{font-size:13px;opacity:.65;margin:-8px 0 15px}.rpg-grid{display:grid;grid-template-columns:repeat(var(--rpg-desktop),minmax(0,1fr));gap:var(--rpg-gap)}.rpg-card-button{position:relative;width:100%;aspect-ratio:var(--rpg-aspect);padding:0;border:0;border-radius:var(--rpg-radius);overflow:hidden;cursor:pointer;background:#eee;box-shadow:0 5px 18px rgb(0 0 0 / .08)}.rpg-card-button img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;transition:none;background:#eee}.rpg-hover{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;gap:4px;padding:20px 16px;color:#fff;text-align:left;background:linear-gradient(to top,rgba(0,0,0,var(--rpg-hover-alpha)),#fff0);opacity:0;transition:opacity .25s ease}.rpg-hover strong{font-size:var(--rpg-title-size);line-height:1.25}.rpg-hover span{font-size:var(--rpg-location-size);line-height:1.3}.rpg-card-button:hover img,.rpg-card-button:focus-visible img{transform:none}.rpg-card-button:hover .rpg-hover,.rpg-card-button:focus-visible .rpg-hover{opacity:1}.rpg-no-results,.rpg-empty{padding:40px 20px;text-align:center;border:1px dashed #ccd1d6;border-radius:10px}.rpg-lightbox[hidden]{display:none}.rpg-lightbox{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:22px}.rpg-backdrop{position:absolute;inset:0;background:rgb(0 0 0 / .78)}.rpg-dialog{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);width:min(1180px,100%);max-height:calc(100vh - 44px);overflow:auto;border-radius:var(--rpg-radius);background:var(--rpg-lightbox-bg);box-shadow:0 20px 70px rgb(0 0 0 / .4)}.rpg-image-wrap{background:#111;min-height:300px;height:min(72vh,760px);display:flex;align-items:center;justify-content:center;overflow:hidden}.rpg-lightbox-image{width:100%;height:100%;max-height:none;max-width:100%;object-fit:contain;object-position:center;display:block}.rpg-prev,.rpg-next{position:absolute;z-index:5;top:50%;transform:translateY(-50%);width:46px;height:46px;border:0;border-radius:50%;background:rgb(0 0 0 / .68);color:#fff;font-size:30px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgb(0 0 0 / .22)}.rpg-prev{left:14px}.rpg-next{right:14px}.rpg-prev:hover,.rpg-next:hover{background:rgb(0 0 0 / .85)}.rpg-prev:disabled,.rpg-next:disabled{opacity:.35;cursor:default}.rpg-slide-counter{position:absolute;z-index:5;left:50%;bottom:12px;transform:translateX(-50%);padding:5px 10px;border-radius:999px;background:rgb(0 0 0 / .62);color:#fff;font-size:12px;line-height:1;font-weight:700;pointer-events:none}.rpg-details{padding:32px 28px;overflow:auto;position:relative}.rpg-detail{padding:15px 0;border-top:1px solid rgb(0 0 0 / .1);line-height:1.45}.rpg-detail small{display:block;text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:800;opacity:.6;margin-bottom:5px}.rpg-close{position:absolute;right:10px;top:10px;z-index:4;width:40px;height:40px;border:0;border-radius:50%;background:rgb(0 0 0 / .62);color:#fff;font-size:28px;line-height:1;cursor:pointer}.rpg-modal-open{overflow:hidden}@media(max-width:1100px){.rpg-grid{grid-template-columns:repeat(var(--rpg-tablet),minmax(0,1fr))}}@media(max-width:700px){.rpg-toolbar{grid-template-columns:1fr}.rpg-year-options{gap:6px}.rpg-year{min-width:58px;padding:8px 13px}.rpg-grid{grid-template-columns:repeat(var(--rpg-mobile),minmax(0,1fr));gap:14px}.rpg-hover{opacity:1}.rpg-dialog{display:block;max-height:calc(100vh - 20px)}.rpg-image-wrap{min-height:220px;height:45vh;max-height:48vh}.rpg-lightbox-image{max-height:none}.rpg-details{padding:22px 20px 28px}}:root{--rpg-desktop:5;--rpg-tablet:3;--rpg-mobile:1;--rpg-gap:15px;--rpg-radius:10px;--rpg-aspect:4/3;--rpg-hover:#808080;--rpg-hover-alpha:0.78;--rpg-title-size:14px;--rpg-location-size:13px;--rpg-lightbox-bg:#ffffff;--rpg-accent:#222222}