.contact-box .message-group {
    margin: 0 0 35px
}

.contact-box .message-text {
    color: #c41134;
    font-weight: 700
}

.contact-box .contact-no {
    margin: 0;
    color: #333;
    font-weight: 700;
    font-size: 30px
}

    .contact-box .contact-no a {
        color: inherit
    }

.contact-box .error-text {
    margin: 5px 0 0;
    color: #c41134
}

.contact-box p {
    line-height: 1.6
}

.contact-form {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
    margin: 0 0 20px;
    padding: 0;
    list-style: none;
    background: #e5e5e5
}

.contact-form-heading {
    margin: 40px 0 10px
}

.contact-form-group {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
    padding: 0;
    background: #e5e5e5;
    border-bottom: 1px solid #fff
}

    .contact-form-group fieldset {
        display: contents;
        border: 0
    }

.contact-form-label {
    margin: 0;
    padding: 10px 10px 0;
    font-weight: 700;
    text-align: left
}

.contact-form-control, .contact-form-label {
    display: block;
    width: 100%;
    box-sizing: border-box
}

.contact-form-control {
    padding: 10px
}

.contact-form-grid {
    margin: 0 -5px
}

.acms-entry .contact-form-col, .contact-form-col {
    margin: 0 0 10px;
    padding: 0 5px
}

    .acms-entry .contact-form-col:last-child, .contact-form-col:last-child {
        margin: 0
    }

@media screen and (min-width:768px) {
    .contact-form {
        width: 100%
    }

    .contact-form-label {
        padding: 15px 15px 5px;
        vertical-align: top
    }

    .contact-form-control {
        padding: 5px 15px 15px
    }

    .contact-form-col {
        margin: 0
    }
}

.contact-box .mail-step {
    margin: 0 0 25px;
    padding: 0 10px;
    background: #e5e5e5;
    counter-reset: a
}

.contact-box .mail-step-item {
    float: left;
    margin: 0 5px;
    padding: 14px 0 10px;
    color: #999;
    font-weight: 700;
    list-style: none;
    border-bottom: 4px solid transparent;
    font-size: 14px
}

    .contact-box .mail-step-item:before {
        content: counter(a) ".";
        counter-increment: a
    }

.contact-box .mail-step-item-current {
    color: #333;
    border-bottom: 4px solid #333
}

@media screen and (min-width:768px) {
    .contact-box .mail-step-item {
        margin: 0 10px;
        padding: 18px 0 14px;
        font-size: 16px
    }
}

.form-btn-box {
    margin: 0 10px 50px;
    text-align: center
}

.form-btn {
    display: inline-block
}

@media screen and (min-width:768px) {
    .form-btn-send {
        width: 100%;
        max-width: 360px
    }
}

.label-required {
    margin: 0 5px;
    padding: 2px 8px;
    color: #fff;
    background: #c41134;
    border-radius: 3px;
    font-size: 12px
}

@media screen and (min-width:768px) {
    .label-required {
        margin: 0 10px
    }
}

.contact-box select[required]:required {
    border: 1px solid #c49511
}

.contact-box select.focused:invalid {
    border: 1px solid #c41134
}

.contact-box select[required]:valid {
    border: 1px solid #a7a7aa
}

.contact-box input[required]:required, .contact-box textarea[required]:required {
    background: #fffdeb
}

.contact-box input.focused:invalid, .contact-box textarea.focused:invalid {
    background: #ffebee
}

.contact-box input[required]:valid, .contact-box textarea[required]:valid {
    background: #fff
}

.contact-box input[type=date], .contact-box input[type=datetime-local], .contact-box input[type=datetime], .contact-box input[type=email], .contact-box input[type=month], .contact-box input[type=number], .contact-box input[type=password], .contact-box input[type=search], .contact-box input[type=tel], .contact-box input[type=text], .contact-box input[type=time], .contact-box input[type=url], .contact-box input[type=week] {
    font-size: 16px;
    box-sizing: border-box;
    padding: 0 5px
}

.contact-box textarea {
    font-size: 16px;
    padding: 5px 5px 4px
}

.contact-box select {
    background-color: #f7f7f7;
    min-height: 30px;
    padding-top: 4px;
    padding-bottom: 4px;
    font-size: 16px;
    vertical-align: top
}

@media screen and (min-width:768px) {
    .contact-box input[type=date], .contact-box input[type=datetime-local], .contact-box input[type=datetime], .contact-box input[type=email], .contact-box input[type=month], .contact-box input[type=number], .contact-box input[type=password], .contact-box input[type=search], .contact-box input[type=tel], .contact-box input[type=text], .contact-box input[type=time], .contact-box input[type=url], .contact-box input[type=week], .contact-box textarea {
        padding: 5px 8px
    }

    .contact-box select {
        padding-left: 8px;
        min-height: 40px
    }
}

.btn-attention-block-large {
    border: 0;
    line-height: 45px;
    width: 180px;
    text-align: center;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    color: #fff;
    font-size: 15px;
    background: #1b7bb7;
}

.btn-large {
    border: 0;
    line-height: 45px;
    width: 80px;
    text-align: center;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    font-size: 15px;
    background: #e5e5e5;
}
