@import url('https://fonts.googleapis.com/css2?family=BBH+Sans+Bogle&display=swap'); :root { --card-gap: 6px; --background-color: #1b1b1b; --text-color: #fff; --label-height: 60px; font-family: "BBH Sans Bogle", sans-serif; font-weight: 400; font-style: normal; } html, body { background: var(--background-color); margin: 0; padding: 0; overflow-y: hidden; /* Hide vertical scrollbar */ overflow-x: hidden; /* Hide horizontal scrollbar */ height: 100dvh; } #container { display: flex; justify-content: space-around; align-items: center; gap: var(--card-gap); margin: var(--card-gap); } .card-image { filter: grayscale(100%) brightness(80%); transform: translateY(0); transition: 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955); } .card { height: calc(100dvh - (2 * var(--card-gap))); overflow: hidden; display: flex; flex-direction: column; justify-content: center; align-items: center; } .card-wrapper { overflow: hidden; display: flex; flex-direction: column; justify-content: center; align-items: center; width: 100%; cursor: pointer; transition: 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955); } .card-label { position: relative; bottom: calc(-1 * var(--label-height / 2)); display: flex; align-items: center; background-color: var(--background-color); color: var(--text-color); height: var(--label-height); width: 100%; filter: grayscale(0%) brightness(100%); transform: translateY(0); transition: 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955); font-size: 32px; padding-left: 30px; } .card-wrapper:hover .card .card-image { filter: grayscale(0%) brightness(110%); transform: translateY(-30px); } .card-wrapper:hover .card-label { transform: translateY(calc(-1 * var(--label-height))); } .hidden { width: calc(100% / 10); } .active .card-label { transform: translateY(0) !important; } .active .card .card-image { filter: grayscale(0%) brightness(110%) !important; transform: translateY(0) !important; } .active { cursor: default !important; } .content-container { display: block; position: relative; max-width: 100%; height: calc(100dvh - (2 * var(--card-gap))); top: calc(-1 * (100dvh - (2 * var(--card-gap))) - var(--label-height)); } .content-wrapper { display: block; opacity: 0; transition: opacity 0.1s cubic-bezier(0.455, 0.03, 0.515, 0.955); margin: 10px; padding: 0; } .visible { display: block !important; opacity: 1 !important; transition-delay: 0.5s !important; transition: 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955); }