.input {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-item-align: start;
    align-self: flex-start;
    margin-bottom: 0;
}

.input input[type=email], 
.input input[type=number], 
.input input[type=password], 
.input input[type=tel], 
.input input[type=text] {
    height: 56px;
    padding: 0 17px;
    font-family: Roboto Mono, monospace;
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    line-height: 28px;
    letter-spacing: normal;
}

.input input[type=email]::-webkit-input-placeholder, 
.input input[type=number]::-webkit-input-placeholder, 
.input input[type=password]::-webkit-input-placeholder, 
.input input[type=tel]::-webkit-input-placeholder, 
.input input[type=text]::-webkit-input-placeholder, 
.input textarea::-webkit-input-placeholder, 
.radio input[type=email]::-webkit-input-placeholder, 
.radio input[type=number]::-webkit-input-placeholder, 
.radio input[type=password]::-webkit-input-placeholder, 
.radio input[type=tel]::-webkit-input-placeholder, 
.radio input[type=text]::-webkit-input-placeholder {
    color: #d0d0d0;
    text-align: left !important
}

.input input.error {
    border-color: #da291c;
}

.input input[type=email], 
.input input[type=number], 
.input input[type=password], 
.input input[type=tel], 
.input input[type=text], 
.input textarea, 
.radio input[type=email], 
.radio input[type=password], 
.radio input[type=tel], 
.radio input[type=text] {
    width: 100%;
    border: 2px solid #d0d0d0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-family: RobotoMonoRegular, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 16px;
    padding: 16px 19px 17px;
    letter-spacing: .2em;
    color: #000;
    text-align: left !important;
    resize: none;
}

.input input[type=email], 
.input input[type=number], 
.input input[type=password], 
.input input[type=tel], 
.input input[type=text] {
    height: 56px;
    padding: 0 17px;
    font-family: Roboto Mono, monospace;
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    line-height: 28px;
    letter-spacing: normal;
}

.input, 
.page_basket_personal_info .radio {
    min-height: 32px;
}

.input label {
    -ms-flex-item-align: start;
    align-self: flex-start;
    margin-bottom: 17px;
    font-family: Roboto Mono, monospace;
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    line-height: 28px;
    color: #000;
}

.input label span:not(.tooltip):not(.tooltip__popup) {
    padding-left: 3px;
    font-family: Roboto Mono, monospace;
    font-size: 1em;
    color: #da291c;
}

.radio.valid input[type="text"], 
.radio.valid input[type="password"], 
.radio.valid input[type="phone"], 
.radio.valid input[type="mail"], 
.input.valid input[type="text"], 
.input.valid input[type="password"], 
.input.valid input[type="phone"], 
.input.valid input[type="mail"] {
    border: 2px solid #23BF33;
}


.support-form form {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 40px;
    grid-row-gap: 24px;
    margin: 0;
}


.counter-block {
    position: absolute;
    top: 30px;
    right: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.support-form__message {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-item-align: stretch;
    align-self: stretch;
}

.support-form__message label {
    -ms-flex-item-align: start;
    align-self: flex-start;
}

.support-form__message textarea {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

#counter {
    font-size: 12px;
}

#max-symbols {
    margin-left: 2px;
    font-size: 12px;
}

.support-form__file {
    -ms-flex-item-align: start;
    align-self: flex-start;
}

.file-input__title {
    font-family: Roboto Mono, monospace;
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    line-height: 28px;
    color: #000;
}

.file-input__subtitle {
    margin-bottom: 11px;
    font-family: Roboto Mono, monospace;
    font-size: .777em;
    line-height: 1.43em;
    color: #d0d0d0;
}

.file-input__container {
    display: grid;
    grid-template-columns: repeat(auto-fit, 80px);
    grid-column-gap: 24px;
    grid-row-gap: 24px;
}

.file-input__item {
    position: relative;
    width: 80px;
    height: 80px;
}

.file-input__item label {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    border: 2px solid #d0d0d0;
    -webkit-transition: border-color .2s ease;
    -o-transition: border-color .2s ease;
    transition: border-color .2s ease;
    cursor: pointer;
}

.file-input__item label:after, 
.file-input__item label:before {
    content: "";
    position: absolute;
    background-color: #d0d0d0;
    -webkit-transition: background-color .2s ease;
    -o-transition: background-color .2s ease;
    transition: background-color .2s ease;
}

.file-input__item label:before {
    top: 36px;
    left: 20px;
    width: 35px;
    height: 2px;
}

.file-input__item label:after {
    top: 20px;
    left: 37px;
    width: 2px;
    height: 35px;
}

.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    border: 0;
    padding: 0;
    white-space: nowrap;
    -webkit-clip-path: inset(100%);
    clip-path: inset(100%);
    clip: rect(0 0 0 0);
    overflow: hidden;
}

.file-input__remove-button {
    display: none;
    position: absolute;
    top: -10px;
    right: -10px;
    z-index: 10;
    width: 24px;
    height: 24px;
    border: 0;
    border-radius: 50%;
    background-color: #d0d0d0;
    -webkit-transition: background-color .2s ease;
    -o-transition: background-color .2s ease;
    transition: background-color .2s ease;
    cursor: pointer;
}

.file-input__item img {
    position: absolute;
    top: 2px;
    left: 2px;
    width: calc(100% - 4px);
    height: calc(100% - 4px);
    -o-object-fit: cover;
    object-fit: cover;
}

.support-form__agreement {
    grid-column: 1 / 3;
    margin: 0 0 3px;
    font-family: Roboto Mono, monospace;
    font-size: .777em;
    line-height: 1.43em;
    color: #828282;
}


.link--blue, 
.link--blue a, 
.link a--blue, 
.link a--blue a {
    color: #426da9;
}

.btn--light-blue-filled, 
.btn--light-blue-outline:focus, 
.btn--light-blue-outline:hover {
    color: #fff;
    background-color: #426da9;
}

.js-question-form .support-form__button {
    width: -moz-fit-content;
    width: -webkit-fit-content;
    width: fit-content;
    min-width: 225px;
    font-size: 1.111em;
    line-height: 1.6em;
    padding-left: 33px;
    padding-right: 33px;
}

.input input.error {
    border-color: #da291c;
}

table.form-table
{
	width:100%;
	background-color:white;
	border-collapse:collapse;
	font-size:100%;
	font-weight:normal;
	line-height:160%;
}

table.form-table th, table.form-table td
{
	border:1px solid #ADC3D5;
	padding: 5px 5px;
	vertical-align:top;
}

table.form-table th
{
	background-image:url(images/table_head.gif);
	background-repeat:repeat-x;
	text-align: left;
	color:#25639A;
}


table.form-table td
{
	padding: 15px 5px;
}

.form-required 
{
	color: red;
}

.error-fld {
	display: block;
	float: left;
	height: 13px;
	width: 15px;
	background-repeat: no-repeat;
	background-image: url(images/icon_warn.gif);
}


@media (max-width: 1121px) {
	.counter-block {
		top: 32px;
	}
}

@media (max-width: 1205px) {
	.counter-block {
		top: 33px;
	}

	#counter {
		font-size: 10px;
	}

	#max-symbols {
		font-size: 10px;
	}
}

@media (max-width: 800px) {

    .input input[type=email], 
	.input input[type=number], 
	.input input[type=password], 
	.input input[type=tel], 
	.input input[type=text] {
		height: 40px;
		padding: 0 8px;
		border-width: 1px;
		font-size: .666em;
		line-height: 1.33em;
	}


	.input {
		-ms-flex-item-align: stretch;
		align-self: stretch;
	}

	.input textarea {
		height: 80px;
		padding: 10px 15px;
		border-width: 1px;
		font-size: .666em;
		line-height: 1.33em;
	}

	.input label {
		margin-bottom: 9px;
		font-size: .666em;
		line-height: 1.33em;
	}

	.support-form form {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		grid-row-gap: 0;
	}

	.support-form__email, 
	.support-form__full-name, 
	.support-form__organization-name, 
	.support-form__os-version, 
	.support-form__product, 
	.support-form__version {
		margin-bottom: 16px;
	}

	.support-form__code, 
	.support-form__phone {
		margin-bottom: 16px;
	}
    
    .support-form__issue-form .input, 
    .support-form__issue-form .select {
        padding-top: 0;
    }

	.support-form__message {
		margin-bottom: 16px;
	}

	.support-form__message textarea {
		height: 56px;
	}
	
	.counter-block {
		top: 10px;
	}

	.support-form__file {
		margin-bottom: 16px;
	}

	.file-input__title {
		margin-bottom: 6px;
		font-size: .666em;
		line-height: 1.33em;
	}

	.file-input__subtitle {
		margin-bottom: 20px;
		font-size: .666em;
		line-height: 1.33em;
	}

	.file-input__container {
		grid-template-columns: repeat(auto-fit, 56px);
		grid-column-gap: 8px;
		grid-row-gap: 8px;
	}

	.file-input__item {
		width: 56px;
		height: 56px;
	}

	.file-input__item label {
		border-width: 1px;
	}

	.file-input__item label:before {
		top: 26px;
		left: 13px;
		width: 28px;
		height: 1px;
	}

	.file-input__item label:after {
		top: 13px;
		left: 27px;
		width: 1px;
		height: 28px;
	}

	.file-input__remove-button {
		right: -6px;
		width: 20px;
		height: 20px;
	}

	.support-form__agreement {
		margin-bottom: 17px;
		font-size: .666em;
		line-height: 1.33em;
	}

	.js-question-form .support-form__button {
		width: auto;
		min-height: auto;
		font-size: .666em;
		line-height: 1.33em;
	}

}