h1 {
    padding-left: 0;
    padding-right: 0;
}

header {
    padding-left: 1rem;
    padding-right: 1rem;
}

header h2 {
    padding-left: 1rem;
}

body {
  min-height: 100vh;
  display: grid;
  grid-template-rows: auto 1fr auto;
}

header {
    margin-left: 1rem;
}

footer {
    font-size: 80%;
    margin-left: 1rem;
    padding-bottom: 1rem;
}

main {
    margin-left: 2rem;
}

table {
    border-spacing: 0;
    border-collapse: collapse;
}

table td,
table th {
    text-align: left;
    padding-right: 1rem;
}

table th {
    background-color: #dddddd;
}

table td {
    border-bottom: 1px solid #aaaaaa;
}

table.schedule {
    table-layout: fixed;
}

table.schedule tr th:nth-child(1),
table.schedule tr td:nth-child(1) {
    padding-left: 0.5rem;
}

table.schedule tr td:nth-child(1) {
    width: 20%;
}

table.schedule tr td:nth-child(2) {
    width: 60%;
}

table.schedule tr td:nth-child(3) {
    width: 10%;
}

table.schedule tr td:nth-child(4) {
    width: 10%;
    text-align: right;
    padding-right: 2rem;
}

