/* UX package 15.11.2026: photo lightbox, gallery chips, hover zoom (assets/js/ux-gallery.js). Gallery palette. */

/* ---------- lightbox ---------- */
.ag-gx-opener{cursor:zoom-in}
.ag-gx-opener:focus-visible{outline:2px solid #88734c;outline-offset:3px}
html.ag-lb-lock,html.ag-lb-lock body{overflow:hidden}
.ag-lb{box-sizing:border-box;position:fixed;inset:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;border:0;background:transparent;color:#fbfbf6;overflow:hidden}
.ag-lb[open]{display:flex;align-items:center;justify-content:center}
.ag-lb::backdrop{background:rgba(20,31,25,.94)}
.ag-lb-fig{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0;padding:56px 72px 64px;width:100%;height:100%;box-sizing:border-box;touch-action:pan-y pinch-zoom;user-select:none;-webkit-user-select:none}
.ag-lb-img{display:block;max-width:100%;max-height:100%;min-height:0;object-fit:contain;opacity:1;transition:opacity .22s ease;-webkit-user-drag:none}
.ag-lb-img.is-loading{opacity:0}
.ag-lb-cap{position:absolute;left:0;right:0;bottom:0;padding:12px 72px 18px;text-align:center;font:400 14px/1.45 Manrope,sans-serif;color:#e9ecdf}
.ag-lb-cap:empty{display:none}
.ag-lb-count{position:absolute;top:16px;left:20px;font:500 12px/1 Manrope,sans-serif;letter-spacing:.14em;color:#d9c08a}
.ag-lb button{position:absolute;display:flex;align-items:center;justify-content:center;margin:0;padding:0;border:1px solid rgba(217,192,138,.45);border-radius:50%;background:rgba(27,42,33,.55);color:#fbfbf6;cursor:pointer;transition:background .2s ease,border-color .2s ease}
.ag-lb button:hover{background:rgba(136,115,76,.75);border-color:#d9c08a}
.ag-lb button:focus-visible{outline:2px solid #e2c98f;outline-offset:2px}
.ag-lb-x{top:12px;right:14px;width:44px;height:44px;font:400 28px/1 Georgia,serif}
.ag-lb-prev,.ag-lb-next{top:50%;width:48px;height:48px;margin-top:-24px;font:400 30px/1 Georgia,serif}
.ag-lb-prev{left:14px}
.ag-lb-next{right:14px}
.ag-lb.is-single .ag-lb-prev,.ag-lb.is-single .ag-lb-next,.ag-lb.is-single .ag-lb-count{display:none}
@media (max-width:768px){
  .ag-lb-fig{padding:60px 8px 64px}
  .ag-lb-cap{padding:10px 14px 16px;font-size:13px}
  .ag-lb-prev,.ag-lb-next{top:auto;bottom:70px;margin-top:0;width:44px;height:44px}
  .ag-lb-prev{left:10px}
  .ag-lb-next{right:10px}
}

/* ---------- filter chips ---------- */
.ag-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px;padding:0}
.ag-shell #page-wrap .ag-chips button{margin:0;padding:8px 16px;border:1px solid #d8ddd2;border-radius:999px;background:#fff;color:#28352e;font:500 13px/1.2 Manrope,sans-serif;letter-spacing:.02em;text-transform:none;box-shadow:none;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease}
.ag-shell #page-wrap .ag-chips button:hover{background:#fff;color:#28352e;border-color:#88734c}
.ag-shell #page-wrap .ag-chips button[aria-pressed="true"],.ag-shell #page-wrap .ag-chips button[aria-pressed="true"]:hover{background:#304d3a;border-color:#304d3a;color:#fff}
.ag-shell #page-wrap .ag-chips button:focus-visible{outline:2px solid #88734c;outline-offset:2px}
.ag-gx-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.ag-chip-item{transition:opacity .25s ease}
.ag-chip-off{opacity:0}
.ag-chip-gone{display:none!important}

/* ---------- hover zoom + caption (hover-capable devices only) ---------- */
.ag-hz-cap{display:none}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .blog-item .animated-overlay,.ag-hz-frame{overflow:hidden}
  .blog-item .animated-overlay img,.ag-hz-frame img{transition:transform .5s cubic-bezier(.2,.7,.2,1)}
  .blog-item .animated-overlay:hover img,.ag-hz-frame:hover img{transform:scale(1.05)}
  .ag-hz-frame{position:relative;display:block}
  .ag-hz-cap{display:block;position:absolute;left:0;right:0;bottom:0;z-index:2;padding:26px 14px 12px;background:linear-gradient(180deg,rgba(20,31,25,0),rgba(20,31,25,.82));color:#fbfbf6;font:500 13px/1.35 Manrope,sans-serif;pointer-events:none;transform:translateY(100%);opacity:0;transition:transform .35s cubic-bezier(.2,.7,.2,1),opacity .3s ease}
  .blog-item .animated-overlay:hover .ag-hz-cap,.ag-hz-frame:hover .ag-hz-cap{transform:translateY(0);opacity:1}
}
