.gallery-section{max-width:1200px;margin:0 auto}.section-title{font-size:2.5rem;color:#333;margin-bottom:2rem;text-align:left}.scroll-container{position:relative;margin-bottom:1rem;padding:0 40px}.event-grid,.program-grid,.video-grid{display:flex;gap:20px;overflow-x:auto;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;position:relative;will-change:transform;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:all .3s ease;-webkit-scroll-behavior:smooth;overscroll-behavior-x:contain;transform:translateZ(0);-webkit-transform:translateZ(0);width:calc(100% + 40px);margin:0 -20px;padding:20px}.event-grid::-webkit-scrollbar,.program-grid::-webkit-scrollbar,.video-grid::-webkit-scrollbar{width:8px;height:8px;display:none}.scroll-container:hover .event-grid::-webkit-scrollbar,.scroll-container:hover .program-grid::-webkit-scrollbar,.scroll-container:hover .video-grid::-webkit-scrollbar{display:block}.scroll-container:hover .event-grid,.scroll-container:hover .program-grid,.scroll-container:hover .video-grid{scrollbar-width:thin}.event-grid::-webkit-scrollbar-track,.program-grid::-webkit-scrollbar-track,.video-grid::-webkit-scrollbar-track{background:rgba(255,64,129,.1);border-radius:4px;margin:0 20px}.event-grid::-webkit-scrollbar-thumb,.program-grid::-webkit-scrollbar-thumb,.video-grid::-webkit-scrollbar-thumb{background:rgba(255,64,129,.6);border-radius:4px;-webkit-transition:background .3s ease;transition:background .3s ease}.event-grid::-webkit-scrollbar-thumb:hover,.program-grid::-webkit-scrollbar-thumb:hover,.video-grid::-webkit-scrollbar-thumb:hover{background:rgba(255,64,129,.8)}.event-card,.program-card,.video-card{scroll-snap-align:start;background:white;border-radius:12px;overflow:hidden;box-shadow:0 4px 6px rgba(0,0,0,.1);transition:all .3s ease;will-change:transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}.event-card,.event-card-link,.program-card,.video-card{flex-grow:0;flex-shrink:0;flex-basis:calc(33.333% - 27px);min-width:calc(33.333% - 27px);margin-right:20px}.event-card-link{text-decoration:none;color:inherit;display:block}.event-card-link:hover .event-card{transform:translateY(-5px);box-shadow:0 6px 20px rgba(0,0,0,.15)}.event-image,.program-image,.video-thumbnail{width:100%;height:200px;object-fit:cover;transition:transform .3s ease}.event-content,.program-content,.video-content{padding:1.5rem}.event-title,.program-title,.video-title{font-size:1.2rem;color:#333;margin:0 0 .5rem;transition:color .3s ease}.event-date,.program-day,.program-time,.video-date{font-size:.9rem;color:#ff4081;margin:0 0 .5rem;display:flex;align-items:center;gap:.5rem}.event-description,.program-description{font-size:.95rem;color:#666;line-height:1.5;margin:0}.video-link{text-decoration:none;color:inherit;display:block}.thumbnail-container{position:relative;width:100%;height:200px;overflow:hidden}.play-button{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:50px;height:50px;background-color:rgba(255,64,129,.9);border-radius:50%;display:flex;align-items:center;justify-content:center;color:white;font-size:1.5rem;opacity:.9;transition:all .3s ease}.video-card:hover .play-button{background-color:#ff4081;opacity:1;transform:translate(-50%,-50%) scale(1.1)}.video-card:hover .video-thumbnail{transform:scale(1.05)}.scroll-button{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;background-color:rgba(255,64,129,.9);border:none;color:white;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:2;transition:all .3s ease}.scroll-button:hover{background-color:#ff4081;transform:translateY(-50%) scale(1.1)}.scroll-button.prev{left:0}.scroll-button.next{right:0}.scroll-button i,.scroll-button svg{font-size:1.2rem}@media (min-width:768px) and (max-width:1024px){.upcoming-festival{display:flex;flex-direction:column!important;width:100vw;margin-left:-50vw;margin-right:-50vw;left:50%;right:50%;height:auto;padding:0}.festival-banner{height:50vh;min-height:300px;padding:0}.festival-banner,.festival-content-wrapper{width:100%!important;margin:0;box-sizing:border-box}.festival-content-wrapper{height:auto!important;min-height:-webkit-fit-content;min-height:-moz-fit-content;min-height:fit-content;padding:2rem 1rem;position:relative;background:#fff;display:flex;flex-direction:column}.festival-content{width:100%;padding:1rem;text-align:center;height:auto;flex:1 1}.festival-title:after{left:50%;transform:translateX(-50%)}.countdown-timer{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem;padding:0;margin-top:.5rem}.countdown-item{flex-grow:0;flex-shrink:1;flex-basis:calc(25% - 0.4rem);min-width:auto;padding:.2rem .1rem;margin-bottom:.3rem;box-shadow:0 2px 4px rgba(255,64,129,.1)}.countdown-value{font-size:1.1rem;margin-bottom:.1rem}.countdown-label{font-size:.6rem;letter-spacing:.3px}.event-card,.event-card-link,.program-card,.video-card{flex-grow:0;flex-shrink:0;flex-basis:calc(100% - 40px);min-width:calc(100% - 40px)}.scroll-container{padding:0 30px}.scroll-button{width:30px;height:30px}.event-image,.program-image,.video-thumbnail{height:180px}}@media (max-width:767px){.upcoming-festival{display:flex;flex-direction:column!important;width:100vw;margin-left:-50vw;margin-right:-50vw;left:50%;right:50%;height:auto;padding:0}.festival-banner{height:40vh;min-height:250px;padding:0}.festival-banner,.festival-content-wrapper{width:100%!important;margin:0;box-sizing:border-box}.festival-content-wrapper{height:auto!important;min-height:-webkit-fit-content;min-height:-moz-fit-content;min-height:fit-content;padding:1.5rem 1rem;position:relative;background:#fff;display:flex;flex-direction:column}.festival-content{width:100%;padding:1rem;text-align:center;height:auto;flex:1 1}.countdown-timer{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem;padding:0;margin-top:.5rem}.countdown-item{flex-grow:0;flex-shrink:1;flex-basis:calc(25% - 0.3rem);padding:0;box-shadow:0 1px 3px rgba(255,64,129,.1)}.countdown-value{font-size:1rem;margin-bottom:.1rem}.countdown-label{font-size:.55rem;letter-spacing:.2px}.event-card,.event-card-link,.program-card,.video-card{flex-grow:0;flex-shrink:0;flex-basis:calc(100% - 40px);min-width:calc(100% - 40px)}}@media (max-width:374px){.countdown-value{font-size:.9rem}.countdown-label{font-size:.5rem;letter-spacing:.1px}}.upcoming-festival{position:relative;overflow:hidden;margin-bottom:4rem;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;height:auto;background:#fff;padding:0;display:flex;flex-direction:row}.banner-overlay,.decorative-elements,.festival-banner:after,.shape{display:none}.festival-banner{width:65%;height:100%;position:relative;-webkit-clip-path:polygon(0 0,100% 0,85% 100%,0 100%);clip-path:polygon(0 0,100% 0,85% 100%,0 100%);transition:all .5s ease}.festival-banner img{width:100%;height:100%;object-fit:cover;margin:0;display:block;transition:transform .5s ease}.festival-banner:hover img{transform:scale(1.05)}.festival-content-wrapper{width:35%;position:relative;background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(255,255,255,.98));display:flex;align-items:center;padding:2rem;box-shadow:-10px 0 30px rgba(0,0,0,.1);overflow:hidden;height:auto;-webkit-clip-path:polygon(15% 0,100% 0,100% 100%,0 100%);clip-path:polygon(15% 0,100% 0,100% 100%,0 100%);margin-left:-5%}.festival-content{width:100%;margin-left:10%;text-align:center;padding:0;animation:slideIn .8s ease-out}.festival-title{font-size:2.5rem;margin-bottom:1rem;color:#333;font-weight:700;position:relative;padding-bottom:1.2rem;animation:fadeIn .8s ease-out}.festival-title:after{content:"";position:absolute;bottom:0;left:0;width:100px;height:4px;background:linear-gradient(90deg,#ff4081,#ff80ab);border-radius:2px;animation:expandWidth .8s ease-out}.festival-date{font-size:1.8rem;color:#ff4081;margin-bottom:2rem;display:flex;align-items:center;gap:.8rem;animation:fadeIn .8s ease-out .2s backwards}.festival-description{font-size:1.2rem;color:#666;line-height:1.6;margin-bottom:3rem;animation:fadeIn .8s ease-out .4s backwards}.countdown-timer{display:flex;gap:1rem;justify-content:space-between;margin-top:2rem;animation:fadeIn .8s ease-out .6s backwards;flex-wrap:wrap}.countdown-item{flex:1 1;text-align:center;background:rgba(255,64,129,.1);padding:1.2rem .8rem;border-radius:12px;box-shadow:0 4px 12px rgba(255,64,129,.1);transition:transform .3s ease,box-shadow .3s ease}.countdown-item:hover{transform:translateY(-3px);box-shadow:0 6px 15px rgba(255,64,129,.2)}.countdown-value{font-size:2rem;font-weight:700;color:#ff4081;line-height:1;margin-bottom:.5rem}.countdown-label{color:#666;text-transform:uppercase;letter-spacing:1px;font-size:.9rem}@keyframes subtle-zoom{0%{transform:scale(1)}to{transform:scale(1.1)}}@keyframes float{0%{transform:translateY(0)}to{transform:translateY(20px)}}@keyframes slideIn{0%{transform:translateX(-50px);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes expandWidth{0%{width:0}to{width:80px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.cta-buttons{margin:3rem 0;padding:2rem 0;background:linear-gradient(90deg,rgba(255,64,129,.05),rgba(255,64,129,.1),rgba(255,64,129,.05));border-radius:16px}.cta-container{max-width:1000px;margin:0 auto;gap:2rem;padding:0 2rem}.cta-btn,.cta-container{display:flex;justify-content:center}.cta-btn{align-items:center;gap:.8rem;padding:1rem 2rem;border-radius:30px;font-weight:500;text-decoration:none;transition:all .3s ease;border:none;cursor:pointer;font-size:1.1rem;min-width:160px;box-shadow:0 4px 6px rgba(0,0,0,.1)}.cta-btn i,.cta-btn svg{font-size:1.3rem}.cta-btn span{font-weight:600}.cta-btn.facebook{background-color:#1877f2;color:white}.cta-btn.facebook:hover{background-color:#0d65d9;transform:translateY(-3px);box-shadow:0 6px 12px rgba(24,119,242,.3)}.cta-btn.youtube{background-color:#ff0000;color:white}.cta-btn.youtube:hover{background-color:#cc0000;transform:translateY(-3px);box-shadow:0 6px 12px rgba(255,0,0,.3)}.cta-btn.call{background-color:#ff4081;color:white}.cta-btn.call:hover{background-color:#f50057;transform:translateY(-3px);box-shadow:0 6px 12px rgba(255,64,129,.3)}.cta-btn.whatsapp{background-color:#25D366;color:white}.cta-btn.whatsapp:hover{background-color:#128C7E;transform:translateY(-3px);box-shadow:0 6px 12px rgba(37,211,102,.3)}@media (max-width:1024px){.cta-container{gap:1.5rem}.cta-btn{padding:.9rem 1.5rem;min-width:140px;font-size:1rem}}@media (max-width:768px){.cta-buttons{margin:2rem 0;padding:1.5rem 0}.cta-container{flex-wrap:wrap;gap:1rem}.cta-btn{flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 1rem);padding:.8rem 1rem;min-width:130px;font-size:.95rem}}@media (max-width:480px){.cta-container{padding:0 1rem}.cta-btn{flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 0.5rem);padding:.7rem .8rem;gap:.5rem;font-size:.9rem}.cta-btn i,.cta-btn svg{font-size:1.1rem}}.video-player-container{position:relative;width:100%;height:200px;background:#000;border-radius:12px;overflow:hidden}.video-player-container iframe{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:12px}.close-video-btn{position:absolute;top:10px;right:10px;width:30px;height:30px;border-radius:50%;background:rgba(0,0,0,.7);border:none;color:white;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;z-index:10}.close-video-btn:hover{background:rgba(0,0,0,.9);transform:scale(1.1)}.video-thumbnail-wrapper{transition:transform .3s ease}.video-thumbnail-wrapper:hover{transform:translateY(-5px)}.donation-section,.janmashtami-highlights-section,.route-section{margin:2.5rem auto;padding:2rem;border-radius:16px;background:linear-gradient(90deg,rgba(255,64,129,.06),rgba(255,128,171,.08));box-shadow:0 6px 16px rgba(255,64,129,.12);text-align:center}.janmashtami-highlights-section .scroll-container{margin-top:.5rem}.janmashtami-highlights-section .video-grid{justify-content:flex-start;padding-bottom:.5rem}.post-card-link{display:block;text-decoration:none;color:inherit;cursor:pointer}.post-card-link:focus-visible{outline:3px solid #ff4081;outline-offset:4px;border-radius:12px}.donation-title,.route-title{text-align:center;margin-bottom:1rem;font-size:2rem}.donation-info,.route-info{margin:0 auto 1.3rem;max-width:900px;color:#5c4f56;font-size:1.1rem;line-height:1.6}.route-image{width:min(100%,980px)}.donation-image,.route-image{border-radius:14px;border:1px solid rgba(255,64,129,.2);background:#fff}.donation-image{width:min(100%,520px)}@media (max-width:767px){.donation-section,.janmashtami-highlights-section,.route-section{margin:1.8rem .8rem;padding:1.2rem}.donation-title,.route-title{font-size:1.5rem;margin-bottom:.8rem;text-align:center}.donation-info,.route-info{font-size:.98rem;margin-bottom:1rem}}