body{
    font-family: Arial, Helvetica, sans-serif;
    display: flex;
    flex-direction: row;
    font-size: 20px;
    justify-content: center;
    align-items: center;
    margin: auto;
    height: 100vh;
    background-repeat: no-repeat;
    background-size: cover;
    background-image: url("Images/background.jpg");
    background-position: center;
}

form button{
    font-size: large;
    background-color: #64AA41;
    border-radius: 4px;
    border: none;
    padding: 0.5rem 2rem;
    font-size: 20px;
}

form button:hover{
    background-color: #8fbd77;
}

input, select, textarea{
    border-radius: 4px;
    border: 0.5px #b3b3b3 solid;
    padding: 4px;
    background-color: rgba(255, 255, 255, 0.76);
    font-family: Arial, Helvetica, sans-serif;
    font-size: 20px;
}

input[type="checkbox"]:checked, input[type="radio"]{
    accent-color: #64AA41;
}

span{
    font-weight: bold;
}

.ack-message, h1{
    margin-bottom: 2.5rem;
}

input:focus, textarea:focus{
    border: 0.5px #64AA41 solid;
    outline: none;
}

.order-headings{
    font-weight: bold;
}

main{
    margin: 0 1rem;
    padding: 1rem;
    background-color: rgb(236 225 225 / 80%);
    width: 90vw;
    max-width: 800px;
    border-radius: 10px;
}

form{
    display: grid;
    grid-template-columns: [labels] auto [controls] 1fr;
    grid-auto-flow: row;
    grid-gap: 1rem;
}

.delivery{
    grid-column: 1 / span 2;
}

form p {
    grid-column: labels;
    margin: 0;
}

.payment, .extras {
    grid-column: controls;
}

@media screen and (max-width: 890px){
    input, select, textarea, body{
        font-size: 15px;
    }
}

@media screen and (max-width: 480px){
    form{
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
    }
}

