header h1 {
    text-align: center;
}

.verkoopgrid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: fit-content fit-content; 
    width: 800px;
    background-color: azure;
    margin: auto;
}

fieldset.info {
    grid-row: 1 / 3;
    grid-column: 1 / 2;
    display: grid;
    grid-template-rows: auto auto;
}

fieldset.info .samenvatting {
    height: fit-content;
}

fieldset.info img {
    margin: auto;
}

fieldset.ticket {
    grid-row: 1 / 2;
    grid-column: 2 / 3;
    display: grid;
    grid-template-columns: 2fr 2fr 3fr;
    grid-template-rows: repeat(5, fit-content);
}

#gsm {
    grid-column: 2 / 4;
}

#email {
    grid-column: 2 / 4;
}

#tickets {
    grid-column: 2 / 4;
}

div.speeldata {
    display: grid;
    grid-template-rows: repeat(5, 1fr);
}

div.rij {
    min-height: 20px;
}

div.rij.podium {
    display: grid;
    grid-template-columns: 1fr 500px 1fr;
}

header.podium {
    background-color: darkslategray;
    grid-column: 2 / 3;
    height: 100px;
    text-align: center;
    color: azure;
}

div.rij.A {
    display: grid;
    grid-template-columns: 1fr repeat(18, 35px) 1fr;
}

div.rij.B {
    display: grid;
    grid-template-columns: 1fr repeat(19, 35px) 1fr;
}

div.rij.C {
    display: grid;
    grid-template-columns: 1fr repeat(20, 35px) 1fr;
}

div.rij.O {
    display: grid;
    grid-template-columns: 1fr repeat(17, 35px) 1fr;
}

div.rij.P {
    display: grid;
    grid-template-columns: 1fr repeat(13, 35px) 1fr;
}

.stoel {
    border-radius: 20%;
    text-align: center;
}

.stoel.vrij {
    background-color: greenyellow;
}

.stoel.bezet {
    background-color: maroon;
    color: azure;
}

.stoel.sel {
    background-color: navy;
    color: azure;
}

.reservatie {
    width: 100%;
    background-color: azure;
    color: black;
}

.speeldata {
    grid-column: 2 / 4;
}

fieldset.kaarten {
    display: none;
    grid-template-columns: 100px 400px;
    grid-template-rows: repeat(6, auto);
    margin: auto;
    width: 540px;
    padding: auto;
}

fieldset.kaarten p.label {
    grid-column: 1 / 2;
}

fieldset.kaarten p.ticket_info {
    grid-column: 2 / 3;
}

fieldset.kaarten p.ticket_betaling {
    grid-column: 1 / 3;
}
@media only screen and (max-width: 800px) {
    .verkoopgrid {
        width: 90%;
        grid-template-columns: 1fr;
        grid-template-rows: repeat(3, auto);
    }

    fieldset.info {
        grid-row: 1;
        grid-column: 1;
    }

    fieldset.ticket {
        grid-row: 2;
        grid-column: 1;
    }

    fieldset.plaatsing {
        grid-row: 3;
        grid-column: 1;
    }

    div.rij.A {
        display: grid;
        grid-template-columns: 1fr repeat(18, 30px) 1fr;
    }
    
    div.rij.B {
        display: grid;
        grid-template-columns: 1fr repeat(19, 30px) 1fr;
    }
    
    div.rij.C {
        display: grid;
        grid-template-columns: 1fr repeat(20, 30px) 1fr;
    }
    
    div.rij.O {
        display: grid;
        grid-template-columns: 1fr repeat(17, 30px) 1fr;
    }
    
    div.rij.P {
        display: grid;
        grid-template-columns: 1fr repeat(13, 30px) 1fr;
    }

    .stoel {
        font-size: .8em;
    }
    
}

@media only screen and (max-width: 650px) {
    .verkoopgrid {
        width: 90%;
        grid-template-columns: 1fr;
        grid-template-rows: repeat(3, auto);
    }

    fieldset.info {
        grid-row: 1 / 2;
        grid-column: 1;
    }

    fieldset.ticket {
        grid-row: 2 / 3;
        grid-column: 1;
    }

    fieldset.plaatsing {
        grid-row: 3 / 4;
        grid-column: 1;
    }

    div.rij.A {
        display: grid;
        grid-template-columns: 1fr repeat(18, 25px) 1fr;
    }
    
    div.rij.B {
        display: grid;
        grid-template-columns: 1fr repeat(19, 25px) 1fr;
    }
    
    div.rij.C {
        display: grid;
        grid-template-columns: 1fr repeat(20, 25px) 1fr;
    }
    
    div.rij.O {
        display: grid;
        grid-template-columns: 1fr repeat(17, 25px) 1fr;
    }
    
    div.rij.P {
        display: grid;
        grid-template-columns: 1fr repeat(13, 25px) 1fr;
    }

    .stoel {
        font-size: .55em;
    }

}