@font-face{font-family:dmSans;src:url(../media/dm_sans_latin_wght_normal-s.p.0tm8u-h63rec8.woff2)format("woff2");font-display:optional;font-weight:100 1000}@font-face{font-family:dmSans Fallback;src:local(Arial);ascent-override:94.36%;descent-override:29.49%;line-gap-override:0.0%;size-adjust:105.13%}.UYPBha_className{font-family:dmSans,dmSans Fallback}.UYPBha_variable{--font-dm-sans:"dmSans", "dmSans Fallback"}
@font-face{font-family:instrumentSerif;src:url(../media/instrument_serif_latin_400_normal-s.p.3_vslfxq_--4i.woff2)format("woff2");font-display:optional;font-weight:400}@font-face{font-family:instrumentSerif Fallback;src:local(Arial);ascent-override:128.92%;descent-override:40.37%;line-gap-override:0.0%;size-adjust:76.79%}._4bNwCW_className{font-family:instrumentSerif,instrumentSerif Fallback;font-weight:400}._4bNwCW_variable{--font-instrument-serif:"instrumentSerif", "instrumentSerif Fallback"}
@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;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:-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-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--radius-3xl:1.5rem;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-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{.pointer-events-none{pointer-events:none}.\!visible{visibility:visible!important}.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}.relative{position:relative}.static{position:static}.inset-0{inset:0}.isolate{isolation:isolate}.-z-10{z-index:calc(10 * -1)}.z-\[1\]{z-index:1}.block{display:block}.flex{display:flex}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.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}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-\[inherit\]{border-radius:inherit}.border{border-style:var(--tw-border-style);border-width:1px}.\[background-color\:var\(--spotlight-card-surface\)\]{background-color:var(--spotlight-card-surface)}.bg-\[length\:160px_160px\]{background-size:160px 160px}.p-8{padding:calc(var(--spacing) * 8)}.p-px{padding:1px}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.opacity-0{opacity:0}.mix-blend-overlay{mix-blend-mode:overlay}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.\[box-shadow\:var\(--spotlight-card-shadow\)\]{box-shadow:var(--spotlight-card-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.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))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.\[-webkit-mask-composite\:xor\]{-webkit-mask-composite:xor}.\[-webkit-mask\:linear-gradient\(\#000_0_0\)_content-box\,linear-gradient\(\#000_0_0\)\]{-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0)}.\[background\:var\(--spotlight-card-border\)\]{background:var(--spotlight-card-border)}.\[mask\:linear-gradient\(\#000_0_0\)_content-box_exclude\,linear-gradient\(\#000_0_0\)\]{-webkit-mask-composite:xor,source-over;-webkit-mask-composite:xor,source-over;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}}:root{--paper:#f5f3ed;--paper-2:#ebe8df;--ink:#1a201e;--muted:#636b66;--line:#c9ccc3;--accent:#c34f31;--accent-dark:#a54028;--sage:#b9c7b9;--serif:"Instrument Serif",Georgia,serif;--sans:"DM Sans Variable","DM Sans",Arial,sans-serif;--content:1240px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root.dark{--paper:#171a18;--paper-2:#202522;--ink:#edf0e9;--muted:#a2aaa4;--line:#414844;--accent:#f0805d;--accent-dark:#ff9675;--sage:#35443d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}::selection{background:var(--accent);color:#fff}.page-wrap{width:min(var(--content),calc(100% - 96px));margin-inline:auto}.skip-link{z-index:100;background:var(--ink);color:var(--paper);padding:12px 18px;position:absolute;top:-70px;left:16px}.skip-link:focus{top:16px}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;width:min(1440px,100%);height:82px;margin:auto;padding:0 48px;display:flex}.wordmark{letter-spacing:-.02em;align-items:center;gap:11px;font-size:14px;font-weight:650;display:flex}.wordmark-mark{border:1px solid var(--line);width:32px;height:32px;font:18px var(--serif);color:var(--accent);place-items:center;display:grid}.site-header nav{color:var(--muted);align-items:center;gap:30px;font-size:12px;display:flex}.site-header nav a:hover,.text-link:hover,.social-links a:hover{color:var(--accent)}.nav-resume{border-bottom:1px solid var(--accent);padding:5px 0;color:var(--ink)!important}.nav-resume span{color:var(--accent)}.theme-toggle{border:1px solid var(--line);width:34px;height:34px;color:var(--ink);cursor:pointer;background:0 0;border-radius:50%;font-size:16px}.section-expansion-control{border:1px solid var(--line);width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border-radius:50%;place-items:center;padding:0;transition:border-color .2s,color .2s,background .2s;display:grid}.section-expansion-control:hover,.section-expansion-control[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.section-expansion-control:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.section-expansion-control svg{width:16px;height:16px}.hero{grid-template-columns:1.1fr .9fr;align-items:center;min-height:680px;padding-block:76px 55px;display:grid;position:relative}.hero-copy{z-index:2;position:relative}.eyebrow{text-transform:uppercase;letter-spacing:.13em;color:var(--muted);align-items:center;gap:10px;margin:0;font-size:10px;font-weight:650;display:flex}.status-dot{background:#69876b;border-radius:50%;width:7px;height:7px;display:inline-block;box-shadow:0 0 0 4px #69876b26}.eyebrow-divider{color:var(--accent);margin-inline:2px}.hero h1{letter-spacing:-.075em;margin:44px 0 30px;font-size:clamp(72px,9vw,132px);font-weight:500;line-height:.83}.hero h1 em,.section-heading em,.about-grid h2 em,.contact-copy h2 em{font-family:var(--serif);letter-spacing:-.045em;color:var(--accent);font-weight:400}.hero-intro{align-items:end;gap:35px;max-width:570px;display:flex}.hero-intro p{max-width:440px;margin:0;font-size:17px;line-height:1.55}.hero-index{color:var(--muted);white-space:nowrap;font-size:10px}.hero-index i{background:var(--accent);vertical-align:middle;width:34px;height:1px;margin:0 6px;display:inline-block}.hero-actions{align-items:center;gap:30px;margin:31px 0 55px;display:flex}.text-link{border-bottom:1px solid var(--line);padding:8px 0;font-size:12px;transition:color .2s}.text-link span{color:var(--accent);margin-left:8px}.hero-role{border-top:1px solid var(--line);letter-spacing:.1em;color:var(--muted);gap:24px;padding-top:13px;font-size:10px;display:flex}.hero-role span:first-child{color:var(--accent);font-weight:700}.hero-art{isolation:isolate;height:440px;margin-left:4%;position:relative;overflow:hidden}.ticker{border-block:1px solid var(--line);overflow:hidden}.ticker-inner{letter-spacing:.18em;min-height:67px;color:var(--muted);white-space:nowrap;justify-content:center;align-items:center;gap:clamp(22px,5vw,76px);font-size:9px;font-weight:650;display:flex}.ticker-inner i{color:var(--accent);font-size:14px;font-style:normal}.section{padding-block:114px}.section-label{border-bottom:1px solid var(--line);color:var(--muted);letter-spacing:.15em;justify-content:space-between;align-items:center;padding-bottom:14px;font-size:9px;font-weight:650;display:flex}.section-label span:first-child{color:var(--accent)}.about-grid{grid-template-columns:1fr 1fr;gap:8%;padding-top:62px;display:grid}.about-grid h2,.section-heading{letter-spacing:-.065em;margin:0;font-size:clamp(46px,6vw,76px);font-weight:500;line-height:.98}.about-copy{max-width:560px;padding-top:5px}.about-copy p{color:var(--muted);margin:0 0 18px;font-size:15px;line-height:1.8}.principles{flex-wrap:wrap;gap:8px;margin-top:26px;display:flex}.principles span{border:1px solid var(--line);color:var(--ink);border-radius:30px;padding:7px 13px;font-size:10px}.motion-support{color:var(--accent);letter-spacing:.1em;margin-top:20px;font-size:10px}.motion-support .blur-text{flex-wrap:wrap;margin:0;display:inline-flex}.experience-section{background:var(--paper-2)}.experience-section .section-heading,.skills-section .section-heading{margin:43px 0 52px}.experience-list{border-top:1px solid var(--line)}.experience-item{border-bottom:1px solid var(--line);grid-template-columns:27% 1fr;gap:3%;padding:31px 0 39px;display:grid}.experience-meta{color:var(--muted);align-items:flex-start;gap:18px;font-size:11px;display:flex}.experience-number{color:var(--accent);letter-spacing:.12em;font-size:10px}.job-heading{justify-content:space-between;align-items:baseline;gap:20px;display:flex}.job-heading h3{letter-spacing:-.035em;margin:0;font-size:20px;font-weight:580}.job-heading p{color:var(--muted);margin:0;font-size:11px}.job-heading p span{color:var(--accent)}.job-summary{font:21px/1.3 var(--serif);color:var(--accent);margin:13px 0 15px}.experience-main ul{grid-template-columns:1fr 1fr;gap:10px 26px;margin:0;padding:0;list-style:none;display:grid}.experience-main li{color:var(--muted);padding-left:15px;font-size:12px;line-height:1.6;position:relative}.experience-main li:before{content:"↗";color:var(--accent);font-size:9px;position:absolute;left:0}.projects-section{padding-bottom:122px}.project-header{justify-content:space-between;align-items:end;margin:42px 0 48px;display:flex}.project-count{color:var(--muted);letter-spacing:.12em;font-size:10px}.project-card{border:1px solid var(--line);grid-template-columns:1.1fr .9fr;min-height:470px;display:grid;overflow:hidden;--spotlight-card-surface:var(--paper-2)!important;--spotlight-card-shadow:none!important;border-radius:0!important;padding:0!important}.project-image-wrap{background:#202925;min-height:100%;position:relative;overflow:hidden}.project-image{object-fit:cover;object-position:top left;width:100%;height:100%;min-height:470px;transition:transform .6s cubic-bezier(.2,.7,.2,1);display:block}.project-card:hover .project-image{transform:scale(1.025)}.image-stamp{background:var(--paper);color:var(--ink);letter-spacing:.12em;align-items:center;padding:8px 12px;font-size:9px;font-weight:700;transition:color .18s,background .18s;display:inline-flex;position:absolute;top:22px;left:22px}.image-stamp:hover{background:var(--accent);color:#fff}.image-stamp i{color:var(--accent);margin-left:10px;font-style:normal}.image-stamp:hover i{color:#fff}.project-copy{flex-direction:column;align-items:flex-start;padding:clamp(26px,4vw,53px);display:flex}.project-eyebrow{font-size:9px}.project-eyebrow span{color:var(--accent)}.project-copy h3{letter-spacing:-.07em;margin:22px 0 18px;font-size:clamp(54px,6vw,76px);font-weight:500;line-height:.9}.project-lede{color:var(--muted);margin:0 0 27px;font-size:14px;line-height:1.7}.project-story{border-top:1px solid var(--line);width:100%;padding-top:18px}.project-story div+div{margin-top:17px}.project-story span,.cert-label{letter-spacing:.14em;color:var(--accent);font-size:9px;font-weight:700}.project-story p{color:var(--muted);margin:6px 0 0;font-size:11px;line-height:1.65}.project-link{margin-top:auto;padding-top:26px;font-size:12px;font-weight:650}.project-link span{color:var(--accent);margin-left:9px}.skills-section{background:var(--paper-2)}.skills-grid{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.skill-group{border-right:1px solid var(--line);padding:24px 21px 28px}.skill-group:first-child,.skill-group:nth-child(4){padding-left:0}.skill-group:nth-child(3){border-right:0}.skill-group:nth-child(n+4){border-top:1px solid var(--line)}.skill-number{color:var(--accent);letter-spacing:.15em;font-size:10px}.skill-group h3{letter-spacing:-.03em;margin:17px 0 0;font-size:19px}.skill-group>p{font:16px var(--serif);color:var(--muted);margin:1px 0 19px}.skill-group ul{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.skill-group li{color:var(--muted);border:1px solid var(--line);border-radius:20px;padding:5px 9px;font-size:10px}.certifications,.education{border-bottom:1px solid var(--line);grid-template-columns:22% 1fr;gap:18px;padding:24px 0;display:grid}.certifications p,.education p{color:var(--muted);margin:0;font-size:11px;line-height:1.8}.education strong{color:var(--ink)}.education p span{color:var(--accent)}.contact-section{background:var(--ink);color:var(--paper);padding-block:110px}.contact-grid{grid-template-columns:1fr .75fr;gap:12%;display:grid}.contact-section .section-label{color:#a9b0aa;border-color:#ffffff38}.contact-copy{max-width:620px}.contact-kicker{font:21px var(--serif);color:var(--accent);margin:43px 0 17px}.contact-copy h2{letter-spacing:-.075em;margin:0;font-size:clamp(64px,8vw,100px);font-weight:500;line-height:.85}.contact-copy h2 em{color:#ef8667}.contact-note{color:#b8beb8;max-width:390px;margin:25px 0;font-size:13px;line-height:1.8}.email-link{border-bottom:1px solid #ffffff54;align-items:center;gap:18px;padding-bottom:8px;font-size:16px;display:inline-flex}.email-link span,.social-links a:hover{color:#ef8667}.social-links{gap:25px;margin-top:26px;display:flex}.social-links a{color:#b8beb8;font-size:11px;transition:color .2s}.contact-panel{padding-top:90px}.contact-form{gap:20px;display:grid}.contact-form label{color:#b8beb8;letter-spacing:.05em;gap:7px;font-size:10px;display:grid}.contact-form input:not(.honeypot),.contact-form textarea{color:var(--paper);resize:vertical;background:0 0;border:0;border-bottom:1px solid #ffffff54;outline:none;padding:9px 0;font-size:14px}.contact-form input:focus,.contact-form textarea:focus{border-color:#ef8667}.honeypot{width:1px;height:1px;position:absolute!important;left:-9999px!important}.button{cursor:pointer;border:0;justify-content:space-between;align-items:center;padding:15px 18px;display:flex}.button-dark{background:var(--accent);color:#fff;margin-top:7px;font-size:12px;font-weight:650}.button-dark:disabled{opacity:.6;cursor:wait}.form-status{color:#efaa94;min-height:22px;margin:0;font-size:11px}.form-note{border:1px solid #ffffff45;align-items:flex-start;gap:15px;margin-top:8px;padding:24px 22px;display:flex}.form-note-icon{color:#ef8667;font-size:20px}.form-note strong{font-size:13px}.form-note p{color:#b8beb8;margin:6px 0 0;font-size:11px;line-height:1.7}.site-footer{min-height:75px;color:var(--muted);justify-content:space-between;align-items:center;font-size:10px;display:flex}.site-footer a:hover{color:var(--accent)}@media (max-width:900px){.page-wrap{width:calc(100% - 56px)}.site-header{padding-inline:28px}.site-header nav{gap:17px}.hero{grid-template-columns:1.05fr .85fr;min-height:600px}.hero h1{font-size:clamp(69px,11vw,104px)}.hero-art{height:350px;margin-left:0}.experience-item{grid-template-columns:22% 1fr}.job-heading{flex-direction:column;align-items:flex-start;gap:3px}.experience-main ul{grid-template-columns:1fr}.project-card{grid-template-columns:1fr .9fr}.project-image-wrap,.project-image{min-height:420px}.skills-grid{grid-template-columns:repeat(2,1fr)}.skill-group:nth-child(2){border-right:0}.skill-group:nth-child(3){border-top:1px solid var(--line);padding-left:0}.skill-group:nth-child(4){border-top:1px solid var(--line)}}@media (max-width:640px){html{scroll-padding-top:72px}.page-wrap{width:calc(100% - 40px)}.site-header{height:70px;padding-inline:20px}.wordmark{font-size:12px}.site-header nav{gap:12px}.site-header nav>a:not(.nav-resume){display:none}.nav-resume{font-size:10px}.theme-toggle{width:31px;height:31px}.hero{flex-direction:column;align-items:stretch;min-height:0;padding-block:64px 44px;display:flex}.hero .eyebrow{letter-spacing:.11em;grid-template-columns:7px 1fr;gap:1px 10px;font-size:9px;display:grid}.hero .status-dot{grid-area:1/1}.eyebrow-location{grid-column:2}.hero .eyebrow-divider{display:none}.availability-copy{grid-column:2;line-height:1.5}.hero h1{margin:36px 0 23px;font-size:clamp(68px,17vw,100px)}.hero-intro p{font-size:15px}.hero-index{display:none}.hero-actions{margin:25px 0 35px}.hero-role{gap:18px;font-size:8px}.hero-art{width:min(100%,390px);height:280px;margin:48px auto 0}.ticker-inner{justify-content:flex-start;gap:24px;min-height:54px;padding-left:20px;font-size:8px}.section{padding-block:76px}.section-label{letter-spacing:.1em;font-size:8px}.section-label span:last-child{text-align:right;max-width:46%}.about-grid{grid-template-columns:1fr;gap:27px;padding-top:39px}.about-grid h2,.section-heading{font-size:clamp(48px,12vw,66px)}.about-copy p{font-size:14px}.experience-section .section-heading,.skills-section .section-heading{margin:33px 0 38px}.experience-item{grid-template-columns:1fr;gap:14px;padding:25px 0 30px}.experience-meta{justify-content:space-between;max-width:205px;font-size:10px}.job-heading h3{font-size:18px}.job-summary{font-size:19px}.experience-main ul{gap:9px}.experience-main li{font-size:11px}.project-header{margin:34px 0 32px}.project-card{grid-template-columns:1fr}.project-image-wrap,.project-image{height:250px;min-height:250px}.project-copy{padding:25px 22px}.project-copy h3{font-size:62px}.project-lede{font-size:13px}.project-link{padding-top:20px}.skills-grid{grid-template-columns:1fr 1fr}.skill-group{padding:18px 12px 21px}.skill-group:first-child,.skill-group:nth-child(3){padding-left:0}.skill-group h3{font-size:16px}.skill-group>p{font-size:14px}.skill-group li{padding:4px 7px;font-size:9px}.certifications,.education{grid-template-columns:1fr;gap:6px;padding:19px 0}.contact-section{padding-block:76px}.contact-grid{grid-template-columns:1fr;gap:25px}.contact-kicker{margin-top:34px;font-size:19px}.contact-copy h2{font-size:clamp(64px,16vw,88px)}.contact-note{font-size:12px}.email-link{font-size:14px}.contact-panel{padding-top:15px}.site-footer{flex-wrap:wrap;gap:7px 20px;min-height:82px;padding-block:20px;font-size:9px}.site-footer span:nth-child(2){display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.magnet-wrap{display:inline-block!important}.hero-cta{background:var(--accent);color:#fff;justify-content:space-between;align-items:center;gap:35px;min-width:158px;padding:14px 17px 14px 22px;font-size:13px;font-weight:600;transition:background .2s;display:flex}.hero-cta:hover{background:var(--accent-dark)}.hero-cta span+span{font-size:16px}:root{--sans:var(--font-dm-sans),Arial,sans-serif;--serif:var(--font-instrument-serif),Georgia,serif;--accent:#a54028;--accent-dark:#863621;--muted:#5c645f;--contact-accent:#ff9a7a}:root.dark{--accent:#f0805d;--accent-dark:#ff997b;--muted:#aab0aa;--contact-accent:#ff9a7a}.contact-section .section-label span:first-child,.contact-kicker{color:var(--contact-accent)}@media (max-width:640px){.section-label{font-size:9px}.experience-meta{font-size:11px}.hero-role{font-size:9px}.experience-main li,.certifications p,.education p,.project-story p,.form-note p{font-size:12px}.skill-group li{padding:5px 9px;font-size:12px}.ticker-inner{font-size:9px}.contact-form label{font-size:11px}.site-footer{font-size:10px}}.troubleshooting-tools{margin-top:38px}.toolkit-heading{color:var(--muted);justify-content:space-between;align-items:baseline;gap:24px;padding:0 0 14px;font-size:11px;display:flex}.toolgroup-list{border-top:1px solid var(--line)}.toolgroup{border-bottom:1px solid var(--line)}.toolgroup-number,.toolgroup-count{color:var(--muted);letter-spacing:.12em;font-size:10px}.toolgroup-title{font:22px var(--serif);color:var(--ink)}.tool-category-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 36px;padding:4px 0 22px 62px;display:grid}.tool-category{border-top:1px solid var(--line);padding:12px 0}.tool-category h4{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0 0 6px;font-size:10px;font-weight:600}.tool-category p{color:var(--muted);margin:0;font-size:12px;line-height:1.7}.credential-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;margin:0;padding:0;list-style:none;display:grid}.credential-list li{border-bottom:1px solid var(--line);min-width:0}.credential-list a,.credential-list li>span{color:var(--muted);justify-content:space-between;align-items:flex-start;gap:10px;padding:9px 0;font-size:11px;line-height:1.5;text-decoration:none;display:flex}.credential-list a:hover,.credential-list a:focus-visible,.credential-issuer:hover,.credential-issuer:focus-visible{color:var(--accent)}.credential-list a:focus-visible,.credential-issuer:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.credential-list a>span{color:var(--accent);flex:none}.credential-issuer{white-space:nowrap;color:var(--accent);font-size:10px;text-decoration:none}.recognition .credential-list{grid-template-columns:1fr;max-width:620px}@media (max-width:640px){.toolkit-heading{gap:5px;display:grid}.toolgroup-title{font-size:18px}.toolgroup-count{font-size:9px}.tool-category-list{grid-template-columns:1fr;gap:0;padding-left:34px}.tool-category{padding:10px 0}.credential-list{grid-template-columns:1fr}.recognition .credential-list{max-width:none}}.contact-section{color:#f5f3ed;background:#1a201e}.contact-form input:not(.honeypot),.contact-form textarea{color:#f5f3ed}.dark .hero-cta,.dark .button-dark{color:#fff;background:#a54028}.dark .hero-cta:hover,.dark .button-dark:hover{background:#863621}.hero-art{color:#f5f3ed;background:linear-gradient(145deg,#252e29 0%,#1a201d 72%);border:1px solid #ffffff16;border-radius:24px;box-shadow:0 28px 65px #11130f20}.hero-art:before{pointer-events:none;background-image:linear-gradient(#d9e3dc0c 1px,#0000 1px),linear-gradient(90deg,#d9e3dc0c 1px,#0000 1px);background-size:34px 34px;border:0;border-radius:0;inset:0;transform:none;-webkit-mask-image:radial-gradient(#000 10%,#0000 82%);mask-image:radial-gradient(#000 10%,#0000 82%)}.hero-art:after{pointer-events:none;background:radial-gradient(at 53%,#b94b3019,#0000 65%);border:0;border-radius:0;inset:0;transform:none}.network-art-header,.network-art-footer{z-index:2;letter-spacing:.14em;color:#b7c0b9;justify-content:space-between;align-items:center;gap:12px;font-size:8px;font-weight:650;display:flex;position:absolute;left:24px;right:24px}.network-art-header{top:22px}.network-art-header span:first-child{color:#f3f4ee;align-items:center;gap:8px;display:flex}.network-art-header i{background:#8eb298;border-radius:50%;width:6px;height:6px;display:inline-block;box-shadow:0 0 0 4px #8eb29822}.network-flow{z-index:1;grid-template-columns:1fr .28fr 1fr .28fr 1fr .28fr 1fr .28fr 1fr;align-items:center;display:grid;position:absolute;inset:25% 4% 32%}.network-node{z-index:2;text-align:center;justify-items:center;gap:7px;min-width:0;display:grid;position:relative}.network-node-icon{color:#f0a184;background:linear-gradient(145deg,#303a34,#222924);border:1px solid #d9e3dc38;border-radius:50%;place-items:center;width:58px;height:58px;display:grid;position:relative;box-shadow:0 9px 24px #0003}.network-node-icon svg{width:25px;height:25px}.network-node-resolve .network-node-icon{color:#e8c59a}.network-node-secure .network-node-icon{color:#f2b19a}.network-node-origin .network-node-icon{color:#aec8b4}.network-node-browser .network-node-icon{color:#f0a184}.network-node-secure .network-node-icon:after,.network-node-browser .network-node-icon:after{content:"";border:1px solid #d9e3dc35;border-radius:50%;animation:2.8s ease-out infinite node-beacon;position:absolute;inset:-5px}.network-node-browser .network-node-icon:after{animation-delay:.7s}.network-node-name{letter-spacing:.13em;color:#f5f3ed;font-size:8px;font-weight:700}.network-node-detail{color:#aab4ad;white-space:normal;font-size:7px;line-height:1.3}.network-connector{background:linear-gradient(90deg,#d9e3dc30,#d9e3dc58,#d9e3dc30);height:1px;margin-top:-29px;position:relative}.network-packet{z-index:1;pointer-events:none;background:0 0;border-radius:0;width:81%;height:8px;position:absolute;top:calc(50% - 18px);left:9.5%}.network-packet:before{content:"";border-radius:50%;width:8px;height:8px;position:absolute;top:0;left:0}.packet-request:before{background:#f08a68;animation:8s ease-in-out infinite network-request-journey;box-shadow:0 0 0 3px #f08a6830,0 0 16px #f08a68}.packet-response:before{background:#c7d8c9;animation:8s ease-in-out infinite network-response-journey;box-shadow:0 0 0 3px #c7d8c930,0 0 14px #c7d8c9}.network-art-directions{z-index:2;letter-spacing:.14em;color:#f2b19a;justify-content:space-between;font-size:7px;font-weight:700;display:flex;position:absolute;bottom:22%;left:6%;right:6%}.network-art-directions span:last-child{color:#bdcfc0}.network-art-directions i{font-style:normal}.network-art-footer{border-top:1px solid #ffffff20;padding-top:13px;bottom:22px}.network-art-footer span:last-child{color:#f2b19a;align-items:center;gap:8px;display:flex}.network-art-footer i{width:auto;height:auto;box-shadow:none;color:#f2b19a;background:0 0;border-radius:0;font-size:12px;font-style:normal}.utility-sidebar{z-index:40;border:1px solid var(--line);background:var(--paper);border-radius:24px;flex-direction:column;align-items:center;gap:10px;padding:8px;display:flex;position:fixed;top:50%;right:max(12px,50vw - 704px);transform:translateY(-50%)}@supports (color:color-mix(in lab, red, red)){.utility-sidebar{background:color-mix(in srgb,var(--paper) 86%,transparent)}}.utility-sidebar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 12px 35px #11130f1c}.utility-sidebar>button{flex:none;position:relative}.utility-sidebar .theme-toggle{place-items:center;padding:0;display:grid}.utility-sidebar .theme-glyph{font-size:17px;line-height:1}.utility-tooltip{z-index:50;border:1px solid var(--line);background:var(--paper-2);width:max-content;max-width:230px;color:var(--ink);font:11px/1.35 var(--sans);letter-spacing:0;text-transform:none;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;border-radius:7px;padding:8px 10px;transition:opacity .16s,transform .16s,visibility .16s;position:absolute;top:50%;right:calc(100% + 12px);transform:translate(5px,-50%);box-shadow:0 5px 18px #11130f20}.utility-sidebar button:hover .utility-tooltip,.utility-sidebar button:focus-visible .utility-tooltip{opacity:1;visibility:visible;transform:translateY(-50%)}.utility-sidebar button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (max-width:640px){.utility-sidebar{top:auto;bottom:max(14px,env(safe-area-inset-bottom));border-radius:22px;flex-direction:row;gap:12px;padding:7px 9px;left:50%;right:auto;transform:translate(-50%)}.utility-sidebar .utility-tooltip{inset:auto auto calc(100% + 10px) 50%;transform:translate(-50%,5px)}.utility-sidebar button:hover .utility-tooltip,.utility-sidebar button:focus-visible .utility-tooltip{transform:translate(-50%)}}@keyframes network-request-journey{0%,3%{opacity:0;left:0}7%{opacity:1}46%{opacity:1;left:calc(100% - 8px)}50%,to{opacity:0;left:calc(100% - 8px)}}@keyframes network-response-journey{0%,50%{opacity:0;left:calc(100% - 8px)}55%{opacity:1}94%{opacity:1;left:0}to{opacity:0;left:0}}@keyframes node-beacon{0%{opacity:.7;transform:scale(.92)}85%,to{opacity:0;transform:scale(1.22)}}@media (max-width:640px){.hero-art{border-radius:18px}.network-art-header,.network-art-footer{letter-spacing:.09em;font-size:6.5px;left:16px;right:16px}.network-art-header{top:17px}.network-art-footer{padding-top:10px;bottom:17px}.network-flow{grid-template-columns:1fr .22fr 1fr .22fr 1fr .22fr 1fr .22fr 1fr;inset:25% 3% 34%}.network-node{gap:5px}.network-node-icon{width:42px;height:42px}.network-node-icon svg{width:20px;height:20px}.network-node-name{letter-spacing:.08em;font-size:6.5px}.network-node-detail{font-size:6px;line-height:1.2}.network-connector{margin-top:-16px}.network-packet{top:calc(50% - 13px)}.network-art-directions{letter-spacing:.1em;font-size:6px;bottom:23%}}.site-cursor-glow{--cursor-x:-500px;--cursor-y:-500px;z-index:40;pointer-events:none;opacity:0;background:radial-gradient(170px circle at var(--cursor-x) var(--cursor-y),#ffffff75,transparent 78%),radial-gradient(410px circle at var(--cursor-x) var(--cursor-y),#3139331a,transparent 74%);transition:opacity .22s;position:fixed;inset:0}.site-cursor-glow.is-visible{opacity:1}:root.dark .site-cursor-glow{background:radial-gradient(380px circle at var(--cursor-x) var(--cursor-y),#ffffff2e,transparent 74%)}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.site-cursor-glow{display:block}}@media (hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.site-cursor-glow{display:none}}.section-label-context{align-items:center;gap:14px;display:flex}.section-collapse-toggle{border:1px solid var(--line);width:26px;height:26px;color:var(--muted);cursor:pointer;background:0 0;border-radius:50%;flex:none;place-items:center;padding:0;font-size:17px;line-height:1;transition:color .18s,border-color .18s,background .18s;display:grid}.section-collapse-toggle:hover,.section-collapse-toggle:focus-visible{color:var(--accent);border-color:var(--accent);background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.section-collapse-toggle:hover,.section-collapse-toggle:focus-visible{background:color-mix(in srgb,var(--accent) 8%,transparent)}}.section-expand-panel{opacity:1;visibility:visible;grid-template-rows:1fr;transition:grid-template-rows .42s cubic-bezier(.2,.7,.2,1),opacity .28s,visibility .42s;display:grid}.section-expand-panel.is-collapsed{opacity:0;visibility:hidden;grid-template-rows:0fr}.section-expand-inner{min-height:0;overflow:hidden}.section.is-collapsed,.contact-section.is-collapsed{padding-block:42px}@media (max-width:640px){.section-label-context{gap:9px;font-size:7px}.section-collapse-toggle{width:24px;height:24px}}.toolkit-heading-context{text-align:right;justify-content:flex-end;align-items:center;gap:14px;display:flex}.toolgroup-static-heading{grid-template-columns:48px 1fr auto 22px;align-items:center;gap:14px;min-height:66px;display:grid}.toolgroup-static-heading .toolgroup-title{margin:0}.toolkit-collapse-panel{opacity:1;visibility:visible;grid-template-rows:1fr;transition:grid-template-rows .38s cubic-bezier(.2,.7,.2,1),opacity .26s,visibility .38s;display:grid}.toolkit-collapse-panel.is-collapsed{opacity:0;visibility:hidden;grid-template-rows:0fr}.toolkit-collapse-inner{min-height:0;position:relative;overflow:hidden}.section-expand-inner{position:relative}.section-expand-panel.is-burning .section-expand-inner:before,.toolkit-collapse-panel.is-burning .toolkit-collapse-inner:before{content:"";z-index:5;pointer-events:none;filter:blur(1px);background:linear-gradient(90deg,#0000,#963c26 18%,#ed633b 40%,#ffc66c 59%,#fff1c9 69%,#f27b42 83%,#0000);width:45%;height:4px;animation:.85s cubic-bezier(.18,.72,.28,1) both ember-burn-sweep;position:absolute;top:0;left:-45%;box-shadow:0 0 10px #f07942b3,0 0 25px #f0794266}@keyframes ember-burn-sweep{0%{opacity:0;transform:translate(0)scaleY(.5)}18%{opacity:1}76%{opacity:.86}to{opacity:0;transform:translate(330%)scaleY(1.2)}}@media (max-width:640px){.toolkit-heading-context{text-align:left;gap:9px;max-width:none;font-size:10px}.toolgroup-static-heading{grid-template-columns:26px 1fr auto;gap:8px;min-height:60px}.toolgroup-static-heading .toolgroup-title{font-size:18px}.toolgroup-count{font-size:9px}}.sound-toggle{border:1px solid var(--line);width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border-radius:50%;place-items:center;transition:color .18s,border-color .18s,background .18s;display:grid}.sound-toggle svg{width:17px;height:17px}.sound-toggle:hover,.sound-toggle[aria-pressed=true]{color:var(--accent);border-color:var(--accent)}.sound-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px}[data-interaction]{transform-origin:50%;transition:transform .18s cubic-bezier(.2,.7,.2,1)}[data-interaction]:active{transform:scale(.975)}.interaction-feedback-active{animation:.24s ease-out interaction-feedback-pop}.hero-cta.interaction-feedback-active,.button-dark.interaction-feedback-active{animation:.24s ease-out interaction-feedback-pop,.35s ease-out interaction-feedback-glint}@keyframes interaction-feedback-pop{0%{transform:scale(.975)}55%{transform:scale(1.025)}to{transform:scale(1)}}@keyframes interaction-feedback-glint{0%,to{filter:brightness()}55%{filter:brightness(1.16)}}@media (max-width:640px){.sound-toggle{width:31px;height:31px}.sound-toggle svg{width:16px;height:16px}}@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}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
