/* MOBILE AND GLOBAL STYLES */ /* applies to screens smaller than 500px (first breakpoint) */ /* and above unless overwritten below */ @import url('https://fonts.googleapis.com/css2?family=Outfit:wght@100..600&display=swap'); :root { --bgColor: #ffffff; --normal: #999999; --fighting: #C03028; --flying: #A890F0; --poison: #A040A0; --ground: #E0C068; --rock: #B8A038; --bug: #A8B820; --ghost: #705898; --steel: #B8B8D0; --fire: #F08030; --water: #6890F0; --grass: #78C850; --electric: #F8D030; --psychic: #F85888; --ice: #98D8D8; --dragon: #7038F8; --dark: #41314e; --fairy: #EE99AC; } body { font-family: 'Outfit', sans-serif; font-size: 1.5em; margin: 0; padding: 0; box-sizing: border-box; } /* LANDING STYLES */ @keyframes fadeImage { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } } #landing { width: 100vw; height: 100vh; display: flex; justify-content: center; align-items: center; background-size: cover; transition: opacity 1s forwards; /*transition does not work for images*/ position: relative; } #landing #background { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: -2; } #landing #background-transition { display: none; position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: -1; opacity: 0; transition: opacity 1s; } h1 { font-size: 10vw; font-weight: 600; text-align: center; user-select: none; } #titleBanner { padding-left: 5%; padding-right: 5%; transition: color 1s, background-color 1s, border-radius 0.5s ease; } #titleBanner:hover { border-radius: 1em; } .black { background-color: #000; /* Reference[0] https://www.w3schools.com/howto/howto_css_cutout_text.asp */ color: #fff; mix-blend-mode: multiply; } .white { background-color: #fff; color: #000; mix-blend-mode: lighten; } #colorSelector { display: flex; position: absolute; top: 0; right: 0; margin: 10px; align-items: center; padding: 10px; background-color: #ffffff50; border-radius: 10px; } #colorSelector input { margin-left: 10px; } #colorSelector label { font-size: 1.5em; } /* BELOW LANDING STYLES */ #below-landing { background-color: #101010; overflow: auto; color: white; padding: 50px; } p { font-weight: 200; } h2 { font-size: 3em; font-weight: 400; margin: 0; text-decoration: underline; text-decoration-color: var(--bgColor); } h3 { font-size: 1.5em; font-weight: 300; margin: 0; } .features { display: flex; flex-direction: column; align-items: center; justify-content: center; } #features-intro p { text-align: center; } #table-heading { margin-bottom: 25px; } .feature-showcase { display: flex; flex-direction: column; border-radius: 40px; background-color: #181818; } .feature-showcase-item { padding: 30px; border-bottom: 1px solid var(--bgColor); } #modern-css { border-bottom: none; } /* POKEDEX STYLES */ #pokedex { max-width: 1300px; margin: auto; margin-bottom: 50px; } #generation-selector, #type-selector { overflow-x: auto; } #pokedex h2 { text-align: center; } #generation-selector { display: flex; } #generation-selector input { display: none; } #generation-selector label { display: inline-block; padding: 10px; margin: 10px; min-height: 40px; min-width: 40px; text-align: center; text-shadow: black 0px 0px 3px; line-height: 40px; border-radius: 30px; background-color: #202020; color: white; cursor: pointer; transition: background-color 0.5s; } #generation-selector label:hover { background-color: #303030; } #generation-selector input:checked + label { background-color: var(--bgColor); } #type-selector { display: flex; } #type-selector input { display: none; } #type-selector label { display: inline-block; padding: 10px; margin: 10px; height: 40px; width: 40px; text-align: center; line-height: 40px; border-radius: 30px; background-color: #202020; color: white; cursor: pointer; transition: background-color 0.5s; } #type-selector label img { width: 40px; height: 40px; font-size: 10px; } #type-selector label:hover { background-color: #303030; } #type-selector input:checked + label { background-color: var(--bgColor); } #normal:checked + label { background-color: var(--normal) !important; } #fighting:checked + label { background-color: var(--fighting) !important; } #flying:checked + label { background-color: var(--flying) !important; } #poison:checked + label { background-color: var(--poison) !important; } #ground:checked + label { background-color: var(--ground) !important; } #rock:checked + label { background-color: var(--rock) !important; } #bug:checked + label { background-color: var(--bug) !important; } #ghost:checked + label { background-color: var(--ghost) !important; } #steel:checked + label { background-color: var(--steel) !important; } #fire:checked + label { background-color: var(--fire) !important; } #water:checked + label { background-color: var(--water) !important; } #grass:checked + label { background-color: var(--grass) !important; } #electric:checked + label { background-color: var(--electric) !important; } #psychic:checked + label { background-color: var(--psychic) !important; } #ice:checked + label { background-color: var(--ice) !important; } #dragon:checked + label { background-color: var(--dragon) !important; } #dark:checked + label { background-color: var(--dark) !important; } #fairy:checked + label { background-color: var(--fairy) !important; } #pokemon-container .normal-primary-type { background-color: var(--normal) !important; } #pokemon-container .normal-secondary-type { box-shadow: inset 0px -150px 100px -100px var(--normal) , 0px 0px 0px 0px transparent !important; } #pokemon-container .fighting-primary-type { background-color: var(--fighting) !important; } #pokemon-container .fighting-secondary-type { box-shadow: inset 0px -150px 100px -100px var(--fighting) , 0px 0px 0px 0px transparent !important; } #pokemon-container .flying-primary-type { background-color: var(--flying) !important; } #pokemon-container .flying-secondary-type { box-shadow: inset 0px -150px 100px -100px var(--flying) , 0px 0px 0px 0px transparent !important; } #pokemon-container .poison-primary-type { background-color: var(--poison) !important; } #pokemon-container .poison-secondary-type { box-shadow: inset 0px -150px 100px -100px var(--poison) , 0px 0px 0px 0px transparent !important; } #pokemon-container .ground-primary-type { background-color: var(--ground) !important; } #pokemon-container .ground-secondary-type { box-shadow: inset 0px -150px 100px -100px var(--ground) , 0px 0px 0px 0px transparent !important; } #pokemon-container .rock-primary-type { background-color: var(--rock) !important; } #pokemon-container .rock-secondary-type { box-shadow: inset 0px -150px 100px -100px var(--rock) , 0px 0px 0px 0px transparent !important; } #pokemon-container .bug-primary-type { background-color: var(--bug) !important; } #pokemon-container .bug-secondary-type { box-shadow: inset 0px -150px 100px -100px var(--bug) , 0px 0px 0px 0px transparent !important; } #pokemon-container .ghost-primary-type { background-color: var(--ghost) !important; } #pokemon-container .ghost-secondary-type { box-shadow: inset 0px -150px 100px -100px var(--ghost) , 0px 0px 0px 0px transparent !important; } #pokemon-container .steel-primary-type { background-color: var(--steel) !important; } #pokemon-container .steel-secondary-type { box-shadow: inset 0px -150px 100px -100px var(--steel) , 0px 0px 0px 0px transparent !important; } #pokemon-container .fire-primary-type { background-color: var(--fire) !important; } #pokemon-container .fire-secondary-type { box-shadow: inset 0px -150px 100px -100px var(--fire) , 0px 0px 0px 0px transparent !important; } #pokemon-container .water-primary-type { background-color: var(--water) !important; } #pokemon-container .water-secondary-type { box-shadow: inset 0px -150px 100px -100px var(--water) , 0px 0px 0px 0px transparent !important; } #pokemon-container .grass-primary-type { background-color: var(--grass) !important; } #pokemon-container .grass-secondary-type { box-shadow: inset 0px -150px 100px -100px var(--grass) , 0px 0px 0px 0px transparent !important; } #pokemon-container .electric-primary-type { background-color: var(--electric) !important; } #pokemon-container .electric-secondary-type { box-shadow: inset 0px -150px 100px -100px var(--electric) , 0px 0px 0px 0px transparent !important; } #pokemon-container .psychic-primary-type { background-color: var(--psychic) !important; } #pokemon-container .psychic-secondary-type { box-shadow: inset 0px -150px 100px -100px var(--psychic) , 0px 0px 0px 0px transparent !important; } #pokemon-container .ice-primary-type { background-color: var(--ice) !important; } #pokemon-container .ice-secondary-type { box-shadow: inset 0px -150px 100px -100px var(--ice) , 0px 0px 0px 0px transparent !important; } #pokemon-container .dragon-primary-type { background-color: var(--dragon) !important; } #pokemon-container .dragon-secondary-type { box-shadow: inset 0px -150px 100px -100px var(--dragon) , 0px 0px 0px 0px transparent !important; } #pokemon-container .dark-primary-type { background-color: var(--dark) !important; } #pokemon-container .dark-secondary-type { box-shadow: inset 0px -150px 100px -100px var(--dark) , 0px 0px 0px 0px transparent !important; } #pokemon-container .fairy-primary-type { background-color: var(--fairy) !important; } #pokemon-container .fairy-secondary-type { box-shadow: inset 0px -150px 100px -100px var(--fairy) , 0px 0px 0px 0px transparent !important; } #pokemon-container { display: flex; flex-direction: row; overflow-x: auto; overflow-y: hidden; width: 100%; height: 220px; } .pokemon-card { height: 200px; min-width: 300px; background-color: #444; margin: 10px; border-radius: 40px; overflow: hidden; } .pokemon-card img { position: relative; top: -120px; left: 100px; height: 192px; width: 192px; margin: 10px; image-rendering: pixelated; } .pokemon-card .pokemon-name { font-weight: 500; font-size: 1.15em; position: relative; margin: 0; top: 15px; left: 15px; z-index: 1; text-shadow: black 1px 1px 3px; } .pokemon-card .pokemon-id { font-weight: 100; font-size: 3.5em; position: relative; margin: 0; top: 15px; left: 15px; z-index: 0; text-shadow: #0008 1px 1px 2px; } /* CAROUSEL STYLES */ #carousel { height: 100vh; background-color: #101010; position: relative; display: flex; } #carousel-container { display: flex; flex-direction: column; width: 100%; padding: 50px 0px; } .carousel-item { position: relative; display:block; height: 100px; width: calc(100% - 34px); min-height: 100px; margin: 12px; border-radius: 52px; border: 3px solid var(--bgColor); overflow: hidden; transition: width 1s ease, height 1s ease; } .carousel-item .carousel-id { position: absolute; bottom: 0; left: 0; transform: translate(10px, 5px); width: 70px; height: 70px; background-color: #202020; border-radius: 40px; margin: 0; margin-bottom: 15px; border: 3px solid var(--bgColor); text-shadow: black 5px 5px 5px; user-select: none; } .carousel-item .carousel-title { position: absolute; bottom: 0; left: 0; transform: translate(100px, -35px); color: white; font-size: 25px; font-weight: 550; margin: 0; text-shadow: rgb(0, 0, 0) 3px 3px 3px; width: 500px; } #carousel-container .active { height:100%; } #carousel-container #carousel-1 { background-image: linear-gradient(to top, #0008, #0000), url("/assets/photos/code-1839406_1920.jpg"); background-size: cover; background-position: center; } #carousel-container #carousel-2 { background-image: linear-gradient(to top, #000a, #0000), url("/assets/photos/software-3682509_1920.jpg"); background-size: cover; background-position: center; } #carousel-container #carousel-3 { background-image: linear-gradient(to top, #000a, #0000), url("/assets/photos/keyboard-5466431_1920.jpg"); background-size: cover; background-position: center; } /* TABLET STYLES */ @media screen and (min-width: 500px) { /* applies to screens wider than 499px */ } /* DESKTOP STYLES */ @media screen and (min-width: 1000px) { /* applies to screens wider than 999px */ #carousel { height: 910px; } #carousel-container { display: flex; flex-direction: row; } .carousel-item { min-width: 200px; height: 800px; width: 150px; min-width: 150px; border-radius: 74px; } .carousel-item .carousel-id { width: 120px; height: 120px; line-height: 120px; font-size: 100px; border-radius: 65px; } #carousel-container .active { width:100%; height: 800px; } .carousel-item .carousel-title { transform: translate(180px, -50px); font-size: 50px; } .content-column { max-width: 1300px; margin: auto; } /* BELOW LANDING STYLES */ .feature-showcase { display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: auto; } .feature-showcase-item { padding: 30px; } #interactive-ui { grid-column: 1 / 2; grid-row: 2 / 3; border-right: 1px solid var(--bgColor); } #responsive-design { grid-column: 2 / 2; grid-row: 2 / 3; } #user-input { grid-column: 1 / 2; grid-row: 3 / 3; border-right: 1px solid var(--bgColor); border-bottom: none; } #modern-css { grid-column: 2 / 2; grid-row: 3 / 3; } /* POKEDEX STYLES */ #generation-selector { justify-content: center; } }