/* Gallery archive — filter bar + masonry. Filtering is pure CSS (radio inputs),
   so it works with JavaScript disabled. */
.filter-bar{display:flex;gap:6px 28px;flex-wrap:wrap;margin-bottom:clamp(30px,4vw,56px);border-bottom:1px solid var(--hair);padding-bottom:18px}
.fb{position:relative;font-family:var(--serif);font-size:clamp(1.15rem,1.8vw,1.5rem);color:var(--mute-2);cursor:pointer;transition:color .3s;padding:4px 0}
.fb:hover{color:var(--ivory)}
.fb::after{content:"";position:absolute;left:0;right:0;bottom:-19px;height:1px;background:var(--ivory);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease)}
#flt-neon:checked ~ .filter-bar .fb-all,#flt-home:checked ~ .filter-bar .fb-home,#flt-business:checked ~ .filter-bar .fb-business,
#flt-events:checked ~ .filter-bar .fb-events,#flt-gifts:checked ~ .filter-bar .fb-gifts{color:var(--ivory);font-style:italic}
#flt-neon:checked ~ .filter-bar .fb-all::after,#flt-home:checked ~ .filter-bar .fb-home::after,#flt-business:checked ~ .filter-bar .fb-business::after,
#flt-events:checked ~ .filter-bar .fb-events::after,#flt-gifts:checked ~ .filter-bar .fb-gifts::after{transform:none}
#flt-neon:focus-visible ~ .filter-bar .fb-all,#flt-home:focus-visible ~ .filter-bar .fb-home,#flt-business:focus-visible ~ .filter-bar .fb-business,
#flt-events:focus-visible ~ .filter-bar .fb-events,#flt-gifts:focus-visible ~ .filter-bar .fb-gifts{outline:1px solid var(--champagne);outline-offset:4px}
#flt-home:checked ~ .gal .tile:not(.c-home),#flt-business:checked ~ .gal .tile:not(.c-business),
#flt-events:checked ~ .gal .tile:not(.c-events),#flt-gifts:checked ~ .gal .tile:not(.c-gifts),#flt-3d:checked ~ .gal .tile:not(.c-3d),#flt-neon:checked ~ .gal .tile.c-3d{display:none}

/* masonry: natural proportions, no forced squares */
.archive .gal{grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(10px,1.2vw,18px)}
.archive .gal .tile{aspect-ratio:1}
@media(max-width:1100px){.archive .gal{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:800px){.archive .gal{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* two galleries: neon (with its own tabs) and 3D */
.gal-pick{display:grid;grid-template-columns:1fr 1fr;gap:clamp(10px,1.6vw,22px);max-width:900px;margin-top:clamp(30px,4vw,52px)}
.gp{position:relative;display:block;overflow:hidden;border-radius:18px;aspect-ratio:4/5;background:var(--ink-800);isolation:isolate;
 box-shadow:0 0 0 1px rgba(255,255,255,.1);transition:box-shadow .4s,transform .4s var(--ease)}
.gp img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.gp::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,4,7,0) 30%,rgba(5,4,7,.55) 58%,rgba(5,4,7,.95) 100%)}
.gp:hover,.gp:focus-visible{transform:translateY(-3px);box-shadow:0 0 0 1px var(--gc),0 20px 60px -22px var(--gc)}
.gp:hover img{transform:scale(1.05)}
.gp-neon{--gc:#FF4FD6}.gp-3d{--gc:#5B8CFF}
.gp-cap{position:absolute;left:0;right:0;bottom:0;z-index:1;display:flex;flex-direction:column;gap:6px;padding:clamp(14px,2vw,24px);padding-right:58px}
.gp-cap b{font-family:var(--serif);font-weight:300;font-size:clamp(1.6rem,3.2vw,2.8rem);line-height:1;color:var(--ivory)}
.gp-cap i{font-style:normal;font-family:var(--mono);font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(244,238,228,.7)}
.gp-cap::after{content:"\2192";position:absolute;right:clamp(14px,2vw,24px);bottom:clamp(14px,2vw,24px);width:34px;height:34px;display:grid;place-items:center;
 border-radius:50%;background:var(--gc);color:#0A080E;font-family:var(--sans);font-weight:700;box-shadow:0 0 18px -2px var(--gc)}
.kind-bar{display:inline-flex;gap:6px;padding:5px;margin-bottom:22px;border-radius:999px;background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px var(--hair-2)}
.kb{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:999px;cursor:pointer;font-family:var(--sans);font-size:.82rem;font-weight:600;
 letter-spacing:.04em;color:var(--mute);transition:background-color .35s,color .35s,box-shadow .35s}
.kb span{font-family:var(--mono);font-size:.62rem;font-weight:500}
.kb:hover{color:var(--ivory)}
#flt-neon:checked ~ .kind-bar .kb-neon,#flt-home:checked ~ .kind-bar .kb-neon,#flt-business:checked ~ .kind-bar .kb-neon,
#flt-events:checked ~ .kind-bar .kb-neon,#flt-gifts:checked ~ .kind-bar .kb-neon{background:#FF4FD6;color:#160812;box-shadow:0 6px 24px -8px #FF4FD6}
#flt-3d:checked ~ .kind-bar .kb-3d{background:#5B8CFF;color:#060A18;box-shadow:0 6px 24px -8px #5B8CFF}
#flt-neon:focus-visible ~ .kind-bar .kb-neon,#flt-3d:focus-visible ~ .kind-bar .kb-3d{outline:1px solid var(--champagne);outline-offset:3px}
#flt-3d:checked ~ .filter-bar{display:none}
@media(max-width:640px){.gp{border-radius:14px}.gp-cap{gap:5px;padding:12px 44px 14px 12px}.gp-cap b{font-size:1.45rem}.gp-cap i{font-size:.54rem;letter-spacing:.1em}.gp-more{display:none}
 .filter-bar{gap:6px 18px}.fb{font-size:1.05rem}
 .gp-cap::after{right:12px;bottom:14px;width:28px;height:28px;font-size:.8rem}.kb{padding:9px 15px;font-size:.78rem}}

/* the page opens on the two cards; a gallery shows only once picked (motion-free fallback: all visible) */
html[data-gview="pick"] .archive-sec{display:none}
html[data-gview="open"] .page-hero{display:none}
html[data-gview="open"] .archive-sec{padding-top:clamp(112px,13vw,170px)}
.g-back{display:none}
html[data-gview="open"] .g-back{grid-column:1 / -1;justify-self:start;display:inline-flex;align-items:center;gap:8px;margin-bottom:22px;padding:9px 16px;
 border-radius:999px;font-family:var(--sans);font-size:.78rem;font-weight:600;letter-spacing:.03em;color:var(--ivory);
 background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px var(--hair-2);transition:background-color .3s}
html[data-gview="open"] .g-back:hover{background:rgba(255,255,255,.1)}
