:root {
	--color3: #2b0a2f;
	--color1: #eeccf6;
	--color2: #ff9564;
	--color4: #a788b0;
	--color5: #f5f7fa;
}

.header-scrolled {
	background-color: var(--color3) !important;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

#mobile-menu {
	transform: translateX(100%);
	transition: transform 0.4s ease-out;
}
#mobile-menu.is-open {
	transform: translateX(0);
}

@media (min-width: 768px) {
	.timeline-item:nth-child(odd) .md\:pr-10 {
		padding-right: 2.5rem;
		padding-left: 0;
	}
	.timeline-item:nth-child(even) .md\:pl-10 {
		padding-left: 2.5rem;
		padding-right: 0;
	}

	.timeline-item:nth-child(odd) > div:nth-child(2) {
		order: 1;
		text-align: right;
	}
	.timeline-item:nth-child(odd) > div:nth-child(3) {
		order: 2;
	}

	.timeline-item:nth-child(even) > div:nth-child(2) {
		order: 2;
	}
	.timeline-item:nth-child(even) > div:nth-child(3) {
		order: 1;
		text-align: left;
	}

	.timeline-item > div:nth-child(2) {
		padding-left: 3rem;
		width: 100%;
	}
}
@media (max-width: 767px) {
	.timeline-item > div:nth-child(2) {
		padding-left: 3rem;
	}
	.timeline-item > div:nth-child(3) {
		display: none;
	}
	.timeline-item > div:nth-child(2) > div {
		border-left: 5px solid var(--color2) !important;
		border-right: none !important;
	}
}

.reveal-element {
	opacity: 0;
	transform: translateY(20px);
	transition: all 0.7s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.reveal-element.is-visible {
	opacity: 1;
	transform: translateY(0);
}

.footer-grid {
	display: grid;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	gap: 2rem;
}
@media (min-width: 768px) {
	.footer-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.toast-container {
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 1000;
}

.toast {
	padding: 15px 30px;
	border-radius: 8px;
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
	opacity: 0;
	transform: translateY(100%);
	transition: all 0.5s ease-in-out;
}

.toast.show {
	opacity: 1;
	transform: translateY(0);
}
