/* ================== GALERÍA (solo sección + galleria) ================== */

.galeria .container{
  max-width:1100px;
  margin:3rem auto;
  padding:2rem;
  background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(250,250,250,.86));
  border-radius:16px;
  box-shadow:var(--card-shadow);
}

.galeria h2{
  margin:0 0 .4rem 0;
  font-family:'Playfair Display',serif;
  font-size:2rem;
}

/* GALLERIA: reset suave (NO all:unset) */
.galleria{
  margin-top:16px;
  display:grid;
  grid-template-columns: 52px 1fr 52px;
  grid-template-rows: auto auto;
  gap:12px;
  align-items:center;
}

/* Stage */
.g-stage{
  grid-column:2 / 3;
  grid-row:1;
  border-radius:16px;
  overflow:hidden;
  background:rgba(255,255,255,.55);
  border:1px solid rgba(6,44,26,.08);
  box-shadow:0 10px 25px rgba(2,20,12,.08);
  height:440px;
  display:flex;
  align-items:center;
  justify-content:center;
}

/* Imagen grande */
.g-stage img,
.g-main{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
}

/* Botones */
.g-btn{
  grid-row:1;
  width:52px;
  height:52px;
  border:none;
  border-radius:14px;
  cursor:pointer;
  font-size:32px;
  line-height:1;
  background:rgba(255,255,255,.85);
  box-shadow:0 10px 20px rgba(0,0,0,.12);
  transition: transform .2s ease, box-shadow .2s ease;
  display:flex;
  align-items:center;
  justify-content:center;
  user-select:none;
}
.g-btn:hover{ transform:translateY(-2px); box-shadow:0 14px 24px rgba(0,0,0,.14); }
.g-btn.prev{ grid-column:1 / 2; }
.g-btn.next{ grid-column:3 / 4; }

/* Thumbs */
.g-thumbs{
  grid-column:1 / 4;
  grid-row:2;
  display:flex;
  gap:10px;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  padding-top:4px;
}

.thumb{
  border:none;
  padding:0;
  background:transparent;
  cursor:pointer;
  border-radius:14px;
  overflow:hidden;
  width:96px;
  height:62px;
  box-shadow:0 8px 18px rgba(0,0,0,.10);
  outline:none;
  border:2px solid transparent;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.thumb img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
}
.thumb:hover{ transform:translateY(-2px); }
.thumb.is-active{
  border-color: rgba(2,166,120,.65);
  box-shadow: 0 10px 22px rgba(2,166,120,.16);
}

/* Responsive */
@media (max-width:900px){
  .g-stage{ height:340px; }
  .galleria{ grid-template-columns:44px 1fr 44px; }
  .g-btn{ width:44px; height:44px; font-size:28px; }
  .thumb{ width:84px; height:56px; }
}
@media (max-width:560px){
  .g-stage{ height:260px; }
  .thumb{ width:78px; height:52px; }
}
