.empty-gallery-message{text-align:center;padding:80px 20px;background:#fff;border-radius:24px;box-shadow:0 10px 30px #0000000a;border:1px solid rgba(0,0,0,.04);margin-top:40px}.empty-gallery-message p{font-size:1.2rem;color:#7a6e6b;font-weight:700}.gallery-container{max-width:1200px;margin:0 auto;padding:0 20px}.gallery-hero{text-align:center;padding:80px 20px 45px;background:linear-gradient(135deg,#eef9e6,#fff6e6);border-bottom:1px solid rgba(0,0,0,.03);margin-top:64px;border-bottom-left-radius:40px;border-bottom-right-radius:40px;position:relative}.breadcrumb{max-width:1200px;margin:0 auto 20px;text-align:left}.back-link-top{color:#7a6e6b;text-decoration:none;font-weight:700;font-size:.9rem;transition:color .2s;background:#ffffffb3;padding:6px 14px;border-radius:20px;border:1px solid rgba(0,0,0,.04)}.back-link-top:hover{color:#8cc63f;background:#fff}.gallery-hero h1{font-size:2.6rem;color:#4a3e3d;margin-bottom:15px;font-weight:800}.gallery-hero p{font-size:1.1rem;color:#7a6e6b;max-width:700px;margin:0 auto 20px;line-height:1.8}.stats-pills{display:flex;justify-content:center;gap:10px}.stats-pills .pill{background-color:#fff;color:#6a5a55;padding:6px 16px;border-radius:20px;font-size:.9rem;font-weight:700;border:1px solid rgba(0,0,0,.05);box-shadow:0 2px 5px #00000005}.gallery-masonry{column-count:1;column-gap:20px;margin-top:40px;transition:opacity .2s ease-in-out}@media (min-width: 480px){.gallery-masonry{column-count:2}}@media (min-width: 768px){.gallery-masonry{column-count:3}}@media (min-width: 1024px){.gallery-masonry{column-count:4}}.gallery-item{display:inline-block;width:100%;margin-bottom:20px;break-inside:avoid;border-radius:16px;overflow:hidden;background-color:#fff;box-shadow:0 6px 16px #00000008;border:1px solid rgba(0,0,0,.03);transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s ease;cursor:pointer;position:relative}.gallery-item:hover{transform:translateY(-6px);box-shadow:0 12px 28px #00000014}.gallery-image{width:100%;height:auto;display:block;object-fit:cover;opacity:0;transition:opacity .35s ease}.gallery-item-info{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,#0009,#0000);color:#fff;padding:20px 15px 12px;font-size:.85rem;font-weight:700;opacity:0;transition:opacity .25s ease;pointer-events:none}.gallery-item:hover .gallery-item-info{opacity:1}.skeleton-shimmer{position:absolute;top:0;left:0;width:100%;height:100%;min-height:250px;background:linear-gradient(90deg,#f2ece9 25%,#e8deda,#f2ece9 75%);background-size:200% 100%;animation:shimmer 1.6s infinite linear}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.load-more-container{text-align:center;margin:50px 0 60px}.load-more-btn{background-color:#fff;border:1px solid rgba(0,0,0,.1);color:#6a5a55;font-weight:700;font-size:1rem;padding:15px 44px;border-radius:30px;cursor:pointer;transition:all .25s ease;box-shadow:0 4px 10px #00000005}.load-more-btn:hover{background-color:#fcfcfc;border-color:#8cc63f;color:#8cc63f;transform:translateY(-2px);box-shadow:0 8px 20px #0000000f}.load-more-btn:disabled{display:none}.gallery-footer-actions{text-align:center;margin:60px 0 100px;border-top:1px dashed rgba(0,0,0,.06);padding-top:40px}.back-to-gallery-link{display:inline-flex;align-items:center;gap:8px;color:#8cc63f;text-decoration:none;font-weight:800;font-size:1rem;background-color:#fff;padding:12px 30px;border-radius:30px;border:1.5px solid rgba(140,198,63,.25);box-shadow:0 4px 12px #00000005;transition:all .25s ease}.back-to-gallery-link:hover{background-color:#8cc63f;color:#fff;transform:translateY(-2px);box-shadow:0 8px 20px #8cc63f33}.lightbox-modal{display:none;position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#12100ff5;backdrop-filter:blur(12px);z-index:2000;justify-content:center;align-items:center;flex-direction:column}.lightbox-content-wrapper{position:relative;display:flex;justify-content:center;align-items:center;width:100%;height:100%;max-width:1200px;padding:40px;box-sizing:border-box}.lightbox-image-container{display:flex;justify-content:center;align-items:center;width:100%;height:100%}.lightbox-image{max-width:100%;max-height:80vh;object-fit:contain;border-radius:12px;box-shadow:0 20px 50px #00000080;user-select:none;opacity:0;transform:scale(.96);transition:opacity .2s ease,transform .2s cubic-bezier(.2,.8,.2,1)}.lightbox-image.loaded{opacity:1;transform:scale(1)}.lightbox-btn{position:absolute;background:#ffffff14;border:none;color:#fff;font-size:2.2rem;width:64px;height:64px;border-radius:50%;cursor:pointer;display:flex;justify-content:center;align-items:center;transition:all .2s ease;z-index:2010;backdrop-filter:blur(4px)}.lightbox-btn:hover{background:#fff3;transform:scale(1.06)}.lightbox-prev{left:30px}.lightbox-next{right:30px}.lightbox-close{position:absolute;top:25px;right:30px;background:none;border:none;color:#fff;font-size:3rem;cursor:pointer;opacity:.6;transition:opacity .2s;z-index:2020}.lightbox-close:hover{opacity:1}.lightbox-info-bar{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,#000000d9,#0000);padding:40px 60px 50px;color:#fff;display:flex;justify-content:space-between;align-items:flex-end;pointer-events:none}.lightbox-info-left{pointer-events:auto}.lightbox-info-right{pointer-events:auto;text-align:right}.lightbox-title{font-size:1.4rem;font-weight:800;margin-bottom:8px;color:#f7f5f4}.lightbox-desc{font-size:.95rem;opacity:.75}.lightbox-indicator{font-size:1.1rem;font-weight:800;margin-bottom:10px;letter-spacing:1px;color:#e8deda}.lightbox-download-link{color:#b5f57c;text-decoration:none;font-size:.95rem;font-weight:700;transition:color .2s;display:inline-flex;align-items:center;gap:6px;background:#b5f57c14;padding:6px 14px;border-radius:20px;border:1px solid rgba(181,245,124,.2)}.lightbox-download-link:hover{color:#d1ff9e;background:#b5f57c26;border-color:#b5f57c66;text-decoration:none}@media (max-width: 768px){.gallery-hero{padding:60px 16px 30px;border-bottom-left-radius:25px;border-bottom-right-radius:25px}.gallery-hero h1{font-size:2.1rem}.lightbox-content-wrapper{padding:20px}.lightbox-btn{width:48px;height:48px;font-size:1.6rem}.lightbox-prev{left:10px}.lightbox-next{right:10px}.lightbox-close{top:15px;right:20px;font-size:2.5rem}.lightbox-info-bar{flex-direction:column;align-items:center;text-align:center;gap:15px;padding:20px 20px 30px;background:#0f0d0cd9}.lightbox-info-right{text-align:center}.lightbox-image{max-height:70vh}}
