/* The existing featured layout, now opening complete image collections. */
.featured-posts .featured-lead{position:relative;justify-content:flex-end;min-height:560px;background:transparent;isolation:isolate}
.featured-posts .featured-lead-image{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;background:transparent;z-index:-2}
.featured-posts .featured-lead-image img{inset:0;width:100%;height:100%;object-fit:cover;object-position:center top}
.featured-posts .featured-lead::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 32%,#0002 55%,#000a 100%);pointer-events:none}
.featured-posts .featured-lead-copy{flex:0 0 auto;background:transparent;text-shadow:0 2px 18px #0008}
.featured-posts .featured-lead .featured-description,.featured-posts .featured-lead .featured-label{color:#d4d4d4e0}
.featured-posts .featured-thumb img{object-position:center top}
.featured-posts .featured-lead:focus-visible,.featured-posts .featured-row:focus-visible{outline:2px solid white;outline-offset:5px}

/* Use the same full-screen glass surface as the navigation menu. */
#image-gallery{
 position:fixed;inset:0;margin:0;
 width:100%;max-width:none;height:100svh;max-height:none;
 padding:0;overflow:hidden;border:1px solid #ffffff24;border-radius:0;
 color:var(--paper);background:linear-gradient(125deg,#ffffff12,transparent 48%,#d4d4d409),#08080870;
 box-shadow:inset 0 1px 0 #ffffff26;
}
#image-gallery[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;animation:gallery-enter .35s cubic-bezier(.2,.7,.2,1)}
#image-gallery::backdrop{background:#08080824;-webkit-backdrop-filter:blur(24px) saturate(120%);backdrop-filter:blur(24px) saturate(120%)}
.gallery-header{position:relative;padding:23px 78px 17px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.gallery-category{margin:0 0 7px;color:#d4d4d4a6;font-size:11px;line-height:1.4;font-weight:600;letter-spacing:.13em}
#gallery-title{font:700 clamp(22px,2.2vw,32px)/1.15 var(--body);letter-spacing:-.025em;margin:0;text-transform:uppercase}
.gallery-counter{font-size:14px;line-height:1.5;letter-spacing:.12em;font-variant-numeric:tabular-nums;white-space:nowrap;color:#d4d4d4b8}
#image-gallery .close-dialog{position:absolute;top:18px;right:17px;width:44px;height:44px;font-size:32px;border:0;border-radius:0;background:none;color:var(--paper)}
.gallery-stage{position:relative;min-height:0;overflow:hidden;margin:0 16px;display:grid;place-items:center;padding:0 52px;touch-action:pan-y pinch-zoom}
.gallery-image{display:block;max-width:100%;max-height:100%;width:100%;height:100%;min-height:0;object-fit:contain;user-select:none;transition:opacity .15s}
.gallery-image[hidden]{display:none}
.gallery-stage.is-loading .gallery-image{opacity:.2}
.gallery-status{position:absolute;left:12%;right:12%;top:45%;margin:0;text-align:center;font-size:14px;line-height:1.6;color:#ddd}
.gallery-status[hidden]{display:none}
.gallery-arrow{position:absolute;top:50%;translate:0 -50%;display:grid;place-items:center;width:46px;height:60px;padding:10px;background:transparent;border:0;border-radius:0;color:var(--paper);transition:color .2s,transform .2s}
.gallery-arrow svg{width:28px;height:28px}
.gallery-arrow:hover{color:var(--accent);transform:scale(1.12)}
.gallery-previous{left:0}.gallery-next{right:0}
.gallery-arrow[hidden]{display:none}
.gallery-thumbnails{display:flex;align-items:center;justify-content:safe center;gap:9px;overflow-x:auto;padding:14px 4px 20px;margin:0 28px;scrollbar-width:thin;scrollbar-color:#ffffff40 transparent;overscroll-behavior-x:contain}
.gallery-thumbnails button{flex:0 0 58px;width:58px;height:65px;border:2px solid transparent;border-radius:5px;padding:3px;background:#ffffff09;opacity:.52;transition:opacity .2s,border-color .2s}
.gallery-thumbnails button[aria-pressed=true]{border-color:white;opacity:1}
.gallery-thumbnails button:hover{opacity:1}
.gallery-thumbnails img{display:block;width:100%;height:100%;object-fit:cover;border-radius:0;pointer-events:none}
#image-gallery button:focus-visible,#image-gallery a:focus-visible{outline:2px solid white;outline-offset:3px}
html:has(#image-gallery[open]){overflow:hidden}
@keyframes gallery-enter{from{opacity:0;transform:translateX(45px)}to{opacity:1;transform:translateX(0)}}
@media(max-width:760px){
 .featured-posts .featured-lead{width:100%;min-height:480px}
 .gallery-header{padding:19px 55px 14px 16px;gap:12px}
 .gallery-category{font-size:10px;letter-spacing:.09em}
 #gallery-title{font-size:20px;max-width:240px}
 .gallery-counter{font-size:12px;letter-spacing:.03em}
 #image-gallery .close-dialog{top:11px;right:7px;width:40px;height:40px}
 .gallery-stage{padding:0 28px;margin:0 3px}
 .gallery-arrow{width:30px;height:54px;padding:3px}.gallery-arrow svg{width:22px;height:22px}
 .gallery-thumbnails{margin:0 15px;gap:7px;padding-top:12px}
 .gallery-thumbnails button{flex-basis:47px;width:47px;height:54px}
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){#image-gallery{background:#080808f0}}
@media(prefers-reduced-motion:reduce){#image-gallery[open]{animation:none}.gallery-image,.gallery-arrow,.gallery-thumbnails button{transition:none}}
