/* All styles NOT in @media queries are for 320px. Everything else overrides them. */

.widget-wide-contact-form {
    width: 100vw;
    position: relative;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#446783+48,446783+48,5d89a2+52,5d89a2+52 */
    background: #446783; /* Old browsers */
    background: -moz-linear-gradient(left, #446783 48%, #446783 48%, #5d89a2 52%, #5d89a2 52%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #446783 48%, #446783 48%, #5d89a2 52%, #5d89a2 52%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #446783 48%, #446783 48%, #5d89a2 52%, #5d89a2 52%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#446783', endColorstr='#5d89a2', GradientType=1); /* IE6-9 */
}

.widget-wide-contact-form:before {
    content: ' ';
    display: block;
    background : url('../../img/bg-wide-contact-form.jpg') no-repeat top right;
    background-size: 500px;
    height: 219px;
    width: 100vw;
    max-width: 500px;
    max-height: 219px;
    margin : 0 auto -80px;}

.widget-wide-contact-form:after {
    content: ' ';
    display: block;
    background-size: 100%;
    height: 219px;
    width: 100vw;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+0,ffffff+100&0+60,1+100 */
    background: -moz-linear-gradient(top,  rgba(255,255,255,0) 0%, rgba(255,255,255,0) 90%, rgba(255,255,255,1) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  rgba(255,255,255,0) 0%,rgba(255,255,255,0) 90%,rgba(255,255,255,1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,0) 90%,rgba(255,255,255,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */
    position: absolute;
    top: 0;
    left: 0;
    }

.widget-wide-contact-form .widget-inner {
    width: 100%;
    position: relative;
    height: auto;
    margin: 0 auto;
    padding: 21px 20px 25px;
    z-index: 1;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+0,ffffff+100&0.8+0,1+10 */
    background: -moz-linear-gradient(top,  rgba(255,255,255,0.8) 0%, rgba(255,255,255,1) 10%, rgba(255,255,255,1) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  rgba(255,255,255,0.8) 0%,rgba(255,255,255,1) 10%,rgba(255,255,255,1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  rgba(255,255,255,0.8) 0%,rgba(255,255,255,1) 10%,rgba(255,255,255,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ccffffff', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */
}

.widget-wide-contact-form .widget-inner:after {
    font-style: italic;
    font-weight: normal;
    font-size: 15px;
    line-height: 150%;
    align-items: center;
    color: #524A43;
    content: 'Fields marked * are required';
    position: absolute;
    bottom: -10px;
    right: calc((100% - 130px)/2); }

.widget-wide-contact-form .widget-inner h5 {
    font-style: normal;
    font-weight: normal;
    font-size: 8.29vw;
    line-height: 120%;
    text-align: center;
    color: #336DB5; }

.widget-wide-contact-form .widget-inner > p {
    text-align: center; }

.widget-wide-contact-form .more-info {
    font-style: italic;
    font-weight: normal;
    font-size: 24px;
    line-height: 150%;
    color: #524A43;
    display: inline-block;
    margin: 0 0 10px;
    width: 100%; }

.widget-wide-contact-form .ratings img { margin: 0 10px; }

.widget-wide-contact-form .ratings {
    font-family    : 'ProximaNovaMedium', Arial, sans-serif;
    font-style: normal;
    font-weight: 500;
    font-size: 12px;
    line-height: 150%;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #342D26;
    max-width: 131px;
    display: inline-block; }

.widget-wide-contact-form label {
    display:block;
    font-style: normal;
    font-weight: normal;
    font-size: 16px;
    line-height: 100%;
    color: #524A43;
    margin-bottom: 3px; }

.widget-wide-contact-form .row.text {
    width: 100%;
    display: block;
    margin-bottom: 25px; }

.widget-wide-contact-form .row input[type="text"],
.widget-wide-contact-form .row input[type="email"],
.widget-wide-contact-form .row input[type="tel"],
.widget-wide-contact-form .row textarea { width: 100%; }

.widget-wide-contact-form .row.textarea {
    display: block;
    width: 100%;
    margin-bottom: 30px; }

.widget-wide-contact-form .row.submit { text-align:center; }

.widget-wide-contact-form span.wpcf7-not-valid-tip {
    color: #f00;
    font-size: 14px;
    font-weight: normal;
    display: block;
    position: absolute;
    top: -33px;
    right: 0; }

.widget-wide-contact-form div.wpcf7-validation-errors {
    display: block;
    margin: 8px auto;
    border: 0;
    position: absolute;
    width: calc(100% - 60px);
    font-size: 14px;
    text-align: center;
    background: #f4c60c;
    z-index: 1; }


@media (min-width:410px) {

    .widget-wide-contact-form .widget-inner {
        padding: 22px 30px 37px; }

    .widget-wide-contact-form .widget-inner h5 {
        font-size: 33px; }

    .widget-wide-contact-form .ratings {
        max-width: 100%; }

} /* (min-width:400px) */


@media (min-width:500px) {

    .widget-wide-contact-form .widget-inner {
        padding: 22px 39px 37px; }

    .widget-wide-contact-form .widget-inner h5 {
        font-style: normal;
        font-weight: normal;
        font-size: 43px; }

    .widget-wide-contact-form .more-info {
        width: auto;
        margin-right: 20px; }

    .widget-wide-contact-form .row.text {
        width: calc((100% - 30px)/2);
        float: left;
        margin-bottom: 25px; }

    .widget-wide-contact-form .row.text:nth-of-type(2),
    .widget-wide-contact-form .row.text:nth-of-type(4){ float: right; }

    .widget-wide-contact-form .row.textarea {
        float: left; }

    .widget-wide-contact-form .ratings {
        font-size: 14px; }

} /* (min-width:500px) */



@media (min-width:850px) {

    .widget-wide-contact-form {
        height: 630px; }

    .widget-wide-contact-form:before {
        height: 630px;
        width: 1440px;
        position: absolute;
        top: 0;
        background-size: 100%;
        background-position: top center;
        max-height: unset;
        max-width: unset;
        right: -170px; }

    .widget-wide-contact-form:after {
        display: none; }

    .widget-wide-contact-form .widget-inner {
        margin: 0;
        position: absolute;
        top: 41px;
        left: 30px;
        padding: 22px 30px 37px;
        width: calc(100% - 309px);
        background: rgba(255, 255, 255, 0.9); }

    .widget-wide-contact-form .widget-inner:after {
        bottom: 4px; }

    .widget-wide-contact-form .widget-inner h5 {
        font-size: 3.8855555vw; }

} /* (min-width:850px) */


@media (min-width:1000px) {

    .widget-wide-contact-form .widget-inner:after {
        right: 34px;
        bottom: 44px; }

} /* (min-width:1000px) */

@media (min-width:1100px) {

    .widget-wide-contact-form:before {
        right: unset;
        left: calc((100% - 1440px)/2); }

    .widget-wide-contact-form .widget-inner {
        width: 791px;
        height: 543px; }

    .widget-wide-contact-form .widget-inner h5 {
        font-size: 43px; }

} /* (min-width:1100px) */



@media (min-width:1200px) {

    .widget-wide-contact-form .widget-inner {
        margin: 0 auto;
        position: relative;
        top: 41px;
        left: unset;
        right: 180px; }

} /* (min-width:1200px) */






