@use './components/variables'; @use './components/reset'; @use './components/superminimal'; @use './components/utilities'; @use './components/focus'; @use './components/button'; @use './components/skip-link'; @use './components/icons'; html { scroll-padding-top: 2rem; @media screen and (max-width: 767px) { scroll-padding-top: 8rem; } } body { --start: var(--primary-light); --end: var(--secondary); background: var(--start); background: linear-gradient(180deg, var(--start) 0%, var(--start) 35%, var(--end) 100%); header, footer { padding: .5rem clamp(.2rem, 3vw, 2rem); } } header { background-color: var(--primary); position: fixed; z-index: 10; inset-block-start: 0; inset-inline: 0; nav { ul { display: flex; justify-content: flex-end; padding: 0; list-style: none; @media screen and (max-width: 767px) { justify-content: start; flex-direction: column; } } li { padding: 6px 20px; padding: 6px clamp(10px, 3vw, 20px); margin: 0; text-align: end; @media screen and (min-width: 768px) { display: inline-block; } } a[aria-current="page"] { color: var(--text-2); text-decoration: underline; font-weight: var(--font-weight-semibold) } } } main { margin: 0; padding: 0; h2 { margin-block: 2rem 1rem; font-size: calc(var(--font-size) * 1.6); } .list-inline { --item-gap: 0; margin: 0; padding: 0; } ul:not(.list-inline) { margin: 0; padding: 0; list-style-type: none; } li { --item-separator: none; margin: 0; padding: 0; } } footer { background-color: var(--secondary); justify-items: center; margin-block-start: 1.5rem; .list-inline { a { text-decoration: underline; --item-color: var(--text-2); } } } i { vertical-align: text-top; fill: var(--fill-color, var(--primary-light)); display: inline-block; svg { aspect-ratio: 1; font-size: 1.2rem; } } .hero-section { height: 65vh; text-align: center; display: flex; flex-direction: column; align-items: center; justify-content: center; @media screen and (max-width: 767px) { height: 85vh; } } .projects-section { ul { display: grid; grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr)); gap: 1rem; } li { border-radius: var(--border-radius); overflow: hidden; } article { --background: url('https://placehold.co/200x150'); // Default background position: relative; height: 100%; padding: .4rem; display: flex; flex-direction: column; justify-content: space-between; gap: 2.5rem; z-index: 1; background: var(--background); background-repeat: no-repeat; background-size: cover; } a { &:hover { color: #3a3a3a; transition: color .2s ease-in-out; } &:before, &:after { --icon-size: 1.2rem; } } .top { width: 100%; display: flex; justify-content: space-between; } .links { display: flex; gap: .35rem; align-self: flex-end; } .content { padding: 1rem .4rem 0 .4rem; } } .about-section, .projects-section, .experiences-section, .download-section { padding-block: 2rem; margin-block: 3.5rem; } .about { display: flex; gap: 2rem; align-items: center; & > div:first-child { inline-size: 30%; } & > div:last-child { inline-size: 60%; } img { margin: 1rem auto; inline-size: 100%; inline-size: clamp(200px, 100%, 400px); aspect-ratio: 1; border-radius: 100%; border: 4px solid var(--primary-dark) } ul { margin-block-start: 1rem; gap: .2rem; } @media screen and (max-width: 767px) { flex-direction: column; & > div:first-child, & > div:last-child { inline-size: 100%; } img { inline-size: clamp(200px, 50vw, 300px); margin: 0 auto; } } } .timeline { display: flex; flex-direction: column; position: relative; padding: 0; &:before { content: ''; position: absolute; inline-size: 6px; background-color: var(--light-1); inset: 0 0 0 1.5rem; margin-inline-start: -3px; } li { --size: 3rem; position: relative; margin: 1.4rem 0; padding: 0 0 0 calc(var(--size) + .8rem); &:first-child { margin-top: 3rem; } &:last-child { margin-bottom: 0; margin-bottom: -10px; } &:after { content: ''; position: absolute; aspect-ratio: 1; inline-size: var(--size); background-color: var(--light-1); border: 6px solid var(--secondary-dark); inset-inline-start: 0; // inset-inline-start: .9rem; inset-block-end: 50%; transform: translateY(50%); // inset-block-end: 0; // inset-block-start: 1.5rem; border-radius: 50%; z-index: 1; } } } .experiences-section { p { margin: 0; } } .download-section { text-align: center; .btn { color: var(--secondary-light); } p { font-size: 1.4rem; } }