/* Measured from design-audit. Mobile-first: 640 / 768 / 1024px. */
@font-face{font-family:'Hanken Grotesk Fallback';src:local(Arial);ascent-override:99.07%;descent-override:30.02%;line-gap-override:0%;size-adjust:100.94%}
.site-header.mobile-header{height:auto;padding:0}.contact-page>h1{font:600 48px/.95 var(--display);letter-spacing:-.03em;margin:24px 0 48px}.contact-page .contact-form-wrap{padding-top:0}.contact-page .contact-grid{margin-top:48px}.search{color:var(--muted)}
@media(min-width:640px){.contact-page>h1{font-size:67.2px}}
@font-face{font-family:Geist;src:url('sources/fonts/geist.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:'Geist Mono';src:url('sources/fonts/geist-mono.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:'Hanken Grotesk';src:url('sources/fonts/hanken-grotesk.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:'Geist Fallback';src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0%;size-adjust:104.76%}
@font-face{font-family:'Geist Mono Fallback';src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0%;size-adjust:134.59%}
:root{--color-ink:#0b0d0f;--color-ink-2:#0e1113;--color-surface:#121518;--color-line:#262b30;--color-field:#5a646d;--color-bone:#ede8dc;--color-bone-dim:#c7c3ba;--color-muted:#8a929b;--color-ember:#d9663d;--color-ember-bright:#e8794e;--color-dot-inactive:#2c3338;--ease-premium:cubic-bezier(.22,1,.36,1);--radius:.625rem;--ink:var(--color-bone);--muted:var(--color-muted);--dim:var(--color-muted);--orange:var(--color-ember);--orange-soft:var(--color-ember-bright);--page:var(--color-ink);--panel:var(--color-surface);--line:var(--color-line);--mono:'Geist Mono','Geist Mono Fallback',monospace;--display:Geist,'Geist Fallback',sans-serif;--body:'Hanken Grotesk',ui-sans-serif,system-ui,sans-serif;color-scheme:dark}
html{font-size:16px;scroll-behavior:auto}body{font:400 16px/1.5 var(--body);background:var(--page);color:var(--ink);overflow-x:clip}button,input,textarea{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--orange);outline-offset:4px}h1,h2,h3{font-family:var(--display);font-weight:600}p{margin:0}main{min-height:100dvh;outline:0}section[id],main[id]{scroll-margin-top:96px}.page-enter{animation:page-in .6s var(--ease-premium) both}@keyframes page-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
.nav,.mobile-header-bar,.work-inner,.capabilities-inner,.currently-inner,.footer-inner,.projects-page,.work-page,.about-page,.resume-page,.contact-page{width:100%;max-width:1152px;margin-inline:auto;padding-inline:24px;font-family:var(--body)}
.site-header{position:fixed;inset:0 0 auto;z-index:40;height:auto;display:block;border-bottom:1px solid transparent;background:transparent;backdrop-filter:none;transition:color .5s,background-color .5s,border-color .5s}.site-header.is-scrolled,.site-header.is-open{background:rgb(11 13 15/.8);border-color:var(--line);backdrop-filter:blur(12px)}.site-header.mobile-header>.nav{display:none}.nav{height:64px;gap:24px}.logo{font:500 12.8px/19.2px var(--mono);letter-spacing:normal}.nav-links{gap:24px;margin:0}.nav-link,.resume{font:400 12.8px/19.2px var(--mono);color:var(--muted)}.nav-link span{font-size:9.92px;color:rgb(138 146 155/.6);margin-right:8px}.nav-link:hover,.resume:hover{color:var(--ink)}.nav-link.active::after{bottom:-8px}.nav-actions{gap:20px}.search{cursor:pointer;min-width:0;width:auto;height:36px;padding:0 8px 0 10px;gap:8px;font:400 12.16px/18.24px var(--mono);background:rgb(18 21 24/.4);border:1px solid var(--line);border-radius:6px;transition:color .15s,border-color .15s}.search:hover{color:var(--ink);border-color:rgb(217 102 61/.4)}.search svg{width:14px;height:14px}.shortcut{font-size:10.4px;line-height:1;padding:2px 6px;border:1px solid var(--line);background:rgb(11 13 15/.5);border-radius:4px}.touch{font:400 12.8px/19.2px var(--mono);border:1px solid var(--line);padding:8px 16px;border-radius:6px;background:transparent;transition:color .3s,border-color .3s}.touch:hover{color:var(--orange);border-color:var(--orange);background:transparent}
.mobile-header-bar{display:flex;height:64px}.mobile-menu-toggle{height:44px;width:44px;margin-right:-8px;padding:12px;gap:4px}.mobile-menu-toggle span{width:20px;height:2px;border-radius:999px;transition:transform .3s var(--ease-premium),opacity .2s}.mobile-header.is-open .mobile-menu-toggle span:first-child{transform:translateY(6px) rotate(45deg)}.mobile-header.is-open .mobile-menu-toggle span:last-child{transform:translateY(-6px) rotate(-45deg)}.mobile-menu{display:grid;position:static;min-height:0;padding:0;grid-template-rows:0fr;opacity:0;pointer-events:none;overflow:hidden;border-top:1px solid transparent;background:rgb(11 13 15/.95);backdrop-filter:blur(12px);transition:grid-template-rows .3s var(--ease-premium),opacity .3s var(--ease-premium);animation:none}.mobile-header.is-open .mobile-menu{grid-template-rows:1fr;opacity:1;pointer-events:auto;border-color:var(--line)}.mobile-menu-inner{min-height:0;overflow:hidden}.mobile-menu-content{padding:12px 24px}.mobile-menu nav a{gap:12px;padding:12px 0;font:400 14px/20px var(--mono);color:var(--muted)}.mobile-menu nav a span{width:auto;font-size:9.92px;color:rgb(217 102 61/.7)}.mobile-menu nav a.is-active{font-weight:400;color:var(--ink)}.mobile-menu-cta{margin:12px 0 0;padding:12px 16px;font:400 14px/20px var(--mono);border-radius:6px;border:1px solid rgb(217 102 61/.5);background:rgb(217 102 61/.1)}body.mobile-menu-open{overflow:hidden}
.hero{width:100%;max-width:none;min-height:0;padding:112px max(24px,calc((100% - 1072px)/2)) 64px;grid-template-columns:minmax(0,1fr);gap:48px;overflow:clip}.hero-copy{padding:0}.ember-glow{position:absolute;top:50%;right:0;z-index:-1;width:672px;height:672px;transform:translate(33.3333%,-50%);background:rgb(217 102 61/.12);filter:blur(140px);opacity:1;transition:none}.hero h1{font-size:49.6px;line-height:.95;letter-spacing:-.035em;font-weight:600;max-width:none;margin:28px 0 0}.availability{margin:0;gap:8px;font:400 10.4px/15.6px var(--mono);letter-spacing:.025em}.pulse,.status-dot{position:relative;width:6px;height:6px;background:var(--orange);box-shadow:none;animation:none;border-radius:50%}.pulse::before,.status-dot::before{position:absolute;inset:0;content:'';border-radius:inherit;background:inherit;opacity:.6;animation:status-ping 1s cubic-bezier(0,0,.2,1) infinite}@keyframes status-ping{75%,100%{transform:scale(2);opacity:0}}.intro{max-width:448px;font-size:18px;line-height:1.625;margin:28px 0 32px;color:var(--color-bone-dim)}.buttons{gap:24px;margin:0 0 48px}.work-button,.cta-button,.resume-download,.case-study,.send-button{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;border:1px solid rgb(217 102 61/.5);border-radius:6px;background:rgb(217 102 61/.1);color:var(--ink);font:400 14px/20px var(--mono);box-shadow:none;text-decoration:none;transition:color .3s,background-color .3s,border-color .3s}.work-button:hover,.cta-button:hover,.resume-download:hover,.case-study:hover,.send-button:hover{border-color:var(--orange);background:rgb(217 102 61/.2);transform:none}.arrow{margin:0;color:inherit;transition:transform .3s}.work-button:hover .arrow{transform:translateX(2px)}.resume-link{font:400 12.8px/19.2px var(--mono);color:var(--muted)}.session{position:relative;width:100%;max-width:384px;min-height:163.125px;padding:16px;border:1px solid var(--line);border-radius:10px;background:rgb(18 21 24/.6);backdrop-filter:blur(8px);font:400 11.52px/1.625 var(--mono);box-shadow:inset 0 1px 0 rgb(255 255 255/.03),0 24px 60px -30px rgb(0 0 0/.7)}.session::after{position:absolute;inset:0;content:'';pointer-events:none;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.session-head{margin-bottom:12px;font-size:9.6px;letter-spacing:.18em;color:var(--muted)}.dot{width:6px;height:6px;background:var(--color-dot-inactive)}.dot:last-of-type{background:var(--orange)}.session-lines{line-height:1.625;color:var(--muted);min-height:112.32px}.typing-row{min-height:18.72px}.command{color:var(--ink);font-weight:500}.session-result{color:var(--orange)}.cursor{width:.5ch;height:12px;margin-left:1px;background:var(--orange);animation:terminal-pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes terminal-pulse{50%{opacity:.5}}
.illustration-wrap{min-height:0;height:360px;margin:0;overflow:hidden}.illustration-wrap::before{display:none}#container3D canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:pan-y}
.selected-work,.capabilities,.currently{padding:96px 0;border-top:1px solid rgb(38 43 48/.6)}.eyebrow{font:400 10.4px/15.6px var(--mono);letter-spacing:.22em;color:var(--muted);gap:12px}.eyebrow::before{width:28px;background:var(--line)}.work-heading-row{align-items:flex-end;gap:24px;margin:20px 0 48px}.work-heading,.cta-title{font:600 32px/1.04 var(--display);letter-spacing:-.02em}.all-projects,.path-link{font:400 12px/16px var(--mono);color:var(--muted)}.all-projects:hover,.path-link:hover{color:var(--ink)}.projects-grid{grid-template-columns:minmax(0,1fr);gap:40px}.project:last-child{grid-column:auto;max-width:none}.preview{aspect-ratio:1.6;border:1px solid var(--line);border-radius:8px;background:rgb(18 21 24/.6);transition:border-color .3s,transform .5s var(--ease-premium)}.project:hover .preview{border-color:rgb(217 102 61/.4);transform:none}.preview-image{width:100%;height:calc(100% - 25px);object-fit:cover;display:block;transition:transform .7s var(--ease-premium)}.project:hover .preview-image{transform:scale(1.03)}.browser-bar{height:25px;border-color:var(--line);background:rgb(11 13 15/.65)}.browser-dot{width:6px;height:6px;background:var(--color-dot-inactive)}.project-meta{margin-top:20px}.project-name{font:600 20px/28px var(--display);letter-spacing:-.025em}.project-year{font:400 10.4px/15.6px var(--mono);color:var(--muted)}.project-description{margin:4px 0 12px;color:var(--color-bone-dim);font-size:14px;line-height:20px;white-space:normal}.project-status{font:400 10.4px/15.6px var(--mono);color:var(--orange)}.capability-list{margin-top:40px}.capability-row{grid-template-columns:1fr;gap:12px;padding:28px 0;border-color:var(--line);min-height:0}.capability-title{font:600 18px/28px var(--display);gap:12px}.capability-number{font:400 10.4px/15.6px var(--mono);color:var(--orange)}.capability-description{max-width:none;font-size:14px;line-height:22.75px;color:var(--color-bone-dim)}.currently-content{margin-top:20px;align-items:flex-end;gap:32px}.currently-role{font:600 24px/32px var(--display);letter-spacing:-.025em;max-width:576px}.currently-detail{margin-top:12px;font-size:16px;color:var(--color-bone-dim)}.closing-cta{padding:112px 24px;border-top:1px solid rgb(38 43 48/.6);text-align:center}.cta-title{max-width:672px;margin:auto}.cta-detail{margin:20px 0 32px;font-size:16px;color:var(--color-bone-dim)}
.site-footer{padding:48px 0;border-top:1px solid var(--line)}.footer-top{min-height:0;padding:0;grid-template-columns:1fr;gap:32px}.footer-brand{font:500 12px/16px var(--mono)}.footer-location{margin-top:12px;font:400 10.4px/15.6px var(--mono);color:var(--muted)}.footer-links,.footer-social{justify-content:flex-start;gap:24px;flex-wrap:wrap}.footer-link{font:400 12px/16px var(--mono);color:var(--muted)}.footer-link:hover{color:var(--ink)}.footer-bottom{min-height:0;border-top:1px solid var(--line);padding:24px 0 0;margin-top:40px;grid-template-columns:1fr;gap:20px}.footer-note,.footer-credit{font:400 10.4px/15.6px var(--mono);color:var(--muted);text-align:left}.footer-controls{justify-content:flex-start}.scroll-top{border-color:var(--line);background:rgb(18 21 24/.8)}.credentials-dot,.project-top-control,.resume-corner-glyph,.contact-corner-glyph{display:none}
.projects-page,.work-page{padding-top:128px}.projects-intro,.work-intro{padding:0;margin-bottom:56px}.projects-intro h1,.work-intro h1,.resume-heading h1{font:600 38.4px/1.03 var(--display);letter-spacing:-.025em;max-width:768px;margin:24px 0}.projects-intro>p,.work-intro>p{font-size:18px;line-height:1.625;max-width:576px;color:var(--color-bone-dim)}.desktop-break{display:none}.detail-project,.ats-project{grid-template-columns:minmax(0,1fr);gap:32px;margin-bottom:112px}.detail-project .detail-preview{order:0}.detail-project .detail-copy{order:1}.detail-preview{border:1px solid var(--line);border-radius:10px;background:var(--panel)}.detail-preview>img{display:block;width:100%;height:auto;transition:transform .7s var(--ease-premium)}.detail-project:hover .detail-preview>img{transform:scale(1.025)}.detail-meta{font:400 10.4px/15.6px var(--mono);gap:12px;color:var(--muted)}.detail-meta b{background:var(--line)}.detail-meta strong{font-weight:400;font-size:10.4px}.detail-copy>h2{font:600 32px/1.05 var(--display);letter-spacing:-.025em;margin:16px 0 8px}.detail-subtitle{font-size:18px;line-height:28px;color:var(--color-bone-dim);margin-bottom:20px}.detail-description{font:400 16px/26px var(--body);color:var(--color-bone-dim);max-width:none}.tag-list{gap:8px;margin-top:24px}.tag-list span,.tool-tags span{font:400 11.2px/16.8px var(--mono);border:1px solid var(--line);border-radius:4px;padding:4px 8px;color:var(--muted);background:rgb(18 21 24/.4)}.detail-links{font:400 12px/16px var(--mono);align-items:center;flex-wrap:wrap;gap:20px;margin-top:24px}.detail-links a{color:var(--muted)}.detail-links .case-study{color:var(--ink)}.research-section{padding:56px 0 80px;border-color:var(--line)}.research-intro{font-size:18px;line-height:1.625;color:var(--color-bone-dim);margin:24px 0 40px}.research-card{grid-template-columns:1fr;min-height:0;border:1px solid var(--line);border-radius:10px;background:rgb(18 21 24/.4)}.research-figure{padding:24px;min-height:0}.research-copy{padding:28px}.research-meta,.research-subtitle{font:400 12px/18px var(--mono);color:var(--muted)}.research-copy h2{font:600 28px/1.1 var(--display);letter-spacing:-.025em;margin:16px 0 8px}.research-description{font:400 16px/26px var(--body);color:var(--color-bone-dim);margin:24px 0}.research-link{font:400 12px/18px var(--mono)}.more-work-section{padding:56px 0 112px;border:0}.more-work-grid{grid-template-columns:1fr;gap:40px;margin-top:32px}.more-preview{border:1px solid var(--line);border-radius:8px}.more-card-meta h2{font:600 20px/28px var(--display)}.more-card-meta>span{font:400 10.4px/15.6px var(--mono)}.more-subtitle,.more-description{font:400 14px/22.75px var(--body);color:var(--color-bone-dim)}.more-link{font:400 12px/16px var(--mono)}
.experience-list{border-color:var(--line)}.experience-entry{grid-template-columns:1fr;gap:20px;padding:36px 0;border-color:var(--line);transition:opacity .3s var(--ease-premium),transform .3s var(--ease-premium)}.experience-list:has(.experience-entry:hover) .experience-entry:not(:hover){opacity:.5}.experience-date{font:400 14px/20px var(--mono)}.experience-location{font:400 10.4px/16.9px var(--mono);letter-spacing:.05em;color:var(--muted);margin-top:12px}.experience-detail h2{font:600 20px/28px var(--display);letter-spacing:normal}.experience-detail h2 strong{font-weight:600}.experience-summary{font:400 15.52px/23.28px var(--body);margin:8px 0 20px;color:var(--color-bone-dim)}.experience-detail ul{gap:12px}.experience-detail li{font-size:14px;line-height:22.75px;color:var(--color-bone-dim)}.credentials-section{padding:56px 0 112px;margin-top:80px;border-color:var(--line)}.credentials-grid{grid-template-columns:1fr;gap:48px}.education-column h2{font:600 20px/28px var(--display);margin:20px 0 6px;letter-spacing:normal}.education-meta{font:400 14px/20px var(--mono);color:var(--muted)}.education-list{margin-top:24px}.education-list li{font-size:14px;line-height:22.75px}.certification-list{margin-top:20px;border-color:var(--line)}.certification-row{border-color:var(--line);padding:16px 0}.certification-row>span{flex-wrap:wrap}.certification-row strong{font:500 14px/20px var(--body)}.certification-row small,.certification-row>b{font:400 11.2px/16.8px var(--mono);white-space:normal;color:var(--muted)}
.about-page{padding-top:128px;padding-bottom:112px}.about-grid{grid-template-columns:1fr;gap:48px;margin-top:40px}.profile-photo{width:100%;max-width:none;border:1px solid rgb(217 102 61/.4);border-radius:10px;box-shadow:0 24px 60px -30px rgb(0 0 0/.7)}.profile-facts{margin-top:24px;border-color:var(--line)}.profile-facts>div{grid-template-columns:88px 1fr;gap:12px;padding:12px 0;border-color:var(--line)}.profile-facts span{font:400 9.92px/16.12px var(--mono);color:var(--muted)}.profile-facts strong{font:400 12px/19.5px var(--mono);color:var(--color-bone-dim)}.about-copy{padding:0;max-width:none}.about-copy h1{font:600 32px/1.08 var(--display);letter-spacing:-.02em;max-width:672px}.bio-copy{margin-top:32px;max-width:none}.bio-copy p{font:400 16px/28px var(--body);color:var(--color-bone-dim);margin-bottom:24px}.now-block{margin-top:40px}.now-block ul{margin-top:20px;gap:12px}.now-block li{font-size:14px;line-height:22.75px;color:var(--color-bone-dim)}.tools-section{margin-top:80px;padding:56px 0 0;border-color:var(--line)}.tools-grid{grid-template-columns:1fr;gap:40px;margin-top:32px}.tool-category h2{font:400 12px/16px var(--mono);letter-spacing:.18em;margin-bottom:20px}.tool-tags{gap:8px}
.resume-page{padding-top:128px;padding-bottom:112px}.resume-intro{flex-direction:column;align-items:flex-start;gap:32px}.resume-heading h1{line-height:1.02;letter-spacing:-.03em;margin-bottom:16px}.resume-heading p{font:400 18px/1.625 var(--body);max-width:448px;color:var(--color-bone-dim)}.resume-actions{flex-wrap:wrap;flex-direction:row;gap:24px;padding:0}.resume-open{font:400 12px/16px var(--mono)}.resume-preview-panel{width:100%;max-width:896px;margin-top:64px;border-radius:8px;background:#fff;box-shadow:0 24px 60px -30px rgb(0 0 0/.7)}
.contact-page{min-height:100dvh;padding-top:128px;padding-bottom:96px}.contact-grid{grid-template-columns:1fr;gap:56px}.contact-copy h1{font:600 48px/.95 var(--display);letter-spacing:-.03em;margin:24px 0 48px}.contact-intro{font:400 18px/1.625 var(--body);max-width:448px;color:var(--color-bone-dim)}.contact-email{font:600 20px/28px var(--display);letter-spacing:normal;margin-top:32px;gap:12px}.contact-links{margin-top:24px;gap:16px}.contact-links a,.contact-links>span{font:400 12px/18px var(--mono);color:var(--muted)}.contact-illustration{width:144px;margin:32px 0 0;filter:drop-shadow(0 12px 30px rgb(0 0 0/.45));animation:float-bob 4s ease-in-out infinite}@keyframes float-bob{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-10px) rotate(2deg)}}.contact-form-wrap{padding:0}.contact-form{grid-template-columns:1fr;max-width:none;gap:20px}.form-row{gap:8px}.form-row label{font:400 10.4px/15.6px var(--mono);letter-spacing:.18em;color:var(--muted)}.form-row input,.form-row textarea{font:400 16px/24px var(--body);border:1px solid var(--line);border-radius:6px;padding:12px;background:rgb(18 21 24/.65);color:var(--ink)}.form-row input{height:50px}.form-row textarea{min-height:160px}.form-row input::placeholder,.form-row textarea::placeholder{color:var(--color-field)}.form-row input:focus,.form-row textarea:focus{border-color:rgb(217 102 61/.7);box-shadow:0 0 0 1px rgb(217 102 61/.2)}.recaptcha-notice{font:400 10.4px/15.6px var(--mono);color:var(--muted);margin:0}.form-message{grid-column:1/-1}
.cursor-ring,.cursor-dot{display:none;position:fixed;top:0;left:0;pointer-events:none;z-index:100}.cursor-dot{width:4px;height:4px;border-radius:50%;background:var(--orange)}.cursor-ring{width:28px;height:28px;border:1px solid rgb(217 102 61/.55);border-radius:50%;opacity:.55}.command-overlay{position:fixed;inset:0;z-index:60;padding:16vh 16px 16px;background:rgb(11 13 15/.7);backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:flex-start}.command-panel{width:100%;max-width:512px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--panel);box-shadow:0 24px 60px -30px rgb(0 0 0/.7)}.command-input{width:100%;padding:14px 16px;background:transparent;border:0;border-bottom:1px solid var(--line);outline:none;color:var(--ink);font:400 14px/20px var(--mono)}.command-results{padding:8px;max-height:50vh;overflow:auto}.command-results a{display:flex;padding:8px 12px;border-radius:6px;font:400 14px/20px var(--mono);color:var(--color-bone-dim);text-decoration:none}.command-results a.is-selected,.command-results a:hover{background:rgb(217 102 61/.15);color:var(--ink)}.command-hint{border-top:1px solid var(--line);padding:8px 16px;font:400 9.92px/15px var(--mono);color:var(--muted)}.skip-link{position:fixed;top:8px;left:8px;z-index:110;transform:translateY(-200%);padding:8px;background:var(--page);color:var(--ink)}.skip-link:focus{transform:none}
@media(min-width:640px){.nav,.mobile-header-bar,.work-inner,.capabilities-inner,.currently-inner,.footer-inner,.projects-page,.work-page,.about-page,.resume-page,.contact-page{padding-inline:40px}.hero{padding-inline:max(40px,calc((100% - 1072px)/2))}.hero h1{font-size:65.6px}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.selected-work,.capabilities,.currently{padding-block:128px}.work-heading,.cta-title{font-size:44px}.currently-role{font-size:30px;line-height:36px}.closing-cta{padding-block:144px}.projects-intro h1,.work-intro h1,.resume-heading h1{font-size:48px}.about-copy h1{font-size:41.6px}.contact-copy h1{font-size:67.2px}.contact-illustration{width:176px}.contact-form{grid-template-columns:1fr 1fr}.tools-grid,.more-work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.research-card{grid-template-columns:.85fr 1.15fr}.research-copy{padding:40px}}
@media(min-width:768px){.site-header.mobile-header>.nav{display:flex}.mobile-header-bar,.mobile-menu{display:none}.site-header.mobile-header .nav-links{display:flex}.site-header.mobile-header .search{min-width:0;width:auto;padding:0 8px 0 10px}.site-header.mobile-header .search span{display:none}.site-header.mobile-header .shortcut{display:block}.site-header.mobile-header .resume{display:inline}.capability-row{grid-template-columns:1fr 1.8fr;gap:40px}.experience-entry{grid-template-columns:210px minmax(0,1fr);gap:40px}.footer-top{grid-template-columns:1fr auto auto;gap:48px}.footer-links{justify-content:center}.footer-social{justify-content:flex-end}.footer-bottom{grid-template-columns:1fr auto 1fr}.footer-credit{text-align:right}.footer-controls{justify-content:center;order:0}.currently-content{flex-direction:row}.work-heading-row{flex-direction:row}}
@media(min-width:1024px){.hero{min-height:100dvh;padding-block:96px;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:32px}.hero h1{font-size:75.2px}.illustration-wrap{height:560px}.site-header.mobile-header .search{width:224px}.site-header.mobile-header .search span{display:inline}.projects-grid,.more-work-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.detail-project,.ats-project{grid-template-columns:repeat(2,minmax(0,1fr));gap:64px}.detail-project .detail-preview,.detail-project .detail-copy{order:0}.credentials-grid{grid-template-columns:1fr 1fr}.about-grid{grid-template-columns:.85fr 1.15fr;gap:64px}.tools-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.resume-intro{flex-direction:row;align-items:flex-end;justify-content:space-between}.contact-grid{grid-template-columns:1fr 1fr;gap:80px}.contact-form-wrap{padding-top:183px}}
@media(pointer:fine) and (prefers-reduced-motion:no-preference){.cursor-active,.cursor-active a,.cursor-active button{cursor:none}.cursor-active .cursor-ring,.cursor-active .cursor-dot{display:block}}
@media(prefers-reduced-motion:reduce){*,::before,::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.page-enter{animation:none}.cursor-ring,.cursor-dot{display:none!important}}
