.modern-gallery{min-height:100vh;background:transparent;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.gallery-header{padding:80px 20px 60px;text-align:center;background:#f8f9fa;color:#333;position:relative}.header-content{position:relative;z-index:2;max-width:800px;margin:0 auto 40px}.header-content h1{font-size:40px;font-weight:700;margin:0 0 15px;color:#0d1028}.header-content h1,.header-content h2{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.header-content h2{font-size:24px;font-weight:600;color:#ff2d55;margin:0 0 30px}.header-content p{font-size:17px;line-height:1.9;color:#707070;margin-bottom:15px;font-weight:400}.header-content p:last-child{margin-bottom:0}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:100px 20px;color:#667eea}.loading-spinner{width:50px;height:50px;border:3px solid rgba(102,126,234,.2);border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.photo-grid{max-width:1400px;margin:0 auto;padding:40px 20px 80px;display:grid;grid-template-columns:repeat(1,1fr);grid-gap:20px;gap:20px;transition:opacity .5s ease}@media (min-width:640px){.photo-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:768px){.photo-grid{grid-template-columns:repeat(4,1fr)}}.photo-grid.loading{opacity:0}.photo-item{cursor:pointer;opacity:0;animation:fadeInUp .6s ease forwards;position:relative}.photo-wrapper{position:relative;overflow:hidden;border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,.1);transition:all .4s cubic-bezier(.4,0,.2,1);background:#fff;width:100%;aspect-ratio:4/3}.photo-wrapper:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 60px rgba(0,0,0,.15)}.gallery-image{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}.photo-wrapper:hover .gallery-image{transform:scale(1.1)}.photo-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(102,126,234,.8),rgba(118,75,162,.8));display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.photo-wrapper:hover .photo-overlay{opacity:1}.photo-info{text-align:center;color:#fff;transform:translateY(20px);transition:transform .3s ease}.photo-wrapper:hover .photo-info{transform:translateY(0)}.photo-year{display:block;font-size:.9rem;font-weight:600;margin-bottom:8px;opacity:.9}.view-text{font-size:1.1rem;font-weight:700;padding:8px 16px;border:2px solid #fff;border-radius:25px;display:inline-block;transition:all .3s ease}.photo-wrapper:hover .view-text{background:#fff;color:#667eea}.maxout-description{padding:60px 0;background:linear-gradient(135deg,rgba(255,45,85,.05),rgba(0,172,238,.03));margin-bottom:40px}.description-content{max-width:800px;margin:0 auto;text-align:center}.description-content h2{font-size:40px;font-weight:700;color:#0d1028;margin-bottom:15px}.description-content h2,.description-content h3{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.description-content h3{font-size:24px;font-weight:600;color:#ff2d55;margin-bottom:30px}.description-content p{font-size:17px;line-height:1.9;color:#707070;margin-bottom:15px}.description-content p:last-child{margin-bottom:0}.registration-cta{margin-top:80px;padding:60px 0;background:transparent;position:relative;overflow:hidden}.registration-cta:before{display:none}.registration-cta .container{position:relative;z-index:2}.registration-cta .cta-content{text-align:center;max-width:600px;margin:0 auto}.registration-cta h3{font-size:35px;font-weight:700;color:#0d1028;margin-bottom:15px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.registration-cta p{font-size:17px;color:#707070;margin-bottom:15px;line-height:1.9}.register-btn{display:inline-flex;align-items:center;padding:15px 30px;background:#ff2d55;color:#fff;font-size:16px;font-weight:600;text-decoration:none;border-radius:50px;transition:all .3s ease;box-shadow:0 10px 25px rgba(255,45,85,.2);border:2px solid #ff2d55;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.register-btn:hover{transform:translateY(-3px);box-shadow:0 15px 35px rgba(255,45,85,.3);color:#fff;background:#0d1028;border-color:#0d1028}.register-btn i{margin-left:10px;font-size:14px;transition:transform .3s ease}.register-btn:hover i{transform:translateX(5px)}.register-button-container{margin-top:30px;text-align:center}.coming-soon-content{max-width:800px;margin:0 auto;padding:80px 20px;text-align:center}.coming-soon-header{margin-bottom:60px}.coming-soon-icon{font-size:4rem;margin-bottom:30px}.coming-soon-content h3{font-size:40px;font-weight:700;color:#0d1028;margin-bottom:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.coming-soon-content p{font-size:17px;line-height:1.9;color:#707070;margin-bottom:15px}.register-section{background:linear-gradient(135deg,rgba(255,45,85,.05),rgba(0,172,238,.03));padding:40px;border-radius:20px;border:1px solid rgba(255,45,85,.1)}.register-text{font-size:1.2rem;font-weight:600;color:#333;margin-bottom:30px}.coming-soon-content .btn-register{background-color:#ff2d55!important;color:#fff!important;border:2px solid #ff2d55!important;padding:15px 30px!important;border-radius:8px!important;font-size:1.1rem!important;font-weight:600!important;text-decoration:none!important;display:inline-block!important;transition:all .3s ease!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif!important}.coming-soon-content .btn-register:hover{background-color:#0d1028!important;color:#fff!important;border-color:#0d1028!important;transform:translateY(-2px)!important;box-shadow:0 6px 20px rgba(13,16,40,.3)!important}.lightbox-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.95);display:flex;align-items:center;justify-content:center;z-index:9999;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:fadeIn .3s ease}.lightbox-content{position:relative;max-width:90vw;max-height:90vh;flex-direction:column}.close-btn,.lightbox-content{display:flex;align-items:center}.close-btn{position:absolute;top:-60px;right:0;background:hsla(0,0%,100%,.3);border:2px solid hsla(0,0%,100%,.5);color:#fff;width:48px;height:48px;border-radius:50%;cursor:pointer;justify-content:center;transition:all .3s ease}.close-btn:hover{background:hsla(0,0%,100%,.5);transform:scale(1.1)}.nav-btn{position:absolute;top:50%;transform:translateY(-50%);background:hsla(0,0%,100%,.3);border:2px solid hsla(0,0%,100%,.5);color:#fff;width:48px;height:48px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:10000}.nav-btn:hover{background:hsla(0,0%,100%,.5);transform:translateY(-50%) scale(1.1)}.prev-btn{left:-80px}.next-btn{right:-80px}.lightbox-image-container{position:relative;border-radius:16px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.3)}.lightbox-image{max-width:100%;max-height:70vh;width:auto;height:auto;object-fit:contain}.lightbox-info{text-align:center;color:#fff;margin-top:30px;max-width:500px}.lightbox-info h3{font-size:22px;font-weight:600;margin:0 0 8px}.lightbox-info p{font-size:17px;opacity:.8;margin:0}@media (min-width:768px){.gallery-header{padding:80px 20px 60px}.header-content h1{font-size:4rem}}@media (max-width:768px){.gallery-header{padding:60px 20px 40px}.header-content h1{font-size:34px}.header-content h2{font-size:20px}.header-content p{font-size:15px}.filter-button-group{gap:.5rem;padding:.3rem}.filter-btn{padding:.5rem 1rem}.btn-label{font-size:.8rem}.btn-count{font-size:.7rem}.nav-btn{width:48px;height:48px;background:hsla(0,0%,100%,.4);border:2px solid hsla(0,0%,100%,.6)}.prev-btn{left:10px}.next-btn{right:10px}.close-btn{top:-40px;right:10px;background:hsla(0,0%,100%,.4);border:2px solid hsla(0,0%,100%,.6)}}@media (max-width:480px){.prev-btn{left:5px}.next-btn{right:5px}.close-btn{top:10px;right:5px}.close-btn,.nav-btn{width:44px;height:44px}.filter-button-group{width:100%;max-width:300px;margin:0 auto}.filter-btn{padding:.6rem 1rem}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}html{scroll-behavior:smooth}.close-btn:focus,.nav-btn:focus{outline:2px solid #667eea;outline-offset:2px}.year-filter{display:flex;gap:1rem;margin-top:2rem}.year-tab{background:hsla(0,0%,100%,.1);border:2px solid hsla(0,0%,100%,.2);color:#fff;padding:.75rem 1.5rem;border-radius:50px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;font-weight:500}.year-tab:hover{background:hsla(0,0%,100%,.2);border-color:hsla(0,0%,100%,.4);transform:translateY(-2px)}.year-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;box-shadow:0 8px 25px rgba(102,126,234,.3)}.photo-count{background:hsla(0,0%,100%,.2);padding:.25rem .5rem;border-radius:15px;font-size:.8rem}.year-filter-redesigned{display:flex;justify-content:center;margin-top:2rem}.filter-button-group{display:flex;gap:.5rem;background:rgba(255,45,85,.05);padding:.3rem;border-radius:50px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,45,85,.1)}.filter-btn{background:hsla(0,0%,100%,.8);border:2px solid rgba(255,45,85,.2);color:#333;transition:all .3s ease;gap:.2rem;white-space:nowrap}.filter-btn:hover{background:#fff;border-color:rgba(255,45,85,.4)}.filter-btn.active{border-color:#ff2d55;box-shadow:0 8px 25px rgba(255,45,85,.3)}.btn-label{font-size:.9rem}.btn-count{font-size:.75rem}.filter-btn{background:transparent;border:none;color:rgba(85,85,85,.7);padding:.6rem 1.2rem;border-radius:50px;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;align-items:center;gap:.15rem;font-weight:500;position:relative;overflow:hidden;min-width:100px}.filter-btn:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#ff2d55,#00acee);opacity:0;transition:opacity .4s ease;border-radius:50px}.filter-btn:hover{color:#333;transform:translateY(-2px)}.filter-btn:hover:before{opacity:.1}.filter-btn.active{color:#fff;background:linear-gradient(135deg,#ff2d55,#00acee);box-shadow:0 8px 25px rgba(255,45,85,.4);transform:translateY(-1px)}.filter-btn.active:before{opacity:0}.btn-label{font-size:.85rem;font-weight:600}.btn-count,.btn-label{position:relative;z-index:1}.btn-count{font-size:.65rem;opacity:.8;font-weight:400}.filter-btn.active .btn-count{opacity:.9}@media (max-width:768px){.filter-button-group{flex-direction:column;gap:.5rem;padding:.75rem;border-radius:25px}.filter-btn{padding:.75rem 1.5rem;min-width:auto}.btn-label{font-size:.9rem}.btn-count{font-size:.7rem}.maxout-description{padding:40px 0}.description-content h2{font-size:34px}.description-content h3{font-size:20px}.description-content p{font-size:15px}.registration-cta{padding:40px 0;margin-top:60px}.registration-cta h3{font-size:30px}.register-btn,.registration-cta p{font-size:15px}.register-btn{padding:12px 25px}}@media (max-width:480px){.filter-button-group{width:100%;max-width:300px;margin:0 auto}.filter-btn{padding:.6rem 1rem}}