/*! tailwindcss v4.0.15 | MIT License | https://tailwindcss.com */@layer theme{:host,:root{--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-neutral-200:oklch(.922 0 0);--color-neutral-400:oklch(.708 0 0);--color-neutral-500:oklch(.556 0 0);--color-neutral-600:oklch(.439 0 0);--color-neutral-700:oklch(.371 0 0);--color-neutral-900:oklch(.205 0 0);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-2xl:42rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height:calc(1.5/1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-widest:.1em;--radius-md:.375rem;--radius-lg:.5rem;--radius-4xl:2rem;--ease-out:cubic-bezier(0,0,.2,1);--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--aspect-video:16/9;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-open-sans);--default-mono-font-family:var(--font-mono);--background:var(--background);--foreground:var(--foreground)}}@layer base{*,::backdrop,:after,:before{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}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{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{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,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: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,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}:-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,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:calc(var(--spacing)*0)}.top-0{top:calc(var(--spacing)*0)}.top-1\/2{top:50%}.top-4{top:calc(var(--spacing)*4)}.top-\[-30px\]{top:-30px}.top-\[-100vh\]{top:-100vh}.top-\[5px\]{top:5px}.top-\[60px\]{top:60px}.right-0{right:calc(var(--spacing)*0)}.right-4{right:calc(var(--spacing)*4)}.right-\[-100\%\]{right:-100%}.right-\[5px\]{right:5px}.bottom-8{bottom:calc(var(--spacing)*8)}.left-0{left:calc(var(--spacing)*0)}.left-\[-1rem\]{left:-1rem}.left-\[1rem\]{left:1rem}.z-0{z-index:0}.z-1{z-index:1}.z-10{z-index:10}.z-50{z-index:50}.z-51{z-index:51}.z-\[0\]{z-index:0}.z-\[10\]{z-index:10}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.m-0{margin:calc(var(--spacing)*0)}.mx-auto{margin-inline:auto}.my-4{margin-block:calc(var(--spacing)*4)}.my-\[0\.83rem\]{margin-block:.83rem}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-8{margin-top:calc(var(--spacing)*8)}.mt-\[0\.83rem\]{margin-top:.83rem}.mr-2{margin-right:calc(var(--spacing)*2)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-4{margin-left:calc(var(--spacing)*4)}.ml-8{margin-left:calc(var(--spacing)*8)}.ml-\[30px\]{margin-left:30px}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.list-item{display:list-item}.aspect-square{aspect-ratio:1}.aspect-video{aspect-ratio:var(--aspect-video)}.h-1{height:calc(var(--spacing)*1)}.h-2{height:calc(var(--spacing)*2)}.h-4{height:calc(var(--spacing)*4)}.h-6{height:calc(var(--spacing)*6)}.h-8{height:calc(var(--spacing)*8)}.h-12{height:calc(var(--spacing)*12)}.h-64{height:calc(var(--spacing)*64)}.h-\[35px\]{height:35px}.h-\[50px\]{height:50px}.h-\[60px\]{height:60px}.h-\[100dvh\]{height:100dvh}.h-\[calc\(100\%-60px\)\]{height:calc(100% - 60px)}.h-\[calc\(100dvh-60px\)\]{height:calc(100dvh - 60px)}.h-auto{height:auto}.h-full{height:100%}.max-h-\[75svh\]{max-height:75svh}.max-h-\[90dvh\]{max-height:90dvh}.max-h-\[calc\(100vh-60px\)\]{max-height:calc(100vh - 60px)}.min-h-1{min-height:calc(var(--spacing)*1)}.w-2{width:calc(var(--spacing)*2)}.w-3\/4{width:75%}.w-4\/6{width:66.6667%}.w-5\/6{width:83.3333%}.w-16{width:calc(var(--spacing)*16)}.w-24{width:calc(var(--spacing)*24)}.w-32{width:calc(var(--spacing)*32)}.w-\[35px\]{width:35px}.w-\[50px\]{width:50px}.w-\[60px\]{width:60px}.w-\[80\%\]{width:80%}.w-\[100dvw\]{width:100dvw}.w-auto{width:auto}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-\[80ch\]{max-width:80ch}.max-w-\[90dvw\]{max-width:90dvw}.max-w-prose{max-width:65ch}.flex-1{flex:1}.flex-\[0_0_60px\]{flex:0 0 60px}.flex-\[1_1_auto\]{flex:auto}.flex-shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.-translate-y-1\/2{--tw-translate-y:calc(calc(1/2*100%)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.scale-125{--tw-scale-x:125%;--tw-scale-y:125%;--tw-scale-z:125%;scale:var(--tw-scale-x)var(--tw-scale-y)}.transform{transform:var(--tw-rotate-x)var(--tw-rotate-y)var(--tw-rotate-z)var(--tw-skew-x)var(--tw-skew-y)}.animate-pulse{animation:var(--animate-pulse)}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.list-outside{list-style-position:outside}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.break-after-page{break-after:page}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-\[7rem_1fr\]{grid-template-columns:7rem 1fr}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-0{gap:calc(var(--spacing)*0)}.gap-1{gap:calc(var(--spacing)*1)}.gap-2{gap:calc(var(--spacing)*2)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.rounded{border-radius:.25rem}.rounded-4xl{border-radius:var(--radius-4xl)}.rounded-\[60px\]{border-radius:60px}.rounded-full{border-radius:3.40282e+38px}.rounded-md{border-radius:var(--radius-md)}.border-\[5px\]{border-style:var(--tw-border-style);border-width:5px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-\[var\(--background\)\]{border-color:var(--background)}.border-\[var\(--cv-rule-color\)\]{border-color:var(--cv-rule-color)}.border-\[var\(--rule-bottom\)\]{border-color:var(--rule-bottom)}.border-\[var\(--rule-top\)\]{border-color:var(--rule-top)}.border-t-\[var\(--rule-bottom\)\]{border-top-color:var(--rule-bottom)}.border-t-\[var\(--rule-top\)\]{border-top-color:var(--rule-top)}.border-b-\[var\(--portfolio-detail-rule-color\)\]{border-bottom-color:var(--portfolio-detail-rule-color)}.border-b-\[var\(--rule-bottom\)\]{border-bottom-color:var(--rule-bottom)}.border-b-\[var\(--rule-top\)\]{border-bottom-color:var(--rule-top)}.bg-\[\#22222244\]{background-color:#2224}.bg-\[\#ccc\]{background-color:#ccc}.bg-\[var\(--cv-rule-color\)\]{background-color:var(--cv-rule-color)}.bg-\[var\(--loader-bar-bg\)\]{background-color:var(--loader-bar-bg)}.bg-\[var\(--loader-bar-color\)\]{background-color:var(--loader-bar-color)}.bg-\[var\(--menu-bg\)\]{background-color:var(--menu-bg)}.bg-\[var\(--menu-link-bg\)\]{background-color:var(--menu-link-bg)}.bg-\[var\(--menu-link-bg-active\)\]{background-color:var(--menu-link-bg-active)}.bg-\[var\(--panel-bg\)\]{background-color:var(--panel-bg)}.bg-\[var\(--portfolio-asset-thumbnail-bg\)\]{background-color:var(--portfolio-asset-thumbnail-bg)}.bg-\[var\(--scrim-color\)\]{background-color:var(--scrim-color)}.bg-\[var\(--tag-bg\)\]{background-color:var(--tag-bg)}.bg-black{background-color:var(--color-black)}.bg-black\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}.bg-neutral-200{background-color:var(--color-neutral-200)}.bg-neutral-900{background-color:var(--color-neutral-900)}.object-contain{object-fit:contain}.p-0{padding:calc(var(--spacing)*0)}.p-2{padding:calc(var(--spacing)*2)}.p-\[1rem_1rem_3rem_1rem\]{padding:1rem 1rem 3rem}.p-\[2rem_0_4rem_0\]{padding:2rem 0 4rem}.p-\[4rem_0\]{padding:4rem 0}.px-2{padding-inline:calc(var(--spacing)*2)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-6{padding-inline:calc(var(--spacing)*6)}.px-8{padding-inline:calc(var(--spacing)*8)}.py-0{padding-block:calc(var(--spacing)*0)}.py-1{padding-block:calc(var(--spacing)*1)}.py-2{padding-block:calc(var(--spacing)*2)}.py-4{padding-block:calc(var(--spacing)*4)}.py-5{padding-block:calc(var(--spacing)*5)}.py-\[30px\]{padding-block:30px}.pt-0{padding-top:calc(var(--spacing)*0)}.pt-4{padding-top:calc(var(--spacing)*4)}.pt-10{padding-top:calc(var(--spacing)*10)}.pr-0{padding-right:calc(var(--spacing)*0)}.pr-15{padding-right:calc(var(--spacing)*15)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.pb-8{padding-bottom:calc(var(--spacing)*8)}.pl-4{padding-left:calc(var(--spacing)*4)}.pl-6{padding-left:calc(var(--spacing)*6)}.pl-\[2ch\]{padding-left:2ch}.pl-\[30px\]{padding-left:30px}.text-center{text-align:center}.text-right{text-align:right}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[1\.1rem\]{font-size:1.1rem}.text-\[1\.5rem\]{font-size:1.5rem}.text-\[2rem\]{font-size:2rem}.leading-\[1\.1\]{--tw-leading:1.1;line-height:1.1}.leading-\[1\.5em\]{--tw-leading:1.5em;line-height:1.5em}.leading-\[1\.5rem\]{--tw-leading:1.5rem;line-height:1.5rem}.leading-\[1\.75rem\]{--tw-leading:1.75rem;line-height:1.75rem}.leading-\[1\.85rem\]{--tw-leading:1.85rem;line-height:1.85rem}.leading-\[48px\]{--tw-leading:48px;line-height:48px}.leading-\[60px\]{--tw-leading:60px;line-height:60px}.font-\[350\]{--tw-font-weight:350;font-weight:350}.font-\[400\]{--tw-font-weight:400;font-weight:400}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[1px\]{--tw-tracking:1px;letter-spacing:1px}.tracking-\[2px\]{--tw-tracking:2px;letter-spacing:2px}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-\[var\(--background\)\]{color:var(--background)}.text-\[var\(--color-primary\)\]{color:var(--color-primary)}.text-\[var\(--cv-college-color\)\]{color:var(--cv-college-color)}.text-\[var\(--cv-college-degree-color\)\]{color:var(--cv-college-degree-color)}.text-\[var\(--cv-company-color\)\]{color:var(--cv-company-color)}.text-\[var\(--cv-position-title-color\)\]{color:var(--cv-position-title-color)}.text-\[var\(--date-color\)\]{color:var(--date-color)}.text-\[var\(--menu-color\)\]{color:var(--menu-color)}.text-\[var\(--menu-link-color\)\]{color:var(--menu-link-color)}.text-\[var\(--menu-link-color-active\)\]{color:var(--menu-link-color-active)}.text-\[var\(--site-section-title-color\)\]{color:var(--site-section-title-color)}.text-\[var\(--tag-color\)\]{color:var(--tag-color)}.text-neutral-400{color:var(--color-neutral-400)}.text-neutral-500{color:var(--color-neutral-500)}.text-neutral-600{color:var(--color-neutral-600)}.text-neutral-900{color:var(--color-neutral-900)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.shadow,.shadow-\[0_3px_8px_rgba\(0\,0\,0\,0\.35\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_3px_8px_rgba\(0\,0\,0\,0\.35\)\]{--tw-shadow:0 3px 8px var(--tw-shadow-color,#00000059)}.shadow-\[0_5px_25px_rgba\(0\,0\,0\,0\.25\)\]{--tw-shadow:0 5px 25px var(--tw-shadow-color,#00000040)}.shadow-\[0_5px_25px_rgba\(0\,0\,0\,0\.25\)\],.shadow-md{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a)}.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;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:top-\[1px\]:before{content:var(--tw-content);top:1px}.before\:top-\[13px\]:before{content:var(--tw-content);top:13px}.before\:left-\[-6px\]:before{content:var(--tw-content);left:-6px}.before\:left-\[23px\]:before{content:var(--tw-content);left:23px}.before\:block:before{content:var(--tw-content);display:block}.before\:h-\[10px\]:before{content:var(--tw-content);height:10px}.before\:h-\[25px\]:before{content:var(--tw-content);height:25px}.before\:w-\[2px\]:before{content:var(--tw-content);width:2px}.before\:w-\[10px\]:before{content:var(--tw-content);width:10px}.before\:rotate-45:before{content:var(--tw-content);rotate:45deg}.before\:rotate-\[-45deg\]:before{content:var(--tw-content);rotate:-45deg}.before\:border-t:before{content:var(--tw-content);border-top-style:var(--tw-border-style);border-top-width:1px}.before\:border-r:before{content:var(--tw-content);border-right-style:var(--tw-border-style);border-right-width:1px}.before\:border-\[var\(--cv-rule-color\)\]:before{content:var(--tw-content);border-color:var(--cv-rule-color)}.before\:bg-\[var\(--button-icon-color\)\]:before{content:var(--tw-content);background-color:var(--button-icon-color)}.before\:transition-colors:before{content:var(--tw-content);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.before\:duration-250:before{content:var(--tw-content);--tw-duration:.25s;transition-duration:.25s}.before\:content-\[\"\"\]:before,.before\:content-\[\'\'\]:before{--tw-content:"";content:var(--tw-content)}@media (hover:hover){.group-hover\:before\:bg-\[var\(--button-icon-hover\)\]:is(:where(.group):hover *):before{content:var(--tw-content);background-color:var(--button-icon-hover)}}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:top-\[13px\]:after{content:var(--tw-content);top:13px}.after\:left-\[23px\]:after{content:var(--tw-content);left:23px}.after\:block:after{content:var(--tw-content);display:block}.after\:h-\[25px\]:after{content:var(--tw-content);height:25px}.after\:w-\[2px\]:after{content:var(--tw-content);width:2px}.after\:rotate-\[-45deg\]:after{content:var(--tw-content);rotate:-45deg}.after\:bg-\[var\(--button-icon-color\)\]:after{content:var(--tw-content);background-color:var(--button-icon-color)}.after\:transition-colors:after{content:var(--tw-content);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.after\:duration-250:after{content:var(--tw-content);--tw-duration:.25s;transition-duration:.25s}.after\:content-\[\'\'\]:after{--tw-content:"";content:var(--tw-content)}@media (hover:hover){.group-hover\:after\:bg-\[var\(--button-icon-hover\)\]:is(:where(.group):hover *):after{content:var(--tw-content);background-color:var(--button-icon-hover)}.hover\:bg-\[\#22222299\]:hover{background-color:#2229}.hover\:bg-\[var\(--menu-link-bg-active\)\]:hover{background-color:var(--menu-link-bg-active)}.hover\:bg-\[var\(--menu-link-bg-hover\)\]:hover{background-color:var(--menu-link-bg-hover)}.hover\:bg-\[var\(--tag-bg-hover\)\]:hover{background-color:var(--tag-bg-hover)}.hover\:bg-neutral-700:hover{background-color:var(--color-neutral-700)}.hover\:text-\[var\(--color-primary-hover\)\]:hover{color:var(--color-primary-hover)}.hover\:text-\[var\(--menu-link-color-active\)\]:hover{color:var(--menu-link-color-active)}.hover\:text-\[var\(--menu-link-color-hover\)\]:hover{color:var(--menu-link-color-hover)}.hover\:text-\[var\(--tag-color-hover\)\]:hover{color:var(--tag-color-hover)}.hover\:text-neutral-900:hover{color:var(--color-neutral-900)}.hover\:no-underline:hover{text-decoration-line:none}}@media (width>=48rem){.md\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}}@media (width>=80rem){.xl\:static{position:static}.xl\:top-0{top:calc(var(--spacing)*0)}.xl\:right-\[-400px\]{right:-400px}.xl\:left-auto{left:auto}.xl\:z-\[15\]{z-index:15}.xl\:order-1{order:1}.xl\:order-2{order:2}.xl\:order-3{order:3}.xl\:order-4{order:4}.xl\:block{display:block}.xl\:h-\[90px\]{height:90px}.xl\:h-full{height:100%}.xl\:h-screen{height:100vh}.xl\:min-h-\[100vh\]{min-height:100vh}.xl\:w-\[15rem\]{width:15rem}.xl\:w-\[30rem\]{width:30rem}.xl\:w-\[50\%\]{width:50%}.xl\:w-\[200px\]{width:200px}.xl\:w-\[400px\]{width:400px}.xl\:flex-\[0_0_12em\]{flex:0 0 12em}.xl\:flex-\[0_0_200px\]{flex:0 0 200px}.xl\:flex-\[0_0_auto\]{flex:none}.xl\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.xl\:flex-row{flex-direction:row}.xl\:overflow-auto{overflow:auto}.xl\:rounded-lg{border-radius:var(--radius-lg)}.xl\:border-t-0{border-top-style:var(--tw-border-style);border-top-width:0}.xl\:border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.xl\:border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.xl\:border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.xl\:border-r-\[var\(--rule-top\)\]{border-right-color:var(--rule-top)}.xl\:border-l-\[var\(--rule-bottom\)\]{border-left-color:var(--rule-bottom)}.xl\:p-8{padding:calc(var(--spacing)*8)}.xl\:p-\[2rem_3rem_3rem_3rem\]{padding:2rem 3rem 3rem}.xl\:pr-8{padding-right:calc(var(--spacing)*8)}.xl\:pl-8{padding-left:calc(var(--spacing)*8)}.xl\:text-left{text-align:left}.xl\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.xl\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.xl\:leading-\[inherit\]{--tw-leading:inherit;line-height:inherit}.xl\:shadow-none{--tw-shadow:0 0 #0000}.xl\:ring-2,.xl\:shadow-none{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.xl\:ring-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentColor)}.xl\:ring-\[var\(--link-color\)\]{--tw-ring-color:var(--link-color)}}@media (prefers-color-scheme:dark){.dark\:bg-\[\#666\]{background-color:#666}.dark\:bg-neutral-700{background-color:var(--color-neutral-700)}.dark\:bg-white{background-color:var(--color-white)}.dark\:bg-white\/50{background-color:color-mix(in oklab,var(--color-white)50%,transparent)}.dark\:shadow-\[0_5px_25px_rgba\(0\,0\,0\,0\.75\)\]{--tw-shadow:0 5px 25px var(--tw-shadow-color,#000000bf);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}@media (width>=80rem){@media (prefers-color-scheme:dark){.xl\:dark\:shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}}.\[\&_img\]\:min-h-full img{min-height:100%}.\[\&_img\]\:min-w-full img{min-width:100%}.\[\&_img\]\:object-cover img{object-fit:cover}.\[\&\>li\]\:mb-2>li{margin-bottom:calc(var(--spacing)*2)}}:root[data-theme=light]{--color-primary:#0c7dce;--color-primary-hover:#01497d;--background:#f5f5f5;--foreground:#000;--menu-bg:#fff;--menu-color:#777;--menu-link-bg:#fff;--menu-link-bg-hover:#f5f5f5;--menu-link-bg-active:#fff;--menu-link-color:#333;--menu-link-color-hover:#000;--menu-link-color-active:#000;--link-color:var(--color-primary);--link-hover:var(--color-primary-hover);--heading-color:#222;--panel-bg:#ffffffe6;--rule-top:#ddd;--rule-bottom:#fff;--button-icon-color:#666;--button-icon-hover:#000;--tag-bg:#e5e5e5;--tag-bg-hover:#d5d5d5;--tag-color:#333;--tag-color-hover:#000;--site-section-title-color:#737373;--date-color:#737373;--portfolio-asset-thumbnail-bg:#ccc;--portfolio-detail-rule-color:#e5e5e5;--cv-rule-color:#bbb;--cv-position-title-color:#222;--cv-company-color:#222;--cv-college-color:#222;--cv-college-degree-color:#222;--scrim-color:#fffffff2;--loader-bar-bg:#fff;--loader-bar-color:var(--color-primary)}:root[data-theme=dark]{--color-primary:#4ab1fb;--color-primary-hover:#b5dff9;--background:#333;--foreground:#f5f5f5;--menu-bg:#222;--menu-color:#f5f5f5;--menu-link-bg:#222;--menu-link-bg-hover:#191919;--menu-link-bg-active:#111;--menu-link-color:#aaa;--menu-link-color-hover:#f5f5f5;--menu-link-color-active:#f5f5f5;--link-color:var(--color-primary);--link-hover:var(--color-primary-hover);--heading-color:#e5e5e5;--panel-bg:#000000e6;--rule-top:#222;--rule-bottom:#555;--button-icon-color:#999;--button-icon-hover:#fff;--tag-bg:#222;--tag-bg-hover:#191919;--tag-color:#f5f5f5;--tag-color-hover:#fff;--site-section-title-color:#737373;--date-color:#bbb;--portfolio-asset-thumbnail-bg:#555;--portfolio-detail-rule-color:#222;--cv-rule-color:#666;--cv-position-title-color:#fff;--cv-company-color:#bbb;--cv-college-color:#eee;--cv-college-degree-color:#bbb;--scrim-color:#000000f2;--loader-bar-bg:#222;--loader-bar-color:var(--color-primary)}*{box-sizing:border-box;transition:all .25s linear}body,html{height:100%;margin:0;padding:0}html{font-size:16px}body{background:var(--background);color:var(--foreground);font-family:Open Sans,sans-serif;line-height:1.4rem}p{margin-block:1em}.underline-animation a,a.underline-animation{color:var(--color-primary);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.25s;transition-duration:.25s;display:inline-block;position:relative}.underline-animation a:before,a.underline-animation:before{bottom:calc(var(--spacing)*0);left:calc(var(--spacing)*0);transform-origin:100%;--tw-scale-x:0%;width:100%;height:1px;scale:var(--tw-scale-x)var(--tw-scale-y);background-color:var(--color-primary-hover);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.25s;content:"";transition-duration:.25s;position:absolute}.underline-animation a:hover,a.underline-animation:hover{color:var(--color-primary-hover);text-decoration:none}.underline-animation a:hover:before,a.underline-animation:hover:before{transform-origin:0;--tw-scale-x:100%;scale:var(--tw-scale-x)var(--tw-scale-y)}@keyframes loading{0%{transform:translate(-100%)}to{transform:translate(100%)}}.loading-bar{will-change:transform;animation:loading 1.5s ease-in-out infinite}#more{display:none}@media (width<=1280px){#more{z-index:2;cursor:pointer;width:60px;height:60px;display:block;position:absolute;top:0;left:0}#more:hover:after,#more:hover:before{background-color:var(--button-icon-hover)}#more:after,#more:before{content:"";background-color:var(--button-icon-color);-o-transition:all .25s linear;width:25px;height:2px;transition:all .25s linear;display:block;position:absolute;left:17.5px;transform:rotate(0)}#more:before{top:25px}#more:after{top:35px}#more.open:before{top:30px;transform:rotate(45deg)}#more.open:after{top:30px;transform:rotate(-45deg)}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false;initial-value:rotateX(0)}@property --tw-rotate-y{syntax:"*";inherits:false;initial-value:rotateY(0)}@property --tw-rotate-z{syntax:"*";inherits:false;initial-value:rotateZ(0)}@property --tw-skew-x{syntax:"*";inherits:false;initial-value:skewX(0)}@property --tw-skew-y{syntax:"*";inherits:false;initial-value:skewY(0)}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@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-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes pulse{50%{opacity:.5}}@font-face{font-family:Open Sans;font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/d6fc113833db48fe-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Open Sans;font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/e1df014bb05b8510-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Open Sans;font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/13a314e63820922b-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Open Sans;font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/04c24f78ad5a47d8-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Open Sans;font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c1a1fe1e2bf9b2ee-s.woff2) format("woff2");unicode-range:u+0307-0308,u+0590-05ff,u+200c-2010,u+20aa,u+25cc,u+fb1d-fb4f}@font-face{font-family:Open Sans;font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/6d9d93fc6431e29f-s.woff2) format("woff2");unicode-range:u+0302-0303,u+0305,u+0307-0308,u+0310,u+0312,u+0315,u+031a,u+0326-0327,u+032c,u+032f-0330,u+0332-0333,u+0338,u+033a,u+0346,u+034d,u+0391-03a1,u+03a3-03a9,u+03b1-03c9,u+03d1,u+03d5-03d6,u+03f0-03f1,u+03f4-03f5,u+2016-2017,u+2034-2038,u+203c,u+2040,u+2043,u+2047,u+2050,u+2057,u+205f,u+2070-2071,u+2074-208e,u+2090-209c,u+20d0-20dc,u+20e1,u+20e5-20ef,u+2100-2112,u+2114-2115,u+2117-2121,u+2123-214f,u+2190,u+2192,u+2194-21ae,u+21b0-21e5,u+21f1-21f2,u+21f4-2211,u+2213-2214,u+2216-22ff,u+2308-230b,u+2310,u+2319,u+231c-2321,u+2336-237a,u+237c,u+2395,u+239b-23b7,u+23d0,u+23dc-23e1,u+2474-2475,u+25af,u+25b3,u+25b7,u+25bd,u+25c1,u+25ca,u+25cc,u+25fb,u+266d-266f,u+27c0-27ff,u+2900-2aff,u+2b0e-2b11,u+2b30-2b4c,u+2bfe,u+3030,u+ff5b,u+ff5d,u+1d400-1d7ff,u+1ee??}@font-face{font-family:Open Sans;font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/37da3febcafd463e-s.woff2) format("woff2");unicode-range:u+0001-000c,u+000e-001f,u+007f-009f,u+20dd-20e0,u+20e2-20e4,u+2150-218f,u+2190,u+2192,u+2194-2199,u+21af,u+21e6-21f0,u+21f3,u+2218-2219,u+2299,u+22c4-22c6,u+2300-243f,u+2440-244a,u+2460-24ff,u+25a0-27bf,u+28??,u+2921-2922,u+2981,u+29bf,u+29eb,u+2b??,u+4dc0-4dff,u+fff9-fffb,u+10140-1018e,u+10190-1019c,u+101a0,u+101d0-101fd,u+102e0-102fb,u+10e60-10e7e,u+1d2c0-1d2d3,u+1d2e0-1d37f,u+1f0??,u+1f100-1f1ad,u+1f1e6-1f1ff,u+1f30d-1f30f,u+1f315,u+1f31c,u+1f31e,u+1f320-1f32c,u+1f336,u+1f378,u+1f37d,u+1f382,u+1f393-1f39f,u+1f3a7-1f3a8,u+1f3ac-1f3af,u+1f3c2,u+1f3c4-1f3c6,u+1f3ca-1f3ce,u+1f3d4-1f3e0,u+1f3ed,u+1f3f1-1f3f3,u+1f3f5-1f3f7,u+1f408,u+1f415,u+1f41f,u+1f426,u+1f43f,u+1f441-1f442,u+1f444,u+1f446-1f449,u+1f44c-1f44e,u+1f453,u+1f46a,u+1f47d,u+1f4a3,u+1f4b0,u+1f4b3,u+1f4b9,u+1f4bb,u+1f4bf,u+1f4c8-1f4cb,u+1f4d6,u+1f4da,u+1f4df,u+1f4e3-1f4e6,u+1f4ea-1f4ed,u+1f4f7,u+1f4f9-1f4fb,u+1f4fd-1f4fe,u+1f503,u+1f507-1f50b,u+1f50d,u+1f512-1f513,u+1f53e-1f54a,u+1f54f-1f5fa,u+1f610,u+1f650-1f67f,u+1f687,u+1f68d,u+1f691,u+1f694,u+1f698,u+1f6ad,u+1f6b2,u+1f6b9-1f6ba,u+1f6bc,u+1f6c6-1f6cf,u+1f6d3-1f6d7,u+1f6e0-1f6ea,u+1f6f0-1f6f3,u+1f6f7-1f6fc,u+1f7??,u+1f800-1f80b,u+1f810-1f847,u+1f850-1f859,u+1f860-1f887,u+1f890-1f8ad,u+1f8b0-1f8bb,u+1f8c0-1f8c1,u+1f900-1f90b,u+1f93b,u+1f946,u+1f984,u+1f996,u+1f9e9,u+1fa00-1fa6f,u+1fa70-1fa7c,u+1fa80-1fa89,u+1fa8f-1fac6,u+1face-1fadc,u+1fadf-1fae9,u+1faf0-1faf8,u+1fb??}@font-face{font-family:Open Sans;font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/51f6eedf9be77cd7-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Open Sans;font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/403511e41efd5e81-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Open Sans;font-style:normal;font-weight:300 800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/5d258b355fefebcb-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Open Sans Fallback;src:local("Arial");ascent-override:101.65%;descent-override:27.86%;line-gap-override:0.00%;size-adjust:105.15%}.__className_4dd805{font-family:Open Sans,Open Sans Fallback;font-style:normal}