/* Galerie archives — Wilfried Lajoie */
.wilfried-gallery-v2{--wg-gold:#d8a94d;--wg-ivory:#f3ead8;--wg-ink:#100d0b;--wg-panel:#1b1411;color:var(--wg-ivory)}
.wilfried-gallery-v2 *{box-sizing:border-box}
.wg-full{width:100vw;margin-left:calc(50% - 50vw);padding-left:max(1.2rem,calc((100vw - 1200px)/2));padding-right:max(1.2rem,calc((100vw - 1200px)/2))}
.wg-hero{min-height:62vh;display:flex;align-items:flex-end;padding-top:7rem;padding-bottom:5rem;background:radial-gradient(circle at 83% 20%,rgba(128,37,28,.38),transparent 35%),linear-gradient(135deg,#1b1411,#0d0a09);border-bottom:1px solid rgba(216,169,77,.25)}
.wg-hero__inner{max-width:920px}
.wg-eyebrow,.wg-section-number{color:var(--wg-gold);font-size:.78rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.wg-hero h1{max-width:780px;margin:.5rem 0 1.3rem;font-family:Georgia,serif;font-size:clamp(3.3rem,8vw,7.2rem);line-height:.92;color:#fff}
.wg-hero p{max-width:720px;font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.75;color:#e8ddcf}
.wg-albums{padding-top:5rem;padding-bottom:5rem;background:#15100e}
.wg-heading{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(300px,1.3fr);gap:3rem;align-items:end;margin-bottom:2.5rem}
.wg-heading h2{margin:.4rem 0 0;font-family:Georgia,serif;font-size:clamp(2.1rem,4.4vw,4.1rem);line-height:1.05;color:#fff}
.wg-heading p:last-child{color:#d6c8ba;line-height:1.8}
.wg-album-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.wg-album-card{min-height:190px;padding:1.55rem;border:1px solid rgba(216,169,77,.25);border-radius:18px;background:linear-gradient(145deg,rgba(62,27,21,.75),rgba(22,16,14,.96));box-shadow:0 20px 45px rgba(0,0,0,.22)}
.wg-album-card__number{display:block;color:var(--wg-gold);font-weight:800;letter-spacing:.14em}
.wg-album-card h3{margin:2.3rem 0 .55rem;font-family:Georgia,serif;font-size:1.45rem;color:#fff}
.wg-album-card p{margin:0;color:#cbbcaf;line-height:1.65}
.wg-collection{padding-top:5rem;padding-bottom:6rem;background:linear-gradient(180deg,#0f0c0a,#17110f)}
.wg-filterbar{display:flex;flex-wrap:wrap;gap:.65rem;margin:2rem 0 2.4rem}
.wg-filter{appearance:none;border:1px solid rgba(216,169,77,.35);border-radius:999px;padding:.72rem 1.05rem;background:transparent;color:#f4eadb;font:inherit;font-size:.9rem;font-weight:700;cursor:pointer;transition:.2s ease}
.wg-filter:hover,.wg-filter:focus-visible,.wg-filter.is-active{border-color:var(--wg-gold);background:var(--wg-gold);color:#17110f;outline:none}
.wg-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-flow:dense;gap:1rem}
.wg-item{grid-column:span 4;min-height:330px;position:relative;overflow:hidden;border:1px solid rgba(216,169,77,.22);border-radius:18px;background:#201713;box-shadow:0 18px 45px rgba(0,0,0,.28);transition:transform .25s ease,opacity .25s ease}
.wg-item--wide{grid-column:span 8}
.wg-item--portrait{grid-column:span 4;grid-row:span 2;min-height:590px}
.wg-item[hidden]{display:none}
.wg-item:hover{transform:translateY(-4px)}
.wg-open{width:100%;height:100%;min-height:inherit;display:block;padding:0;border:0;background:none;color:inherit;cursor:zoom-in;text-align:left}
.wg-open img{width:100%;height:100%;min-height:inherit;display:block;object-fit:cover;transition:transform .45s ease}
.wg-item:hover img{transform:scale(1.035)}
.wg-caption{position:absolute;inset:auto 0 0;padding:4.5rem 1.25rem 1.25rem;background:linear-gradient(transparent,rgba(8,6,5,.94));pointer-events:none}
.wg-caption span{display:block;margin-bottom:.35rem;color:var(--wg-gold);font-size:.72rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.wg-caption strong{display:block;color:#fff;font-family:Georgia,serif;font-size:1.28rem;line-height:1.22}
.wg-note{margin-top:2rem;color:#a99b8e;font-size:.9rem}
.wg-lightbox{position:fixed;z-index:99999;inset:0;display:none;align-items:center;justify-content:center;padding:1.2rem;background:rgba(5,4,3,.94);backdrop-filter:blur(8px)}
.wg-lightbox.is-open{display:flex}
.wg-lightbox__figure{max-width:min(1240px,92vw);max-height:90vh;margin:0;display:flex;flex-direction:column;align-items:center;gap:.85rem}
.wg-lightbox__image{max-width:100%;max-height:78vh;object-fit:contain;border-radius:12px;box-shadow:0 30px 90px rgba(0,0,0,.65)}
.wg-lightbox__caption{max-width:900px;color:#eadfce;text-align:center;line-height:1.6}
.wg-lightbox__caption strong{display:block;color:#fff;font-family:Georgia,serif;font-size:1.25rem}
.wg-lightbox__caption span{display:block;color:#c7b8aa}
.wg-lightbox__close,.wg-lightbox__prev,.wg-lightbox__next{position:absolute;border:1px solid rgba(255,255,255,.3);background:rgba(18,14,12,.82);color:#fff;border-radius:999px;width:48px;height:48px;font-size:1.6rem;cursor:pointer}
.wg-lightbox__close{top:1rem;right:1rem}
.wg-lightbox__prev,.wg-lightbox__next{top:50%;transform:translateY(-50%)}
.wg-lightbox__prev{left:1rem}.wg-lightbox__next{right:1rem}
.wg-lightbox button:hover,.wg-lightbox button:focus-visible{border-color:var(--wg-gold);color:var(--wg-gold);outline:none}
body.wg-no-scroll{overflow:hidden}
@media(max-width:960px){
 .wg-heading{grid-template-columns:1fr;gap:1rem}
 .wg-album-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .wg-item,.wg-item--wide{grid-column:span 6}
 .wg-item--portrait{grid-column:span 6;min-height:520px}
}
@media(max-width:640px){
 .wg-hero{min-height:52vh;padding-top:5rem;padding-bottom:3.5rem}
 .wg-albums,.wg-collection{padding-top:3.6rem;padding-bottom:4rem}
 .wg-album-grid{grid-template-columns:1fr}
 .wg-grid{grid-template-columns:1fr}
 .wg-item,.wg-item--wide,.wg-item--portrait{grid-column:1;grid-row:auto;min-height:410px}
 .wg-filterbar{gap:.45rem}
 .wg-filter{font-size:.8rem;padding:.62rem .82rem}
 .wg-lightbox__prev,.wg-lightbox__next{top:auto;bottom:1rem;transform:none}
}
