.g2-sub{color:rgba(255,255,255,.55);font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin:0 0 .9rem}
.g2-feat{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:1rem;height:460px;margin-bottom:2.6rem}
.g2-feat .g2-card:first-child{grid-row:1/3}
.g2-card{position:relative;display:block;width:100%;border:0;padding:0;border-radius:18px;overflow:hidden;cursor:pointer;background:#232a3d;box-shadow:0 10px 30px rgba(0,0,0,.35);transition:transform .25s,box-shadow .25s;text-align:left;font:inherit;color:inherit}
.g2-card:hover,.g2-card:focus-visible{transform:translateY(-4px);box-shadow:0 18px 44px rgba(0,0,0,.5);outline:none}
.g2-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.g2-card:hover img{transform:scale(1.06)}
.g2-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(10,12,20,.88) 100%)}
.g2-info{position:absolute;left:0;right:0;bottom:0;padding:1rem 1.1rem}
.g2-name{display:block;color:#fff;font-weight:800;font-size:1.05rem;line-height:1.25;text-shadow:0 2px 8px rgba(0,0,0,.6)}
.g2-feat .g2-card:first-child .g2-name{font-size:1.5rem}
.g2-meta{display:flex;gap:.5rem;flex-wrap:wrap;color:rgba(255,255,255,.75);font-size:.8rem;margin-top:.3rem}
.g2-badge{position:absolute;top:.8rem;right:.8rem;background:rgba(10,12,20,.65);backdrop-filter:blur(6px);color:#fff;font-size:.75rem;font-weight:700;padding:.25rem .6rem;border-radius:999px}
.g2-new{position:absolute;top:.8rem;left:.8rem;background:var(--dorado2,#f0c96e);color:#1a1f2e;font-size:.68rem;font-weight:900;letter-spacing:.08em;padding:.25rem .6rem;border-radius:999px;text-transform:uppercase}
.g2-years{display:flex;gap:.5rem;flex-wrap:wrap;margin:0 0 1.2rem}
.g2-year{background:rgba(255,255,255,.07);color:rgba(255,255,255,.8);border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:.45rem 1.1rem;font:inherit;font-weight:800;cursor:pointer;transition:background .2s}
.g2-year:hover{background:rgba(255,255,255,.14)}
.g2-year[aria-pressed="true"]{background:var(--dorado2,#f0c96e);color:#1a1f2e;border-color:transparent}
.g2-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem}
.g2-grid .g2-card{aspect-ratio:4/3}
.g2-album-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin:1rem 0 1.2rem}
.g2-album-title{color:#fff;font-size:1.6rem;font-weight:900;margin:0}
.g2-share{background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:.5rem 1.1rem;cursor:pointer;font:inherit;font-weight:700}
.g2-share:hover{background:rgba(255,255,255,.16)}
.g2-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.6rem}
.g2-ph{aspect-ratio:1;border:0;padding:0;border-radius:12px;overflow:hidden;cursor:pointer;background:#232a3d}
.g2-ph img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.g2-ph:hover img{transform:scale(1.05)}
.g2-empty{color:rgba(255,255,255,.5);padding:2rem 0}
#gal-lb-caption{position:fixed;top:30px;left:0;right:0;text-align:center;color:rgba(255,255,255,.85);font-size:.95rem;font-weight:700;z-index:100000;pointer-events:none;padding:0 80px}
@media (max-width:700px){
  .g2-feat{grid-template-columns:1fr;grid-template-rows:none;height:auto}
  .g2-feat .g2-card{aspect-ratio:16/10}
  .g2-feat .g2-card:first-child{grid-row:auto}
  .g2-grid{grid-template-columns:repeat(2,1fr);gap:.6rem}
  .g2-grid .g2-name{font-size:.9rem}
  .g2-photos{grid-template-columns:repeat(3,1fr);gap:.3rem}
  .g2-ph{border-radius:6px}
  #gal-lb-prev,#gal-lb-next{display:none!important}
}
