.content-body.gallery-source-pending{position:relative;min-height:320px;color:transparent!important}
.content-body.gallery-source-pending>*{visibility:hidden!important}
.content-body.gallery-source-pending::before{content:"Načítáme fotogalerii…";position:absolute;inset:0 auto auto 0;display:grid;width:min(100%,760px);min-height:180px;place-items:center;visibility:visible;border:1px solid #e3d8c5;border-radius:16px;background:linear-gradient(110deg,#f4ede2 8%,#fbf8f2 24%,#f4ede2 40%);background-size:220% 100%;color:#786b5b;font-size:.86rem;font-weight:750;letter-spacing:.02em;animation:gallery-loading 1.6s linear infinite}
@keyframes gallery-loading{to{background-position-x:-220%}}
.content-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:18px;margin:24px 0 34px}
.content-body .gallery-card{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;border:1px solid #e3d8c5;border-radius:16px;background:#ece4d7;box-shadow:0 8px 24px rgba(41,35,25,.09);color:#fff;text-decoration:none;isolation:isolate}
.content-body .gallery-card::after{content:"Zvětšit";position:absolute;top:12px;right:12px;padding:7px 11px;border:1px solid rgba(255,255,255,.5);border-radius:999px;background:rgba(24,22,18,.7);color:#fff;font-size:.75rem;font-weight:750;line-height:1;letter-spacing:.02em;opacity:0;transform:translateY(-5px);transition:opacity .2s ease,transform .2s ease;backdrop-filter:blur(8px)}
.content-body .gallery-card::before{content:"";position:absolute;z-index:1;inset:38% 0 0;background:linear-gradient(180deg,transparent,rgba(15,13,10,.82));pointer-events:none}
.content-body .gallery-card img{display:block;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;border:0!important;transition:transform .45s cubic-bezier(.2,.7,.2,1),filter .2s ease}
.content-body .gallery-card__caption{position:absolute;z-index:2;right:16px;bottom:14px;left:16px;color:#fff;font-size:.9rem;font-weight:700;line-height:1.28;text-shadow:0 1px 5px rgba(0,0,0,.45)}
.content-body .gallery-card:hover,.content-body .gallery-card:focus-visible{border-color:#bd5a35;box-shadow:0 14px 34px rgba(75,43,27,.17);outline:0}
.content-body .gallery-card:hover::after,.content-body .gallery-card:focus-visible::after{opacity:1;transform:none}
.content-body .gallery-card:hover img,.content-body .gallery-card:focus-visible img{transform:scale(1.045);filter:saturate(1.06)}
.gallery-open{overflow:hidden}
.gallery-lightbox[hidden]{display:none}
.gallery-lightbox{position:fixed;z-index:1000;inset:0;display:grid;grid-template:64px minmax(0,1fr) 100px/86px minmax(0,1fr) 86px;background:rgba(14,13,11,.96);color:#fff;overscroll-behavior:contain}
.gallery-lightbox__top{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;padding:10px 18px 8px;border-bottom:1px solid rgba(255,255,255,.1)}
.gallery-lightbox__eyebrow{color:#cabdac;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.gallery-lightbox__name{max-width:min(72vw,900px);margin-top:2px;overflow:hidden;font-size:.98rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
.gallery-lightbox button{border:0;color:#fff;cursor:pointer}
.gallery-lightbox__close{display:grid;width:42px;height:42px;place-items:center;border-radius:50%;background:rgba(255,255,255,.12);font-size:1.8rem;line-height:1;transition:background .2s,transform .2s}
.gallery-lightbox__close:hover,.gallery-lightbox__close:focus-visible{background:#b94e28;outline:2px solid #fff;outline-offset:2px;transform:rotate(4deg)}
.gallery-lightbox__stage{grid-column:2;display:grid;min-width:0;min-height:0;padding:18px;place-items:center}
.gallery-lightbox__figure{display:grid;width:100%;height:100%;margin:0;grid-template-rows:minmax(0,1fr) auto;place-items:center}
.gallery-lightbox__image{display:block;max-width:100%;max-height:calc(100vh - 230px);border-radius:10px;box-shadow:0 18px 60px rgba(0,0,0,.45);object-fit:contain}
.gallery-lightbox__caption{display:flex;width:min(100%,1100px);align-items:center;justify-content:space-between;gap:20px;padding-top:12px;color:#f5f0e8;font-size:.92rem}
.gallery-lightbox__counter{flex:0 0 auto;color:#cabdac;font-variant-numeric:tabular-nums}
.gallery-lightbox__nav{align-self:center;width:52px;height:68px;border-radius:14px;background:rgba(255,255,255,.1);font-size:2.8rem;line-height:1;transition:background .2s,transform .2s}
.gallery-lightbox__nav:hover,.gallery-lightbox__nav:focus-visible{background:#b94e28;outline:2px solid #fff;outline-offset:2px;transform:scale(1.04)}
.gallery-lightbox__prev{grid-column:1;grid-row:2;justify-self:center}
.gallery-lightbox__next{grid-column:3;grid-row:2;justify-self:center}
.gallery-lightbox__thumbs{grid-column:1/-1;display:flex;gap:9px;align-items:center;padding:10px 18px 16px;overflow-x:auto;border-top:1px solid rgba(255,255,255,.1);scrollbar-color:#b94e28 rgba(255,255,255,.08)}
.gallery-lightbox__thumb{flex:0 0 72px;width:72px;height:72px;padding:0;overflow:hidden;border:2px solid transparent!important;border-radius:9px;background:#24211c;opacity:.55;transition:opacity .2s,border-color .2s,transform .2s}
.gallery-lightbox__thumb img{display:block;width:100%;height:100%;object-fit:cover}
.gallery-lightbox__thumb:hover,.gallery-lightbox__thumb:focus-visible{opacity:.9;outline:0;transform:translateY(-2px)}
.gallery-lightbox__thumb.is-active{border-color:#d9663d!important;opacity:1}
@media(max-width:720px){.content-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.content-body .gallery-card{border-radius:11px}.content-body .gallery-card__caption{right:10px;bottom:9px;left:10px;font-size:.78rem}.content-body .gallery-card::after{display:none}.gallery-lightbox{grid-template:58px minmax(0,1fr) 82px/52px minmax(0,1fr) 52px}.gallery-lightbox__top{padding-inline:12px}.gallery-lightbox__stage{grid-column:1/-1;padding:10px 12px 4px}.gallery-lightbox__image{max-height:calc(100vh - 208px)}.gallery-lightbox__caption{padding:9px 3px 0;font-size:.82rem}.gallery-lightbox__nav{z-index:2;width:42px;height:56px;background:rgba(0,0,0,.58);font-size:2.2rem}.gallery-lightbox__prev{grid-column:1;justify-self:end}.gallery-lightbox__next{grid-column:3;justify-self:start}.gallery-lightbox__thumbs{padding:8px 10px 10px}.gallery-lightbox__thumb{flex-basis:58px;width:58px;height:58px}}
@media(max-width:410px){.content-gallery{grid-template-columns:1fr}.content-body .gallery-card{aspect-ratio:16/10}}
@media(prefers-reduced-motion:reduce){.gallery-source-pending::before{animation:none}.gallery-card img,.gallery-card::after,.gallery-lightbox button,.gallery-lightbox__thumb{transition:none!important}}
