@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,400;0,600;1,400&display=swap');

.promo-popup {
	position: fixed;
	inset: 0;
	z-index: 100000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 28px 16px 20px;
	box-sizing: border-box;
}

.promo-popup[hidden] {
	display: none !important;
}

.promo-popup__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.55);
}

.promo-popup__dialog {
	position: relative;
	z-index: 1;
	line-height: 0;
}

.promo-popup__close {
	position: absolute;
	top: -14px;
	right: -14px;
	z-index: 3;
	width: 36px;
	height: 36px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #131b1e;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.35);
	color: #fff;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
}

.promo-popup__close::before,
.promo-popup__close::after {
	content: '';
	position: absolute;
	width: 14px;
	height: 1.5px;
	background: #fff;
	border-radius: 1px;
}

.promo-popup__close::before {
	transform: rotate(45deg);
}

.promo-popup__close::after {
	transform: rotate(-45deg);
}

.promo-popup__close:hover {
	background: #2a3538;
}

.promo-popup__card {
	display: block;
	text-decoration: none;
	color: inherit;
}

.promo-popup__artboard {
	position: relative;
	overflow: hidden;
	transform-origin: top left;
	font-family: 'Montserrat', sans-serif;
	-webkit-font-smoothing: antialiased;
}

.promo-popup__artboard--mobile {
	width: 375px;
	height: 237px;
	background: #131b1e;
	border: 1.65636px solid #d47c59;
	border-radius: 17.2261px;
	box-sizing: border-box;
}

.promo-popup__artboard--desktop {
	width: 2576px;
	height: 702px;
	background: #131b1e;
	border: 7px solid #d47c59;
	border-radius: 121px;
	box-sizing: border-box;
}

.promo-popup__card--mobile {
	--promo-scale: min(92vw / 375px, 1);
	width: calc(375px * min(92vw / 375px, 1));
	height: calc(237px * min(92vw / 375px, 1));
}

.promo-popup__card--desktop {
	--promo-scale: min(92vw / 2576px, 1080px / 2576px);
	width: calc(2576px * min(92vw / 2576px, 1080px / 2576px));
	height: calc(702px * min(92vw / 2576px, 1080px / 2576px));
}

.promo-popup__card--mobile .promo-popup__artboard--mobile,
.promo-popup__card--desktop .promo-popup__artboard--desktop {
	transform: scale(var(--promo-scale));
}

.promo-popup__glow {
	position: absolute;
	pointer-events: none;
	background: #3a5d5d;
	border-radius: 50%;
}

.promo-popup__glow--mobile {
	width: 880.55px;
	height: 178.87px;
	left: calc(50% - 880.55px / 2 + 0.01px);
	top: 148.76px;
	filter: blur(82.818px);
}

.promo-popup__glow--desktop {
	width: 3956px;
	height: 628px;
	left: calc(50% - 3956px / 2 + 152px);
	top: 361px;
	filter: blur(250px);
}

.promo-popup__photo {
	position: absolute;
	pointer-events: none;
	overflow: hidden;
}

.promo-popup__photo--mobile {
	left: -83.15px;
	top: -34.79px;
	width: 563.8px;
	height: 299.48px;
	opacity: 0.63;
	-webkit-mask-image: linear-gradient(0.57deg, transparent 0.63%, #000 50.07%, transparent 87.23%);
	mask-image: linear-gradient(0.57deg, transparent 0.63%, #000 50.07%, transparent 87.23%);
}

.promo-popup__photo--mobile img {
	position: absolute;
	width: 503.24px;
	height: 291.15px;
	left: 19.36px;
	top: 16.5px;
	object-fit: cover;
	transform: scaleX(-1);
	mix-blend-mode: exclusion;
	opacity: 0.26;
}

.promo-popup__photo--desktop {
	left: 1204.19px;
	top: -237.15px;
	width: 1837.03px;
	height: 1053.96px;
	-webkit-mask-image: linear-gradient(267.58deg, #000 56.48%, transparent 85.15%);
	mask-image: linear-gradient(267.58deg, #000 56.48%, transparent 85.15%);
}

.promo-popup__photo--desktop img {
	position: absolute;
	width: 1634.03px;
	height: 894.84px;
	left: 124.79px;
	top: 183.74px;
	object-fit: cover;
	border-radius: 37.174px;
	opacity: 0.22;
}

.promo-popup__bubble {
	position: absolute;
	pointer-events: none;
}

.promo-popup__bubble--mobile {
	left: 0;
	top: 0;
	width: 375px;
	height: 237px;
}

.promo-popup__bubble--desktop {
	left: 0;
	top: 0;
	width: 2576px;
	height: 702px;
}

.promo-popup__bubble-fill {
	position: absolute;
	background: rgba(255, 255, 255, 0.19);
	pointer-events: none;
}

.promo-popup__bubble-fill--mobile {
	width: 272.59px;
	height: 60.04px;
	left: 51.21px;
	top: 20.87px;
	border-radius: 23.444px;
}

.promo-popup__bubble-fill--desktop {
	width: 2174.36px;
	height: 206.63px;
	left: 161px;
	top: 109.93px;
	border-radius: 75.1787px;
}

.promo-popup__title {
	position: absolute;
	margin: 0;
	font-family: 'Montserrat', sans-serif;
	font-style: normal;
	font-weight: 600;
	text-transform: uppercase;
	background: linear-gradient(89.03deg, #ffffff 15.15%, #e6fffc 48.25%, #ffffff 74.72%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
}

.promo-popup__title--mobile {
	width: 375px;
	height: 38px;
	left: 0;
	top: 32.32px;
	font-size: 16.3736px;
	line-height: 115%;
	text-align: center;
}

.promo-popup__title--desktop {
	width: 2115.71px;
	height: 104px;
	left: 268.51px;
	top: 161.8px;
	font-size: 90.2043px;
	line-height: 115%;
	white-space: nowrap;
}

.promo-popup__quote {
	position: absolute;
	margin: 0;
	font-family: 'Montserrat', sans-serif;
	font-style: italic;
	font-weight: 400;
	background: linear-gradient(89.03deg, #ffffff 15.15%, #e6fffc 48.25%, #ffffff 74.72%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
}

.promo-popup__quote--mobile {
	width: 189.71px;
	height: 9px;
	left: calc(50% - 189.71px / 2 - 0.01px);
	top: 64.93px;
	font-size: 7.78679px;
	line-height: 110%;
	text-align: center;
	white-space: nowrap;
}

.promo-popup__quote--desktop {
	width: 1122.57px;
	height: 51px;
	left: 1411.63px;
	top: 351px;
	font-size: 46.0773px;
	line-height: 110%;
	white-space: nowrap;
}

.promo-popup__mark {
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #d47c59;
	border-radius: 50%;
	box-sizing: border-box;
}

.promo-popup__mark--mobile {
	width: 11.78px;
	height: 11.78px;
	left: calc(50% - 11.78px / 2);
	top: 90.77px;
}

.promo-popup__mark--desktop {
	width: 91.53px;
	height: 91.53px;
	left: 161px;
	top: 404.15px;
}

.promo-popup__mark svg {
	display: block;
}

.promo-popup__offer {
	position: absolute;
	margin: 0;
	font-family: 'Montserrat', sans-serif;
	font-style: normal;
	font-weight: 600;
	color: #ffffff;
}

.promo-popup__offer--mobile {
	width: 250.07px;
	height: 49px;
	left: calc(50% - 250.07px / 2 + 0.09px);
	top: 109.23px;
	font-size: 16.588px;
	line-height: 130%;
	text-align: center;
}

.promo-popup__offer--desktop {
	width: 1227.26px;
	left: 340.16px;
	top: 386px;
	font-size: 65.9961px;
	line-height: 130%;
}

.promo-popup__cta {
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	background: #d47c59;
	color: #ffffff;
	font-family: 'Montserrat', sans-serif;
	font-style: normal;
	font-weight: 600;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	white-space: nowrap;
}

.promo-popup__cta--mobile {
	width: 191.16px;
	height: 32.66px;
	left: calc(50% - 191.16px / 2 - 0.06px);
	top: 170.85px;
	padding: 5.01305px 10.0261px;
	border-radius: 45.1175px;
	box-shadow: 0 5.51436px 14.5379px rgba(0, 0, 0, 0.33);
	font-size: 9.93816px;
	line-height: 12px;
}

.promo-popup__cta--desktop {
	width: 783.3px;
	height: 133.81px;
	left: calc(50% - 783.3px / 2 + 623.65px);
	top: 487px;
	padding: 20.5413px 41.0826px;
	border-radius: 184.871px;
	box-shadow: 0 22.5954px 59.5697px rgba(0, 0, 0, 0.33);
	font-size: 40.7222px;
	line-height: 50px;
}

.promo-popup__legal {
	position: absolute;
	margin: 0;
	font-family: 'Montserrat', sans-serif;
	font-style: normal;
	font-weight: 400;
	white-space: nowrap;
}

.promo-popup__legal--mobile {
	width: 275px;
	height: 6px;
	left: calc(50% - 275px / 2);
	top: 217px;
	font-size: 5px;
	line-height: 6px;
	color: #ffffff;
	text-align: center;
}

.promo-popup__legal--desktop {
	width: 655px;
	height: 15px;
	left: 161px;
	top: 633px;
	font-size: 12px;
	line-height: 15px;
	color: #afa1a1;
}

body.promo-popup-open {
	overflow: hidden;
}

body.promo-popup-open .cookies-bar {
	visibility: hidden;
}

@media (max-width: 480px) {
	.promo-popup__close {
		top: -40px;
		right: 0;
	}
}
