/* Critical CSS for above-the-fold content, delivered inline to increase first paint performance */ /*! purgecss start ignore */ /* Typefaces */ /* roboto-slab-100normal - latin */ @font-face { font-family: 'Roboto Slab'; font-style: normal; font-display: swap; font-weight: 100; src: local('Roboto Slab Thin '), local('Roboto Slab-Thin'), url('/fonts/roboto-slab-latin-100.woff2') format('woff2'), url('/fonts/roboto-slab-latin-100.woff') format('woff'); /* Modern Browsers */ } /* roboto-slab-200normal - latin */ @font-face { font-family: 'Roboto Slab'; font-style: normal; font-display: swap; font-weight: 200; src: local('Roboto Slab Extra Light '), local('Roboto Slab-Extra Light'), url('/fonts/roboto-slab-latin-200.woff2') format('woff2'), url('/fonts/roboto-slab-latin-200.woff') format('woff'); /* Modern Browsers */ } /* roboto-slab-300normal - latin */ @font-face { font-family: 'Roboto Slab'; font-style: normal; font-display: swap; font-weight: 300; src: local('Roboto Slab Light '), local('Roboto Slab-Light'), url('/fonts/roboto-slab-latin-300.woff2') format('woff2'), url('/fonts/roboto-slab-latin-300.woff') format('woff'); /* Modern Browsers */ } /* roboto-slab-400normal - latin */ @font-face { font-family: 'Roboto Slab'; font-style: normal; font-display: swap; font-weight: 400; src: local('Roboto Slab Regular '), local('Roboto Slab-Regular'), url('/fonts/roboto-slab-latin-400.woff2') format('woff2'), url('/fonts/roboto-slab-latin-400.woff') format('woff'); /* Modern Browsers */ } /* roboto-slab-500normal - latin */ @font-face { font-family: 'Roboto Slab'; font-style: normal; font-display: swap; font-weight: 500; src: local('Roboto Slab Medium '), local('Roboto Slab-Medium'), url('/fonts/roboto-slab-latin-500.woff2') format('woff2'), url('/fonts/roboto-slab-latin-500.woff') format('woff'); /* Modern Browsers */ } /* roboto-slab-600normal - latin */ @font-face { font-family: 'Roboto Slab'; font-style: normal; font-display: swap; font-weight: 600; src: local('Roboto Slab SemiBold '), local('Roboto Slab-SemiBold'), url('/fonts/roboto-slab-latin-600.woff2') format('woff2'), url('/fonts/roboto-slab-latin-600.woff') format('woff'); /* Modern Browsers */ } /* roboto-slab-700normal - latin */ @font-face { font-family: 'Roboto Slab'; font-style: normal; font-display: swap; font-weight: 700; src: local('Roboto Slab Bold '), local('Roboto Slab-Bold'), url('/fonts/roboto-slab-latin-700.woff2') format('woff2'), url('/fonts/roboto-slab-latin-700.woff') format('woff'); /* Modern Browsers */ } /* roboto-slab-800normal - latin */ @font-face { font-family: 'Roboto Slab'; font-style: normal; font-display: swap; font-weight: 800; src: local('Roboto Slab ExtraBold '), local('Roboto Slab-ExtraBold'), url('/fonts/roboto-slab-latin-800.woff2') format('woff2'), url('/fonts/roboto-slab-latin-800.woff') format('woff'); /* Modern Browsers */ } /* roboto-slab-900normal - latin */ @font-face { font-family: 'Roboto Slab'; font-style: normal; font-display: swap; font-weight: 900; src: local('Roboto Slab Black '), local('Roboto Slab-Black'), url('/fonts/roboto-slab-latin-900.woff2') format('woff2'), url('/fonts/roboto-slab-latin-900.woff') format('woff'); /* Modern Browsers */ } /* fira-code-300normal - latin */ @font-face { font-family: 'Fira Code'; font-style: normal; font-display: swap; font-weight: 300; src: local('Fira Code Light '), local('Fira Code-Light'), url('/fonts/fira-code-latin-300.woff2') format('woff2'), url('/fonts/fira-code-latin-300.woff') format('woff'); /* Modern Browsers */ } /* fira-code-400normal - latin */ @font-face { font-family: 'Fira Code'; font-style: normal; font-display: swap; font-weight: 400; src: local('Fira Code Regular '), local('Fira Code-Regular'), url('/fonts/fira-code-latin-400.woff2') format('woff2'), url('/fonts/fira-code-latin-400.woff') format('woff'); /* Modern Browsers */ } /* fira-code-500normal - latin */ @font-face { font-family: 'Fira Code'; font-style: normal; font-display: swap; font-weight: 500; src: local('Fira Code Medium '), local('Fira Code-Medium'), url('/fonts/fira-code-latin-500.woff2') format('woff2'), url('/fonts/fira-code-latin-500.woff') format('woff'); /* Modern Browsers */ } /* fira-code-600normal - latin */ @font-face { font-family: 'Fira Code'; font-style: normal; font-display: swap; font-weight: 600; src: local('Fira Code SemiBold '), local('Fira Code-SemiBold'), url('/fonts/fira-code-latin-600.woff2') format('woff2'), url('/fonts/fira-code-latin-600.woff') format('woff'); /* Modern Browsers */ } /* fira-code-700normal - latin */ @font-face { font-family: 'Fira Code'; font-style: normal; font-display: swap; font-weight: 700; src: local('Fira Code Bold '), local('Fira Code-Bold'), url('/fonts/fira-code-latin-700.woff2') format('woff2'), url('/fonts/fira-code-latin-700.woff') format('woff'); /* Modern Browsers */ } /* Normalize */ /*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */ /* Document ========================================================================== */ /** * 1. Correct the line height in all browsers. * 2. Prevent adjustments of font size after orientation changes in iOS. */ html { line-height: 1.15; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ } /* Sections ========================================================================== */ /** * Remove the margin in all browsers. */ body { margin: 0; } /** * Render the `main` element consistently in IE. */ main { display: block; } /** * Correct the font size and margin on `h1` elements within `section` and * `article` contexts in Chrome, Firefox, and Safari. */ h1 { font-size: 2em; margin: 0.67em 0; } /* Grouping content ========================================================================== */ /** * 1. Add the correct box sizing in Firefox. * 2. Show the overflow in Edge and IE. */ hr { box-sizing: content-box; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ } /** * 1. Correct the inheritance and scaling of font size in all browsers. * 2. Correct the odd `em` font sizing in all browsers. */ pre { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ } /* Text-level semantics ========================================================================== */ /** * Remove the gray background on active links in IE 10. */ a { background-color: transparent; } /** * 1. Remove the bottom border in Chrome 57- * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */ abbr[title] { border-bottom: none; /* 1 */ text-decoration: underline; /* 2 */ text-decoration: underline dotted; /* 2 */ } /** * Add the correct font weight in Chrome, Edge, and Safari. */ b, strong { font-weight: bolder; } /** * 1. Correct the inheritance and scaling of font size in all browsers. * 2. Correct the odd `em` font sizing in all browsers. */ code, kbd, samp { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ } /** * Add the correct font size in all browsers. */ small { font-size: 80%; } /** * Prevent `sub` and `sup` elements from affecting the line height in * all browsers. */ sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; } sub { bottom: -0.25em; } sup { top: -0.5em; } /* Embedded content ========================================================================== */ /** * Remove the border on images inside links in IE 10. */ img { border-style: none; } /* Forms ========================================================================== */ /** * 1. Change the font styles in all browsers. * 2. Remove the margin in Firefox and Safari. */ button, input, optgroup, select, textarea { font-family: inherit; /* 1 */ font-size: 100%; /* 1 */ line-height: 1.15; /* 1 */ margin: 0; /* 2 */ } /** * Show the overflow in IE. * 1. Show the overflow in Edge. */ button, input { /* 1 */ overflow: visible; } /** * Remove the inheritance of text transform in Edge, Firefox, and IE. * 1. Remove the inheritance of text transform in Firefox. */ button, select { /* 1 */ text-transform: none; } /** * Correct the inability to style clickable types in iOS and Safari. */ button, [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; } /** * Remove the inner border and padding in Firefox. */ button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; } /** * Restore the focus styles unset by the previous rule. */ button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; } /** * Correct the padding in Firefox. */ fieldset { padding: 0.35em 0.75em 0.625em; } /** * 1. Correct the text wrapping in Edge and IE. * 2. Correct the color inheritance from `fieldset` elements in IE. * 3. Remove the padding so developers are not caught out when they zero out * `fieldset` elements in all browsers. */ legend { box-sizing: border-box; /* 1 */ color: inherit; /* 2 */ display: table; /* 1 */ max-width: 100%; /* 1 */ padding: 0; /* 3 */ white-space: normal; /* 1 */ } /** * Add the correct vertical alignment in Chrome, Firefox, and Opera. */ progress { vertical-align: baseline; } /** * Remove the default vertical scrollbar in IE 10+. */ textarea { overflow: auto; } /** * 1. Add the correct box sizing in IE 10. * 2. Remove the padding in IE 10. */ [type="checkbox"], [type="radio"] { box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ } /** * Correct the cursor style of increment and decrement buttons in Chrome. */ [type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; } /** * 1. Correct the odd appearance in Chrome and Safari. * 2. Correct the outline style in Safari. */ [type="search"] { -webkit-appearance: textfield; /* 1 */ outline-offset: -2px; /* 2 */ } /** * Remove the inner padding in Chrome and Safari on macOS. */ [type="search"]::-webkit-search-decoration { -webkit-appearance: none; } /** * 1. Correct the inability to style clickable types in iOS and Safari. * 2. Change font properties to `inherit` in Safari. */ ::-webkit-file-upload-button { -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */ } /* Interactive ========================================================================== */ /* * Add the correct display in Edge, IE 10+, and Firefox. */ details { display: block; } /* * Add the correct display in all browsers. */ summary { display: list-item; } /* Misc ========================================================================== */ /** * Add the correct display in IE 10+. */ template { display: none; } /** * Add the correct display in IE 10. */ [hidden] { display: none; } /*! purgecss end ignore */ /*! CC BY-SA 3.0 License | https://stackoverflow.com/a/36118384/1154965 */ @keyframes blink { 50% { opacity: 0; } 100% { opacity: 1; } } /* Default license header for non-vendor CSS source code that follows */ /*! MIT License | github.com/schnerring/hugo-theme-gruvbox */ /* Bootstrap 5 breakpoints See: https://getbootstrap.com/docs/5.0/layout/breakpoints/#available-breakpoints */ :root[data-theme="light"] { --bg: var(--bg0); --bg0: #fbf1c7; --bg0_h: #f9f5d7; --bg0_s: #f2e5bc; --bg1: #ebdbb2; --bg2: #d5c4a1; --bg3: #bdae93; --bg4: #a89984; --fg: var(--fg1); --fg0: #282828; --fg1: #3c3836; --fg2: #504945; --fg3: #665c54; --fg4: #7c6f64; --gray1: var(--fg4); --gray2: #928374; --red1: #cc241d; --red2: #9d0006; --green1: #98971a; --green2: #797403; --yellow1: #d79921; --yellow2: #b57614; --blue1: #458588; --blue2: #076678; --purple1: #b16286; --purple2: #8f3f71; --aqua1: #689d6a; --aqua2: #427b58; --orange1: #d65d0e; --orange2: #af3a03; } [data-theme="light"]:root .light--hidden { display: none; } :root[data-theme="dark"] { --bg: var(--bg0); --bg0: #282828; --bg0_h: #1d2021; --bg0_s: #32302f; --bg1: #3c3836; --bg2: #504945; --bg3: #665c54; --bg4: #7c6f64; --fg: var(--fg1); --fg0: #fbf1c7; --fg1: #ebdbb2; --fg2: #d5c4a1; --fg3: #bdae93; --fg4: #a89984; --gray1: var(--fg4); --gray2: #928374; --red1: #cc241d; --red2: #fb4934; --green1: #98971a; --green2: #b8bb26; --yellow1: #d79921; --yellow2: #fabd2f; --blue1: #458588; --blue2: #83a598; --purple1: #b16286; --purple2: #d3869b; --aqua1: #689d6a; --aqua2: #8ec07c; --orange1: #d65d0e; --orange2: #fe8019; } [data-theme="dark"]:root .dark--hidden { display: none; } :root { --primary: var(--blue1); --primary-alt: var(--blue2); } :root { --font-monospace: "Fira Code", "Lucida Console", Monaco, monospace; --font-sans-serif: Verdana, Helvetica, sans-serif; --font-serif: "Roboto Slab", Georgia, serif; } html { font-family: var(--font-serif); font-size: 1rem; scroll-behavior: smooth; } body { background: var(--bg); color: var(--fg); line-height: 1.675; word-wrap: break-word; } strong { letter-spacing: 0.35px; } a { color: inherit; text-decoration: none; } a.link--external::after { /* 2009 = Thin Space */ content: "\2009↗"; } img, video { border: 2px solid var(--bg1); height: auto; max-width: 100%; } figure { display: inline-block; } figcaption { color: var(--fg3); font-family: var(--font-serif); font-size: 0.9rem; } *::selection { color: var(--fg0); background: var(--bg4); } h1, h2, h3, h4, h5, h6 { color: var(--fg0); font-family: var(--font-monospace); font-weight: 300; line-height: 1.4; } h1 code, h2 code, h3 code, h4 code, h5 code, h6 code { font-size: 1em; } h2, h3, h4, h5, h6 { border-bottom: 1px solid var(--bg1); } h1, h2 { font-weight: 400; } h1 { font-size: 1.875rem; } h2 { font-size: 1.75rem; } h3 { font-size: 1.625rem; } @media (min-width: 768px) { h1 { font-size: 2.375rem; } h2 { font-size: 2rem; } h3 { font-size: 1.75rem; } } h4 { font-size: 1.5rem; } h5 { font-size: 1.375rem; } h6 { font-size: 1.25rem; } table { table-layout: fixed; border-collapse: collapse; width: 100%; margin: 2rem 0; } table, th, td { border: 1px solid var(--bg1); padding: 0.5rem; } hr { border: none; background: var(--bg1); height: 1px; margin: 3rem auto; width: 80%; } mark { background: var(--yellow1); color: var(--bg0); } abbr { text-underline-offset: 0.2rem; } blockquote, code, kbd, mark, pre { border-radius: 0.2rem; padding: 0 0.2em; } pre code { padding: 0; } blockquote, code, kbd, pre, th { background: var(--bg1); } code, kbd, pre, th { font-family: var(--font-monospace); } code code, kbd code, code kbd, kbd kbd { background: var(--bg2); } blockquote, pre { padding: 1rem; } pre { /* TODO is !important really needed because of Prism? */ background: var(--bg1) !important; overflow: auto; } pre code { background: none; } blockquote, blockquote.twitter-tweet { border-left: var(--primary-alt) 5px solid; margin: 0.5rem 0; } :is(blockquote,blockquote.twitter-tweet) code { background: var(--bg2); } :is(blockquote,blockquote.twitter-tweet) p:first-of-type { margin-top: 0; } :is(blockquote,blockquote.twitter-tweet) p:last-of-type { margin-bottom: 0; } blockquote.twitter-tweet { border-color: var(--blue2); color: inherit; font: inherit; font-size: inherit; line-height: inherit; } blockquote.twitter-tweet a { color: var(--blue2); } blockquote.twitter-tweet a:hover { color: var(--blue1); text-decoration: none !important; } pre::-webkit-scrollbar { height: 0.5rem; scrollbar-width: auto; } pre::-webkit-scrollbar-track { background: var(--bg2); border-radius: 0.2rem; } pre::-webkit-scrollbar-thumb { background: var(--bg4); border-radius: 0.2rem; } .layout { display: grid; grid-template-areas: "header" "main" "footer"; grid-template-rows: auto 1fr auto; height: 100vh; } main { align-items: start; display: grid; grid-area: main; grid-template-areas: "empty content sidebar"; grid-template-columns: 1fr minmax(0, 650px) 4fr; } header { background: var(--bg1); grid-area: header; } footer { grid-area: footer; } main, footer { margin: 0.5em 1.1em; } .content { grid-area: content; } .sidebar { display: none; flex-direction: column; grid-area: sidebar; margin-top: 3rem; position: sticky; top: 2rem; } @media (min-width: 992px) { .sidebar { display: flex; } } header { display: grid; font-family: var(--font-monospace); font-size: 1.125rem; grid-template-columns: auto auto 1fr auto; grid-template-areas: "heading search nav theme-toggle"; padding: 0.75rem; } .logo { color: var(--fg0); display: flex; font-weight: 700; grid-area: heading; } .logo:hover .logo__cursor { animation: 1s blink infinite; opacity: 1; } .logo__chevron, .logo__cursor { margin-left: 0.5rem; } .logo__cursor { opacity: 0; } .logo__text { display: none; } @media (min-width: 768px) { .logo__text { display: block; } } /*! purgecss start ignore */ .search { display: flex; grid-area: search; margin: 0 1rem; } #search__text { border: 1px solid var(--bg2); border-radius: 0.2rem; background: var(--bg2); caret-color: var(--fg); color: var(--fg); outline: none; padding: 0 0.5rem; width: 100%; } #search__text:hover { border-color: var(--bg3); } #search__text:focus { border-color: var(--bg4); } #search__text::placeholder { color: var(--fg3); } #search__text[type="search"]::-webkit-search-cancel-button { appearance: none; } #search__suggestions { background: var(--bg); border-radius: 0.2rem; box-shadow: 0 0.5rem 1rem var(--bg1); font-family: var(--font-serif); left: 0; margin-top: 2rem; position: absolute; width: 95vw; z-index: 1000; } @media (min-width: 768px) { .search { position: relative; } #search__suggestions { width: 60vw; } } .search__suggestions--hidden { display: none; } .search__suggestion-item { border-bottom: 1px dashed var(--bg2); display: grid; grid-template-columns: 1fr 2fr; } .search__suggestion-item:focus, .search__suggestion-item:focus-visible, .search__suggestion-item:hover { background: var(--bg1); cursor: pointer; outline: none; } .search__suggestion-item:last-child { border: none; } .search__suggestion-title, .search__suggestion-description { padding: 0 1rem; margin: 1rem 0; } .search__suggestion-title { font-weight: 700; } .search__suggestion-description { border-left: 1px solid var(--bg2); } .search__no-results { padding: 0.75rem; } /*! purgecss end ignore */ .theme__toggle { align-items: center; background: none; border: none; color: var(--yellow1); cursor: pointer; display: flex; grid-area: theme-toggle; margin: 0 1rem; } .theme__toggle:hover { color: var(--yellow2); } .theme__toggle svg { height: 28px; width: 28px; } /* TODO: simplify deep nesting */ nav#menu { align-items: center; display: flex; grid-area: nav; justify-content: flex-end; } nav#menu .menu__item { color: var(--fg); } nav#menu .menu__item:hover { color: var(--fg3); cursor: pointer; } nav#menu ul { list-style: none; margin: 0; padding: 0; } nav#menu ul.menu--horizontal { align-items: center; display: none; } nav#menu ul.menu--horizontal li { display: inline-block; margin: 0 0.75rem; } @media (min-width: 768px) { nav#menu ul.menu--horizontal { display: flex; } } nav#menu ul.menu--vertical { background: var(--fg0); bottom: 0; margin: 0; padding: 3rem; position: fixed; right: 0; top: 0; transform: translate(100%, 0); transition: transform 0.5s cubic-bezier(0.9, 0, 0.1, 1); width: 50%; z-index: 10; } nav#menu ul.menu--vertical .menu__item { color: var(--bg1); } nav#menu ul.menu--vertical .menu__item:hover { color: var(--bg4); } nav#menu .menu__burger { display: flex; height: 24px; width: 24px; } nav#menu .menu__burger > * { position: absolute; } nav#menu .menu__burger svg { width: inherit; z-index: 20; height: inherit; } nav#menu .menu__burger svg line { transition-duration: 0.5s; transition-property: stroke, opacity, transform; transition-timing-function: cubic-bezier(0.9, 0, 0.1, 1); } nav#menu .menu__burger svg line:nth-of-type(1) { transform-origin: center 6px; } nav#menu .menu__burger svg line:nth-of-type(2) { transform-origin: center 12px; } nav#menu .menu__burger svg line:nth-of-type(3) { transform-origin: center 18px; } nav#menu .menu__burger input { height: inherit; opacity: 0; width: inherit; z-index: 30; } :is(nav#menu .menu__burger input:checked) ~ ul.menu--vertical { transform: none; } :is(nav#menu .menu__burger input:checked) ~ svg { stroke: var(--bg1); } :is(nav#menu .menu__burger input:checked) ~ svg line:nth-of-type(1) { transform: translate(0, 6px) rotate(45deg); } :is(nav#menu .menu__burger input:checked) ~ svg line:nth-of-type(2) { opacity: 0; transform: scale(0.2); } :is(nav#menu .menu__burger input:checked) ~ svg line:nth-of-type(3) { transform: translate(0, -6px) rotate(-45deg); } @media (min-width: 768px) { nav#menu .menu__burger { display: none; } } .sidebar { font-family: var(--font-monospace); max-width: 350px; margin-left: auto; margin-right: auto; padding-left: 2.5rem; } .sidebar hr { margin: 1.5rem auto; } .sidebar svg { fill: var(--fg); } .sidebar__heading { font-size: 1.3rem; } aside.toc a { color: var(--primary-alt); } aside.toc a:hover { color: var(--primary); } aside.toc ul { list-style: none; margin: 0; padding: 0; } aside.toc ul ul { font-size: 0.9rem; margin-left: 0.5rem; } aside.toc ul li { line-height: 1.1; } aside.toc ul li a { display: block; padding: 0.2rem 0; } .jr-basics__image { background: var(--bg1); border: 2px solid var(--bg2); } .jr-basics__summary { color: var(--fg3); font-family: var(--font-serif); margin: 0.75rem 0; } .jr-basics__profile a:hover { color: var(--fg3); } .jr-basics__profile a:hover svg { fill: var(--fg3); } .tag-cloud { line-height: 1.1; text-align: justify; } .tag-cloud__tag:hover { color: var(--fg3); } .tag-cloud__tag--active { text-decoration: underline; } .post, .content-section { border-bottom: 2px dotted var(--bg1); padding: 2rem 0; } .post figure, .post img:not(figure img), .post video:not(figure video) { margin: 0.5rem 0; box-sizing: border-box; } .post-header, .post-content__read-more { font-family: var(--font-monospace); } .post-meta__author { font-weight: 700; } .post-content { margin: 1.3rem 0; } .post-content__read-more { color: var(--primary-alt); margin-top: 1.3rem; } .post-header a, .post-content a { color: var(--primary-alt); } .post-header a:hover, .post-content a:hover { color: var(--primary); } .post-tags { align-items: center; display: flex; flex-wrap: wrap; gap: 0.9rem; margin: 1rem 0; } .post-tag { font-size: 0.9rem; line-height: 1; } .post-tag::before { content: "#"; } .post-heading__anchor { display: none; } h1:hover .post-heading__anchor, h2:hover .post-heading__anchor, h3:hover .post-heading__anchor, h4:hover .post-heading__anchor, h5:hover .post-heading__anchor, h6:hover .post-heading__anchor { display: inline-block; } .jr__item-meta { flex-direction: column; } .jr__item-meta, .jr-basics__image, .jr-basics__item, .jr-basics__profile-icon, .jr-basics__profile-item { align-items: center; display: flex; } .jr-awards__title, .jr-certificates__name, .jr-education__area, .jr-projects__roles, .jr-publications__name, .jr-volunteer__position, .jr-work__position, .jr-basics__name { font-size: 1.125rem; font-weight: bold; } .jr-basics__item { flex-direction: column; text-align: center; } .jr-basics__item hr { margin: 1.5rem auto; } .jr-basics__image { border-radius: 50%; height: 250px; justify-content: center; overflow: hidden; width: 250px; } .jr-basics__name, .jr-basics__label, .jr-basics__summary { margin-top: 0.75rem; } .jr-basics__profile svg { height: 24px; width: 24px; } .jr-basics__profile, .jr-basics__profile-item { display: flex; } .jr-basics__profile-item { display: flex; padding: 0.2rem; } .jr-basics__profile--col { flex-direction: column; } .jr-basics__profile--row { flex-wrap: wrap; justify-content: space-evenly; } .jr-basics__profile-icon { padding: 0 0.75rem; } .jr__item-meta { font-family: var(--font-monospace); } .jr__item-meta { align-items: start; flex-flow: column; } @media (min-width: 768px) { .jr__item-meta { align-items: center; flex-flow: row wrap; } .jr__date, .jr__date-range, .jr-work__location { flex-grow: 1; text-align: right; } .jr-awards__awarder, .jr-publications__publisher, .jr-education__institution, .jr-volunteer__organization { flex-basis: 100%; } } .social-share { align-items: center; border-top: 2px dotted var(--bg1); display: flex; flex-wrap: wrap; gap: 0.9rem; margin: 3rem 0; padding-top: 3rem; } .social-share svg { fill: var(--fg); width: 24px; height: 24px; } .social-share svg.icon-tabler { fill: none; stroke: var(--fg); } .social-share__item { background: var(--bg1); padding: 0.5rem; display: flex; } /* Sticky social bar left @media (--xl) { .social-share { align-items: flex-start; border-top: none; flex-direction: column; position: fixed; top: 15%; left: 0; } .social-share__heading { display: none; } .social-share__item { transition: padding 0.2s ease-in; &:hover { padding: 0.5rem 1rem; } & svg { &:hover { fill: var(--fg); } &.icon-tabler { fill: none; &:hover { stroke: var(--fg); } } } } } */