:root{--mobile-section-space:clamp(4rem, .5rem + 10vw, 6rem);--mobile-gutter:32px}@media (min-width:768px){html,body{-moz-text-size-adjust:100%;text-size-adjust:100%;overflow-x:hidden}@supports (overflow:clip){html,body{overflow-x:clip}}img{max-width:100%;height:auto}.skip-link{z-index:100;background:var(--fg);color:var(--bg);border-radius:.5rem;padding:.75rem 1.25rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:top .16s;position:fixed;top:-100px;left:1rem}.skip-link:focus-visible{outline:2px solid var(--bg);outline-offset:2px;top:1rem}}@media (max-width:767px){.skip-link{z-index:100;background:var(--fg);color:var(--bg);border-radius:.5rem;padding:.75rem 1.25rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:top .16s;position:fixed;top:-100px;left:1rem}.skip-link:focus-visible{outline:2px solid var(--bg);outline-offset:2px;top:1rem}html,body{-moz-text-size-adjust:100%;text-size-adjust:100%;overflow-x:hidden}@supports (overflow:clip){html,body{overflow-x:clip}}img{max-width:100%;height:auto}.site-container{width:min(1120px, calc(100% - var(--mobile-gutter)))}.section-block{padding-block:var(--mobile-section-space)}.section-eyebrow{letter-spacing:.18em;font-size:.72rem}.section-title{text-wrap:balance;margin-top:.7rem;font-size:clamp(1.35rem,.75rem + 2.9vw,1.75rem);line-height:1.12}.about .section-title,#projects .section-title,#skills .section-title,#github-activity .section-title,#pulse .section-title,#contact .section-title,.blogs .section-title,.theory .section-title{font-size:clamp(1.3rem,.75rem + 2.5vw,1.7rem)!important;line-height:1.15!important}.section-copy{font-size:.98rem;line-height:1.75}.badge-root{touch-action:pan-y}.hero-note-left{max-width:10rem;font-size:.88rem;top:5.25rem}.hero-skeleton-note-left{top:5.25rem;left:var(--mobile-gutter);width:8.5rem}.hero-skeleton-note-right{top:11.25rem;right:var(--mobile-gutter);width:10rem}.hero-skeleton-note i{height:.6rem}.hero-note-right{max-width:11rem;font-size:.88rem;top:11.25rem}.hero-name{font-size:clamp(3.35rem,15vw,5.5rem);bottom:8vw}.hero-skeleton-name{width:76vw;height:clamp(3.2rem,14vw,5rem);bottom:8vw}.hero-note-left{max-width:8.5rem}:root{--badge-w:clamp(180px, 50vw, 240px)}.projects-grid.projects-grid{grid-template-columns:1fr;gap:32px}.project-card-cover.project-card-cover{aspect-ratio:16/10;width:100%;max-height:260px}.project-card-cover.project-card-cover img{object-fit:cover;object-position:top center}.project-card{overflow-wrap:break-word}.project-card-body>button{min-height:2.75rem;padding-inline:.35rem}.projects-showcase-archive{min-height:2.75rem;font-size:.61rem}.projects-showcase.projects-showcase{grid-template-columns:minmax(0,1fr);width:100%;padding:0}.projects-showcase-aside{height:auto;padding:4rem var(--mobile-gutter) 3rem;border-bottom:1px solid #e4e1dc;border-right:0;position:relative;top:auto}.projects-showcase-aside .section-eyebrow{margin-bottom:.9rem}.projects-showcase-aside h2{max-width:12ch;font-family:var(--font-body), sans-serif;font-size:clamp(3rem,12vw,4.25rem);font-weight:400}.projects-showcase-intro{max-width:34rem;margin-top:1rem;font-size:.94rem}.projects-showcase-aside .projects-showcase-archive{margin-top:1.25rem}.projects-showcase-list{padding-inline:var(--mobile-gutter)}.projects-showcase-list .project-showcase-row{min-height:0;padding-block:2.5rem}.projects-showcase-list .project-showcase-row h3{font-family:var(--font-body), sans-serif;font-size:clamp(2.8rem,11vw,4rem);font-weight:400}.projects-showcase-list .project-showcase-description{font-family:var(--font-body), sans-serif;margin-top:.8rem;font-size:.9rem}.project-showcase-stack{gap:.35rem;margin-top:.75rem}.project-showcase-stack li{padding:.22rem .5rem;font-size:.62rem}.project-showcase-stack-row{gap:.45rem;margin-top:.75rem}.project-showcase-live-link{width:2.75rem;height:2.75rem}.blogs-grid.blogs-grid{justify-content:center;gap:2.5rem 1.5rem}.blog-card{overflow-wrap:break-word;margin-inline:auto}.theory img{width:96px;height:96px}.theory a span{overflow-wrap:break-word}a[href^=mailto\:]{overflow-wrap:anywhere}.project-detail .features-head{flex-wrap:wrap;row-gap:.5rem}.project-detail .prose-article{margin-top:2.5rem}.gh-graph-container{padding:0}.gh-graph-count{font-size:1rem}.gh-graph-svg{min-width:640px}.gh-commits-container{padding:1.25rem}.gh-tooltip{text-overflow:ellipsis;overflow:hidden}.gh-graph-scroll-wrapper{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}.writing{overflow-x:clip}.writing .w-column{padding-left:1.25rem;padding-right:1.25rem}.writing .w-article-head{padding-top:2.5rem}.writing .w-article-head:after{height:2.75rem}.writing .w-title{overflow-wrap:break-word;font-size:1.7rem;line-height:1.2}.writing .w-index-title{font-size:1.3rem;line-height:1.2}.writing .w-index-lede{white-space:normal;overflow-wrap:break-word;font-size:.875rem}.writing .w-subtitle{font-size:1.02rem}.writing .w-body{font-size:1rem;line-height:1.75}.writing .w-h2{font-size:1.4rem}.writing .w-h3{font-size:1.2rem}.writing .w-index-head{padding-top:1.25rem}.writing .w-index-logo{width:2.75rem;height:2.75rem}.writing .w-index-list{margin-top:2.25rem;padding-bottom:3.5rem}.writing .w-row-title{overflow-wrap:break-word;font-size:1rem}.writing .w-inline-code{white-space:normal;overflow-wrap:anywhere}.writing .w-diagram-scroll{margin:0 -1.25rem;padding:0 1.25rem}}@media (max-width:480px){.hero-note-left{top:4.75rem}.hero-note-right{top:10.5rem}.project-card-body{padding-inline:1.25rem}}@media (max-width:380px){:root{--mobile-gutter:28px}.writing .w-column{padding-left:1rem;padding-right:1rem}.writing .w-diagram-scroll{margin:0 -1rem;padding:0 1rem}}@media (max-width:767px){.work-archive,.project-case-study{width:calc(100% - 2.5rem)}.work-archive{padding-block:2rem 5rem}.work-archive-header{padding-bottom:3rem}.work-archive-header h1{max-width:10ch;margin-top:1rem;font-size:clamp(3.4rem,15vw,5.5rem)}.work-archive-intro-row{align-items:center;gap:1rem;margin-top:1rem}.work-archive-intro-row p{font-size:.9rem}.work-archive-down{width:2.4rem;height:2.4rem}.work-project{padding-block:2.5rem}.work-project-heading{align-items:center;gap:.75rem}.work-project-heading h2{font-size:clamp(2.25rem,10vw,3.3rem)}.work-project-heading>a,.work-project-status{font-size:.68rem}.work-project-description{font-size:.88rem}.work-project-footer{flex-direction:column;gap:.75rem}.project-case-study{padding-block:1.5rem 5rem}.case-study-header{padding-block:3.5rem 2.5rem}.case-study-header h1{font-size:clamp(3.25rem,14vw,5.2rem)}.case-study-summary{font-size:.9rem}.case-study-hero-media{aspect-ratio:1.4;width:100%}.case-study-features,.case-study-prose{margin-top:3.5rem}.case-study-features li{font-size:.82rem}.case-study-prose h2{margin-top:2.7rem;font-size:clamp(1.65rem,7vw,2.1rem)}.case-study-prose p,.case-study-prose li{font-size:.86rem}.theory-parallax{height:auto;min-height:0}.theory-parallax-stage{height:auto;min-height:0;padding:4rem 0;display:block;position:relative;top:auto;overflow:visible}.theory.section-block{padding-block:0}.theory-parallax-content{opacity:1!important;transform:none!important}.theory-row>a{transform:none!important}.theory-row{grid-template-columns:minmax(0,1fr);align-items:start;gap:1rem}.theory-row>a img{width:6rem;height:6rem}#implementations .theory-parallax-heading{font-size:clamp(2rem,8vw,3rem)!important;line-height:1.08!important}.blogs-writing{grid-template-columns:minmax(0,1fr)}.blogs-writing-aside{height:auto;padding:4rem var(--mobile-gutter) 3rem;border-bottom:1px solid #e4e1dc;position:relative;top:auto}.blogs-writing-aside h2{max-width:12ch;font-size:clamp(2.6rem,10vw,3.8rem)}.blogs-writing-aside>p{margin-top:.9rem;font-size:.88rem}.blogs-writing-list{padding-inline:var(--mobile-gutter)}.blogs-writing-all{margin-top:1rem}.blogs-writing-entry{min-height:0}.blogs-writing-entry-link{grid-template-columns:minmax(0,1fr) 1.2rem;align-items:start;gap:.5rem .8rem;min-height:0;padding-block:1.15rem;transition:none}.blogs-writing-entry:hover .blogs-writing-entry-link{padding-inline:0}.blogs-writing-entry-meta{flex-direction:row;grid-column:1/-1;gap:.75rem;padding-top:0;font-size:.62rem}.blogs-writing-entry-copy h3{font-size:1.1rem}.blogs-writing-entry-copy p{font-size:.76rem}.blogs-writing-entry-arrow{grid-area:2/2}.blogs-writing-feed-head{padding-bottom:.65rem}.contact-footer-content{padding-block:1.25rem calc(2rem + env(safe-area-inset-bottom))}.contact-footer-marquee-track span{font-size:clamp(6.5rem,25vw,11.5rem)}.contact-footer-social-link{min-height:2.75rem;padding-block:.35rem;font-size:1.15rem}}@media (max-width:380px){.hero-note-left,.hero-note-right{max-width:9rem;font-size:.82rem}.hero-name{font-size:clamp(3.2rem,15vw,3.6rem)}}
html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}
