/*! tailwindcss v4.1.6 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-outline-style:solid}}}@layer theme{:host,:root{--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;--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--font-weight-medium:500;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--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{*,::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: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,::-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{.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.static{position:static}.top-0{top:calc(var(--spacing)*0)}.top-\[1px\]{top:1px}.top-\[60\%\]{top:60%}.top-full{top:100%}.left-0{left:calc(var(--spacing)*0)}.isolate{isolation:isolate}.z-50{z-index:50}.z-\[1\]{z-index:1}.mt-1\.5{margin-top:calc(var(--spacing)*1.5)}.mr-2{margin-right:calc(var(--spacing)*2)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-2{margin-left:calc(var(--spacing)*2)}.contents{display:contents}.flex{display:flex}.hidden{display:none}.inline-flex{display:inline-flex}.size-3{width:calc(var(--spacing)*3);height:calc(var(--spacing)*3)}.size-6{width:calc(var(--spacing)*6);height:calc(var(--spacing)*6)}.h-1\.5{height:calc(var(--spacing)*1.5)}.h-2{height:calc(var(--spacing)*2)}.h-9{height:calc(var(--spacing)*9)}.h-\[var\(--radix-navigation-menu-viewport-height\)\]{height:var(--radix-navigation-menu-viewport-height)}.w-2{width:calc(var(--spacing)*2)}.w-full{width:100%}.w-max{width:max-content}.max-w-max{max-width:max-content}.flex-1{flex:1}.rotate-45{rotate:45deg}.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}.list-none{list-style-type:none}.flex-col{flex-direction:column}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing)*1)}.overflow-hidden{overflow:hidden}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-tl-sm{border-top-left-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.p-2{padding:calc(var(--spacing)*2)}.px-4{padding-inline:calc(var(--spacing)*4)}.py-2{padding-block:calc(var(--spacing)*2)}.pr-2\.5{padding-right:calc(var(--spacing)*2.5)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.shadow,.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)}.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,)}.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,visibility,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))}.transition-\[color\,box-shadow\]{transition-property:color,box-shadow;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))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.outline-none{--tw-outline-style:none;outline-style:none}.group-data-\[state\=open\]\:rotate-180:is(:where(.group)[data-state=open] *){rotate:180deg}.group-data-\[viewport\=false\]\/navigation-menu\:top-full:is(:where(.group\/navigation-menu)[data-viewport=false] *){top:100%}.group-data-\[viewport\=false\]\/navigation-menu\:mt-1\.5:is(:where(.group\/navigation-menu)[data-viewport=false] *){margin-top:calc(var(--spacing)*1.5)}.group-data-\[viewport\=false\]\/navigation-menu\:overflow-hidden:is(:where(.group\/navigation-menu)[data-viewport=false] *){overflow:hidden}.group-data-\[viewport\=false\]\/navigation-menu\:rounded-md:is(:where(.group\/navigation-menu)[data-viewport=false] *){border-radius:var(--radius-md)}.group-data-\[viewport\=false\]\/navigation-menu\:border:is(:where(.group\/navigation-menu)[data-viewport=false] *){border-style:var(--tw-border-style);border-width:1px}.group-data-\[viewport\=false\]\/navigation-menu\:shadow:is(:where(.group\/navigation-menu)[data-viewport=false] *){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.group-data-\[viewport\=false\]\/navigation-menu\:duration-200:is(:where(.group\/navigation-menu)[data-viewport=false] *){--tw-duration:.2s;transition-duration:.2s}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}:is(.\*\*\:data-\[slot\=navigation-menu-link\]\:focus\:ring-0 *)[data-slot=navigation-menu-link]:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}:is(.\*\*\:data-\[slot\=navigation-menu-link\]\:focus\:outline-none *)[data-slot=navigation-menu-link]:focus{--tw-outline-style:none;outline-style:none}@media (min-width:48rem){.md\:absolute{position:absolute}.md\:w-\[var\(--radix-navigation-menu-viewport-width\)\]{width:var(--radix-navigation-menu-viewport-width)}.md\:w-auto{width:auto}}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}}@font-face{font-family:Neue Montreal;src:url(/fonts/NeueMontreal-Regular.otf)format("opentype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Neue Montreal;src:url(/fonts/NeueMontreal-Medium.otf)format("opentype");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:Neue Montreal;src:url(/fonts/NeueMontreal-Bold.otf)format("opentype");font-style:normal;font-weight:700;font-display:swap}:root{--ink:#05020d;--surface:#0b0619;--surface-raised:#15102a;--paper:#eff5ff;--paper-muted:#b7c5dc;--line:#eff5ff24;--line-strong:#eff5ff52;--coral:#ff79ad;--coral-bright:#ffc3d9;--olive:#c7c681;--scene-ink:#02010a;--electric-blue:#5b7dff;--electric-blue-bright:#b7caff;--scene-blue:#5b7dff3d;--scene-line:#ff79ad4d;--scene-tint-top:#ff53bb2b;--scene-tint-base:#6f0d7926;--technical:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--display:"Neue Montreal",Arial,sans-serif;--body:"Neue Montreal",Arial,sans-serif;--radius-lg:1.5rem;--radius-md:.85rem;--page-width:1440px;--page-padding:clamp(1.25rem,3.2vw,3.5rem);--ease-out:cubic-bezier(.16,1,.3,1);--motion-intro:1.6s;--motion-reveal:1.05s}*{box-sizing:border-box}html{scroll-behavior:smooth}body,html{background:var(--ink)}body{min-width:320px;color:var(--paper);font-family:var(--body);margin:0;font-size:16px;font-weight:400;line-height:1.5;overflow-x:hidden}a,button{-webkit-tap-highlight-color:transparent}button{font:inherit}a,button{color:inherit}::selection{background:var(--coral);color:var(--ink)}:focus-visible{outline:2px solid var(--coral-bright);outline-offset:4px}.skip-link{z-index:100;background:var(--paper);color:var(--ink);padding:.7rem 1rem;font-size:.78rem;font-weight:700;text-decoration:none;position:fixed;top:1rem;left:1rem;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.page-shell{width:min(var(--page-width),100%);padding-inline:var(--page-padding);margin-inline:auto}.site-header{z-index:40;-webkit-backdrop-filter:blur();backdrop-filter:blur();background:linear-gradient(#05020de6,#05020d0a);border-bottom:1px solid #0000;width:100%;position:fixed;top:0}.site-header__inner{justify-content:space-between;align-items:center;gap:1.5rem;min-height:5.35rem;display:flex}.wordmark{z-index:2;letter-spacing:.13em;font-size:.76rem;font-weight:700;text-decoration:none;position:relative}.wordmark span{color:var(--coral)}.site-nav{letter-spacing:.05em;align-items:center;gap:clamp(1rem,2vw,2rem);font-size:.77rem;font-weight:500;display:flex}.site-nav>a{color:var(--paper-muted);text-decoration:none;transition:color .18s;position:relative}.site-nav>a.is-active,.site-nav>a:hover{color:var(--paper)}.site-nav>a:not(.nav-contact):after{background:var(--coral);content:"";transform-origin:100%;height:1px;transition:transform .25s var(--ease-out);position:absolute;bottom:-.45rem;left:0;right:0;transform:scaleX(0)}.site-nav>a.is-active:after,.site-nav>a:hover:after{transform-origin:0;transform:scaleX(1)}.nav-contact{border:1px solid var(--line-strong);border-radius:99px;padding:.56rem .9rem;color:var(--paper)!important;transition:border-color .18s,background .18s!important}.nav-contact:hover{border-color:var(--coral);background:var(--coral);color:var(--ink)!important}.menu-button{cursor:pointer;background:0 0;border:0;display:none}.hero{isolation:isolate;min-height:max(44rem,100svh);display:grid;position:relative;overflow:hidden}.hero__grid{z-index:-1;opacity:.52;background-image:linear-gradient(#f3ebdf12 1px,#0000 0),linear-gradient(90deg,#f3ebdf12 1px,#0000 0);background-size:clamp(3rem,7vw,6.5rem) clamp(3rem,7vw,6.5rem);position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 85%);mask-image:linear-gradient(#000,#0000 85%)}.flower-fallback,.flower-scene{z-index:-1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.flower-scene canvas{z-index:2;inset:0;width:100%!important;height:100%!important;position:absolute!important}.flower-scene>.flower-fallback{z-index:1}.flower-fallback{opacity:.4;filter:blur(.5px);place-items:center;display:grid}.flower-fallback i{transform-origin:20% 80%;background:linear-gradient(135deg,#f28d704d,#0000 62%);border:1px solid #f28d708f;border-radius:100% 0;width:clamp(7rem,20vw,16rem);height:clamp(13rem,30vw,23rem);position:absolute;box-shadow:inset 0 0 3.5rem #ffb19824}.flower-fallback i:first-of-type{transform:rotate(2deg)translateY(-8%)}.flower-fallback i:nth-of-type(2){transform:rotate(74deg)translateY(-8%)}.flower-fallback i:nth-of-type(3){transform:rotate(146deg)translateY(-8%)}.flower-fallback i:nth-of-type(4){transform:rotate(218deg)translateY(-8%)}.flower-fallback i:nth-of-type(5){transform:rotate(290deg)translateY(-8%)}.flower-fallback span{background:var(--coral);border-radius:50%;width:clamp(2.2rem,4vw,3.5rem);height:clamp(2.2rem,4vw,3.5rem);box-shadow:0 0 5rem #f28d70cc}.hero__content{z-index:2;grid-template-rows:1fr auto;padding-top:7.8rem;padding-bottom:clamp(2rem,6vw,4rem);display:grid}.eyebrow{color:var(--paper-muted);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:.7rem;font-weight:500;line-height:1.35}.eyebrow span{color:var(--coral);margin-right:.65rem}.hero__eyebrow{align-self:start}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-family:var(--display);letter-spacing:-.05em;font-weight:500}.hero h1{text-wrap:balance;align-self:center;max-width:12ch;margin:0;font-size:clamp(3.5rem,9vw,8.9rem);line-height:.86}.hero__bottom{justify-content:space-between;align-items:end;gap:2rem;display:flex}.hero__bottom>p{max-width:27rem;color:var(--paper-muted);margin:0;font-size:clamp(1rem,1.4vw,1.22rem);line-height:1.35}.hero__actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:1.4rem;display:flex}.button{letter-spacing:.04em;transition:transform .24s var(--ease-out),background .24s ease;border-radius:99px;align-items:center;gap:1rem;padding:.85rem 1.15rem;font-size:.77rem;font-weight:700;text-decoration:none;display:inline-flex}.button--primary{background:var(--coral);color:var(--ink)}.button--primary:hover{background:var(--coral-bright);transform:translateY(-3px)}.text-link{border-bottom:1px solid var(--line-strong);align-items:center;gap:.45rem;width:fit-content;padding-bottom:.3rem;font-size:.82rem;font-weight:500;text-decoration:none;transition:border-color .18s,color .18s;display:inline-flex}.text-link:hover{border-color:var(--coral);color:var(--coral-bright)}.hero__index{right:var(--page-padding);color:var(--paper-muted);letter-spacing:.14em;writing-mode:vertical-rl;margin:0;font-size:.6rem;position:absolute;bottom:1.65rem}.section{scroll-margin-top:6rem}.section--work{padding-top:clamp(7rem,16vw,14rem);padding-bottom:clamp(6rem,13vw,11rem)}.section-intro{grid-template-columns:minmax(7rem,.55fr) minmax(12rem,1.1fr) minmax(12rem,.7fr);align-items:start;gap:2rem;margin-bottom:clamp(3.5rem,7vw,6rem);display:grid}.about-card h2,.contact-section h2,.section-intro h2{text-wrap:balance;margin:0;font-size:clamp(2.6rem,5.5vw,5.5rem);line-height:.92}.section-intro>p:last-child{max-width:19rem;color:var(--paper-muted);margin:.3rem 0 0;font-size:.98rem}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,2vw,1.7rem);display:grid}.project-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);min-height:32rem;color:var(--paper);transition:border-color .24s ease,transform .32s var(--ease-out),background .24s ease;flex-direction:column;text-decoration:none;display:flex;position:relative;overflow:hidden}.project-card:hover{background:var(--surface-raised);border-color:#f28d70b3;transform:translateY(-.35rem)}.project-card__visual{border-bottom:1px solid var(--line);background:radial-gradient(circle at 65% 0,#66aaff75,#0000 25%),linear-gradient(135deg,#171240,#070317 75%);min-height:13.25rem;position:relative;overflow:hidden}.project-card__image{object-fit:cover;object-position:top center;opacity:.85;transition:transform .6s var(--ease-out),opacity .3s ease}.project-card__video{background:var(--surface);border:0;width:100%;height:100%;position:absolute;inset:0}.project-card:hover .project-card__image{opacity:1;transform:scale(1.045)}.project-card__research-mark{place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.project-card__research-mark span{color:var(--coral-bright);letter-spacing:.12em;font-size:.68rem;position:absolute;top:1rem;left:1.2rem}.project-card__research-mark i{border:1px solid #f3ebdf40;border-radius:50%;width:68%;height:68%;position:absolute}.project-card__research-mark i:first-of-type{transform:rotateX(66deg)rotate(12deg)}.project-card__research-mark i:nth-of-type(2){transform:rotateX(66deg)rotate(74deg)}.project-card__research-mark i:nth-of-type(3){transform:rotateX(66deg)rotate(138deg)}.project-card__content{flex-direction:column;flex:1;padding:clamp(1.3rem,2.5vw,2rem);display:flex}.project-card h3{max-width:10ch;margin:.85rem 0 1.15rem;font-size:clamp(1.7rem,2.5vw,2.5rem);line-height:.95}.project-card__description{max-width:31rem;margin-bottom:.85rem;font-size:.98rem;line-height:1.4}.project-card__impact{color:var(--paper-muted);margin-bottom:1.5rem;font-size:.83rem;line-height:1.45}.skill-group ul,.tag-list{flex-wrap:wrap;gap:.45rem;margin:auto 0 0;padding:0;list-style:none;display:flex}.tag-list li{border:1px solid var(--line);color:var(--paper-muted);border-radius:99px;padding:.3rem .58rem;font-size:.67rem;line-height:1}.project-card__arrow{border:1px solid var(--line-strong);width:2rem;height:2rem;transition:transform .26s var(--ease-out),background .2s ease;border-radius:50%;place-items:center;font-size:1rem;display:grid;position:absolute;top:1.15rem;right:1.15rem}.project-card:hover .project-card__arrow{background:var(--coral);color:var(--ink);transform:rotate(45deg)}.section-outro{justify-content:flex-end;margin-top:2rem;display:flex}.section--experience{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:0 0;scroll-margin-top:5rem}.split-section{grid-template-columns:.75fr 1.25fr;gap:clamp(3rem,9vw,10rem);padding-top:clamp(6rem,12vw,10rem);padding-bottom:clamp(6rem,12vw,10rem);display:grid}.split-section .section-intro{margin:0;display:block}.split-section .section-intro h2{margin-top:1rem}.timeline{border-top:1px solid var(--line-strong)}.timeline__item{border-bottom:1px solid var(--line);grid-template-columns:8.5rem minmax(0,1fr);gap:1.5rem;padding:1.45rem 0 1.6rem;display:grid}.timeline__item>p{color:var(--paper-muted);letter-spacing:.04em;margin:.2rem 0 0;font-size:.72rem}.timeline__item h3{margin:0;font-size:1.35rem;line-height:1}.timeline__item h4{color:var(--coral-bright);letter-spacing:-.01em;margin:.3rem 0 .8rem;font-size:.85rem;font-weight:400}.timeline__item div>p{max-width:37rem;color:var(--paper-muted);margin:0;font-size:.88rem;line-height:1.45}.skill-groups{grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:3.5rem;display:grid}.skill-group{border:1px solid var(--line);background:#050a1873;min-height:12rem;padding:1rem}.skill-group h2,.skill-group h3{color:var(--olive);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:500}.skill-group ul{gap:.5rem .8rem;margin-top:2.3rem}.skill-group li{color:var(--paper-muted);font-size:.76rem}.section--about{padding-top:clamp(6rem,12vw,10rem);padding-bottom:clamp(6rem,12vw,10rem);scroll-margin-top:5rem}.about-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:linear-gradient(120deg,#110b32,#05020e 72%);grid-template-columns:1.05fr .95fr;min-height:35rem;display:grid;overflow:hidden}.about-card__copy{flex-direction:column;align-items:start;padding:clamp(1.8rem,5vw,5rem);display:flex}.about-card h2{max-width:9ch;margin:2rem 0}.about-card__copy>p:not(.eyebrow):not(.about-card__location){max-width:34rem;color:var(--paper-muted);margin-bottom:1rem;font-size:1rem;line-height:1.48}.about-card__location{color:var(--coral-bright);margin:auto 0 0;font-size:.78rem}.about-card__image{min-height:22rem;position:relative;overflow:hidden}.about-card__image img{object-fit:cover;object-position:center;mix-blend-mode:screen;opacity:.72;filter:saturate(.65)contrast(1.05);transform:scale(1.22)}.contact-section{border-top:1px solid var(--line);background:var(--coral);color:var(--ink);scroll-margin-top:5rem}.contact-section__inner{padding-top:clamp(5.5rem,12vw,10rem);padding-bottom:clamp(5.5rem,12vw,10rem)}.contact-section .eyebrow,.contact-section .eyebrow span,.contact-section__inner>p:last-child{color:#040812b3}.contact-section h2{max-width:12ch;margin:1.3rem 0 2rem}.contact-email{letter-spacing:-.05em;border-bottom:2px solid #04081273;padding-bottom:.2rem;font-size:clamp(1.35rem,3vw,3.1rem);font-weight:500;text-decoration:none;transition:border-color .18s;display:inline-block}.contact-email:hover{border-color:var(--ink)}.contact-section__inner>p:last-child{margin:1.15rem 0 0;font-size:.9rem}.site-footer{background:var(--coral);color:#040812b8;border-top:1px solid #04081233}.site-footer__inner{letter-spacing:.03em;grid-template-columns:1fr 1fr auto;gap:1rem;padding-top:1.5rem;padding-bottom:1.6rem;font-size:.68rem;display:grid}.site-footer p{margin:0}.footer-links{flex-wrap:wrap;justify-content:flex-end;gap:1rem;display:flex}.footer-links a{text-decoration:none}.footer-links a:hover{color:var(--ink)}.about-page,.archive-page{min-height:100svh;padding-top:clamp(10rem,16vw,13rem);padding-bottom:clamp(6rem,12vw,10rem)}.about-page__intro,.archive-page__intro{max-width:57rem;margin-bottom:clamp(3.5rem,7vw,6rem)}.about-page h1,.archive-page h1{text-wrap:balance;max-width:12ch;margin:1.2rem 0 1.8rem;font-size:clamp(3.1rem,7.5vw,7rem);line-height:.89}.project-grid--archive{grid-template-columns:repeat(3,minmax(0,1fr))}.project-grid--archive .project-card{min-height:29rem}.about-page__intro>p:not(.eyebrow){max-width:43rem;color:var(--paper-muted);font-size:1.05rem}.about-page__intro .text-link{margin-top:.75rem}.about-page__skills{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.about-page__skills .skill-group{min-height:15rem}@media (max-width:960px){.section-intro{grid-template-columns:minmax(6rem,.45fr) 1fr}.section-intro>p:last-child{grid-column:2}.split-section{grid-template-columns:1fr}.project-grid--archive{grid-template-columns:repeat(2,minmax(0,1fr))}.about-card{grid-template-columns:1fr .8fr}}@media (max-width:720px){.site-header{-webkit-backdrop-filter:blur(1rem);backdrop-filter:blur(1rem);background:#05020deb}.site-header__inner{min-height:4.5rem}.menu-button{z-index:2;letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:.55rem;padding:.5rem 0;font-size:.72rem;font-weight:700;display:inline-flex;position:relative}.menu-button i,.menu-button i:after{content:"";background:currentColor;width:1.35rem;height:1px;transition:transform .18s;display:block}.menu-button i:after{transform:translateY(.3rem)}.site-nav{background:var(--surface);opacity:0;max-height:0;transition:max-height .3s var(--ease-out),opacity .18s ease;gap:0;display:grid;position:fixed;top:4.5rem;left:0;right:0;overflow:hidden}.site-nav[data-open=true]{opacity:1;max-height:30rem}.site-nav>a{border-top:1px solid var(--line);padding:1rem var(--page-padding);color:var(--paper);font-size:.95rem}.site-nav>a:not(.nav-contact):after{display:none}.nav-contact{border:0;border-top:1px solid var(--line);background:var(--coral);border-radius:0;color:var(--ink)!important}.hero{min-height:43rem}.hero__content{padding-top:6.7rem}.hero h1{font-size:clamp(3.55rem,17vw,5.8rem)}.hero__bottom{display:block}.hero__actions{justify-content:flex-start;margin-top:1.6rem}.hero__index{display:none}.flower-scene{opacity:.76;transform:translateY(4%)}.section-intro{display:block}.section-intro h2{margin:1rem 0 1.35rem}.about-page__skills,.project-grid,.project-grid--archive{grid-template-columns:1fr}.project-card{min-height:29rem}.timeline__item{grid-template-columns:1fr;gap:.7rem}.skill-groups{grid-template-columns:1fr;margin-top:2rem}.skill-group{min-height:0}.skill-group ul{margin-top:1.2rem}.about-card{grid-template-columns:1fr}.about-card__copy{min-height:27rem}.about-card__image{min-height:16rem}.about-card__image img{transform:scale(1.12)}.site-footer__inner{grid-template-columns:1fr}.footer-links{justify-content:flex-start}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}.portfolio-main{position:relative;isolation:isolate}.portfolio-main:before{z-index:2;background:radial-gradient(110% 64% at 50% -8%,var(--scene-tint-top),transparent 72%),linear-gradient(180deg,var(--scene-tint-base) 0,rgb(111 13 121/10%) 54%,var(--scene-tint-base) 100%);content:""}.portfolio-main:before,.portfolio-scene{position:fixed;inset:0;pointer-events:none}.portfolio-scene{z-index:1;width:100%;height:100svh;transform-origin:center center;will-change:opacity,transform}.portfolio-scene--handoff,.portfolio-scene--loading{z-index:39}.portfolio-scene--fallback{z-index:1}.portfolio-scene--fallback:before{position:absolute;z-index:0;inset:0;background:var(--scene-ink);content:""}.portfolio-scene__canvas{position:absolute;inset:0;width:100%;height:100%;opacity:0;transform:scale(.975);transition:opacity 1.8s var(--ease-out),transform 1.8s var(--ease-out)}.portfolio-scene__loader{position:absolute;z-index:3;inset:0;display:grid;place-content:center;gap:.8rem;background:var(--scene-ink);color:var(--paper-muted);font-family:var(--technical);font-size:.7rem;letter-spacing:.14em;text-align:center;text-transform:uppercase;transition:opacity .9s var(--ease-out),transform .9s var(--ease-out)}.portfolio-scene__loader--leaving{opacity:0;transform:translateY(-.7rem) scale(.98)}.portfolio-scene__loader i{width:1.9rem;height:1.9rem;justify-self:center;border:1px solid rgb(255 197 231/22%);border-top:1px solid var(--electric-blue-bright);border-radius:50%;animation:flower-loader-spin .9s linear infinite}@keyframes flower-loader-spin{to{transform:rotate(1turn)}}.portfolio-scene__canvas{z-index:2;pointer-events:none;transform-origin:center center;will-change:opacity,transform}.portfolio-scene--handoff .portfolio-scene__canvas,.portfolio-scene--ready .portfolio-scene__canvas{opacity:1;transform:scale(1)}.portfolio-scene--ready .portfolio-scene__canvas{transition:none}.portfolio-scene__canvas canvas{position:absolute!important;inset:0;width:100%!important;height:100%!important;background:transparent!important}.contact-section,.hero,.section{position:relative;z-index:2}.hero{z-index:3}.section--work{background:transparent}.contact-section,.section{z-index:4}.section--work--orbit{min-height:650svh;padding:0;overflow:clip;background:transparent}@media (min-width:768px){.hero{min-height:max(48rem,112svh)}}.work-orbit__stage{position:sticky;top:0;height:100svh;overflow:clip;isolation:isolate;opacity:1;will-change:opacity,transform}.work-orbit__intro{position:absolute;z-index:12;bottom:clamp(2.25rem,5.5vh,4rem);left:0;width:min(34rem,46vw);pointer-events:none}.work-orbit__intro h2{max-width:8ch;margin:.8rem 0 1rem;font-size:clamp(2.8rem,5vw,5.8rem);line-height:.88}.work-orbit__intro>p:last-child{max-width:20rem;margin:0;color:var(--paper-muted)}.project-grid--orbit{position:absolute;z-index:10;inset:0;display:block;perspective:1200px;transform-style:preserve-3d}.project-grid--orbit .project-card{position:absolute;top:50%;left:50%;width:clamp(26rem,58vw,65rem);min-height:0;height:min(56svh,38rem);overflow:hidden;border-color:rgb(230 238 255/42%);border-radius:.45rem;background:rgb(7 4 22/60%);box-shadow:0 2rem 6rem rgb(0 0 0/55%);backdrop-filter:blur(8px) saturate(1.15);transform-style:preserve-3d;will-change:opacity,transform}.project-grid--orbit .project-card__visual{min-height:100%;border:0;background:radial-gradient(circle at 60% 30%,rgb(91 168 255/24%),transparent 40%),rgb(10 12 20/18%)}.project-grid--orbit .project-card__image{opacity:.64}.project-grid--orbit .project-card:hover .project-card__image{opacity:.82}.project-grid--orbit .project-card__content{position:absolute;right:0;bottom:0;left:0;padding:5rem clamp(1.25rem,2.5vw,2.25rem) clamp(1.25rem,2.5vw,2.25rem);background:linear-gradient(transparent,rgb(4 4 8/52%))}.project-grid--orbit .project-card h3{max-width:16ch;margin:.55rem 0 0;font-size:clamp(2rem,4vw,4.8rem);line-height:.9}.project-grid--orbit .project-card__description{display:block;max-width:42rem;margin:.85rem 0 0;color:rgb(243 235 223/82%);font-size:clamp(.85rem,1.2vw,1rem)}.project-grid--orbit .project-card__impact,.project-grid--orbit .tag-list{display:none}.project-grid--orbit .project-card__arrow{top:1rem;right:1rem;width:2.2rem;height:2.2rem;background:rgb(4 4 6/30%)}.work-orbit__archive{position:absolute;z-index:12;right:var(--page-padding);bottom:1.8rem}.work-orbit__archive .text-link{color:var(--paper)}.project-card{background:rgb(25 22 19/92%);transform-style:preserve-3d;will-change:opacity,transform}@media (max-width:767px){.section--work--orbit{min-height:0;padding:clamp(7rem,16vw,14rem) var(--page-padding) clamp(6rem,13vw,11rem)}.work-orbit__stage{position:static;height:auto;overflow:visible}.work-orbit__intro{position:static;width:auto;padding:0;pointer-events:auto}.project-grid--orbit{position:static;display:grid;grid-template-columns:1fr;gap:1rem;margin-top:3rem}.project-grid--orbit .project-card{position:relative;top:auto;left:auto;width:auto;height:auto;min-height:29rem;background:var(--surface);backdrop-filter:none;transform:none!important}.project-grid--orbit .project-card__visual{min-height:13.25rem;background:radial-gradient(circle at 65% 0,rgb(102 170 255/46%),transparent 25%),linear-gradient(135deg,#171240,#070317 75%)}.project-grid--orbit .project-card__image{opacity:.85}.project-grid--orbit .project-card__content{position:relative;inset:auto;padding:clamp(1.3rem,2.5vw,2rem);background:transparent}.project-grid--orbit .project-card h3{margin:.85rem 0 1.15rem;font-size:clamp(1.7rem,2.5vw,2.5rem)}.project-grid--orbit .project-card__description,.project-grid--orbit .project-card__impact{display:block}.project-grid--orbit .tag-list{display:flex}.project-grid--orbit .project-card__arrow{top:1.15rem;right:1.15rem;width:2rem;height:2rem}.work-orbit__archive{position:static;display:inline-flex;margin-top:2rem}}