form {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 10px;
    justify-content: center;
    width: 500px;
    margin: auto;
}

form>label {
    text-align: right;
}

form>button, form>.stretch {
    grid-column: 1 / -1;
    text-align: center;
}

form .grid-2 {
    display: grid;
    grid-template-columns: 25px auto;
    gap: 10px 0;
}

form input[type=radio] {
    width: 16px;
}

form .big {
    height: 200px;
}

form .required::after {
    content: ' *';
    color: red;
}

.help-block {
    color: white;
    background: tomato;
    padding: 5px;
    border-radius: 5px;
    display: inline-block;
}

@media (max-width:765px) {
    form {
        display: flex;
        flex-flow: column;
        width: 100%;
        align-items: stretch;
    }

    form label {
        text-align: center;
    }
}
