body main {
    padding: 226px 0px 98px;
}
@media only screen and (max-width: 960px)  { /**#960px*/
    body main {
        padding: 0px 0px 40px;
    }
}

main .content_container {
    max-width: 516px;
}

main h1 {
    display: block;
    float: left;
    margin-left: -10%;
    color: #0E497A ;
    font-family: 'Font1';
    font-size: 36px;
    text-align: center;
    letter-spacing: -0.5px;
    line-height: 44px;
    width: 120%;
}

main .error_message {
    display: block;
    float: left;
    margin-top: 10px;
    margin-bottom: -30px;
    color: #d30d0d;
    font-family: 'Font1';
    font-size: 16px;
    text-align: center;
    line-height: 20px;
    width: 100%;
}

main .form_selection {
    display: block;
    float: left;
    margin-top: 50px;
    text-align: center;
    word-spacing: -5px;
    padding-bottom: 20px;
    width: 100%;
}
@media only screen and (max-width: 960px)  { /**#960px*/
    main .form_selection {
        padding-bottom:0px;
    }
}

.form_selection a {
    display: inline-block;
    position: relative;
    border: 1px solid #0E497A ;
    color: #0E497A ;
    font-family: 'Font1';
    text-decoration: none;
    word-spacing: 0px;
    line-height: 21px;
    padding: 85px 10px 15px;
    width: 144px;
    -webkit-transition: background-color 250ms, color 250ms;
    transition: background-color 250ms, color 250ms;
}
.form_selection a.selected,
.form_selection a:hover, .form_selection a:active {
    background-color: #0E497A ;
    color: #fff;
}
.form_selection a + a {
    margin-left: 22px;
}

.form_selection a.query:before,
.form_selection a.suggestion:before,
.form_selection a.issue:before {
    display: block;
    position: absolute;
    top: 15px;
    left: 50%;
    margin-left: -30px;
    background-image: url(../_img/sprite-contact.png?v=105);
    background-repeat: no-repeat;
    content: '';
    width: 60px;
    height: 60px;
}
.form_selection a.query:before {
    background-position: center 5px;
}
.form_selection a.suggestion:before {
    background-position: center -126px;
}
.form_selection a.issue:before {
    background-position: center -256px;
}
.form_selection a.query.selected:before,
.form_selection a.query:hover:before, .form_selection a.query:active:before {
    background-position: center -61px;
}
.form_selection a.suggestion.selected:before,
.form_selection a.suggestion:hover:before, .form_selection a.suggestion:active:before {
    background-position: center -192px;
}
.form_selection a.issue.selected:before,
.form_selection a.issue:hover:before, .form_selection a.issue:active:before {
    background-position: center -322px;
}

main .half_form {
    display: none;
}

main .subtitle {
    display: block;
    float: left;
    margin-top: 60px;
    color: #0E497A ;
    font-family: 'Font1';
    font-size: 25px;
    width: 100%;
}

main .row {
    display: block;
    float: left;
    margin-top: 16px;
    width: 100%;
}
main .row label,
main label.row {
    color: #666;
    font-size: 16px;
}
main .row label {
    display: block;
    float: left;
    width: 100%;
}
main label.row.file {
    margin-top: 10px;
}
main label.question {
    position: relative;
}

main label.half {
    width: 48%;
}
main label.half + label.half {
    margin-left: 4%;
}

main label .detail {
    color: inherit;
    font-family: inherit;
    font-size: 14px;
}

label.row.file span {
    display: inline-block;
    background-image: url(../_img/sprite-contact.png?v=105);
    background-repeat: no-repeat;
    background-position: -18px -392px;
    color: #1a78a6;
    font-size: 16px;
    text-decoration: underline;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: bottom;
    padding-left: 35px;
    max-width: 135px;
    overflow: hidden;
    cursor: pointer;
}
label.row.file span:hover, label.row.file span:active {
    text-decoration: none;
}

label.row.file input {
    display: block;
    float: left;
    margin-top: -21px;
    opacity: 0.01;
}

main input[type="text"],
main input[type="email"],
main textarea {
    display: block;
    float: left;
    border: 1px solid #DAD8CA;
    border-radius: 5px;
    font-size: 16px;
    line-height: 20px;
    padding: 10px 12px;
    width: 100%;
}
main textarea {
    height: 116px;
    resize: none;
    color: #666666;
}
main .question input[type="text"] {
    padding-right: 38px;
}

main .question .tooltip {
    display: block;
    position: absolute;
    top: 30px;
    right: 8px;
    border-radius: 50%;
    background-color: #0E497A ;
    color: #fff;
    font-size: 16px;
    text-align: center;
    text-decoration: none;
    line-height: 24px;
    width: 24px;
}

main .question .tooltip span {
    display: block;
    position: absolute;
    top: -15px;
    left: 50px;
    background-color: #FBFAF9;
    color: #595853;
    font-size: 14px;
    text-align: left;
    line-height: 18px;
    width: 210px;
    height: 0px;
    opacity: 0;
    overflow: hidden;
}
main .question .tooltip:hover span, main .question .tooltip:active span {
    padding: 10px;
    height: auto;
    opacity: 1;
    overflow: visible;
    transition: opacity 250ms;
}

main .question .tooltip span:before {
    display: block;
    position: absolute;
    top: 20px;
    left: -9px;
    border-top: 6px solid transparent;
    border-right: 9px solid #FBFAF9;
    border-bottom: 6px solid transparent;
    content: '';
    width: 0px;
    height: 0px;
}

main .check {
    display: block;
    float: left;
    margin-top: 41px;
    text-align: center;
    width: 100%;
}

.check label {
    display: inline;
    color: #666;
    font-size: 16px;
}

.check label input {
    margin-right: -17px;
    opacity: 0.01;
}

.check label .box {
    display: inline-block;
    margin-right: 10px;
    margin-bottom: -13px;
    border: 1px solid #DAD8CA;
    border-radius: 4px;
    background-image: url(../_img/checkbox.png?v=105);
    background-repeat: no-repeat;
    background-position: center 100px;
    width: 40px;
    height: 40px;
}
.check label input:checked + .box {
    background-position: center center;
}

.check a {
    display: inline;
    color: #1a78a6;
    font-size: 16px;
}
.check a:hover, .check a:active {
    text-decoration: none;
}

main .button_container {
    display: block;
    margin: auto;
    width: 312px;
}
@media only screen and (max-width: 960px)  { /**#960px*/
    main .button_container {
        width:100%
    }
}

.button_container .button,
.button_container .loading {
    margin-top: 64px;
}

.button_container .button:after {
    display: inline-block;
    margin-left: 16px;
    margin-bottom: 4px;
    background-image: url("../_img/next-arrow.png");
    background-repeat: no-repeat;
    background-position: left top;
    vertical-align: middle;
    content: '';
    width: 8px;
    height: 7px;
}

.background_popup .popup {
    padding: 56px 23px 60px 54px;
    height: 394px;
}

.popup .title_popup {
    display: block;
    float: left;
    color: #0E497A ;
    font-family: 'Font1';
    font-size: 36px;
    width: 100%;
}

.popup .legal_container {
    display: block;
    float: left;
    padding-right: 32px;
    width: 100%;
    height: 238px;
    overflow: auto;
}

@media only screen and (max-width: 960px)  { /**#960px*/
    main h1{
        width:100%;
        margin-left:0px;
        font-size: 32px;
        line-height: 40px;
    }
    .content_container .form_selection a{
        width:100%;
        margin-bottom: 20px;
        padding:25px 15px 25px 85px;
    }
    
    .content_container .form_selection a + a{
        margin-left:0px;
    }
    .form_selection a.query:before, .form_selection a.suggestion:before, .form_selection a.issue:before{
        left:45px;
        top:5px;
    }
    main .content{
        width:100%;
    }
    main .content_container{
        width:100%;
        padding:50px 20px 0px;
        margin: 0 auto;
        float: none;
    }
    main .subtitle{
        margin-top:0px;
    }
    main #second_part .subtitle{
        margin-top:40px;
    }
    .content .steps{
    margin-top:30px;    
    }
    .content .form_container{
        margin-top:20px;
    }
    .question_list .question{
        line-height:22px;
        padding:10px 40px 10px 20px;
    }
    .content .form_container.tall{
        margin-top: 200px;
        padding-bottom: 100px;
    }
}
.ask_us{
    display:none;
}
@media only screen and (max-width: 960px)  { /**#960px*/
    .ask_us{
        display:block;
        float:left;
        width:100%;
        text-align:center;
        margin-top: 30px;
    }
    .ask_us span{
        width:100%;
        display:block;
        float:left;
    }
    .ask_us span a{
        color: white;
        margin: 0 auto;
        background-color: gray;
        padding: 10px;
        width: 100%;
        max-width: 160px;
        display: block;
        text-align: center;
        text-decoration: none;
        margin-top: 10px;
        border-radius: 30px;
    }
}

form .recaptcha {
    display: block;
    float: none;
    margin: auto;
    width: 302px;
    height: 76px;
}

@media only screen and (max-width: 340px)  {
    form .recaptcha{
        position: relative;
        margin-left: 0px;
        left: -7px;
    }
}

form .recaptcha .g-recaptcha{
    display: block;
    float: left;
    width: 100%;
    margin-top: 30px;
}