/* =========================================================================
   QuerenClick — estilos das páginas de galeria completa (/portfolio/:cat)
   e de link temporário (/galeria/:token). Não é carregado na home.
   ========================================================================= */

/* ---------- Cabeçalho de página interna ---------- */
.pagehead{padding:150px 0 50px;text-align:center}
.pagehead .label{color:var(--rosa)}
.pagehead h1{font-size:clamp(2.1rem,6vw,3.6rem)}
.pagehead p{margin-top:14px;color:rgba(255,244,253,.62);max-width:560px;margin-inline:auto}
.pagehead .back{display:inline-flex;align-items:center;gap:8px;margin-top:22px;color:var(--rosa-suave);font-size:.9rem}
.pagehead .back:hover{color:var(--rosa)}

/* ---------- Grade completa (masonry simples via colunas) ---------- */
.fullgrid{padding:10px 0 90px}
.fullgrid__cols{column-count:1;column-gap:14px;padding-inline:22px;max-width:var(--container);margin-inline:auto}
.fullgrid__item{break-inside:avoid;margin-bottom:14px;border-radius:var(--radius-img);overflow:hidden;background:var(--preto-2);position:relative;cursor:zoom-in}
.fullgrid__item img{width:100%;display:block;transition:transform .6s var(--ease)}
.fullgrid__item:hover img{transform:scale(1.03)}
.fullgrid__empty{text-align:center;color:rgba(255,244,253,.5);padding:60px 22px}
@media(min-width:640px){.fullgrid__cols{column-count:2}}
@media(min-width:1024px){.fullgrid__cols{column-count:3}}

/* ---------- Lightbox ---------- */
.lightbox{position:fixed;inset:0;z-index:2000;background:rgba(11,11,11,.96);display:none;align-items:center;justify-content:center;padding:26px}
.lightbox.open{display:flex}
.lightbox img{max-width:100%;max-height:88vh;border-radius:10px;box-shadow:0 30px 80px rgba(0,0,0,.5)}
.lightbox__close{position:absolute;top:22px;right:22px;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.1);color:#fff;border:0;font-size:1.3rem;display:grid;place-items:center}
.lightbox__close:hover{background:var(--rosa);color:var(--preto)}
.lightbox__nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;background:rgba(255,255,255,.1);color:#fff;border:0;font-size:1.2rem;display:grid;place-items:center}
.lightbox__nav:hover{background:var(--rosa);color:var(--preto)}
.lightbox__prev{left:18px}
.lightbox__next{right:18px}
@media(max-width:640px){.lightbox__nav{width:40px;height:40px}}

/* ---------- Efeito de revelar no scroll (foto de destaque do link) ---------- */
.reveal-hero{position:relative;height:230vh}
.reveal-hero__stage{position:sticky;top:0;height:100svh;overflow:hidden}
.reveal-hero__photo{position:absolute;inset:0}
.reveal-hero__photo img{width:100%;height:100%;object-fit:cover}
.reveal-hero__cover{
  position:absolute;inset:0;background:var(--preto);
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
  padding:0 24px;will-change:transform;
}
.reveal-hero__cover::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 40%,rgba(11,11,11,.5));pointer-events:none}
.reveal-hero__cover .label{color:var(--rosa)}
.reveal-hero__cover h2{font-size:clamp(2rem,7vw,4.2rem);color:var(--offwhite);max-width:820px}
.reveal-hero__hint{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);color:rgba(255,244,253,.6);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;display:flex;flex-direction:column;align-items:center;gap:8px}
.reveal-hero__hint img{width:26px;animation:bob 2s var(--ease) infinite}
@media (prefers-reduced-motion:reduce){
  .reveal-hero{height:auto}
  .reveal-hero__stage{position:relative;height:70vh}
  .reveal-hero__cover{transform:none!important;position:relative;background:transparent}
  .reveal-hero__photo{position:absolute}
}

/* ---------- Barra de download em lote ---------- */
.dlbar{position:sticky;top:0;z-index:40;background:rgba(11,11,11,.88);backdrop-filter:blur(12px);border-bottom:1px solid var(--linha)}
.dlbar__inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;padding:16px 22px;max-width:var(--container);margin-inline:auto}
.dlbar__count{color:rgba(255,244,253,.7);font-size:.9rem}
.dlbar__count strong{color:var(--rosa)}
.dlbar .btn{padding:11px 22px;font-size:.92rem}
.dlbar__progress{font-size:.85rem;color:var(--rosa-suave);min-width:130px;text-align:right}

/* ---------- Estado: link expirado / não encontrado ---------- */
.gone{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;background:var(--preto);color:var(--offwhite)}
.gone i{font-size:2.6rem;color:var(--rosa);margin-bottom:18px}
.gone h1{font-size:1.8rem;margin-bottom:10px}
.gone p{color:rgba(255,244,253,.6);max-width:420px;margin-bottom:26px}
