:root{--page-gutter:5%;--section-space:clamp(40px,5vw,72px)}
header,footer{width:100%;padding-left:var(--page-gutter);padding-right:var(--page-gutter)}
.intro,.info,.resume,.detail,.projects-heading,.projects{padding-left:var(--page-gutter);padding-right:var(--page-gutter)}
.info,.resume{padding-top:var(--section-space)}
.projects-heading{padding-top:var(--section-space);padding-bottom:36px}
.info-body{gap:clamp(32px,4vw,70px)}
.resume-layout{gap:clamp(32px,5vw,90px)}
.intro>div:not(.ambient-motion),.info-grid>div,.resume-layout>div,.resume-layout>aside{min-width:0}
.home-intro{gap:clamp(32px,4vw,64px)}
.home-intro>div:not(.ambient-motion):first-of-type{flex:1}
.home-intro .intro-aside{flex:0 0 235px}
.resume-job-top{flex-wrap:wrap;gap:6px 20px}.resume-date{white-space:nowrap}
footer{padding-top:64px;padding-bottom:36px;gap:24px}footer small{margin-top:0}
.is-home{display:flex;flex-direction:column;min-height:100svh}
.is-home main{width:100%;flex:1;display:flex;flex-direction:column}
.is-home .home-intro{flex:1;min-height:0;padding-top:64px;padding-bottom:64px}
.is-home footer{padding-top:32px}
@media(min-width:701px) and (max-width:1200px){.info-body .info-grid{grid-template-columns:1fr;gap:24px}}
@media(max-width:900px){.home-intro{display:block}.home-intro .intro-aside{margin-top:32px;margin-bottom:0;max-width:320px}}
@media(max-width:700px){
 :root{--page-gutter:6%}
 header{gap:20px;padding-top:24px;padding-bottom:24px;align-items:center}
 header nav{gap:16px;margin-left:auto}
 .home-intro h1,.info h1{font-size:clamp(32px,6.3vw,44px);line-height:1.12}
 .is-home .home-intro{padding-top:48px;padding-bottom:48px}
 .intro-aside{max-width:320px}
 .info-body{margin-top:40px;gap:36px}
 .resume-layout{gap:32px}.resume-heading h1{font-size:clamp(36px,8vw,48px)}
 .project-navigation{gap:24px;flex-wrap:wrap}
 .projects .project-copy{padding-left:22px;padding-right:22px}
 footer{padding-top:48px;padding-bottom:28px}
}

/* Preserve the supplied artwork's native proportions above the caption. */
.projects .project{height:auto;min-height:0;max-height:none}
.projects .project img{position:static;display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;transform:none}
.projects .project-copy{margin-top:0}
@media(hover:hover) and (pointer:fine){
 .projects .project{padding-bottom:80px}
}
.footer-socials{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px 18px}
.footer-socials a{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.social-icon{display:inline-grid;place-items:center;width:22px;height:22px;flex:none;color:#fff;background:#242428;border-radius:5px}.social-icon svg{width:18px;height:18px;display:block}[data-theme=dark] .social-icon{background:transparent}
.info-socials{display:flex;flex-wrap:wrap;gap:12px 18px}
