:root{--bg: #090e10;--bg-dark: #050809;--teal: #58d8e0;--text: #fff;--f1: "Montserrat", sans-serif;--f2: "Montserrat", sans-serif;--f3: "Montserrat", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg);color:var(--text);font-family:var(--f1);overflow-x:hidden;-webkit-font-smoothing:antialiased}.gallery-nav{position:fixed;top:0;left:0;right:0;padding:2rem 4rem;display:flex;justify-content:space-between;align-items:center;z-index:1000;background:linear-gradient(to bottom,rgba(9,14,16,.8),transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.back-link{color:#fff;text-decoration:none;font-size:.8rem;letter-spacing:.2em;font-weight:500;display:flex;align-items:center;gap:1rem;transition:opacity .3s}.back-link:hover{opacity:.6}.gallery-logo{font-family:var(--f2);font-weight:800;letter-spacing:.3em;font-size:1.2rem}.gallery-hero{height:60vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:4rem;background:radial-gradient(circle at center,rgba(88,216,224,.05) 0%,transparent 70%)}.gallery-hero h1{font-size:clamp(3rem,8vw,6rem);font-weight:900;letter-spacing:-.02em;margin-bottom:1rem;text-transform:uppercase}.gallery-subtitle{font-size:1rem;letter-spacing:.4em;color:var(--teal);opacity:.8;text-transform:uppercase}.gallery-filters{display:flex;justify-content:center;gap:3rem;margin-bottom:4rem}.filter-btn{background:none;border:none;color:#fff6;font-family:var(--f3);font-size:.7rem;letter-spacing:.3em;cursor:pointer;transition:color .3s;text-transform:uppercase;position:relative;padding-bottom:.5rem}.filter-btn.active{color:var(--teal)}.filter-btn.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--teal)}.gallery-container{padding:0 4rem 8rem}.masonry-grid{columns:3;column-gap:2rem}@media (max-width: 1200px){.masonry-grid{columns:2}}@media (max-width: 768px){.masonry-grid{columns:1}}.masonry-item{break-inside:avoid;margin-bottom:2rem;position:relative;border-radius:1.5rem;overflow:hidden;background:var(--bg-dark);cursor:zoom-in;transition:transform .6s cubic-bezier(.2,.8,.2,1)}.masonry-item:hover{transform:scale(1.02)}.masonry-item img,.masonry-item video{width:100%;display:block;transition:transform .8s}.masonry-item:hover img{transform:scale(1.05)}.item-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;flex-direction:column;justify-content:flex-end;padding:2rem;opacity:0;transition:opacity .4s}.masonry-item:hover .item-overlay{opacity:1}.item-title{font-size:.75rem;letter-spacing:.1em;font-weight:600;margin-bottom:.5rem}.item-category{font-size:.6rem;letter-spacing:.2em;opacity:.6;text-transform:uppercase}#lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000f2;z-index:2000;display:none;justify-content:center;align-items:center;padding:4rem;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}#lightbox.active{display:flex}.lightbox-content{max-width:100%;max-height:100%;object-fit:contain;border-radius:.5rem;box-shadow:0 40px 100px #000c}.lightbox-close{position:absolute;top:2rem;right:2rem;color:#fff;font-size:2rem;cursor:pointer;opacity:.5;transition:opacity .3s}.lightbox-close:hover{opacity:1}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.masonry-item{animation:fadeIn 1s ease-out backwards}
