/* ===== AMG SOCIETY — Archive / gallery ===== */
.archive-header{position:relative;z-index:2;text-align:center;padding:clamp(60px,9vw,120px) clamp(20px,5vw,64px) clamp(30px,4vw,50px);max-width:820px;margin:0 auto}
.archive-title{font-family:var(--display);font-weight:700;font-size:clamp(2.4rem,7vw,4.6rem);line-height:1;margin:6px 0 18px}
.archive-title em{font-family:var(--serif);font-style:italic;font-weight:500;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.archive-sub{color:#cfc9bd;font-size:1.08rem;max-width:54ch;margin:0 auto}
.archive-sub #countNum{color:var(--gold)}

.gallery-wrap{position:relative;z-index:2;padding:20px clamp(14px,4vw,48px) clamp(70px,9vw,120px)}
.gallery{columns:4 270px;column-gap:16px;max-width:1500px;margin:0 auto}
.gallery-item{break-inside:avoid;margin:0 0 16px;position:relative;display:block;width:100%;padding:0;border:1px solid var(--line-soft);border-radius:5px;overflow:hidden;background:var(--panel);cursor:pointer}
.gallery.js .gallery-item{opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.8,.2,1)}
.gallery.js .gallery-item.in{opacity:1;transform:none}
.gallery-item img{width:100%;display:block;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.gallery-item::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(212,175,55,0);transition:box-shadow .4s;pointer-events:none}
.gallery-item:hover img{transform:scale(1.06)}
.gallery-item:hover{border-color:var(--line)}
.gallery-item:hover::after{box-shadow:inset 0 0 0 1px rgba(212,175,55,.5),0 24px 60px -28px rgba(0,0,0,.8)}
.gallery-item .gi-view{position:absolute;left:50%;bottom:14px;transform:translate(-50%,16px);opacity:0;transition:.4s;z-index:2;font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);background:rgba(8,8,10,.6);border:1px solid var(--line);padding:7px 14px;border-radius:30px;backdrop-filter:blur(4px)}
.gallery-item:hover .gi-view{opacity:1;transform:translate(-50%,0)}

@media(max-width:600px){.gallery{columns:2 150px;column-gap:12px}.gallery-item{margin-bottom:12px}}

/* Lightbox */
.lightbox{position:fixed;inset:0;z-index:120;background:rgba(6,6,8,.94);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .35s}
.lightbox.open{opacity:1;visibility:visible}
.lb-stage{max-width:90vw;max-height:84vh;margin:0;display:flex;align-items:center;justify-content:center}
.lb-stage img{max-width:90vw;max-height:84vh;width:auto;height:auto;border-radius:4px;box-shadow:0 40px 120px -30px rgba(0,0,0,.9);border:1px solid var(--line-soft)}
.lb-close,.lb-nav{position:fixed;background:rgba(20,20,24,.7);border:1px solid var(--line-soft);color:var(--cream);cursor:pointer;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:.3s;backdrop-filter:blur(6px)}
.lb-close:hover,.lb-nav:hover{border-color:var(--gold);color:var(--gold)}
.lb-close{top:22px;right:22px;width:46px;height:46px;font-size:1.1rem}
.lb-nav{top:50%;transform:translateY(-50%);width:54px;height:54px;font-size:2rem;line-height:0}
.lb-prev{left:22px}.lb-next{right:22px}
.lb-counter{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);color:var(--muted);font-size:.78rem;letter-spacing:.22em;text-transform:uppercase}
.lb-counter b{color:var(--gold);font-weight:500}
@media(max-width:600px){.lb-nav{width:44px;height:44px;font-size:1.6rem}.lb-prev{left:10px}.lb-next{right:10px}.lb-close{top:14px;right:14px}}
