.page-gallery .albums{z-index:5;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;margin-top:-40px;display:grid;position:relative}.page-gallery .album{background:var(--navy-900);color:#fff;aspect-ratio:4/3;box-shadow:var(--shadow);transition:transform .4s var(--ease), opacity .9s var(--ease);border-radius:22px;text-decoration:none;display:block;position:relative;overflow:hidden}.page-gallery .album:hover{transform:translateY(-6px)}.page-gallery .album img{object-fit:cover;width:100%;height:100%;transition:transform 1s var(--ease);position:absolute;inset:0}.page-gallery .album:hover img{transform:scale(1.07)}.page-gallery .album .stack{display:flex;position:absolute;top:16px;right:16px}.page-gallery .album .stack img{object-fit:cover;width:46px;height:46px;transition:transform .4s var(--ease);border:2px solid #fff;border-radius:10px;margin-left:-14px;position:relative;box-shadow:0 4px 10px #00000059}.page-gallery .album:hover .stack img:first-child{transform:rotate(-8deg)translate(-6px)}.page-gallery .album:hover .stack img:nth-child(3){transform:rotate(8deg)translate(6px)}.page-gallery .album .info{background:linear-gradient(#0000,#060b18eb);padding:60px 22px 20px;position:absolute;inset:auto 0 0}.page-gallery .album h3{margin-bottom:4px;font-size:1.4rem}.page-gallery .album small{color:var(--gold-400);letter-spacing:.06em;font-size:.8rem;font-weight:600}.page-gallery .album-head{z-index:5;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin:-40px 0 28px;display:flex;position:relative}.page-gallery .album-head .chip-count{background:var(--card);border:1px solid var(--line);color:var(--ink-2);border-radius:999px;padding:10px 16px;font-size:.9rem}.page-gallery #album{scroll-margin-top:40px}.page-gallery .masonry{columns:4 260px;column-gap:16px}.page-gallery .masonry button{cursor:zoom-in;break-inside:avoid;background:var(--navy-900);border:0;border-radius:16px;width:100%;margin:0 0 16px;padding:0;display:block;position:relative;overflow:hidden}.page-gallery .masonry img{width:100%;transition:transform .8s var(--ease), filter .4s;display:block}.page-gallery .masonry button:hover img{filter:brightness(.85);transform:scale(1.05)}.page-gallery :is(.show .slide img,.album.past img,.masonry.bright img,.lightbox.bright figure img){filter:brightness(1.14)contrast(1.06)saturate(1.08)}.page-gallery .masonry.bright button:hover img{filter:brightness(1.02)contrast(1.06)saturate(1.08)}.page-gallery .state{text-align:center;color:var(--ink-2);padding:60px 20px}.page-gallery dialog.lightbox{z-index:300;color:#fff;background:#040812f0;border:0;place-items:center;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;position:fixed;inset:0}.page-gallery dialog.lightbox[open]{animation:.35s gallery-lb-in;display:grid}.page-gallery dialog.lightbox::backdrop{background:0 0}.page-gallery .lightbox figure{max-width:min(1100px,92vw);animation:gallery-lb-zoom .45s var(--ease)}.page-gallery .lightbox img{border-radius:14px;max-height:78vh;margin-inline:auto}.page-gallery .lightbox figcaption{color:#fff;text-align:center;font-family:var(--serif);margin-top:14px;font-size:1.2rem}.page-gallery .lb-btn{position:absolute;top:50%;transform:translateY(-50%)}.page-gallery .lb-prev{left:20px}.page-gallery .lb-next{right:20px}.page-gallery .lb-close{position:absolute;top:20px;right:20px}.page-gallery .lb-count{color:#ffffffb3;font-size:.9rem;position:absolute;top:26px;left:50%;transform:translate(-50%)}@keyframes gallery-lb-in{0%{opacity:0}}@keyframes gallery-lb-zoom{0%{transform:scale(.94)}}html:has(.page-gallery dialog.lightbox[open]){overflow:hidden}.page-gallery .show{--g:clamp(12px, 2.5vw, 40px);--w:min(calc(100vw - 2 * var(--g)), 1840px);margin-top:-40px;margin-left:calc((100% - var(--w)) / 2);width:var(--w);z-index:5;background:var(--navy-950);box-shadow:var(--shadow);aspect-ratio:16/9;isolation:isolate;border-radius:28px;min-height:380px;max-height:calc(100vh - 96px);position:relative;overflow:hidden}.page-gallery .show .slide{opacity:0;transition:opacity 1s var(--ease);position:absolute;inset:0}.page-gallery .show .slide.on{opacity:1}.page-gallery .show .slide img{object-fit:cover;width:100%;height:100%;transform:scale(1.04)}.page-gallery .show .slide.on img{animation:7s ease-out forwards gallery-show-kb}@keyframes gallery-show-kb{0%{transform:scale(1.04)}to{transform:scale(1.12)}}.page-gallery .show:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(#060b181f,#0000 22% 60%,#060b18b8);position:absolute;inset:0}.page-gallery .show .cap{z-index:2;color:#fff;text-shadow:0 2px 14px #060b18b3,0 1px 3px #060b1899;position:absolute;bottom:clamp(54px,6vw,70px);left:clamp(18px,3vw,36px);right:clamp(18px,3vw,36px)}.page-gallery .show .cap .eyebrow{color:var(--gold-400)}.page-gallery .show .cap h2{margin:8px 0 6px;font-size:clamp(1.6rem,3.8vw,3.2rem);line-height:1.15}.page-gallery .show .cap p{color:#ffffffc7;flex-wrap:wrap;align-items:center;gap:6px 16px;font-size:.95rem;display:flex}.page-gallery .show .cap a{color:var(--gold-400);font-weight:600;text-decoration:none}.page-gallery .show .cap a:hover{text-decoration:underline}.page-gallery .show .ctl{z-index:3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;cursor:pointer;background:#060b1873;border:1px solid #ffffff4d;border-radius:50%;place-items:center;width:48px;height:48px;font-size:1.5rem;transition:background .25s,border-color .25s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.page-gallery .show .ctl:hover{background:var(--gold-400);border-color:var(--gold-400);color:var(--navy-950)}.page-gallery .show .prev{left:16px}.page-gallery .show .next{right:16px}.page-gallery .show .bar{z-index:3;align-items:center;gap:14px;display:flex;position:absolute;bottom:22px;left:clamp(18px,3vw,36px);right:clamp(18px,3vw,36px)}.page-gallery .show .ticks{flex:1;gap:6px;display:flex}.page-gallery .show .ticks span{background:#ffffff40;border:0;border-radius:4px;flex:1;height:4px;padding:0;position:relative;overflow:hidden}.page-gallery .show .ticks span i{background:var(--gold-400);width:0;position:absolute;inset:0}.page-gallery .show .ticks span.done i{width:100%}.page-gallery .show .ticks span.on i{animation:gallery-tick-fill var(--dur,6s) linear forwards}.page-gallery .show.paused .ticks span.on i{animation-play-state:paused}@keyframes gallery-tick-fill{to{width:100%}}.page-gallery .show .count{color:#ffffffbf;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.85rem}.page-gallery .show .pause{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff4d;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.page-gallery .gal-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin:56px 0 24px;display:flex}.page-gallery .gal-head h2{font-size:clamp(1.6rem,3vw,2.2rem)}.page-gallery .gal-head+.albums{margin-top:0}@media (max-width:960px){.page-gallery .show{aspect-ratio:4/3;max-height:none}}@media (max-width:640px){.page-gallery .show{--photo:calc(var(--w) * 2 / 3);aspect-ratio:auto;min-height:0;max-height:none;padding:var(--photo) 0 0;border-radius:20px}.page-gallery .show .slide{height:var(--photo);inset:0 0 auto}.page-gallery .show .slide img{object-fit:contain}.page-gallery .show .slide.on img{animation:none;transform:none}.page-gallery .show:after{display:none}.page-gallery .show .cap{text-shadow:none;padding:16px 18px 4px;position:static}.page-gallery .show .cap h2{font-size:1.5rem}.page-gallery .show .bar{padding:8px 18px 18px;position:static}.page-gallery .show .ctl{top:calc(var(--photo) / 2);width:40px;height:40px}.page-gallery .show .ticks{gap:4px}}@media (prefers-reduced-motion:reduce){.page-gallery .show .slide{transition:none}.page-gallery .show .slide.on img{animation:none}}
