.contacts {
    background-color: #fff;
}

.contacts .heading {
    text-align: left;
}

/* newsletter */
.contacts .newsletter {
    margin: 30px 0 0 0;
}

.contacts .newsletter .heading {
    text-align: center;
}

.contacts .newsletter .newsletter-form p {
    margin: 30px 0 0 0;
}

.contacts .newsletter .newsletter-form p a {
    color: #fff;
    font-weight: bold;
}

/* socials */
.contacts .contact-socials {
    margin: 30px 0 0 0;
}

.contacts .contact-socials h3 {
    color: #002664;
    font-size: 22px;
    font-weight: bold;
    margin: 0 0 15px 0;
}

.contacts .contact-socials ul {
    margin: 0;
    padding: 0;
}

.contacts .contact-socials ul li {
    display: inline-block;
    margin: 0 10px;
}

.contacts .contact-socials ul li a {
    color: #002664;
    font-size: 30px;
}

/* form */
.contact-form {
    padding: 30px;
    box-shadow: 0 -8px 16px 0 #0026640A;
    border-radius: 24px;
    background-color: #fff;
}

.contact-form h3 {
    color: #002664;
    text-align: center;
    margin: 0 0 20px 0;
}

.contact-form .form-control {
    border-radius: 8px;
}

.contact-form .form-control::-webkit-input-placeholder {
    color: #4A4A49;
}

.contact-form .form-control::-moz-placeholder {
    color: #4A4A49;
}

.contact-form .form-control:-ms-input-placeholder {
    color: #4A4A49;
}

.contact-form .form-control::-ms-input-placeholder {
    color: #4A4A49;
}

.contact-form .form-control::placeholder {
    color: #4A4A49;
}

.contact-form .form-group {
    margin: 0 0 10px 0;
}

.contact-form .btn {
    display: block;
    width: 100%;
}

.checkbox label a {
    text-decoration: underline;
}

/* faqs */
.faq-contacts.faq .faq-category {
    margin: 0;
}

.faq-contacts.faq .faq-category h3 {
    color: #002664;
    font-size: 22px;
    font-weight: bold;
    margin: 0 0 15px 0;
}

.faq-contacts .accordion .accordion-item {
    background-color: transparent;
    border: 0;
    border-bottom: 1px solid #ddd;
    border-radius: 0;
}

.faq-contacts .accordion .accordion-item:first-of-type {
    border-top: 1px solid #ddd;
}

.faq-contacts .faq-hint {
    margin: 20px 0 0 0;
}

.faq-contacts .faq-hint a {
    color: #002664;
    font-weight: bold;
}

.faq .question {
    color: #002664;
    padding: 10px 15px;
    position: relative;
    cursor: pointer;
    background-color: #fff;
    border-radius: 6px;
}

.faq .question.collapsed {
    box-shadow: none;
    background-color: transparent;
    border-radius: 0;
}

.faq .question.active {
    background: #fafafa;
}

.faq .accordion {
    margin: 0 0 50px 0;
}

.faq .accordion:last-of-type {
    margin: 0;
}

.faq .accordion .question:after {
    content: "-";
    font-size: 20px;
    line-height: 20px;
    font-weight: lighter;
    position: absolute;
    top: 50%;
    right: 15px;

    -webkit-transform: translate(0, -50%);

        -ms-transform: translate(0, -50%);

            transform: translate(0, -50%);
}

.faq .accordion .question.collapsed:after {
    content: "+";

    -webkit-transform: translate(0, -50%);

        -ms-transform: translate(0, -50%);

            transform: translate(0, -50%);
}

.faq .answer .answer-content {
    padding: 10px 15px 30px;
}

/* contact info */
.info-box {
    background-color: #EEF2F7;
    padding: 20px;
    border-radius: 12px;
    margin: 0 0 30px 0;
    text-align: center;
    height: 205px;
    border: 1px solid #fff;
    display: block;
}

.info-box:hover {
    border: 1px solid #002664;
}

.info-box img {
    margin: 0 0 15px 0;
    height: 50px;
}

.info-box .lab {
    color: #3A5876;
    font-size: 16px;
    font-weight: bold;
    margin: 0 0 10px 0;
}

.info-box .val {
    color: #002664;
    font-size: 22px;
    font-weight: bold;
}

.info-box .work-time {
    margin: 10px 0 0 0;
}


/* MOBILE */
@media only screen and (min-width: 1200px) and (max-width: 1600px) {
    .info-box .work-time {
        font-size: 13px;
    }
}

@media only screen and (min-width: 767px) and (max-width: 1024px) {
    .info-box {
        padding: 20px 10px;
    }

    .info-box .lab {
        font-size: 14px;
    }

    .info-box .val {
        font-size: 18px;
    }

    .info-box .work-time {
        margin: 5px 0 0;
    }

    .headings .heading:last-child {
        margin: 0 0 20px 0;
    }
}

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

    .info-box .work-time {
        margin: 0;
        font-size: 12px;
    }

    .info-box {
        height: auto;
    }
}

@media only screen and (min-width: 0px) and (max-width: 767px) {
    .info-box {
        height: auto;
    }

    .faq .faq-category {
        margin: 0 0 30px 0;
    }

    .contacts .contact-form {
        padding: 20px;
        margin: 0 0 30px;
    }

    .contacts .heading {
        text-align: center;
    }
}
