/* * #F2F2FF - White * #EDAF1F - Orange * #17466E - Blue */ #html { height: 100%; display: flex; } #body { background-color: #F2F2FF; display: flex; margin: 0; width: 100%; font-family: "Noto Sans Mono", "Monaco", serif; flex-direction: column; position: relative; } #header { display: flex; justify-content: space-between; padding: 2rem; } #title { font-family: "Noto Serif Display", "American Typewriter", serif; font-weight: normal; text-align: center; display: block; margin: 0; } #title a { text-decoration: none; color: black; } #links { display: flex; align-items: center; justify-content: center; } #links a { margin: 1rem; font-size: 1.2rem; text-decoration: none; color: black; padding: 1rem; } #links .button { background-color: #17466E; color: #F2F2FF; border-radius: 20px; box-shadow: 2px 2px 0 black; } #page { display: flex; padding: 0 1rem 1rem; } #social { width: 1.5em; display: flex; flex-direction: column; justify-content: center; } #social a { margin: .5em 0; } #social .icon { width: 100%; } #main { width: 100%; display: flex; align-items: center; justify-content: space-evenly; flex-wrap: wrap-reverse; } #quote { display: block; font-size: 1.5rem; margin: 0; } #quote figcaption { text-align: right; } #slogan { text-align: right; font-size: 3rem; position: relative; } #slogan mark { box-shadow: 2px 2px 0 black; background-color: #17466E; color: #F2F2FF; position: relative; } #circle { top: 0; left: -20%; position: absolute; width: 140%; aspect-ratio: 1 / 1; background-color: #EDAF1F; border-radius: 100%; animation: pulse-circle 30s ease-in-out -2s infinite alternate; z-index: -1; } #circle-behind { top: 0; left: -20%; position: absolute; width: 140%; aspect-ratio: 1 / 1; z-index: -2; animation: rotate-circle 60s linear -2s infinite normal; } #circle-behind::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; animation: pulse-circle 30s ease-in-out -2s infinite alternate; background-color: #d49a11; border-radius: 100%; } @keyframes pulse-circle { 0% { transform: scale(.9); } 50% { transform: scale(1); } 100% { transform: scale(.9); } } @keyframes rotate-circle { 0% { transform: translateX(5%); } 25% { transform: translateY(-5%); } 50% { transform: translateX(-5%); } 75% { transform: translateY(5%); } 100% { transform: translateX(5%); } } .cursor { animation: blink 0.8s infinite; } @keyframes blink { 50% { opacity: 0; } } @media only screen and (max-width: 600px) { #page { flex-wrap: wrap-reverse; } #social { flex-direction: row; width: 100%; gap: 1rem; height: 50px; margin-bottom: 1rem; } #social img { height: 100%; } #circle, #circle-behind { display: none; } #main { margin-bottom: 0; } #header { flex-direction: column; align-items: center; gap: 1rem; } #quote { max-width: 100%; margin: 2rem 0; } #slogan { margin: 2rem; } #slogan mark { background-color: #EDAF1F; color: black; } #links a { margin: 0.3rem; flex-wrap: wrap; } } @media only screen and (max-width: 420px) { #header { padding: 1rem; } } @media only screen and (max-width: 390px) { #links .button { border-radius: 7px; } #links a { padding: 0.6rem; } #header { padding: 4px; padding-bottom: 1rem; } } @media only screen and (min-width: 600px) { #quote { max-width: 80%; } #page { height: 100%; overflow-y: hidden; } } @media only screen and (min-width: 768px) { #quote { max-width: 50%; } #circle, #circle-behind { top: -70%; } #page { padding-top: 3rem; padding-bottom: 3rem; overflow: hidden; } } @media only screen and (min-width: 992px) { #quote { max-width: 40%; } }