/* CV */ body .cv-header { display: flex; align-items: center; padding: 0.5rem; flex-direction: row; flex-wrap: wrap; gap: 1rem; } body .cv-header h1 { font-size: 2rem; font-weight: bolder; flex: 1 0 auto; } body .cv-header h1 span { font-size: 1.1rem; font-weight: 300; } body .cv-header address { flex: 1 0 auto; align-self: end; text-align: end; font-style: normal; font-size: 0.9rem; line-height: 1.6; } body .cv-header address a { display: block; white-space: pre; } body .cv-header address a::after { margin-inline-start: 0.5rem; display: inline-block; position: relative; right: 0.5pt; background-size: 1rem 1rem; width: 1rem; height: 1rem; bottom: -2pt; right: 2pt; } body .cv-header address a[href*="drewedgar.com"]::after { content: '🌐'; } body .cv-header address a[href^="mailto"]::after { content: '📧'; } body .cv-header address a[href^="tel"]::after { content: '📞'; } body .cv-header address a[href^="https://www.linkedin.com"]::after { content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 72 72'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M8,72 L64,72 C68.418278,72 72,68.418278 72,64 L72,8 C72,3.581722 68.418278,-8.11624501e-16 64,0 L8,0 C3.581722,8.11624501e-16 -5.41083001e-16,3.581722 0,8 L0,64 C5.41083001e-16,68.418278 3.581722,72 8,72 Z' fill='%23007EBB'/%3E%3Cpath d='M62,62 L51.315625,62 L51.315625,43.8021149 C51.315625,38.8127542 49.4197917,36.0245323 45.4707031,36.0245323 C41.1746094,36.0245323 38.9300781,38.9261103 38.9300781,43.8021149 L38.9300781,62 L28.6333333,62 L28.6333333,27.3333333 L38.9300781,27.3333333 L38.9300781,32.0029283 C38.9300781,32.0029283 42.0260417,26.2742151 49.3825521,26.2742151 C56.7356771,26.2742151 62,30.7644705 62,40.051212 L62,62 Z M16.349349,22.7940133 C12.8420573,22.7940133 10,19.9296567 10,16.3970067 C10,12.8643566 12.8420573,10 16.349349,10 C19.8566406,10 22.6970052,12.8643566 22.6970052,16.3970067 C22.6970052,19.9296567 19.8566406,22.7940133 16.349349,22.7940133 Z M11.0325521,62 L21.769401,62 L21.769401,27.3333333 L11.0325521,27.3333333 L11.0325521,62 Z' fill='%23FFF'/%3E%3C/g%3E%3C/svg%3E"); } body .cv-header address a[href^="https://bsky.app/"]::after { content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 360 320'%3E%3Cpath fill='%2318a2f7' d='M180 142c-16.3-31.7-60.7-90.8-102-120C38.5-5.9 23.4-1 13.5 3.4 2.1 8.6 0 26.2 0 36.5c0 10.4 5.7 84.8 9.4 97.2 12.2 41 55.7 55 95.7 50.5-58.7 8.6-110.8 30-42.4 106.1 75.1 77.9 103-16.7 117.3-64.6 14.3 48 30.8 139 116 64.6 64-64.6 17.6-97.5-41.1-106.1 40 4.4 83.5-9.5 95.7-50.5 3.7-12.4 9.4-86.8 9.4-97.2 0-10.3-2-27.9-13.5-33C336.5-1 321.5-6 282 22c-41.3 29.2-85.7 88.3-102 120Z'/%3E%3C/svg%3E"); } body .cv-header address a[href^="https://scholar.google.com"]::after { content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ctitle%3EGoogle Scholar icon%3C/title%3E%3Cpath d='M12 24a7 7 0 1 1 0-14 7 7 0 0 1 0 14zm0-24L0 9.5l4.838 3.94A8 8 0 0 1 12 9a8 8 0 0 1 7.162 4.44L24 9.5z' fill='%23007BFF'/%3E%3C/svg%3E"); } /* CV content */ body .cv-content { display: grid; grid-template-columns: max-content 1fr; row-gap: 0.75rem; } body .cv-content > section { grid-column: 1 / 3; width: 100%; display: grid; grid-template-columns: subgrid; justify-items: stretch; align-items: start; row-gap: 0.75rem; column-gap: 1rem; border-block-start: 2px solid var(--accent-color-normal); padding-block-start: 0.75rem; padding-inline: 0.5rem; margin-inline: 0.25rem; line-height: 1.4; } body .cv-content > section > h2 { grid-column: 1 / span 1; margin-block-start: 0.2rem; line-height: 1; font-size: 1.1rem; font-weight: 200; text-transform: uppercase; } body .cv-content > section > p, body .cv-content > section > section { grid-column: 2 / 3; } body .cv-content > section > section { display: grid; gap: 0.25rem; } body .cv-content > section > section > header { display: grid; grid-template-columns: 1fr max-content; column-gap: 0.25rem; } body .cv-content > section > section > header > h3 { grid-column: 1 / span 1; font-size: 1rem; font-weight: bolder; white-space: wrap; overflow: hidden; } body .cv-content > section > section > header > span { grid-column: 1; font-weight: 200; } body .cv-content > section > section > header > span.date { grid-column: 2; grid-row: 1; justify-self: end; } body .cv-content > section > section > ul { padding-inline-start: 1rem; } @media screen and (max-width: 50rem) { body { padding-inline: 1rem; } body .cv-content > section { margin-bottom: 1rem; row-gap: 1.5rem; } body .cv-content > section > section { margin-bottom: 2rem; row-gap: 1rem; } body .cv-content > section > section, body .cv-content > section > p { grid-column-start: 1; } body .cv-content > section > section > header > h3 { grid-column-end: span 2; } body .cv-content > section > section > header > span.date { grid-row: 2; } body .cv-content > section > h2 { grid-column-end: span 2; justify-self: center; font-size: 1.25rem; } } .specialisation, .publisherNote, .noteLink { font-style: italic; } .author { text-decoration-line: underline; text-decoration-style: dotted; } #profilePic { object-fit: cover; height: 4em; width: 4em; box-shadow: 0.25em 0.25em var(--accent-color-normal); } /* supervisor: inline on wide, block (no pipe) on narrow */ .supervisor { display: inline; } @media screen and (max-width: 50rem) { .supervisor { display: block; margin-top: 0.25rem; } .supervisor::before { content: ""; } } /* specialisation: inline on wide, block (no pipe) on narrow */ .specialisation { display: inline; } .specialisation::before { content: "| "; } @media screen and (max-width: 50rem) { .specialisation { display: block; margin-top: 0.25rem; } .specialisation::before { content: ""; } } /* skills */ .skills span { font-size: 0.8rem; } /* repeated information */ .repeated { font-style: italic; font-weight: 300; } /* CV print button */ .printButton { position: fixed; text-decoration: none; border: max(0.15vw, 1.5px) solid var(--border-color-normal); padding: max(0.4vw, 4px) max(0.8vw, 8px); border-right: none; border-top-left-radius: max(0.5vw, 5px); border-bottom-left-radius: max(0.5vw, 5px); right: 0%; bottom: 10%; box-shadow: -0.2vw 0.2vw 0.5vw rgba(0,0,0,0.15); background-color: var(--background); z-index: 1; } .printButton svg { width: max(1.5vw, 1.5vh, 25px); height: max(2vw, 2vh, 40px); fill: var(--background); stroke: var(--text-color-normal); } .printButton:hover { background-color: var(--active-color-normal); }