body {
    --stake-center-blue: rgb(0, 53, 142);
    --stake-center-contrast: rgb(255, 202, 113);
    margin: 0;
    font-family:
        "Segoe UI",
        "Segoe UI Web (West European)",
        "Segoe UI",
        -apple-system,
        BlinkMacSystemFont,
        "Roboto",
        "Helvetica Neue",
        sans-serif;
}
header {
    background-color: var(--stake-center-blue);
}
nav {
    container: nav / inline-size;
    margin: 0 auto 1rem auto;
    padding: 12px 12px 8px 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}
#logo {
    max-height: 64px;
    max-width: 192px;
    padding: 1px 12px;
}
nav ul {
    display: flex;
    justify-content: flex-end;
    padding: 0;
    margin: 0;
    flex-wrap: wrap;
    list-style: none;
    color: #fff;
}
nav ul.js-enabled {
    display: block;
    max-height: 0;
    flex-basis: 100%;
    transition: max-height 1s ease;
}
nav li {
    flex-basis: fit-content;
}
nav li a {
    display: block;
    padding: 2px 8px;
    text-decoration: none;
    color: rgba(255, 255, 255, 0.75);
}
nav li a:hover,
nav li a:active,
nav li a:focus {
    color: #fff;
}
#menu-button {
    display: inline-block;
    margin: 0.8rem;
    padding: 0.8rem;
    border: none;
    background-color: transparent;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
    background-size: 100%;
    vertical-align: middle;
    background-position: center;
    width: 1.5rem;
    height: 1.5rem;
}
#menu-button[aria-expanded="true"] + ul {
    display: block;
    max-height: calc(100vh);
}
@container nav (width > 450px) {
    #menu-button {
        display: none;
    }
    nav ul.js-enabled,
    #menu-button[aria-expanded="true"] + ul {
        display: flex;
        flex-basis: 50%;
        margin-top: 0;
        max-height: unset;
    }
}
main {
    margin: 0 auto;
    padding: 0 6px;
}
#heading {
    text-align: center;
}
.portal-link-container {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    flex-wrap: wrap;
    gap: 6px;
}
.portal-link-container a {
    flex: 1 1 0px;
    align-self: stretch;
    padding: 2em 1.2em;
    color: var(--stake-center-blue);
    font-weight: bold;
    font-size: 1.6em;
    text-decoration: none;
    text-align: center;
    flex-basis: 7em;

    border: 6px solid transparent;
    border-color: var(--stake-center-blue);
    transition:
        transform 0.2s,
        box-shadow 0.2s;
}

.portal-link-container a:hover,
.portal-link-container a:focus,
.portal-link-container a:active {
    border-image: linear-gradient(
        to bottom right,
        var(--stake-center-blue) 0%,
        var(--stake-center-contrast) 50%,
        var(--stake-center-blue) 100%
    );
    border-image-slice: 1;
    transform: scale(1.02);
    box-shadow: rgba(0, 0, 0, 0.3) 0px 0px 30px;
}

@media (min-height: 400px) {
    .portal-link-container {
        margin-top: 10vh;
    }
}

@media (min-width: 576px) {
    nav,
    main {
        max-width: 540px;
    }
}
@media (min-width: 768px) {
    nav,
    main {
        max-width: 720px;
    }
    .portal-link-container a {
        max-width: 300px;
    }
    nav ul.js-enabled,
    #menu-button[aria-expanded="true"] + ul {
        display: flex;
        flex-basis: unset;
    }
}
@media (min-width: 992px) {
    nav,
    main {
        max-width: 960px;
    }
}
@media (min-width: 1200px) {
    nav,
    main {
        max-width: 1140px;
    }
}
@media (min-width: 1400px) {
    nav,
    main {
        max-width: 1320px;
    }
}
