#hero { height: 100vh; box-sizing: border-box; h2 { margin-top: 20vh; font-size: 45px; line-height:70px; position: relative; #welcome { background: var(--gradient); background-clip: text; color: transparent; } #jobs { position: relative; &:after { content: ''; position: absolute; left: calc(100% + 5px); top: 0; width: 20px; height: 100%; background-color: var(--text); animation: blink 800ms infinite; } } } p { font-size: 18px; color: var(--desc-color); position: relative; } a { display: block; margin-top: 40px; height: 60px; width: 150px; background: var(--gradient); border-radius: 30px; font-size: 15px; text-align: center; line-height: 60px; text-decoration: none; box-shadow: 0 0 40px -5px var(--primary); } } .title { display: inline; margin-right: 10px; } #projects { #projects-wrapper { display: flex; flex-wrap: wrap; margin-top: 70px; justify-content: space-evenly; gap: 70px; } } #technologies { margin-top: 300px; .technologies-wrapper { margin-top: 30px; } } #about { margin-top: 150px; } .timeline ::deep .timestamp:last-of-type { --show-bar: none; } .timeline { display: flex; margin-top: 30px; } a:not(#main-action) { text-decoration: none; position: relative; &:before { content: ""; position: absolute; width: 100%; height: 2px; bottom: 0; left: 0; background-color: var(--text); visibility: hidden; transform: scaleX(0); transform-origin: left; transition: all 0.3s ease-in-out; } } a:not(#main-action):hover::before { visibility: visible; transform: scaleX(1); } @keyframes blink { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } } @media screen and (max-width: 750px) { #hero > h2 { font-size: 2rem; line-height: 2.5rem; margin-top: 10vh; } .timeline { flex-direction: column-reverse; } .timeline ::deep .timestamp:last-of-type { --show-bar: block; } .timeline ::deep .timestamp:first-of-type { --show-bar: none; } }