@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:block))) 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-outline-style:solid;--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;--ease-out:cubic-bezier(0, 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{.\!visible{visibility:visible!important}.visible{visibility:visible}.fixed{position:fixed}.static{position:static}.sticky{position:sticky}.isolate{isolation:isolate}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, )}.resize{resize:both}.rounded{border-radius:.25rem}.uppercase{text-transform:uppercase}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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{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-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}:root{--background:#050505;--foreground:#f5f5f5;--muted:gray;--accent:#ff5d38;--page-max:2560px;--page-gutter:max(clamp(20px, 3.9vw, 56px), (100vw - var(--page-max)) / 2);--motion-ease-out:cubic-bezier(.23, 1, .32, 1);--motion-ease-reveal:cubic-bezier(.2, .7, .2, 1);--motion-ease-wipe:cubic-bezier(.27, 0, .51, 1);--motion-duration-feedback:.16s;--motion-duration-hover:.2s;--motion-duration-project-image:.5s;--motion-duration-project-arrow:.3s;--motion-duration-menu:.76s;--motion-duration-menu-close:.56s;--motion-ease-menu:cubic-bezier(.76, 0, .24, 1);--motion-stagger-menu:70ms;--motion-duration-reveal:.75s;--motion-duration-wipe-hold:.2s;--motion-duration-wipe:.8s;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-gutter:stable}html.lenis.lenis-smooth{scroll-behavior:auto!important}html.lenis:not(.lenis-autoToggle).lenis-stopped,html.scroll-locked{overflow:hidden}body{background:var(--background);color:var(--foreground);font-family:var(--font-clash-display), Arial, sans-serif;-webkit-font-smoothing:antialiased;margin:0;font-weight:400}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:6px}main:focus-visible{outline:none}.skip-link{z-index:100;background:var(--foreground);color:var(--background);border-radius:8px;padding:12px 20px;position:fixed;top:12px;left:12px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}::selection{background:var(--accent);color:var(--selection-ink,white)}h1,h2,h3,h4,p{margin:0}main{isolation:isolate;position:relative;overflow:clip}.hero-background{z-index:-2;opacity:.75;background:radial-gradient(at 65% 35%,#5c2113,#0000 75%);width:100%;height:100vh;position:absolute;top:0;left:0;-webkit-mask-image:linear-gradient(#000 10%,#0000 95%);mask-image:linear-gradient(#000 10%,#0000 95%)}.hero-background canvas{width:100%;height:100%;display:block}.custom-cursor{display:none}@media (min-width:1024px) and (pointer:fine){html[data-custom-cursor=true] :is(body,a,button){cursor:none}.custom-cursor{mix-blend-mode:difference;z-index:50;pointer-events:none;opacity:0;background:#fff;border-radius:50%;width:18px;height:18px;display:block;position:fixed;top:0;left:0}.custom-cursor.cursor-visible{opacity:1}.custom-cursor{transition:scale .3s var(--motion-ease-out)}.custom-cursor.cursor-labelled{scale:0}.cursor-label{z-index:50;pointer-events:none;position:fixed;top:0;left:0}.cursor-label-pill{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#efeee9;font-family:var(--font-geist-sans), Arial, sans-serif;white-space:nowrap;opacity:0;transition:opacity .3s var(--motion-ease-out), scale .3s var(--motion-ease-out);background:#0b0b0cc7;border-radius:999px;align-items:center;gap:12px;padding:16px 24px;font-size:16px;font-weight:500;display:inline-flex;translate:-50% -50%;scale:.6}.cursor-label-pill svg{width:16px;height:16px}.cursor-label-icon{display:flex}.cursor-label-icon[hidden]{display:none}.cursor-label-visible .cursor-label-pill{opacity:1;scale:1}}.cursor-label{display:none}@media (min-width:1024px) and (pointer:fine){.cursor-label{display:block}}@media (prefers-reduced-motion:reduce){.custom-cursor,.cursor-label-pill{transition-property:opacity}.cursor-label-pill{scale:1}}.header{z-index:20;position:fixed;inset:0 0 auto}.header:before{content:"";z-index:19;pointer-events:none;background:linear-gradient(#0b0b0cf0,#0b0b0c00);height:116px;position:fixed;inset:0 0 auto}@media (max-width:1023px){.header:before{height:96px}}.pill{--pill-ink:#efeee9;--pill-dark:#0b0b0c;--pill-ring:#efeee94d;isolation:isolate;height:60px;font-family:var(--font-geist-sans), Arial, sans-serif;color:var(--pill-ink);transition:color .45s var(--motion-ease-out);border-radius:999px;align-items:center;gap:16px;padding:0 9px 0 28px;font-size:19px;font-weight:500;display:inline-flex;position:relative;overflow:hidden}.pill:before{content:"";z-index:-1;background:var(--accent);width:150%;height:220%;transition:transform .65s var(--motion-ease-out);border-radius:50%;position:absolute;top:0;left:-25%;transform:translateY(50%)}.pill:after{content:"";border-radius:inherit;box-shadow:inset 0 0 0 1px var(--pill-ring);pointer-events:none;position:absolute;inset:0}.pill-label{line-height:1.25;display:inline-grid;overflow:hidden}.pill-label>span{transition:transform .6s var(--motion-ease-out);grid-area:1/1}.pill-label>span:last-child{transform:translateY(110%)}.pill-label>[data-text]:before{content:attr(data-text)}.pill-icon{background:var(--pill-ink);width:42px;height:42px;color:var(--pill-dark);transition:background-color .45s var(--motion-ease-out), color .45s var(--motion-ease-out), transform .6s var(--motion-ease-out);border-radius:50%;flex:none;place-items:center;display:grid;overflow:hidden}.pill-icon svg{width:16px;height:16px;transition:transform .6s var(--motion-ease-out) 50ms;grid-area:1/1;transform:rotate(-45deg)}.pill-icon svg:last-child{transform:translate(-220%,220%)rotate(-45deg)}.pill-down .pill-icon svg{transform:rotate(90deg)}.pill-down .pill-icon svg:last-child{transform:translateY(-230%)rotate(90deg)}.pill-small{gap:12px;height:46px;padding:0 6px 0 20px;font-size:15px}.pill-small .pill-icon{width:34px;height:34px}.pill-small .pill-icon svg{width:14px;height:14px}.pill:focus-visible,.pill:hover{--pill-ring:var(--accent);color:var(--pill-dark)}.pill:focus-visible:before,.pill:hover:before{transform:translateY(-27%)}.pill:focus-visible .pill-icon,.pill:hover .pill-icon{background:var(--pill-dark);color:var(--accent)}@media (hover:hover) and (pointer:fine){.pill:hover .pill-label>span:first-child{transform:translateY(-110%)}.pill:hover .pill-label>span:last-child{transform:none}.pill:hover .pill-icon{transform:scale(1.06)}.pill:hover .pill-icon svg:first-child{transform:translate(220%,-220%)rotate(-45deg)}.pill:hover .pill-icon svg:last-child{transform:rotate(-45deg)}.pill-down:hover .pill-icon svg:first-child{transform:translateY(230%)rotate(90deg)}.pill-down:hover .pill-icon svg:last-child{transform:rotate(90deg)}}@media (hover:none),(pointer:coarse){.pill:hover{--pill-ring:#efeee94d;color:var(--pill-ink)}.pill:hover:before{transform:translateY(50%)}.pill:hover .pill-icon{background:var(--pill-ink);color:var(--pill-dark)}}@media (min-width:1024px){.nav-contact[data-active]{--pill-ring:var(--accent);color:var(--pill-dark)}.nav-contact[data-active]:before{transform:translateY(-27%)}.nav-contact[data-active] .pill-icon{background:var(--pill-dark);color:var(--accent);transform:scale(1.06)}.nav-contact[data-active] .pill-label>span:first-child{transform:translateY(-110%)}.nav-contact[data-active] .pill-label>span:last-child{transform:none}.nav-contact[data-active] .pill-icon svg:first-child{transform:translateY(230%)rotate(90deg)}.nav-contact[data-active] .pill-icon svg:last-child{transform:rotate(90deg)}}@media (prefers-reduced-motion:reduce){.pill,.pill:before,.pill-label>span,.pill-icon,.pill-icon svg{transition:none}}@media (forced-colors:active){.pill:after{border:1px solid buttontext}.pill:hover:after,.pill:focus-visible:after,.nav-contact[data-active]:after{border-color:highlight}.pill-icon{border:1px solid buttontext}}@media (forced-colors:active) and (prefers-color-scheme:light){.brand img,.home-marquee img{filter:brightness(0)}}@media (forced-colors:active) and (max-width:1023px){.nav-contact:after{border:0}}.header nav{z-index:20;height:84px;padding:0 var(--page-gutter);justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.brand{flex:none;align-items:center;width:73px;height:40px;display:flex}.brand-mark{display:block;position:relative}.brand img{width:73px;height:auto;display:block}.brand-dot{background:var(--accent);opacity:0;transform-origin:50% 100%;pointer-events:none;border-radius:50%;width:7.109%;height:14.218%;position:absolute;top:85.782%;left:92.891%}.brand-mark.is-hopping img,.brand-mark[data-themed] img{clip-path:inset(0 8% 0 0)}.brand-mark.is-hopping .brand-dot{opacity:1}.brand-mark[data-themed] .brand-dot{animation:brand-period .17s var(--motion-ease-out) 1.03s both}@keyframes brand-period{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.brand-mark[data-themed] .brand-dot{opacity:1;animation:none}}.navigation-links{font-family:var(--font-geist-sans), Arial, sans-serif;align-items:center;gap:36px;font-size:15px;font-weight:400;display:flex}.navigation-links>a:not(.nav-contact){transition:color var(--motion-duration-feedback) ease}.navigation-links>a.active{color:var(--accent)}@media (min-width:1024px){.navigation-links>a:not(.nav-contact){position:relative}.navigation-links>a:not(.nav-contact):after{content:"";background:var(--accent);transform-origin:100%;pointer-events:none;height:1px;transition:transform .5s cubic-bezier(.16,1,.3,1);position:absolute;bottom:-5px;left:0;right:0;transform:scaleX(0)}.navigation-links>a:not(.nav-contact):focus-visible:after{transform-origin:0;transform:scaleX(1)}}@media (min-width:1024px) and (hover:hover) and (pointer:fine){.navigation-links>a:not(.nav-contact):hover:after{transform-origin:0;transform:scaleX(1)}}@media (min-width:1024px) and (prefers-reduced-motion:reduce){.navigation-links>a:not(.nav-contact):after{transition:none}}@media (min-width:1024px) and (pointer:coarse){.navigation-links>a:not(.nav-contact){position:relative}.navigation-links>a:not(.nav-contact):before{content:"";position:absolute;inset:-11px -12px}}@media (min-width:1024px) and (prefers-reduced-motion:no-preference){.header .navigation-links>a{animation:navigation-enter var(--motion-duration-project-arrow) var(--motion-ease-out) backwards;animation-delay:calc(.16s + (var(--i,1) - 1) * var(--motion-stagger-menu))}.header .navigation-links>a:focus-visible{animation:none}}@keyframes menu-ticker-in-up{0%{transform:translateY(100%)}}@keyframes menu-ticker-out-up{to{transform:translateY(-100%)}}@keyframes menu-ticker-in-down{0%{transform:translateY(-100%)}}@keyframes menu-ticker-out-down{to{transform:translateY(100%)}}@keyframes navigation-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (hover:hover) and (pointer:fine){.navigation-links>a:not(.nav-contact):hover{color:var(--accent)}}.menu-toggle,.menu-home,.menu-foot,.menu-item-index{display:none}.hero{flex-direction:column;justify-content:center;align-items:center;gap:40px;max-width:1440px;height:100vh;margin:auto;padding:0 0 180px;display:flex;position:relative}.status{letter-spacing:.2px;justify-content:center;align-items:center;gap:12px;font-size:20px;line-height:35px;display:flex}.hero h1{letter-spacing:-.5px;font-size:68px;font-weight:300;line-height:68px}.section{width:100%;max-width:1440px;margin:0 auto;padding-left:80px;padding-right:80px;position:relative}h2{letter-spacing:.4px;font-size:80px;font-weight:500;line-height:1.2}h2>span{color:var(--accent)}h3{letter-spacing:.4px;font-size:28px;font-weight:500;line-height:1.1}.projects{flex-direction:column;gap:40px;padding-top:150px;padding-bottom:150px;scroll-margin-top:100px;display:flex}.about{padding-top:100px;padding-bottom:150px;scroll-margin-top:100px}.about-grid{grid-template-rows:auto auto;grid-template-columns:1fr 1fr;gap:40px 64px;min-height:600px;margin-top:40px;display:grid}.about-title{grid-area:1/1;align-self:end;margin-top:116px}.portrait{border-radius:24px;grid-area:1/2/3/3;height:600px;position:relative}.portrait img{object-fit:cover;object-position:50% 50%}.skills{background:#0000003d;border-radius:8px;grid-template-columns:repeat(3,1fr);margin-top:100px;display:grid;overflow:hidden;box-shadow:inset 0 0 0 1px #9e9e9e24}.skills article{text-align:center;flex-direction:column;align-items:center;gap:16px;padding:50px 40px;display:flex}.skills h3{width:100%}.skills p{max-width:290px;font-size:16px;font-weight:300;line-height:25.6px}.contact{padding-top:150px;padding-bottom:0;scroll-margin-top:110px}.contact h2{margin-top:40px}.email{letter-spacing:-.5px;width:max-content;max-width:100%;transition:color var(--motion-duration-feedback) ease;margin-top:24px;font-size:37px;font-weight:600;line-height:60px;display:block}@media (hover:hover) and (pointer:fine){.email:hover{color:var(--accent)}}.arrow-up{transform:rotate(-90deg)}footer{text-align:center;border-top:1px solid #161616;margin-top:40px;padding:40px 24px 50px;font-size:14px;font-weight:500;line-height:19.6px}footer span,footer p{color:var(--muted)}footer p{margin-top:16px}footer time{text-align:left;min-width:78px;display:inline-block}.motion-ready .reveal{opacity:0;transition:opacity var(--motion-duration-reveal) ease, transform var(--motion-duration-reveal) var(--motion-ease-reveal);transform:translate(24px,10px)}.motion-ready .reveal.visible{opacity:1;transform:none}@keyframes marquee{0%{transform:translate(-1164px)}to{transform:translate(0)}}@media (min-width:1366px) and (max-width:1439px){h2{font-size:72px}.hero{padding:20px 0 140px}}@media (min-width:1024px) and (max-width:1365px){.hero{padding:10px 0 120px}.hero h1{font-size:56px;line-height:56px}.section{padding-left:72px;padding-right:72px}h2{font-size:64px}h3{font-size:24px}.about-grid{column-gap:48px}.portrait{height:550px}.about-title{margin-top:100px}.skills article{padding:40px 24px}.skills p{font-size:14px;line-height:22.4px}}@media (max-width:1023px){.header nav{height:72px;padding:16px 20px}.brand{width:73px}.brand img{width:73px;height:auto}.menu-toggle{color:#f5f5f5;background:0 0;border:0;justify-content:center;align-items:center;width:24px;height:24px;padding:0;display:flex;position:relative}.menu-toggle svg{pointer-events:none;width:24px;height:24px;display:block}.menu-toggle path{transform-origin:12px 12px;transition:transform .3s cubic-bezier(.5,.85,.25,1.1)}.menu-toggle path:first-child{transform:translateY(-7px)}.menu-toggle path:nth-child(2){transition-timing-function:cubic-bezier(.5,.85,.25,1.8)}.menu-toggle path:nth-child(3){transform:translateY(7px)}.navigation-links{display:none}.expanded .brand{height:48px}.expanded .menu-toggle{margin-top:12px}.menu-toggle[aria-expanded=true] path:first-child{transform:translateY(0)rotate(315deg)}.menu-toggle[aria-expanded=true] path:nth-child(2){transform:rotate(45deg)}.menu-toggle[aria-expanded=true] path:nth-child(3){transform:translateY(0)rotate(135deg)}.menu-open{overflow:hidden}.hero h1{font-size:40px;line-height:40px}.section{padding-left:72px;padding-right:72px}.projects{padding-top:120px;padding-bottom:120px}h2{font-size:56px}h3{font-size:22px}.about{padding-bottom:120px}.about-grid{flex-direction:column;gap:40px;min-height:0;display:flex}.about-title{order:0;align-self:auto;margin:0}.portrait{flex:none;order:1;width:100%;height:500px}.skills{grid-template-columns:1fr}.skills article{padding:40px 24px}.skills p{font-size:14px;line-height:22.4px}.skills{margin-top:80px}.contact{padding-top:120px}}@media (max-width:767px){.hero{gap:32px;padding:0 0 180px}.hero h1{font-size:30px;line-height:30px}.status{gap:12px;font-size:14px;line-height:35px}.section{padding-left:32px;padding-right:32px}.projects{gap:24px;padding-top:100px;padding-bottom:100px;scroll-margin-top:100px}h2{font-size:38px;line-height:45.6px}h3{font-size:18px;line-height:19.8px}.about{padding-top:100px;padding-bottom:100px;scroll-margin-top:60px}.about-grid{gap:40px;margin-top:32px}.about-title{margin-bottom:0}.portrait{border-radius:24px;height:320px}.skills article{padding:32px 24px}.skills h3{font-size:18px;line-height:19.8px}.skills p{max-width:290px}.contact{padding-top:100px;scroll-margin-top:90px}.contact h2{margin-top:24px}.email{letter-spacing:0;margin-top:24px;font-size:22px;line-height:48px}.contact-note br{display:none}footer{padding-top:40px;padding-bottom:50px}}@media (min-width:375px) and (max-width:424px){.hero h1{font-size:26px;line-height:26px}}@media (max-width:374px){.hero{gap:24px;padding-bottom:100px}.hero h1{font-size:22px;line-height:22px}.email{font-size:20px}}@media (max-width:1023px){.header .menu-toggle{gap:10px;width:auto;margin-top:12px}.header .menu-toggle svg{flex:none}.header .menu-toggle:before{content:"";position:absolute;inset:-10px}.menu-ticker{height:16px;font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.04em;text-transform:uppercase;justify-items:end;font-size:12px;line-height:16px;display:grid;overflow:hidden}.menu-ticker>span{white-space:nowrap;grid-area:1/1;align-items:center;gap:8px;display:flex}.menu-ticker>span:not([data-close]):before{content:"";background:var(--accent);border-radius:50%;width:5px;height:5px}.menu-ticker-in,.menu-ticker-out{animation-duration:.64s;animation-timing-function:cubic-bezier(.34,1.3,.5,1);animation-fill-mode:both}.menu-ticker-in{animation-name:menu-ticker-in-up}.menu-ticker-out{animation-name:menu-ticker-out-up}.menu-ticker[data-direction=down] .menu-ticker-in{animation-name:menu-ticker-in-down}.menu-ticker[data-direction=down] .menu-ticker-out{animation-name:menu-ticker-out-down}.header nav{--reveal-at:calc(100% - 32px) 40px;pointer-events:none;border-radius:0;align-items:flex-start;height:100dvh}.header nav>.brand,.header nav>.menu-toggle{pointer-events:auto}.header .brand{height:48px}.header nav:before{content:"";z-index:-1;-webkit-backdrop-filter:none;backdrop-filter:none;clip-path:circle(0 at var(--reveal-at));visibility:hidden;transition:clip-path var(--motion-duration-menu-close) var(--motion-ease-menu), visibility 0s var(--motion-duration-menu-close), -webkit-backdrop-filter 0s var(--motion-duration-menu-close), backdrop-filter 0s var(--motion-duration-menu-close);background:#0b0b0cf0;position:fixed;inset:0}.header.expanded nav:before{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);clip-path:circle(150vmax at var(--reveal-at));visibility:visible;transition:clip-path var(--motion-duration-menu) var(--motion-ease-menu), visibility 0s, -webkit-backdrop-filter 0s, backdrop-filter 0s}.header .navigation-links{inset:104px 20px calc(28px + env(safe-area-inset-bottom));visibility:hidden;pointer-events:none;transition:visibility 0s var(--motion-duration-menu-close);flex-direction:column;align-items:stretch;gap:22px;display:flex;position:absolute}.header.expanded .navigation-links{visibility:visible;pointer-events:auto;transition-delay:0s}.header .navigation-links>a,.header .navigation-links>a.nav-contact,.header .navigation-links>a.nav-contact:hover,.header .navigation-links>a.nav-contact:focus-visible{width:auto;height:auto;box-shadow:none;font-family:var(--font-clash-display), Arial, sans-serif;font-size:var(--menu-item-size,clamp(48px, 14vw, 76px));letter-spacing:-.02em;text-transform:none;color:inherit;opacity:1;border-radius:0;justify-content:space-between;align-items:baseline;padding:0 0 6px;font-weight:500;line-height:1.15;display:flex;position:relative;overflow:hidden;transform:none}.header .navigation-links>a:is(.active,[data-active]){color:var(--accent)}.header .navigation-links>.menu-home{margin-top:auto}.header .navigation-links>.nav-contact{margin-bottom:48px}.header .navigation-links .nav-contact:before,.header .navigation-links .nav-contact .pill-icon,.header .navigation-links .nav-contact .pill-label>span:last-child{display:none}.header .navigation-links .nav-contact .pill-label{height:auto;line-height:inherit;display:block;overflow:visible}.header .navigation-links>a:after{content:"";transform-origin:0;background:#efeee924;height:1px;transition:transform .32s cubic-bezier(.5,0,.75,0);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.header .navigation-links>a.nav-contact:after{box-shadow:none;border-radius:0;top:auto}.header.expanded .navigation-links>a:after{transition:transform .9s var(--motion-ease-out) .24s;transform:none}.header .navigation-links :is(.menu-item-text,.menu-item-index){opacity:0;transition:transform .32s cubic-bezier(.5,0,.75,0),opacity .32s;display:block;transform:translateY(115%)}.header .navigation-links .menu-item-index{font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.04em;color:#efeee98f;font-size:12px}.header .navigation-links>a:is(.active,[data-active]) .menu-item-index{color:var(--accent)}.header.expanded .navigation-links :is(.menu-item-text,.menu-item-index){opacity:1;transition:transform .9s var(--motion-ease-out) .28s, opacity .7s ease .28s;transform:none}.header.expanded .navigation-links>a :is(.menu-item-text,.menu-item-index),.header.expanded .navigation-links>a:after{transition-delay:calc(.28s + var(--i,0) * var(--motion-stagger-menu))}@media (hover:hover) and (pointer:fine){.header .navigation-links>a.nav-contact:hover{color:var(--accent)}}.menu-foot{opacity:0;flex-direction:column;gap:14px;margin-top:auto;transition:opacity .24s,transform .24s;display:flex;transform:translateY(12px)}.header.expanded .menu-foot{opacity:1;transition:opacity .7s ease .48s, transform .9s var(--motion-ease-out) .48s;transform:none}.menu-email{font-family:var(--font-geist-sans), Arial, sans-serif;font-size:20px;line-height:1.3}.menu-socials{font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.04em;text-transform:uppercase;color:#efeee9b8;gap:24px;font-size:12px;display:flex}.menu-socials a{align-items:center;gap:6px;display:inline-flex;position:relative}.menu-email{position:relative}.menu-email:before{content:"";position:absolute;inset:-18px 0 0}.menu-socials a:before{content:"";position:absolute;inset:-14px -12px -12px}.menu-socials svg{width:12px;height:12px;rotate:-45deg}@media (max-height:700px){.header .navigation-links{--menu-item-size:min(clamp(48px, 14vw, 76px), calc((100dvh - 346px) / 4.6))}}@media (max-height:520px){.header .navigation-links{--menu-item-size:max(28px, min(48px, calc((100dvh - 210px) / 4.6)));inset:80px 20px calc(4px + env(safe-area-inset-bottom));gap:8px;padding-bottom:12px;overflow-y:auto}.header .navigation-links>a,.header .navigation-links>.menu-foot{flex-shrink:0}.header .navigation-links>.menu-home{margin-top:0}.header .navigation-links>.nav-contact{margin-bottom:0}@media (min-width:560px){.header .navigation-links{--menu-item-size:max(28px, min(48px, calc((100dvh - 168px) / 4.6)));grid-template-columns:minmax(0,1fr) minmax(220px,36%);align-content:start;column-gap:40px;display:grid}.header .navigation-links>a{grid-column:1}.header .navigation-links>.menu-foot{grid-area:1/2/span 4;align-self:end;margin-top:0}}}.header nav:has(:focus-visible):before{transition:none}.header nav:has(:focus-visible) .navigation-links{transition:none}.header.expanded nav:has(:focus-visible) :is(.menu-item-text,.menu-item-index,.menu-foot){opacity:1;transition:none;transform:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.motion-ready .reveal{opacity:1;transition:none;transform:none}@media (max-width:1023px){.menu-toggle path,.header nav:before,.header .navigation-links,.menu-foot,.header .navigation-links>a:after{transition:none}.menu-ticker>span{animation:none}.menu-ticker-out{display:none}.menu-foot,.header .navigation-links>a:after{transform:none}.header .navigation-links :is(.menu-item-text,.menu-item-index),.header.expanded .navigation-links :is(.menu-item-text,.menu-item-index){transition:opacity var(--motion-duration-feedback) ease;transition-delay:0s;transform:none}.header.expanded .navigation-links>a :is(.menu-item-text,.menu-item-index),.header.expanded .navigation-links>a:after{transition-delay:0s}}}@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-outline-style{syntax:"*";inherits:false;initial-value:solid}@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}
