@media only screen and (-Webkit-min-device-pixel-ratio: 1.5), only screen and (-moz-min-device-pixel-ratio: 1.5), only screen and (-o-min-device-pixel-ratio: 3/2), only screen and (min-device-pixel-ratio: 1.5) {

}

@media screen and (max-width: 1330px) {

    .wrapper, .footer {
        min-width: 994px;
    }

    .section-wrapper {
        max-width: 944px;
    }

    .main-teaser .box {
        width: 420px;
    }

    .about-steps {
        width: 35%;
    }

    .form-steps .section-wrapper {
        padding-left: 0;
        padding-right: 0;
    }

    .cards {
        margin-left: -20px;
        margin-top: 100px;
    }

    .cards-item {
        margin: 0 0 30px 20px;
    }

    .form-steps .cols-2-right > .cols-item:last-child {
        flex: 270px 0 0;
    }

    .form-row > .cols > .cols-item {
        padding-left: 30px;
    }

    .form-row > .cols {
        margin-left: -30px;
    }

    .wall-item {
        margin-bottom: 40px;
    }

    .card-form-frontplate, .card-form-backplate {
        width: 420px;
    }

    .card-form-backplate {
        padding-left: 317px;
    }

    .form-steps > .section-wrapper {
        padding-bottom: 60px;
    }

}

@media screen and (max-width: 1010px) {

    .wrapper, .footer {
        min-width: 730px;
    }

    .section-wrapper {
        max-width: 708px;
    }

    .section,
    .block {
        margin-bottom: 60px;
    }

    .section-step-up {
        margin-top: -60px;
    }

    .main-teaser .box {
        width: 420px;
    }

    .invitation .cols-item .mark {
        font-size: 38px;
    }

    .contact-block .subsubtitle {
        margin-bottom: 40px;
    }

    .contact-block .cols {
        display: block;
    }

    .contact-block .cols-item {
        margin-bottom: 30px;
    }

    .contact-block .cols-item:last-child {
        margin-bottom: 0;
    }

    .footer .section-wrapper {
        padding: 60px 0 40px;
    }

    .invitation .section-wrapper {
        padding: 60px 0 100px;
    }

    .invitation-header {
        margin-bottom: 60px;
    }

    .invitation {
        height: auto;
    }

    .main-teaser .box {
        width: 300px;
    }

    .gate.box {
        padding: 20px;
    }

    .cards-item {
        padding: 20px 30px;
    }

    textarea.slider-range-int,
    .slider-range-value,
    .subsubtitle {
        font-size: 20px;
    }

    #slider-range-term-unit {
        width: 45px;
    }

    .slider-range-label {
        font-size: 16px;
    }

    textarea.slider-range-int {
        width: 70px;
        padding-bottom: 0;
        text-align: right;
    }

    textarea.slider-days {
        width: 35px;
    }

    .button-big {
        min-width: 220px;
        height: 60px;
        -webkit-border-radius: 8px;
        border-radius: 8px;
        font: bold 20px Lato, Arial, Tahoma;
        padding: 0 20px;
        letter-spacing: -0.8px;
        line-height: 60px!important;
    }

    .gate .button-main {
        width: 100%;
    }

    .gate .box-section {
        padding-bottom: 30px;
        margin-bottom: 30px;
    }

    .gate .box-section:last-child {
        padding-bottom: 0;
        margin-bottom: 0;
    }

    .main-teaser-content {
        width: 350px;
    }

    .title {
        font-size: 36px;
    }

    .text-big {
        font-size: 18px;
    }

    .main-teaser {
        height: 450px;
    }

    .main-teaser .section-wrapper {
        padding-top: 60px;
    }

    .main-teaser-content {
        margin-top: 47px;
    }

    .gate .subsubtitle {
        margin-bottom: 33px;
    }

    .specs .elements-list {
        flex-flow: wrap row;
    }

    .specs .elements-list-caption {
        width: 100%;
        margin: 0 0 15px 0;
        text-align: center;
    }

    .specs .cols-item {
        flex: 30% 0 0;
    }

    .specs .elements-list-item {
        text-align: center;
        margin-bottom: 0;
    }

    .header-right .button {
        min-width: 0;
        padding-left: 30px;
        padding-right: 30px;
    }

    .highlight > .section-wrapper {
        padding-top: 20px;
        padding-bottom: 20px;
    }

    .about-service {
        width: auto;
        float: none;
    }

    .about-steps {
        width: auto;
        float: none;
    }

    .about-steps .elements {
        display: flex;
        justify-content: space-between;
    }

    .about-steps .elements-list {
        flex: 19% 0 0;
        flex-flow: wrap row;
        margin-bottom: 0;
    }

    .about-steps .elements-list .elements-list-item:last-child {
        width: 100%;
        margin-top: 15px;
        margin-bottom: 0;
        min-height: 48px;
    }

    .about-note {
        width: auto;
        float: none;
    }

    .about-faq .subsubtitle,
    .about-note .subsubtitle {
        font-size: 26px;
    }

    .about-merge {
        display: flex;
        margin: 0 -18px;
    }

    .about-merge .about-note,
    .about-merge .about-faq {
        min-width: 50%;
        padding: 60px 40px;
        box-sizing: border-box;
    }

    .about-merge .about-note {
        background: #fafbfb;
        margin-bottom: 0;
        padding-left: 18px;
    }

    .about-merge .about-faq {
        background: #f1f4f5;
        padding-right: 18px;
    }

    .about-note .elements-list {
        flex-flow: wrap row;
    }

    .about-note .elements-list-caption,
    .about-note .elements-list-item {
        margin-bottom: 20px;
    }

    .about-merge .about-faq .cols {
        display: block;
    }

    .about-merge .about-faq .cols-3 .cols-item {
        margin-bottom: 16px;
    }

    .about-merge .about-faq .cols-3 .cols-item:last-child {
        margin-bottom: 0;
    }

    .about {
        margin-bottom: 0;
    }

    .popup-cell .box .subsubtitle {
        margin-right: 40px;
    }

    .steps {
        padding-bottom: 0;
        margin-bottom: 60px;
    }

    .steps:before,
    .steps-item-label {
        display: none;
    }

    .steps-item:first-child {
        margin-left: 0;
    }

    .steps-item:last-child {
        margin-right: 0;
    }

    .cards-item {
        margin: 0 0 50px 50px;
        width: 318px;
    }

    .cards {
        margin-left: -40px;
        margin-top: 100px;
    }

    .cols-form {
        display: block;
        padding-top: 73px;
        position: relative;
    }

    .cols-form .float-note {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
    }

    .cols-form .float-note:after {
        display: none;
    }

    .cols-form .float-note .alt-setting-total,
    .cols-form .float-note .alt-setting-title {
        display: inline;
    }

    .cols-form .float-note .alt-setting-title {
        font-size: 20px;
        font-weight: normal;
    }

    .form-steps .wall {
        display: flex;
        flex-flow: wrap row;
        padding: 0;
        justify-content: center;
    }

    .form-steps .cols-2-right > .cols-item:last-child {
        padding-left: 0;
    }

    .form-main {
        margin-bottom: 30px;
    }

    .wall-item {
        width: 35%;
        margin: 0 7.3%;
        order: 1;
        justify-content: space-between;
    }

    .form-steps .wall-item-note {
        min-width: 100%;
        order: 0;
        padding-bottom: 30px;
        margin-bottom: 60px;
        border-bottom: 1px dotted rgba(135, 152, 156, 0.5);
        display: flex;
        align-items: center;
    }

    .wall-item-note [class*="icon-"] {
        margin-right: 20px;
    }

    .form-steps.highlight > .section-wrapper {
        padding-bottom: 60px;
    }

    .form-steps .wall-item-note {
        justify-content: flex-start;
    }

    .form-steps .wall-item-note .wall-label {
        margin-top: 5px;
    }

}

@media screen and (max-width: 760px) {

    body {
        background: #fafbfb;
    }

    .main-teaser {
        background-image: url(../img/header-rev.jpg);
    }

    .float-fly .desktop-min,
    .desktop {
        display: none;
    }

    .mobile {
        display: block;
    }

    .wrapper, .footer {
        min-width: 320px;
    }

    .footer .section-wrapper,
    .section-wrapper {
        max-width: 100%;
        padding-left: 20px;
        padding-right: 20px;
    }

    .footer .section-wrapper {
        padding-top: 50px;
        padding-bottom: 20px;
    }

    .content {
        padding-top: 55px;
    }

    .box {
        box-shadow: none;
        padding: 20px;
    }

    .section, .block {
        margin-bottom: 50px;
    }

    .content .highlight:first-child,
    .main-teaser:first-child {
        margin-top: -10px;
    }

    .header .section-wrapper {
        padding-left: 15px;
        padding-right: 15px;
    }

    .header-fly {
        box-shadow: none;
    }

    .header {
        height: 45px;
    }

    .header .section-wrapper {
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .header .logo-color {
        width: 108px;
        height: 25px;
        background-size: 100% 100%;
    }

    .button-small {
        height: 30px;
        line-height: 30px!important;
        font-size: 14px;
        padding: 0 18px;
    }

    .header-right .button-orange {
        border: 2px solid #ed4c4c;
        line-height: 27px!important;
        margin-top: -2px;
        text-align: center;
    }

    .steps:after {
        left: 0px;
        right: 0px;
    }

    .main-teaser {
        height: 260px;
    }

    .main-teaser-content .text-big {
        display: none;
    }

    .main-teaser .section-wrapper {
        padding-top: 40px;
    }

    .main-teaser-content {
        margin-top: 0;
        width: auto;
    }

    .title {
        font-size: 26px;
    }

    .main-teaser .box.gate {
        margin: 0 -10px;
        width: auto;
        float: none;
        clear: both;
    }

    .main-teaser {
        margin-bottom: 295px;
    }

    .section-step-up.specs {
        margin-top: 0;
    }

    .specs .section-wrapper {
        padding-top: 0;
        padding-bottom: 0;
    }

    .specs .cols {
        display: block;
    }

    .specs .cols-item {
        padding: 0 20px;
        margin-bottom: 30px;
    }

    .specs .elements-list {
        flex-flow: nowrap;
    }

    .specs .elements-list-caption {
        width: auto;
        margin: 0 20px 0 0;
        text-align: left;
    }

    .specs .elements-list-item {
        text-align: left;
    }

    .specs .cols-item:last-child {
        margin-bottom: 0;
    }

    .subtitle {
        font-size: 26px;
    }

    .about {
        margin-bottom: 0;
    }

    .about .section-wrapper {
        padding-top: 50px;
        padding-bottom: 50px;
        background: #FFF;
    }

    .about-steps .elements-list-count {
        display: none;
    }

    .about-steps .elements-list {
        flex: 100%;
        flex-flow: nowrap;
        margin-bottom: 30px;
    }

    .about-steps .elements-list:last-child {
        margin-bottom: 0;
    }

    .about-steps > .elements {
        display: block;
    }

    .about-steps .elements-list .elements-list-item:last-child {
        margin-top: 0;
    }

    .about-merge {
        display: block;
        margin: 0;
    }

    .about-merge .about-note,
    .about-merge .about-faq {
        padding: 0;
        background: transparent;
        margin-bottom: 50px;
    }

    .about-merge .about-note {
        margin-bottom: 30px;
    }

    .about-faq .subsubtitle {
        margin-bottom: 20px;
    }

    .invitation .section-wrapper {
        padding: 50px 10px;
    }

    .invitation {
        font-size: 18px;
    }

    .invitation .box {
        width: auto;
    }

    .invitation-header .cols {
        flex-direction: column;
    }

    .invitation-header .cols-item {
        margin-bottom: 22px;
    }

    .invitation-header .subtitle {
        margin-bottom: 50px;
        font-size: 36px;
    }

    .invitation-header {
        margin-bottom: 20px;
    }

    .contact-block .subsubtitle {
        margin-bottom: 30px;
        font-size: 26px;
    }

    .invitation .box.gate .button {
        width: 100%;
    }

    .invitation .box .subsubtitle {
        margin-bottom: 30px;
    }

    .footer .contact-block {
        padding-bottom: 30px;
        margin-bottom: 30px;
    }

    .popup-cell .box {
        padding-left: 20px;
        padding-right: 20px;
        padding-bottom: 20px;
        width: 90%;
    }

    .popup-control .cols-item {
        margin-bottom: 20px;
    }

    .popup-control .cols-item /*:last-child*/
    {
        margin-bottom: 0;
    }

    .steps {
        display: none;
    }

    .form-main {
        padding: 0;
    }

    .alt-setting-total,
    .cols-form .float-note .alt-setting-title {
        font-size: 16px;
        line-height: 1em;
    }

    .ad-setting {
        width: 20px;
        height: 20px;
        background: url(../images/icon-settings.svg);
        text-indent: -1000px;
        display: block;
    }

    .url-dotted a.ad-setting {
        border: 0;
    }

    .form-steps.highlight .section-wrapper {
        padding-top: 10px;
    }

    .alt-setting-control {
        margin-top: -2px;
    }

    .form-steps .section-wrapper {
        padding-left: 10px;
        padding-right: 10px;
    }

    .note-right {
        padding: 12px 20px 8px;
    }

    .cols-form {
        padding-top: 48px;
    }

    .form-row > .cols {
        display: block;
    }

    .form-row > .cols > .cols-item {
        padding-left: 0;
    }

    .form-row > .cols {
        margin-left: 0;
    }

    .form-steps .wall-item-note {
        min-width: 100%;
        order: 1;
        display: block;
        border: 0;
        padding: 0;
    }

    .wall-item {
        width: 100%;
        margin-bottom: 40px;
    }

    .wall-item:last-child {
        margin-bottom: 0;
    }

    .form-main .box-section {
        padding-bottom: 20px;
        margin-bottom: 20px;
    }

    .field {
        height: 40px;
    }

    .form-row > .cols > .cols-item {
        margin-bottom: 20px;
    }

    .form-row > .cols > .cols-item:last-child {
        margin-bottom: 0;
    }

    .field-label {
        display: none;
    }

    .form-row .cols-item .form-option {
        top: 0;
    }

    .box-footer {
        margin-top: 20px;
    }

    .form-option {
        padding: 0 0 0 40px;
        font-size: 14px;
    }

    .field input {
        font-size: 16px;
        line-height: 37px;
    }

    .box-footer.status-failure .field-message {
        position: static;
        margin-bottom: 20px;
    }

    .smalltitle {
        font-size: 16px;
    }

    .form-main-step {
        font-size: 14px;
        color: #79929a;
        display: block;
    }

    .form-main .subsubtitle {
        font-size: 16px;
    }

    .field input::-webkit-input-placeholder {
        color: #79929a;
    }

    .field input::-moz-placeholder {
        color: #79929a;
    }

    .field input:-ms-input-placeholder {
        color: #79929a;
    }

    .field input:-moz-placeholder {
        color: #79929a;
    }

    .button-middle {
        height: 50px;
        font: bold 20px/50px Lato, Arial, Tahoma;
    }

    .button-middle.button-smalltext {
        font-size: 14px;
    }

    .button-middle.button-square {
        width: 50px;
        padding: 0;
    }

    .form-steps .box-footer .button-main {
        min-width: 0;
    }

    .box-footer .cols {
        margin-left: 0;
    }

    .box-footer .cols-item {
        padding-left: 0;
        order: 1;
    }

    .popup-control .cols {
        margin-left: -20px;
    }

    .popup-control .cols-item {
        padding-left: 20px;
    }

    .popup-control .cols-item .button {
        margin-bottom: 10px;
    }

    .card-form-frontplate,
    .card-form-backplate {
        width: auto;
        height: auto;
        border: 0;
        background: transparent;
        padding: 0;
        margin: 0;
    }

    .box-footer .mobile-ab {
        order: 0;
        min-width: 100%;
        margin-bottom: 20px;
    }

    .box-footer .mobile-ab .button {
        display: inline;
        border: 0;
        height: auto;
        font-size: 12px;
        line-height: 1.2em;
        padding: 0;
        min-width: 0;
        white-space: nowrap;
        text-decoration: underline;
        font-weight: normal;
        -webkit-border-radius: 0;
        border-radius: 0;
    }

    .box-footer .mobile-ab .button br {
        display: none;
    }

    .form-note {
        font-size: 14px;
        color: #79929a;
        padding-bottom: 20px;
        margin-bottom: 20px;
        border-bottom: 1px dotted rgba(135, 152, 156, 0.5);
    }

    .form-note .elements-list-caption {
        display: none;
    }

    .card-form-logo .elements-list {
        justify-content: flex-start;
    }

    .card-form-cvc,
    .card-form-date {
        display: flex;
        align-items: center;
    }

    .card-form-cvc .field-label,
    .card-form-date .field-label {
        font-size: 12px;
        color: #353740;
        margin-bottom: 0;
        margin-top: 0;
        text-align: left;
        display: block;
        width: 80px;
        order: 0;
    }

    .card-form-number,
    .card-form-logo,
    .card-form-frontplate {
        margin-bottom: 20px;
    }

    .card-form-cvc .field {
        order: 1;
        margin-right: 95px;
    }

    .card-form-cvc .field,
    .card-form-date .field {
        margin-left: 2px;
    }

    .card-form {
        padding-bottom: 0;
    }

    .cols-form {
        margin-left: 0;
    }

    .field-message {
        margin-top: 2px;
    }

    .steps-bar .elements-list-caption,
    .steps-bar .elements-list-item {
        margin-right: 15px;
    }

    .steps-bar .elements-list-item {
        font-size: 14px;
    }

    .cards {
        margin-left: 0;
        margin-top: 50px;
    }

    .cards-item {
        margin: 0 0 30px 0;
        width: 100%;
        box-shadow: 0 50px 60px 0 rgba(0, 0, 0, 0.04);
    }

    .steps-bar .elements-list {
        margin-bottom: 30px;
    }

    .diagram.mobile {
        width: 60px;
        height: 60px;
    }

    .diagram.mobile .diagram-label-number-int {
        font-size: 14px;
    }

    .diagram.mobile .diagram-label-number {
        margin-top: 22px;
    }

    .float-fly {
        top: 45px;
    }

    .float {
        /*height: 80px;*/
    }

    .float-steps .section-wrapper {
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .contact-card {
        font-size: 14px;
        line-height: 25px;
    }

    .cards-item-row {
        padding-top: 10px;
        margin-top: 10px;
    }

    .card-item-head {
        text-align: left;
        margin-top: 0;
        padding-top: 0;
    }

    .card-item-head img {
        /*height: 35px;*/
        max-width: 170px;
        width: auto;
        height: auto;
    }

    .cards-item-sum {
        float: right;
        font-size: 20px;
        margin-top: 7px;
    }

    .cards-item-footer {
        border-top: 0;
        margin-top: 0;
        padding-top: 10px;
    }

    .cards-item.box {
        padding-top: 23px;
    }

    .cards-item-alt {
        margin-top: 0;
    }

}

@media not all and (min-resolution: .001dpcm) {
    @media screen and (max-width: 760px) {

        .diagram.mobile .diagram-label-number {
            margin-top: 13px;
        }

        .header-right .button,
        .button-small {
            padding-bottom: 4px;
            line-height: 0;
        }

        .button-middle {
            padding-bottom: 4px;
            line-height: 0;
        }

    }
}

.iosx .diagram.mobile .diagram-label-number {
    margin-top: 13px;
}
