.hero {
    position: relative;
    &__bg {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        z-index: -1;
    }
    &__overlay {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba($black, 0.3);
        z-index: -1;
    }

    &__content {
        color: $white;
        padding: 24px 0;
        @include bp($bp-col10) {
            padding: 48px 0;
        }
        @include bp($bp-col12) {
            padding: 64px 0;
        }
        * {
            color: inherit;
        }
        .flex {
            display: flex;
            align-items: center;
            justify-content: space-between;
            flex-direction: column;
            @include bp($bp-col12) {
                flex-direction: row;
            }
        }

        .hero-content-inner {
            h1,
            h2,
            h3 {
                font-family: $avenir;
                font-weight: bold;
                font-size: 40px;
                max-width: 488px;
                padding: 0;
                margin-bottom: 24px;
                font-style: normal;
                text-transform: capitalize;

                @include bp($bp-col12) {
                    font-size: 75px;
                    line-height: 75px;
                }
            }
            p {
                font-size: 20px;
                max-width: 487px;
                line-height: normal;
                @include bp($bp-col12) {
                    font-size: 32px;
                }
            }
        }

        .hero-form {
            &__inner {
                background-color: #fbfbfc;
                max-width: 450px;
                padding: 24px;
                border-bottom: 6px solid #55a7d2;

                .confirmation-msg {
                    color: $blue;
                    font-size: 18px;
                    text-align: center;
                    > * {
                        font-size: inherit;
                    }
                }

                .form-title {
                    color: $blue-dark;
                    text-align: center;
                    font-weight: bold;
                    font-size: 24px;
                    line-height: normal;
                    margin-bottom: 24px;
                    @include bp($bp-col12) {
                        font-size: 32px;
                    }
                }

                .gform_submission_error {
                    display: none;
                }

                .gform_body {
                    background: none;
                    .validation_message {
                        display: none;
                    }
                    // Un-doing some global styles.
                    ul {
                        display: block;
                        .gfield {
                            width: auto;
                        }
                    }
                    .gfield {
                        width: auto;
                        padding-bottom: 12px;
                        &.gfield_error {
                            input {
                                border-color: red;
                            }
                        }
                    }
                    // Hiding labels.
                    .gfield_label,
                    .hidden_sub_label {
                        display: none;
                    }
                    fieldset {
                        padding: 0;
                        border: none;
                    }
                    .ginput_complex {
                        span:first-child input {
                            margin-bottom: 12px;
                        }
                        @include bp($bp-col12) {
                            display: flex;
                            flex-wrap: nowrap;
                            span:first-child input {
                                margin-bottom: 0;
                            }
                        }
                        > *:first-child {
                            padding-right: 8px;
                        }
                    }
                    .ginput_container {
                        input {
                            color: $black;
                            border: 1px solid #707070;
                            border-radius: 0;
                            &::placeholder {
                                color: $black;
                                font-size: 12px;
                                font-weight: bold;
                                font-family: $avenir;
                            }
                        }
                    }
                }
                .gform_footer {
                    margin-top: 0;
                    .gform_button {
                        @extend .btn-blue;
                        font-weight: bold;
                        font-size: 18px;
                        height: auto;
                        padding: 16px 60px;
                        border-radius: 8px;
                    }
                }
            }
        }
    }
}
