@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(../media/41e95f694c5c4549-s.2b_sldcwg6mn_.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(../media/6c55a692938ebbbc-s.1emuuracu50qd.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(../media/a218039a3287bcfd-s.p.43zbiuwnnoiok.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(../media/bdc7e24a509eb931-s.0ynx40_3oa9rk.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(../media/0da9c7f357bd9d4d-s.1975l3y3401x_.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(../media/8e6fa89aa22d24ec-s.p.2o7m9ogm38dql.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(../media/0a7740363b4d4863-s.3ji57o093q1kd.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(../media/5f9d24ebef5d5292-s.19xuq3td7fwu_.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e2334d715941921e-s.p.3o_v2fun1jzxk.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b53057dbf91a7acf-s.11ypmpdlzqdb_.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(../media/798ea22d9983e047-s.3go-kn2r40gie.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(../media/47fe1b7cd6e6ed85-s.p.3bh2vc0w-r-ll.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins Fallback;src:local(Arial);ascent-override:93.62%;descent-override:31.21%;line-gap-override:8.92%;size-adjust:112.16%}.poppins_204ca81a-module__iwO66G__className{font-family:Poppins,Poppins Fallback;font-style:normal}.poppins_204ca81a-module__iwO66G__variable{--font-poppins:"Poppins", "Poppins Fallback"}
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}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, 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;--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,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;-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{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{.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}}.hidden{display:none}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f1e9;--bg-soft:#ebe6da;--surface:#fffdf7;--surface-strong:#e4ded1;--text:#111827;--text-soft:#5f6470;--line:#11182721;--header:#f4f1e9d1;--accent:#ee6235;--accent-soft:#ee623521;--gold:#c59a48;--shadow:#161b2629;--max-width:1220px}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#09111f;--bg-soft:#0d1728;--surface:#121d30;--surface-strong:#17243a;--text:#f4f1e9;--text-soft:#9ca5b8;--line:#f4f1e91c;--header:#09111fd1;--accent:#ff7a45;--accent-soft:#ff7a4526;--gold:#d9b26b;--shadow:#00000080}@media (prefers-color-scheme:dark){html:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#09111f;--bg-soft:#0d1728;--surface:#121d30;--surface-strong:#17243a;--text:#f4f1e9;--text-soft:#9ca5b8;--line:#f4f1e91c;--header:#09111fd1;--accent:#ff7a45;--accent-soft:#ff7a4526;--gold:#d9b26b;--shadow:#00000080}}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:90px}body{--font-display:var(--font-poppins);--font-body:var(--font-poppins);--font-mono:var(--font-poppins);background:var(--bg);min-width:320px;color:var(--text);font-family:var(--font-body), sans-serif;line-height:1.6;transition:background-color .22s,color .22s;overflow-x:hidden}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit}::selection{background:var(--accent);color:#07111f}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.container{width:min(100% - 48px, var(--max-width));margin-inline:auto}.grain{z-index:100;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.9'/%3E%3C/svg%3E");position:fixed;inset:0}.arrow-icon{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.site-header{z-index:50;border-bottom:1px solid var(--line);background:var(--header);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);height:78px;position:fixed;inset:0 0 auto}.site-header__inner{width:min(100% - 48px, var(--max-width));justify-content:space-between;align-items:center;height:100%;margin:auto;display:flex}.brand{font-family:var(--font-display), sans-serif;align-items:center;gap:10px;font-size:1.06rem;font-weight:700;display:inline-flex}.brand__dot{background:var(--accent);width:9px;height:9px;box-shadow:0 0 0 5px var(--accent-soft);border-radius:50%}.site-nav{align-items:center;gap:clamp(22px,3vw,42px);display:flex}.site-nav a,.header-contact{font-family:var(--font-mono), monospace;letter-spacing:.08em;text-transform:uppercase;font-size:.68rem}.site-nav a{color:var(--text-soft);transition:color .2s}.site-nav a:hover{color:var(--accent)}.site-header__actions{align-items:center;gap:10px;display:flex}.header-contact{border:1px solid var(--line);border-radius:999px;padding:10px 15px;transition:border-color .2s,background .2s}.header-contact:hover{border-color:var(--accent);background:var(--accent-soft)}.header-contact span{color:var(--accent)}.theme-toggle{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:39px;height:39px;transition:transform .25s,border-color .25s;display:grid}.theme-toggle:hover{border-color:var(--accent);transform:rotate(12deg)}.theme-toggle__icon{font-family:Arial,sans-serif;font-size:1rem;line-height:1}.theme-toggle__sun,html[data-theme=dark] .theme-toggle__moon{display:none}html[data-theme=dark] .theme-toggle__sun,html[data-theme=light] .theme-toggle__moon{display:inline}html[data-theme=light] .theme-toggle__sun{display:none}@media (prefers-color-scheme:dark){html:not([data-theme]) .theme-toggle__moon{display:none}html:not([data-theme]) .theme-toggle__sun{display:inline}}.menu-button{cursor:pointer;background:0 0;border:0;width:40px;height:40px;display:none}.menu-button span{background:currentColor;width:20px;height:1px;margin:5px auto;transition:transform .2s;display:block}.menu-button--open span:first-child{transform:translateY(3px)rotate(45deg)}.menu-button--open span:last-child{transform:translateY(-3px)rotate(-45deg)}.hero{align-items:center;min-height:100svh;padding:150px 0 100px;display:flex;position:relative;overflow:hidden}.hero__grid{z-index:2;grid-template-columns:minmax(0,1.15fr) minmax(320px,.7fr);align-items:center;gap:clamp(48px,8vw,110px);display:grid;position:relative}.eyebrow{color:var(--accent);font-family:var(--font-mono), monospace;letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:10px;font-size:.7rem;display:flex}.eyebrow:before{content:"";background:currentColor;width:28px;height:1px}.eyebrow--centered{justify-content:center}.hero h1{font-family:var(--font-display), sans-serif;letter-spacing:-.055em;margin:21px 0 24px;font-size:clamp(3.35rem,6.8vw,6rem);font-weight:700;line-height:.91}.hero h1 span{display:block}.hero__accent{color:var(--accent);font-style:italic;font-weight:500}.hero__role{color:var(--text-soft);font-family:var(--font-mono), monospace;letter-spacing:.02em;font-size:clamp(.7rem,1.3vw,.82rem)}.hero__intro{max-width:590px;color:var(--text-soft);margin:25px 0 34px;font-size:clamp(1rem,1.5vw,1.12rem)}.hero__actions{flex-wrap:wrap;gap:13px;display:flex}.button{min-height:50px;font-family:var(--font-mono), monospace;letter-spacing:.06em;text-transform:uppercase;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:11px;padding:0 23px;font-size:.69rem;font-weight:700;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex}.button:hover{transform:translateY(-3px)}.button--primary{background:var(--accent);color:#09111f;box-shadow:0 15px 35px -18px var(--accent)}.button--secondary{border-color:var(--line)}.button--secondary:hover{border-color:var(--accent);background:var(--accent-soft)}.portrait-wrap{justify-self:center;width:min(100%,380px);padding:22px;position:relative}.portrait-grid{opacity:.36;background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);background-size:28px 28px;position:absolute;inset:0;transform:rotate(3deg);-webkit-mask-image:linear-gradient(#000,#0000 95%);mask-image:linear-gradient(#000,#0000 95%)}.portrait{border:1px solid var(--line);background:linear-gradient(150deg, var(--surface-strong), var(--surface));height:440px;box-shadow:0 40px 80px -34px var(--shadow);border-radius:160px 160px 20px 20px;place-items:center;transition:transform .4s;display:grid;position:relative;overflow:hidden;transform:rotate(2deg)}.portrait-wrap:hover .portrait{transform:rotate(0)}.portrait:before{content:"";background:var(--accent-soft);filter:blur(4px);border-radius:50%;width:250px;height:250px;position:absolute}.portrait img{object-fit:cover;object-position:50% 52%}.portrait span{color:var(--accent);font-family:var(--font-display), sans-serif;opacity:.28;font-size:7rem;font-weight:700;position:relative}.availability{border:1px solid var(--line);background:var(--surface);box-shadow:0 15px 35px -18px var(--shadow);color:var(--text-soft);font-family:var(--font-mono), monospace;border-radius:12px;align-items:center;gap:10px;padding:13px 16px;font-size:.66rem;display:flex;position:absolute;bottom:5px;left:-13px}.availability i{background:#29c983;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 5px #29c98321}.portrait-note{color:var(--text-soft);font-family:var(--font-mono), monospace;letter-spacing:.08em;text-transform:uppercase;font-size:.59rem;position:absolute;top:48%;right:-38px;transform:rotate(90deg)}.orb{filter:blur(55px);pointer-events:none;border-radius:50%;position:absolute}.orb--one{background:radial-gradient(circle, var(--accent-soft), transparent 70%);width:540px;height:540px;top:-200px;right:-120px}.orb--two{background:radial-gradient(circle, var(--gold), transparent 70%);width:380px;height:380px;bottom:-170px;left:-170px}@supports (color:color-mix(in lab, red, red)){.orb--two{background:radial-gradient(circle, color-mix(in srgb, var(--gold) 20%, transparent), transparent 70%)}}.scroll-cue{color:var(--text-soft);font-family:var(--font-mono), monospace;letter-spacing:.12em;text-transform:uppercase;transform-origin:0;align-items:center;gap:13px;font-size:.58rem;display:flex;position:absolute;bottom:60px;left:28px;transform:rotate(90deg)}.scroll-cue i{background:var(--line);width:45px;height:1px}.section{padding:125px 0}.section--projects{background:var(--bg-soft)}.section-heading{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:58px;display:flex}.section-heading__label,.section-heading__index{color:var(--text-soft);font-family:var(--font-mono), monospace;letter-spacing:.09em;text-transform:uppercase;font-size:.67rem}.section-heading__label{color:var(--accent);margin-bottom:11px;display:block}.section-heading h2{font-family:var(--font-display), sans-serif;letter-spacing:-.045em;font-size:clamp(2.35rem,4.7vw,4rem);line-height:1}.experience-hint{color:var(--text-soft);font-family:var(--font-mono), monospace;letter-spacing:.04em;margin:-34px 0 24px;font-size:.65rem}.experience-list{border-top:1px solid var(--line)}.experience-item{border:0;border-bottom:1px solid var(--line);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;grid-template-columns:120px minmax(0,1fr) 220px 20px;align-items:center;gap:24px;padding:31px 18px 31px 0;transition:padding .25s,background .25s;display:grid}.experience-item:hover{background:var(--surface);padding-left:18px}.experience-item__period,.experience-item__company{font-family:var(--font-mono), monospace;font-size:.67rem}.experience-item__period{color:var(--text-soft)}.experience-item__main{display:block}.experience-item__main strong{font-family:var(--font-display), sans-serif;margin-bottom:5px;font-size:clamp(1.2rem,2.2vw,1.5rem);display:block}.experience-item__main>span{max-width:610px;color:var(--text-soft);font-size:.92rem;display:block}.experience-item__company{color:var(--accent);text-align:right}.experience-item>.arrow-icon{color:var(--text-soft);transition:transform .2s,color .2s}.experience-item:hover>.arrow-icon{color:var(--accent);transform:translate(3px,-3px)}.experience-modal{z-index:150;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#040911b8;place-items:center;padding:24px;animation:.2s both modal-fade;display:grid;position:fixed;inset:0}.experience-modal__panel{border:1px solid var(--line);background:var(--surface);border-radius:22px;width:min(100%,720px);max-height:min(780px,100svh - 48px);padding:clamp(30px,5vw,52px);animation:.3s cubic-bezier(.22,1,.36,1) both modal-rise;position:relative;overflow-y:auto;box-shadow:0 40px 100px -35px #000000a6}.experience-modal__close{border:1px solid var(--line);width:38px;height:38px;color:var(--text);cursor:pointer;background:0 0;border-radius:50%;place-items:center;font-size:1.4rem;line-height:1;transition:border-color .2s,background .2s,transform .2s;display:grid;position:absolute;top:20px;right:20px}.experience-modal__close:hover{border-color:var(--accent);background:var(--accent-soft);transform:rotate(6deg)}.experience-modal__meta{color:var(--accent);font-family:var(--font-mono), monospace;letter-spacing:.06em;text-transform:uppercase;flex-wrap:wrap;gap:10px 20px;padding-right:52px;font-size:.65rem;display:flex}.experience-modal h3{max-width:570px;font-family:var(--font-display), sans-serif;letter-spacing:-.045em;margin:18px 0 14px;font-size:clamp(2rem,5vw,3.4rem);line-height:1}.experience-modal__overview{max-width:620px;color:var(--text-soft);font-size:.98rem}.experience-modal__details{border-top:1px solid var(--line);margin-top:32px;padding-top:25px}.experience-modal__details>p{color:var(--text-soft);font-family:var(--font-mono), monospace;letter-spacing:.08em;text-transform:uppercase;margin-bottom:17px;font-size:.65rem}.experience-modal__details ul{gap:14px;list-style:none;display:grid}.experience-modal__details li{color:var(--text-soft);padding-left:22px;font-size:.93rem;position:relative}.experience-modal__details li:before{content:"";background:var(--accent);width:7px;height:7px;box-shadow:0 0 0 4px var(--accent-soft);border-radius:50%;position:absolute;top:.65em;left:0}@keyframes modal-fade{0%{opacity:0}}@keyframes modal-rise{0%{opacity:0;transform:translateY(18px)scale(.98)}}.project-grid{grid-template-columns:repeat(12,1fr);grid-auto-flow:dense;gap:18px;display:grid}.project-card{border:1px solid var(--line);background:var(--surface);border-radius:18px;flex-direction:column;grid-column:span 4;min-height:330px;padding:23px;transition:transform .3s,border-color .3s,box-shadow .3s;display:flex;position:relative;overflow:hidden}.project-card:hover{z-index:2;border-color:var(--accent);transform:translateY(-7px)}@supports (color:color-mix(in lab, red, red)){.project-card:hover{border-color:color-mix(in srgb, var(--accent) 45%, transparent)}}.project-card:hover{box-shadow:0 28px 60px -35px var(--shadow)}.project-card--featured{grid-area:span 2/span 7;min-height:680px}.project-card--tall{grid-column:span 5;min-height:410px}.project-card--standard{grid-column:span 5;min-height:252px}.project-card--wide{grid-column:span 12;grid-template-rows:auto 1fr;grid-template-columns:1fr 1.4fr;gap:20px;min-height:310px;display:grid}.project-card__top{z-index:2;color:var(--text-soft);font-family:var(--font-mono), monospace;justify-content:space-between;align-items:center;font-size:.65rem;display:flex;position:relative}.project-card__arrow{border:1px solid var(--line);border-radius:50%;place-items:center;width:35px;height:35px;transition:background .2s,color .2s;display:grid}.project-card:hover .project-card__arrow{color:#09111f;background:var(--accent)}.project-card__visual{background:linear-gradient(145deg, var(--card-color), var(--card-color));border-radius:12px;flex:1;place-items:center;min-height:110px;margin:25px 0;display:grid;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.project-card__visual{background:linear-gradient(145deg, var(--card-color), color-mix(in srgb, var(--card-color) 35%, var(--surface)))}}.project-card__visual:before,.project-card__visual:after{content:"";border:1px solid #ffffff47;border-radius:50%;position:absolute}.project-card__visual:before{width:210px;height:210px}.project-card__visual:after{width:130px;height:130px}.project-card__visual span{z-index:1;color:#ffffffbf;font-family:var(--font-display), sans-serif;letter-spacing:-.08em;font-size:clamp(2.8rem,6vw,5.5rem);font-weight:700;position:relative}.project-carousel{aspect-ratio:2;border:1px solid var(--line);background:#eef1f5;border-radius:12px;flex:none;width:100%;margin:25px 0;position:relative;overflow:hidden}.project-carousel__track{height:100%;transition:transform .48s cubic-bezier(.22,1,.36,1);display:flex}.project-carousel__slide{flex:0 0 100%;height:100%;position:relative}.project-carousel__slide img{object-fit:contain}.project-carousel__button{z-index:2;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#09111fb8;border:1px solid #ffffff73;border-radius:50%;place-items:center;width:34px;height:34px;transition:background .2s,transform .2s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.project-carousel__button:hover{background:var(--accent);color:#09111f;transform:translateY(-50%)scale(1.06)}.project-carousel__button--previous{left:12px}.project-carousel__button--next{right:12px}.project-carousel__dots{z-index:2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#09111fad;border-radius:999px;gap:6px;padding:6px 8px;display:flex;position:absolute;bottom:11px;left:50%;transform:translate(-50%)}.project-carousel__dots button{cursor:pointer;background:#ffffff73;border:0;border-radius:50%;width:6px;height:6px;padding:0;transition:width .2s,border-radius .2s,background .2s}.project-carousel__dots button.is-active{background:var(--accent);border-radius:999px;width:18px}.project-card--orange{--card-color:#df643c}.project-card--blue{--card-color:#286a85}.project-card--gold{--card-color:#a8813f}.project-card--purple{--card-color:#655494}.project-card__category{color:var(--accent);font-family:var(--font-mono), monospace;letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px;font-size:.63rem}.project-card h3{font-family:var(--font-display), sans-serif;letter-spacing:-.02em;font-size:clamp(1.35rem,2.5vw,1.85rem)}.project-card__description{max-width:480px;color:var(--text-soft);margin-top:8px;font-size:.88rem}.project-card--wide .project-card__top{grid-column:1/-1}.project-card--wide .project-card__visual{grid-area:2/1;min-height:205px;margin:0}.project-card--wide .project-card__content{align-self:end;padding:20px}.contact{padding-bottom:90px}.contact-card{border:1px solid var(--line);background:var(--surface);text-align:center;border-radius:24px;padding:clamp(65px,10vw,110px) 28px;position:relative;overflow:hidden}.contact-card__orb{background:var(--accent);filter:blur(80px);opacity:.2;border-radius:50%;width:480px;height:300px;position:absolute;top:-210px;left:50%;transform:translate(-50%)}.contact-card>:not(.contact-card__orb){z-index:1;position:relative}.contact-card h2{font-family:var(--font-display), sans-serif;letter-spacing:-.055em;margin:20px 0;font-size:clamp(2.7rem,6vw,5rem);line-height:.98}.contact-card h2 em{color:var(--accent);font-weight:500}.contact-card>p{max-width:470px;color:var(--text-soft);margin:0 auto 33px}.contact-card__email{border-bottom:1px solid var(--accent);color:var(--accent);font-family:var(--font-mono), monospace;align-items:center;gap:13px;padding-bottom:5px;font-size:clamp(.9rem,2vw,1.18rem);display:inline-flex}.socials{justify-content:center;gap:28px;margin-top:45px;display:flex}.socials a{color:var(--text-soft);font-family:var(--font-mono), monospace;text-transform:uppercase;font-size:.65rem}.socials a:hover,.socials span{color:var(--accent)}.footer{padding:0 0 38px}.footer__inner{border-top:1px solid var(--line);color:var(--text-soft);font-family:var(--font-mono), monospace;letter-spacing:.03em;justify-content:space-between;gap:20px;padding-top:30px;font-size:.61rem;display:flex}.footer a:hover{color:var(--accent)}.reveal{opacity:0;transition:opacity .65s,transform .65s;transform:translateY(18px)}.reveal.is-visible{opacity:1;transform:translateY(0)}@media (max-width:900px){.site-nav{border-bottom:1px solid var(--line);background:var(--bg);flex-direction:column;align-items:flex-start;gap:24px;padding:28px 24px;display:none;position:absolute;top:77px;left:0;right:0}.site-nav--open{display:flex}.menu-button{display:block}.header-contact{display:none}.hero{padding-top:125px}.hero__grid{grid-template-columns:1fr}.hero__copy{max-width:720px}.portrait-wrap{justify-self:start;width:320px;margin-left:10%}.portrait{height:380px}.scroll-cue{display:none}.experience-item{grid-template-columns:100px 1fr 170px}.experience-item>.arrow-icon{display:none}.project-card--featured{grid-column:span 7;min-height:580px}}@media (max-width:700px){.container,.site-header__inner{width:min(100% - 32px, var(--max-width))}.hero{min-height:auto;padding:125px 0 90px}.hero h1{font-size:clamp(3rem,14vw,4.8rem)}.portrait-wrap{justify-self:center;width:min(90%,310px);margin:20px auto 0}.portrait{height:350px}.portrait-note{display:none}.section{padding:88px 0}.section-heading{flex-direction:column;align-items:flex-start;gap:14px;margin-bottom:40px}.experience-hint{margin:-18px 0 22px}.experience-item{grid-template-columns:1fr;gap:8px;padding:25px 0}.experience-item:hover{padding-left:12px}.experience-item__company{text-align:left}.project-grid{grid-template-columns:1fr}.project-card,.project-card--featured,.project-card--tall,.project-card--standard,.project-card--wide{grid-column:1;min-height:430px;display:flex}.project-card--featured{min-height:520px}.project-carousel{aspect-ratio:16/9}.project-card--wide .project-card__visual{width:100%;min-height:160px;margin:25px 0}.project-card--wide .project-card__content{padding:0}.contact-card br{display:none}.socials{gap:17px}.footer__inner{text-align:center;flex-direction:column}.experience-modal{align-items:end;padding:12px}.experience-modal__panel{border-radius:20px 20px 14px 14px;max-height:calc(100svh - 24px);padding:34px 24px 30px}.experience-modal__close{top:15px;right:15px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.reveal{opacity:1;transform:none}}@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}
