ol, p, ul {
    margin-top: 0;
}
li {
    list-style-type: none;
}
img {
    max-width: 100%;
}
svg:not(:root) {
    overflow: hidden;
}
h2, h3 {
    text-align: center;
    font-size: 150%;
}
ol {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    gap: 1vw;
    width: 94vw;
    margin: 5vh auto 1.5vh;
    max-width: 48rem;
    padding: 0;
}
ol li {
    text-align: center;
    border: 1px solid #fff;
}
ol li a {
    display: block;
    padding: 2vh 0;
}
.times a {
    border: 1px solid #fff;
    padding: 2vh 3vw;
    display: block;
}
.times a:hover, ol li a:hover {
    background: #fff;
    color: #974e9f;
}
.page-footer {
    text-align: center;
    margin-top: 6.5vh;
}
.times {
    display: flex;
    justify-content: center;
    margin-bottom: 5vh;
}
p {
    width: 94vw;
    margin: 0 auto 1.5vh;
    max-width: 48rem;
    line-height: 2.0;
    font-size: 125%;
}
section {
    margin-bottom: 3.5vh;
}
@media only screen and (max-width: 62em) {
    .page-footer p br {
        display: none;
    }
}
@media only screen and (min-width: 62em) {
    section {
        margin-bottom: 5vh;
    }
    .uxtimes p {
        text-align: center;
    }
    h1 svg {
        height: 7rem;
    }
}
.page-footer {
    padding-top: 1.5rem;
    padding-bottom: 2.25rem;
}
.page-footer small {
    text-transform: uppercase;
}
@media only screen and (min-width: 48em) {
    html {
        font-size: 87.5%;
    }
    .sp-only {
        display: none;
    }
}
@media only screen and (min-width: 62em) {
    html {
        font-size: 100%;
    }
}
.page-footer p {
    font-size: .75rem;
    line-height: 1.5;
}
.wrap, body {
    overflow-x: hidden;
}
h4 {
    width: 94vw;
    margin: 0 auto .5vh;
    max-width: 48rem;
    line-height: 2.0;
    font-size: 138%;
}