#g-hero{position:relative;overflow:hidden;text-align:center;background:radial-gradient(110% 90% at 50% 0%,#0B1226 0%,#070B18 55%,#05060B 100%);padding:calc(var(--nav-h) + clamp(2.5rem,5vw,4rem)) clamp(1.25rem,4vw,2rem) clamp(2rem,4vw,3rem)}.g-hero-inner{position:relative;z-index:2;max-width:880px;margin:0 auto}.g-hero-title{font-size:clamp(2.1rem,5vw,4rem);font-weight:800;letter-spacing:-.02em;line-height:1.05;margin:1rem 0 1rem}.g-hero-sub{font-size:clamp(14.5px,1.6vw,19px);color:var(--ink-2);line-height:1.65;font-weight:300;max-width:620px;margin:0 auto}#g-grid{background:#04050A;padding:0 0 clamp(4rem,8vw,7rem)}.g-filterbar{position:sticky;top:calc(clamp(10px,1.4vw,18px) + 60px + 10px);z-index:50;display:flex;justify-content:center;padding:.75rem clamp(1rem,3vw,2rem);pointer-events:none}.g-filters{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:center;background:rgb(6 8 14 / .72);-webkit-backdrop-filter:blur(16px) saturate(1.2);backdrop-filter:blur(16px) saturate(1.2);border:1px solid rgb(191 215 255 / .16);border-radius:999px;padding:.35rem;box-shadow:0 10px 40px rgb(0 0 0 / .45);pointer-events:auto}.g-pill{font-family:inherit;font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);background:#fff0;border:none;border-radius:999px;cursor:pointer;padding:.6rem 1.25rem;transition:all .25s;white-space:nowrap}.g-pill:hover{color:#fff;background:rgb(191 215 255 / .08)}.g-pill.active{color:#05060B;background:var(--accent);box-shadow:0 0 20px rgb(191 215 255 / .45)}.g-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(240px,46vw),1fr));grid-auto-rows:clamp(150px,16.5vw,290px);grid-auto-flow:dense;gap:clamp(10px,1vw,14px);padding:clamp(10px,1vw,14px) clamp(10px,1.4vw,22px) 0}.g-item{position:relative;margin:0;overflow:hidden;cursor:zoom-in;background:#0A0D18;border-radius:8px}.g-grid figure:nth-of-type(10n+1){grid-column:span 2;grid-row:span 2}.g-grid figure:nth-of-type(10n+6){grid-row:span 2}.g-grid figure:nth-of-type(10n+8){grid-column:span 2}.g-item img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .9s cubic-bezier(.22,1,.36,1),filter .5s}.g-item:hover img{transform:scale(1.07)}.g-item-glow{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .4s;background:radial-gradient(60% 45% at 50% 30%,rgb(191 215 255 / .14),transparent 75%),linear-gradient(to top,rgb(4 5 10 / .8) 0%,transparent 45%)}.g-item:hover .g-item-glow{opacity:1}.g-item::after{content:'✦';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(.4);font-size:clamp(20px,2vw,28px);color:var(--accent);text-shadow:0 0 18px rgb(191 215 255 / .9);opacity:0;transition:opacity .35s,transform .45s cubic-bezier(.22,1,.36,1);pointer-events:none;z-index:3}.g-item:hover::after{opacity:1;transform:translate(-50%,-50%) scale(1)}.g-cap{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:2rem 1rem .85rem;font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#fff;opacity:0;transform:translateY(10px);transition:opacity .4s,transform .4s;pointer-events:none}.g-cap:empty{display:none}.g-item:hover .g-cap{opacity:1;transform:none}.g-item.g-hidden{display:none}.g-empty{text-align:center;padding:clamp(3rem,7vw,5rem) 1rem;color:var(--ink-3)}.g-empty svg{color:rgb(191 215 255 / .4);margin-bottom:1rem}.g-empty p{font-size:clamp(14px,1.3vw,16px);font-weight:300;letter-spacing:.04em}.g-lightbox{position:fixed;inset:0;z-index:200;display:none;background:rgb(3 4 9 / .96);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);align-items:center;justify-content:center}.g-lightbox.open{display:flex}.g-lb-img{max-width:min(92vw,1500px);max-height:84vh;border-radius:8px;box-shadow:0 40px 120px rgb(0 0 0 / .8),0 0 80px rgb(191 215 255 / .1);animation:g-lb-in .35s cubic-bezier(.22,1,.36,1)}@keyframes g-lb-in{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.g-lb-cap{position:absolute;bottom:clamp(1rem,3vh,2rem);left:50%;transform:translateX(-50%);font-size:.85rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}.g-lb-close,.g-lb-prev,.g-lb-next{position:absolute;background:rgb(255 255 255 / .06);border:1px solid var(--border);color:#fff;cursor:pointer;border-radius:50%;width:48px;height:48px;font-size:26px;line-height:1;display:flex;align-items:center;justify-content:center;transition:all .25s;z-index:2}.g-lb-close:hover,.g-lb-prev:hover,.g-lb-next:hover{background:var(--accent);color:#05060B;border-color:var(--accent);box-shadow:0 0 24px rgb(191 215 255 / .5)}.g-lb-close{top:clamp(1rem,3vh,2rem);right:clamp(1rem,3vw,2rem)}.g-lb-prev{left:clamp(.75rem,2.5vw,2rem)}.g-lb-next{right:clamp(.75rem,2.5vw,2rem)}@media (max-width:640px){.g-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:42vw;gap:6px;padding:6px 6px 0}.g-grid figure:nth-of-type(10n+1){grid-column:span 2;grid-row:span 1}.g-grid figure:nth-of-type(10n+6){grid-row:span 1}.g-grid figure:nth-of-type(10n+8){grid-column:span 1}.g-filterbar{top:calc(clamp(10px,1.4vw,18px) + 60px + 6px)}.g-lb-prev{left:.5rem}.g-lb-next{right:.5rem}.g-lb-prev,.g-lb-next{width:40px;height:40px;font-size:22px}}@media (prefers-reduced-motion:reduce){.g-item img,.g-item::after,.g-cap{transition:none}}