.gallery-section{padding:120px 0 100px;background-color:#f9f9f9}@media (max-width:992px){.gallery-section{padding:100px 15px 80px}}@media (max-width:768px){.gallery-section{padding:80px 15px 60px}}@media (max-width:576px){.gallery-section{padding:60px 15px 40px}.container{padding:0 10px}}.gallery-section .section-title{transform:translateY(20px);padding:10px 15px 30px;margin-bottom:50px;transition:opacity .6s,transform .6s;opacity:0;text-align:center}.gallery-section .section-title.in-view{transform:translateY(0);opacity:1}.gallery-section .section-title h2{font-size:2.2rem;font-weight:700;margin-bottom:15px;color:#0057b8}.gallery-section .section-title span{color:#4e92e3}.gallery-section .section-title p{font-size:1.1rem;color:#666;max-width:700px;margin:0 auto}.gallery-tools{padding:15px;justify-content:space-between;flex-wrap:wrap;margin-bottom:30px;align-items:center;box-shadow:0 5px 15px rgba(0,0,0,.05);border-radius:8px;background:#fff;display:flex}.filter-buttons{flex-wrap:wrap;gap:10px;display:flex}.filter-btn{padding:8px 15px;border:none;font-weight:500;color:#555;transition:all .3s ease;background-color:#eaeaea;border-radius:5px;cursor:pointer}.filter-btn:hover{background-color:#ddd}.filter-btn.active{color:#fff;background-color:#0057b8}.view-buttons{flex-wrap:wrap;gap:10px;display:flex}.view-btn{height:40px;justify-content:center;border:1px solid #eaeaea;color:#555;transition:all .3s ease;background-color:#fff;align-items:center;border-radius:5px;cursor:pointer;width:40px;display:flex}.view-btn i{font-size:16px}.view-btn:hover{background-color:#f5f5f5}.view-btn.active{border-color:#0057b8;color:#fff;background-color:#0057b8}.gallery-container{transition:all .3s ease;position:relative}.gallery-container.grid-view{grid-template-columns:repeat(3,1fr);grid-gap:30px;display:grid}.gallery-container.list-view{flex-direction:column;gap:20px;display:flex}.gallery-container.list-view .gallery-item{height:auto;flex-direction:row;align-items:stretch;display:flex}.gallery-container.list-view .gallery-image{flex:1;max-width:300px}.gallery-container.list-view .gallery-info{flex:2;padding:30px;justify-content:space-between;flex-direction:column;display:flex}.gallery-item{animation:fadeIn .5s forwards;overflow:hidden;transform:translateY(20px);transition:all .3s ease;position:relative;opacity:0;background-color:#fff;box-shadow:0 5px 15px rgba(0,0,0,.08);border-radius:10px;animation-play-state:paused}.gallery-item:hover{transform:translateY(-5px);box-shadow:0 15px 30px rgba(0,0,0,.1)}@keyframes fadeIn{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.gallery-item.in-view{animation-play-state:running}.gallery-image{height:250px;overflow:hidden;position:relative}.gallery-image img{height:100%;transition:transform .5s ease;object-fit:cover;width:100%}.gallery-item:hover .gallery-image img{transform:scale(1.05)}.gallery-info{padding:20px;background-color:#fff}.gallery-info h3{font-weight:600;margin-bottom:10px;color:#333}.gallery-info p{font-size:14px;margin-bottom:15px;color:#666;line-height:1.6}.gallery-actions{justify-content:space-between;margin-top:15px;display:flex}.action-btn,.zoom-btn{padding:8px 15px;font-size:14px;border:none;font-weight:500;transition:all .3s ease;border-radius:5px;cursor:pointer}.action-btn{color:#fff;background-color:#0057b8}.action-btn:hover{background-color:#004392}.zoom-btn{color:#333;background-color:#f1f1f1}.zoom-btn:hover{background-color:#e0e0e0}.gallery-overlay{height:100%;justify-content:center;transition:opacity .3s ease;position:absolute;opacity:0;top:0;background-color:rgba(0,0,0,.4);align-items:center;left:0;width:100%;display:flex}.gallery-item:hover .gallery-overlay{opacity:1}.lightbox{height:100%;justify-content:center;position:fixed;flex-direction:column;top:0;background-color:rgba(0,0,0,.9);align-items:center;left:0;width:100%;display:none;z-index:1000}.lightbox-content{position:relative;max-width:80%;max-height:80vh}.lightbox-content img{max-width:100%;max-height:70vh;object-fit:contain;border-radius:5px}.lightbox-caption{padding:20px;color:#fff;max-width:600px;text-align:center}.lightbox-caption h3{font-size:18px;margin-bottom:10px}.lightbox-caption p{font-size:14px;line-height:1.5}.lightbox-close{height:40px;justify-content:center;font-size:20px;right:20px;color:#fff;transition:background-color .3s ease;position:absolute;top:20px;background-color:hsla(0,0%,100%,.2);align-items:center;border-radius:50%;cursor:pointer;width:40px;display:flex}.lightbox-close:hover{background-color:hsla(0,0%,100%,.3)}.lightbox-next,.lightbox-prev{height:50px;transform:translateY(-50%);justify-content:center;font-size:24px;color:#fff;transition:background-color .3s ease;position:absolute;top:50%;background-color:hsla(0,0%,100%,.2);align-items:center;border-radius:50%;cursor:pointer;width:50px;display:flex}.lightbox-prev{left:20px}.lightbox-next{right:20px}.lightbox-next:hover,.lightbox-prev:hover{background-color:hsla(0,0%,100%,.3)}.load-more-container{text-align:center;margin-top:40px}.load-more-btn{transform:translateY(20px);padding:12px 25px;border:none;font-weight:600;color:#fff;transition:all .3s ease;transition:opacity .6s,transform .6s;opacity:0;background-color:#0057b8;border-radius:5px;cursor:pointer}.load-more-btn.in-view{transform:translateY(0);opacity:1}.load-more-btn:hover{background-color:#004392}@media (max-width:992px){.gallery-container.grid-view{grid-template-columns:repeat(2,1fr)}.gallery-tools{flex-direction:column;gap:15px;align-items:flex-start}.view-buttons{align-self:flex-end}.gallery-section .section-title{padding:10px 20px 25px;margin-bottom:35px}}@media (max-width:768px){.gallery-container.list-view .gallery-item{flex-direction:column}.gallery-container.list-view .gallery-image{max-width:100%}.lightbox-next,.lightbox-prev{height:40px;font-size:18px;width:40px}.lightbox-content img{max-height:75vh}.gallery-section .section-title{padding:15px 15px 25px;margin-bottom:30px}.gallery-section .section-title h2{font-size:1.9rem}.gallery-section .section-title p{font-size:1rem}}@media (max-width:576px){.gallery-container.grid-view{grid-template-columns:1fr}.filter-buttons{overflow-x:auto;padding-bottom:10px;width:100%}.lightbox-content{max-width:95%}.lightbox-next,.lightbox-prev{height:40px;font-size:18px;width:40px}.gallery-section .section-title{padding:20px 15px 25px;margin-bottom:25px}.gallery-section .section-title h2{font-size:1.7rem;margin-bottom:15px}.gallery-section .section-title p{padding:0 10px;font-size:.95rem}}