.ez-field-edit--ezgmaplocation {
    .ez-field-edit__error {
        @include error-under-label();
    }

    .ez-data-source {
        display: grid;
        grid-template-columns: calculateRem(520px) calculateRem(16px) calculateRem(220px);
        grid-template-rows: repeat(5, minmax(50, auto));
        grid-template-areas:
            'addr . .'
            'map . side1'
            'map . side2'
            'map . side3';

        &__map {
            grid-area: map;
            z-index: 0;
        }

        &__field--address {
            grid-area: addr;

            .ez-data-source__label {
                margin-top: 0;
            }

            .ez-data-source__input-wrapper {
                padding-bottom: calculateRem(8px);
                display: flex;
            }

            .ez-data-source__input {
                margin-bottom: 0;
            }

            .ez-field-edit__error {
                margin-bottom: calculateRem(10px);
            }
        }

        &__locate-me {
            grid-area: side1;

            .form-control-label {
                &:after {
                    content: ': ';
                }
            }

            .ez-btn {
                margin-bottom: calculateRem(32px);
            }
        }

        &__field--latitude {
            @include input-invalid();

            grid-area: side2;
            margin-bottom: calculateRem(15px);
        }

        &__field--longitude {
            @include input-invalid();

            grid-area: side3;
            margin-bottom: calculateRem(70px);
        }
    }

    .btn--search-by-address {
        margin-left: calculateRem(8px);
    }
}
