@font-face {
    font-family: 'Times Now';
    src: url(fonts/Times\ Now\ Light.otf);
    font-weight: 100;
}
@font-face {
    font-family: 'Times Now';
    src: url(fonts/Times\ Now\ Light\ Italic.otf);
    font-weight: 100;
    font-style: italic;
}
@font-face {
    font-family: 'Times Now';
    src: url(fonts/Times\ Now\ Light.otf);
    font-weight: 200;
}
@font-face {
    font-family: 'Times Now';
    src: url(fonts/Times\ Now\ Light\ Italic.otf);
    font-weight: 200;
    font-style: italic;
}
@font-face {
    font-family: 'Times Now';
    src: url(fonts/Times\ Now\ SemiBold.otf);
    font-weight: 550;
}
@font-face {
    font-family: 'Times Now';
    src: url(fonts/Times\ Now\ SemiBold\ Italic.otf);
    font-weight: 550;
    font-style: italic;
}

body, html, div, p, a {
    font-family: 'Times Now';
    font-weight: 200;
    margin: 0;
    padding: 0;
    font-size: 20px;
    letter-spacing: -0.05em;
    line-height: 18px;
    cursor: help !important;
}
p {
    margin-bottom: 5px;
}

div.grid {
    width: calc(100vw-10px);
    height: auto;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: 18px auto;
    grid-column-gap: 5px;
    grid-row-gap: 5px;
    padding: 5px;
}

.top, .btm-1, .btm-2, .btm-3, .btm-4 {
    /*background-color: #FFDDDD;*/
    display: flex;
}

.top {
    align-items: flex-end;
    height: 18px;
    margin-bottom: 5px;
    margin-left: -1px;
}

.top   { grid-area: 1 / 1 / 2 / 5; }
.btm-1 { grid-area: 2 / 1 / 3 / 2; }
.btm-2 { grid-area: 2 / 2 / 3 / 3; }
.btm-3 { grid-area: 2 / 3 / 3 / 4; }
.btm-4 { grid-area: 2 / 4 / 3 / 5; }
  

.top > a > p {
    font-weight: 550;
}
sup {
    font-weight: 100;
    font-style: italic;
    vertical-align: top;
    font-size: 14px;
    position: relative;
    top: -5px;
}

ul {
    margin: 0;
    list-style-type: disc;
    margin-block-start: 0;
    margin-block-end: 0;
    margin-inline-start: 0;
    margin-inline-end: 0;
    padding-inline-start: 30px;   
}

.btm-2 > ul, .btm-3 > ul, .btm-4 > ul {
    padding: 0;
}
.btm-2 > ul, .btm-3 > ul, .btm-4 > ul {
    padding: 0;
    list-style: none;
}
.btm-1 > ul > li:hover {
    display: list-item;
}
ul, li, p {
    width: 100%;
}


.top > a > p:hover::before {
    content: "←";
}
.top > a > p, .top > a {
    color: black;
    text-decoration: none;
}
.mobile-btm {
    display: none;
}

.btm-4 > div {
    display: none;
}
.btm-4 > div > img {
    width: calc(100% - 2px);
    border: 1px solid black;
}

div.eight > img {
    background-color: black;
}

.btm-4 > div {
    display: none;
    opacity: 0;
    transition: opacity 0s;
}

.btm-4 > div.visible {
    display: block;
    opacity: 1;
}

div.grid:has(.btm-1 > ul > .one:hover) > .btm-4 > .one, div.grid:has(.btm-2 > ul > .one:hover) > .btm-4 > .one, div.grid:has(.btm-3 > ul > .one:hover) > .btm-4 > .one, .one:hover {
    display: unset;
}
div.grid:has(.btm-1 > ul > .two:hover) > .btm-4 > .two, div.grid:has(.btm-2 > ul > .two:hover) > .btm-4 > .two, div.grid:has(.btm-3 > ul > .two:hover) > .btm-4 > .two, .two:hover {
    display: unset;
}
div.grid:has(.btm-1 > ul > .three:hover) > .btm-4 > .three, div.grid:has(.btm-2 > ul > .three:hover) > .btm-4 > .three, div.grid:has(.btm-3 > ul > .three:hover) > .btm-4 > .three, .three:hover {
    display: unset;
}
div.grid:has(.btm-1 > ul > .four:hover) > .btm-4 > .four, div.grid:has(.btm-2 > ul > .four:hover) > .btm-4 > .four, div.grid:has(.btm-3 > ul > .four:hover) > .btm-4 > .four, .four:hover {
    display: unset;
}
div.grid:has(.btm-1 > ul > .five:hover) > .btm-4 > .five, div.grid:has(.btm-2 > ul > .five:hover) > .btm-4 > .five, div.grid:has(.btm-3 > ul > .five:hover) > .btm-4 > .five, .five:hover {
    display: unset;
}
div.grid:has(.btm-1 > ul > .six:hover) > .btm-4 > .six, div.grid:has(.btm-2 > ul > .six:hover) > .btm-4 > .six, div.grid:has(.btm-3 > ul > .six:hover) > .btm-4 > .six, .six:hover {
    display: unset;
}
div.grid:has(.btm-1 > ul > .seven:hover) > .btm-4 > .seven, div.grid:has(.btm-2 > ul > .seven:hover) > .btm-4 > .seven, div.grid:has(.btm-3 > ul > .seven:hover) > .btm-4 > .seven, .seven:hover {
    display: unset;
}
div.grid:has(.btm-1 > ul > .eight:hover) > .btm-4 > .eight, div.grid:has(.btm-2 > ul > .eight:hover) > .btm-4 > .eight, div.grid:has(.btm-3 > ul > .eight:hover) > .btm-4 > .eight, .eight:hover {
    display: unset;
}











a, a:visited {
    color: black;
    text-decoration: none;
}

a:hover, li:has(a):hover {
    animation: rainbow 10s linear 0s infinite;
}

@keyframes rainbow {
    5% {
        color: blue;
    }
    10% {
        color: rgb(0, 255, 0);
    }
    15% {
        color: yellow;
    }
    25% { 
        color: orange;
    }
    30% {
        color: red;
    }
    35% {
        color: rgb(255, 0, 255);
    }
    42.5% {
        color: rgb(179, 0, 255);
    }
    45% {
        color: blue;
    }
    55% {
        color: rgb(0, 255, 0);
    }
    60% {
        color: yellow;
    }
    70% { 
        color: orange;
    }
    75% {
        color: red;
    }
    80% {
        color: rgb(255, 0, 255);
    }
    87.5% {
        color: rgb(179, 0, 255);
    }
    95% {
        color: blue;
    }
}



@media screen and (orientation: portrait) {

body, html, div, p, a {
    font-family: 'Times Now';
    margin: 0;
    padding: 0;
    font-size: 80px;
    letter-spacing: -0.07em;
    line-height: 80px;
}
body {
    padding: 10px;
}

div.grid {
    height: 80px;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
}
.top {
    height: 80px;
}
.btm-1, .btm-2, .btm-3, .btm-4 {
    display: none;
}
.mobile-btm {
    display: block;
}
.mobile-btm > ul > div > img {
    width: calc(100% - 20px);
    border: 5px solid black;
}

sup {
    font-size: 50px;
    top: -15px;
}

ul {
    padding-inline-start: 0;
    padding-left: 100px;
}
li {
    list-style-type: disc;
}

ul > div {
    height: 80px;
    overflow: hidden;
}
ul > div.expanded {
    height: initial;
    overflow-y: unset;
}

}