body{

    width: 100%;

    min-width: 300px;

    margin: 0;

    padding: 0;

    background:#ffffff url('../img/hero.jpg') no-repeat;

    background-position: top center;

    background-size: cover;

    font-family: Raleway,sans-serif;

}



h1, h2, h3, h4, h5 ,h6{

    font-weight: 200;

}



a{

    -webkit-transition: all .3s ease;

    -moz-transition: all .3s ease;

    -o-transition: all .3s ease;

    transition: all .3s ease;

}



p, li, a{

    font-size: 14px;

    line-height: 24px

}



fieldset{

    margin: 0;

    padding: 0;

    border: none;

}



canvas {

    display: block;

    width: 100%; !important;

    position: absolute;

    -moz-opacity: .2;

    -khtml-opacity: .2;

    opacity: .2;

    filter:alpha(opacity=0.2);

    max-height: 968px !important;

}



.site {



}



.hero-item img {

    display: block;

    max-width: 100%

}



.hero-item {

    position: relative;

}



.device-fly {

    position: absolute;

    top: 0;

    left: 0;

    z-index: -1;

    -webkit-animation: rotation 180s infinite linear;

    border-radius: 50%;

    max-height: 100%;

}



@-webkit-keyframes rotation {

    from {

        -webkit-transform: rotate(0deg);

    }

    to {

        -webkit-transform: rotate(359deg);

    }

}





.logo img {

    float: right;

    padding: 20px 0;
    max-width: 180px;

}



.hero-text {

    color: #ffffff;

    padding-bottom: 25px;

}

.hero-text h1 {

    font-size: 30px;

    line-height: 42px;

    margin-top: 35px;

}



.hero-text .hero-body {

    font-size: 14px;

    line-height: 20px;

    margin-bottom: 50px;

    position: relative;

    z-index: 1;

}



.hero-text .hero-body:before {

    content: "";

    background-color: #011937;

    position: absolute;

    top: -10px;

    left: -20px;

    right: 0px;

    bottom: -10px;

    -webkit-filter: url(#blur);

    filter: url(#blur);

    -webkit-filter: blur(5px);

    filter: blur(5px);

    background-size: cover;

    opacity: 0.5;

    z-index: -1;

}



.hero-text a {

    color: #ffffff;

    font-weight: 600;

}



.hero-text a:hover {

    color: #3498db;

}



.btn {

    border: 1px solid #ffffff;

    background-color: transparent;

    color: #ffffff;

    font-weight: 600;

    text-decoration: none;

    padding: 16px 32px;

    border-radius: 40px;

}



.btn:hover {

    background-color: #ffffff;

    color: #3498db;

}



.btn.trt {

    border: 1px solid #3498db;

    color: #3498db;

}



.btn.trt:hover {

    background-color: #3498db;

    color: #ffffff;

}



.btn.blue {

    background-color: #3498db;

    color: #ffffff;

}



.btn.blue:hover {

    opacity: 0.8;

}



.btn.black {

    border-color: #02142a;

    color: #02142a;

}



.btn.black:hover {

    background-color: #02142a;

    color: #ffffff;

}



.text-right {

    text-align: right;

}



.text-center {

    text-align: center;

}



/* GRID */

.col-10 {width: 10%}

.col-15 {width: 15%}

.col-20 {width: 20%}

.col-25 {width: 25%}

.col-30 {width: 30%}

.col-33 {width: 33.3333333%}

.col-35 {width: 35%}

.col-40 {width: 40%}

.col-42-5 {width: 42.5%}

.col-50 {width: 50%}

.col-60 {width: 60%}

.col-65 {width: 65%}

.col-70 {width: 70%}

.col-75 {width: 75%}

.col-80 {width: 80%}

.col-85 {width: 85%}

.col-90 {width: 90%}

.col-100 {width: 100%}



.col-10, .col-15, .col-20, .col-25, .col-30, .col-33, .col-35, .col-40, .col-42-5, .col-50, .col-60, .col-70, .col-75, .col-80, .col-85, .col-90, .col-100,

.col-30-m, .col-40-m, .col-60-m, .col-70-m  {

    float: left;

    padding-left: 15px;

    padding-right: 15px;

    -webkit-box-sizing: border-box;

    -moz-box-sizing: border-box;

    box-sizing: border-box

}



.row:after, .col:after {

    content: "";

    display: table;

    clear: both

}



.clear-p {

    padding: 0;

}



.clear-p-r {

    padding: 0 10px 0 0;

}



.clear-p-l {

    padding: 0 0 0 10px;

}



.clear-p-l.group-field label {

    left: 10px;

}



.p-20 {

    padding: 20px;

}



.container{

    width: 100%;

    max-width: 1100px;

    margin: 0 auto;

    position: relative;

}



/* CLEARFIX */



.wrapper{

    width: 100%;

    margin: 30px 0;

}



/* STEPS */

.steps-title {

    text-align: center;

    font-size: 26px;

    padding: 0 0 20px 0;

    position: relative;

}



.steps-title:before {

    content: "";

    background-color: #65b2df;

    opacity: 0.24;

    position: absolute;

    top: 0;

    bottom: 0;

    left: 0;

    right: 0;

    margin: -127px auto 0 auto;

    height: 200px;

    width: 1100px;

    border-radius: 50%;

}



.steps{

    list-style-type: none;

    margin: 0;

    padding: 0;

    text-align: center;

}





.steps li {

    display: inline-block;

    border: 2px solid #36A9E1;

    color: #36A9E1;

    border-radius: 50%;

    padding: 10px;

    width: 20px;

    height: 20px;

    font-size: 19px;

    line-height: 17px;

    position: relative;

    margin-right: 60px;

    -webkit-transition: all .5s ease;

    -moz-transition: all .5s ease;

    -o-transition: all .5s ease;

    transition: all .5s ease;

}



.steps li:last-child {

    margin-right: 0;

}



.steps li:before {

    content: "";

    position: absolute;

    height: 1px;

    width: 68px;

    background-color: #36A9E1;

    top: 50%;

    margin-top: -1px;

    left: 40px;

}



.steps li:last-child:before {

    content: none;

}



.steps li.is-active{

    background-color: #36A9E1;

    color: #ffffff;

}



/* FORM */



.form-container {

    position: relative;

    max-width: 600px;

    margin: 0 auto;

}



.bg-wrapper {

    height: 100%;

    overflow: hidden;

    position: relative;

    z-index: 9999;

}



.form-holder {

    position: relative;

    background-color: #ffffff;

    width: 140%;

    margin-left: -20%;

    height: 100%;

    border-radius: 50% 50% 0 0;

    overflow: hidden;

}



.form-holder:before {

    content: "";

    background: #ffffff;

    position: absolute;

    bottom: 0;

    width: 100%;

    height: 50%;

}



.form-wrapper {

    padding-top: 70px;

}



.form-wrapper.tall {

    height: auto;

}



.form-wrapper.tall .textarea {

    display: block;

}



.form-wrapper.tall .button-trt {

    background-color: #36A9E1;

}



.form-wrapper.tall .button-trt .plus {

    transform: rotate(45deg);

    -webkit-transition: all .5s ease;

    -moz-transition: all .5s ease;

    -o-transition: all .5s ease;

    transition: all .5s ease;

}



.form-wrapper.tall .button-trt .plus:after,

.form-wrapper.tall .button-trt .plus:before {

    background-color: #ffffff;

}



.form-wrapper .form-section{

    background-color: #ffffff;

    padding: 0px 20px 30px 20px;

    -webkit-box-sizing: border-box;

    -moz-box-sizing: border-box;

    box-sizing: border-box;

    opacity: 0;

    -webkit-transform: scale(1, 0);

    -ms-transform: scale(1, 0);

    -o-transform: scale(1, 0);

    transform: scale(1, 0);

    -webkit-transform-origin: top center;

    -moz-transform-origin: top center;

    -ms-transform-origin: top center;

    -o-transform-origin: top center;

    transform-origin: top center;

    -webkit-transition: all 0.5s ease-in-out;

    -o-transition: all 0.5s ease-in-out;

    transition: all 0.5s ease-in-out;

    text-align: center;

    position: absolute;

    width: 100%;

}



.form-wrapper .form-section.is-active{

    position: relative;

    opacity: 1;

    -webkit-transform: scale(1, 1);

    -ms-transform: scale(1, 1);

    -o-transform: scale(1, 1);

    transform: scale(1, 1);

}



.form-wrapper .button, .form-wrapper .button-trt, .form-wrapper .submit {

    background-color: transparent;

    font-family: 'Open Sans', sans-serif !important;

    display: inline-block;

    border: 2px solid #36A9E1;

    color: #36A9E1;

    border-radius: 50%;

    padding: 10px;

    width: 20px;

    height: 20px;

    font-size: 14px;

    line-height: 17px;

    position: relative;

    text-align: center;

    -webkit-transition: all .3s ease;

    -moz-transition: all .3s ease;

    -o-transition: all .3s ease;

    transition: all .3s ease;

}



.form-wrapper .submit {

    width: auto;

    height: auto;

    border-radius: 50px;

    padding: 12px 30px;

    margin-left: 25px;

}



.form-wrapper .submit:hover {

    background-color: #36A9E1;

    color: #ffffff;

}



.form-wrapper .button:hover, .form-wrapper .button-trt:hover, .form-wrapper .submit:hover {

    cursor: pointer;

    background-color: #36A9E1;

}



.form-wrapper .button:hover .arrow:before,

.form-wrapper .submit:hover .arrow:before {

    border-color: #fff;

}

.form-wrapper .button:hover .arrow:after,

.form-wrapper .button-trt:hover .plus:after,

.form-wrapper .button-trt:hover .plus:before,

.form-wrapper .submit:hover .arrow:after {

    background-color: #ffffff;

}



.btn-hint {

    font-size: 12px;

}



.form-wrapper .button-trt {

    width: 3px;

    height: 3px;

    left: 10px;

    position: relative;

    display: inline-block;

}



.form-wrapper .button-trt .plus {

    -webkit-transition: all .5s ease;

    -moz-transition: all .5s ease;

    -o-transition: all .5s ease;

    transition: all .5s ease;

}



.plus,

.arrow {

    position: relative;

}



.plus {

    position: absolute;

    width: 10px;

    height: 10px;

    top: 50%;

    left: 50%;

    margin-top: -5px;

    margin-left: -5px;

}



.plus:before,

.plus:after {

    content: "";

    position: absolute;

    background-color: #36A9E1;

    transition: transform 0.25s ease-out;

}



.plus:before {

    top: 0;

    left: 50%;

    width: 2px;

    height: 100%;

    margin-left: -1px;

}



.plus:after {

    top: 50%;

    left: 0;

    width: 100%;

    height: 2px;

    margin-top: -1px;

}



.plus:hover {

    cursor: pointer;

}



.close {

    position: absolute;

    top: 10px;

    right: 10px;

    width: 10px;

    height: 10px;

    z-index: 9;

    transform: rotate(45deg);

    -webkit-transform: rotate(45deg);

}



.close:hover {

    cursor: pointer;

    opacity: 0.8;

}



.close:before,

.close:after {

    content: "";

    position: absolute;

    background-color: #9a9a9a;

    transition: transform 0.25s ease-out;

}



.close:before {

    top: 0;

    left: 50%;

    width: 2px;

    height: 100%;

    margin-left: -1px;

}



.close:after {

    top: 50%;

    left: 0;

    width: 100%;

    height: 2px;

    margin-top: -1px;

}



.arrow:before {

    content: "";

    border: solid #3498db;

    border-width: 0 2px 2px 0;

    display: inline-block;

    padding: 3px;

    transform: rotate(-45deg);

    -webkit-transform: rotate(-45deg);

    -webkit-transition: all .3s ease;

    -moz-transition: all .3s ease;

    -o-transition: all .3s ease;

    transition: all .3s ease;

}



.arrow:after {

    content: "";

    background-color: #3498db;

    width: 10px;

    height: 2px;

    position: absolute;

    left: -3px;

    top: 50%;

    margin-top: 0;

    -webkit-transition: all .3s ease;

    -moz-transition: all .3s ease;

    -o-transition: all .3s ease;

    transition: all .3s ease;

}



.group-field {

    position: relative;

    margin-bottom: 30px;

}



.textarea {

    position: relative;

    opacity: 0;

    transition: .3s;

}





.textarea:before {

    content: "";

    background-color: #3498db;

    width: 55px;

    height: 2px;

    position: absolute;

    top: 0;

    left: 0;



}



.textarea:after {

    content: "";

    border-left: 6px solid transparent;

    border-right: 6px solid transparent;

    border-top: 6px solid #3498db;

    position: absolute;

    top: 0;

    left: 22px;

}



.textarea textarea {

    width: 100%;

    height: 0;

    overflow: none;

    resize: none;

    box-sizing: border-box;

    padding: 10px;

    border: 1px solid #757575;

    float: left;

    color: #666666;

    font-family: "Raleway";

    font-weight: 400;

    font-size: 14px;

    line-height: 20px;

}



.form-wrapper.tall .textarea {

    opacity: 1;

    margin-top: 20px;

    display: block;

    color: rgba(255,255,255,0.8);

}



.form-wrapper.tall .textarea textarea {

    height: 100px;

    padding: 10px;

    overflow: auto

}



.textarea textarea:focus {

    border: 2px solid #3498db;

    padding: 9px;

    outline: none;

    -webkit-box-shadow: none;

    -moz-box-shadow: none;

    box-shadow: none;

}



select {

    font-family: inherit;

    background-color: transparent;

    width: 100%;

    padding: 10px 0 11px;

    font-size: 16px;

    color: #666666;

    border: none;

    border-bottom: 1px solid #757575;

    -webkit-border-radius: 0;

    -moz-border-radius: 0;

    border-radius: 0;

}



select:focus {

    outline: none;

}



.selectfield select {

    -webkit-appearance: none;

    -moz-appearance: none;

    appearance: none;

}



.selectfield {

    position: relative;

}

.selectfield:after {

    content: '';

    position: absolute;

    top: 10px;

    right: 10px;

    padding: 3px;

    border: solid #666666;

    border-width: 0 2px 2px 0;

    pointer-events: none;

    transform: rotate(45deg);

}



.group-field input {

    width: 100%;

    color: #666666;

    font-family: "Raleway";

    font-weight: 400;

    background-color: transparent;

    font-size:18px;

    padding: 9px 0 10px 0;

    display:block;

    border:none;

    border-bottom:1px solid #757575;

    box-shadow: none;

    outline: none;

    -webkit-border-radius: 0;

    -moz-border-radius: 0;

    border-radius: 0;

}

.group-field input:focus { outline:none; }



input:invalid {

    box-shadow: none;

    outline: none

}



/* active state */

.group-field input:focus ~ label,

.group-field input:valid ~ label,

.group-field select:focus ~ label,

.group-field select:valid ~ label {

    top: 47px;

    font-size:10px;

    color:#36A9E1;

}



.group-field label               {

    color:#999;

    font-size:18px;

    font-weight:normal;

    position:absolute;

    pointer-events:none;

    left:0;

    top:5px;

    transition:0.2s ease all;

    -moz-transition:0.2s ease all;

    -webkit-transition:0.2s ease all;

}



/* BOTTOM BARS ================================= */

.bar { position:relative; display:block; width:100%; top:1px;}

.bar:before {

    content:'';

    height:2px;

    left: 0;

    width:0;

    bottom:1px;

    position:absolute;

    background:#36A9E1;

    transition:0.2s ease all;

    -moz-transition:0.2s ease all;

    -webkit-transition:0.2s ease all;

}



input:focus,

input:valid,

select:focus,

select:valid {

    border-color: transparent;

}



input:focus ~ .bar:before,

input:valid  ~ .bar:before,

select:focus ~ .bar:before,

select:valid  ~ .bar:before {

    width: 100%;

}



input.error ~ .bar:before {

    width: 100%;

    background: #FF5445;

}



input.error ~ label,

select.error ~ label {

    color: #FF5445;

}



input.error:valid ~ .bar:before,

select.error:valid ~ .bar:before {

  width: 0;

}



select:valid ~ .error-text,

select:focus ~ .error-text,

input:valid ~ .error-text,

input:focus ~ .error-text {

    padding-top: 30px;

}



select:valid ~ .error-text + .error-text,

select:focus ~ .error-text + .error-text,

input:valid ~ .error-text + .error-text,

input:focus ~ .error-text + .error-text {

    padding-top: 0

}





.error-text {

    text-align: left;

    font-size: 12px;

    line-height: 18px;

    color: #FF5445;

    padding-top: 5px;

    transition:0.2s ease all;

    -moz-transition:0.2s ease all;

    -webkit-transition:0.2s ease all;

}



.error-text a {

    color: #36A9E1;

    font-weight: bold;

}



.error-text a:hover {

    opacity: 0.8;

}



footer {

    position: relative;

}



footer:before {

    content: '';

    background-color: #e8e8e8;

    opacity: .24;

    position: absolute;

    top: 0;

    bottom: 0;

    left: 0;

    right: 0;

    margin: 0 auto;

    height: 702px;

    width: 100%;

    border-radius: 50% 50% 0 0;

}



.modal-shadow {

    display: none;

    position: fixed;

    top: 0;

    left: 0;

    right: 0;

    bottom: 0;

    background-color: rgba(255,255,255, .6);

    z-index: 9999;

}



.modal-shadow.show {

    display: block;

}



.modal {

    background-color: #ffffff;

    width: 90%;

    max-width: 545px;

    margin: 0 auto;

    top: 30%;

    position: relative;

    border: 1px solid #b8b8b8;

    overflow: hidden;

}



.modal .modal-title {

    color: #2f3030;

    text-align: center;

    font-size: 26px;

    padding: 20px 0 50px 0;

    position: relative;

}



.modal .modal-title:before {

    content: "";

    background-color: #65b2df;

    opacity: .24;

    position: absolute;

    top: 0;

    bottom: 0;

    left: -70px;

    right: -70px;

    margin: -68px auto 0 auto;

    height: 200px;

    border-radius: 50%;

}



.modal .btn-holder {

    padding: 5px 30px 30px;

    text-align: right;

}



.modal .modal-body {

    padding: 0 30px 30px;

}



.modal .modal-footer {



}



.copy {

    text-align: center;

    color: #666666;

    position: relative;

    padding: 30px 0;

}



/**/



.text-m {

    color: #02142a;

    font-size: 15px;

    line-height: 23px;

    position: relative;

    padding: 0 15px;

}



.text-m a {

    color: #02142a;

    font-weight: bold;

}



.text-m a:hover {

    color: #3498db;

}



.show-m {

    display: none;

}



.hide-m {

    display: block;

}



.desc-text .desc-btns {

    margin-top: 30px;

}



.desc-text {

    max-width: 600px;

    padding: 0 20px;

    margin: 0 auto;

    color: #02142a;

    box-sizing: border-box;

}



.desc-text a {

    color: #02142a;

    font-weight: bold;

    font-size: 15px;

    line-height: 21px;

}



.desc-text a:hover {

    color: #65b2df;

}


.btn-back {
    text-align: center;
    margin-top: 30px
}

.btn-back a {
    color: #36a9e1;
    text-decoration: none;
    transition: .25s;
    font-size: 18px
}

.btn-back img {
    max-width: 35px;
    margin-right: 8px;
    fill: #36a9e1;
}

a:hover {
    opacity: .8
}


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

    html, body {

        max-height: 100%;

        height: 100%;

    }

    .hero-text {

        background: #02142a;

    }



    .text-center-m {

        text-align: center;

    }



    canvas {

        display: none;

    }



    .form-holder {

        width: 100%;

        margin-left: 0;

        margin-right: 0;

    }



    .logo img {

        float: none;

        margin: 10px auto;

        display: block;

    }



    .hero-text h1 {

        margin: 0 0 50px;

        text-align: center;

    }



    .form-wrapper {

        padding: 50px 15px 0;

    }



    .form-wrapper .button {

        padding: 10px 40px;

        border-radius: 40px;

    }



    .form-holder,

    .steps-title:before,

    footer:before {

        border-radius: 0;

    }



    .col-90-m {

        width: 90%;

    }



    .col-100-m {

        width: 100%;

    }



    .show-m {

        display: block;

        z-index: 9;

        margin-bottom: 40px;

    }

    .textarea {

        margin-top: 30px

    }



    .textarea:after {

        left: 22px;

        right: auto;

    }



    .textarea:before {

        left: 0;

        right: auto;

    }



    .hide-m {

        display: none;

    }

    .clear-p-m {

        padding: 0;

    }

    .clear-p-l.group-field label {

        left: 0;

    }

    .modal .btn-holder {

    padding: 5px 10px 30px;

    text-align: center;

    }



}