/* Posidelki Gallery — isolated public styles, version 1. */
.gallery-hero{position:relative;overflow:hidden;padding:88px 0 72px;background:linear-gradient(117deg,#f1f7e9 0%,#fbfcf8 62%,#eaf1f3 100%)}
.gallery-hero:after{content:"";position:absolute;right:-80px;top:-120px;width:440px;height:440px;border-radius:50%;background:radial-gradient(circle,rgba(139,171,72,.18),transparent 68%);pointer-events:none}
.gallery-hero-inner{position:relative;z-index:1}.gallery-hero .eyebrow{display:block;margin-bottom:14px}.gallery-hero h1{color:var(--navy,#253e5c);font-size:clamp(2.7rem,6vw,5rem);line-height:1.08;letter-spacing:-.045em;margin:0 0 16px}.gallery-hero p{max-width:710px;font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.7;color:#566879;margin:0}.gallery-hero-album{padding:54px 0 62px}.gallery-hero-album h1{font-size:clamp(2.2rem,5vw,4rem)}.gallery-back{display:inline-block;margin:0 0 23px;color:var(--navy,#253e5c);font-weight:600;text-decoration:none}.gallery-back:hover{text-decoration:underline}
.gallery-section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:0 0 26px}.gallery-section-heading h2{margin:5px 0 0;color:var(--navy,#253e5c)}.gallery-section-heading p{margin:0;color:#78838d}.gallery-albums-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.gallery-album-card{display:block;overflow:hidden;border-radius:22px;background:#fff;border:1px solid rgba(37,62,92,.07);box-shadow:0 13px 36px rgba(37,62,92,.07);text-decoration:none;color:inherit;transition:transform .22s,box-shadow .22s}.gallery-album-card:hover{transform:translateY(-5px);box-shadow:0 20px 50px rgba(37,62,92,.13)}.gallery-album-cover{aspect-ratio:4/3;position:relative;overflow:hidden;background:#e7eee1}.gallery-album-cover img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}.gallery-album-card:hover .gallery-album-cover img{transform:scale(1.055)}.gallery-album-placeholder{width:100%;height:100%;display:grid;place-items:center;font-size:5rem;color:#93ae80}.gallery-album-count{position:absolute;bottom:14px;left:15px;background:rgba(20,38,56,.7);backdrop-filter:blur(8px);padding:7px 13px;border-radius:30px;color:#fff;font-size:12px;font-weight:600}.gallery-album-copy{display:flex;flex-direction:column;gap:10px;padding:23px}.gallery-album-copy strong{font-size:1.3rem;color:var(--navy,#253e5c);line-height:1.3}.gallery-album-copy small{font-size:14px;color:#687584;line-height:1.5;min-height:1.5em}.gallery-album-link{font-size:14px;font-weight:700;color:#648d31;margin-top:2px}.gallery-album-link span{display:inline-block;transition:transform .2s}.gallery-album-card:hover .gallery-album-link span{transform:translateX(5px)}
.gallery-photos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.gallery-home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.gallery-photo{display:block;position:relative;overflow:hidden;aspect-ratio:4/3;border-radius:16px;background:#dfe8e1;isolation:isolate;cursor:zoom-in}.gallery-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s,filter .35s}.gallery-photo:hover img{transform:scale(1.065);filter:brightness(.84)}.gallery-photo:focus-visible{outline:3px solid var(--green,#8bab48);outline-offset:3px}.gallery-photo-caption{position:absolute;inset:auto 0 0;padding:36px 16px 16px;background:linear-gradient(transparent,rgba(9,21,33,.68));color:#fff;font-size:13px;font-weight:500;line-height:1.4;opacity:0;transition:opacity .2s}.gallery-photo:hover .gallery-photo-caption,.gallery-photo:focus-visible .gallery-photo-caption{opacity:1}.gallery-photo-zoom{position:absolute;right:13px;top:13px;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.93);color:#273e55;font-size:21px;opacity:0;transform:translateY(4px);transition:opacity .2s,transform .2s}.gallery-photo:hover .gallery-photo-zoom,.gallery-photo:focus-visible .gallery-photo-zoom{opacity:1;transform:none}.gallery-home-bottom{text-align:right;margin-top:20px}.gallery-empty{border:1px dashed #c9d8c4;border-radius:18px;padding:54px 24px;text-align:center;color:#657786;background:#f9fcf6}.gallery-pagination,.gallery-end-link{display:flex;gap:8px;justify-content:center;align-items:center;margin-top:32px;flex-wrap:wrap}.gallery-pagination a{display:grid;place-items:center;min-width:40px;height:40px;border:1px solid #dbe3df;border-radius:12px;color:var(--navy,#253e5c);text-decoration:none}.gallery-pagination a.is-current{background:var(--navy,#253e5c);border-color:var(--navy,#253e5c);color:white}.gallery-end-link a{color:var(--navy,#253e5c);font-weight:700;text-decoration:none}
/* Viewer is a native modal dialog; remains independent of site.js legacy lightbox. */
.gallery-viewer{position:fixed;inset:0;max-width:none;max-height:none;width:100vw;height:100dvh;margin:0;padding:0;border:0;background:#111820;color:#fff;overflow:hidden}.gallery-viewer::backdrop{background:#111820}.gallery-viewer-top{position:absolute;top:0;left:0;right:0;z-index:5;display:flex;align-items:center;gap:8px;justify-content:flex-end;padding:15px clamp(10px,2vw,30px);background:linear-gradient(to bottom,rgba(0,0,0,.5),transparent)}.gallery-viewer-count{font-size:14px;color:#e4e8ec;margin-right:auto;letter-spacing:.04em}.gallery-viewer-btn{width:44px;height:44px;border:0;border-radius:50%;display:grid;place-items:center;font-size:24px;color:#fff;background:rgba(255,255,255,.13);cursor:pointer;transition:background .18s}.gallery-viewer-btn:hover{background:rgba(255,255,255,.26)}.gallery-viewer-btn:focus-visible{outline:2px solid #fff;outline-offset:3px}.gallery-viewer-stage{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;touch-action:none;overflow:hidden}.gallery-viewer-image{display:block;max-width:calc(100vw - 116px);max-height:calc(100dvh - 110px);width:auto;height:auto;object-fit:contain;user-select:none;-webkit-user-drag:none;will-change:transform;transform-origin:center;transition:transform .18s}.gallery-viewer-image.is-dragging{transition:none}.gallery-viewer-direction{position:absolute;top:50%;z-index:4;transform:translateY(-50%)}.gallery-viewer-prev{left:16px}.gallery-viewer-next{right:16px}.gallery-viewer-caption{position:absolute;left:70px;right:70px;bottom:0;z-index:3;text-align:center;padding:15px 18px 20px;background:linear-gradient(transparent,rgba(0,0,0,.46));font-size:14px;line-height:1.5;color:#f5f6f6;pointer-events:none}.gallery-viewer[open]{display:block}
@media(max-width:1000px){.gallery-albums-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-photos{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.gallery-hero{padding:54px 0 48px}.gallery-albums-grid{grid-template-columns:1fr;gap:17px}.gallery-photos,.gallery-home-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.gallery-photo{border-radius:10px}.gallery-section-heading{display:block}.gallery-section-heading p{margin-top:8px}.gallery-viewer-image{max-width:100vw;max-height:calc(100dvh - 138px)}.gallery-viewer-direction{top:auto;bottom:58px;transform:none}.gallery-viewer-btn{width:40px;height:40px}.gallery-viewer-prev{left:12px}.gallery-viewer-next{right:12px}.gallery-viewer-caption{bottom:14px;left:60px;right:60px;padding:8px;background:none}.gallery-home-head{align-items:start}}
@media(prefers-reduced-motion:reduce){.gallery-photo img,.gallery-album-cover img,.gallery-album-card,.gallery-viewer-image{transition:none!important}}
