@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@700;800&family=Inter:wght@400;500;600&display=swap";
:root{--gal-accent:#8db63c;--gal-accent-d:#6e9430;--gal-accent-l:#a5cc52;--gal-ink-0:#2e3033;--gal-ink-1:#3d3f44;--gal-ink-2:#5a5c61;--gal-bg-0:#fff;--gal-bg-1:#f7f8f6;--gal-line:#e2e4e0}.gal-wrap{color:var(--gal-ink-1);font-family:Inter,sans-serif}.gal-topbar{z-index:90;background:var(--gal-ink-0);border-bottom:2px solid var(--gal-accent);justify-content:space-between;align-items:center;height:52px;padding:0 32px;display:flex;position:sticky;top:0}.gal-topbar-brand{color:#fff;letter-spacing:.04em;-webkit-user-select:none;user-select:none;font-family:Montserrat,sans-serif;font-size:13px;font-weight:800;text-decoration:none}.gal-topbar-brand span{color:var(--gal-accent-l)}.gal-topbar-back{color:#ffffffa6;letter-spacing:.04em;align-items:center;gap:6px;font-family:Montserrat,sans-serif;font-size:12px;font-weight:700;text-decoration:none;transition:color .15s;display:flex}.gal-topbar-back:hover{color:#fff}.gal-cat-head{background:var(--gal-ink-0);text-align:center;padding:56px 32px 48px;position:relative;overflow:hidden}.gal-cat-head:before,.gal-cat-head:after{content:"";height:2px;position:absolute;left:0;right:0}.gal-cat-head:before{background:linear-gradient(90deg,transparent,var(--gal-accent),transparent);top:0}.gal-cat-head:after{background:linear-gradient(90deg,transparent,var(--gal-accent-d),transparent);bottom:0}.gal-eyebrow{color:var(--gal-accent-l);letter-spacing:.16em;text-transform:uppercase;margin-bottom:12px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:700}.gal-cat-name{color:#fff;letter-spacing:-.03em;margin:0 0 16px;font-family:Montserrat,sans-serif;font-size:clamp(2.6rem,6vw,4.2rem);font-weight:800;line-height:1.05}.gal-cat-desc{color:#ffffffb3;max-width:520px;margin:0 auto 20px;font-size:15px;line-height:1.6}.gal-count-badge{color:var(--gal-accent-l);border:1.5px solid var(--gal-accent);letter-spacing:.06em;padding:4px 14px;font-family:Montserrat,sans-serif;font-size:12px;font-weight:700;display:inline-block}.gal-grid-wrap{max-width:1440px;margin:0 auto;padding:48px 32px 64px}.gal-masonry{columns:4 220px;gap:10px}.gal-item{break-inside:avoid;cursor:pointer;margin-bottom:10px;position:relative;overflow:hidden}.gal-item img{width:100%;transition:transform .35s;display:block}.gal-item-overlay{background:#2e303300;justify-content:center;align-items:center;transition:background .3s;display:flex;position:absolute;inset:0}.gal-item-overlay svg{opacity:0;color:#fff;filter:drop-shadow(0 2px 4px #0006);transition:opacity .3s}.gal-item:hover img{transform:scale(1.04)}.gal-item:hover .gal-item-overlay{background:#2e30337a}.gal-item:hover .gal-item-overlay svg{opacity:1}.gal-empty{text-align:center;opacity:.22;color:var(--gal-ink-0);padding:56px 0;font-family:Montserrat,sans-serif;font-size:13px;font-weight:700}.gal-toc{z-index:80;flex-direction:column;gap:6px;display:flex;position:fixed;top:50%;right:20px;transform:translateY(-50%)}.gal-toc-pill{-webkit-backdrop-filter:blur(8px);cursor:pointer;color:var(--gal-ink-1);white-space:nowrap;text-align:left;text-overflow:ellipsis;background:#ffffffeb;border:1px solid #0000000f;border-radius:100px;align-items:center;gap:7px;max-width:160px;padding:6px 14px 6px 10px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:700;transition:background .2s,color .2s,box-shadow .2s,border-color .2s;display:flex;overflow:hidden;box-shadow:0 2px 8px #0000001a}.gal-toc-pill:hover{background:#fff;box-shadow:0 4px 16px #00000029}.gal-toc-pill.active{background:var(--gal-accent);color:#fff;border-color:#0000;box-shadow:0 4px 16px #8db63c61}.gal-toc-dot{background:var(--gal-accent);border-radius:50%;flex-shrink:0;width:7px;height:7px;transition:background .2s}.gal-toc-pill.active .gal-toc-dot{background:#ffffffbf}.gal-lightbox{z-index:2000;background:#0a0a08f5;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.gal-lb-inner{text-align:center;max-width:90vw;max-height:90vh}.gal-lb-inner img{object-fit:contain;max-width:100%;max-height:80vh}.gal-lb-caption{color:#ffffffc7;margin-top:12px;font-size:14px;line-height:1.5}.gal-lb-counter{color:#ffffff52;letter-spacing:.1em;margin-top:6px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:700}.gal-lb-arrow{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff24;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;font-size:1.25rem;transition:background .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.gal-lb-arrow:hover{background:#ffffff38}.gal-lb-prev{left:24px}.gal-lb-next{right:24px}.gal-lb-close{color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.1rem;transition:background .2s;display:flex;position:absolute;top:16px;right:16px}.gal-lb-close:hover{background:#ffffff38}@media (max-width:768px){.gal-toc{display:none}.gal-topbar{padding:0 16px}.gal-cat-head{padding:40px 16px 36px}.gal-grid-wrap{padding:32px 16px 48px}.gal-masonry{columns:2 140px}.gal-lb-prev{left:8px}.gal-lb-next{right:8px}}
