/* Common */
/* Blocks */
.login {
	display: flex;
	min-height: 100vh;
	background: #fff;
}

.login__box {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	padding: 16.66667vw 4.44444vw;
	background: #fff;
}

.login__logo {
	position: absolute;
	top: 6.66667vw;
	left: 4.44444vw;
}

.login__logo IMG {
	width: 22.77778vw;
}

.login__formbox {
	width: 100%;
}

.login .form__title {
	font-weight: 700;
	font-size: 7.22222vw;
	line-height: 120%;
	text-align: center;
	margin-bottom: 7.22222vw;
}

.login .form__description {
	font-size: 3.88889vw;
	color: #7e7f81;
	text-align: center;
	margin-bottom: 7.77778vw;
}

.login .form__item {
	margin-bottom: 4.44444vw;
}

.login .form__item_button {
	padding-top: 4.44444vw;
	margin-bottom: 2.22222vw;
}

.login .form__input {
	height: 9.44444vw;
	border-radius: 0.55556vw;
	border: 1px solid #f5f5f6;
	background-color: #f5f5f6;
	font-size: 3.88889vw;
}

.login .form__input.error {
	border-color: #fe9797;
}

.login .form__input.valid {
	border-color: #8fc1a4;
}

.login .form__password {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 3.33333vw;
	color: #7e7f81;
	margin-bottom: 4.44444vw;
}

.login .form__password A {
	text-decoration: underline;
}

.login .form__select {
	background-color: #f5f5f6;
	margin-bottom: 4.44444vw;
}

.login .form__select:after {
	background: #f5f5f6;
}

.login .form__select .select {
	height: 9.44444vw;
	border: 1px solid #f5f5f6;
	border-radius: 0.55556vw;
	font-size: 3.88889vw;
}

.login .form__select .select.error {
	border-color: #fe9797;
}

.login .form__select .select.valid {
	border-color: #8fc1a4;
}

.login .form__select .option {
	font-size: 3.88889vw;
}

.login .form__substitution {
	position: relative;
	margin-bottom: 6.66667vw;
}

.login .form__substitution-input {
	position: absolute;
	color: transparent;
	min-height: 100%;
}

.login .form__substitution-text {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 8.88889vw;
	padding: 1.38889vw 11.11111vw 1.38889vw 3.33333vw;
	font-size: 3.88889vw;
	color: #cacacb;
	background-color: #f5f5f6;
	margin: 1px;
	cursor: pointer;
}

.login .form__substitution-text:after {
	position: absolute;
	top: 1.94444vw;
	right: 3.88889vw;
	content: '';
	width: 5.83333vw;
	height: 100%;
	background: url(../img/form/select.svg) no-repeat 0 0/100% auto;
}

.login .form__substitution-text.fill {
	color: #000;
}

.login .form__substitution.open .form__substitution-text:after {
	-webkit-transform: rotate(180deg) translateY(4.16667vw);
	        transform: rotate(180deg) translateY(4.16667vw);
}

.login .form__substitution-list {
	position: relative;
	padding: 0 3.33333vw;
	background-color: #f5f5f6;
}

.login .form__substitution-list LI {
	padding: 1.94444vw 0;
	border-top: 1px solid #e0e1e5;
	font-size: 3.88889vw;
	color: #7e7f81;
	cursor: pointer;
}

.login .form__substitution-list LI:hover {
	color: #90779e;
}

.login .form__footerbox {
	display: flex;
	flex-direction: column;
	gap: 2.77778vw;
}

.login .form__footer {
	font-size: 3.33333vw;
	color: #7e7f81;
}

.login .form__footer-checkbox {
	top: -1px;
	width: 4.44444vw;
	height: 4.44444vw;
	border-color: #d3d8e3;
	border-radius: 1.11111vw;
}

.login .form__footer-checkbox-icon:before {
	background: url(../img/form/check_lilac.svg) no-repeat 50% 50%/60% auto;
}

.login .form__footer-text {
	padding-left: 6.66667vw;
}

.login .form__button {
	height: 11.38889vw;
	border-radius: 2.22222vw;
	font-size: 5vw;
}

.login .form__space {
	padding: 2.22222vw 0;
	font-size: 3.88889vw;
	color: #7e7f81;
	text-align: center;
}

.login__back {
	text-align: center;
}

.login__back A {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	gap: 2.77778vw;
	font-size: 3.88889vw;
	color: #90779e;
}

.login__back A:before {
	content: '';
	display: block;
	width: 1.66667vw;
	height: 2.77778vw;
	background: url(../img/common/arrow-left-lilac.svg) no-repeat 50% 50%/100% 100%;
}

.login .registration-2,
.login .registration-3,
.login .registration-4 {
	display: none;
}

.popup-login {
	width: 100%;
	vertical-align: bottom;
	padding: 8.88889vw 4.44444vw;
	text-align: center;
}

.popup-login__title {
	font-weight: 700;
	font-size: 7.22222vw;
	margin-bottom: 9.44444vw;
}

.popup-login__text {
	display: flex;
	flex-direction: column;
	gap: 3.33333vw 0;
	margin-bottom: 5.55556vw;
}

.popup-login__text P {
	font-size: 4.44444vw;
	color: #7e7f81;
	margin: 0;
}

.popup-login .button {
	height: 11.38889vw;
	border-radius: 2.22222vw;
	font-size: 5vw;
}
