@import url("https://fonts.googleapis.com/css2?family=Titillium+Web:wght@700&display=swap");
* {
    padding: 0;
    margin: 0;
    border: 0;
}

*, *:before, *:after {
    box-sizing: border-box;
}

html, body {
    height: 100%;
    width: 100%;
    line-height: 1;
    font-size: 14px;
    overflow: hidden;
}

input, button, textarea {
    font-family: inherit;
}

input::-ms-clear {
    display: none;
}

button {
    cursor: pointer;
}

button::-moz-focus-inner {
    padding: 0;
    border: 0;
}

a, a:visited, a:hover  {
    text-decoration: none;
}

ul {
    list-style: none;
}

img {
    vertical-align: top;
    max-width: 100%;
}

body{
    background: url(../assets/bg.png) 0 0/100% auto no-repeat;
    height: 100vh;
    font-family: "Titillium Web", sans-serif;
}

header{
    width: 100vw;
    height: 80px;
    background: #94dbf745;
}

.navigation {
    max-width: 90vw;
    margin: auto;
    padding: 25px 0 0;
}

.navigation__list {
    display: flex;
    justify-content: flex-end;
}

.navigation__item {
    flex: 0 0 30px;
    margin: 0 30px 0 0;
    width: 30px;
    height: 30px;
}

.navigation__item img {
    object-fit: contain;
    width: 100%;
    height: 100%;
}

.menu {
    position: relative;
}

.menu__input {
    position: absolute;
    width: 30px;
    height: 30px;
    cursor: pointer;
    opacity: 0;
}

.menu__label {
    position: relative;
    cursor: pointer;
}

.menu-popup {
    margin: 25px 100px 0 -200px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 310px;
    height: 408px;
    overflow-y: scroll;
    flex-wrap: wrap;
    background: #94dbf7;
    border: 5px solid black;
    border-radius: 4px;
}

.menu-popup::before {
    content: "";
    position: absolute;
    top: 40px;
    left: 50%;
    transform: translate(-45%, 0);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 15px 20px 15px;
    border-color: transparent transparent #000000 transparent;
    display: none;
}

.menu-popup::-webkit-scrollbar {
    width: 5px;
}

.menu-popup::-webkit-scrollbar-track {
    background: #94dbf7;
}

.menu-popup::-webkit-scrollbar-thumb {
    background: #ffa4ec;
}

.menu-popup::-webkit-scrollbar-thumb:hover {
    background: black;
}

.menu-popup__link {
    width: 50px;
    margin: 8px;
    padding: 15px;
    height: 50px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-sizing: content-box;
    border-radius: 4px;
}

.menu-popup__link:hover {
    border: 5px solid black;
    padding: 10px;
}

.menu-popup__link img {
    object-fit: contain;
    width: 70%;
    height: 70%;
}

.menu-popup__link p {
    margin: 10px 0 0;
    color: black;
}

.menu-popup__input {
    position: absolute;
    width: 20px;
    height: 10px;
    cursor: pointer;
    opacity: 0;
    top: 70%;
}

.menu-popup__label {
    position: relative;
    cursor: pointer;
    flex: 0 0 90%;
    text-align: center;
    border: 5px solid black;
    border-radius: 4px;
    padding: 3px 0;
    margin: 40px 0;
}

.menu-popup__label:hover {
    background-color: #ffa4ec;
}

.menu-popup__label:before {
    content: "More";
}

.menu-popup--invisible {
    visibility: hidden;
}

.menu-popup__link--hidden {
    display: none;
}

input.menu__input:checked ~ div.menu-popup--invisible {
    visibility: visible;
}

input:checked ~ .menu-popup__link--hidden {
    display: flex;
}

input:focus ~ label {
    outline-offset: 1px;
    outline: -webkit-focus-ring-color auto 1px;
    outline-color: -webkit-focus-ring-color;
    outline-style: auto;
    outline-width: 1px;
}

.menu-popup__input:checked ~ .menu-popup__label::before {
    content: "Less"; 
} 

.menu__input:checked ~ .menu-popup::before {
    display: block;
}
