/* ===== Galerie foto — Pensiunea Casa Suciu (namespace .gal-) ===== */

/* head + filter pills */
.gal-head{text-align:center;margin-bottom:clamp(2rem,4vw,3rem)}
.gal-filters{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem;max-width:920px;margin:1.1rem auto 0}
.gal-pill{appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.85rem 1.4rem;font:600 .72rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--forest);background:transparent;border:1px solid rgba(176,141,87,.42);border-radius:100px;cursor:pointer;transition:color .3s,background .3s,border-color .3s,box-shadow .3s}
.gal-pill:hover{border-color:var(--gold);color:var(--brown)}
.gal-pill.on{background:var(--gold);border-color:var(--gold);color:var(--forest-2);box-shadow:0 14px 32px -16px rgba(176,141,87,.6)}
.gal-pill.on:hover{color:var(--forest-2)}
.gal-pill:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

/* masonry (CSS columns) */
.gal-masonry{columns:3;column-gap:1.1rem}
.gal-item{position:relative;display:block;margin:0 0 1.1rem;border-radius:14px;overflow:hidden;background:var(--cream-3);box-shadow:0 24px 48px -34px rgba(59,47,38,.55);break-inside:avoid;-webkit-column-break-inside:avoid;page-break-inside:avoid}
.gal-item[hidden]{display:none}
.gal-item img{display:block;width:100%;height:auto;cursor:zoom-in;transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.gal-item:hover img{transform:scale(1.035)}

/* hover caption — category label, small caps */
.gal-cap{pointer-events:none;position:absolute;left:0;right:0;bottom:0;padding:2.2rem 1rem .85rem;font:600 .64rem/1.3 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-3);background:linear-gradient(0deg,rgba(20,26,15,.78),rgba(20,26,15,0));opacity:0;transform:translateY(8px);transition:opacity .35s,transform .35s}
.gal-item:hover .gal-cap{opacity:1;transform:none}

/* responsive — same breakpoints as casa-pages.css */
@media(max-width:1000px){
  .gal-masonry{column-gap:1rem}
  .gal-item{margin-bottom:1rem}
}
@media(max-width:899px){
  .gal-masonry{columns:2;column-gap:.9rem}
  .gal-item{margin-bottom:.9rem;border-radius:12px}
}
@media(max-width:640px){
  .gal-masonry{columns:2;column-gap:.6rem}
  .gal-item{margin-bottom:.6rem;border-radius:10px}
  .gal-filters{gap:.5rem}
  .gal-pill{padding:.78rem 1.1rem;font-size:.68rem;letter-spacing:.1em}
}
@media(max-width:380px){
  .gal-masonry{column-gap:.5rem}
  .gal-item{margin-bottom:.5rem}
  .gal-pill{padding:.72rem .95rem;letter-spacing:.07em}
}

@media(prefers-reduced-motion:reduce){
  .gal-item img,.gal-cap,.gal-pill{transition:none}
  .gal-item:hover img{transform:none}
}
