/* A dedicated photo stage with persistent controls and square previews. */
.hev-lightbox{box-sizing:border-box;inset:0;width:min(1180px,calc(100% - 40px));height:min(860px,calc(100dvh - 40px));max-width:none;max-height:none;margin:auto;padding:20px 22px 16px;border:1px solid #55594d;border-radius:16px;background:#24251f;color:#fff;overflow:hidden;box-shadow:0 24px 90px #0006;font:400 16px/1.45 Barlow,sans-serif}
.hev-lightbox[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;gap:14px}
.hev-lightbox::backdrop{background:#10120fed}
.hev-lightbox *, .hev-lightbox *::before,.hev-lightbox *::after{box-sizing:border-box}
.hev-lightbox-header{display:flex;align-items:center;gap:14px;min-width:0}
.hev-lightbox-header>div{flex:1;min-width:0}
.hev-lightbox-eyebrow{margin:0 0 3px;font-size:10px;font-weight:500;line-height:1.4;letter-spacing:.12em;text-transform:uppercase;color:#d5cbbb}
.hev-lightbox-header h2{margin:0;color:#fff;font:600 20px/1.25 Barlow,sans-serif;letter-spacing:-.015em}
.hev-lightbox-count{flex:none;min-width:64px;padding:8px 12px;border:1px solid #666b5e;border-radius:999px;background:#ffffff0a;color:#fff;text-align:center;font-size:14px;font-variant-numeric:tabular-nums}
.hev-lightbox-close{position:static;display:inline-flex;align-items:center;justify-content:center;gap:12px;width:auto;min-width:44px;height:44px;padding:9px 14px;border:1px solid #929688;border-radius:8px;background:#ffffff0d;color:#fff;font:600 14px/1.3 Barlow,sans-serif;cursor:pointer}
.hev-lightbox-close>span:last-child{font-size:24px;line-height:1}
.hev-lightbox-close:hover{background:#fff;color:#24251f;border-color:#fff}
.hev-lightbox figure{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:10px;min-height:0;min-width:0;margin:0}
.hev-lightbox-frame{position:relative;display:grid;place-items:center;min-width:0;min-height:0;border:1px solid #3d4237;border-radius:10px;background:#131610;overflow:hidden}
.hev-lightbox .hev-lightbox-frame>img{display:block;width:100%;height:100%;min-width:0;min-height:0;max-height:none;aspect-ratio:auto;object-fit:contain;transition:opacity .12s}
.hev-lightbox-frame.is-loading>img{opacity:0}
.hev-lightbox-loading{position:absolute;inset:0;display:grid;place-items:center;margin:0;padding:20px;background:#131610;color:#e6e1d8;text-align:center;font-size:14px}
.hev-lightbox-loading[hidden]{display:none}
.hev-lightbox figcaption{margin:0;min-height:22px;color:#f5f0e8;text-align:left;font-size:15px;line-height:1.45;overflow-wrap:anywhere}
.hev-lightbox-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0}
.hev-lightbox-keyboard{margin:0;color:#c5c9bb;font-size:12px;line-height:1.5}
.hev-lightbox-navigation{display:flex;gap:10px;flex:none}
.hev-lightbox-controls button{display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:112px;height:46px;padding:11px 22px;border:1px solid #fff;border-radius:8px;background:#fff;color:#24251f;font:600 15px/1.3 Barlow,sans-serif;cursor:pointer;transition:background-color .15s,border-color .15s}
.hev-lightbox-controls button:hover{background:#e9e3d9;border-color:#e9e3d9}
.hev-lightbox-controls button:disabled{opacity:.4;cursor:default}
.hev-lightbox-thumbnails{display:flex;gap:10px;min-width:0;max-width:100%;padding:10px 3px 5px;border-top:1px solid #55594d;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#929688 transparent}
.hev-lightbox-thumb{position:relative;display:block;flex:0 0 58px;width:58px;height:58px;margin:0;padding:3px;border:2px solid transparent;border-radius:9px;background:transparent;cursor:pointer;opacity:.65}
.hev-lightbox-thumb img{display:block;width:100%;height:100%;aspect-ratio:1/1;object-fit:cover;border-radius:4px}
.hev-lightbox-thumb:hover{opacity:1;border-color:#929688}
.hev-lightbox-thumb[aria-current="true"]{opacity:1;border-color:#fff;background:#ffffff1a}
.hev-lightbox button:focus-visible{outline:2px solid #ffbc89;outline-offset:3px}
@media(max-width:700px){
 .hev-lightbox{width:calc(100% - 16px);height:calc(100dvh - 16px);padding:14px 12px 12px;border-radius:14px}
 .hev-lightbox[open]{gap:12px}
 .hev-lightbox-header{gap:10px}.hev-lightbox-header h2{font-size:17px}.hev-lightbox-eyebrow{font-size:9px}
 .hev-lightbox-count{min-width:50px;padding:7px 9px;font-size:12px}
 .hev-lightbox-close{width:44px;padding:8px;border-radius:50%}.hev-lightbox-close>span:first-child{display:none}
 .hev-lightbox figure{gap:9px}.hev-lightbox figcaption{font-size:14px;min-height:21px}
 .hev-lightbox-controls{display:block}.hev-lightbox-keyboard{display:none}
 .hev-lightbox-navigation{display:grid;grid-template-columns:1fr 1fr;gap:10px}
 .hev-lightbox-controls button{min-width:0;width:100%;height:46px;padding:11px 14px;font-size:14px}
 .hev-lightbox-thumbnails{gap:8px;padding-top:9px}.hev-lightbox-thumb{flex-basis:50px;width:50px;height:50px;padding:2px;border-radius:8px}
}
@media(max-height:460px){.hev-lightbox{padding:10px 14px;gap:8px}.hev-lightbox-header h2{font-size:16px}.hev-lightbox-eyebrow,.hev-lightbox-keyboard,.hev-lightbox-thumbnails{display:none}.hev-lightbox figure{gap:5px}.hev-lightbox-controls button{height:42px;min-height:42px;padding-block:8px}.hev-lightbox-close{height:42px}.hev-lightbox figcaption{font-size:13px;min-height:18px}}
@media(prefers-reduced-motion:reduce){.hev-lightbox button,.hev-lightbox .hev-lightbox-frame>img{transition:none}}
