/************************************/
/***  Promotion (Coming Soon) css ***/
/************************************/
.page-coming-soon{
	padding: 40px 0;
	background-color: var(--secondary-color);
	position: relative;
	overflow: hidden;
	text-align: center;
}

/* ---------- Floating decorative icons ---------- */
.coming-float{
	position: absolute;
	color: var(--accent-color);
	opacity: 0.15;
	animation: comingFloat 7s ease-in-out infinite;
	pointer-events: none;
}
.coming-float.float-1{ top: 15%; left: 8%; font-size: 50px; }
.coming-float.float-2{ top: 25%; right: 10%; font-size: 40px; animation-delay: 1.2s; }
.coming-float.float-3{ bottom: 18%; left: 15%; font-size: 36px; animation-delay: 2s; }
.coming-float.float-4{ bottom: 12%; right: 18%; font-size: 54px; animation-delay: 0.6s; }
@keyframes comingFloat{
	0%, 100%{ transform: translateY(0) rotate(0deg); }
	50%{ transform: translateY(-25px) rotate(10deg); }
}

/* ---------- Center content ---------- */
.coming-soon-content{
	position: relative;
	z-index: 1;
	max-width: 760px;
	margin: 0 auto;
	padding: 0 15px;
}

/* ---------- Main icon with pulse rings ---------- */
.coming-soon-icon{
	width: 110px;
	height: 110px;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--accent-color), var(--primary-color));
	color: var(--white-color);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 44px;
	margin: 0 auto 40px;
	position: relative;
	animation: comingIconIn 0.7s ease backwards;
}
.coming-soon-icon::before,
.coming-soon-icon::after{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	border-radius: 50%;
	border: 2px solid var(--accent-color);
	animation: comingPulse 2s ease-out infinite;
}
.coming-soon-icon::after{
	animation-delay: 1s;
}
@keyframes comingPulse{
	0%{ transform: scale(1); opacity: 0.6; }
	100%{ transform: scale(1.7); opacity: 0; }
}
@keyframes comingIconIn{
	from{ opacity: 0; transform: scale(0.5); }
	to{ opacity: 1; transform: scale(1); }
}

/* ---------- Template section-title support (white pill on secondary bg) ---------- */
.page-coming-soon .section-title{
	margin-bottom: 25px;
}
.page-coming-soon .section-title h3{
	background: var(--white-color);
}

/* ---------- Description text ---------- */
.coming-soon-content p.wow{
	font-size: 18px;
	color: var(--text-color);
	margin-bottom: 40px;
}

/* ---------- Buttons ---------- */
.coming-soon-buttons{
	display: flex;
	justify-content: center;
	gap: 20px;
	flex-wrap: wrap;
	animation: comingUp 0.6s ease 0.5s backwards;
}

/* ---------- Note line ---------- */
.coming-soon-note{
	margin: 30px 0 0;
	font-size: 14px;
	font-weight: 500;
	color: var(--text-color);
	animation: comingUp 0.6s ease 0.65s backwards;
}
.coming-soon-note i{
	color: var(--accent-color);
	margin-right: 8px;
}
@keyframes comingUp{
	from{ opacity: 0; transform: translateY(30px); }
	to{ opacity: 1; transform: translateY(0); }
}

/************************************/
/***   Coming Soon Responsive css ***/
/************************************/
@media only screen and (max-width: 991px){
	.page-coming-soon{
		padding: 90px 0;
	}
}
@media only screen and (max-width: 575px){
	.page-coming-soon{
		padding: 70px 0;
	}
	.coming-soon-icon{
		width: 90px;
		height: 90px;
		font-size: 36px;
		margin-bottom: 30px;
	}
	.coming-soon-content p.wow{
		font-size: 16px;
		margin-bottom: 30px;
	}
}