.gallery-page{background:#1a1a1a;min-height:100vh;margin-top:80px}.container{max-width:1200px;margin:0 auto;padding:0 20px}.gallery-header{text-align:center;color:#fff;background:linear-gradient(135deg,#2d2a24 0%,#1a1a1a 100%);border-bottom:2px solid #bc8c4c;padding:80px 0;position:relative;overflow:hidden}.gallery-header:before{content:"📸";opacity:.05;pointer-events:none;color:#bc8c4c;font-size:300px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.gallery-title{font-size:clamp(2rem,5vw,3rem);font-family:var(--font-heading);z-index:1;color:#fff;margin-bottom:15px;position:relative}.gallery-subtitle{opacity:.8;z-index:1;color:#b0b0b0;margin-bottom:30px;font-size:clamp(1rem,2vw,1.2rem);position:relative}.gold-text{color:#bc8c4c}.gallery-stats{z-index:1;flex-wrap:wrap;justify-content:center;gap:30px;margin-top:30px;display:flex;position:relative}.stat-item{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff08;border:1px solid #bc8c4c33;border-radius:60px;align-items:center;gap:10px;padding:15px 30px;display:flex}.stat-icon{color:#bc8c4c;width:24px;height:24px}.stat-value{color:#fff;font-size:1.5rem;font-weight:700;line-height:1}.stat-label{color:#b0b0b0;font-size:.9rem}.gallery-categories{background:#2d2a24;border-bottom:1px solid #bc8c4c33;padding:40px 0}.category-list{flex-wrap:wrap;justify-content:center;gap:15px;display:flex}.category-btn{cursor:pointer;color:#fff;background:#ffffff08;border:1px solid #bc8c4c33;border-radius:50px;align-items:center;gap:10px;min-height:56px;padding:14px 30px;font-weight:600;transition:all .3s;display:flex;position:relative}.category-btn:hover{background:#bc8c4c1a;border-color:#bc8c4c;transform:translateY(-2px)}.category-btn.active{color:#1a1a1a;background:#bc8c4c;border-color:#bc8c4c}.category-icon{align-items:center;font-size:1.2rem;display:flex}.category-icon svg{width:20px;height:20px}.category-name{font-size:1rem}.category-count{background:#0003;border-radius:30px;margin-left:5px;padding:4px 10px;font-size:.85rem}.gallery-content{padding:60px 0}.masonry-grid{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.masonry-item{cursor:pointer;opacity:0;background:#2d2a24;border:1px solid #ffffff0d;border-radius:15px;transition:all .4s cubic-bezier(.2,.9,.3,1);animation:.5s forwards fadeIn;position:relative;overflow:hidden;box-shadow:0 10px 30px #0000004d}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.masonry-item:hover{border-color:#bc8c4c4d;transform:translateY(-8px);box-shadow:0 20px 40px #bc8c4c33}.masonry-item img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.2,.9,.3,1)}.masonry-item:hover img{transform:scale(1.1)}.image-placeholder{z-index:1;background:#2d2a24;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}.placeholder-icon{color:#bc8c4c;width:40px;height:40px;animation:1.5s infinite pulse}@keyframes pulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.masonry-item.loaded .image-placeholder{display:none}.masonry-category-icon{color:#bc8c4c;z-index:2;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#00000080;border:1px solid #bc8c4c4d;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.2rem;transition:all .3s;display:flex;position:absolute;top:15px;left:15px}.masonry-item:hover .masonry-category-icon{color:#1a1a1a;background:#bc8c4c;transform:rotate(360deg)scale(1.1)}.masonry-item.small{aspect-ratio:1;grid-column:span 1}.masonry-item.large{aspect-ratio:1;grid-area:span 2/span 2}.masonry-item.wide{aspect-ratio:2;grid-column:span 2}.masonry-overlay{opacity:0;color:#fff;z-index:3;background:linear-gradient(#0000 0%,#00000080 50%,#000000e6 100%);flex-direction:column;justify-content:flex-end;width:100%;height:100%;padding:20px;transition:opacity .4s;display:flex;position:absolute;top:0;left:0}.masonry-item:hover .masonry-overlay{opacity:1}.masonry-overlay h3{color:#bc8c4c;margin-bottom:5px;font-size:1.1rem;transition:transform .4s .1s;transform:translateY(20px)}.masonry-item:hover .masonry-overlay h3{transform:translateY(0)}.overlay-icon{color:#1a1a1a;background:#bc8c4c;border-radius:50%;width:50px;height:50px;padding:12px;transition:transform .4s cubic-bezier(.2,.9,.3,1);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(0)}.masonry-item:hover .overlay-icon{transform:translate(-50%,-50%)scale(1)}.gallery-lightbox{z-index:2000;background:#000000fa;justify-content:center;align-items:center;width:100%;height:100%;animation:.3s lightboxFadeIn;display:flex;position:fixed;top:0;left:0}@keyframes lightboxFadeIn{0%{opacity:0}to{opacity:1}}.lightbox-close{cursor:pointer;z-index:2001;background:#bc8c4c;border:2px solid #0000;border-radius:50%;justify-content:center;align-items:center;width:54px;height:54px;transition:all .3s;display:flex;position:absolute;top:20px;right:20px}.lightbox-close svg{color:#1a1a1a;width:24px;height:24px;transition:all .3s}.lightbox-close:hover{background:#ff4d4d;transform:rotate(90deg)}.lightbox-close:hover svg{color:#fff}.lightbox-nav{cursor:pointer;color:#fff;z-index:2001;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#bc8c4c33;border:2px solid #bc8c4c;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;transition:all .3s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-nav svg{color:#bc8c4c;width:30px;height:30px;transition:all .3s}.lightbox-nav:hover{background:#bc8c4c;transform:translateY(-50%)scale(1.1)}.lightbox-nav:hover svg{color:#1a1a1a}.lightbox-prev{left:20px}.lightbox-next{right:20px}.lightbox-content{max-width:90%;max-height:90%;position:relative}.lightbox-content img{object-fit:contain;border:2px solid #bc8c4c;border-radius:10px;max-width:100%;max-height:80vh}.lightbox-caption{text-align:center;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#00000080;border:1px solid #bc8c4c4d;border-radius:10px;padding:20px;position:absolute;bottom:-70px;left:0;right:0}.lightbox-caption h2{color:#bc8c4c;margin-bottom:5px;font-size:1.3rem}.lightbox-category{color:#b0b0b0;justify-content:center;align-items:center;gap:8px;font-size:.95rem;display:flex}.lightbox-category svg{color:#bc8c4c;width:16px;height:16px}.lightbox-counter{color:#fff;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#00000080;border:1px solid #bc8c4c4d;border-radius:30px;padding:8px 16px;font-size:.9rem;position:absolute;top:20px;left:20px}@media (max-width:1200px){.masonry-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:1024px){.masonry-grid{grid-template-columns:repeat(2,1fr)}.masonry-item.large,.masonry-item.wide{aspect-ratio:1;grid-column:span 1}}@media (max-width:768px){.gallery-header{padding:50px 0}.gallery-title{font-size:2rem}.gallery-subtitle{padding:0 20px;font-size:1rem}.gallery-stats{gap:15px}.stat-item{padding:12px 20px}.stat-value{font-size:1.2rem}.stat-label{font-size:.8rem}.category-btn{min-height:48px;padding:12px 20px}.masonry-grid{grid-template-columns:1fr;gap:15px;max-width:450px;margin:0 auto}.masonry-item{aspect-ratio:16/9}.lightbox-nav{width:50px;height:50px}.lightbox-nav svg{width:24px;height:24px}.lightbox-caption{bottom:-90px}}@media (max-width:480px){.gallery-stats{flex-direction:column;align-items:center}.stat-item{width:100%;max-width:250px}.category-list{gap:10px}.category-btn{justify-content:center;width:calc(50% - 5px)}.category-name{font-size:.9rem}.masonry-grid{gap:10px}.lightbox-caption{padding:15px;bottom:-100px}.lightbox-caption h2{font-size:1.1rem}}@media (hover:none) and (pointer:coarse){.masonry-item:hover,.masonry-item:hover img{transform:none}.masonry-overlay{opacity:1;background:linear-gradient(#0000 30%,#000000b3 100%)}.overlay-icon{display:none}.category-btn:active{transform:scale(.95)}}@media (prefers-reduced-motion:reduce){.masonry-item,.masonry-item img,.category-btn,.lightbox-close,.lightbox-nav{transition:none;animation:none}.masonry-item:hover,.masonry-item:hover img{transform:none}.placeholder-icon{animation:none}}
