@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;1,100;1,200;1,300;1,400;1,500;1,600;1,700&family=Science+Gothic:wdth,wght@62.5,100..900&family=Share+Tech+Mono&display=swap";@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-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0;--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-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}}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.z-10{z-index:10}.mx-auto{margin-inline:auto}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.size-\[var\(--icon-size\)\]{width:var(--icon-size);height:var(--icon-size)}.size-full{width:100%;height:100%}.min-h-\[200px\]{min-height:200px}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.transform-gpu{transform:translateZ(0)var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-orbit{animation:orbit calc(var(--duration)*1s)linear infinite}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.overflow-hidden{overflow:hidden}.rounded-2xl{border-radius:calc(var(--radius) + 8px)}.rounded-full{border-radius:3.40282e38px}.border{border-style:var(--tw-border-style);border-width:1px}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.stroke-1{stroke-width:1px}.text-center{text-align:center}.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,ease);transition-duration:var(--tw-duration,0s)}.will-change-\[transform\,filter\,opacity\]{will-change:transform,filter,opacity}.\[animation-direction\:reverse\]{animation-direction:reverse}.paused{animation-play-state:paused}:root{--radius:.625rem;--background:oklch(100% 0 0);--foreground:oklch(14.1% .005 285.823);--card:oklch(100% 0 0);--card-foreground:oklch(14.1% .005 285.823);--popover:oklch(100% 0 0);--popover-foreground:oklch(14.1% .005 285.823);--primary:oklch(21% .006 285.885);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(96.7% .001 286.375);--secondary-foreground:oklch(21% .006 285.885);--muted:oklch(96.7% .001 286.375);--muted-foreground:oklch(55.2% .016 285.938);--accent:oklch(96.7% .001 286.375);--accent-foreground:oklch(21% .006 285.885);--destructive:oklch(57.7% .245 27.325);--border:oklch(92% .004 286.32);--input:oklch(92% .004 286.32);--ring:oklch(70.5% .015 286.067);--chart-1:oklch(64.6% .222 41.116);--chart-2:oklch(60% .118 184.704);--chart-3:oklch(39.8% .07 227.392);--chart-4:oklch(82.8% .189 84.429);--chart-5:oklch(76.9% .188 70.08);--sidebar:oklch(98.5% 0 0);--sidebar-foreground:oklch(14.1% .005 285.823);--sidebar-primary:oklch(21% .006 285.885);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(96.7% .001 286.375);--sidebar-accent-foreground:oklch(21% .006 285.885);--sidebar-border:oklch(92% .004 286.32);--sidebar-ring:oklch(70.5% .015 286.067)}.dark{--background:oklch(14.1% .005 285.823);--foreground:oklch(98.5% 0 0);--card:oklch(21% .006 285.885);--card-foreground:oklch(98.5% 0 0);--popover:oklch(21% .006 285.885);--popover-foreground:oklch(98.5% 0 0);--primary:oklch(92% .004 286.32);--primary-foreground:oklch(21% .006 285.885);--secondary:oklch(27.4% .006 286.033);--secondary-foreground:oklch(98.5% 0 0);--muted:oklch(27.4% .006 286.033);--muted-foreground:oklch(70.5% .015 286.067);--accent:oklch(27.4% .006 286.033);--accent-foreground:oklch(98.5% 0 0);--destructive:oklch(70.4% .191 22.216);--border:oklch(100% 0 0/.1);--input:oklch(100% 0 0/.15);--ring:oklch(55.2% .016 285.938);--chart-1:oklch(48.8% .243 264.376);--chart-2:oklch(69.6% .17 162.48);--chart-3:oklch(76.9% .188 70.08);--chart-4:oklch(62.7% .265 303.9);--chart-5:oklch(64.5% .246 16.439);--sidebar:oklch(21% .006 285.885);--sidebar-foreground:oklch(98.5% 0 0);--sidebar-primary:oklch(48.8% .243 264.376);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(27.4% .006 286.033);--sidebar-accent-foreground:oklch(98.5% 0 0);--sidebar-border:oklch(100% 0 0/.1);--sidebar-ring:oklch(55.2% .016 285.938)}@layer base{*{border-color:var(--border);outline-color:color-mix(in oklab,var(--ring)50%,transparent)}body{background-color:var(--background);color:var(--foreground)}}@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-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}@keyframes orbit{0%{transform:rotate(calc(var(--angle)*1deg))translateY(calc(var(--radius)*1px))rotate(calc(var(--angle)*-1deg))}to{transform:rotate(calc(var(--angle)*1deg + 360deg))translateY(calc(var(--radius)*1px))rotate(calc((var(--angle)*-1deg) - 360deg))}}.modal-overlay{position:fixed;inset:0;z-index:500;background:#0000;transition:background .45s ease;cursor:pointer}.modal-overlay--visible{background:#000000b8}.modal-window{position:fixed;left:50%;top:50%;background:#242424;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 40px 100px #000000b3;cursor:default}.modal-window--animated{transition:transform .52s cubic-bezier(.4,0,.2,1),border-radius .52s cubic-bezier(.4,0,.2,1)}.modal-card-face{position:absolute;inset:0;z-index:3;opacity:1;transition:opacity .28s ease;pointer-events:none}.modal-card-face--hidden{opacity:0;transition:opacity .28s ease .38s}.modal-card-face-img{width:100%;height:100%;object-fit:cover;object-position:center center;display:block}.modal-close-btn{position:absolute;top:16px;right:16px;z-index:10;width:38px;height:38px;border-radius:50%;border:none;background:#00000073;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#ffffffd9;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .22s ease,background .2s ease,transform .2s ease}.modal-close-btn--visible{opacity:1;transition:opacity .22s ease .5s,background .2s ease,transform .2s ease}.modal-close-btn:hover{background:#000000b3;color:#fff;transform:scale(1.1)}.modal-close-btn svg{width:15px;height:15px;pointer-events:none;flex-shrink:0}.modal-scroll-area{flex:1;overflow:hidden;min-height:0;opacity:0;transition:opacity .3s ease;z-index:1}.modal-scroll-area--visible{opacity:1;transition:opacity .3s ease .42s}.modal-banner{position:relative;height:300px;overflow:hidden;flex-shrink:0}.modal-banner-img{width:100%;height:100%;object-fit:cover;object-position:center 50%;display:block}.modal-banner-gradient{position:absolute;inset:0;background:linear-gradient(to bottom,#24242400 0% 30%,#24242499 65%,#242424);pointer-events:none}.modal-banner-title{position:absolute;bottom:28px;left:36px;right:68px;font-family:Tiempos,serif;font-size:clamp(1.4rem,2.8vw,2.2rem);font-weight:500;color:#fff;letter-spacing:.5px;line-height:1.2;text-shadow:0 2px 20px rgba(0,0,0,.55);margin:0}.modal-article{padding:36px 36px 72px;color:#ffffffbf;font-family:Tiempos-regular,serif;font-size:1rem;line-height:1.85;min-height:200px}.modal-article-empty{color:#fff3;font-style:italic;font-size:.88rem}.modal-article h1,.modal-article h2,.modal-article h3,.modal-article h4{font-family:Tiempos,serif;font-weight:500;color:#ffffffeb;margin:2rem 0 .6rem;line-height:1.25;letter-spacing:.3px}.modal-article h1{font-size:1.6rem}.modal-article h2{font-size:1.3rem}.modal-article h3{font-size:1.1rem}.modal-article p{margin:0 0 1.1rem}.modal-article ul,.modal-article ol{margin:0 0 1.1rem 1.4rem}.modal-article li{margin-bottom:.35rem}.modal-article strong{color:#ffffffe6;font-weight:600}.modal-article em{color:#ffffffa6}.modal-article code{font-family:Share Tech Mono,monospace;font-size:.82rem;background:#ffffff12;border-radius:4px;padding:2px 6px;color:#10b7ffe6}.modal-article pre{background:#00000059;border-radius:8px;padding:16px 20px;overflow-x:auto;margin:0 0 1.2rem}.modal-article pre code{background:none;padding:0;font-size:.82rem;color:#ffffffbf}.modal-article img{width:100%;border-radius:10px;margin:1rem 0;object-fit:cover;display:block}.modal-article hr{border:none;border-top:1px solid rgba(255,255,255,.08);margin:2rem 0}.modal-article a{color:#10b7ffd9;text-decoration:underline;text-underline-offset:3px}.modal-article a:hover{color:#10b7ff}@media(max-width:640px){.modal-scroll-area{overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.modal-banner{height:200px}.modal-banner-title{font-size:1.1rem;bottom:18px;left:20px;right:52px}.modal-article{padding:24px 20px 60px;font-size:.92rem}.modal-close-btn{top:12px;right:12px}}@font-face{font-family:Tiempos;src:url(/fonts/tiempos.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Tiempos-regular;src:url(/fonts/tiempos-regular.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Tiempos-italic;src:url(/fonts/tiempos-italic.otf) format("opentype");font-weight:400;font-style:italic;font-display:swap}.creative-container{align-items:center;width:100%;display:flex;flex-direction:column;justify-content:center;padding:100px 0}.title{font-size:48px;font-family:Tiempos}.creative-grid{display:grid;grid-template-columns:repeat(2,1fr);flex-wrap:wrap;gap:16px;width:calc(90vw - 16px);margin-top:40px}.creative-card{position:relative;border-radius:16px;overflow:hidden;flex:1 1 50%;cursor:pointer;transform-style:preserve-3d;box-shadow:0 10px 30px #0003;transition:z-index 0s .3s,opacity .2s ease;aspect-ratio:1}.creative-card-image{width:100%;height:100%;object-fit:cover;display:block}.creative-card-caption{position:absolute;bottom:0;left:0;right:0;padding:20px;background:#0006;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transform:translateY(100%);transition:transform .4s cubic-bezier(.25,.46,.45,.94)}.creative-card:hover .creative-card-caption{transform:translateY(0)}.creative-card:hover{z-index:100}.creative-card--hidden{opacity:0;pointer-events:none}.creative-card-content{flex:1}.creative-card-title{font-family:Tiempos-regular,sans-serif;font-size:20px;color:#fff;margin:0 0 8px}.creative-card-description{font-family:IBM Plex Mono,monospace;font-size:12px;color:#fffc;margin:0 0 12px;line-height:1.4}.creative-card-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.creative-tag{font-family:IBM Plex Mono,monospace;font-size:10px;color:#000000e6;background:#ff8c10;padding:4px 8px;border-radius:4px}.creative-card-apps{display:flex;gap:8px}.creative-card-apps img{width:24px;height:24px;object-fit:contain;filter:brightness(0) invert(1)}@keyframes creativeSkeletonPulse{0%,to{opacity:.08}50%{opacity:.16}}.creative-card--skeleton{background:#ffffff1a;animation:creativeSkeletonPulse 1.5s ease-in-out infinite;pointer-events:none;cursor:default}.creative-error{font-family:IBM Plex Mono,monospace;font-size:.8rem;color:#ff5050b3;margin-bottom:20px}@media(max-width:640px){.creative-grid{grid-template-columns:1fr;width:calc(100vw - 32px);gap:12px}.creative-container{padding:60px 0}.creative-card-caption{transform:translateY(0)}.creative-card-title{font-size:17px}.creative-card-description{font-size:11px}}.tech-portfolio{width:100%;max-width:900px;margin:0 auto;padding:120px 48px 10px;box-sizing:border-box}.tech-portfolio-header{margin-bottom:80px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:40px}.tech-portfolio-title{font-family:Tiempos,serif;font-size:clamp(2.2rem,4.5vw,3.5rem);font-weight:500;color:#fff;letter-spacing:1px;margin-bottom:12px}.tech-portfolio-subtitle{font-family:Tiempos-regular,serif;font-size:1rem;color:#ffffff59;letter-spacing:.3px}.tech-cards-grid{display:flex;flex-direction:column}.tech-card{position:relative;opacity:0;transform:translateY(24px);border-top:1px solid rgba(255,255,255,.1);cursor:default;overflow:hidden;transition:border-color .3s ease,background .3s ease}.tech-card:last-child{border-bottom:1px solid rgba(255,255,255,.1)}.tech-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:#10b7ff00;transition:background .3s ease}@keyframes techCardIn{to{opacity:1;transform:translateY(0)}}.tech-card--visible{animation:techCardIn .55s cubic-bezier(.22,1,.36,1) forwards}.tech-card:hover{border-color:#10b7ff59;background:#10b7ff08}.tech-card:hover:before{background:#10b7ff99}.tech-card:hover .tech-card-title{color:#10b7ff}.tech-card:hover .tech-card-description{color:#fff9}.tech-card:hover .tech-tag{color:#10b7ffb3}.tech-card-inner{display:grid;grid-template-columns:72px 1fr;gap:0 32px;padding:36px 24px 36px 20px;align-items:start}.tech-card-left{display:flex;flex-direction:column;gap:6px;padding-top:3px}.tech-card-index{font-family:Share Tech Mono,monospace;font-size:.7rem;color:#10b7ff80;letter-spacing:2px}.tech-card-year{font-family:Share Tech Mono,monospace;font-size:.68rem;color:#fff3;letter-spacing:1px}.tech-card-right{display:flex;flex-direction:column;gap:14px}.tech-card-title{font-family:Tiempos,serif;font-size:1.35rem;font-weight:500;color:#fff;letter-spacing:.3px;line-height:1.2;margin:0;transition:color .25s ease}.tech-card-description{font-family:Tiempos-regular,serif;font-size:.9rem;color:#fff6;line-height:1.75;margin:0;transition:color .25s ease}.tech-card-tags{display:flex;flex-wrap:wrap;gap:6px 0}.tech-tag{font-family:Share Tech Mono,monospace;font-size:.68rem;color:#ffffff47;letter-spacing:.5px;transition:color .25s ease}.tech-tag:not(:last-child):after{content:"·";margin:0 8px;color:#ffffff1f}.tech-card-repo-btn{display:inline-flex;align-items:center;gap:8px;padding:7px 14px 7px 11px;border:1px solid rgba(255,255,255,.14);border-radius:100px;background:transparent;color:#ffffff8c;font-family:Share Tech Mono,monospace;font-size:.7rem;letter-spacing:.8px;text-decoration:none;align-self:flex-start;transition:color .25s ease,border-color .25s ease,background .25s ease;margin-top:6px;cursor:pointer}.tech-card-repo-btn:hover{color:#10b7ff;border-color:#10b7ff80;background:#10b7ff12}.tech-card-repo-icon{width:16px;height:16px;flex-shrink:0;opacity:.75;transition:opacity .25s ease}.tech-card-repo-btn:hover .tech-card-repo-icon{opacity:1}.tech-card-repo-arrow{width:11px;height:11px;flex-shrink:0;opacity:.6;transition:opacity .25s ease,transform .25s ease}.tech-card-repo-btn:hover .tech-card-repo-arrow{opacity:1;transform:translate(2px,-2px)}@keyframes techSkeletonPulse{0%,to{opacity:.12}50%{opacity:.22}}.tech-card--skeleton{pointer-events:none}.tech-skeleton-line{display:block;height:13px;border-radius:4px;background:#ffffff2e;animation:techSkeletonPulse 1.4s ease-in-out infinite}.tech-error{font-family:Share Tech Mono,monospace;font-size:.8rem;color:#ff5050b3;margin-bottom:24px}@media(max-width:640px){.tech-portfolio{padding:80px 24px 60px}.tech-card-inner{grid-template-columns:1fr;gap:10px 0;padding:28px 12px}.tech-card-left{flex-direction:row;gap:16px}}@font-face{font-family:Tiempos;src:url(/fonts/tiempos.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Tiempos-regular;src:url(/fonts/tiempos-regular.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Tiempos-italic;src:url(/fonts/tiempos-italic.otf) format("opentype");font-weight:400;font-style:italic;font-display:swap}*{margin:0;padding:0;box-sizing:border-box}html,body{background:#242424}.hero{pointer-events:none}.hero>*{pointer-events:auto}.hero--creative{width:100vw;height:100vh;background:transparent;color:#fff;position:relative;overflow:hidden;transition:height .6s ease-in-out,background .4s ease-in-out}.hero--technical{background:transparent;transition:height .6s ease-in-out,background .4s ease-in-out}.hero-exit.hero-exit--creative,.hero-exit.hero-exit--technical{height:180vh}.hero.blur-active .hero-center:not(.socials-container) h1,.hero.blur-active .hero-center:not(.socials-container) p,.hero.blur-active .toggle{filter:blur(6px);opacity:.5;transition:filter .4s ease,opacity .4s ease}.hero.blur-active .nav,.hero.blur-active .explore{filter:blur(6px);opacity:.5;transition:filter .4s ease,opacity .4s ease}.hero.blur-active .social-icon:hover{filter:blur(0px)!important;opacity:1!important;transform:translateY(-4px) scale(3);mix-blend-mode:normal}.nav{margin-bottom:35vh;margin-top:50px;background:none;display:flex;justify-content:center;align-items:center;gap:80px;transition:filter .4s ease,opacity .4s ease}.nav-btn{background:none;border:none;color:#fff;mix-blend-mode:difference;letter-spacing:2px;cursor:pointer;transition:opacity .3s;display:flex;z-index:2;position:relative;font-family:Tiempos;font-size:18px;text-decoration:none}.nav-btn:after{content:"";position:absolute;bottom:-6px;left:0;height:3px;border-radius:100%;width:0%;transition:width .35s ease;background:#fff;mix-blend-mode:difference}.nav-btn:hover{opacity:.6}.nav-btn:hover:after{width:100%}.canvas{position:absolute;inset:0;height:120vh}.canvas-background{pointer-events:none}.canvas-background .canvas{position:absolute;inset:0;width:100%;height:100%;transition:opacity 1s ease-out}.hero.blur-active .canvas{filter:blur(6px);opacity:.5;transition:filter .4s ease,opacity .4s ease}.hero-center{text-align:center;z-index:2;font-family:Share Tech Mono,monospace;color:#fff;margin-bottom:24vh}.hero-center h1{letter-spacing:4px;font-weight:500;transition:filter .4s ease,opacity .4s ease;font-family:Tiempos}.hero-center p{margin-top:12px;opacity:.8;line-height:1.5;font-size:20px;font-family:Tiempos-regular;transition:filter .4s ease,opacity .4s ease}.socials-container{position:relative;z-index:100;margin-top:30px;pointer-events:auto}.socials{display:flex;justify-content:center;gap:120px}.social-icon{position:relative;display:flex;justify-content:center;align-items:center;cursor:pointer;pointer-events:auto;transition:filter .4s ease,opacity .4s ease,transform .3s}.hero.blur-active .social-icon:not(:hover){filter:blur(4px);opacity:.3}.socials-icon{width:30px;height:30px;fill:#fff;mix-blend-mode:difference}.explore{font-size:17px;opacity:.7;transition:filter .4s ease,opacity .4s ease;padding-top:40px;font-family:Tiempos-regular;white-space:pre;-webkit-user-select:none;user-select:none}.toggle{width:260px;height:50px;background:#fff;border-radius:40px;margin:14px auto;display:flex;align-items:center;position:relative;color:#000;font-weight:500;transition:filter .4s ease,opacity .4s ease;opacity:0}.toggle span{flex:1;z-index:2;transition:opacity .4s;color:#fff;mix-blend-mode:difference}.toggle .active{opacity:1}.toggle-pill{position:absolute;width:50%;height:100%;background:#000;border-radius:40px;transition:transform .4s ease}.toggle-pill.technical{transform:translate(100%)}.blur-overlay{display:none}.portfolio-edge{position:fixed;top:0;bottom:0;width:220px;display:flex;align-items:center;pointer-events:auto;cursor:pointer;z-index:20;transition:opacity .4s ease,transform .6s cubic-bezier(.4,0,.2,1),filter .35s ease,background .35s ease,color .35s ease}.portfolio-edge:before{content:"";position:absolute;inset:0;opacity:0;transition:opacity .35s ease;pointer-events:none}.portfolio-edge.left:before{background:linear-gradient(to right,#ff8c10e6,#ff8c1000)}.portfolio-edge.right:before{background:linear-gradient(to left,#10b7ffe6,#10b7ff00)}.portfolio-edge.hovered:before{opacity:.4}.portfolio-edge.left{pointer-events:none;left:0;justify-content:flex-start;padding-left:600px;background:linear-gradient(to right,#000,#0009 40%,#0006 75%,#0000);transform:translate(-100%);transition:background .35s ease,transform .6s cubic-bezier(.4,0,.2,1)}.portfolio-edge.left.mounted{transform:translate(0)}.portfolio-edge.right{pointer-events:none;right:0;justify-content:flex-end;padding-right:600px;background:linear-gradient(to left,#000,#0009 40%,#0006 75%,#0000);transition:background .35s ease,transform .6s cubic-bezier(.4,0,.2,1),letter-spacing .35s ease}.portfolio-edge.right.mounted{transform:translate(0)}.portfolio-text{font-family:Tiempos-italic}.portfolio-text-left,.portfolio-text-right{pointer-events:auto;color:#fff;font-size:18px;letter-spacing:2px;font-weight:500;position:absolute;transition:transform 1s ease,opacity .35s ease,color .35s ease,letter-spacing .35s ease;opacity:.8;display:inline-block}.portfolio-text-left{left:100px;text-align:left}.portfolio-text-right{right:100px;text-align:right}.portfolio-edge.left .portfolio-text-left{transform:translate(100px)}.portfolio-edge.right .portfolio-text-right{transform:translate(-100px)}.portfolio-edge.hovered{color:#000}.portfolio-edge.hovered .portfolio-text-left,.portfolio-edge.hovered .portfolio-text-right{opacity:1;color:#000;letter-spacing:5px}.portfolio-edge.hovered .portfolio-text-left{transform:scale(1.5) translate(100px)}.portfolio-edge.hovered .portfolio-text-right{transform:scale(1.5) translate(-100px)}.portfolio-edge.hovered .portfolio-text-left,.portfolio-edge.hovered .arrow-left:after{color:#ff8c10}.portfolio-text-left:after{background:#ff8c10}.portfolio-edge.hovered .portfolio-text-right,.portfolio-edge.hovered .arrow-right:after{color:#10b7ff}.portfolio-text-right:after{background:#10b7ff}.portfolio-text-left:after,.portfolio-text-right:after{content:"";position:absolute;bottom:-6px;left:0;height:3px;border-radius:100%;width:0%;transition:width .35s ease}.portfolio-edge.hovered .portfolio-text-left:after,.portfolio-edge.hovered .portfolio-text-right:after{width:90%}.arrow-left:after{position:absolute;content:"〈";font-size:48px;line-height:1;left:-80px;bottom:0;margin-left:8px;color:#fff;transition:transform .35s ease,color .35s ease}.portfolio-edge.hovered .portfolio-text-left:before{transform:translate(4px)}.arrow-right:after{position:absolute;right:-80px;bottom:0;content:"〉";font-size:48px;line-height:1;margin-right:8px;color:#fff;transition:transform .35s ease,color .35s ease}.portfolio-edge.left.slide-out-left{transform:translate(-150%) scale(.8);opacity:0;pointer-events:none}.portfolio-edge.right.slide-out-right{transform:translate(150%) scale(.8);opacity:0;pointer-events:none}.portfolio-edge{transition:transform .8s cubic-bezier(.68,-.55,.27,1.55),opacity .5s ease,pointer-events 0s}.portfolio-edge.slide-out-left:hover,.portfolio-edge.slide-out-right:hover{opacity:0!important;transform:translate(-150%) scale(.8)!important}.hero-exit .hero-center h1,.hero-exit .hero-center p,.hero-exit .explore,.hero-exit .socials-container{transition:transform .35s ease-out,position .35s ease-out}.hero-exit.hero-exit--creative .hero-center h1,.hero-exit.hero-exit--creative .hero-center p,.hero-exit.hero-exit--creative .explore,.hero-exit.hero-exit--creative .socials-container{transform:translate(150vw)}.hero-exit.hero-exit--technical .hero-center h1,.hero-exit.hero-exit--technical .hero-center p,.hero-exit.hero-exit--technical .explore,.hero-exit.hero-exit--technical .socials-container{transform:translate(-150vw)}.hero-exit .hero-center .explore{transition:opacity .1s ease-in-out;position:relative;left:0}.hero-exit.hero-exit--creative .hero-center .explore,.hero-exit.hero-exit--technical .hero-center .explore{opacity:0}.hero-exit{transition:height .6s cubic-bezier(.4,0,.2,1)}.selection-message{position:absolute;top:30%;transform:translate(-50%,-50%);z-index:30;color:#fff;max-width:600px;box-sizing:border-box}.selection-title{font-size:3rem;font-weight:700;margin-bottom:4rem;font-family:Tiempos,serif}.selection-description{font-size:1.2rem;opacity:.7;font-family:Tiempos-regular,sans-serif;overflow-wrap:break-word;word-break:normal;-webkit-hyphens:none;hyphens:none;line-height:2.2rem}.hero--technical .selection-message{text-align:right;left:70%}.hero--creative .selection-message{text-align:left;left:30%}.hero--creative~.portfolio-section{background:#242424}.canvas-background{background:#242424}.hero--creative .selection-title,.hero--creative .selection-description{color:#fffbec}.hero--technical .selection-title,.hero--technical .selection-description{color:#10b7ff}.hero--creative .selection-title::selection,.hero--creative .selection-description::selection{background:#ff8c10}.hero--technical .selection-title::selection,.hero--technical .selection-description::selection{background:#10b7ff}@media(max-width:768px){.selection-title{font-size:2.5rem}.selection-description{font-size:1.2rem}}body{margin:0;padding:0;overflow-x:hidden}html.lenis{height:auto}.lenis.lenis-smooth{scroll-behavior:auto}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}.lenis.lenis-scrolling iframe{pointer-events:none}.portfolio-section{min-height:100vh;position:relative;z-index:3;pointer-events:auto;width:100%;display:flex;flex-direction:column;margin-top:-80vh}.creative-portfolio{background:#242424;color:#fffbec;display:flex;flex-direction:column;align-items:center;justify-content:center}.technical-portfolio{background:#242424;color:#10b7ff;display:flex;flex-direction:column;align-items:center;justify-content:center}.canvas{transition:opacity 1s ease-out}.canvas.hidden{opacity:0;pointer-events:none}.go-back-btn{position:absolute;top:42px;z-index:100;display:flex;align-items:center;color:#fff;font-family:Tiempos,serif;font-size:38px;letter-spacing:1px;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .4s ease-in-out,transform .4s ease-in-out}.go-back-btn--creative{right:48px;transform:translate(60px)}.go-back-btn--technical{left:48px;transform:translate(-60px)}.go-back-btn--visible{opacity:1;transform:translate(0);pointer-events:auto}.go-back-btn--creative:hover{transform:translate(5px)}.go-back-btn--technical:hover{transform:translate(-5px)}.go-back-btn:active{transform:translate(0) scale(.95)}.go-back-btn svg{width:20px;height:20px;transition:transform .3s ease}.go-back-btn:hover svg{transform:translate(-4px)}.hero-returning .hero-center h1,.hero-returning .hero-center p,.hero-returning .explore,.hero-returning .socials-container{transition:transform .5s cubic-bezier(.4,0,.2,1);transform:translate(0)!important}.hero-returning .selection-message{opacity:0;transition:opacity .4s ease}.loading-screen{position:fixed;inset:0;z-index:9999;background:#777;display:flex;align-items:center;justify-content:center;transition:background .7s ease,opacity .7s ease}.loading-screen--exit{background:transparent;opacity:0;pointer-events:none}.loading-title-wrapper{position:relative;transition:transform .85s cubic-bezier(.4,0,.2,1);transform-origin:center center;display:inline-block}.loading-title-base,.loading-title-reveal{font-family:Tiempos,serif;font-size:clamp(40px,7vw,96px);font-weight:500;letter-spacing:4px;white-space:nowrap;color:#fff;display:block;line-height:1}.loading-title-base{opacity:.15}.loading-title-reveal{position:absolute;inset:0}@media(max-width:768px){.nav{gap:24px;margin-top:24px;margin-bottom:3vh}.nav-btn{font-size:13px;letter-spacing:1px}.hero-center{margin-bottom:0}.hero-center h1{font-size:clamp(1.6rem,8vw,2.4rem);letter-spacing:2px}.hero-center p{font-size:.8rem;line-height:1.55;margin-top:8px}.explore{font-size:.7rem;letter-spacing:2px;padding-top:10px}.socials{gap:clamp(10px,5vw,28px)}.go-back-btn{top:16px;font-size:28px}.go-back-btn--creative{right:16px}.go-back-btn--technical{left:16px}.go-back-btn svg{width:18px;height:18px}.portfolio-edge{width:100px}.canvas-background{overflow:hidden}.portfolio-section{margin-top:-60vh}.hero--creative .selection-message,.hero--technical .selection-message{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);text-align:center;max-width:calc(100vw - 48px);width:100%;padding:0 4px}.selection-title{font-size:clamp(1.3rem,6vw,2rem);margin-bottom:1.2rem}.selection-description{font-size:clamp(.75rem,3.4vw,.92rem);line-height:1.75}}:root{--hue: 27;--sat: 69%;--white: hsl(0, 0%, 100%);--purple-primary: rgba(255, 251, 236, 1);--purple-glow: rgba(255, 251, 236, .2);--purple-border: rgba(255, 251, 236, .8);--border-color: #392e4e;--background-dark: #060010;color-scheme:light dark}.card-grid{display:grid;gap:.5em;padding:.75em;max-width:54em;font-size:clamp(1rem,.9rem + .5vw,1.5rem)}.magic-bento-card{display:flex;flex-direction:column;justify-content:space-between;position:relative;aspect-ratio:4/3;min-height:200px;width:100%;max-width:100%;padding:1.25em;border-radius:20px;border:1px solid var(--border-color);background:var(--background-dark);font-weight:300;overflow:hidden;transition:all .3s ease;--glow-x: 50%;--glow-y: 50%;--glow-intensity: 0;--glow-radius: 200px}.magic-bento-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #00000026}.magic-bento-card__header,.magic-bento-card__content{display:flex;position:relative;color:var(--white)}.magic-bento-card__header{gap:.75em;justify-content:space-between}.magic-bento-card__content{flex-direction:column}.magic-bento-card__label{font-size:16px}.magic-bento-card__title,.magic-bento-card__description{--clamp-title: 1;--clamp-desc: 2}.magic-bento-card__title{font-weight:400;font-size:16px;margin:0 0 .25em}.magic-bento-card__description{font-size:12px;line-height:1.2;opacity:.9}.magic-bento-card--text-autohide .magic-bento-card__title,.magic-bento-card--text-autohide .magic-bento-card__description{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.magic-bento-card--text-autohide .magic-bento-card__title{-webkit-line-clamp:var(--clamp-title);line-clamp:var(--clamp-title)}.magic-bento-card--text-autohide .magic-bento-card__description{-webkit-line-clamp:var(--clamp-desc);line-clamp:var(--clamp-desc)}@media(max-width:599px){.card-grid{grid-template-columns:1fr;width:90%;margin:0 auto;padding:.5em}.magic-bento-card{width:100%;min-height:180px}}@media(min-width:600px){.card-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.card-grid{grid-template-columns:repeat(4,1fr)}.magic-bento-card:nth-child(3){grid-column:span 2;grid-row:span 2}.magic-bento-card:nth-child(4){grid-column:1 / span 2;grid-row:2 / span 2}.magic-bento-card:nth-child(6){grid-column:4;grid-row:3}}.magic-bento-card--border-glow:after{content:"";position:absolute;inset:0;padding:6px;background:radial-gradient(var(--glow-radius) circle at var(--glow-x) var(--glow-y),rgba(132,0,255,calc(var(--glow-intensity) * .8)) 0%,rgba(132,0,255,calc(var(--glow-intensity) * .4)) 30%,transparent 60%);border-radius:inherit;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;pointer-events:none;opacity:1;transition:opacity .3s ease;z-index:1}.magic-bento-card--border-glow:hover:after{opacity:1}.magic-bento-card--border-glow:hover{box-shadow:0 4px 20px #2e184e66,0 0 30px var(--purple-glow)}.particle-container{position:relative;overflow:hidden}.particle:before{content:"";position:absolute;inset:-2px;background:#8400ff33;border-radius:50%;z-index:-1}.particle-container:hover{box-shadow:0 4px 20px #2e184e33,0 0 30px var(--purple-glow)}.global-spotlight{mix-blend-mode:screen;will-change:transform,opacity;z-index:200!important;pointer-events:none}.bento-section{position:relative;-webkit-user-select:none;user-select:none}
