@import url("//fonts.googleapis.com/css?family=Monda,wght@400,700|Cantarell|Exo 2"); @import url('https://fonts.googleapis.com/css2?family=Cormorant:ital,wght@0,300;0,400;1,300;1,400&family=Karma:wght@300;400&family=Newsreader:ital,wght@0,300;0,400;1,300;1,400&family=Noto+Serif:ital@0;1&family=Rokkitt:wght@300;400&family=Sorts+Mill+Goudy:ital@0;1&display=swap'); // Simple HTML5 reset. Not comprehensive but sufficient. * { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; margin: 0; padding: 0; } article,aside,details,figcaption,figure, footer,header,hgroup,menu,nav,section { display:block; } html { --color-accent: #EEE; --color-primary: #222; --font-heading: 'Monda'; --font-weight-heading: bold; --font-body: 'Cantarell'; --font-size-body: 12px; --font-weight-body: normal; background-color: var(--color-accent); } body { font-family: var(--font-body); font-size: var(--font-size-body); font-weight: var(--font-weight-body); } #ruler { background: red; display: none; position: absolute; width: 100%; height: 1px; } h1 { font-variant: small-caps; } p { margin: 0.5em 0; } section { h2 { font-variant: small-caps; width: 100%; } h4 { display: inline-block; font-style: italic; font-weight: var(--font-weight-body); } &#technologies-section h4{ margin-top: 0.25em; &:after { content: ":"; } } &#projects-section, &#projects-section-2, &#technologies-section, &#jobs-section, &#jobs-section-2 { a.nojs { color: var(--color-primary); text-decoration: none; &:after { content: ","; } &:last-of-type:after { content: ""; } } ol { display: inline; list-style: none; padding: 0; li { display: inline; &:after { content: ","; } &:last-of-type:after { content: ""; } } } } &#skills-section { ol { list-style: disc; padding-left: 1em; } } } @media screen { h1, h2, h3, h4, h5 { font-family: var(--font-heading); } body { font-family: var(--font-body); font-size: 125%; margin: 12rem auto 0 auto; width: 50rem; } header { background-color: var(--color-primary); color: var(--color-accent); padding-left: calc(50% - 25rem); padding-right: calc(50% - 25rem); padding-bottom: 2rem; position: absolute; left: 0; right: 0; top: 0; transition: all 0.2s; z-index: 3; h1 { font-size: 5rem; text-align: center; } h2 { bottom: 1rem; font-family: Cantarell; font-size: 1.5rem; position: absolute; &:nth-of-type(2) { right: calc(50% - 25rem); } a { color: #888; } } } header.fixed { padding-bottom: 0; position: fixed; h1 { display: inline-block; font-size: 2rem; text-align: left; } h2 { display: inline-block; right: calc(50% - 25rem); bottom: 0.5rem; } h2:last-of-type { display: none; } } nav#sectionNav { position: fixed; left: calc(50% - 45rem); text-align: right; width: 18rem; ul { list-style: none; li a { color: var(--color-primary); font-family: Monda; font-variant: small-caps; font-size: medium; text-decoration: none; } } } section { a.anchor { display: block; position: relative; top: -3rem; visibility: hidden; } h2 { border-bottom: solid thin var(--color-primary); } & > div { margin-bottom: 2rem; } &#jobs-section div.job { position: relative; span.duration { position: absolute; right: 0; top: 0.6rem; } } } #glass-pane { display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index: 1; } } @media print { html { --color-accent: white; --color-primary: black; --font-body: 'Newsreader'; --font-weight-body: 300; } body { align-content: start; display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: auto auto 1fr auto auto 1fr; margin: 1em; } h1 { font-family: var(--font-heading); font-size: 1.75em; } h2 { font-family: var(--font-heading); font-size: 1.3333em; } h3 { font-family: var(--font-heading); font-size: 1em; font-weight: 400; } h4 { font-family: var(--font-body); font-size: 0.9em; } h5 { display: inline-block; font-family: var(--font-body); font-size: 0.85em; } nav, body > input { display: none; } header { align-items: end; background-color: var(--color-accent); border-bottom: solid thin var(--color-primary); color: var(--color-primary); grid-column: span 2; grid-row: 1; position: relative; width: 100%; display: grid; grid-template-columns: 50% 50%; h1 { grid-column: 1; grid-row: 1 / span 2; margin-bottom: -.25rem; } h2 { grid-column: 2; font-size: 1em; font-weight: var(--font-weight-body); text-align: end; a { color: var(--color-primary); text-decoration: none; } } } aside { font-size: 0.85em; font-style: italic; } section { margin: 0; padding: 1em 2em 2em 0; a.anchor { display: none; } & > div { margin-bottom: 1em; } .description { grid-column: 1 / span 3; grid-row: 3; margin: 0.5em; font-size: 0.85em; } &#personal-brief-section { grid-column: 1; grid-row: 2; } &#projects-section, &#projects-section-2 { h3, h4 { display: inline-block; } h4::before { content: " — "; } } &#projects-section { grid-column: 2; grid-row: 2 / span 2; } &#projects-section-2 { grid-column: 2; grid-row: 4 / span 3; } &#skills-section { grid-column: 1; grid-row: 4; h3 { margin-top: 0.5em; } } &#jobs-section { grid-column: 1; grid-row: 7; } &#jobs-section-2 { grid-column: 2; grid-row: 7; } &#jobs-section, &#jobs-section-2 { & > .job { align-items: baseline; display: grid; grid-template-columns: auto auto 1fr; margin-right: 1em; .company { grid-column: 1; grid-row: 1; } .division { grid-column: 2 / span 2; grid-row: 1; margin-left: 0.25em; &::after { content: ""; } &::before { content: " — "; } } .title { grid-column: 1 / span 2; grid-row: 2; } .duration { grid-column: 3; grid-row: 2; justify-self: end; } } } &#education-section { grid-column: 1; grid-row: 5; } &#references-section { grid-column: 1; grid-row: 6; h2, div { display: inline-block; } h2 { width: unset; } div::before { content: " — "; } div { font-style: italic; margin-left: 0.5em; } } &#technologies-section { grid-column: 1; grid-row: 3; } } }