#work { .page-header .container { display: flex; flex-flow: row wrap; justify-content: space-between; align-content: center; .page-title { margin-right: 1em; margin-bottom: 1em; } } .timeline { position: relative; max-width: 60em; margin: 0 auto; &::before { content: 'TODAY'; position: absolute; top: 0; left: 2.5em; } &::after { content: ''; position: absolute; width: 0.5em; background-color: #ddd; top: 0; bottom: 0; left: 1.5em; } &-item { padding: 1em 0; position: relative; margin-left: 2.5em; margin-bottom: 2em; @media (min-width: 30em) { display: grid; grid-template-areas: "dates title title" "at title title" "readmore summary summary" ; grid-template-columns: 20ch auto 1fr; grid-template-rows: auto auto auto; padding-top: 1.5em; } &::before { content: " "; position: absolute; top: 1em; width: 2em; height: 2em; z-index: 1; left: -3em; border-width: 1em; border-color: #06f; border-radius: 100em; background-color: #06f; border: 0.25em solid #ddd; } &.worktrilogy::before { background: url("/icons/trilogy.png"); background-size: cover; } &.workmastodon::before { background: url("/icons/mastodon.png"); background-size: cover; } &.workpixelfed::before { background: url("/icons/pixelfed.svg"); background-size: cover; background-color: pink; } &.workeqin::before { background: url("/icons/eqin.png"); background-size: cover; } &.workuab { &::before { background: url("/icons/uab.png"); background-size: contain; background-repeat: no-repeat; background-position: center; background-color: white; } } &__daterange { margin-left: 0em; flex-basis: 10ch; grid-area: dates; text-transform: uppercase; } &__at { display: block; margin-bottom: 0.5em; } &__title { font-size: 1.4em; font-weight: 700; margin-bottom: 0.5em; grid-area: title; @media (min-width: 30em) { margin-top: -0.125em; } } &__summary { flex-basis: 30ch; grid-area: summary; line-height: 1.4; margin-bottom: 0.5em; } &__readmore { width: 15ch; grid-area: readmore; } } } .cta { .container { display: flex; flex-flow: column; align-items: start; } .title { font-size: 1.4em; font-weight: 700; margin-bottom: 1.4em; } .blurb { line-height: 1.4; margin-bottom: 1.4em; strong { font-weight: 700; background: hsl(120, 240, 80,); border-radius: 0.25em; padding: .15em 0.5em 0.35em; } } .buttons { margin-top: 1em; display: grid; grid-template-columns: 1fr; width: 100%; font-size: 1.25em; @media (min-width: 34em) { grid-template-columns: 1fr 1fr; width: unset; } gap: 1em; .button { justify-content: start; width: 100%; i {margin-right: 1em;} } } .email.button { } .resume.button { background: white; border: 2px solid #06f; color: #06f; } } }