.container{
    display: grid;
    grid-template-columns: [labels] auto [controls] 1fr;
    grid-auto-flow: row;
    grid-gap: 10px;
}

.delivery{
    grid-column: 1 / span 2;
}

form p {
    grid-column: labels;
    margin: 0;
}

.payment, .extras {
    grid-column: controls;
}

@media screen and (max-width: 480px){
    .container{
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
    }
}

