/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */
html {
    font-family: sans-serif;
    line-height: 1.15;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

article,
aside,
footer,
header,
nav,
section {
    display: block
}

h1 {
    font-size: 2em;
    margin: 0.67em 0
}

figcaption,
figure,
main {
    display: block
}

figure {
    margin: 1em 40px
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

pre {
    font-family: monospace, monospace;
    font-size: 1em
}

a {
    background-color: transparent;
    -webkit-text-decoration-skip: objects
}

a:active,
a:hover {
    outline-width: 0
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    text-decoration: underline dotted
}

b,
strong {
    font-weight: inherit
}

b,
strong {
    font-weight: bolder
}

code,
kbd,
samp {
    font-family: monospace, monospace;
    font-size: 1em
}

dfn {
    font-style: italic
}

mark {
    background-color: #ff0;
    color: #000
}

small {
    font-size: 80%
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -0.25em
}

sup {
    top: -0.5em
}

audio,
video {
    display: inline-block
}

audio:not([controls]) {
    display: none;
    height: 0
}

img {
    border-style: none
}

svg:not(:root) {
    overflow: hidden
}

button,
input,
optgroup,
select,
textarea {
    font-family: sans-serif;
    font-size: 100%;
    line-height: 1.15;
    margin: 0
}

button,
input {
    overflow: visible
}

button,
select {
    text-transform: none
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
    -webkit-appearance: button
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
    outline: 1px dotted ButtonText
}

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal
}

progress {
    display: inline-block;
    vertical-align: baseline
}

textarea {
    overflow: auto
}

[type="checkbox"],
[type="radio"] {
    box-sizing: border-box;
    padding: 0
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
    height: auto
}

[type="search"] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

details,
menu {
    display: block
}

summary {
    display: list-item
}

canvas {
    display: inline-block
}

template {
    display: none
}

[hidden] {
    display: none
}

@font-face {
    font-family: 'Lekton';
    font-style: normal;
    font-weight: 400;
    src: local("Lekton"), local("Lekton-Regular"), url(/assets/fonts/SZc43FDmLaWmWpBuVh3pv0Db6AtO.woff2) format("woff2");
    unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF
}

@font-face {
    font-family: 'Lekton';
    font-style: normal;
    font-weight: 400;
    src: local("Lekton"), local("Lekton-Regular"), url(/assets/fonts/SZc43FDmLaWmWpBuWB3pv0Db6A.woff2) format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD
}

@font-face {
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 600;
    src: local("Poppins SemiBold"), local("Poppins-SemiBold"), url(/assets/fonts/pxiByp8kv8JHgFVrLEj6Z11lFd2JQEl8qw.woff2) format("woff2");
    unicode-range: U+0900-097F, U+1CD0-1CF6, U+1CF8-1CF9, U+200C-200D, U+20A8, U+20B9, U+25CC, U+A830-A839, U+A8E0-A8FB
}

@font-face {
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 600;
    src: local("Poppins SemiBold"), local("Poppins-SemiBold"), url(/assets/fonts/pxiByp8kv8JHgFVrLEj6Z1JlFd2JQEl8qw.woff2) format("woff2");
    unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF
}

@font-face {
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 600;
    src: local("Poppins SemiBold"), local("Poppins-SemiBold"), url(/assets/fonts/pxiByp8kv8JHgFVrLEj6Z1xlFd2JQEk.woff2) format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD
}

html {
    font-size: 62.5%
}

body {
    background: #fff;
    color: #000;
    font-family: "Poppins", Helvetica, Arial, sans-serif;
    font-size: 1.8em;
    line-height: 1.6;
    font-weight: 600;
    -webkit-font-smoothing: antialiased
}

h1,
.h1 {
    color: #000;
    font-size: 2.7rem;
    font-weight: 600;
    line-height: 1;
    margin: 0
}

h2,
.h2,
.projects-list .img-wrapper:before {
    color: #333;
    display: block;
    font-family: "Lekton", Helvetica, Arial, sans-serif;
    font-size: 1.5rem;
    font-weight: 400;
    letter-spacing: .2rem;
    line-height: 1;
    margin: 0 0 0.5rem;
    text-transform: uppercase
}

h3,
.h3 {
    color: #000;
    font-family: "Poppins", Helvetica, Arial, sans-serif;
    font-size: 1.8rem;
    font-weight: 600;
    line-height: 1;
    margin: 0
}

p {
    margin: 0
}

a {
    color: #000;
    text-decoration: none
}

ul {
    list-style-type: none;
    margin: 0;
    padding: 0
}

img {
    display: block;
    max-width: 100%
}

hr {
    background: #333;
    border: 0;
    display: block;
    height: 1px;
    margin: 3rem 0
}

@media (min-width: 750px) {
    hr {
        margin: 4.5rem 0
    }
}

abbr[title] {
    border-bottom: 1px dotted #000;
    text-decoration: none
}

code {
    background: #fff;
    border: 1px solid #333;
    border-radius: 3px;
    font-family: "Lekton", Helvetica, Arial, sans-serif;
    font-size: 1.5rem;
    padding: .1rem .4rem
}

code var {
    font-style: italic
}

dl {
    margin: 0 0 3rem
}

dl dt,
dl dd {
    font-family: "Lekton", Helvetica, Arial, sans-serif
}

dl dt {
    font-weight: 600
}

dl dd {
    font-weight: 400
}

.responsive-table {
    margin-bottom: 3rem
}

@media (max-width: 400px) {
    .responsive-table {
        display: block;
        overflow-x: scroll;
        max-width: 400px
    }

    .responsive-table th,
    .responsive-table td {
        min-width: 10rem
    }
}

table {
    border-collapse: collapse;
    width: 100%
}

table thead td,
table thead th {
    font-weight: 600
}

table tbody>tr:nth-child(odd)>td,
table tbody>tr:nth-child(odd)>th {
    background: #f6f6f6
}

table th,
table td {
    font-family: "Lekton", Helvetica, Arial, sans-serif;
    font-weight: 400;
    text-align: left;
    padding: .5rem 1rem
}

blockquote {
    border-left: 0.6rem solid #000;
    padding-left: 2rem;
    margin: 0 0 3rem
}

blockquote p {
    font-style: italic
}

@media (min-width: 750px) {
    blockquote {
        padding-left: 3rem
    }
}

pre {
    margin: 0 0 3rem
}

.container {
    display: block;
    margin: 0 auto;
    max-width: 70em;
    padding: 0 3rem
}

.container:after {
    content: "";
    clear: both;
    display: block
}

.header {
    background: #fff;
    padding: 3rem 0
}

.header .container {
    display: flex;
    align-items: center
}

.header a.link {
    margin-left: 12px;
    font-family: Helvetica, Arial, sans-serif;
    font-weight: normal
}

.logo,
.nav a {
    float: left;
    font-size: 1.8rem;
    font-weight: 600;
    margin: 0;
    line-height: 1
}

.divider {
    flex: 1
}

.nav {
    float: right
}

.content {
    background: #fff;
    margin-bottom: 31.24rem;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1
}

@media (min-width: 750px) {
    .content {
        margin-bottom: 23.42rem
    }
}

.intro,
.projects {
    padding: 0 0 5rem
}

@media (min-width: 750px) {
    .intro h1 {
        font-size: 2.7rem;
        max-width: 66.66666%
    }

    .intro p {
        font-size: 100%;
        max-width: 66.66666%
    }
}

.intro a {
    text-decoration: underline;
    color: #2865a7
}

.intro p {
    margin-top: 16px
}

.intro .photo {
    border-radius: 4px;
    overflow: hidden;
    display: inline-block;
    margin-bottom: 1rem
}

.intro .photo img {
    width: 100px
}

.project-title {
    margin: 1rem 0
}

.description {
    color: #333;
    display: block;
    font-family: "Lekton", Helvetica, Arial, sans-serif;
    font-size: 1.5rem;
    font-weight: 400;
    letter-spacing: .1rem;
    line-height: 1;
    margin: 0 0 1rem
}

@media (min-width: 550px) {
    .projects-list {
        margin-left: -1.5rem;
        margin-right: -1.5rem
    }

    .projects-list:after {
        content: "";
        clear: both;
        display: block
    }

    .projects-list li {
        float: left;
        width: 50%
    }

    .projects-list a {
        padding: 0 1.5rem
    }
}

@media (min-width: 750px) {
    .projects-list li {
        width: 33.33333%
    }
}

.projects-list li {
    margin-bottom: 3rem
}

.projects-list li:last-child {
    margin-bottom: 0
}

.projects-list a {
    display: block
}

.projects-list a:hover .img-wrapper:before {
    opacity: 1
}

.projects-list a:hover .img-wrapper:after {
    opacity: .45
}

.projects-list .img-wrapper {
    position: relative
}

.projects-list .img-wrapper:before {
    content: "View Project";
    color: #fff;
    font-weight: 800;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -.5rem;
    margin-left: -4.4rem;
    opacity: 0;
    -webkit-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out;
    -webkit-transition-delay: .25s;
    transition-delay: .25s;
    z-index: 2
}

.projects-list .img-wrapper:after {
    background: #000;
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0;
    -webkit-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out;
    z-index: 1
}

.projects-list img {
    width: 100%
}

.project {
    left: 0;
    position: relative;
    top: 0
}

@media (min-width: 750px) {
    .project {
        margin-top: -21rem
    }

    .project .article-wrapper {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0
    }
}

.project .container {
    max-width: 100%
}

.project article {
    margin-bottom: 3rem;
    font-family: Helvetica, Arial, sans-serif;
    font-weight: normal
}

.project article ul {
    list-style-type: disc
}

@media (min-width: 750px) {
    .project article {
        float: right;
        right: 0;
        width: 40%;
        position: absolute;
        right: 5%
    }
}

.project article a {
    text-decoration: underline;
    color: #2865a7
}

.project aside {
    margin-left: -3rem;
    margin-right: -3rem
}

@media (min-width: 550px) {
    .project aside:after {
        content: "";
        clear: both;
        display: block
    }
}

@media (min-width: 750px) {
    .project aside {
        float: left;
        width: 55%
    }
}

.project .project-meta {
    margin: 3rem 0 0
}

@media (min-width: 750px) {
    .project .project-meta {
        margin: 5rem 0 0;
        max-width: 70%
    }
}

.project .h2,
.project .projects-list .img-wrapper:before,
.projects-list .project .img-wrapper:before {
    margin: 3rem 0 .5rem
}

.project .h2:first-of-type,
.project .projects-list .img-wrapper:first-of-type:before,
.projects-list .project .img-wrapper:first-of-type:before {
    margin-top: 0
}

.project h1 a {
    text-decoration: underline
}

.project li {
    margin-bottom: 1.5rem
}

.project li:last-child {
    margin-bottom: 0
}

.project img {
    width: 100%
}

.project-navigation {
    padding: 5rem 0;
    background: #555
}

.project-navigation a {
    color: #fff;
    display: inline-block
}

.project-navigation a .h2,
.project-navigation a .projects-list .img-wrapper:before,
.projects-list .project-navigation a .img-wrapper:before,
.project-navigation a h2 {
    color: #fff
}

.project-navigation a:hover h2:after {
    visibility: visible;
    -webkit-transform: scaleX(1);
    transform: scaleX(1)
}

.project-navigation a:hover.prev span {
    left: 7px
}

.project-navigation a:hover span:after {
    left: 7px
}

.project-navigation a:hover span:before {
    left: -7px
}

.project-navigation a:nth-of-type(1),
.project-navigation a:nth-of-type(2) {
    display: table;
    margin: 0 auto;
    text-align: center
}

@media (min-width: 400px) {

    .project-navigation a:nth-of-type(1),
    .project-navigation a:nth-of-type(2) {
        display: inline-block;
        margin: 0;
        text-align: left
    }
}

@media (min-width: 400px) {
    .project-navigation a:nth-of-type(1) {
        float: left
    }
}

.project-navigation a:nth-of-type(2) {
    margin-top: 3rem
}

@media (min-width: 400px) {
    .project-navigation a:nth-of-type(2) {
        float: right;
        margin-top: 0
    }
}

.project-navigation a.next span:after {
    content: "\02192"
}

.project-navigation a.prev span {
    position: relative;
    left: 0;
    -webkit-transition: all .3s ease-in-out 0s;
    transition: all .3s ease-in-out 0s
}

.project-navigation a.prev span:before {
    content: "\02190"
}

.project-navigation span:after,
.project-navigation span:before {
    position: relative;
    left: 0;
    -webkit-transition: all .3s ease-in-out 0s;
    transition: all .3s ease-in-out 0s
}

.project-navigation h2 {
    display: inline-block;
    font-size: 1.8rem;
    position: relative
}

.project-navigation h2:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 1px;
    bottom: -4px;
    left: 0;
    background-color: #fff;
    visibility: hidden;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: all .3s ease-in-out 0s;
    transition: all .3s ease-in-out 0s
}

.footer {
    background: #fafafa;
    bottom: 0;
    left: 0;
    padding: 5rem 0;
    position: fixed;
    right: 0;
    z-index: -1
}

@media (min-width: 750px) {

    .contact,
    .follow {
        float: left;
        margin-bottom: 0;
        width: 33.33333%
    }
}

.contact,
.follow {
    margin-bottom: 3rem
}

.publications,
.detailed-work {
    padding: 0 0 5rem
}

.publication-list {
    list-style: none;
    margin: 2rem 0 0;
    padding: 0
}

.publication-list li {
    display: flex;
    gap: 1.5rem;
    margin-bottom: 2rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid #e9e9e9
}

.publication-list li:last-child {
    border-bottom: 0;
    margin-bottom: 0;
    padding-bottom: 0
}

.pub-year {
    min-width: 4rem;
    color: #333;
    font-family: "Lekton", Helvetica, Arial, sans-serif;
    font-size: 1.4rem;
    letter-spacing: .1rem
}

.pub-body {
    max-width: 52rem
}

.pub-body h3 {
    margin: 0 0 .5rem;
    font-size: 1.9rem
}

.pub-body p {
    margin: .4rem 0
}

.pub-meta,
.detail-meta {
    color: #333;
    font-family: "Lekton", Helvetica, Arial, sans-serif;
    font-size: 1.4rem;
    letter-spacing: .08rem
}

.detail-list.compact {
    max-width: 52rem
}

.detail-list.compact li {
    margin-bottom: 1rem
}

.detail-cards {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
    margin-top: 2rem
}

@media (min-width: 750px) {
    .detail-cards {
        grid-template-columns: 1fr 1fr
    }
}

.detail-card {
    border: 1px solid #ececec;
    border-radius: 6px;
    padding: 2rem;
    background: #fff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04)
}

.detail-card h3 {
    margin-top: 0;
    margin-bottom: .75rem
}

.detail-card p {
    margin-top: .9rem
}

.publication-list.compact li {
    margin-bottom: 1.5rem;
    padding-bottom: 1.5rem
}

.detailed-projects .project-tldr {
    color: #4a4a4a;
    font-size: 1.45rem;
    line-height: 1.65;
    margin-top: .4rem
}

.detail-cards.compact {
    grid-template-columns: 1fr
}

.detail-card p {
    line-height: 1.7
}

.publication-list a,
.detail-card a,
.project-tldr a {
    text-decoration: underline;
    color: #2865a7
}

.research-highlights {
    padding: 0 0 5rem
}

.merged-list li {
    display: block;
    margin-bottom: 1.6rem;
    padding-bottom: 1.6rem
}

.pub-body.wide {
    max-width: 62rem
}

.pub-authors {
    color: #333;
    font-family: "Lekton", Helvetica, Arial, sans-serif;
    font-size: 1.3rem;
    letter-spacing: .02rem;
    margin: .35rem 0 .45rem
}

.pub-tldr {
    margin: .35rem 0;
    font-size: 1.5rem;
    line-height: 1.7
}

.other-projects .compact-project-list li {
    width: 100%;
    margin-bottom: 1.5rem
}

.other-projects .compact-project-list a {
    display: flex;
    align-items: flex-start;
    gap: 1.25rem;
    padding: 1rem 0
}

.small-thumb {
    width: 120px;
    min-width: 120px
}

.small-thumb img {
    width: 120px;
    height: 80px;
    object-fit: cover;
    border-radius: 6px
}

.project-copy {
    max-width: 46rem
}

.project-copy .project-title {
    margin-top: 0;
    margin-bottom: .35rem
}

.project-copy .description {
    margin: 0 0 .35rem
}

.research-list-section,
.other-projects {
    padding: 0 0 5rem
}

.compact-project-list li {
    width: 100%;
    margin-bottom: 1.5rem
}

.compact-project-list a {
    display: flex;
    align-items: flex-start;
    gap: 1.25rem;
    padding: 1rem 0
}

.small-thumb {
    width: 120px;
    min-width: 120px
}

.small-thumb img {
    width: 120px;
    height: 80px;
    object-fit: cover;
    border-radius: 6px
}

.project-copy {
    max-width: 46rem
}

.project-copy .project-title {
    margin-top: 0;
    margin-bottom: .35rem
}

@media (min-width: 1000px) {
    .content-with-preview {
        display: flex;
        align-items: flex-start;
        gap: 2.5rem
    }
}

.content-column {
    min-width: 0;
    flex: 1
}

.project-preview-panel {
    display: none
}

@media (min-width: 1000px) {
    .project-preview-panel {
        display: block;
        width: 36rem;
        min-width: 36rem;
        position: sticky;
        top: 10rem
    }
}

.preview-card,
.preview-modal-card {
    background: #fff;
    border: 1px solid #ececec;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    overflow: hidden
}

.preview-card {
    padding: 1.5rem
}

.preview-card.empty .preview-frame {
    display: none
}

.preview-eyebrow {
    color: #333;
    font-family: "Lekton", Helvetica, Arial, sans-serif;
    font-size: 1.2rem;
    letter-spacing: .08rem;
    margin-bottom: .5rem
}

.preview-title {
    margin: 0 0 .6rem
}

.preview-summary {
    font-size: 1.8rem;
    line-height: 1.65;
    margin-bottom: 1rem
}

.preview-image {
    width: 100%;
    border-radius: 8px;
    margin-bottom: 1rem
}

.preview-frame {
    width: 100%;
    height: 34rem;
    border: 1px solid #ececec;
    border-radius: 8px;
    background: #fff
}

.preview-close {
    appearance: none;
    border: 0;
    background: transparent;
    font-size: 2.4rem;
    line-height: 1;
    color: #666;
    cursor: pointer;
    float: right
}

.preview-modal {
    position: fixed;
    inset: 0;
    display: none;
    z-index: 20
}

.preview-modal.open {
    display: block
}

.preview-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.55)
}

.preview-modal-card {
    position: absolute;
    inset: 1rem;
    padding: 1.25rem;
    overflow: auto
}

.preview-modal-card .preview-frame {
    height: 60vh
}

body.preview-open {
    overflow: hidden
}

.pub-meta .project-preview-link,
.project-preview-link {
    text-decoration: underline
}

.project-preview-panel {
    display: none
}

@media (min-width: 1000px) {
    .project-preview-panel {
        display: block;
        width: 36rem;
        min-width: 36rem;
        position: sticky;
        top: 10rem
    }
}

.preview-card[hidden] {
    display: none !important
}

h1,
h2,
h3,
.project-title,
.preview-title {
    line-height: 1.2
}

.inline-action,
.card-trigger {
    font: inherit;
    color: inherit;
    background: transparent;
    border: 0;
    padding: 0;
    text-align: left;
    cursor: pointer
}

.inline-action {
    color: #2865a7;
    text-decoration: underline
}

.card-trigger {
    width: 100%;
    display: flex;
    align-items: flex-start;
    gap: 1.25rem
}

.card-trigger .project-title,
.publication-list h3,
.preview-title {
    line-height: 1.2
}

.preview-content {
    margin-top: 1rem;
    font-size: 1.45rem;
    line-height: 1.7
}

.preview-content p {
    margin-bottom: .9rem
}

.global-preview-panel {
    display: none
}

@media (min-width: 1000px) {
    .global-preview-panel {
        display: block;
        position: fixed;
        top: 12rem;
        right: max(2rem, calc((100vw - 70em) / 2));
        width: 34rem;
        max-height: calc(100vh - 14rem);
        overflow: auto;
        z-index: 8
    }
}

.hover-preview-item {
    outline: none
}

.hover-preview-item:hover,
.hover-preview-item:focus {
    opacity: 1
}

.small-thumb {
    width: 156px;
    min-width: 156px
}

.small-thumb img {
    width: 156px;
    height: 104px
}

.compact-project-list li {
    margin-bottom: 2rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid #e8eaee
}

.compact-project-list li:last-child {
    border-bottom: 0
}

.project-copy .project-tldr {
    font-weight: 400;
    color: #5a5a5a;
    margin-top: .55rem
}

@media (min-width: 1000px) {
    .global-preview-panel {
        width: 38rem;
        right: max(1.5rem, calc((100vw - 74em) / 2))
    }
}

.research-list-section,
.other-projects,
.publications {
    padding-bottom: 5rem
}

.compact-project-list {
    margin-top: 1.2rem
}

.compact-project-list li {
    margin-bottom: 1.35rem;
    padding-bottom: 1.35rem;
    border-bottom: 1px solid #e8eaee
}

.compact-project-list li:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0
}

.project-copy .project-tldr,
.project-tldr {
    font-family: inherit;
    font-weight: 400 !important;
    font-style: normal;
    letter-spacing: 0;
    color: #666
}

.project-copy .project-tldr strong,
.project-tldr strong,
.project-copy .project-tldr b,
.project-tldr b {
    font-weight: 400 !important
}

@media (min-width: 1000px) {
    .global-preview-panel {
        width: 42rem;
        right: max(1rem, calc((100vw - 78em) / 2))
    }
}

.preview-card {
    width: 100%
}

.about-me,
.education-short,
.publications,
.research-list-section,
.other-projects {
    padding-bottom: 5rem
}

.about-me h2,
.education-short h2 {
    margin-bottom: 2rem
}

.cv-line {
    margin-top: 1.2rem
}

.education-short p {
    max-width: 58rem
}

@media (min-width: 1000px) {
    .global-preview-panel {
        top: 9rem;
        width: 42rem;
        max-height: calc(100vh - 10rem)
    }
}

.preview-card {
    padding: 1.6rem
}

.preview-content {
    max-height: none;
    overflow: visible
}

.publications+.content.home-with-preview .research-list-section {
    padding-top: 0
}

body,
p,
li,
.project-copy .project-tldr,
.project-tldr,
.preview-summary,
.preview-content,
.pub-meta,
.pub-authors,
.education-short p {
    font-family: Arial, Helvetica, sans-serif
}

.about-me,
.education-short,
.publications,
.research-list-section,
.other-projects {
    padding-bottom: 4.2rem
}

.education-list {
    list-style: none;
    margin: 1.6rem 0 0;
    padding: 0
}

.education-list li {
    display: flex;
    gap: 1.5rem;
    margin-bottom: 1.6rem;
    padding-bottom: 1.6rem;
    border-bottom: 1px solid #e8eaee
}

.education-list li:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0
}

.edu-year {
    min-width: 6.5rem;
    color: #333;
    font-family: "Lekton", Helvetica, Arial, sans-serif;
    font-size: 1.35rem;
    letter-spacing: .08rem
}

.edu-body {
    max-width: 56rem
}

.edu-body h3 {
    margin: 0 0 .35rem;
    line-height: 1.2
}

.edu-body p {
    margin: 0;
    color: #666
}

.content.home-with-preview {
    position: relative
}

@media (min-width: 1000px) {
    .global-preview-panel {
        top: 9rem;
        right: max(1rem, calc((100vw - 78em) / 2));
        width: 40rem;
        max-height: calc(100vh - 11rem);
        overflow: visible
    }
}

.preview-card {
    width: 100%;
    box-sizing: border-box;
    overflow-x: hidden
}

.preview-image,
.preview-content img,
.preview-content video,
.preview-content iframe {
    max-width: 100%
}

.preview-content {
    overflow-wrap: anywhere;
    word-break: break-word
}

.preview-content a {
    word-break: break-word
}
