/* Native static-gallery behavior over the preserved theme. */
.static-gallery .gallery-image { display:block; width:100%; height:auto; opacity:1; }
.static-gallery .gallery-image { transition:opacity 700ms cubic-bezier(.2,.7,.2,1), transform 700ms cubic-bezier(.2,.7,.2,1); }
.static-gallery .gallery-image.reveal-pending { opacity:0; transform:translateY(24px); }
.gallery-pagination[hidden], .fullscreen-toggle[hidden] { display:none; }
.gallery-load-status { padding:30px 0; text-align:center; color:#777; font-size:12px; letter-spacing:.04em; }
.photo-status { font-size:12px; align-self:center; color:#aaa; }
.fullscreen-toggle, .photo-info-toggle { color:inherit; background:none; border:1px solid #555; border-radius:4px; padding:8px 14px; font:inherit; cursor:pointer; }
.photo-view nav { align-items:center; flex-wrap:wrap; }
.photo-view nav a, .fullscreen-toggle, .photo-info-toggle { min-height:44px; box-sizing:border-box; }
.photo-view:not(.show-photo-info) main > p { display:none; }
.photo-view .photo-info-toggle { position:fixed; right:16px; bottom:16px; z-index:10; width:44px; height:44px; padding:0; margin:0; border:0; background:transparent; color:#bbb; font:italic 17px/44px Georgia,serif; text-align:center; }
.photo-view .photo-info-toggle:hover, .photo-view .photo-info-toggle[aria-expanded="true"] { color:#fff; }
.photo-view .photo-info-toggle:focus-visible { outline:1px solid #fff; outline-offset:-8px; border-radius:50%; }
.photo-view.show-photo-info main > p { position:fixed; right:68px; bottom:22px; z-index:9; max-width:calc(100vw - 96px); margin:0; padding:8px 12px; border-radius:4px; background:#111e; color:#ccc; font:12px/1.5 Arial,sans-serif; text-align:right; }
@view-transition { navigation:auto; }
.home-slideshow #page { padding-top:0; margin-top:0; }
.home-slideshow #main { padding:0; height:100svh; }
body.static-gallery.home-slideshow #main_wrap { width:100%; max-width:none; margin:0; }
body.static-gallery.home-slideshow #main { width:calc(100% - 250px); margin-right:0; padding:0; }
.home-slides { position:relative; height:100svh; overflow:hidden; background:#111; }
.home-slide { position:absolute; inset:0; opacity:0; pointer-events:none; transition:opacity 900ms ease; }
.home-slide.is-active { opacity:1; pointer-events:auto; z-index:1; }
.static-gallery .home-slide .gallery-image { width:100%; height:100%; max-height:none; object-fit:cover; transform:none; opacity:1; transition:none; }
.slideshow-controls { position:absolute; z-index:2; bottom:20px; left:50%; transform:translateX(-50%); display:flex; align-items:center; gap:4px; padding:0 4px; border:1px solid #ffffff26; border-radius:6px; background:#1119; color:#fff; backdrop-filter:blur(12px); white-space:nowrap; }
.slideshow-controls button { display:flex; align-items:center; justify-content:center; flex:0 0 44px; width:44px; height:44px; min-width:44px; min-height:44px; margin:0; padding:0; border:0; border-radius:0; box-shadow:none; background:transparent; color:inherit; font:12px/1 Arial,sans-serif; letter-spacing:0; text-transform:none; cursor:pointer; }
.slideshow-controls button svg { display:block; pointer-events:none; }
.slideshow-controls button:hover { background:#ffffff14; }
.slideshow-controls span { display:flex; align-items:center; justify-content:center; min-width:48px; height:44px; margin:0; padding:0; font:11px/1 Arial,sans-serif; font-variant-numeric:tabular-nums; letter-spacing:.04em; }
.slideshow-controls button:focus-visible, .home-slide:focus-visible { outline:2px solid white; outline-offset:-3px; }
@media (max-width:767px) {
 .home-slideshow #page { margin-top:50px; }
 .home-slideshow #main { padding:0!important; }
 body.static-gallery.home-slideshow #main { width:100%; }
 .home-slides, .home-slideshow #main { height:calc(100svh - 50px); }
}
::view-transition-old(root) { animation-duration:180ms; }
::view-transition-new(root) { animation-duration:280ms; }
@media (prefers-reduced-motion:reduce) {
 .static-gallery .gallery-image { transition:none; }
 .static-gallery .gallery-image.reveal-pending { opacity:1; transform:none; }
 ::view-transition-old(root), ::view-transition-new(root) { animation:none; }
 .home-slide { transition:none; }
}
.static-gallery .img_wrap { max-width:100%; }
.static-gallery .list_item .img_wrap { display:block; }
.static-gallery .list_item .gallery-image { object-fit:contain; }
.static-gallery header.index.anim_on { display:block; }
.static-gallery #kpgrid { margin:0; }
.static-gallery #kpgrid_content { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; align-items:start; }
.static-gallery #kpgrid_content > .k-infinite-load { display:contents; }
.static-gallery .kpgriditem { display:block; margin:0; width:100%; }
.static-gallery .kpgriditem img { display:block; }
.static-gallery #sidr-left, .static-gallery #mob-pag-bttns { display:none; }
.gallery-pagination { display:flex; justify-content:center; gap:20px; padding:30px 0; clear:both; }
.gallery-pagination a { padding:8px 12px; }
.gallery-pagination [aria-current="page"] { font-weight:bold; text-decoration:none; }
.photo-view { margin:0; background:#111; color:#eee; font:14px/1.5 Arial,sans-serif; }
.photo-view nav { display:flex; gap:24px; padding:20px; }
.photo-view nav a { color:inherit; padding:8px; }
.photo-view nav a:first-child { margin-right:auto; }
.photo-view nav .viewer-icon { display:inline-flex; align-items:center; justify-content:center; flex:0 0 44px; width:44px; height:44px; padding:0; border:0; border-radius:4px; background:transparent; color:#bbb; text-decoration:none; cursor:pointer; }
.photo-view nav .viewer-icon[hidden] { display:none; }
.photo-view nav .viewer-icon:hover { color:#fff; background:#ffffff0a; }
.photo-view nav .viewer-icon:focus-visible { outline:1px solid #fff; outline-offset:2px; }
.photo-view nav .viewer-icon svg { display:block; pointer-events:none; }
.photo-view main { text-align:center; padding:0 20px 20px; }
.photo-view main img { display:block; margin:auto; width:auto; height:auto; max-width:100%; max-height:calc(100vh - 150px); }
.photo-view p { overflow-wrap:anywhere; }
@media (max-width:959px) { .static-gallery #kpgrid_content { grid-template-columns:1fr; } }
@media (max-width:767px) {
 .static-gallery #sidr-left.is-open { display:block; position:fixed; z-index:1000; top:50px; left:0; bottom:0; width:240px; padding:25px; overflow:auto; background:white; box-shadow:4px 0 20px #0002; }
 .static-gallery #sidr-left a { display:block; padding:12px 0; }
 .static-gallery #sidr-left ul { list-style:none; }
}
