.hero-section.svelte-1f9ij1k{position:relative;height:60vh;min-height:400px;display:flex;align-items:center;justify-content:center;overflow:hidden;margin-bottom:4rem}.hero-section.svelte-1f9ij1k .hero-image:where(.svelte-1f9ij1k){position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.hero-section.svelte-1f9ij1k .hero-image:where(.svelte-1f9ij1k):before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:#0006;z-index:2}.hero-section.svelte-1f9ij1k .hero-image:where(.svelte-1f9ij1k) img:where(.svelte-1f9ij1k){width:100%;height:100%;object-fit:cover}.hero-section.svelte-1f9ij1k .hero-content:where(.svelte-1f9ij1k){position:relative;z-index:10;text-align:center;color:#fff;max-width:800px;padding:0 2rem}.hero-section.svelte-1f9ij1k .hero-content:where(.svelte-1f9ij1k) h1:where(.svelte-1f9ij1k){font-size:3rem;font-weight:300;margin:0 0 1rem;letter-spacing:.05em}@media (max-width: 768px){.hero-section.svelte-1f9ij1k .hero-content:where(.svelte-1f9ij1k) h1:where(.svelte-1f9ij1k){font-size:2rem}}.hero-section.svelte-1f9ij1k .hero-content:where(.svelte-1f9ij1k) p:where(.svelte-1f9ij1k){font-size:1.2rem;line-height:1.5;margin:0;font-weight:300}@media (max-width: 768px){.hero-section.svelte-1f9ij1k .hero-content:where(.svelte-1f9ij1k) p:where(.svelte-1f9ij1k){font-size:1rem}}.gallery-section.svelte-1f9ij1k{padding:0 0 4rem}.gallery-section.svelte-1f9ij1k .container:where(.svelte-1f9ij1k){max-width:1400px;width:100%;margin:0 auto;padding:0 1.5rem}@media (max-width: 768px){.gallery-section.svelte-1f9ij1k .container:where(.svelte-1f9ij1k){padding:0 1rem}}.gallery-layout.svelte-1f9ij1k{display:grid;grid-template-columns:320px 1fr;gap:2rem}@media (max-width: 1200px){.gallery-layout.svelte-1f9ij1k{grid-template-columns:280px 1fr}}@media (max-width: 991px){.gallery-layout.svelte-1f9ij1k{grid-template-columns:1fr;gap:1.5rem}}.category-filter.svelte-1f9ij1k{position:sticky;top:5rem;height:fit-content;padding-right:1rem}@media (max-width: 991px){.category-filter.svelte-1f9ij1k{position:relative;top:0;padding-right:0}}.category-filter.svelte-1f9ij1k .filter-list:where(.svelte-1f9ij1k){display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem;padding-bottom:1rem}.category-filter.svelte-1f9ij1k .filter-list:where(.svelte-1f9ij1k)::-webkit-scrollbar{width:4px}.category-filter.svelte-1f9ij1k .filter-list:where(.svelte-1f9ij1k)::-webkit-scrollbar-track{background:transparent}.category-filter.svelte-1f9ij1k .filter-list:where(.svelte-1f9ij1k)::-webkit-scrollbar-thumb{background-color:#ccc;border-radius:2px}.category-filter.svelte-1f9ij1k .filter-list:where(.svelte-1f9ij1k)::-webkit-scrollbar-thumb:hover{background-color:#999}@media (max-width: 991px){.category-filter.svelte-1f9ij1k .filter-list:where(.svelte-1f9ij1k){grid-template-columns:repeat(4,1fr);gap:.75rem;max-height:none;overflow:visible;padding-bottom:0}}@media (max-width: 768px){.category-filter.svelte-1f9ij1k .filter-list:where(.svelte-1f9ij1k){grid-template-columns:repeat(3,1fr)}}@media (max-width: 480px){.category-filter.svelte-1f9ij1k .filter-list:where(.svelte-1f9ij1k){grid-template-columns:repeat(2,1fr);gap:.5rem}}.category-filter.svelte-1f9ij1k .filter-item:where(.svelte-1f9ij1k){position:relative;padding:.8rem;background:transparent;border:1px solid #e0e0e0;border-radius:8px;cursor:pointer;overflow:hidden;transition:all .3s ease;text-align:left}@media (max-width: 768px){.category-filter.svelte-1f9ij1k .filter-item:where(.svelte-1f9ij1k){padding:.7rem}}.category-filter.svelte-1f9ij1k .filter-item:where(.svelte-1f9ij1k):hover{border-color:#000;transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.category-filter.svelte-1f9ij1k .filter-item:where(.svelte-1f9ij1k):hover .filter-background:where(.svelte-1f9ij1k){opacity:.03}.category-filter.svelte-1f9ij1k .filter-item:where(.svelte-1f9ij1k):hover .filter-icon:where(.svelte-1f9ij1k){transform:scale(1.1);color:#000}.category-filter.svelte-1f9ij1k .filter-item.active:where(.svelte-1f9ij1k){background:#000;border-color:#000;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.category-filter.svelte-1f9ij1k .filter-item.active:where(.svelte-1f9ij1k) .filter-background:where(.svelte-1f9ij1k){opacity:.1}.category-filter.svelte-1f9ij1k .filter-item.active:where(.svelte-1f9ij1k) .filter-icon:where(.svelte-1f9ij1k){color:#fff;transform:scale(1.1)}.category-filter.svelte-1f9ij1k .filter-item.active:where(.svelte-1f9ij1k) .filter-text:where(.svelte-1f9ij1k) .name:where(.svelte-1f9ij1k){color:#fff}.category-filter.svelte-1f9ij1k .filter-item.active:where(.svelte-1f9ij1k) .filter-text:where(.svelte-1f9ij1k) .count:where(.svelte-1f9ij1k){color:#ffffffb3}.category-filter.svelte-1f9ij1k .filter-content:where(.svelte-1f9ij1k){position:relative;z-index:2;display:flex;flex-direction:column;gap:.5rem}.category-filter.svelte-1f9ij1k .filter-background:where(.svelte-1f9ij1k){position:absolute;top:0;left:0;width:100%;height:100%;background:currentColor;opacity:0;transition:opacity .3s ease;z-index:1}.category-filter.svelte-1f9ij1k .filter-icon:where(.svelte-1f9ij1k){display:flex;align-items:center;justify-content:center;color:#666;transition:all .3s ease;height:20px}.category-filter.svelte-1f9ij1k .filter-icon:where(.svelte-1f9ij1k) svg:where(.svelte-1f9ij1k){width:20px;height:20px}.category-filter.svelte-1f9ij1k .filter-text:where(.svelte-1f9ij1k){display:flex;flex-direction:column;gap:.15rem}.category-filter.svelte-1f9ij1k .filter-text:where(.svelte-1f9ij1k) .name:where(.svelte-1f9ij1k){font-size:.85rem;font-weight:500;color:#333;transition:color .3s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.category-filter.svelte-1f9ij1k .filter-text:where(.svelte-1f9ij1k) .count:where(.svelte-1f9ij1k){font-size:.75rem;color:#888;transition:color .3s ease}.loading-state.svelte-1f9ij1k{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 0;color:#666}.loading-state.svelte-1f9ij1k .loading-spinner:where(.svelte-1f9ij1k){width:40px;height:40px;border:3px solid #f3f3f3;border-top:3px solid #333;border-radius:50%;animation:svelte-1f9ij1k-spin 1s linear infinite;margin-bottom:1rem}@keyframes svelte-1f9ij1k-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.gallery-content.svelte-1f9ij1k{flex:1;min-width:0}.gallery-content.svelte-1f9ij1k .gallery-grid:where(.svelte-1f9ij1k){display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;opacity:1;transition:opacity .3s ease}.gallery-content.svelte-1f9ij1k .gallery-grid.loading:where(.svelte-1f9ij1k){opacity:.5}@media (max-width: 1400px){.gallery-content.svelte-1f9ij1k .gallery-grid:where(.svelte-1f9ij1k){grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width: 991px){.gallery-content.svelte-1f9ij1k .gallery-grid:where(.svelte-1f9ij1k){grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem}}@media (max-width: 480px){.gallery-content.svelte-1f9ij1k .gallery-grid:where(.svelte-1f9ij1k){grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem}}.gallery-item.svelte-1f9ij1k{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:8px;cursor:pointer;border:none;padding:0;width:100%;background:#f5f5f5;transition:transform .3s ease,box-shadow .3s ease}.gallery-item.svelte-1f9ij1k:hover{transform:translateY(-5px);box-shadow:0 10px 30px #00000026}.gallery-item.svelte-1f9ij1k:hover img:where(.svelte-1f9ij1k){transform:scale(1.05)}.gallery-item.svelte-1f9ij1k:hover .image-overlay:where(.svelte-1f9ij1k){opacity:1;transform:translateY(0)}.gallery-item.svelte-1f9ij1k:focus{outline:2px solid #333;outline-offset:2px}.gallery-item.svelte-1f9ij1k img:where(.svelte-1f9ij1k){width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.gallery-item.svelte-1f9ij1k .image-overlay:where(.svelte-1f9ij1k){position:absolute;bottom:0;left:0;right:0;padding:1.5rem;background:linear-gradient(to top,rgba(0,0,0,.8),transparent);color:#fff;opacity:0;transform:translateY(20px);transition:all .3s ease}@media (max-width: 768px){.gallery-item.svelte-1f9ij1k .image-overlay:where(.svelte-1f9ij1k){opacity:1;transform:none;padding:1rem}}.gallery-item.svelte-1f9ij1k .image-overlay:where(.svelte-1f9ij1k) h3:where(.svelte-1f9ij1k){font-size:1.1rem;font-weight:400;margin:0 0 .3rem;line-height:1.3}.gallery-item.svelte-1f9ij1k .image-overlay:where(.svelte-1f9ij1k) .category-tag:where(.svelte-1f9ij1k){font-size:.8rem;opacity:.8;text-transform:uppercase;letter-spacing:.05em}.gallery-stats.svelte-1f9ij1k{text-align:center;margin-top:3rem;padding-top:2rem;border-top:1px solid #e0e0e0}.gallery-stats.svelte-1f9ij1k p:where(.svelte-1f9ij1k){color:#666;font-size:.9rem;margin:0}.modal.svelte-1f9ij1k{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000f2;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}@media (max-width: 768px){.modal.svelte-1f9ij1k{padding:1rem}}.modal.svelte-1f9ij1k .modal-content:where(.svelte-1f9ij1k){position:relative;max-width:90vw;max-height:90vh;border-radius:8px;overflow:hidden}.modal.svelte-1f9ij1k .modal-image-container:where(.svelte-1f9ij1k){position:relative;width:100%;height:100%}.modal.svelte-1f9ij1k .modal-image-container:where(.svelte-1f9ij1k) img:where(.svelte-1f9ij1k){max-width:100%;max-height:85vh;object-fit:contain;border-radius:4px}.modal.svelte-1f9ij1k .modal-caption:where(.svelte-1f9ij1k){position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.9),transparent);padding:2rem;color:#fff}@media (max-width: 768px){.modal.svelte-1f9ij1k .modal-caption:where(.svelte-1f9ij1k){padding:1rem}}.modal.svelte-1f9ij1k .modal-caption:where(.svelte-1f9ij1k) h3:where(.svelte-1f9ij1k){margin:0 0 .5rem;font-size:1.3rem;font-weight:400}.modal.svelte-1f9ij1k .modal-caption:where(.svelte-1f9ij1k) p:where(.svelte-1f9ij1k){margin:0 0 .5rem;font-size:.9rem;opacity:.8;text-transform:uppercase;letter-spacing:.05em}.modal.svelte-1f9ij1k .modal-caption:where(.svelte-1f9ij1k) .modal-counter:where(.svelte-1f9ij1k){font-size:.8rem;opacity:.7}.modal.svelte-1f9ij1k .close-button:where(.svelte-1f9ij1k){position:absolute;top:1rem;right:1rem;background:#00000080;border:none;color:#fff;cursor:pointer;padding:.8rem;z-index:1010;transition:all .3s ease;border-radius:50%}.modal.svelte-1f9ij1k .close-button:where(.svelte-1f9ij1k):hover{background:#000c;transform:scale(1.1)}.modal.svelte-1f9ij1k .close-button:where(.svelte-1f9ij1k) svg:where(.svelte-1f9ij1k){width:20px;height:20px}.modal.svelte-1f9ij1k .nav-button:where(.svelte-1f9ij1k){position:absolute;top:50%;transform:translateY(-50%);background:#00000080;border:none;color:#fff;width:50px;height:50px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:1010}@media (max-width: 768px){.modal.svelte-1f9ij1k .nav-button:where(.svelte-1f9ij1k){width:40px;height:40px}}.modal.svelte-1f9ij1k .nav-button:where(.svelte-1f9ij1k):hover{background:#000c;transform:translateY(-50%) scale(1.1)}.modal.svelte-1f9ij1k .nav-button.prev:where(.svelte-1f9ij1k){left:1rem}.modal.svelte-1f9ij1k .nav-button.next:where(.svelte-1f9ij1k){right:1rem}.modal.svelte-1f9ij1k .nav-button:where(.svelte-1f9ij1k) svg:where(.svelte-1f9ij1k){width:24px;height:24px}@media (max-width: 768px){.modal.svelte-1f9ij1k .nav-button:where(.svelte-1f9ij1k) svg:where(.svelte-1f9ij1k){width:20px;height:20px}}
