/* UK Expo show gallery — loaded only by uk.html */
.uk-show-gallery-trigger{cursor:pointer}
.uk-show-gallery-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.uk-show-gallery-cta{display:inline-flex;align-items:center;gap:.6rem;margin-top:24px;padding:10px 14px;border:1px solid rgba(255,255,255,.38);background:rgba(5,5,5,.42);font-size:10px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#fff;transition:border-color .25s ease,background .25s ease}
.uk-show-gallery-trigger:hover .uk-show-gallery-cta,.uk-show-gallery-trigger:focus-visible .uk-show-gallery-cta{border-color:var(--accent);background:rgba(200,16,46,.22)}
.uk-show-gallery-cta svg{width:12px;height:12px;fill:currentColor}

#uk-show-gallery,#uk-classic-gallery{position:fixed;inset:0;z-index:100;display:none;background:rgba(2,2,2,.96);backdrop-filter:blur(8px)}
#uk-show-gallery.open,#uk-classic-gallery.open{display:block}
.uk-show-gallery-shell{height:100%;overflow-y:auto;overscroll-behavior:contain}
.uk-show-gallery-inner{width:min(1420px,calc(100% - 40px));margin:0 auto;padding:84px 0 90px}
.uk-show-gallery-close{position:fixed;right:clamp(18px,3vw,42px);top:clamp(18px,3vw,34px);z-index:104;width:46px;height:46px;border:1px solid rgba(255,255,255,.24);background:#080808;color:#fff;font-size:26px;line-height:1;transition:border-color .2s ease,color .2s ease}
.uk-show-gallery-close:hover,.uk-show-gallery-close:focus-visible{border-color:var(--accent);color:var(--accent)}
.uk-show-gallery-head{padding-right:70px;margin-bottom:34px}
.uk-show-gallery-head h2{margin-top:12px;font-size:clamp(48px,7vw,104px);line-height:.9}
.uk-show-gallery-head p{max-width:720px;margin-top:22px;color:rgba(255,255,255,.62);line-height:1.7}
.uk-show-gallery-video{position:relative;aspect-ratio:16/9;border:1px solid rgba(255,255,255,.16);background:#080808;box-shadow:0 30px 90px rgba(0,0,0,.55)}
.uk-show-gallery-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.uk-show-gallery-section{margin-top:64px}
.uk-show-gallery-label{display:flex;align-items:center;gap:18px;margin-bottom:18px;font-size:10px;font-weight:800;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.uk-show-gallery-label:after{content:"";height:1px;flex:1;background:rgba(255,255,255,.14)}
.uk-show-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start}
.uk-show-gallery-grid--portrait{grid-template-columns:repeat(2,minmax(0,1fr));max-width:940px}
.uk-show-gallery-item{position:relative;margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.12);background:#0b0b0b;cursor:zoom-in}
.uk-show-gallery-item img{display:block;width:100%;height:auto;transition:transform .55s cubic-bezier(.16,1,.3,1),filter .35s ease}
.uk-show-gallery-item:hover img{transform:scale(1.025);filter:brightness(1.06)}
.uk-show-gallery-item figcaption{position:absolute;left:0;right:0;bottom:0;padding:34px 16px 13px;background:linear-gradient(transparent,rgba(0,0,0,.88));font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.7);opacity:0;transition:opacity .25s ease}
.uk-show-gallery-item:hover figcaption,.uk-show-gallery-item:focus-visible figcaption{opacity:1}
.uk-show-gallery-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

#uk-show-lightbox,#uk-classic-lightbox{position:fixed;inset:0;z-index:130;display:none;align-items:center;justify-content:center;padding:3vh 3vw;background:rgba(0,0,0,.97);cursor:zoom-out}
#uk-show-lightbox.open,#uk-classic-lightbox.open{display:flex}
#uk-show-lightbox img,#uk-classic-lightbox img{max-width:100%;max-height:91vh;object-fit:contain;box-shadow:0 40px 120px rgba(0,0,0,.8)}
#uk-show-lightbox span,#uk-classic-lightbox span{position:absolute;left:0;right:0;bottom:2vh;text-align:center;font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.5)}

@media(max-width:900px){
  .uk-show-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .uk-show-gallery-inner{padding-top:72px}
}
@media(max-width:600px){
  .uk-show-gallery-inner{width:min(100% - 24px,1420px);padding:68px 0 60px}
  .uk-show-gallery-head{padding-right:48px}
  .uk-show-gallery-head h2{font-size:clamp(43px,14vw,64px)}
  .uk-show-gallery-section{margin-top:44px}
  .uk-show-gallery-grid,.uk-show-gallery-grid--portrait{grid-template-columns:1fr;gap:10px;max-width:none}
  .uk-show-gallery-close{width:42px;height:42px;right:12px;top:12px}
  .uk-show-gallery-item figcaption{opacity:1}
}
@media(prefers-reduced-motion:reduce){.uk-show-gallery-item img,.uk-show-gallery-cta{transition:none}}
