*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;font-family:Kaisei Tokumin,sans-serif;line-height:1.5}body{line-height:inherit;margin:0}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:Cascadia Code,monospace;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}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.mb-2{margin-bottom:.5rem}.ml-1{margin-left:.25rem}.ml-3{margin-left:.75rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.hidden{display:none}.h-4{height:1rem}.max-h-0{max-height:0}.max-h-96{max-height:24rem}.w-0{width:0}.w-0\.5{width:.125rem}.w-fit{width:fit-content}.w-full{width:100%}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y))rotate(var(--tw-rotate))skewX(var(--tw-skew-x))skewY(var(--tw-skew-y))scaleX(var(--tw-scale-x))scaleY(var(--tw-scale-y))}@keyframes wave{0%,to{transform:scaleY(1)}50%{transform:scaleY(.5)}}.animate-wave{animation:1.5s ease-in-out infinite wave}.resize{resize:both}.items-center{align-items:center}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.25rem*var(--tw-space-x-reverse));margin-left:calc(.25rem*calc(1 - var(--tw-space-x-reverse)))}.overflow-hidden{overflow:hidden}.rounded-full{border-radius:9999px}.border-neutral-100{--tw-border-opacity:1;border-color:rgb(245 245 245/var(--tw-border-opacity))}.bg-gray-600{--tw-bg-opacity:1;background-color:rgb(75 85 99/var(--tw-bg-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-4{padding-top:1rem;padding-bottom:1rem}.text-left{text-align:left}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-semibold{font-weight:600}.tracking-tight{letter-spacing:-.025em}.tracking-tighter{letter-spacing:-.05em}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity))}.text-neutral-300{--tw-text-opacity:1;color:rgb(212 212 212/var(--tw-text-opacity))}.text-neutral-400{--tw-text-opacity:1;color:rgb(163 163 163/var(--tw-text-opacity))}.text-neutral-500{--tw-text-opacity:1;color:rgb(115 115 115/var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.shadow-md{--tw-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.blur{--tw-blur:blur(8px);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)}.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-opacity{transition-property:opacity;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--content-top:40vh;overflow-y:scroll}body{color:#f5f5f5;background:#0a0a0a;margin:0;font-family:Arial,Helvetica,sans-serif;line-height:1.7}.default-font{font-family:inherit}.page{width:min(36.25rem,100% - 15rem);padding:var(--content-top)0 6rem;margin:0 auto}.portfolio-nav{top:var(--content-top);border-right:.125rem solid #f5f5f5;flex-direction:column;align-items:flex-end;gap:0;padding:.5rem 1.5rem .5rem 0;font-size:.875rem;display:flex;position:fixed;right:calc(50% + 20.625rem)}.portfolio-nav a{color:#a3a3a3;padding:0;line-height:1.5;transition:color .15s}.portfolio-nav a:hover,.portfolio-nav a[aria-current]{color:#fff}.portfolio-nav a[aria-current]{color:#737373}.nav-stickman{color:#f5f5f5;pointer-events:none;width:3.375rem;height:5.0625rem;position:absolute;top:calc(100% + 1rem);right:.75rem}.main-cont{width:100%;padding:0}.page-divider{border:0;border-top:.0625rem solid #262626;margin:1.25rem 0 1.5rem}.landing{padding:0}.single-page .landing{min-height:calc(100svh - var(--content-top));scroll-margin-top:var(--content-top)}.portfolio-section{scroll-margin-top:var(--content-top);padding-bottom:7rem}.portfolio-section:last-child{min-height:60vh}.page:has(.landing){padding-bottom:1.5rem}html:has(.landing){scrollbar-gutter:stable;overflow-y:auto}.home-photo{width:auto;max-width:min(100%,22.5rem);height:auto;max-height:max(6.25rem,calc(100svh - var(--content-top) - 8.75rem));-o-object-fit:contain;object-fit:contain;margin-top:1.25rem;display:block}.landing h1{font-size:2.25rem;line-height:1.2}.eyebrow{color:#a3a3a3;letter-spacing:.14em;text-transform:uppercase;margin-bottom:1.25rem;font-size:.75rem}.contact-links{flex-wrap:wrap;gap:.375rem;margin:.25rem 0 0;font-size:.875rem;display:flex}.contact-links a{margin-left:0}.contact-links a:hover{color:#a3a3a3}.responsive-desc{font-size:1rem;line-height:1.75}.responsive-desc .text-neutral-500{color:#a3a3a3}.responsive-desc .text-neutral-400{color:#e5e5e5}a:focus-visible,button:focus-visible{outline-offset:.3125rem;border-radius:.125rem;outline:.125rem solid #fff}.skip-link{color:#000;z-index:50;background:#fff;padding:.5rem 1rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.column-container{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:.75rem;display:grid}.column-item{gap:.75rem;display:grid}.column-item img{border-radius:.1875rem;width:100%;height:auto}.career-education{margin-bottom:2rem}.career-section-label{color:#a3a3a3;letter-spacing:.14em;text-transform:uppercase;margin-bottom:1.25rem;font-size:.6875rem}.career-timeline{margin:0;padding:0 0 0 .3125rem;list-style:none}.timeline-item{border-left:.0625rem solid #404040;padding:0 0 2rem 1.625rem;position:relative}.timeline-item:last-child{border-left-color:#0000;padding-bottom:0}.timeline-dot{background:#0a0a0a;border:.0625rem solid #a3a3a3;border-radius:50%;width:.5625rem;height:.5625rem;position:absolute;top:.375rem;left:-.3125rem}.timeline-item:first-child .timeline-dot{background:#f5f5f5;border-color:#f5f5f5}.timeline-date{color:#a3a3a3;margin-bottom:.3125rem;font-size:.75rem;line-height:1.25rem}.timeline-company{letter-spacing:-.025em;font-size:1.1875rem;font-weight:600;line-height:1.4}.timeline-position{color:#e5e5e5;margin-top:.1875rem;font-size:.875rem}.timeline-team{color:#a3a3a3;margin-top:.375rem;font-size:.8125rem;line-height:1.6}.skills-list,.string-list{flex-wrap:wrap;gap:.5rem 1rem;display:flex}.black{color:#171717}.button-cont{border-left:.125rem solid #fff;padding:.375rem .75rem}.fill-left:hover{color:#000;background:#fff}.blog-list{padding:0;list-style:none}.blog-list li{border-top:.0625rem solid #262626;padding:1.5rem 0}.blog-list li:first-child{border-top:0;padding-top:0}.blog-list-row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 1.25rem;display:flex}.blog-list-row .blog-date{white-space:nowrap;margin:0 0 0 auto}.blog-date{color:#a3a3a3;margin-bottom:.5rem;font-size:.75rem}.blog-post-link{text-underline-offset:.3125rem;-webkit-text-decoration:underline #525252;text-decoration:underline #525252}.blog-post-link:hover{text-decoration-color:#fff}.blog-prose{color:#d4d4d4;overflow-wrap:anywhere;line-height:1.85}.blog-prose>*+*{margin-top:1.25rem}.blog-prose h1,.blog-prose h2,.blog-prose h3{color:#f5f5f5;margin-top:2rem;font-weight:600;line-height:1.4}.blog-prose h1,.blog-prose h2{font-size:1.5rem}.blog-prose h3{font-size:1.25rem}.blog-prose a{text-underline-offset:.25rem;text-decoration:underline}.blog-prose ul,.blog-prose ol{padding-left:1.5rem}.blog-prose ul{list-style:outside}.blog-prose ol{list-style:decimal}.blog-prose blockquote{color:#a3a3a3;border-left:.125rem solid #525252;padding-left:1.25rem}.blog-prose pre{background:#171717;border-radius:.25rem;padding:1rem;font-size:.8125rem;overflow-x:auto}.blog-prose code{background:#171717;border-radius:.1875rem;padding:.125rem .25rem;font-size:.9em}.blog-prose pre code{padding:0}.blog-prose img{max-width:100%;height:auto}.blog-back{color:#a3a3a3;margin-top:2.5rem;font-size:.875rem;display:inline-block}.blog-back:hover{color:#fff}@media (max-width:900px){:root{--content-top:32vh}.page{width:auto;max-width:36.25rem;padding-top:var(--content-top);margin-left:7.5rem;margin-right:1.5rem}.portfolio-nav{left:1.25rem;right:auto;top:var(--content-top);width:4.75rem;padding-right:1rem}}@media (max-width:640px){:root{--content-top:0rem;scroll-padding-top:6rem}.page{width:auto;max-width:none;padding:0 0 max(2.5rem,env(safe-area-inset-bottom));margin:0 1.25rem}.portfolio-nav{z-index:20;width:100%;padding:max(.75rem,env(safe-area-inset-top))0 .75rem;background:#0a0a0a;border-bottom:.0625rem solid #262626;border-right:0;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:.25rem;margin-bottom:2.5rem;font-size:.875rem;display:grid;position:sticky;top:0;left:auto;right:auto}.portfolio-nav a{border-radius:0;justify-content:center;align-items:center;min-height:2.75rem;padding:.5rem .25rem;display:flex}.portfolio-nav a[aria-current]{color:#fff;text-underline-offset:.5rem;text-decoration:underline;text-decoration-thickness:1px}.portfolio-nav a:hover{color:#fff}.nav-stickman{display:none}.main-cont{scroll-margin-top:6rem}.single-page .landing{min-height:calc(100svh - 7rem);padding-top:14vh;scroll-margin-top:7rem}.portfolio-section{padding-bottom:5rem;scroll-margin-top:7rem}.landing h1{flex-wrap:wrap;font-size:2rem}.contact-links a{align-items:center;min-height:2.75rem;display:inline-flex}.home-photo{max-height:max(6.25rem,100svh - 16.25rem);margin-top:.75rem}.column-container{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.column-item{gap:.5rem}}@media (min-width:1920px){:root{font-size:clamp(16px,.625vw,24px)}.contact-links svg,.main-cont>p svg{width:1.25rem;height:1.25rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-80:hover{opacity:.8}@media (prefers-color-scheme:dark){.dark\:border-neutral-800{--tw-border-opacity:1;border-color:rgb(38 38 38/var(--tw-border-opacity))}}
