	.modal__menu .close,
	.modal__product .close {
		width: 40px;
		height: 40px;
		display: block;
		margin: auto;
		margin-right: -25px;
		margin-top: -10px;
		position: relative;
		/* Это нужно для псевдоэлементов */
		cursor: pointer;
		/* Курсор для указания, что элемент кликабельный */
	}

	.modal__menu .close::before,
	.modal__menu .close::after {
		content: '';
		position: absolute;
		top: 50%;
		left: 50%;
		width: 24px;
		/* Ширина крестика */
		height: 2px;
		/* Толщина линий */
		background-color: white;
		/* Цвет линий */
	}

	.modal__menu .close::before {
		transform: translate(-50%, -50%) rotate(45deg);
	}

	.modal__menu .close::after {
		transform: translate(-50%, -50%) rotate(-45deg);
	}

	.modal__menu a.logo {
		display: block;
		text-align: center;
		margin-bottom: 15px;
	}

	.modal__menu a.logo img {
		width: 80px;
	}

	.modal__menu,
	.modal__product {
		position: fixed;
		top: 0;
		right: 0;
		left: 0;
		bottom: 0;
		z-index: 9999;
		background-color: #0000008a;
	}

	.modal__menu .container {
		position: absolute;
		right: 0;
		top: 0;
		bottom: 0;
		width: 300px;
		background: black;
		padding: 20px 40px;
		padding-bottom: 40px;
	}

	.modal__menu ul {
		color: #fff;
		list-style: none;
		padding: 0;
		text-align: center;
	}

	.modal__menu ul li {
		margin-bottom: 15px;
	}

	.modal__menu ul li a {
		color: #fff;
		font-size: 14px;
		text-transform: uppercase;
		font-weight: 400;
	}

	.modal__menu ul li a:hover {
		color: red;
		border-bottom: 1px solid white;
	}

	.modal__menu ul.sub-menu {
		margin-top: 10px;
		display: none;
	}

	.modal__menu ul.sub-menu li a {
		font-size: 12px;
		font-weight: 300;
	}

	.modal__menu li.menu-item-has-children>a::after {
		display: inline-block;
		margin-left: 15px;
		width: 8px;
		height: 8px;
		border: solid white;
		border-width: 0 2px 2px 0;
		transform: rotate(45deg);
		content: "";
		position: relative;
		top: -3px;
	}

	.modal__menu li.menu-item-has-children a.active::after {
		transform: rotate(225deg);
		top: 0;
	}

	.modal__menu .bottom {
		display: block;
		position: absolute;
		bottom: 40px;
		left: 40px;
		right: 40px;
	}

	.modal__menu .bottom a {
		color: #fff;
		display: block;
		text-align: center;
		font-size: 14px;
		font-weight: 300;
	}

	.modal__menu .language-switcher {
		display: flex;
		justify-content: center;
		gap: 10px;
		margin-top: 20px;
	}

	.modal__menu .bottom a.register,
	.modal__menu .bottom a.my-account {
		padding: 10px 25px;
		font-weight: 400;
		background: red;
		border-radius: 20px;
		margin-bottom: 20px;
	}

	.modal__menu .language-switcher a.active,
	.modal__menu .language-switcher a:hover {
		color: red;
		border-bottom: 1px solid white;
	}

	/* popup */
	.elementor-popup-modal .dialog-close-button {
		right: -50px;
		top: 0;
		font-size: 30px;
	}

	.elementor-popup-modal .dialog-close-button svg {
		fill: white;
	}

	.elementor-location-popup [hidden="hidden"] {
		display: none !important;
	}

	.full-input .elementor-widget-shortcode {
		width: 90% !important;
	}

	/* form */
	.elementor-shortcode form h2 {
		text-align: center;
		margin: 0;
		margin-bottom: 25px;
	}

	.elementor-shortcode form label {
		width: 100%;
		margin-bottom: 30px;
		font-size: 20px;
		color: black;
		font-weight: 300;
	}

	.elementor-shortcode form input {
		outline: none;
		margin-top: 10px;
		padding: 15px;
		border: 1px solid #c9c9c9;
		border-radius: 5px;
	}

	.elementor-shortcode form input[readonly] {
		background: #80808030;
		cursor: not-allowed;
	}

	.elementor-shortcode form button.btn {
		padding: 15px;
		width: 100%;
		background: black;
		border-color: black;
		color: white;
		border-radius: 5px;
		font-size: 16px;
		font-weight: 700;
	}

	.elementor-shortcode form button.btn[disabled="disabled"] {
		opacity: 0.6;
		cursor: not-allowed;
	}

	.elementor-shortcode form label[for="code"] small {
		display: block;
		margin-top: 10px;
	}

	.elementor-shortcode form .d-flex {
		display: grid;
		margin-top: 10px;
		grid-template-columns: 1fr auto;
		gap: 10px;
	}

	.elementor-shortcode form .d-flex input {
		margin: auto;
		width: 20px;
		height: 20px;
		display: block;
	}

	.elementor-shortcode form .d-flex span {
		font-size: 16px;
	}

	.elementor-shortcode form .d-flex span a {
		color: #ff8562;
	}

	label.masked-phone {
		display: grid;
	}

	label.masked-phone .iti--show-flags {
		margin-top: 10px;
	}

	label.masked-phone .iti--show-flags button {
		background: unset !important;
	}

	/* product */
	.modal__product {
		background: #fff;
		padding: 20px;
	}

	.modal__product .control {
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-bottom: 30px;
	}

	.modal__product .control p {
		margin: 0;
		cursor: pointer;
	}

	.modal__product .close::before,
	.modal__product .close::after {
		content: '';
		position: absolute;
		top: 50%;
		left: 50%;
		width: 24px;
		/* Ширина крестика */
		height: 2px;
		/* Толщина линий */
		background-color: black;
		/* Цвет линий */
	}

	.modal__product .close::before {
		transform: translate(-50%, -50%) rotate(45deg);
	}

	.modal__product .close::after {
		transform: translate(-50%, -50%) rotate(-45deg);
	}

	.modal__product #pasteResponse {
		display: flex;
		justify-content: center;
	}

	.modal__product .product-container {
		display: grid;
		width: 70%;
		gap: 30px;
		grid-template-columns: 1fr auto;
	}

	.modal__product .product-container .image {
		width: 550px;
	}

	.modal__product .product-container .info {
		color: black;
	}

	.modal__product .product-container .info h2 {
		font-size: 24px;
		font-weight: 700;
		margin: 0;
		margin-bottom: 20px;
	}

	.modal__product .product-container .info p.price {
		font-size: 16px;
		font-weight: 400;
		margin: 0;
	}

	.modal__product .product-container .info .product-content {
		font-size: 16px;
		font-weight: 300;
		margin-top: 20px;
	}

	/* register */
	#checkPassword {
		display: flex;
		gap: 10px;
	}

	#checkPassword button {
		border: 1px solid black;
		color: black;
	}

	#checkPassword button:hover,
	#checkPassword button:focus {
		background-color: #80808040;
	}

	#checkPassword input {
		outline: none;
		margin: 0;
	}



	@media screen and (max-width: 767px) {
		.elementor-popup-modal .dialog-close-button {
			right: 0px;
			top: 0px;
		}

		.elementor-popup-modal .dialog-widget-content {
			max-width: 95%;
		}

		.dialog-message.dialog-lightbox-message {
			width: 100% !important;
		}

		.modal__menu .container {
			width: 70%;
			padding-right: 0;
		}

		.modal__menu .close {
			margin-right: 0;
		}

		.modal__menu ul {
			text-align: left;
		}

		.modal__product .product-container {
			display: block;
			width: 100%;
			height: 90vh;
			overflow: scroll;
			padding-bottom: 20px;
		}

		.modal__product .product-container .image {
			width: 350px;
		}

		.modal__product .product-container .info h2 {
			font-size: 20px;
			margin-top: 15px;
		}

		.modal__product .product-container .info p.price {
			font-size: 14px;
		}

		.modal__product .product-container .info .product-content {
			font-size: 14px;
		}

		.elementor-shortcode form h2 {
			font-size: 24px;
		}

		.elementor-shortcode form label {
			font-size: 18px;
		}

		.elementor-shortcode form input {
			padding: 10px;
		}
	}