.apex42-hero-form {
    background-color: #4b4f55;
    color: #ffffff;
    display: grid;
    row-gap: 1rem;
    padding: 2rem;

    &, textarea {
        font-family: "Kievit Light", sans-serif;
    }

    input, textarea {
        resize: none;
        border-radius: 3px;
        color: var(--color-primary-black);
        font: revert;
        font-family: "Kievit Light", sans-serif;
    }

    input[type=text], input[type=email], input[type=tel] {
        height: 3rem;
    }

    & :is(input[type=text], input[type=email], input[type=tel], textarea) {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        border: none;
        margin-top: 1px;
        margin-bottom: 1px;
        padding: 5px;
    }

    /* Place errors above fields */

    .hs-form-field {
        display: grid;

        * {
            order: 2
        }

        .hs-error-msgs {
            order: 1;
        }
    }

    /* Style error messages */

    & .hs-form-field:has(.hs-error-msgs) .input * {
        background-color: hsl(49deg 100% 70%)
    }

    .hs-form-field .hs-error-msgs {
        display: none;
    }

    /* Submit button */

    input[type=submit] {
        background-color: var(--color-apex42-teal);
        width: 165px;
        padding: 1rem 2rem;
        color: #fff;
        border: none;
        font-family: "Kievit Bold", sans-serif;
        transition: background-color 0.25s ease-in, color 0.25s ease-in;

        &:hover {
            background-color: #fff;
            color: var(--color-apex42-teal);
        }
    }

    .legal-consent-container {
        font-size: 1.4rem;
    }

    .hs-recaptcha {
        order: 100;
    }

    .hs_error_rollup {
        ul, li {
            margin: 1rem 0;
            list-style-type: none;
            padding: 0;
            font-size: 1.8rem;
            font-weight: 700;
        }
    }
}