@font-face{font-family:sans;src:url(../media/geist_latin_variable-s.p.175rzww1hghhr.woff2)format("woff2");font-display:swap;font-weight:100 900}@font-face{font-family:sans Fallback;src:local(Arial);ascent-override:94.56%;descent-override:27.76%;line-gap-override:0.0%;size-adjust:106.28%}.sans_f7b537fc-module__pwSOfq__className{font-family:sans,sans Fallback,Arial}.sans_f7b537fc-module__pwSOfq__variable{--font-geist-sans:"sans", "sans Fallback", Arial}
@font-face{font-family:mono;src:url(../media/geist_mono_latin_variable-s.29txv0wq9-da0.woff2)format("woff2");font-display:swap;font-weight:100 900}@font-face{font-family:mono Fallback;src:local(Arial);ascent-override:76.43%;descent-override:22.43%;line-gap-override:0.0%;size-adjust:131.49%}.mono_7ce13c3d-module__0K4SjG__className{font-family:mono,mono Fallback,monospace}.mono_7ce13c3d-module__0K4SjG__variable{--font-geist-mono:"mono", "mono Fallback", monospace}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-geist-sans);--default-mono-font-family:var(--font-geist-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.static{position:static}.block{display:block}.flex{display:flex}.hidden{display:none}.inline{display:inline}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.gap-6{gap:calc(var(--spacing) * 6)}.underline{text-decoration-line:underline}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--bg:#f4f2ed;--surface:#eae7df;--paper:#fbfaf7;--ink:#232522;--muted:#5e6157;--line:#d5d3c9;--accent:#a43c24;--accent-soft:#eee1d7;--art:#b7472b;--art-ink:#f5e3d0;--contact:#242824;--contact-ink:#f3f0e6;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html[data-theme=dark]{--bg:#171918;--surface:#202320;--paper:#1c1f1c;--ink:#eeeae1;--muted:#b2b5aa;--line:#3b403a;--accent:#e99b7e;--accent-soft:#342a23;--art:#a54028;--art-ink:#f3dac1;--contact:#e7e3d8;--contact-ink:#242824;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){html:not([data-theme]){--bg:#171918;--surface:#202320;--paper:#1c1f1c;--ink:#eeeae1;--muted:#b2b5aa;--line:#3b403a;--accent:#e99b7e;--accent-soft:#342a23;--art:#a54028;--art-ink:#f3dac1;--contact:#e7e3d8;--contact-ink:#242824;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{background:var(--bg);color:var(--ink);font-family:var(--font-geist-sans), Arial, sans-serif;-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.65}::selection{background:var(--accent);color:var(--bg)}a{color:inherit;text-decoration:none}button,summary,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button,summary{touch-action:manipulation}button:disabled{cursor:wait}button,a,summary{outline-offset:6px}:focus-visible{outline:2px solid var(--accent)}img{max-width:100%;height:auto}svg{flex-shrink:0}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500}h2{letter-spacing:-.052em;text-wrap:balance;font-size:clamp(36px,4.3vw,62px);line-height:1.08}h3{letter-spacing:-.03em}ul{margin:0;padding:0;list-style:none}.shell{width:min(1280px,100% - 112px);margin-inline:auto}.section{padding-block:112px}.mono,.eyebrow,.section-label,.metric-source,.inline-tech{font-family:var(--font-geist-mono), monospace}.mono{letter-spacing:.025em;font-size:11px}.eyebrow{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-size:11px;line-height:1.6}.accent{color:var(--accent)}.muted{color:var(--muted)}.body-large{letter-spacing:-.025em;font-size:24px;line-height:1.55}.section-label{letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:16px;margin-bottom:40px;font-size:11px;display:flex}.section-number{color:var(--accent);border-right:1px solid var(--line);padding-right:16px}.section-heading{justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:52px;display:flex}.section-heading>p{color:var(--muted);max-width:370px;padding-bottom:4px;font-size:14px}.text-link{align-items:center;gap:16px;min-height:44px;font-size:13px;font-weight:500;display:inline-flex;position:relative}.text-link:after{content:"";transform-origin:0;background:currentColor;height:1px;transition:transform .25s;position:absolute;bottom:7px;left:0;right:0;transform:scaleX(.25)}.text-link:hover:after{transform:scaleX(1)}.text-link svg,.button svg{transition:transform .25s}.text-link:hover svg,.button:hover svg{transform:translate(3px,-1px)}.button{border:1px solid #0000;justify-content:center;align-items:center;gap:30px;min-height:52px;padding:14px 22px;font-size:13px;font-weight:500;display:inline-flex}.button-primary{color:var(--bg);background:var(--ink)}.button-primary:hover{color:var(--bg);background:var(--accent)}.skip-link{z-index:200;background:var(--ink);color:var(--bg);padding:12px 18px;position:fixed;top:8px;left:12px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:50;background:var(--bg);border-bottom:1px solid var(--line);height:86px;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;height:100%;display:flex}.wordmark{align-items:center;gap:8px;min-height:44px;display:inline-flex}.wordmark>span{letter-spacing:-.06em;font-size:24px;font-weight:600}.wordmark svg{width:31px;height:31px}.desktop-nav{gap:32px;margin-left:80px;display:flex}.nav-link{align-items:center;min-height:44px;font-size:12px;display:flex;position:relative}.nav-link:after{content:"";background:var(--accent);border-radius:50%;width:4px;height:4px;transition:transform .18s;position:absolute;bottom:0;left:calc(50% - 2px);transform:scale(0)}.nav-link:hover:after,.nav-link.active:after{transform:scale(1)}.header-actions{align-items:center;gap:24px;display:flex}.icon-button{border:1px solid var(--line);background:0 0;border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.icon-button:hover{background:var(--surface)}.theme-toggle .sun-icon{display:none}html[data-theme=dark] .theme-toggle .sun-icon{display:block}html[data-theme=dark] .theme-toggle .moon-icon{display:none}.header-resume{align-items:center;gap:12px;min-height:44px;font-size:12px;display:inline-flex}.header-resume svg{width:16px;height:16px}.mobile-menu{display:none}.hero{padding-top:29px}.hero-topline{color:var(--muted);justify-content:space-between;align-items:center;display:flex}.hero-topline>span{align-items:center;gap:9px;display:inline-flex}.status-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}.tiny-plus{color:var(--accent);padding-left:12px;font-size:18px;line-height:1}.hero-grid{grid-template-columns:1.2fr 1fr;align-items:center;gap:clamp(40px,8vw,120px);padding:58px 0 44px;display:grid}.hero-role{color:var(--accent);margin-bottom:18px}.hero h1{letter-spacing:-.075em;margin-left:-6px;font-size:clamp(82px,8.5vw,132px);font-weight:500;line-height:.87}.hero h1>span{display:block}.hero h1>span:last-child{margin-top:5px}.hero-description{letter-spacing:-.035em;margin-top:30px;font-size:clamp(22px,2.2vw,32px);line-height:1.3}.hero-intro{color:var(--muted);max-width:410px;margin-top:18px;font-size:13px;line-height:1.7}.hero-actions{align-items:center;gap:28px;margin-top:26px;display:flex}.hero-art{align-self:center;padding-top:20px}.brand-study{aspect-ratio:.91;background:var(--art);width:100%;color:var(--art-ink);flex-direction:column;justify-content:space-between;display:flex;position:relative;overflow:hidden}.study-top,.study-bottom{z-index:2;font-family:var(--font-geist-mono), monospace;letter-spacing:.02em;justify-content:space-between;padding:25px;font-size:10px;line-height:1.6;display:flex;position:relative}.study-top{border-bottom:1px solid #ffffff28}.study-bottom{align-items:flex-end}.study-coordinate{text-align:right;opacity:1}.study-drawing{width:112%;max-width:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.study-guides{opacity:.38}.study-monogram{transform-origin:50%;animation:.9s cubic-bezier(.22,1,.36,1) both monogram-entry}.study-cut{fill:var(--art)}.art-caption{color:var(--muted);justify-content:space-between;margin-top:13px;font-size:10px;display:flex}.hero-foot{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:15px 0 25px;display:flex}.hero-socials{gap:28px;display:flex}.hero-socials a{align-items:center;gap:8px;min-height:44px;font-size:11px;display:flex}.hero-socials svg{width:13px;height:13px}.scroll-link{min-height:44px;color:var(--muted);align-items:center;gap:48px;display:inline-flex}.scroll-link span{color:var(--ink);font-size:22px}.work-section{padding-top:85px}.project-featured{grid-template-columns:minmax(0,1.75fr) minmax(0,1fr);align-items:center;gap:44px;padding-bottom:65px;display:grid}.project-visual{aspect-ratio:1.37;flex-direction:column;justify-content:space-between;min-width:0;padding:24px 0;display:flex;position:relative;overflow:hidden}.visual-ishaara{color:#444337;background:#e3ddce}.visual-hack-management{color:#354b3d;background:#cbd6cc}.visual-medwell{color:#55463b;background:#e1d7cd}html[data-theme=dark] .visual-ishaara{color:#d0d1bf;background:#33382f}html[data-theme=dark] .visual-hack-management{color:#b9cbbc;background:#24392f}html[data-theme=dark] .visual-medwell{color:#d9cbbd;background:#3b332c}.project-visual-top,.project-visual-bottom{justify-content:space-between;align-items:center;gap:10px;padding-inline:24px;display:flex}.project-visual-top .mono,.project-visual-bottom{font-size:10px}.project-visual-top>svg{width:24px;height:24px}.project-visual .screenshot-frame{width:87%;margin-inline:auto;transition:transform .55s cubic-bezier(.22,1,.36,1),box-shadow .55s;transform:perspective(1200px)rotateY(-5deg)rotateX(2deg);box-shadow:12px 18px 25px -18px #0006}.project-visual:hover .screenshot-frame{transform:perspective(1200px)rotateY(0)rotateX(0)translateY(-5px);box-shadow:12px 25px 32px -20px #0006}.screenshot-frame{background:#fafafa;border:1px solid #0002;border-radius:5px;overflow:hidden}.screenshot-frame img{width:100%;display:block}.browser-chrome{color:#646961;background:#f8f8f6;align-items:center;gap:4px;height:24px;padding:0 8px;display:flex;position:relative}.browser-chrome i{background:#b5b7ae;border-radius:50%;width:4px;height:4px}.browser-chrome span{font-family:var(--font-geist-mono), monospace;font-size:9px;position:absolute;left:50%;transform:translate(-50%)}.preview-label{border-bottom:1px solid;padding-bottom:2px}.link-pending{background:var(--ink);color:var(--bg);font-family:var(--font-geist-mono), monospace;padding:8px 12px;font-size:11px;position:absolute;bottom:14px;right:14px}.project-info>.eyebrow{font-size:10px}.project-info h3{margin-top:12px;font-size:34px;line-height:1.2}.project-info h3 a{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.project-info h3 svg{width:21px;height:21px}.project-description{color:var(--muted);max-width:430px;margin-top:15px;font-size:14px}.inline-tech{color:var(--muted);flex-wrap:wrap;gap:7px 12px;margin-top:18px;font-size:10px;display:flex}.inline-tech li:not(:last-child):after{content:"/";color:var(--muted);padding-left:12px}.project-metrics{border-top:1px solid var(--line);gap:30px;margin-top:26px;padding-top:18px;display:flex}.project-metrics>div{flex-direction:column;flex:1;display:flex}.project-metrics strong{letter-spacing:-.065em;font-size:clamp(28px,3vw,43px);font-weight:500;line-height:1.15}.project-metrics span{color:var(--muted);margin-top:7px;font-size:10px}.metric-source{color:var(--muted);margin-top:15px;font-size:10px;line-height:1.75}.project-info>.text-link{margin-top:15px;font-size:12px}.secondary-projects{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;display:grid}.project-secondary .project-visual{aspect-ratio:1.57;padding-block:20px}.project-secondary .project-info{margin-top:28px}.project-secondary .project-info h3{font-size:29px}.project-secondary .project-metrics{max-width:390px}.project-secondary .project-metrics strong{font-size:32px}.about-section{background:var(--surface)}.about-grid{grid-template-columns:minmax(0,.78fr) minmax(0,1.4fr);align-items:center;gap:100px;display:grid}.portrait-block{max-width:380px}.portrait-frame{aspect-ratio:.86;background:var(--ink);position:relative;overflow:hidden}.portrait-frame img{object-fit:cover;filter:grayscale();object-position:48% center;width:100%;height:100%}.portrait-mark{color:#fff;letter-spacing:-.08em;font-size:62px;font-weight:500;position:absolute;bottom:2px;right:20px}.portrait-caption{color:var(--muted);justify-content:space-between;gap:16px;margin-top:14px;font-size:10px;display:flex}.about-copy h2{font-size:clamp(34px,3.6vw,52px)}.about-copy>.body-large{color:var(--ink);margin-top:28px;font-size:22px}.about-copy>p{color:var(--muted);margin-top:18px;font-size:14px}.profile-notes{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:24px;margin-top:32px;padding-top:25px;display:grid}.profile-notes>div{flex-direction:column;gap:4px;display:flex}.profile-notes strong{margin-top:5px;font-size:13px;font-weight:500}.profile-notes>div>span:last-child{color:var(--muted);font-size:11px}.experience-list{border-top:1px solid var(--line)}.experience-row{border-bottom:1px solid var(--line)}.experience-row summary{cursor:pointer;grid-template-columns:1fr 1.6fr .55fr 20px;align-items:start;gap:22px;padding:28px 0;list-style:none;display:grid}summary::-webkit-details-marker{display:none}.experience-period{flex-direction:column;gap:7px;padding-right:15px;display:flex}.experience-period>.mono{color:var(--accent);font-size:10px}.experience-period>span:nth-child(2){color:var(--muted);max-width:235px;font-size:11px}.experience-company h3{font-size:24px;line-height:1.25}.experience-company>span{color:var(--muted);margin-top:8px;font-size:12px;display:block}.experience-location{color:var(--muted);padding-top:5px;font-size:10px}.current-label{color:var(--accent);align-items:center;gap:7px;font-size:10px;display:flex}.current-role{background:var(--accent-soft);padding-inline:28px}.current-role .experience-company h3{color:var(--accent);font-size:30px}.expand-icon{width:20px;height:24px;margin-top:4px;position:relative}.expand-icon:before,.expand-icon:after{content:"";background:var(--ink);width:14px;height:1px;position:absolute;top:11px;left:3px}.expand-icon:after{transition:transform .2s;transform:rotate(90deg)}details[open] .expand-icon:after{transform:rotate(0)}.experience-content{max-width:700px;margin-left:32.5%;padding:0 0 34px}.experience-summary{letter-spacing:-.025em;margin-bottom:14px;font-size:18px;line-height:1.4}.role-bullets{color:var(--muted);padding-left:15px;font-size:13px;list-style:outside}.role-bullets li{margin-top:10px;padding-left:5px}.role-bullets li::marker{color:var(--accent);font-size:10px}.experience-row summary:hover .experience-company h3{color:var(--accent)}.stack-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper)}.stack-layout{grid-template-columns:.9fr 1.4fr;gap:70px;display:grid}.stack-intro h2{font-size:clamp(36px,3.6vw,52px)}.stack-intro>p{color:var(--muted);max-width:220px;margin-top:25px;font-size:13px}.stack-motif{width:100px;height:100px;margin-top:35px;position:relative}.stack-motif span{border:1px solid var(--line);width:65px;height:65px;position:absolute;transform:rotate(-30deg)skew(20deg)}.stack-motif span:nth-child(2){top:12px}.stack-motif span:nth-child(3){border-color:var(--accent);top:24px}.stack-row{border-bottom:1px solid var(--line);grid-template-columns:26px 1fr 1fr;gap:20px;padding:24px 0;display:grid}.stack-row:first-child{border-top:1px solid var(--line)}.stack-index{color:var(--accent);padding-top:3px;font-size:10px}.stack-row h3{font-size:18px;line-height:1.3}.stack-description{color:var(--muted);margin-top:5px;font-size:10px}.stack-row ul{color:var(--muted);flex-wrap:wrap;gap:2px 12px;font-size:12px;line-height:1.8;display:flex}.stack-row li:not(:last-child):after{content:","}.community-grid{grid-template-columns:1.1fr 1fr;gap:90px;display:grid}.leadership h3{margin-top:16px;margin-bottom:24px;font-size:30px;line-height:1.2}.leadership-role{border-top:1px solid var(--line);justify-content:space-between;gap:20px;padding:12px 0;display:flex}.leadership-role strong{font-size:12px;font-weight:500}.leadership-role .mono{color:var(--muted);font-size:10px}.leadership>p:last-child{color:var(--muted);max-width:450px;margin-top:14px;font-size:13px}.awards{border-left:1px solid var(--line);padding-left:50px}.award{align-items:center;gap:25px;padding:24px 0;display:flex}.award+.award{border-top:1px solid var(--line)}.award-place{letter-spacing:-.06em;color:var(--accent);font-size:54px;line-height:1}.award-place>span{font-family:var(--font-geist-mono), monospace;letter-spacing:0;margin-left:4px;font-size:12px}.award h3{max-width:240px;font-size:16px;line-height:1.35}.award p{color:var(--muted);margin-top:6px;font-size:11px}.education{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:40px;margin-top:65px;padding-top:30px;display:flex}.education h3{margin-top:10px;font-size:21px}.education p{color:var(--muted);margin-top:5px;font-size:12px}.education-meta{text-align:right;flex-shrink:0}.education-meta strong{letter-spacing:-.05em;font-size:34px;font-weight:500;line-height:1.2;display:block}.education-meta strong>span{font-family:var(--font-geist-mono), monospace;letter-spacing:0;color:var(--muted);margin-left:9px;font-size:10px}.education-meta>span{color:var(--muted);margin-top:9px;font-size:10px;display:block}.contact-section{--line:#50564e;--muted:#bfc3b7;background:var(--contact);color:var(--contact-ink);padding:85px 0 0}.contact-section .section-label{color:var(--muted)}.contact-section .section-number{color:#f0ac8f}.contact-section :focus-visible{outline-color:#f0ac8f}.contact-heading{justify-content:space-between;align-items:center;gap:40px;display:flex}.contact-heading h2{font-size:clamp(46px,5.8vw,84px);line-height:1.06}.contact-heading h2 span{color:#b8beb0}.contact-arrow{border:1px solid #8a9083;border-radius:50%;flex-shrink:0;place-items:center;width:94px;height:94px;transition:background .2s,color .2s;display:grid}.contact-arrow svg{width:40px;height:40px}.contact-arrow:hover{color:#242824;background:#f0ac8f;border-color:#f0ac8f}.contact-middle{justify-content:space-between;align-items:flex-start;gap:40px;margin-top:50px;margin-bottom:50px;display:flex}.email-link{letter-spacing:-.025em;overflow-wrap:anywhere;border-bottom:1px solid #7c8375;font-size:clamp(17px,2.2vw,30px)}.copy-wrap{margin-top:12px;position:relative}.copy-button{color:var(--muted);background:0 0;border:0;align-items:center;gap:9px;min-height:44px;padding:0 8px 0 0;font-size:11px;display:flex}.copy-status{font-family:var(--font-geist-mono), monospace;white-space:nowrap;font-size:10px;position:absolute;top:44px;left:0}.contact-socials{gap:32px;display:flex}.contact-socials a{align-items:center;gap:13px;min-height:44px;font-size:12px;display:flex}.contact-socials svg{width:15px;height:15px}.footer-line{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:25px;padding:26px 0;display:flex}.footer-identity{align-items:center;gap:14px;font-size:11px;line-height:1.5;display:flex}.footer-identity svg{--bg:var(--contact);width:34px;height:34px}.footer-line>.mono{color:var(--muted);font-size:10px}.back-top{align-items:center;gap:20px;min-height:44px;font-size:10px;display:inline-flex}.back-top svg{width:17px;height:17px;transform:rotate(-90deg)}html[data-theme=dark] .contact-section{--line:#bfbeb3;--muted:#565c50}html[data-theme=dark] .contact-section .section-number{color:#9b3d26}html[data-theme=dark] .contact-heading h2 span{color:#65705d}html[data-theme=dark] .contact-section :focus-visible{outline-color:#9b3d26}.case-page{padding-top:38px}.case-breadcrumb{color:var(--muted);flex-wrap:wrap;gap:14px;font-size:10px;display:flex}.case-breadcrumb a{align-items:center;min-height:44px;display:inline-flex}.case-breadcrumb>span{align-items:center;display:inline-flex}.case-breadcrumb a:hover{color:var(--accent)}.case-header{padding-top:55px;padding-bottom:44px}.case-header h1{letter-spacing:-.065em;max-width:960px;margin-top:18px;font-size:clamp(48px,6.8vw,98px);line-height:1.04}.case-subheader{justify-content:space-between;align-items:center;gap:30px;margin-top:28px;display:flex}.case-subheader>p{letter-spacing:-.025em;font-size:24px}.case-links{flex-wrap:wrap;align-items:center;gap:25px;display:flex}.case-image{padding:clamp(20px,5vw,65px)}.case-image .screenshot-frame{box-shadow:10px 25px 45px -20px #0004}.case-image .browser-chrome{height:30px}.case-image .browser-chrome span{font-size:10px}.case-facts{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr 1fr;gap:44px;padding:35px 0;display:grid}.case-facts p{margin-top:8px;font-size:13px}.case-story{grid-template-columns:.9fr 1.3fr;gap:60px;margin-top:75px;display:grid}.case-story h2{margin-top:15px;font-size:38px}.case-story>.body-large{font-size:25px}.case-contributions>div+div{margin-top:30px}.case-contributions h3{font-size:22px}.case-contributions p{color:var(--muted);margin-top:10px;font-size:15px}.case-outcome{background:var(--surface);margin-top:80px;padding:55px}.case-outcome h2{max-width:650px;margin-top:20px;font-size:42px}.case-metrics{border-top:1px solid var(--line);flex-wrap:wrap;gap:70px;margin-top:40px;padding-top:30px;display:flex}.case-metrics>div{flex-direction:column;display:flex}.case-metrics strong{letter-spacing:-.06em;color:var(--accent);font-size:65px;font-weight:500;line-height:1.1}.case-metrics span{margin-top:10px;font-size:12px}.case-outcome>p:not(.eyebrow):not(.metric-source){max-width:750px;color:var(--muted);margin-top:30px;font-size:15px}.next-project{justify-content:space-between;align-items:center;gap:30px;padding-block:75px;display:flex}.next-project h2{margin-top:15px;font-size:40px}.next-project>svg{width:52px;height:52px;transition:transform .25s}.next-project:hover>svg{transform:translate(4px,-4px)}.state-page{min-height:60vh;padding-block:110px}.state-page h1{letter-spacing:-.06em;margin-top:20px;font-size:clamp(52px,7vw,100px);line-height:1.05}.state-page p:not(.eyebrow){color:var(--muted);margin-block:25px}@keyframes monogram-entry{0%{opacity:.6;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (min-width:1500px){.hero-grid{padding-top:72px;padding-bottom:65px}}@media (max-width:1100px){.shell{width:calc(100% - 72px)}.section{padding-block:85px}.desktop-nav{gap:23px;margin-left:0}.header-actions{gap:18px}.hero-grid{gap:55px}.hero h1{font-size:9.5vw}.hero-art{padding-top:0}.hero-actions{gap:18px}.hero-actions .button{gap:18px;padding-inline:18px}.project-featured{grid-template-columns:1.3fr 1fr;gap:30px}.project-visual{aspect-ratio:1.05}.project-info h3{font-size:30px}.project-secondary .project-visual{aspect-ratio:1.3}.project-visual-bottom{flex-wrap:wrap;gap:7px}.project-secondary .preview-label{display:none}.secondary-projects{gap:30px}.about-grid{gap:55px}.about-copy h2{font-size:37px}.about-copy>.body-large{font-size:20px}.experience-row summary{grid-template-columns:1fr 1.5fr 20px;gap:20px}.experience-location{display:none}.experience-content{margin-left:39%}.stack-layout{gap:45px}.stack-row{grid-template-columns:18px 1fr 1fr;gap:12px}.community-grid{gap:45px}.awards{padding-left:30px}.leadership-role{flex-direction:column;gap:2px}.contact-socials{gap:20px}.case-subheader{align-items:flex-start}.case-links{gap:15px}}@media (max-width:760px){html{scroll-padding-top:86px}.shell{width:calc(100% - 40px)}.section{padding-block:65px}.section-label{gap:12px;margin-bottom:28px;font-size:10px}.section-number{padding-right:12px}h2{font-size:40px}.section-heading{margin-bottom:32px;display:block}.section-heading>p{margin-top:18px;font-size:13px}.site-header{height:72px}.wordmark>span{font-size:22px}.wordmark svg{width:27px;height:27px}.desktop-nav,.header-resume{display:none}.header-actions{gap:17px}.icon-button{width:44px;height:44px}.mobile-menu{display:block}.mobile-menu>summary{cursor:pointer;align-items:center;gap:10px;height:44px;font-size:11px;list-style:none;display:flex}.menu-bars{width:18px;height:10px;position:relative}.menu-bars:before,.menu-bars:after{content:"";background:var(--ink);width:18px;height:1px;transition:transform .2s;position:absolute;top:2px;left:0}.menu-bars:after{top:8px}.mobile-menu[open] .menu-bars:before{transform:translateY(3px)rotate(45deg)}.mobile-menu[open] .menu-bars:after{transform:translateY(-3px)rotate(-45deg)}.mobile-panel{background:var(--bg);border-bottom:1px solid var(--line);max-height:calc(100dvh - 72px);padding:15px 20px 24px;position:absolute;top:71px;left:0;right:0;overflow:auto;box-shadow:0 20px 25px -25px #0008}.mobile-panel>a{border-bottom:1px solid var(--line);letter-spacing:-.04em;align-items:center;gap:22px;padding:13px 0;font-size:29px;line-height:1.4;display:flex}.mobile-panel>a>.mono{color:var(--accent);font-size:10px}.mobile-panel>a>svg{margin-left:auto}.mobile-socials{flex-wrap:wrap;gap:24px;margin-top:20px;font-size:11px;display:flex}.mobile-socials>a{align-items:center;min-height:44px;display:inline-flex}.hero{padding-top:23px}.hero-topline{align-items:flex-start;gap:10px;font-size:10px}.hero-topline>span{gap:6px}.hero-topline>span:last-child{white-space:nowrap}.tiny-plus{display:none}.hero-grid{grid-template-columns:1fr;gap:38px;padding:43px 0 20px}.hero-role{margin-bottom:20px;font-size:10px}.hero h1{letter-spacing:-.073em;margin-left:-4px;font-size:clamp(76px,18vw,124px)}.hero-description{margin-top:26px;font-size:28px}.hero-intro{max-width:390px;margin-top:14px;font-size:13px}.desktop-break{display:none}.hero-actions{gap:25px;margin-top:24px}.hero-actions .button{gap:18px;min-height:50px;padding-inline:18px;font-size:12px}.hero-actions .text-link{gap:12px;font-size:12px}.hero-art{padding-top:0}.brand-study{aspect-ratio:1.52}.study-top,.study-bottom{padding:14px 17px;font-size:10px}.study-drawing{width:70%}.study-coordinate{font-size:10px}.art-caption{margin-top:10px;font-size:10px}.hero-foot{padding:5px 0 18px}.hero-socials{gap:20px}.hero-socials a{font-size:10px}.scroll-link{gap:12px;font-size:10px}.project-featured{padding-bottom:42px;display:block}.project-visual{aspect-ratio:1.35;padding-block:18px}.project-visual-top,.project-visual-bottom{padding-inline:17px}.project-visual-top .mono,.project-visual-bottom{font-size:10px}.project-visual-top>svg{width:20px;height:20px}.preview-label{display:none}.project-info{margin-top:22px}.project-info h3{margin-top:8px;font-size:31px}.project-description{margin-top:12px;font-size:14px}.inline-tech{margin-top:15px;font-size:10px}.project-metrics{gap:25px;max-width:400px;margin-top:23px;padding-top:18px}.project-metrics strong{font-size:38px}.project-metrics span,.metric-source{font-size:10px}.secondary-projects{grid-template-columns:1fr;gap:40px}.project-secondary .project-visual{aspect-ratio:1.4}.project-secondary .project-info{margin-top:22px}.project-secondary .project-info h3{font-size:28px}.about-grid{flex-direction:column-reverse;align-items:stretch;gap:40px;display:flex}.about-copy h2{font-size:37px}.about-copy>.body-large{margin-top:22px;font-size:21px}.about-copy>p{font-size:14px}.profile-notes{gap:16px;margin-top:26px;padding-top:20px}.profile-notes .eyebrow{font-size:10px}.profile-notes strong{font-size:12px}.profile-notes>div>span:last-child{font-size:10px}.portrait-block{width:75%;max-width:320px;margin-left:auto}.portrait-frame{aspect-ratio:.96}.portrait-mark{font-size:50px}.experience-row summary{grid-template-columns:1fr 20px;gap:12px;padding-block:23px}.experience-period{flex-flow:wrap;grid-column:1/-1;gap:8px 12px}.experience-period>span:nth-child(2){max-width:unset;font-size:10px}.experience-period>.mono{font-size:10px}.current-label{margin-left:auto;font-size:10px}.experience-company h3{font-size:22px}.experience-company>span{margin-top:6px;font-size:12px}.current-role{padding-inline:18px}.current-role .experience-company h3{font-size:29px}.experience-content{margin-left:0;padding-bottom:25px}.experience-summary{font-size:17px}.role-bullets{font-size:13px}.stack-layout{grid-template-columns:1fr;gap:35px}.stack-intro h2{font-size:40px}.stack-intro h2 br:nth-child(2){display:none}.stack-intro>p{max-width:280px;margin-top:18px}.stack-motif{display:none}.stack-row{grid-template-columns:22px 1fr 1.2fr;gap:12px;padding-block:21px}.stack-row h3{font-size:16px}.stack-row ul{gap:2px 8px;font-size:12px}.stack-description{font-size:10px}.community-grid{grid-template-columns:1fr;gap:37px}.leadership h3{font-size:30px}.leadership-role{flex-direction:row;align-items:center}.leadership-role strong{font-size:11px}.leadership-role .mono{font-size:10px}.awards{border-left:none;border-top:1px solid var(--line);padding-top:30px;padding-left:0}.award{gap:30px}.award h3{font-size:17px}.education{margin-top:30px;display:block}.education h3{font-size:21px;line-height:1.35}.education-meta{text-align:left;justify-content:space-between;align-items:center;gap:20px;margin-top:20px;display:flex}.education-meta>span{text-align:right;max-width:130px}.contact-section{padding-top:60px}.contact-section .section-label{font-size:10px}.contact-heading{display:block}.contact-heading h2{font-size:clamp(36px,8.8vw,59px)}.contact-arrow{width:58px;height:58px;margin-top:25px}.contact-arrow svg{width:26px;height:26px}.contact-middle{margin-top:28px;margin-bottom:30px;display:block}.email-link{font-size:clamp(16px,4.7vw,24px)}.copy-wrap{margin-top:7px}.copy-status{white-space:normal;width:100%;font-size:10px}.contact-socials{gap:30px;margin-top:30px}.contact-socials a{font-size:11px}.footer-line{flex-wrap:wrap;gap:25px 15px;padding-block:22px}.footer-line>.mono{display:none}.footer-identity{gap:10px;font-size:10px}.footer-identity svg{width:28px;height:28px}.back-top{gap:7px;font-size:10px}.case-page{padding-top:20px}.case-breadcrumb{font-size:10px}.case-header{padding-top:35px;padding-bottom:30px}.case-header h1{font-size:49px}.case-header>.eyebrow{font-size:10px}.case-subheader{margin-top:20px;display:block}.case-subheader>p{font-size:22px}.case-links{gap:22px;margin-top:22px}.case-links .button{gap:20px;padding-inline:16px;font-size:12px}.case-links .text-link{font-size:12px}.case-image{padding:24px 16px}.case-image .browser-chrome{height:20px}.case-image .browser-chrome span{font-size:9px}.case-facts{grid-template-columns:1fr;gap:22px;padding-block:28px}.case-facts p{margin-top:4px}.case-story{grid-template-columns:1fr;gap:24px;margin-top:48px}.case-story h2{margin-top:12px;font-size:33px}.case-story>.body-large{font-size:21px}.case-contributions h3{font-size:22px}.case-contributions p{font-size:14px}.case-outcome{margin-top:50px;padding:28px 21px}.case-outcome h2{font-size:33px}.case-metrics{gap:28px 35px;margin-top:26px;padding-top:24px}.case-metrics strong{font-size:43px}.case-metrics span{font-size:10px}.case-outcome>p:not(.eyebrow):not(.metric-source){font-size:14px}.next-project{gap:22px;padding-block:50px}.next-project h2{font-size:29px}.next-project>svg{width:32px;height:32px}}@media (max-width:375px){.shell{width:calc(100% - 36px)}.hero-actions{gap:18px}.hero-actions .button{gap:14px;padding-inline:13px}.header-actions{gap:12px}.hero-topline{font-size:10px}.study-top,.study-bottom{font-size:9px}.leadership-role{flex-direction:column;align-items:flex-start;gap:4px}.current-label{margin-left:0}.experience-company h3{font-size:21px}.case-header h1{font-size:44px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.project-visual .screenshot-frame,.project-visual:hover .screenshot-frame{transform:none}}.study-top,.study-bottom{color:#fff}@media (prefers-color-scheme:dark){html:not([data-theme]) .contact-section{--line:#bfbeb3;--muted:#565c50}html:not([data-theme]) .contact-section .section-number{color:#9b3d26}html:not([data-theme]) .contact-heading h2 span{color:#65705d}html:not([data-theme]) .contact-section :focus-visible{outline-color:#9b3d26}html:not([data-theme]) .visual-ishaara{color:#d0d1bf;background:#33382f}html:not([data-theme]) .visual-hack-management{color:#b9cbbc;background:#24392f}html:not([data-theme]) .visual-medwell{color:#d9cbbd;background:#3b332c}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
:root{--motion-ease:cubic-bezier(.22,1,.36,1);--entry-delay:0s}html[data-entry-offset=play]{--entry-delay:.76s}.page-transition{z-index:150;background:var(--bg);color:var(--ink);pointer-events:none;will-change:transform;--panel-travel:cubic-bezier(.65,0,.35,1);place-items:center;display:none;position:fixed;inset:0;overflow:clip}html[data-site-entry=play] .page-transition[data-kind=entry]{animation:entry-panel-up 2.2s var(--panel-travel) both;display:grid}html[data-site-entry=play] .page-transition[data-kind=entry][data-project]{animation:project-entry-up 1.6s var(--panel-travel) both}.page-transition[data-kind=project]{animation:project-panel-cover .42s var(--panel-travel) both, panel-failsafe 2.4s step-end forwards;display:grid}.page-transition[data-kind=chapter]{animation:chapter-panel-cover .38s var(--panel-travel) both, panel-failsafe 2.4s step-end forwards;display:grid}html[data-site-entry=play] .page-transition[data-kind=entry][data-chapter]:not([data-chapter=home]){animation:chapter-entry-up 1.3s var(--panel-travel) both}.page-transition[data-kind=return]{animation:return-panel-cover .38s var(--panel-travel) both, panel-failsafe 2.4s step-end forwards;display:grid}.page-transition[data-kind=project][data-phase=reveal],.page-transition[data-kind=chapter][data-phase=reveal]{animation:project-panel-up .4s var(--panel-travel) both}.page-transition[data-kind=return][data-phase=reveal]{animation:return-panel-down .4s var(--panel-travel) both}.transition-snapshot{z-index:149;pointer-events:none;background:var(--bg);animation:.8s step-end forwards snapshot-failsafe;position:fixed;inset:0;overflow:clip}.transition-snapshot *,.transition-snapshot :before,.transition-snapshot :after{transition:none!important;animation:none!important}@keyframes snapshot-failsafe{to{visibility:hidden}}.signature-lockup{position:relative}.signature-wordmark{letter-spacing:-.065em;align-items:baseline;font-size:clamp(64px,12vw,132px);font-weight:500;line-height:1;display:flex}.signature-initial{animation:.76s ease-in-out both signature-position;display:inline-block;position:relative}.signature-initial>svg{width:.84em;height:.84em;color:var(--accent);animation:.8s linear both signature-mark;position:absolute;top:.015em;left:-.065em}.signature-initial>span{animation:.8s both signature-letter-r;display:block}.signature-letters{display:inline-flex}.signature-letters>span{animation:.24s ease-out both signature-letter;display:block}.signature-letters>span:first-child{animation-delay:.6s}.signature-letters>span:nth-child(2){animation-delay:.71s}.signature-letters>span:nth-child(3){animation-delay:.82s}.signature-letters>span:nth-child(4){animation-delay:.93s}.signature-rule{background:var(--accent);transform-origin:0;height:1px;margin-top:19px;animation:.5s ease-in-out .8s both signature-rule;display:block}@keyframes signature-position{0%,65%{transform:translate(1.32em)}to{transform:none}}@keyframes signature-mark{0%,37.5%{opacity:0;clip-path:inset(0 100% 0 0)}65%,80%{opacity:1;clip-path:inset(0)}to{opacity:0;clip-path:inset(0)}}@keyframes signature-letter-r{0%,75%{opacity:0}to{opacity:1}}@keyframes signature-letter{0%{opacity:0;clip-path:inset(0 0 100%);transform:translateY(12px)}to{opacity:1;clip-path:inset(-10%);transform:none}}@keyframes signature-rule{0%{opacity:.65;transform:scaleX(0)}to{opacity:.65;transform:scaleX(1)}}@keyframes entry-panel-up{0%,81.818%{visibility:visible;transform:none}to{visibility:hidden;transform:translateY(-100%)}}@keyframes project-entry-up{0%,75%{visibility:visible;transform:none}to{visibility:hidden;transform:translateY(-100%)}}@keyframes project-panel-cover{0%,19%{transform:translateY(100%)}to{transform:none}}@keyframes chapter-panel-cover{0%,21%{transform:translateY(100%)}to{transform:none}}@keyframes chapter-entry-up{0%,69.23%{visibility:visible;transform:none}to{visibility:hidden;transform:translateY(-100%)}}@keyframes return-panel-cover{0%,26.3%{transform:translateY(-100%)}to{transform:none}}@keyframes project-panel-up{0%{visibility:visible;transform:none}to{visibility:hidden;transform:translateY(-100%)}}@keyframes return-panel-down{0%{visibility:visible;transform:none}to{visibility:hidden;transform:translateY(100%)}}@keyframes panel-failsafe{0%{visibility:visible}to{visibility:hidden}}.project-intro{text-align:center;justify-items:center;gap:clamp(12px,2.4svh,24px);width:min(1040px,88vw);padding-block:clamp(20px,4svh,48px);display:grid}.project-intro-index{letter-spacing:.08em;color:var(--accent);font-size:10px;animation:.45s ease-out .12s both chapter-type}.project-intro-heading{width:100%}.project-intro-title{letter-spacing:-.065em;text-transform:uppercase;text-wrap:balance;font-size:clamp(34px,7vw,94px);font-weight:500;line-height:1;animation:.75s ease-out .15s both chapter-type}.project-intro-subtitle{letter-spacing:.045em;text-transform:uppercase;margin-top:16px;font-size:clamp(10px,1.2vw,12px);animation:.55s ease-out .32s both chapter-type}.project-intro-visual{width:min(660px,100%);padding:clamp(12px,2vw,24px);animation:.7s ease-out .4s both chapter-image;overflow:clip}.project-intro-visual img{object-fit:contain;width:100%;height:auto;max-height:30svh;animation:.7s ease-out .4s both project-intro-image;display:block}.project-intro-tech{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:8px 20px;font-size:10px;animation:.55s ease-out .5s both chapter-type;display:flex}@keyframes chapter-type{0%{opacity:0;clip-path:inset(0 0 100%);transform:translateY(22px)}55%{opacity:1;clip-path:inset(-15%)}to{opacity:1;clip-path:inset(-15%);transform:none}}@keyframes chapter-image{0%{opacity:0;clip-path:inset(12% 0);transform:scale(.94)}55%{opacity:1;clip-path:inset(0)}to{opacity:1;clip-path:inset(0);transform:none}}.return-intro{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}.return-badge{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-size:10px;animation:.3s ease-out .18s both signature-letter}.return-wordmark{letter-spacing:-.065em;align-items:baseline;font-size:clamp(48px,9vw,96px);font-weight:500;line-height:1;display:flex}.return-initial{color:var(--accent);align-items:baseline;display:inline-flex;position:relative}.return-initial>svg{vertical-align:baseline;width:.84em;height:.84em;animation:.3s ease-out .26s both return-mark;display:inline-block}.return-letters{display:inline-flex}.return-letters>span{animation:.3s ease-out .3s both signature-letter}.return-letters>span:nth-child(2){animation-delay:.35s}.return-letters>span:nth-child(3){animation-delay:.4s}.return-letters>span:nth-child(4){animation-delay:.45s}.return-rule{background:var(--accent);transform-origin:0;width:52px;height:1px;margin-top:4px;animation:.25s ease-in-out .55s both signature-rule;display:block}@keyframes return-mark{0%{opacity:0;clip-path:inset(0 100% 0 0);transform:translateY(8px)}to{opacity:1;clip-path:inset(0);transform:none}}@keyframes project-intro-image{0%{transform:scale(.97)}to{transform:none}}.shared-project-image{z-index:151;pointer-events:none;transform-origin:0 0;will-change:transform, opacity;position:fixed}.chapter-intro{flex-direction:column;align-items:flex-start;gap:30px;width:min(1080px,86vw);display:flex}.chapter-intro-index{letter-spacing:.1em;color:var(--accent);font-size:10px;animation:.45s ease-out .12s both chapter-type}.chapter-intro-lockup{align-items:center;gap:clamp(20px,4vw,60px);width:100%;display:flex}.chapter-intro-title{letter-spacing:-.065em;font-size:clamp(40px,10.5vw,144px);font-weight:500;line-height:1;display:flex}.chapter-intro-title>span{animation:.6s ease-out both chapter-type;display:block}.chapter-intro-subtitle{text-transform:uppercase;letter-spacing:.08em;margin-top:22px;font-size:clamp(10px,1.4vw,14px);animation:.5s ease-out .32s both chapter-type}.chapter-intro-rule{background:var(--accent);transform-origin:0;width:100%;height:1px;animation:.4s ease-in-out .4s both signature-rule}.chapter-intro-detail,.chapter-career,.chapter-layers{letter-spacing:.03em;color:var(--muted);font-size:10px;animation:.45s ease-out .4s both chapter-type}.chapter-portrait{aspect-ratio:4/5;object-fit:cover;width:clamp(65px,10vw,120px);height:auto;animation:.7s ease-out .2s both chapter-image}.chapter-career{justify-content:space-between;gap:12px;width:100%;display:flex}.chapter-career span:not(:last-child):after{content:" →";color:var(--accent);margin-left:16px}.chapter-layers{flex-direction:column;gap:10px;display:flex}.chapter-layers span{border-left:1px solid var(--accent);padding-left:15px}.chapter-layers span:nth-child(2){margin-left:25px}.chapter-layers span:nth-child(3){margin-left:50px}.chapter-contact{align-items:center;gap:20px;display:flex}.chapter-contact svg{width:25px;height:25px}@media (max-width:600px){.chapter-intro{gap:24px}.chapter-intro-title{font-size:10.2vw}.chapter-career{flex-wrap:wrap;justify-content:flex-start;gap:18px}.chapter-career span:not(:last-child):after{margin-left:10px}}@media (max-height:560px){.project-intro{gap:10px;padding-block:16px}.project-intro-title{font-size:clamp(28px,5vw,52px)}.project-intro-subtitle{margin-top:8px}.project-intro-visual{width:min(440px,100%);padding:10px}.project-intro-visual img{max-height:24svh}}.study-monogram{animation:none}html[data-motion=on] :is(.wordmark,.desktop-nav,.header-actions,.hero-topline,.hero-role,.hero-description,.hero-intro,.hero-actions,.art-caption,.hero-foot){animation:motion-up .46s var(--motion-ease) backwards}html[data-motion=on] .wordmark{animation-delay:var(--entry-delay)}html[data-motion=on] .desktop-nav{animation-delay:calc(var(--entry-delay) + 30ms)}html[data-motion=on] .header-actions{animation-delay:calc(var(--entry-delay) + 60ms)}html[data-motion=on] .hero-topline{animation-delay:calc(var(--entry-delay) + 45ms)}html[data-motion=on] .hero-role{animation-delay:calc(var(--entry-delay) + 95ms)}html[data-motion=on] .hero h1>span{animation:motion-heading .54s var(--motion-ease) backwards;animation-delay:calc(var(--entry-delay) + .14s)}html[data-motion=on] .hero h1>span:last-child{animation-delay:calc(var(--entry-delay) + .21s)}html[data-motion=on] .hero-description{animation-delay:calc(var(--entry-delay) + .28s)}html[data-motion=on] .hero-intro{animation-delay:calc(var(--entry-delay) + .34s)}html[data-motion=on] .hero-actions{animation-delay:calc(var(--entry-delay) + .4s)}html[data-motion=on] .hero-art .brand-study{animation:motion-image .65s var(--motion-ease) backwards;animation-delay:calc(var(--entry-delay) + .315s)}html[data-motion=on] .study-monogram{animation:motion-mark .65s var(--motion-ease) backwards;animation-delay:calc(var(--entry-delay) + .34s)}html[data-motion=on] .art-caption{animation-delay:calc(var(--entry-delay) + .475s)}html[data-motion=on] .hero-foot{animation-delay:calc(var(--entry-delay) + .515s)}html[data-motion=on] :is(.wordmark,.header-actions,.hero-actions):focus-within{animation:none}@keyframes motion-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes motion-heading{0%{opacity:0;clip-path:inset(0 -10% 100%);transform:translateY(15px)}to{opacity:1;clip-path:inset(-24% -10% -30%);transform:none}}@keyframes motion-image{0%{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}@keyframes motion-mark{0%{opacity:.5;transform:translateY(8px)scale(.975)}to{opacity:1;transform:none}}html[data-motion=on] .case-breadcrumb{animation:motion-up .34s var(--motion-ease) backwards}html[data-motion=on] .case-header>.eyebrow{animation:motion-up .38s var(--motion-ease) 45ms backwards}html[data-motion=on] .case-header h1{animation:motion-heading .48s var(--motion-ease) 85ms backwards}html[data-motion=on] .case-subheader{animation:motion-up .42s var(--motion-ease) .15s backwards}.motion-pending{opacity:0}.motion-pending:focus-within{opacity:1}.metric-value>[data-count]{font:inherit;color:inherit;letter-spacing:inherit;margin:0}.metric-value>.is-counting{display:inline-block}.nav-link:after{transition:transform .24s var(--motion-ease), opacity .18s ease;opacity:0}.nav-link:is(:hover,:focus-visible,.active):after{opacity:1;transform:scale(1)}.button{transition:transform .22s var(--motion-ease), background-color .22s ease, color .22s ease}.icon-button{transition:transform .22s var(--motion-ease), background-color .18s ease}.text-link:after{transition:transform .28s var(--motion-ease)}.text-link:focus-visible:after{transform:scaleX(1)}.text-link svg,.button svg,.header-resume svg,.hero-socials svg,.contact-socials svg,.contact-arrow svg,.back-top svg,.project-info :is(h2,h3) svg,.project-visual-top>svg{transition:transform .3s var(--motion-ease)}.project-info :is(h2,h3) a{transition:transform .32s var(--motion-ease)}.project-info>.eyebrow,.project-info .inline-tech{transition:color .22s}.project-visual img{transition:transform .55s var(--motion-ease)}.preview-label{transition:transform .3s var(--motion-ease)}.button:active,.icon-button:active{transform:translateY(1px)scale(.985)}.contact-arrow:active{transform:scale(.97)}.copy-button svg{transition:transform .22s var(--motion-ease)}.copy-button:active svg{transform:scale(.9)}@media (hover:hover) and (pointer:fine){.button:hover,.icon-button:hover{transform:translateY(-2px)}.button:active,.icon-button:active{transform:translateY(1px)scale(.985)}:is(.project:has(.project-visual:hover) .project-info :is(h2,h3) a,.project-info :is(h2,h3) a:hover){transform:translate(3px)}.project-visual:hover .project-visual-top>svg{transform:translate(3px,-3px)}.project:has(a:hover) .project-info :is(h2,h3) svg{transform:translate(3px,-3px)}:is(.project:has(a:hover) .project-info>.eyebrow,.project:has(a:hover) .project-info .inline-tech){color:var(--ink)}.project-visual:hover img{transform:scale(1.025)translate(-1px,-1px)}.project-visual:hover .preview-label{transform:translate(2px)}.header-resume:hover svg,.hero-socials a:hover svg,.contact-socials a:hover svg,.contact-arrow:hover svg{transform:translate(3px,-3px)}.back-top:hover svg{transform:translateY(-3px)rotate(-90deg)}}.project-visual:focus-visible .screenshot-frame{transform:perspective(1200px)rotateY(0)rotateX(0)translateY(-5px)}.project-visual:focus-visible .project-visual-top>svg{transform:translate(3px,-3px)}@supports (transition-behavior:allow-discrete){.mobile-menu::details-content{transition:content-visibility .18s allow-discrete}.mobile-panel{opacity:0;transition:opacity .18s ease, transform .22s var(--motion-ease);transform:translateY(-6px)}.mobile-menu[open] .mobile-panel{opacity:1;transform:none}@starting-style{.mobile-menu[open] .mobile-panel{opacity:0;transform:translateY(-6px)}}}.mobile-menu[open] .mobile-panel>a{animation:motion-up .26s var(--motion-ease) backwards}.mobile-menu[open] .mobile-panel>a:nth-child(2){animation-delay:25ms}.mobile-menu[open] .mobile-panel>a:nth-child(3){animation-delay:50ms}.mobile-menu[open] .mobile-panel>a:nth-child(4){animation-delay:75ms}.experience-row[open] .experience-content{animation:motion-up .28s var(--motion-ease) backwards}::view-transition-old(root){animation-duration:.2s;animation-timing-function:ease}::view-transition-new(root){animation-duration:.2s;animation-timing-function:ease}html[data-theme-transition=native] :is(.button,.icon-button,.contact-arrow,.project-info>.eyebrow,.project-info .inline-tech){transition-property:transform}html[data-theme-transition=fallback] :is(body,.site-header,.about-section,.stack-section,.contact-section,.project-visual,.case-image,.case-outcome,.current-role){transition:background-color .18s,color .18s}@media (prefers-reduced-motion:reduce){.page-transition,.shared-project-image,.transition-snapshot,html[data-site-entry=play] .page-transition[data-kind=entry]{display:none!important}.motion-pending{opacity:1}*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.project-visual img,.project-visual:focus-visible .screenshot-frame,.project-info :is(h2,h3) a,.button,.icon-button,.contact-arrow{transform:none!important}::view-transition-old(root){animation:none!important}::view-transition-new(root){animation:none!important}}
.desktop-nav{gap:clamp(14px,2vw,28px);margin-left:24px}.chapter-page{min-height:72svh;padding-bottom:110px}.chapter-header{padding-block:80px 65px}.chapter-heading{grid-template-columns:1.7fr 1fr;align-items:end;gap:60px;display:grid}.chapter-heading h1{letter-spacing:-.065em;text-wrap:balance;max-width:940px;font-size:clamp(56px,7.3vw,108px);font-weight:500;line-height:.98}.chapter-summary{max-width:330px;color:var(--muted);padding-bottom:5px;font-size:14px}.chapter-directory{padding-block:30px 95px}.chapter-directory-link{border-top:1px solid var(--line);grid-template-columns:60px 1fr 32px;align-items:center;gap:25px;padding-block:25px;display:grid}.chapter-directory-link>span:nth-child(2){letter-spacing:-.04em;font-size:28px}.chapter-directory-link small{color:var(--muted);letter-spacing:.03em;text-transform:uppercase;margin-top:4px;font-size:10px;display:block}.chapter-directory-link svg{transition:transform .35s var(--motion-ease)}.chapter-directory-link:hover svg{transform:translate(3px,-3px)}.work-showcase>.project{border-top:1px solid var(--line);margin:0;padding-block:50px 80px}.work-showcase>.project+.project{margin-top:25px}.project-info .project-title{letter-spacing:-.03em;text-wrap:wrap;margin-top:12px;font-size:34px;line-height:1.2}.project-title a{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.project-title svg{width:21px;height:21px}@media (max-width:1100px){.project-info .project-title{font-size:30px}}@media (max-width:760px){.project-info .project-title{margin-top:8px;font-size:31px}}.profile-editorial{grid-template-columns:1fr 1.2fr;align-items:start;gap:85px;display:grid}.profile-editorial .portrait-frame{aspect-ratio:4/5}.profile-editorial .portrait-frame img{object-fit:cover;width:100%;height:100%}.profile-editorial .about-copy{padding-top:20px}.profile-editorial .about-copy h2{margin-top:20px}.profile-links{flex-wrap:wrap;gap:25px;margin-top:30px;display:flex}.profile-interests{border-top:1px solid var(--line);margin-top:100px;padding-top:40px}.profile-interests h2{margin-top:20px}.interest-columns{grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px;display:grid}.interest-columns h3{margin-block:15px;font-size:22px;line-height:1.3}.interest-columns p{color:var(--muted);font-size:14px}.profile-page .community-section{padding-bottom:0}.career-timeline{list-style:none}.timeline-role{border-top:1px solid var(--line);grid-template-columns:.7fr 1.5fr;gap:80px;padding:40px 0 65px 40px;display:grid;position:relative}.timeline-role:before{content:"";background:var(--line);width:1px;position:absolute;top:48px;bottom:-48px;left:0}.timeline-role:last-child:before{bottom:45px}.timeline-role:after{content:"";background:var(--accent);border-radius:50%;width:9px;height:9px;position:absolute;top:48px;left:-4px}.timeline-period p{margin-block:14px 8px;font-size:13px}.timeline-period>.mono:last-child{color:var(--muted)}.timeline-role h2{margin-block:12px 20px;font-size:clamp(30px,3.4vw,48px)}.timeline-role .current-label{margin-bottom:20px}.timeline-role .experience-summary{margin-top:24px}.timeline-role .role-bullets{font-size:14px}.engineering-system{grid-template-columns:.65fr 1.5fr;align-items:start;gap:80px;display:grid}.system-rail{color:var(--muted);flex-direction:column;align-items:flex-start;gap:20px;padding-top:26px;display:flex;position:sticky;top:125px}.system-rail .stack-motif{margin-block:20px}.system-connector{background:var(--line);width:1px;height:60px;margin-left:35px}.engineering-system .stack-row h2{letter-spacing:-.03em;font-size:23px;line-height:1.2}.contact-page .chapter-heading{grid-template-columns:1.5fr 1fr}.contact-page h1{max-width:600px;font-size:clamp(88px,13vw,184px)}.contact-destination{padding-top:15px}.contact-direct{letter-spacing:-.04em;border-bottom:1px solid var(--line);overflow-wrap:anywhere;justify-content:space-between;align-items:center;gap:30px;padding-block:25px;font-size:clamp(19px,3vw,40px);display:flex}.contact-direct svg{flex-shrink:0;width:36px;height:36px}.contact-destination .contact-socials{margin-top:55px}.contact-location{color:var(--muted);margin-top:80px}.site-footer{background:var(--surface)}.site-footer .footer-identity svg{--bg:var(--surface)}.site-footer .footer-line{border-top:1px solid var(--line)}@media (max-width:1100px){.profile-editorial,.engineering-system,.timeline-role{gap:45px}.chapter-heading{gap:35px}}@media (max-width:760px){.chapter-header{padding-block:45px}.chapter-page{padding-bottom:70px}.chapter-heading,.contact-page .chapter-heading{grid-template-columns:1fr;gap:25px}.chapter-heading h1{font-size:clamp(48px,12vw,76px)}.chapter-summary{font-size:13px}.chapter-directory{padding-bottom:60px}.chapter-directory-link{grid-template-columns:30px 1fr 24px;gap:16px}.work-showcase>.project{padding-block:25px 55px}.profile-editorial,.engineering-system,.interest-columns{grid-template-columns:1fr;gap:35px}.profile-editorial .portrait-block{max-width:500px}.profile-interests{margin-top:65px}.timeline-role{grid-template-columns:1fr;gap:26px;padding-left:24px}.timeline-role h2{font-size:34px}.timeline-role .role-bullets{font-size:13px}.system-rail{display:none;position:static}.contact-page h1{max-width:320px;font-size:clamp(84px,20vw,136px)}.contact-destination .contact-socials{gap:25px}.site-footer .footer-line{flex-wrap:wrap;gap:20px}.site-footer .footer-line>.text-link{font-size:12px}}@media (prefers-reduced-motion:reduce){.chapter-directory-link svg{transition:none}}
