/* version: 1.0.0 */

:root {
    --homepage-heading-height: 48px;
    --homepage-links-block-height: 454px;
    --homepage-link-button-height: 80px;
    --homepage-link-button-width: 172px;
    --homepage-current-next-block-height: 163px;
    --homepage-current-next-block-slot-height: 30px;
    --homepage-current-next-block-cover-art-height: 120px;
    --homepage-current-next-block-cover-art-width: 90px;
    --homepage-feed-block-height: 701px;
}

div#homepage-header-icon img {
    height: var(--page-header-height);
}

div#homepage-header-icon {
    /*margin: .1em 0 -.1em 0;*/
}

div#homepage-header-text {
    line-height: var(--page-header-height);
    font-family: "Alumni Sans", "Open Sans", "Segoe UI", "Helvetica", sans-serif;
    font-weight: 600;
    text-align: center;
}

div#homepage-header-text {
    padding: 0 .3em;
    margin: -.04em 0 .04em 0;
}

div#homepage-header {
    cursor: pointer;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: safe center;
    justify-content: safe center;
    align-items: safe center;
    min-height: var(--page-header-height);
    max-height: var(--page-header-height);
    padding: 0;
    margin: .133em 0;
    border: 1px solid var(--primary-dark-color-bright);
    border-radius: 9em 3em 3em 9em;
    color: var(--primary-light-color-midtone-contrast);
    background-color: var(--primary-dark-color-midtone-contrast);
    box-shadow: inset 0 0 .2em .02em var(--overlay-light-color-muted);
    font-size: 4.2em;
}

div#homepage-links-block-heading,
div#homepage-current-next-block-heading,
div#homepage-feed-block-heading {
    width: 100%;
    min-height: var(--homepage-heading-height);
    max-height: var(--homepage-heading-height);
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: safe center;
    justify-content: safe center;
    align-items: safe center;
    padding: .133em 0 .2em;
    margin: .2em 0 0;
    border-radius: .4em .4em 0 0;
    font-size: 2.4em;
    color: var(--overlay-light-color-double);
    background-color: var(--primary-dark-color-midtone);
}

div.homepage-link-button-icon,
div#homepage-links-block-heading-icon,
div#homepage-current-next-block-heading-icon,
div#homepage-feed-block-heading-icon {
    margin: 0 .33em 0 0;
}

div.homepage-link-button-text,
div#homepage-links-block-heading-text,
div#homepage-current-next-block-heading-text,
div#homepage-feed-block-heading-text {
    font-family: "Alumni Sans", "Open Sans", "Segoe UI", "Helvetica", sans-serif;
    font-weight: 600;
    text-align: center;
    text-transform: uppercase;
}

div.homepage-links-block-grid {
    justify-items: stretch;
    grid-template-columns: auto auto;
    max-width: calc(100% - 1em);
    row-gap: .5em;
    column-gap: .5em;
    margin: .5em;
}

/*
@media (max-width: 768px) {
    div.homepage-links-block-grid {
        grid-template-columns: auto;
    }
}
*/

div#homepage-links-block-content,
div#homepage-current-next-block-content,
div#homepage-feed-block-content {
    width: 100%;
    padding: .4em 0;
    margin: 0;
    border-width: 2px 0 0 0;
    border-style: solid;
    border-color: var(--primary-dark-color-bright);
    border-radius: 0 0 .4em .4em;
    background-color: var(--overlay-light-color-muted);
    box-shadow: inset 0 0 8vw 2vw var(--overlay-dark-color-vanishing);
}

div#homepage-feed-block-content {
    max-height: var(--homepage-feed-block-height);
}

@media (min-width: 769px) {
    div#homepage-main-column,
    div#homepage-feed-column {
        max-width: 27em;
    }

    div#homepage-links-block-content {
        min-height: var(--homepage-links-block-height);
        max-height: var(--homepage-links-block-height);
        max-width: 27em;
    }

    div#homepage-current-next-block-content {
        min-height: var(--homepage-current-next-block-height);
        max-height: var(--homepage-current-next-block-height);
        max-width: 27em;
    }

    div#homepage-feed-block-content {
        min-height: var(--homepage-feed-block-height);
        max-height: var(--homepage-feed-block-height);
        max-width: 27em;
    }
}

div#homepage-links-block-content {
    justify-content: safe center;
    overflow: visible;
}

div#homepage-current-next-block-content {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: safe center;
    justify-content: safe center;
    align-items: safe center;
    overflow-x: scroll;
    overflow-y: hidden;
}

div#homepage-feed-block-content div.static-block-scrollbox {
    max-height: calc(100% - 1em);
    border: none;
    border-radius: 0 0 .4em .4em;
    background-color: transparent;
    overflow-x: hidden;
}

@media (max-width: 768px) {
    div#homepage-feed-block-content div.static-block-scrollbox {
       width: calc(100% - 1em);
       max-width: calc(100% - 1em);
    }
}

div.homepage-current-next-cover-art-block,
div.homepage-current-next-cover-art-block img {
    height: var(--homepage-current-next-block-cover-art-height);
    width: var(--homepage-current-next-block-cover-art-width);
}

div.homepage-current-next-game-block {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: safe center;
    justify-content: flex-start;
    align-items: safe center;
    margin: 0 6px;
}

div.homepage-current-next-slot-block {
    height: var(--homepage-current-next-block-slot-height);
    height: var(--homepage-current-next-block-slot-height);
    font-size: 1.2em;
    font-weight: 500;
    color: var(--accent-color-5-highlight);
    text-shadow: 2px 2px var(--overlay-dark-color-double), 0 0 .1em var(--overlay-light-color-soft);
}

a:has(div.homepage-link-button),
a:has(div.homepage-link-button):hover,
a:has(div.homepage-link-button):active {
    color: unset;
    text-decoration: unset;
}

div.homepage-link-button {
    position: relative;
    width: var(--homepage-link-button-width);
    height: var(--homepage-link-button-height);
    line-height: var(--homepage-link-button-height);
    justify-content: space-evenly;
    padding: 0 .4em;
    margin: 0;
    border: 1px solid var(--primary-dark-color-midtone);
    border-radius: .6em;
    font-size: 2.4em;
    color: var(--overlay-dark-color-double);
    background-color: var(--overlay-light-color-double);
    transition: all .25s ease-out;
}

@media (max-width: 768px) {
    div.homepage-link-button {
        width: calc(100% - .8em);
        height: calc(.8 * var(--homepage-link-button-height));
        line-height: calc(.8 * var(--homepage-link-button-height));
        font-size: calc(.8 * 2.4em);
    }
}

div.homepage-link-button:hover {
    z-index: 36;
    background-color: var(--primary-light-color-midtone-contrast);
    box-shadow: 0 0 .2em .05em var(--overlay-light-color);
    border-color: 1px solid var(--primary-dark-color-bright);
    color: var(--primary-dark-color-bright-contrast);
    animation-name: wiggle;
    animation-duration: 0.33s;
    animation-fill-mode: forwards;
    animation-iteration-count: infinite;
    animation-timing-function: cubic-bezier(.75, 0, .25, 1.0);
    transform: scale(1.33);
}

div.homepage-link-button-icon {

}

div.homepage-link-button-text {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: safe center;
    justify-content: safe center;
    align-items: safe center;
    line-height: .8em;
    text-transform: initial;
    text-wrap-style: balance;
}

@media (max-width: 768px) {
    div#homepage-main-row > div {
        width: 100%;
        max-width: 100%;
        margin-left: 0;
        margin-right: 0;
    }
}

div#homepage-footer {

}

div#homepage-main-column {
}

div#homepage-feed-column {

}

@media (max-width: 768px) {
    div#homepage-main-row {
        flex-wrap: wrap;
    }
}

div#homepage-container,
div#homepage-header-row,
div#homepage-main-row,
div#homepage-footer-row {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
    color: var(--primary-light-color-midtone);
}
