@font-face {
	font-family: "Shopra Coming Soon";
	src: url("../fonts/YekanBakhFaNum04Regular.woff2") format("woff2");
	font-style: normal;
	font-weight: 400;
	font-display: swap;
}

@font-face {
	font-family: "Shopra Coming Soon";
	src: url("../fonts/YekanBakhFaNum06Bold.woff2") format("woff2");
	font-style: normal;
	font-weight: 700;
	font-display: swap;
}

body.shopra-coming-soon-page {
	margin: 0;
	background: #f6f7f1;
	color: #17221b;
	font-family: "Shopra Coming Soon", sans-serif;
}

.shopra-coming-soon-page * {
	box-sizing: border-box;
}

.shopra-coming-soon {
	position: relative;
	display: flex;
	min-height: 100svh;
	flex-direction: column;
	overflow: hidden;
	padding: 30px clamp(22px, 6vw, 88px) 20px;
	background:
		radial-gradient(ellipse at 82% 55%, rgb(226 239 174 / 36%), transparent 34%),
		#f6f7f1;
}

.shopra-coming-soon__header,
.shopra-coming-soon__footer {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.shopra-coming-soon__brand {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	color: inherit;
	font-size: 19px;
	font-weight: 700;
	text-decoration: none;
}

.shopra-coming-soon__brand img {
	width: 44px;
	height: 44px;
	border-radius: 14px;
	object-fit: cover;
}

.shopra-coming-soon__status {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	color: #505b52;
	font-size: 13px;
}

.shopra-coming-soon__status span,
.shopra-coming-soon__visual-label span {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #d7f05b;
	box-shadow: 0 0 0 4px rgb(215 240 91 / 22%);
}

.shopra-coming-soon__hero {
	display: grid;
	width: min(100%, 1240px);
	flex: 1;
	grid-template-columns: minmax(0, 1fr) minmax(320px, 0.9fr);
	align-items: center;
	gap: 6vw;
	margin: 0 auto;
	padding: 50px 0 64px;
}

.shopra-coming-soon__copy {
	position: relative;
	z-index: 1;
	max-width: 580px;
}

.shopra-coming-soon__eyebrow {
	margin: 0 0 22px;
	color: #67744f;
	font-size: 14px;
	font-weight: 700;
}

.shopra-coming-soon__copy h1 {
	margin: 0;
	font-size: 64px;
	font-weight: 700;
	line-height: 1.28;
}

.shopra-coming-soon__copy h1 span {
	color: #697d2f;
}

.shopra-coming-soon__description {
	max-width: 460px;
	margin: 24px 0 0;
	color: #647064;
	font-size: 17px;
	line-height: 2;
}

.shopra-coming-soon__details {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-top: 40px;
}

.shopra-coming-soon__detail-icon {
	display: grid;
	width: 48px;
	height: 48px;
	flex: 0 0 48px;
	place-items: center;
	border-radius: 16px;
	background: #d7f05b;
	color: #17221b;
	font-family: sans-serif;
	font-size: 13px;
	font-weight: 700;
	direction: ltr;
}

.shopra-coming-soon__details p {
	margin: 0;
	color: #748073;
	font-size: 13px;
	line-height: 1.8;
}

.shopra-coming-soon__details strong {
	color: #26332a;
	font-size: 14px;
}

.shopra-coming-soon__visual {
	position: relative;
	display: grid;
	min-height: 420px;
	place-items: center;
	isolation: isolate;
}

.shopra-coming-soon__visual-grid {
	position: absolute;
	inset: 10% 4%;
	z-index: -1;
	background-image: linear-gradient(rgb(23 34 27 / 6%) 1px, transparent 1px), linear-gradient(90deg, rgb(23 34 27 / 6%) 1px, transparent 1px);
	background-size: 36px 36px;
	mask-image: radial-gradient(ellipse, #000 20%, transparent 72%);
}

.shopra-coming-soon__orbit {
	position: absolute;
	border: 1px solid rgb(81 103 43 / 17%);
	border-radius: 50%;
	transform: rotate(-24deg);
}

.shopra-coming-soon__orbit--outer {
	width: min(88%, 430px);
	height: 300px;
}

.shopra-coming-soon__orbit--inner {
	width: min(68%, 330px);
	height: 220px;
	border-color: rgb(81 103 43 / 25%);
	transform: rotate(38deg);
}

.shopra-coming-soon__mark {
	position: relative;
	display: grid;
	width: 188px;
	height: 188px;
	place-items: center;
	border: 1px solid rgb(23 34 27 / 9%);
	border-radius: 44px;
	background: #fffefa;
	box-shadow: 0 28px 80px rgb(35 48 29 / 12%);
	transform: rotate(-7deg);
}

.shopra-coming-soon__mark img {
	width: 116px;
	height: 116px;
	border-radius: 30px;
	object-fit: cover;
}

.shopra-coming-soon__mark > span {
	color: #697d2f;
	font-family: sans-serif;
	font-size: 40px;
	font-weight: 700;
	direction: ltr;
}

.shopra-coming-soon__spark {
	position: absolute;
	display: block;
	width: 18px;
	height: 18px;
	border-radius: 5px;
	background: #f28a6a;
	transform: rotate(18deg);
}

.shopra-coming-soon__spark--one {
	top: 24%;
	right: 21%;
}

.shopra-coming-soon__spark--two {
	bottom: 23%;
	left: 18%;
	width: 11px;
	height: 11px;
	background: #d7f05b;
}

.shopra-coming-soon__visual-label {
	position: absolute;
	bottom: 13%;
	left: 5%;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 16px;
	border: 1px solid rgb(23 34 27 / 8%);
	border-radius: 3px;
	background: #fffefa;
	color: #435044;
	font-size: 12px;
	box-shadow: 0 12px 30px rgb(35 48 29 / 7%);
}

.shopra-coming-soon__visual-label span {
	width: 7px;
	height: 7px;
}

.shopra-coming-soon__footer {
	gap: 18px;
	padding-top: 17px;
	border-top: 1px solid rgb(23 34 27 / 11%);
	color: #818a7e;
	font-size: 12px;
}

.shopra-coming-soon__footer-separator {
	padding: 0 7px;
	color: #f28a6a;
}

@media (max-width: 760px) {
	.shopra-coming-soon {
		min-height: 100svh;
		padding: 20px 22px 16px;
	}

	.shopra-coming-soon__brand {
		gap: 9px;
		font-size: 16px;
	}

	.shopra-coming-soon__brand img {
		width: 38px;
		height: 38px;
		border-radius: 12px;
	}

	.shopra-coming-soon__status {
		font-size: 11px;
	}

	.shopra-coming-soon__hero {
		grid-template-columns: 1fr;
		gap: 0;
		padding: 66px 0 40px;
	}

	.shopra-coming-soon__copy h1 {
		font-size: 44px;
	}

	.shopra-coming-soon__description {
		max-width: 440px;
		font-size: 15px;
	}

	.shopra-coming-soon__details {
		margin-top: 27px;
	}

	.shopra-coming-soon__visual {
		min-height: 290px;
		margin-top: 12px;
	}

	.shopra-coming-soon__mark {
		width: 142px;
		height: 142px;
		border-radius: 36px;
	}

	.shopra-coming-soon__mark img {
		width: 90px;
		height: 90px;
		border-radius: 24px;
	}

	.shopra-coming-soon__orbit--outer {
		width: 82%;
		height: 215px;
	}

	.shopra-coming-soon__orbit--inner {
		width: 62%;
		height: 160px;
	}

	.shopra-coming-soon__visual-label {
		bottom: 8%;
		left: 0;
		padding: 10px 12px;
		font-size: 11px;
	}

	.shopra-coming-soon__footer {
		align-items: flex-start;
		font-size: 10px;
	}
}

@media (prefers-reduced-motion: no-preference) {
	.shopra-coming-soon__mark {
		animation: shopra-coming-soon-arrive 650ms cubic-bezier(.2, .75, .3, 1) both;
	}

	.shopra-coming-soon__copy > * {
		animation: shopra-coming-soon-fade 600ms ease-out both;
	}

	.shopra-coming-soon__copy > :nth-child(2) {
		animation-delay: 80ms;
	}

	.shopra-coming-soon__copy > :nth-child(3) {
		animation-delay: 150ms;
	}

	@keyframes shopra-coming-soon-arrive {
		from { opacity: 0; transform: translateY(16px) rotate(-12deg); }
		to { opacity: 1; transform: translateY(0) rotate(-7deg); }
	}

	@keyframes shopra-coming-soon-fade {
		from { opacity: 0; transform: translateY(10px); }
		to { opacity: 1; transform: translateY(0); }
	}
}