.modal {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100vw;
	z-index: 1050;
	display: none;
	overflow: hidden;
	outline: 0;
}
.modal-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
	z-index: 1;
}
.modal-dialog {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	height: calc(100vh - 32px);
	width: auto;
	max-width: 500px;
	margin: 16px auto;
	pointer-events: none;
	z-index: 10;
}
.modal-full {
	max-width: 1300px;
}
.modal-content {
	position: relative;
	width: 100%;
	max-height: 100%;
	padding: 40px 50px 50px;
	border-radius: 15px;
	background: #ecf5fb;
	pointer-events: auto;
	outline: 0;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	overflow-x: hidden;
}
.modal-content::-webkit-scrollbar {
	display: none;
}
.modal-close {
	position: absolute;
	top: 25px;
	right: 25px;
	width: 28px;
	height: 28px;
	background: url("data:image/svg+xml;charset=UTF-8,%3csvg width='28' height='28' viewBox='0 0 28 28' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M26 2L2 26' stroke='%23A0A9B4' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' /%3e%3cpath d='M2 2L26 26' stroke='%23A0A9B4' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' /%3e%3c/svg%3e") no-repeat center / contain;
	z-index: 1;
}
.modal-close:hover {
	opacity: 0.5;
	cursor: pointer;
}
.modal-title {
	margin: 0 0 40px;
	font-weight: 600;
	font-size: var(--font-size-h4);
	line-height: 1.5;
}
.modal-title span {
	color: var(--color-blue);
}
.modal-desc {
	margin: 0 0 25px;
	text-wrap: balance;
}
.modal-title + .modal-desc {
	margin-top: -30px;
}
.modal-top {
	display: flex;
	gap: 30px;
}
.modal-top .modal-title {
	flex: 0 0 25%;
	width: 25%;
	margin: 0;
}
.modal-top .input  {
	flex: 0 0 50%;
	width: 50%;
}
.modal label.checkbox input + span {
	font-weight: 500;
	font-size: 13px;
	line-height: 1.4;
}
.modal-success {
	text-align: center;
}
.success-image {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 259px;
	height: 249px;
	margin: auto;
	border-radius: 15px 15px 0 0;
	background: #c9e7ff;
}
.success-image::after {
	content: "";
	flex: 0 0 119px;
	width: 119px;
	height: 169px;
	background: url("data:image/svg+xml;charset=UTF-8,%3csvg width='119' height='169' viewBox='0 0 119 169' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M0.046215 7.81463L13.5947 0C39.2119 19.5134 54.7949 23.3976 66.2856 26.4957C77.7764 36.6686 93.3593 50.772 118.977 60.8524V116.456C118.977 138.883 110.121 150.143 99.6711 155.622L86.1459 163.437L86.8857 159.761C75.8805 161.564 66.2625 159.414 66.2625 159.414C66.2625 159.414 13.5484 110.33 13.5484 55.6041V22.9352L0 7.81463H0.046215Z' fill='%23A1BDFF' /%3e%3cpath d='M119 60.8527L105.451 68.6673L76.4356 60.7602L52.7374 34.3107L66.2859 26.4961C77.7766 36.669 93.3596 50.7723 118.977 60.8527H119Z' fill='%23B7CCFF' /%3e%3cpath d='M1.52648 6.95966L13.5952 0.000488281C39.2124 19.5139 54.7954 23.3981 66.2862 26.4962L52.7377 34.3109L23.7219 34.2646L0.0236816 7.81512L1.50334 6.95966H1.52648Z' fill='%23A1BDFF' /%3e%3cpath d='M52.7604 34.3107C64.2511 44.4836 79.8341 58.5869 105.451 68.6673V124.271C105.451 178.997 52.7604 167.229 52.7604 167.229C52.7604 167.229 0.0462646 118.145 0.0462646 63.419V7.81494C25.6634 27.3284 41.2465 31.2126 52.7372 34.3107H52.7604Z' fill='white' /%3e%3cpath d='M52.76 155.6C56.991 156.132 65.3373 156.664 73.545 154.19C88.4113 149.704 95.9485 137.798 95.9485 118.77V75.5117C92.4573 73.8239 89.0124 71.9974 85.6831 70.0785C71.4411 61.8477 60.7595 52.6921 52.783 45.6404C44.8066 43.4671 34.1251 40.3228 19.883 32.092C16.5537 30.173 13.1088 28.0228 9.61768 25.6646V68.9224C9.61768 87.9272 17.1549 108.55 32.0212 130.191C40.2288 142.144 48.5752 151.253 52.8062 155.6H52.76Z' fill='%23A1BDFF' /%3e%3cpath d='M56.136 153.634C51.905 149.287 43.5818 140.178 35.351 128.225C20.4847 106.584 12.9475 85.9612 12.9475 66.9564V27.8833C15.2826 29.3861 17.5715 30.7965 19.8373 32.0912C34.0793 40.322 44.7609 43.4663 52.7373 45.6396C60.7138 52.6913 71.3954 61.87 85.6374 70.0777C88.9667 71.9966 92.4116 73.8231 95.9028 75.5109V118.769C95.9028 133.658 91.2556 144.178 82.1 150.212C80.4816 150.998 78.7244 151.669 76.8748 152.247C68.6672 154.721 60.3208 154.189 56.0898 153.657L56.136 153.634Z' fill='%2300D158' /%3e%3cpath d='M58.0037 122.786L53.5546 125.358C53.7611 125.246 53.9488 125.114 54.1178 124.964L58.5669 122.392C58.3792 122.542 58.1915 122.674 58.0037 122.786Z' fill='%23C6C0D0' /%3e%3cpath d='M27.46 84.0966L31.9091 81.5248C33.4297 80.6424 35.4384 80.9053 37.4471 82.0692C39.3055 83.1392 41.164 84.9789 42.6471 87.3631L38.1979 89.9349C36.7149 87.5508 34.8564 85.7111 32.9979 84.641C30.9893 83.4771 28.9805 83.2143 27.46 84.0966Z' fill='%23D3E1FC' /%3e%3cpath d='M38.2173 89.9342L42.6476 87.3623L50.8513 100.597L46.4022 103.188L38.2173 89.9342Z' fill='%23D3E1FC' /%3e%3cpath d='M76.7385 106.567L81.1689 103.977L58.5666 122.393L54.1362 124.964L76.7385 106.567Z' fill='%23D3E1FC' /%3e%3cpath d='M65.2122 87.9067L69.6613 85.3348C71.1819 84.4525 73.1905 84.7153 75.218 85.8792L70.7689 88.4511C68.7414 87.2872 66.7327 87.0244 65.2122 87.9067Z' fill='%23D3E1FC' /%3e%3cpath d='M70.7686 88.4517L75.2177 85.8799C76.9635 86.8936 78.7094 88.5644 80.1549 90.7796C83.4777 95.867 83.9282 101.762 81.1874 103.996L76.7383 106.567C79.4978 104.333 79.0286 98.4388 75.7058 93.3514C74.2603 91.1362 72.5144 89.4655 70.7686 88.4517Z' fill='%23D3E1FC' /%3e%3cpath d='M70.7687 88.4515C72.5146 89.4652 74.2604 91.1359 75.7059 93.3511C79.0287 98.4385 79.4792 104.333 76.7384 106.567L54.1361 124.983C52.2964 126.466 49.6682 126.26 47.04 124.739C44.8624 123.481 42.666 121.322 40.9201 118.507L27.7604 97.2746C24.5691 92.1309 24.3251 86.3114 27.1973 84.3027C28.7366 83.2139 30.8767 83.4391 33.0168 84.6781C34.8753 85.7482 36.7338 87.5691 38.2168 89.972L46.4205 103.207L64.7427 88.2637C66.3008 87.006 68.5348 87.1937 70.7687 88.489V88.4515Z' fill='white' /%3e%3c/svg%3e") no-repeat center / contain;
}

@media (max-width: 1199px) {
	.modal-top {
		justify-content: center;
		flex-wrap: wrap;
	}
	.modal-top .modal-title {
		flex: 0 0 100%;
		width: 100%;
	}
	.modal-top .input  {
		flex: 0 0 100%;
		width: 100%;
		max-width: 630px;
	}
}
@media (max-width: 767px) {
	.modal-dialog {
		max-width: 540px;
		padding: 0 20px;
	}
	.modal-content {
		width: 100%;
		padding: 30px 20px;
		border-radius: 8px;
	}
	.modal-close {
		top: 15px;
		right: 15px;
		width: 20px;
		height: 20px;
	}
	.modal-title {
		margin: 0 0 20px;
	}
	.success-image {
		border-radius: 10px 10px 0 0;
	}
}

@media (pointer:coarse) {
	.modal-dialog {
		max-width: 540px;
		max-width: 1300px;
		padding: 35px 20px;
	}
}
