/* ========================================
   MFP (Magnific Popup) Основные стили
   ======================================== */
.mfp {
    position: relative;
    max-width: 40.625rem;
    min-height: 26.25rem;
    text-align: left;
    padding: 5rem 4.375rem 3.125rem;
    margin: 2.5rem auto;
    background: #fff;
}

@media only screen and (max-width: 767px) {
    .mfp {
        max-width: 450px;
    }
}

.mfp--delivery-popup {
    max-width: 850px;
    min-height: 301px;
    padding: 0;
    -webkit-box-shadow: -1.7px 5.8px 18.9px 2.1px rgba(36, 23, 8, .11);
    box-shadow: -1.7px 5.8px 18.9px 2.1px rgba(36, 23, 8, .11);
    border: solid 2px #e2e2e2;
}

.mfp-bg {
    background: #fff !important;
    opacity: .9 !important;
}

.mfp .mfp-close {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    top: 14px;
    right: 14px;
    opacity: 1;
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
    width: 16px;
    height: 16px;
}

.mfp .mfp-close svg {
    fill: #898989;
    width: 100%;
    height: 100%;
    pointer-events: none;
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
}

.mfp .mfp-close:focus {
    outline: 0;
}

.mfp .mfp-close:hover svg {
    fill: rgba(137, 137, 137, .8);
}

.mfp .mfp-close:active {
    -webkit-transform: translateY(1px);
    -ms-transform: translateY(1px);
    transform: translateY(1px);
}

/* ========================================
   MFP Hide класс
   ======================================== */
.mfp-hide {
    display: none !important;
}

/* ========================================
   MFP Анимации
   ======================================== */
.mfp-fade-zoom.mfp-bg {
    opacity: 0;
    -webkit-transition: opacity .3s ease-out;
    -o-transition: opacity .3s ease-out;
    transition: opacity .3s ease-out;
}

.mfp-fade-zoom .zoom-anim-dialog {
    opacity: 0;
    -webkit-transform: scale(.8);
    -ms-transform: scale(.8);
    transform: scale(.8);
    -webkit-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

.mfp-fade-zoom.mfp-ready.mfp-bg {
    opacity: .8;
}

.mfp-fade-zoom.mfp-ready .zoom-anim-dialog {
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

.mfp-fade-zoom.mfp-removing.mfp-bg {
    opacity: 0;
}

.mfp-fade-zoom.mfp-removing .zoom-anim-dialog {
    -webkit-transform: scale(.8);
    -ms-transform: scale(.8);
    transform: scale(.8);
    opacity: 0;
}

/* ========================================
   DELIVERY POPUP Структура
   ======================================== */
.delivery-popup {
    height: 100%;
}

.delivery-popup__row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.delivery-popup__col {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.delivery-popup__content {
    height: 100%;
}

.delivery-popup__content--left {
    background-color: #f4f4f4;
    padding: 32px 55px 50px 35px;
}

.delivery-popup__content--right {
    background-color: #fff;
    padding: 32px 35px 46px 55px;
}

.delivery-popup__title {
    font-weight: 700;
    margin-bottom: 23px;
}

.delivery-popup__input-wrap {
    margin-bottom: 46px;
}

.delivery-popup__input:not(:last-child) {
    margin-bottom: 16px;
}

.delivery-popup__main-input {
    margin-bottom: 21px;
}

.delivery-popup__checkbox {
    margin-bottom: 44px;
}

.delivery-popup__btn-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

/* ========================================
   INPUT Стили полей ввода
   ======================================== */
.input-wrap {
    margin-bottom: 30px;
}

input, textarea {
    width: 100%;
    font-size: 20px;
    line-height: 20px;
    color: #b7b7b7;
    border: none;
    padding: 5px 10px;
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
}

input:focus, textarea:focus {
    outline: 0;
    border-color: #111;
}

input:disabled, textarea:disabled {
    background: #fff;
}

::-webkit-input-placeholder {
    color: #999;
}

::-moz-placeholder {
    color: #999;
}

:-ms-input-placeholder {
    color: #999;
}

::-ms-input-placeholder {
    color: #999;
}

::placeholder {
    color: #999;
}

.input--gray .input__field {
    border-bottom: solid 1px #b7b7b7;
}

.input--c4 .input__field {
    border-bottom: solid 1px #898989;
}

.input__field {
    background: 0 0;
    padding: 4px 0 8px;
}

.input__field:hover {
    border-color: #009aab;
    color: #009aab;
}

.input__label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 0;
}

.input__text {
    display: inline-block;
    font-size: 16px;
    line-height: 16px;
    text-align: left;
    color: #555;
    white-space: nowrap;
    width: 100%;
    max-width: 102px;
    margin-right: 12px;
    margin-bottom: -6px;
}

/* ========================================
   CHECKBOX Стили чекбоксов
   ======================================== */
.checkbox {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
    margin-bottom: 0;
}

.checkbox--start {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.checkbox:hover .checkbox__icon svg {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

.checkbox__input {
    width: 0;
    height: 0;
    position: absolute;
    visibility: hidden;
}

.checkbox__input:checked~.checkbox__icon {
    background: #009aab;
}

.checkbox__input:checked~.checkbox__icon svg {
    fill: #fff;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

.checkbox__text {
    font-size: 16px;
    line-height: 20px;
    text-align: left;
    color: #555;
}

.checkbox__text a {
    color: #009aab;
}

.checkbox__text a:hover {
    color: #b7b7b7;
}

.checkbox__icon {
    width: 17px;
    height: 17px;
    min-width: 17px;
    min-height: 17px;
    background: rgba(172, 172, 172, .57);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
    margin-right: 13px;
}

.checkbox__icon svg {
    fill: #464646;
    width: 11px;
    height: 9px;
    min-width: 11px;
    min-height: 9px;
    fill: #efefef;
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
}

/* ========================================
   BUTTON Стили кнопок
   ======================================== */
.btn {
    position: relative;
    display: inline-block;
    font-size: 16px;
    line-height: 16px;
    letter-spacing: .32px;
    border-radius: 3px;
    color: #fff;
    text-align: center;
    text-decoration: none;
    background-color: #009aab;
    padding: 12.5px 17.9px;
    border: none;
    outline: 0;
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
}

.btn:focus:not(.disabled), .btn:hover:not(.disabled) {
    outline: 0;
    cursor: pointer;
    color: #fff;
    text-decoration: none;
    background-color: rgba(0, 154, 171, .6);
}

.btn:active:not(.disabled) {
    background-color: #009aab;
}

.btn--big {
    font-size: 20px;
    line-height: 20px;
    letter-spacing: .4px;
    padding: 15px 20.5px;
}

.btn.disabled {
    opacity: .4;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

/* ========================================
   FORM RESULT Стили результата отправки
   ======================================== */
.form-result {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    background: #fff;
    opacity: 0;
    padding: 50px;
    visibility: hidden;
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
    z-index: 1;
}

.form-result .mess__title {
    font-size: 42px;
    line-height: 47px;
    font-weight: 600;
    margin-bottom: 10px;
    opacity: 0;
    -webkit-transform: translateY(50px);
    -ms-transform: translateY(50px);
    transform: translateY(50px);
    -webkit-transition: all .6s ease;
    -o-transition: all .6s ease;
    transition: all .6s ease;
}

@media only screen and (max-width: 575px) {
    .form-result .mess__title {
        font-size: 30px;
    }
}

@media only screen and (max-width: 374px) {
    .form-result .mess__title {
        font-size: 25px;
        margin-bottom: 5px;
    }
}

.form-result .mess__desc {
    font-size: 22px;
    line-height: 27px;
    opacity: 0;
    -webkit-transform: translateY(50px);
    -ms-transform: translateY(50px);
    transform: translateY(50px);
    -webkit-transition: all .6s ease;
    -o-transition: all .6s ease;
    transition: all .6s ease;
}

@media only screen and (max-width: 374px) {
    .form-result .mess__desc {
        font-size: 16px;
    }
}

.form-result--success {
    opacity: 1;
    visibility: visible;
}

.form-result--success .mess__desc, .form-result--success .mess__title {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    -webkit-transition-delay: .1s;
    -o-transition-delay: .1s;
    transition-delay: .1s;
}

.form-result--success .mess__title {
    -webkit-transition-delay: .2s;
    -o-transition-delay: .2s;
    transition-delay: .2s;
}

.form-result--success .mess__desc {
    -webkit-transition-delay: .3s;
    -o-transition-delay: .3s;
    transition-delay: .3s;
}
