html, body {
	width: 100%;
	height: 100%;
	min-width: 320px; 
}

body {background: #fff; font: normal 15px 'Helvetica-Neue', Helvetica, Arial, sans-serif;  color: #060405; line-height: 1.4; font-weight: 300; position:relative;}

a {outline: none; color: #00a2d7; transition: all 0.2s ease;}
a:hover {text-decoration: none; color: #31c0ee; }

img, iframe {max-width: 100%;}
img {height: auto;}

.button-reset-style {background: none; padding: 0 0 0 0; margin: 0 0 0 0; width: auto; overflow: visible; border: 0; cursor: pointer;}
.button-reset-style::-moz-focus-inner{border: 0; padding: 0; margin: 0;}

input, textarea, button, select {font: normal 15px 'Helvetica-Neue', Helvetica, Arial, sans-serif; color: #212121; outline:none; transition: background 0.2s ease;}
input::-ms-clear {display: none;}

h1, h2, h3, h4 {padding: 0 0 0 0; font-weight: 200; }

h1 {margin:0 0 25px 0; font-size: 60px; line-height: 1; text-align: center; }
h2 {margin:0 0 16px 0; padding: 10px 0 0 0; font-size: 31px; line-height: 1;}
h3 {margin:0 0 16px 0; padding: 10px 0 0 0; font-size: 27px; line-height: 1;}
h4 {margin:0 0 14px 0; padding: 10px 0 0 0; font-size: 21px; line-height: 1.2;}

.title-a {font-size: 40px; line-height: 1; font-weight: 200; margin:0 0 25px 0; }

p {margin: 0 0 20px 0; padding: 0 0 0 0; }

.icon {display: inline-block; /*background: url('../img/pict0.png') no-repeat;*/ vertical-align:baseline; position:relative; width: 1em; height: 1em; fill: currentColor; line-height: 1;}
.icon-svg {display: inline-block; background:none; vertical-align:middle; position:relative; width: 1em; height: 1em; fill: currentColor; line-height: 1;}


.button-a, .button-b {display: inline-block; position:relative; text-decoration:none; line-height: 1; text-align: center; transition: all 0.2s ease;}

.button-a {background: url('../img/bg2-1.png') repeat-x 0 100%; font-size: 27px; font-weight: 200; color: #00a2d7; text-decoration:none; transition: color 0.2s ease;}
.button-a:hover {background: none; color: #31c0ee; }

.button-b {padding: 19px 20px 20px 20px; border: 2px solid #ff6524; font-size: 25px; font-weight: 300; color: #ff7d2b; border-radius: 5px; line-height: 1.1; transition: color 0.2s ease;}
.button-b__inner {position: relative;}
.button-b:before {content: ' '; display: block; width: 100%; height: 100%; position:absolute; top: 0; left: 0; border-radius: 3px; background: #ff8129 url('../img/bg3-1.png') no-repeat 100% 0; background-size: cover; opacity: 0; transition: opacity 0.2s ease;}
.button-b:hover {border: 0; padding: 21px 22px 22px 22px; color: #fff;}
.button-b:hover:before {opacity: 1; border-radius: 5px;}

/* } Base Elements */


/* Forms { */
.select-custom {position:relative;}
.select-custom select {width: 50%; position:absolute; top: 0; left: -20000px; opacity: 0;}
.select-custom__val {background: #fff; border:1px solid #e5e5e5; height: 31px; padding: 0 35px 0 12px; border-radius: 5px; position:relative; cursor:pointer; z-index: 1; line-height: 1; }
.select-custom__mark {display: flex; align-items: center; justify-content: center; position:absolute; top: 50%; right: 12px; margin-top: -3px;}
.select-custom__mark:after {content: ''; display: block; border: 4px solid transparent; border-top: 4px solid #000; }
.select-custom__text {display: flex; align-items: center; justify-content: flex-start; height: 31px; color: #000; font-size: 15px;font-style:italic; white-space: nowrap; zoom: 1; max-width: 100%; position: relative; overflow: hidden;}
.select-custom__text-inner {display: inline-block; max-width: 100%; overflow: hidden; text-overflow: ellipsis;}
.select-custom__list {display: none; position:absolute; top: 100%; left: 0; min-width: 100%; margin: -1px 0 0 0; z-index: 5; line-height: 1.3;}
.select-custom__list-inner {background: #fff; border:1px solid #e5e5e5; overflow: auto; max-height: 280px; border-radius: 0 0 5px 5px;}
.select-custom__list-inner-i {}
.select-custom__item {padding: 5px 12px 5px 12px; cursor:pointer; position:relative; font-size: 14px; color: #000; background: #fff; border-top:1px solid #e5e5e5;}
.select-custom__item:first-child {border-top: 0;}
.select-custom__item:hover, .select-custom__item_checked, .select-custom__item_checked:hover{background: #f3f3f3; color: #000;}
.select-custom_selected .select-custom__text {font-style:normal;}
.select-custom_extended .select-custom__mark {margin-top: -6px; }
.select-custom_extended .select-custom__mark:after {border: 4px solid transparent; border-bottom: 4px solid #000; }
.select-custom_extended .select-custom__list {display: block; z-index: 10;}

.input-text {padding: 0 12px 0 12px; height: 33px; background: #fff; border:1px solid #e5e5e5; border-radius: 5px; font-size: 14px; color: #000000; transition: box-shadow 0.2s ease;}
.input-text_area {padding: 5px 12px 5px 12px; margin:0; height: 95px; vertical-align:top; resize: none; overflow:auto;}
.input-text:focus {box-shadow: 0 0 0 2px #ffe6cf;}
.invalid .input-text {border-color: #ff0000;}

.field-form {position:relative;}
.field-form__input-text {width: 100%; }
.field-form_center {margin-left: auto; margin-right: auto;}
.field-form_inline {display: inline-block;}

.input-button {display: inline-block; background: url('../img/icons.png') no-repeat 0 0; position:relative; cursor:pointer; overflow:hidden; vertical-align:top;}

.input-button_checkbox input, .input-button_radio input {position:absolute; top: 0; left: -50px;}
.input-button_checkbox {width: 17px; height: 17px; background-position: 0 0;}
.input-button_checkbox.active {background-position: 0 -19px;}

.input-button_radio {width: 19px; height: 19px; background-position: -20px 0;}
.input-button_radio.active {background-position: -20px -22px;}

.label {display: inline-block; padding: 0 0 0 25px; position:relative; cursor:pointer;}
.label .input-button {position:absolute; top: 1px; left: 0;}
.label .input-button_radio {top: 0;}

.input-buttons {line-height: 1.4;}
.input-buttons__item {margin: 0 0 9px 0; padding: 0 0 0 0; background:none;}
.input-buttons__input-text {margin-left: 18px; vertical-align:top; top: -7px; position: relative;}
.input-buttons.text-size-13 {font-size: 13px;}
.input-buttons.text-size-13 .input-button {position:absolute; top: 0; left: 0;}

/* } Forms */

/* Utilites { */
.u-hidden {display: none; }

.u-align-center {text-align: center; }
.u-align-left {text-align: left; }
.u-align-right {text-align: right; }

.u-pull-center {margin:0 auto;}
.u-pull-left {float:left;}
.u-pull-right {float:right;}

.u-display-block {display: block; width: 100%; }

.u-rotate-90 {transform: rotate(90deg);}
.u-rotate-180 {transform: rotate(180deg);}
.u-rotate-270 {transform: rotate(270deg);}

/* } Utilites */



.page {display: flex; align-items: center; justify-content: center; background: #fff url('../img/bg1-2.jpg') no-repeat 50% 50% / cover; min-height: 100%;}
.page__inner {background: #fff url('../img/bg5-1.png') no-repeat 100% 100%; width: 100%; max-width: 420px; margin: auto auto; position: relative; border-radius: 8px;}
.page__inner-i {max-width: 334px; margin: 0 auto; }

.header {padding: 50px 15px;}

.logo-main {background: none; display: block; text-align: center;}
.logo-main:hover {opacity: 0.7;}
.logo-main__img {vertical-align: top;}

.content {padding: 38px 15px 36px;}

.messengers {margin-bottom: 20px;}
.messengers__list {display: flex; flex-wrap: wrap; justify-content: center; margin-left: -8px; }
.messengers__item {width: 25%; padding-left: 8px; }
.messengers__item-link {display: block; width: 100%; height: 70px; display: flex; align-items: center; justify-content: center; border-radius: 5px;}
.messengers__item-link:hover {opacity: 0.8;}
.messengers__item-img {display: block; width: 40px;}
.messengers__item_1 .messengers__item-link {background: #04c124 url('../img/bg4-1.png') no-repeat 0 0 / cover;}
.messengers__item_2 .messengers__item-link {background: #764489 url('../img/bg4-2.png') no-repeat 0 0 / cover;}
.messengers__item_3 .messengers__item-link {background: #3f5d9b url('../img/bg4-3.png') no-repeat 0 0 / cover;}
.messengers__item_4 .messengers__item-link {background: #578bbe url('../img/bg4-4.png') no-repeat 0 0 / cover;}

.socials-links {}
.socials-links__list {display: flex; flex-wrap: wrap; justify-content: center; margin-left: -10px; }
.socials-links__item {margin: 10px 0 0 10px; }
.socials-links__item-link {background: #cccccc; display: flex; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 5px; border-radius: 50%;}
.socials-links__item-link:hover {background: #000000;}
.socials-links__item-img {display: block; width: 24px;}

.button-discuss-project {margin-bottom: 20px;}
.button-discuss-project__link {display: block;}

.button-to-site {}
.button-to-site__link {display: block;}


.form-default {}
.form-default__title {margin-bottom: 25px;}
.form-default__intro {font-size: 19px; margin-bottom: 35px; font-style: italic;}
.form-default__intro_margin-1 {margin-bottom: 15px;}
.form-default__fields {max-width: 250px; margin: 0 auto;}
.form-default__item {margin-bottom: 10px;}
.form-default__item_submit {padding-top: 15px;}
.form-default__error {display: none; font-size: 19px; color: #ff0000; margin-top: 15px;}
.form-default__error_shown {display: block;}
.form-default__result {}
.form-default__result_success {}
.form-default__caption {margin:0 0 4px 0;}
.form-default__caption span {color: #747474; }
.form-default__agreement {font-size: 14px; font-style: italic; color: #888888;}
.form-default__agreement a {color: inherit;}
.form-default__notice {font-size: 14px; font-style: italic; color: #888888;}
.form-default__notice a {color: inherit;}
.form-default__result {}
.form-default__result_success {display: none;}
.form-default__result_error {display: block; margin-top: 20px;}
.submit-success form {display: none;}
.submit-success .form-default__result_success {display: block;}
.submit-success .form-default__result_error {color: #ff0000;}

.popup {width: 420px; background: #fff; border-radius: 8px; text-align: center; position: relative;}
.popup__inner {max-width: 380px; padding: 35px 15px; margin: 0 auto;}
.popup__title {margin-bottom: 25px;}
.popup__intro {font-size: 19px; margin-bottom: 35px; font-style: italic;}


.footer {padding: 50px 15px;}

.clear {clear: both;}
.clearfix:after {content: ' '; clear:both; display: block; width: 0; height: 0; overflow: hidden; font-size: 0;}
