

@keyframes fadeInUp {
	from {
	opacity: 0;
	transform: translateY(30px);
	}
	to {
	opacity: 1;
	transform: translateY(0);
	}
}

@keyframes fadeInDown {
	from {
	opacity: 0;
	transform: translateY(-30px);
	}
	to {
	opacity: 1;
	transform: translateY(0);
	}
}

@keyframes fadeInLeft {
	from {
	opacity: 0;
	transform: translateX(-30px);
	}
	to {
	opacity: 1;
	transform: translateX(0);
	}
}

@keyframes fadeInRight {
	from {
	opacity: 0;
	transform: translateX(30px);
	}
	to {
	opacity: 1;
	transform: translateX(0);
	}
}

@keyframes scaleIn {
	from {
	opacity: 0;
	transform: scale(0.9);
	}
	to {
	opacity: 1;
	transform: scale(1);
	}
}

@keyframes slideUpStagger {
	from {
	opacity: 0;
	transform: translateY(40px);
	}
	to {
	opacity: 1;
	transform: translateY(0);
	}
}

.animate-fade-up {
	animation: fadeInUp 0.8s ease-out forwards;
}
.animate-fade-down {
	animation: fadeInDown 0.8s ease-out forwards;
}
.animate-fade-left {
	animation: fadeInLeft 0.8s ease-out forwards;
}
.animate-fade-right {
	animation: fadeInRight 0.8s ease-out forwards;
}
.animate-scale {
	animation: scaleIn 0.6s ease-out forwards;
}
.animate-stagger {
	opacity: 0;
	animation: slideUpStagger 0.6s ease-out forwards;
}

.hero,.about,.initiatives,.gallery,.cta {
	opacity: 0;
}


.hero {
	animation: fadeInDown 1s ease-out 0.2s forwards;
}
.overlay-text {
	opacity: 0;
	animation: fadeInUp 1s ease-out 0.8s forwards;
}
.slide-indicators,.slide-nav {
	opacity: 0;
	animation: fadeInUp 0.8s ease-out 1.2s forwards;
}

.about {
	animation: fadeInUp 0.8s ease-out 0.3s forwards;
}
.about h2 {
	opacity: 0;
	animation: fadeInUp 0.8s ease-out 0.5s forwards;
}
.about p {
	opacity: 0;
	animation: fadeInUp 0.8s ease-out 0.7s forwards;
}

.initiatives {
	animation: fadeInUp 0.8s ease-out 0.4s forwards;
}
.initiatives h2 {
	opacity: 0;
	animation: fadeInUp 0.8s ease-out 0.6s forwards;
}

.card {
	opacity: 0;
	transform: translateY(30px);
}
.card:nth-child(1) {
	animation: slideUpStagger 0.8s ease-out 0.8s forwards;
}
.card:nth-child(2) {
	animation: slideUpStagger 0.8s ease-out 1s forwards;
}
.card:nth-child(3) {
	animation: slideUpStagger 0.8s ease-out 1.2s forwards;
}

.gallery {
	animation: fadeInUp 0.8s ease-out 0.5s forwards;
}
.gallery h2 {
	opacity: 0;
	animation: fadeInUp 0.8s ease-out 0.7s forwards;
}

.masonry-item {
	opacity: 0;
	transform: translateY(30px);
	animation: slideUpStagger 0.6s ease-out forwards;
}

.masonry-item:nth-child(1) {
	animation-delay: 0.9s;
}
.masonry-item:nth-child(2) {
	animation-delay: 1s;
}
.masonry-item:nth-child(3) {
	animation-delay: 1.1s;
}
.masonry-item:nth-child(4) {
	animation-delay: 1.2s;
}
.masonry-item:nth-child(5) {
	animation-delay: 1.3s;
}
.masonry-item:nth-child(6) {
	animation-delay: 1.4s;
}
.masonry-item:nth-child(7) {
	animation-delay: 1.5s;
}
.masonry-item:nth-child(8) {
	animation-delay: 1.6s;
}
.masonry-item:nth-child(9) {
	animation-delay: 1.7s;
}

.view-more-container {
	opacity: 0;
	animation: fadeInUp 0.8s ease-out 1.8s forwards;
}

.cta {
	animation: fadeInUp 0.8s ease-out 0.6s forwards;
}
.cta h2 {
	opacity: 0;
	animation: fadeInUp 0.8s ease-out 0.8s forwards;
}
.cta p {
	opacity: 0;
	animation: fadeInUp 0.8s ease-out 1s forwards;
}
.cta .btn {
	opacity: 0;
	animation: fadeInUp 0.8s ease-out 1.2s forwards;
}

footer {
	opacity: 0;
	animation: fadeInUp 0.8s ease-out 1.4s forwards;
}

nav {
	opacity: 0;
	animation: fadeInDown 0.8s ease-out 0.1s forwards;
}

@media (prefers-reduced-motion: reduce) {
	* {
	animation-duration: 0.01ms !important;
	animation-iteration-count: 1 !important;
	transition-duration: 0.01ms !important;
	}
	.hero,.about,.initiatives,.gallery,.cta,footer,nav,.overlay-text,.slide-indicators,.slide-nav,.card,.masonry-item,.view-more-container {
	opacity: 1;
	transform: none;
	animation: none;
	}
}


.scroll-animate {
	opacity: 0;
	transform: translateY(30px);
	transition: all 0.6s ease-out;
}
.scroll-animate.visible {
	opacity: 1;
	transform: translateY(0);
}

.card {
	transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.masonry-item img {
	transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.btn {
	transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}


.no-js .hero,.no-js .about,.no-js .initiatives,.no-js .gallery,.no-js .cta,.no-js footer {
	opacity: 1;
}


.scroll-animate {
	opacity: 0;
	transform: translateY(30px);
	transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.scroll-animate.visible {
	opacity: 1;
	transform: translateY(0);
}

.animate-stagger {
	opacity: 0;
	transform: translateY(20px);
	transition: all 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.animate-stagger.animate-in {
	opacity: 1;
	transform: translateY(0);
}

.animate-fade-up {
	opacity: 0;
	transform: translateY(20px);
	transition: all 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.animate-fade-up.animate-in {
	opacity: 1;
	transform: translateY(0);
}

.hero.visible .animate-fade-up {
	opacity: 1;
	transform: translateY(0);
}

.hero.visible .animate-fade-up:nth-child(1) {
	transition-delay: 0.3s;
}
.hero.visible .animate-fade-up:nth-child(2) {
	transition-delay: 0.5s;
}

@media (prefers-reduced-motion: reduce) {
	.scroll-animate,.animate-stagger,.animate-fade-up {
	opacity: 1;
	transform: none;
	transition: none;
	}
	.scroll-animate.visible,.animate-stagger.animate-in,.animate-fade-up.animate-in {
	transform: none;
	}
}


.scroll-animate {
	opacity: 1 !important;
	
	visibility: visible !important;
}

.scroll-animate .animate-fade-up,.scroll-animate .animate-stagger {
	opacity: 0;
	transform: translateY(30px);
}

.scroll-animate.visible .animate-fade-up,.scroll-animate.visible .animate-stagger {
	animation: fadeInUp 0.8s ease-out forwards;
}

.scroll-animate.visible .card:nth-child(1) {
	animation-delay: 0.3s;
}
.scroll-animate.visible .card:nth-child(2) {
	animation-delay: 0.5s;
}
.scroll-animate.visible .card:nth-child(3) {
	animation-delay: 0.7s;
}
.scroll-animate.visible .masonry-item:nth-child(1) {
	animation-delay: 0.3s;
}
.scroll-animate.visible .masonry-item:nth-child(2) {
	animation-delay: 0.4s;
}
.scroll-animate.visible .masonry-item:nth-child(3) {
	animation-delay: 0.5s;
}
.scroll-animate.visible .masonry-item:nth-child(4) {
	animation-delay: 0.6s;
}
.scroll-animate.visible .masonry-item:nth-child(5) {
	animation-delay: 0.7s;
}
.scroll-animate.visible .masonry-item:nth-child(6) {
	animation-delay: 0.8s;
}
.scroll-animate.visible .masonry-item:nth-child(7) {
	animation-delay: 0.9s;
}
.scroll-animate.visible .masonry-item:nth-child(8) {
	animation-delay: 1.0s;
}
.scroll-animate.visible .masonry-item:nth-child(9) {
	animation-delay: 1.1s;
}
.scroll-animate.visible .view-more-container {
	animation-delay: 1.2s;
}

.hero .animate-fade-up {
	opacity: 0;
	transform: translateY(30px);
	animation: fadeInUp 0.8s ease-out forwards;
}
.hero .animate-fade-up:nth-child(1) {
	animation-delay: 0.5s;
}
.hero .animate-fade-up:nth-child(2) {
	animation-delay: 0.7s;
}

@media (prefers-reduced-motion: reduce) {
	.scroll-animate .animate-fade-up,.scroll-animate .animate-stagger {
	opacity: 1 !important;
	transform: none !important;
	animation: none !important;
	}
}
