/* ══════════════════════════════════════════════════════
   VENTOFIX — Lightbox (galeria + portfólio)
   Partilhado por todas as páginas com fotos de portfólio.
   Usa as variáveis de tema já definidas em cada página
   (--page-color, --ink, --border, --surface-2, --muted).
   ══════════════════════════════════════════════════════ */

/* Reset do botão que substitui o <a>/<img> clicável */
button.gallery-item{border:0;padding:0;margin:0;font:inherit;cursor:pointer;width:100%;text-align:left;display:block;background:var(--surface-2)}
.vf-b2b-trigger{border:0;padding:0;margin:0;font:inherit;cursor:pointer;width:100%;display:block;background:none;text-align:left}

/* Ícone de ampliar, visível ao passar o rato / focar */
.vf-zoom{position:absolute;top:10px;right:10px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.94);color:var(--page-color,var(--ink));border-radius:8px;opacity:0;transform:translateY(-4px);transition:opacity .2s,transform .2s;box-shadow:0 6px 16px -8px rgba(17,24,28,.5);pointer-events:none;z-index:2}
button.gallery-item:hover .vf-zoom,button.gallery-item:focus-visible .vf-zoom,.vf-b2b-trigger:hover .vf-zoom,.vf-b2b-trigger:focus-visible .vf-zoom{opacity:1;transform:none}
.vf-b2b-trigger{position:relative}

/* Modal */
.vf-lightbox{position:fixed;inset:0;z-index:1000;background:rgba(10,12,14,.92);display:flex;align-items:center;justify-content:center;padding:24px}
.vf-lightbox[hidden]{display:none}
.vf-lb-fig{margin:0;max-width:min(92vw,1100px);max-height:88vh;display:flex;flex-direction:column;align-items:center}
.vf-lb-img{max-width:100%;max-height:78vh;width:auto;height:auto;border-radius:12px;box-shadow:0 30px 80px -20px rgba(0,0,0,.6)}
.vf-lb-cap{margin-top:14px;color:#fff;font-size:14px;font-weight:600;text-align:center;letter-spacing:-.01em;max-width:70ch}
.vf-lb-close{position:absolute;top:18px;right:18px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.1);color:#fff;border:0;border-radius:10px;cursor:pointer;transition:background .2s}
.vf-lb-close:hover{background:rgba(255,255,255,.2)}
.vf-lb-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.1);color:#fff;border:0;border-radius:50%;cursor:pointer;transition:background .2s}
.vf-lb-nav:hover{background:rgba(255,255,255,.2)}
.vf-lb-prev{left:14px}
.vf-lb-next{right:14px}
.vf-lb-count{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);color:rgba(255,255,255,.75);font-size:12.5px;font-weight:600;letter-spacing:.02em}
@media(max-width:640px){.vf-lb-nav{width:40px;height:40px}.vf-lb-close{top:10px;right:10px}}
@media(prefers-reduced-motion:reduce){.vf-zoom{transition:none}}
