@import "https://fonts.googleapis.com/css2?family=Instrument+Serif:ital,wght@0,400;1,400&family=Manrope:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap";*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media (width>=640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (width>=768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (width>=1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (width>=1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (width>=1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.\!visible{visibility:visible!important}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.isolate{isolation:isolate}.block{display:block}.inline{display:inline}.table{display:table}.grid{display:grid}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.border{border-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,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{color:#fff;font-synthesis:none;text-rendering:optimizelegibility;background:#000;font-family:Space Grotesk,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}html{scrollbar-color:#1f2937 #000;scrollbar-width:thin;background:#000}body{background:#000;min-width:320px;min-height:100vh;margin:0;overflow-x:hidden}button,input,a{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:4px;outline:2px solid #cb8dff}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#000}::-webkit-scrollbar-thumb{background:#1f2937}::-webkit-scrollbar-thumb:hover{background:#374151}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.scroll-page{background:#000;height:600vh;position:relative}.fixed-stage,.video-canvas-shell,.mobile-menu{height:100vh}.portfolio-main{outline:none;min-height:100%}.fixed-stage{--layout-inline-gutter:clamp(24px, 3vw, 48px);--layout-hero-bottom:clamp(24px, 3vw, 48px);--layout-hero-width:clamp(380px, 30vw, 540px);--layout-project-card-width:280px;--layout-project-card-height:440px;--layout-project-gap:16px;--layout-project-grid-width:872px;--layout-project-center-x:50%;--layout-project-center-y:50%;--layout-statement-center-x:50%;--layout-statement-center-y:50%;--layout-contact-center-x:50%;--layout-contact-center-y:50%;isolation:isolate;background:#000;position:fixed;inset:0;overflow:hidden}.content-layers{grid-template-columns:var(--layout-inline-gutter) var(--layout-hero-width) minmax(0, 1fr);grid-template-rows:minmax(0, 1fr) max-content var(--layout-hero-bottom);grid-template-areas:". . ."".hero."". . .";display:grid;position:absolute;inset:0}.layout-anchor{visibility:hidden;opacity:0;pointer-events:none;color:#0000;box-shadow:none;-webkit-backdrop-filter:none;background:0 0;border:0;position:absolute}.layout-anchor--hero{grid-area:hero;place-self:stretch stretch;position:relative}.layout-anchor--project{top:calc(var(--layout-project-center-y) - var(--layout-project-card-height) / 2);width:var(--layout-project-card-width);height:var(--layout-project-card-height)}.layout-anchor--project-0{left:calc(var(--layout-project-center-x) - var(--layout-project-grid-width) / 2)}.layout-anchor--project-1{left:calc(var(--layout-project-center-x) - var(--layout-project-grid-width) / 2 + var(--layout-project-card-width) + var(--layout-project-gap))}.layout-anchor--project-2{left:calc(var(--layout-project-center-x) - var(--layout-project-grid-width) / 2 + var(--layout-project-card-width) + var(--layout-project-gap) + var(--layout-project-card-width) + var(--layout-project-gap))}.layout-anchor--point{width:1px;height:1px}.layout-anchor--project-center{left:calc(var(--layout-project-center-x) - .5px);top:calc(var(--layout-project-center-y) - .5px)}.layout-anchor--statement-center{left:calc(var(--layout-statement-center-x) - .5px);top:calc(var(--layout-statement-center-y) - .5px)}.layout-anchor--contact-center{left:calc(var(--layout-contact-center-x) - .5px);top:calc(var(--layout-contact-center-y) - .5px)}.video-canvas-shell{z-index:0;pointer-events:none;width:100%;position:absolute;inset:0;overflow:hidden}.video-canvas{transform-origin:50%;width:100%;height:100%;transform:translate3d(var(--video-parallax-x,0px), var(--video-parallax-y,0px), 0) scale(var(--video-overscan,1.16));will-change:transform;display:block}.scrub-videos{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.contact-petals{z-index:0;pointer-events:none;opacity:0;transition:opacity .5s;position:absolute;inset:0;overflow:hidden}.contact-petals[data-visible=true]{opacity:1}.contact-petals video{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;transform:translate3d(var(--ending-parallax-x,0px), var(--ending-parallax-y,0px), 0) scale(var(--video-overscan,1.16));display:block}.brand-header{z-index:45;will-change:opacity, transform, filter;align-items:center;gap:clamp(8px,.8vw,14px);font-family:Manrope,sans-serif;display:flex;position:absolute;top:clamp(24px,3vw,48px);left:clamp(24px,3vw,48px)}.brand-mark{aspect-ratio:1;color:#fff;letter-spacing:.08em;border:1px solid #ffffffb8;place-items:center;width:clamp(28px,2.6vw,44px);font-size:clamp(9px,.8vw,12px);font-weight:700;display:inline-grid}.brand-name{letter-spacing:-.03em;font-family:Instrument Serif,Georgia,serif;font-size:clamp(22px,2.2vw,32px);font-weight:500}.portfolio-nav-layer{z-index:50;pointer-events:none;position:absolute;inset:0}.desktop-nav{pointer-events:auto;gap:8px;font-family:Manrope,sans-serif;display:flex;position:absolute;top:clamp(24px,3vw,48px);right:clamp(24px,3vw,48px)}.desktop-nav button,.desktop-nav a{color:#111;cursor:pointer;text-align:center;background:#fff;border:0;border-radius:8px;padding:clamp(8px,.7vw,12px) clamp(16px,1.3vw,24px);font-size:clamp(12px,.9vw,15px);font-weight:500;text-decoration:none;transition:opacity .18s,transform .18s}.desktop-nav button:hover,.desktop-nav a:hover{opacity:.9;transform:scale(1.03)}.desktop-nav button:active,.desktop-nav a:active{transform:scale(.97)}.menu-toggle,.mobile-menu{display:none}.hero-intrinsic-sizer{visibility:hidden;pointer-events:none;color:#0000;width:100%;box-shadow:none;-webkit-backdrop-filter:none;background:0 0;border:0;grid-area:hero;place-self:stretch stretch;position:relative}.relay-positioner{pointer-events:none;position:absolute}.relay-group-frame,.relay-card-frame{will-change:transform, filter;position:absolute;inset:0}.hero-project-relay-surface{isolation:isolate;position:absolute;inset:0;overflow:visible}.hero-project-relay-surface:before{content:"";z-index:0;pointer-events:none;opacity:var(--relay-material-opacity);-webkit-backdrop-filter:blur(80px);background:#ffffff29;border:1px solid #ffffff26;position:absolute;inset:0;box-shadow:0 30px 60px #0000004d}.relay-pane{will-change:opacity;position:absolute}.relay-pane--hero{width:var(--layout-hero-width);height:auto;top:0;left:0}.hero-content{width:100%;padding:clamp(32px,3.2vw,56px);position:relative}.relay-pane--project{background:#120f18b8;padding:24px;inset:0;overflow:hidden}.hero-title{letter-spacing:-.01em;max-width:324px;margin:0;font-family:Instrument Serif,Georgia,serif;font-size:72px;font-weight:400;line-height:1.05}.hero-title em{font-weight:400}.hero-description{color:#ffffffa3;width:clamp(260px,22vw,380px);max-width:100%;margin:24px 0 0;font-family:Manrope,sans-serif;font-size:clamp(12px,1vw,15px);line-height:1.6}.hero-cta{z-index:55;aspect-ratio:1;color:#fff;cursor:pointer;background:#cb8dff;border:0;border-radius:50%;place-items:center;width:clamp(80px,7vw,112px);padding:0;transition:background .25s,transform .25s cubic-bezier(.16,1,.3,1);display:grid;position:absolute;bottom:clamp(20px,2.5vw,40px);right:calc(clamp(80px,7vw,112px)/-2)}.hero-cta:hover{background:#d9a8ff;transform:scale(1.08)}.hero-cta:active{transform:scale(.94)}.hero-cta svg{width:clamp(30px,2.8vw,44px);height:clamp(18px,1.8vw,28px);transition:transform .25s cubic-bezier(.16,1,.3,1)}.hero-cta:hover svg{transform:translate(4px)}.project-stage{z-index:46;left:var(--layout-project-center-x);top:var(--layout-project-center-y);pointer-events:none;place-items:center;width:100%;height:100%;display:grid;position:absolute;translate:-50% -50%}.project-grid{grid-template-columns:repeat(3, var(--layout-project-card-width));gap:var(--layout-project-gap);width:var(--layout-project-grid-width);max-width:95vw;display:grid}.project-card-slot,.project-card-motion{width:var(--layout-project-card-width);height:var(--layout-project-card-height)}.project-card-slot{visibility:hidden;pointer-events:none;box-shadow:none;-webkit-backdrop-filter:none;background:0 0;border:0}.project-card-motion{will-change:opacity, transform, filter}.project-card{pointer-events:none;-webkit-backdrop-filter:blur(24px);background:#120f18b8;border:1px solid #ffffff38;width:100%;height:100%;padding:24px;transition:border-color .18s;overflow:hidden;box-shadow:0 30px 60px #0000004d}.project-card:hover{border-color:#ffffff73}.project-icon{color:#cb8dff;width:clamp(36px,3.5vw,48px);height:clamp(36px,3.5vw,48px);margin-bottom:32px}.project-title{color:#fff;text-wrap:balance;margin:0;font-family:Instrument Serif,Georgia,serif;font-size:24px;font-weight:500;line-height:1.3}.project-meta{color:#fffc;margin:18px 0 0;font:500 13px/1.6 Manrope,sans-serif}.project-description{color:#fffffff0;margin:16px 0 0;font:400 14px/1.65 Manrope,sans-serif}.statement-stage{z-index:40;left:var(--layout-statement-center-x);top:var(--layout-statement-center-y);pointer-events:none;place-items:center;width:100%;height:100%;display:grid;position:absolute;translate:-50% -50%}.statement{text-align:center;will-change:opacity, transform, filter;width:min(64rem,100vw - 48px);position:absolute}.statement p{letter-spacing:-.025em;margin:0;font-family:Instrument Serif,Georgia,serif;font-size:1.875rem;line-height:1.375}.statement-pill{color:#fff;background:#cb8dff;border-radius:999px;margin-inline:6px;padding:2px 16px;display:inline-block}.contact-stage{z-index:50;left:var(--layout-contact-center-x);top:var(--layout-contact-center-y);will-change:opacity, transform, filter;place-items:center;width:100%;height:100%;padding:24px;display:grid;position:absolute;translate:-50% -50%}.contact-card{-webkit-backdrop-filter:blur(48px);background:#00000073;border:1px solid #ffffff1a;width:min(28rem,100%);padding:48px;box-shadow:0 30px 60px #0000004d}.contact-card h2{margin:0;font-size:1.875rem;font-weight:500}.contact-card>p{color:#ffffff80;margin:16px 0 28px;font-size:12px;line-height:1.7}.contact-card label{letter-spacing:.08em;margin-bottom:8px;font:500 11px/1.4 Manrope,sans-serif;display:block}.contact-card input{color:#fff;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:0;width:100%;padding:14px 16px}.contact-card input:focus{border-color:#cb8dff}.contact-action{text-align:center;color:#fff;letter-spacing:.1em;background:#cb8dff;width:100%;margin-top:12px;padding:15px 16px;font-weight:600;text-decoration:none;transition:background .18s;display:block}.contact-action:hover{background:#d9a8ff}.loading-state{z-index:60;pointer-events:none;text-align:center;color:#6b7280;background:#000;flex-direction:column;justify-content:center;align-items:center;padding:24px;font-family:JetBrains Mono,monospace;transition:opacity 1s,visibility linear;display:flex;position:fixed;inset:0}.loading-state--hidden{visibility:hidden;opacity:0;transition:opacity 1s,visibility 0s linear 1s}.loading-spinner{width:64px;height:64px;margin-bottom:16px;animation:2s linear infinite loading-spin}.loading-state p{letter-spacing:.1em;margin:0;font-size:14px;animation:2s ease-in-out infinite loading-pulse}@keyframes loading-spin{to{transform:rotate(360deg)}}@keyframes loading-pulse{0%,to{opacity:1}50%{opacity:.5}}.media-error-state{z-index:55;pointer-events:none;color:#fff;background:#00000073;border:1px solid #ffffff1f;gap:4px;max-width:300px;padding:14px 16px;font:400 11px/1.5 JetBrains Mono,monospace;display:grid;position:fixed;bottom:24px;right:24px}.media-error-state strong{font-weight:500}.media-error-state span{color:#fff9}@media (width>=769px){.statement p{font-size:3rem}.statement-pill{margin-inline:10px;padding:4px 24px}}@media (width>=1024px){.statement p{font-size:3.75rem}}@media (width>=769px){.project-grid{grid-template-columns:repeat(3, var(--layout-project-card-width))}}@media (width>=769px) and (width<=919px){.fixed-stage{--layout-project-grid-width:min(95vw, 872px);--layout-project-card-width:calc((var(--layout-project-grid-width) - 2 * var(--layout-project-gap)) / 3)}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.project-card{width:100%}}@media (width<=768px){.fixed-stage{--layout-inline-gutter:24px;--layout-hero-bottom:32px;--layout-hero-width:calc(100vw - 48px);--layout-project-card-width:calc(100vw - 48px);--layout-project-card-height:min(58vh, 440px);--layout-project-gap:0px;--layout-project-grid-width:var(--layout-project-card-width)}.scroll-page{height:720vh}.layout-anchor--project-0,.layout-anchor--project-1,.layout-anchor--project-2{left:calc(var(--layout-project-center-x) - var(--layout-project-card-width) / 2)}.brand-header{top:24px;left:24px}.desktop-nav{display:none}.portfolio-nav-layer{z-index:auto}.menu-toggle{z-index:60;pointer-events:auto;color:#111;background:#fff;border:0;border-radius:8px;place-content:center;gap:5px;width:44px;height:44px;padding:0;display:grid;position:fixed;top:24px;right:24px}.menu-toggle span{background:currentColor;width:20px;height:1.5px;transition:transform .3s,opacity .3s;display:block}.menu-toggle--open span:first-child{transform:translateY(6.5px)rotate(45deg)}.menu-toggle--open span:nth-child(2){opacity:0}.menu-toggle--open span:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}.mobile-menu{z-index:70;pointer-events:none;visibility:hidden;opacity:0;-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px);background:#000000e0;place-items:center;transition:opacity .3s,visibility .3s;display:grid;position:fixed;inset:0}.mobile-menu--active,.mobile-menu--covering{visibility:visible;opacity:1;pointer-events:auto}.mobile-menu nav{gap:12px;width:min(280px,100vw - 48px);display:grid}.mobile-menu button,.mobile-menu a{color:#111;text-align:center;background:#fff;border:0;border-radius:8px;padding:14px 20px;font:500 16px/1.2 Manrope,sans-serif;text-decoration:none}.mobile-menu-control{z-index:1;position:fixed;top:24px;right:24px}.hero-content{padding:32px 24px}.hero-title{max-width:260px;font-size:38px}.hero-cta{width:64px;bottom:-32px;right:-16px}.hero-cta svg{width:38px;height:22px}.project-stage{overflow-y:visible}.project-grid{width:var(--layout-project-grid-width);grid-template-columns:1fr;gap:0;max-width:none;margin:0}.project-card-slot,.project-card-motion{grid-area:1/1}.relay-pane--project,.project-card{padding:18px 20px}.project-card{pointer-events:none;width:100%;height:100%;min-height:0}.project-icon{width:32px;height:32px;margin-bottom:18px}.project-title{font-size:22px}.project-meta{margin:12px 0 0}.project-description{margin:10px 0 0;font-size:14px;line-height:1.6}.media-error-state{background:#000000b8;max-width:none;padding:10px 12px;inset:76px 24px auto}.contact-card{padding:32px}.contact-card h2{font-size:1.5rem}.contact-card>p{font-size:10px}}@supports (height:100dvh){.fixed-stage,.video-canvas-shell,.mobile-menu{height:100dvh}@media (width<=768px){.fixed-stage{--layout-project-card-height:min(58dvh, 440px)}}}@supports (height:100svh){@media (width<=768px){.scroll-page{height:720svh}}}@media (hover:hover) and (pointer:fine){.video-canvas,.contact-petals video{transition:transform .4s cubic-bezier(.15,.85,.35,1)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-property:none!important;transition-duration:.01ms!important;animation-duration:.01ms!important}.video-canvas{transform:translate3d(0px, 0px, 0) scale(var(--video-overscan,1.16))!important}}
