@import url(https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&display=swap);*,::backdrop,:after,:before{--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: }/*
! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com
*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-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;font-variation-settings:normal;line-height:1.5;tab-size:4}body{line-height:inherit}hr{border-top-width:1px;color:inherit;height:0}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height: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:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-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,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-x-0{left:0;right:0}.bottom-0{bottom:0}.bottom-4{bottom:1rem}.left-4{left:1rem}.-z-10{z-index:-10}.z-50{z-index:50}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-bottom:.25rem;margin-top:.25rem}.mb-20{margin-bottom:5rem}.mb-\[2px\]{margin-bottom:2px}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-\[2px\]{margin-top:2px}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.hidden{display:none}.h-10{height:2.5rem}.h-2{height:.5rem}.h-3{height:.75rem}.h-32{height:8rem}.h-4{height:1rem}.h-40{height:10rem}.h-6{height:1.5rem}.h-96{height:24rem}.h-\[12rem\]{height:12rem}.h-\[22rem\]{height:22rem}.h-\[6px\]{height:6px}.h-full{height:100%}.min-h-\[200vh\]{min-height:200vh}.w-10{width:2.5rem}.w-20{width:5rem}.w-3{width:.75rem}.w-4{width:1rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-\[10\%\]{width:10%}.w-\[2\.85rem\]{width:2.85rem}.w-\[2\.8rem\]{width:2.8rem}.w-\[3\.65rem\]{width:3.65rem}.w-\[32rem\]{width:32rem}.w-\[4\.9rem\]{width:4.9rem}.w-\[40\%\]{width:40%}.w-\[6px\]{width:6px}.w-\[8\.2rem\]{width:8.2rem}.w-\[80\%\]{width:80%}.w-full{width:100%}.shrink-0{flex-shrink:0}.scale-\[0\.35\]{--tw-scale-x:0.35;--tw-scale-y:0.35}.scale-\[0\.35\],.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}.flex-col{flex-direction:column}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-\[2px\]{gap:2px}.overflow-hidden{overflow:hidden}.rounded-2xl{border-radius:1rem}.rounded-\[16px\]{border-radius:16px}.rounded-\[3\.5px\]{border-radius:3.5px}.rounded-\[4px\]{border-radius:4px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-tl-3xl{border-top-left-radius:1.5rem}.rounded-tr-3xl{border-top-right-radius:1.5rem}.border{border-width:1px}.bg-\[\#010101\]{--tw-bg-opacity:1;background-color:#010101;background-color:rgb(1 1 1/var(--tw-bg-opacity,1))}.bg-\[\#050505\]{--tw-bg-opacity:1;background-color:#050505;background-color:rgb(5 5 5/var(--tw-bg-opacity,1))}.bg-\[\#0A090D\]{--tw-bg-opacity:1;background-color:#0a090d;background-color:rgb(10 9 13/var(--tw-bg-opacity,1))}.bg-\[\#272729\]{--tw-bg-opacity:1;background-color:#272729;background-color:rgb(39 39 41/var(--tw-bg-opacity,1))}.bg-black{--tw-bg-opacity:1;background-color:#000;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-gray-200{--tw-bg-opacity:1;background-color:#e5e7eb;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.bg-white\/\[0\.2\]{background-color:#fff3}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.from-\[\#272729\]{--tw-gradient-from:#272729 var(--tw-gradient-from-position);--tw-gradient-to:#27272900 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-neutral-900{--tw-gradient-from:#171717 var(--tw-gradient-from-position);--tw-gradient-to:#17171700 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-white{--tw-gradient-from:#fff var(--tw-gradient-from-position);--tw-gradient-to:#fff0 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-20\%{--tw-gradient-from-position:20%}.via-black{--tw-gradient-to:#0000 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#000 var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-white{--tw-gradient-to:#fff0 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#fff var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-50\%{--tw-gradient-via-position:50%}.to-\[\#050505\]{--tw-gradient-to:#050505 var(--tw-gradient-to-position)}.to-neutral-900{--tw-gradient-to:#171717 var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to:#0000 var(--tw-gradient-to-position)}.to-95\%{--tw-gradient-to-position:95%}.object-contain{object-fit:contain}.object-center{object-position:center}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-\[0\.5px\]{padding:.5px}.p-px{padding:1px}.px-\[0\.5px\]{padding-left:.5px;padding-right:.5px}.py-0{padding-bottom:0;padding-top:0}.py-\[4px\]{padding-bottom:4px;padding-top:4px}.pb-\[2px\]{padding-bottom:2px}.pl-1{padding-left:.25rem}.pl-\[4px\]{padding-left:4px}.pr-1{padding-right:.25rem}.pr-\[4px\]{padding-right:4px}.text-center{text-align:center}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-\[5px\]{font-size:5px}.font-bold{font-weight:700}.text-neutral-200{--tw-text-opacity:1;color:#e5e5e5;color:rgb(229 229 229/var(--tw-text-opacity,1))}.text-neutral-800{--tw-text-opacity:1;color:#262626;color:rgb(38 38 38/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:#fff;color:rgb(255 255 255/var(--tw-text-opacity,1))}.mix-blend-overlay{mix-blend-mode:overlay}.shadow{--tw-shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-xl{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color)}.shadow-white{--tw-shadow-color:#fff;--tw-shadow:var(--tw-shadow-colored)}.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-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}@keyframes enter{0%{opacity:1;opacity:var(--tw-enter-opacity,1);transform:translateZ(0) scaleX(1) rotate(0);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:1;opacity:var(--tw-exit-opacity,1);transform:translateZ(0) scaleX(1) rotate(0);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.\[perspective\:800px\]{perspective:800px}.\[transform\:translateZ\(0\)\]{transform:translateZ(0)}.\[will-change\:transform\]{will-change:transform}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.dark\:bg-\[\#272729\]:is(.dark *){--tw-bg-opacity:1;background-color:#272729;background-color:rgb(39 39 41/var(--tw-bg-opacity,1))}.dark\:from-black:is(.dark *){--tw-gradient-from:#000 var(--tw-gradient-from-position);--tw-gradient-to:#0000 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:via-black:is(.dark *){--tw-gradient-to:#0000 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#000 var(--tw-gradient-via-position),var(--tw-gradient-to)}.dark\:text-white:is(.dark *){--tw-text-opacity:1;color:#fff;color:rgb(255 255 255/var(--tw-text-opacity,1))}@media (min-width:640px){.sm\:scale-50{--tw-scale-x:.5;--tw-scale-y:.5;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))}}@media (min-width:768px){.md\:scale-100{--tw-scale-x:1;--tw-scale-y:1;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))}.md\:py-80{padding-bottom:20rem;padding-top:20rem}}:root{--header-height:3.5rem;--primary-color:#000;--primary-color-rgb:0,0,0;--secondary-color:#fff;--accent-color:#000000b3;--text-color:#1d1d1f;--text-color-light:#86868b;--body-color:#f6f6f6;--container-color:#fff;--border-color:#0000001a;--code-bg:#0000000d;--code-color:#1d1d1f;--card-shadow:0 4px 20px #0000001a;--primary-color-alt:#333;--button-hover-shadow:0 8px 25px #00000026;--body-font:"Space Grotesk",-apple-system,BlinkMacSystemFont,sans-serif;--big-font-size:4rem;--h1-font-size:2.5rem;--h2-font-size:1.75rem;--h3-font-size:1.25rem;--normal-font-size:1rem;--small-font-size:0.875rem;--smaller-font-size:0.813rem;--tiny-font-size:0.625rem;--font-normal:400;--font-medium:500;--font-semi-bold:600;--font-bold:700;--mb-0-25:0.25rem;--mb-0-5:0.5rem;--mb-0-75:0.75rem;--mb-1:1rem;--mb-1-5:1.5rem;--mb-2:2rem;--mb-2-5:2.5rem;--mb-3:3rem;--z-tooltip:10;--z-fixed:100;--z-modal:1000}[data-theme=dark]{--primary-color:#fff;--primary-color-rgb:255,255,255;--secondary-color:#000;--accent-color:#ffffffb3;--text-color:#f5f5f7;--text-color-light:#a1a1a6;--body-color:#121212;--container-color:#1e1e1e;--border-color:#ffffff1a;--code-bg:#ffffff12;--code-color:#f5f5f7;--card-shadow:0 4px 20px #0000004d;--primary-color-alt:#ccc;--button-hover-shadow:0 8px 25px #ffffff26}@media screen and (max-width:992px){:root{--big-font-size:3rem;--h1-font-size:1.75rem;--h2-font-size:1.375rem;--h3-font-size:1.125rem;--normal-font-size:0.938rem;--small-font-size:0.813rem;--smaller-font-size:0.75rem}}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:3.5rem;scroll-padding-top:var(--header-height)}body,button,input,textarea{font-family:Space Grotesk,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--body-font);font-size:1rem;font-size:var(--normal-font-size)}body{background-color:#f6f6f6;background-color:var(--body-color);color:#1d1d1f;color:var(--text-color);line-height:1.7}h1,h2,h3{color:#000;color:var(--primary-color);font-weight:600;font-weight:var(--font-semi-bold);line-height:1.2}ul{list-style:none}a{text-decoration:none}button{border:none;cursor:pointer;outline:none}img{height:auto;max-width:100%}.home__img,.nav__logo-img{border-radius:60% 40% 30% 70%/60% 30% 70% 40%}.section{background-color:initial;color:#1d1d1f;color:var(--text-color);margin-bottom:2rem;padding:8rem 0 3rem}.section__title{color:#000;color:var(--primary-color);display:inline-block;font-size:2.5rem;font-size:var(--h1-font-size);margin:0 auto;position:relative;text-align:center;width:100%}.section__title:after{background-color:#000;background-color:var(--primary-color);bottom:-8px;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:70px}.section__subtitle{color:#86868b;color:var(--text-color-light);display:block;font-size:.875rem;font-size:var(--small-font-size);margin:1.5rem 0 4rem}.section__header,.section__subtitle,.section__title{text-align:center}.section__header{align-items:center;display:flex;flex-direction:column;margin-bottom:2rem;width:100%}.container{margin-left:auto;margin-right:auto;padding-left:1.5rem;padding-right:1.5rem}.container,.section__wrapper,section>.container{max-width:1140px;width:100%}.section__wrapper{margin:0 auto;padding-left:1.5rem;padding-right:1.5rem}.grid{grid-gap:2rem;display:grid;gap:2rem}.button{background-color:#000;background-color:var(--primary-color);border-radius:.25rem;color:#fff;color:var(--secondary-color);display:inline-block;font-weight:500;font-weight:var(--font-medium);overflow:hidden;padding:1.15rem 2.25rem;position:relative;transition:all .3s ease;z-index:1}.button:before{background-color:#000000b3;background-color:var(--accent-color);content:"";height:100%;left:0;position:absolute;top:0;transition:all .5s cubic-bezier(.165,.84,.44,1);width:0;z-index:-1}.button:hover:before{width:100%}.button:hover{box-shadow:0 10px 20px #0000001a;transform:translateY(-3px)}.button__icon{margin-left:.5rem;margin-left:var(--mb-0-5)}.button--flex{align-items:center;display:inline-flex}@media screen and (max-width:992px){.container{padding-left:2rem;padding-right:2rem}.button{padding:1rem 1.75rem}.button__icon{height:22px;width:22px}}@media screen and (max-width:768px){body{margin:0 0 3.5rem;margin:0 0 var(--header-height) 0}.section{padding:2rem 0 4rem}.section__subtitle{margin-bottom:3rem;margin-bottom:var(--mb-3)}.section__subtitle,.section__title{text-align:center}.section__title:after{left:50%;transform:translateX(-50%)}}@media screen and (max-width:576px){.container{padding-left:1.5rem;padding-right:1.5rem}}@media screen and (max-width:350px){:root{--big-font-size:2.25rem}.container{padding-left:1rem;padding-right:1rem}}.section-reveal{opacity:0;transform:translateY(28px);transition:opacity .7s cubic-bezier(.4,0,.2,1),transform .7s cubic-bezier(.4,0,.2,1)}.section-reveal--visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.section-reveal{opacity:1;transform:none;transition:none}}.header{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:#fffffff2;border-bottom:1px solid #0000;left:0;position:fixed;top:0;transition:all .3s ease;width:100%;z-index:var(--z-fixed)}[data-theme=dark] .header{background-color:#121212f2;border-bottom:1px solid #ffffff1a}.nav{display:flex;height:var(--header-height);justify-content:space-between}.nav,.nav__logo{align-items:center}.nav__logo{color:var(--primary-color);column-gap:.75rem;display:inline-flex;font-weight:var(--font-medium);position:relative;transition:.3s}.nav__logo-img{border:1px solid var(--primary-color);border-radius:50%;box-shadow:0 0 5px rgba(var(--primary-color-rgb),.3);height:40px;object-fit:cover;width:40px}.nav__logo-text{font-size:.95rem;font-weight:var(--font-semi-bold);letter-spacing:.01em}.nav__logo:hover{color:var(--primary-color)}.nav__logo:after{background-color:var(--primary-color);bottom:-4px;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:0}.nav__logo:hover:after{width:100%}.nav__list{column-gap:2.5rem;display:flex}.nav__link{color:var(--text-color);font-weight:var(--font-medium);position:relative;transition:all .3s}.active-link,.nav__link:hover{color:var(--primary-color)}.active-link{position:relative}.nav__link:after{transition:width .3s ease;width:0}.active-link:after,.nav__link:after{background-color:var(--primary-color);border-radius:1px;bottom:-6px;content:"";height:2px;left:0;position:absolute}.active-link:after{transition:width .3s ease,background-color .3s ease;width:70%}.scroll-header{background-color:#fffffffa;border-bottom:1px solid #0000000d;box-shadow:0 2px 10px #0000000d;transition:all .3s ease}[data-theme=dark] .scroll-header{background-color:#121212fa;border-bottom:1px solid #ffffff1a;box-shadow:0 2px 10px #0003}.nav__buttons{column-gap:1rem}.nav__buttons,.theme__toggle{align-items:center;display:flex}.theme__toggle{background:none;border-radius:50%;color:var(--text-color);cursor:pointer;font-size:1.25rem;height:2rem;justify-content:center;transition:all .3s ease;width:2rem}.theme__toggle:hover{background-color:#0000000d;color:var(--primary-color)}[data-theme=dark] .theme__toggle:hover{background-color:#ffffff1a}.nav__close,.nav__toggle{display:none}@media screen and (max-width:768px){.header{background-color:#fffffffa;border-bottom:1px solid #0000000d;border-top:none;bottom:auto;top:0}[data-theme=dark] .header,[data-theme=dark] .header.scroll-header{background-color:#121212fa;border-bottom:1px solid #ffffff1a;border-top:none}.nav{height:var(--header-height)}.nav__logo-text{font-size:.9rem}.nav__menu{background-color:var(--body-color);border:1px solid #00000014;border-radius:14px;box-shadow:0 12px 30px #00000014;left:auto;opacity:0;padding:1.25rem;position:fixed;right:1rem;top:calc(var(--header-height) + .75rem);transform:translateY(-8px);transition:opacity .2s ease,transform .2s ease,visibility .2s ease;visibility:hidden;width:min(320px,calc(100vw - 2rem))}[data-theme=dark] .nav__menu{background-color:#121212fa;border-color:#ffffff14;box-shadow:0 12px 30px #00000047}.show-menu{opacity:1;transform:translateY(0);visibility:visible}.nav__list{display:flex;flex-direction:column;gap:.25rem}.nav__link{display:block;font-size:var(--normal-font-size);padding:.65rem 0}.nav__icon{display:none}.nav__close{color:var(--primary-color);font-size:1.25rem;position:absolute;right:.9rem;top:.9rem}.nav__close,.nav__toggle{cursor:pointer;display:block}.nav__toggle{font-size:1.15rem}}@media screen and (max-width:350px){.nav__logo-text{display:none}.nav__menu{padding:1rem;right:.75rem;width:calc(100vw - 1.5rem)}}.home__container{row-gap:4rem}.home{position:relative}.boot-active{overflow:hidden}.home__boot{align-items:center;background:radial-gradient(circle at top,#00ff8814,#0000 45%),#020403;display:flex;inset:0;justify-content:center;pointer-events:auto;position:fixed;transition:opacity .55s ease;z-index:2000}.home__boot--complete{opacity:0;pointer-events:none}.home__boot-panel{background:linear-gradient(180deg,#040705,#010201);bottom:0;position:absolute;top:0;transition:transform 1.1s cubic-bezier(.4,0,.2,1);width:50%}.home__boot-panel--left{left:0}.home__boot-panel--right{right:0}.home__boot--complete .home__boot-panel--left{transform:translateX(-100%)}.home__boot--complete .home__boot-panel--right{transform:translateX(100%)}.home__boot-terminal{color:#0f8;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.95rem;letter-spacing:.03em;line-height:1.75;min-height:16rem;padding:1.75rem;position:relative;text-shadow:0 0 12px #00ff8838;width:min(100%,42rem);z-index:1}.home__boot-line{white-space:pre-wrap}.home__boot-cursor{animation:boot-cursor-blink .9s steps(1) infinite;margin-left:.25rem}@keyframes boot-cursor-blink{0%,49%{opacity:1}50%,to{opacity:0}}.home__content{align-items:center;column-gap:3rem;grid-template-columns:1fr 1fr}.home__social{column-gap:1.25rem;display:flex;margin-bottom:1.5rem}.home__social-icon{color:var(--primary-color);font-size:1.5rem;transition:.4s}.home__social-icon:hover{color:var(--accent-color);transform:translateY(-5px)}.home__social-link{align-items:center;background-color:var(--container-color);border-radius:50%;box-shadow:0 4px 12px #0000000d;color:var(--primary-color);display:flex;font-size:1.25rem;height:45px;justify-content:center;transition:all .4s;width:45px}.home__social-link:hover{background-color:var(--secondary-color);box-shadow:0 8px 24px #0000001a;color:var(--primary-color);transform:translateY(-8px)}.home__data{padding-right:1rem}.home__greeting{color:var(--text-color-light);font-size:var(--small-font-size);font-weight:var(--font-medium);letter-spacing:1px;margin-bottom:.25rem;text-transform:uppercase}.home__title{color:var(--primary-color);font-size:var(--big-font-size);letter-spacing:-.5px;line-height:1.1;margin-bottom:var(--mb-1)}.home__hand{animation:hand-wave 3s infinite;height:38px;margin-left:.4rem;transform-origin:70% 70%;width:38px}@keyframes hand-wave{0%{transform:rotate(0deg)}10%{transform:rotate(14deg)}20%{transform:rotate(-8deg)}30%{transform:rotate(14deg)}40%{transform:rotate(-4deg)}50%{transform:rotate(10deg)}60%{transform:rotate(0deg)}to{transform:rotate(0deg)}}.home__subtitle{color:var(--text-color);font-size:var(--h3-font-size);font-weight:var(--font-medium);margin-bottom:var(--mb-2);position:relative;transition:opacity .35s ease,transform .35s ease}.home__subtitle--visible{opacity:1;transform:translateY(0)}.home__subtitle--hidden{opacity:0;transform:translateY(6px)}.home__description{color:var(--text-color-light);line-height:1.8;margin-bottom:var(--mb-3);max-width:480px}.home__img-wrapper{display:flex;justify-content:center;padding:15px;position:relative}.home__img{animation:profile__animate 8s ease-in-out 1s infinite;background:url(/static/media/ADENLE.9c4f5a0c2c61e6baf3b3.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:60% 40% 30% 70%/60% 30% 70% 40%;box-shadow:inset 0 0 0 9px rgba(var(--primary-color-rgb),.3);height:320px;justify-self:center;width:320px;will-change:border-radius}@keyframes profile__animate{0%{border-radius:60% 40% 30% 70%/60% 30% 70% 40%}50%{border-radius:30% 60% 70% 40%/50% 60% 30% 60%}to{border-radius:60% 40% 30% 70%/60% 30% 70% 40%}}.home__scroll{margin-top:2rem;text-align:center}.home__scroll-button{align-items:center;background-color:initial;color:var(--primary-color);column-gap:.5rem;display:inline-flex;padding:0;transition:.3s}.home__scroll-button:hover{transform:translateY(-.25rem)}.home__scroll-mouse{border:2px solid var(--primary-color);border-radius:15px;display:flex;height:50px;justify-content:center;position:relative;width:30px}.home__scroll-wheel{animation:scroll-wheel 2s infinite;background-color:var(--primary-color);border-radius:2px;height:10px;position:absolute;top:10px;width:4px}@keyframes scroll-wheel{0%{opacity:1;transform:translateY(0)}50%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.home__scroll-name{color:var(--primary-color);font-size:var(--small-font-size);font-weight:var(--font-medium);margin-left:2px;margin-right:var(--mb-0-25)}.home__scroll-arrow{color:var(--primary-color);font-size:1.25rem}@media screen and (max-width:992px){.home__content{grid-template-columns:1fr;row-gap:4rem}.home__data{order:2;padding-right:0;text-align:center}.home__social{justify-content:center}.home__img-wrapper{order:1}.home__img{height:260px;width:260px}.home__scroll{margin-top:3rem}}@media screen and (max-width:768px){.home__boot-terminal{font-size:.85rem;min-height:14rem;padding:1.5rem}.home__content{padding-top:2rem}.home__title{font-size:clamp(2.5rem,11vw,3.5rem)}.home__subtitle{margin-bottom:var(--mb-1-5)}.home__description{max-width:34rem}.contact-button{justify-content:center;width:100%}.home__img{height:230px;width:230px}.home__description{margin:0 auto var(--mb-3)}}@media screen and (max-width:576px){.home__boot-terminal{font-size:.78rem;line-height:1.65;min-height:12.5rem;padding:1.25rem}.home__container{row-gap:2.5rem}.home__content{padding-top:1rem;row-gap:2.5rem}.home__social{flex-wrap:wrap;justify-content:center}.home__img{height:min(72vw,250px);width:min(72vw,250px)}}@media screen and (max-width:350px){.home__img{height:180px;width:180px}.home__hand{height:22px;width:22px}}.contact-button{border-radius:30px;overflow:hidden;transition:all .4s ease}.contact-button:hover{box-shadow:0 10px 25px #00000026;transform:translateY(-5px)}.about__container{margin:0 auto;max-width:900px;width:100%}@keyframes fadeInLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}.about__img{animation:fadeInLeft 1s ease-out forwards;border-radius:20px;box-shadow:0 25px 50px -12px #00000026;justify-self:center;max-width:400px;overflow:hidden;position:relative;transform:perspective(1000px) rotateY(-5deg);transition:transform .6s cubic-bezier(.165,.84,.44,1);width:100%}.about__img:before{background:linear-gradient(to bottom right,rgba(var(--primary-color-rgb),.1),#0000);content:"";inset:0;position:absolute;z-index:1}.about__img:hover{transform:perspective(1000px) rotateY(0)}.about__info{grid-gap:1.5rem;animation:fadeInUp 1s ease-out forwards;animation-delay:.3s;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr);justify-content:center;margin-bottom:2.5rem;opacity:0}.about__box{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:var(--container-color);border:1px solid #0000000d;border-radius:16px;box-shadow:0 10px 30px #0000000a;overflow:hidden;padding:1.75rem 1.25rem;position:relative;text-align:center;transition:all .3s ease}.about__box:first-child{animation-delay:.1s}.about__box:nth-child(2){animation-delay:.2s}.about__box:nth-child(3){animation-delay:.3s}.about__box:before{background-color:var(--primary-color);content:"";height:40%;left:0;opacity:0;position:absolute;top:0;transition:all .3s ease;width:4px}.about__box:hover:before{opacity:1}.about__box:hover{border-color:#00000014;box-shadow:0 20px 40px #00000014;transform:translateY(-10px)}.about__icon{color:var(--primary-color);font-size:2rem;margin-bottom:1.2rem;transition:transform .3s ease}.about__box:hover .about__icon{transform:scale(1.2)}.about__title{color:var(--text-color);font-size:var(--small-font-size);font-weight:var(--font-medium);margin-bottom:.75rem}.about__subtitle{color:var(--text-color-light);font-size:var(--tiny-font-size);font-weight:var(--font-medium)}.about__content{animation:fadeInUp 1s ease-out forwards;animation-delay:.4s;margin:0 auto 2.5rem;max-width:750px}.about__description{animation:fadeInRight 1s ease-out forwards;border-left:3px solid var(--primary-color);color:var(--text-color-light);font-size:1.02rem;font-style:italic;line-height:1.9;margin-bottom:1.5rem;opacity:0;padding:0 0 0 1.75rem;position:relative}.about__description:first-child{animation-delay:.4s}.about__description:nth-child(2){animation-delay:.6s}.about__description:nth-child(3){animation-delay:.8s;margin-bottom:0}.about__button{animation:fadeInUp 1s ease-out forwards;animation-delay:1s;opacity:0}.resume-button{border-radius:30px;overflow:hidden;transition:all .4s ease}.resume-button:hover{box-shadow:0 10px 25px #00000026;transform:translateY(-5px)}.disabled-button{cursor:pointer;opacity:.85;position:relative}.disabled-button:hover{opacity:1}.resume-message{animation:fadeInUp .5s ease-out forwards;background-color:#000;border-radius:8px;box-shadow:0 5px 15px #00000026;color:#fff;margin-bottom:20px;margin-left:auto;margin-right:auto;max-width:500px;padding:12px 16px}.about__data,.resume-message{text-align:center}@media screen and (max-width:992px){.about__container{width:90%}.about__box{padding:1.2rem 1rem}.about__description{margin-bottom:1.5rem;padding-left:1.5rem;text-align:left}}@media screen and (max-width:768px){.about__info{gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.about__description{padding-left:1.5rem}}@media screen and (max-width:576px){.about__info{grid-template-columns:1fr}.about__box{padding:1.25rem 1rem}.about__description{font-size:.96rem;line-height:1.75;padding-left:1.25rem}}@media screen and (max-width:350px){.about__info{gap:.5rem;grid-template-columns:repeat(2,1fr)}.about__description{padding-left:1rem}.about__box{padding:1rem .5rem}}.skills.section,.skills__macbook-container{overflow:hidden;position:relative}.skills__macbook-container{width:100%}.skills__container{display:block}.skills__screen{background:linear-gradient(180deg,#f7f7f5,#f0efe9);color:#1d1d1f;height:100%;padding:.75rem}.skills__screen-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,minmax(0,1fr));height:100%}.skills__panel{background-color:#ffffffd1;border:1px solid #1d1d1f1f;border-radius:10px;min-height:100%;padding:1rem 1.05rem}.skills__panel-title{color:#111;font-size:.95rem;font-weight:600;margin-bottom:.85rem}.skills__panel-list{grid-gap:.5rem;display:grid;gap:.5rem}.skills__panel-item{color:#3f3f46;font-size:.86rem;line-height:1.4}@media screen and (max-width:992px){.skills__screen-grid{grid-template-columns:1fr}}.scrollup{background-color:var(--primary-color);border-radius:.4rem;bottom:-20%;opacity:.8;padding:.3rem .5rem;position:fixed;right:2.5rem;transition:.4s;z-index:var(--z-tooltip)}.scrollup__icon{color:var(--secondary-color);font-size:1.5rem}.scrollup:hover{background-color:var(--primary-color);opacity:1}.show-scroll{bottom:3rem}@media screen and (max-width:992px){.scrollup{padding:.25rem .4rem;right:1.5rem}.scrollup__icon{font-size:1.25rem}}@media screen and (max-width:768px){.show-scroll{bottom:4rem}}@media screen and (max-width:350px){.scrollup{right:1rem}}.footer{margin-top:4rem}.footer,[data-theme=dark] .footer{background-color:var(--body-color)}.footer__container{padding:0 1.5rem 2.5rem}.footer__inner{border-top:1px solid var(--border-color);padding-top:3rem}.footer__brand{color:var(--primary-color);gap:.875rem;margin-bottom:2rem;width:100%}.footer__brand,.footer__mark{align-items:center;display:inline-flex;justify-content:center}.footer__mark{border:1px solid var(--primary-color);border-radius:8px;font-size:.85rem;font-weight:var(--font-bold);height:2.5rem;letter-spacing:.08em;width:2.5rem}.footer__name{font-size:1.1rem;font-weight:var(--font-semi-bold)}.footer__nav{display:flex;flex-wrap:wrap;gap:.75rem 2rem;justify-content:center;margin-bottom:2.5rem}.footer__link{color:var(--text-color);font-size:.95rem;transition:color .15s ease}.footer__link:hover{color:var(--primary-color)}.footer__bottom{align-items:center;border-top:1px solid var(--border-color);display:flex;gap:1rem;justify-content:space-between;padding-top:2rem}.footer__copy{color:var(--text-color-light);font-size:.9rem}.footer__social{align-items:center;display:flex;gap:1.5rem}.footer__social-link{color:var(--text-color-light);font-size:1.85rem;line-height:1;transition:color .15s ease}.footer__social-link:hover{color:var(--primary-color)}@media screen and (max-width:768px){.footer__container{padding:0 1.5rem 2rem}.footer__inner{padding-top:2.5rem}.footer__bottom{align-items:center;flex-direction:column;text-align:center}.footer__social{gap:1.25rem}}@media screen and (max-width:576px){.footer__container{padding:0 1.25rem 1.75rem}.footer__nav{gap:.625rem 1.25rem}.footer__social-link{font-size:1.65rem}}.contact__container{column-gap:6rem;grid-template-columns:repeat(2,1fr);justify-content:center;padding-bottom:3rem}.contact__title{font-size:var(--h3-font-size);font-weight:var(--font-medium);margin-bottom:1.5rem;text-align:center}.contact__info{grid-row-gap:1rem;display:grid;grid-template-columns:1fr;row-gap:1rem}.contact__card{background-color:var(--body-color);border:1px solid #0000001a;border-radius:.75rem;box-shadow:0 2px 6px #0000000d;padding:1rem;text-align:center;transition:all .3s ease}[data-theme=dark] .contact__card{border:1px solid #ffffff1a;box-shadow:0 2px 6px #0003}.contact__card:hover{box-shadow:0 8px 24px #0000001a;transform:translateY(-.25rem)}[data-theme=dark] .contact__card:hover{box-shadow:0 8px 24px #0000004d}.contact__card-icon{color:var(--title-color);font-size:2rem;margin-bottom:.25rem}.contact__card-data,.contact__card-title{font-size:var(--normal-font-size)}.contact__card-title{font-weight:var(--font-medium)}.contact__card-data{color:var(--text-color);display:block;margin-bottom:.75rem}.contact__button{align-items:center;color:var(--title-color);column-gap:.25rem;display:inline-flex;font-size:var(--small-font-size);justify-content:center;transition:all .3s ease}.contact__button-icon{font-size:1rem;transition:.3s}.contact__button:hover .contact__button-icon{transform:translateX(.25rem)}.contact__form{width:100%}.contact__form-div{height:4rem;margin-bottom:2rem;position:relative}.contact__form-input{background:none;border:2px solid #0000001a;border-radius:.75rem;color:var(--text-color);font-size:var(--normal-font-size);height:100%;left:0;outline:none;padding:1.5rem;position:absolute;top:0;width:100%;z-index:1}[data-theme=dark] .contact__form-input{border:2px solid #fff3;color:var(--text-color)}[data-theme=dark] .contact__form-input:focus{border-color:#ffffff80}.contact__form-tag{background-color:var(--body-color);font-size:var(--small-font-size);left:1.25rem;padding:.25rem;position:absolute;top:-.75rem;z-index:10}[data-theme=dark] .contact__form-tag{background-color:var(--body-color);color:var(--text-color)}.contact__form-area{height:11rem}.contact__form-area textarea{resize:none}.button--disabled{cursor:not-allowed;opacity:.7}.button--disabled:hover{box-shadow:none!important;transform:translateY(0)!important}.contact__message{align-items:center;border-radius:.5rem;column-gap:.5rem;display:flex;font-size:var(--small-font-size);margin-top:1rem;padding:.75rem 1rem}.contact__message--success{background-color:#2ecc7126;color:#2ecc71}[data-theme=dark] .contact__message--success{background-color:#2ecc711a;color:#2ecc71}.contact__message--error{background-color:#e74c3c26;color:#e74c3c}[data-theme=dark] .contact__message--error{background-color:#e74c3c1a;color:#ff6b6b}.contact__message i{font-size:1.25rem}@media screen and (max-width:992px){.contact__container{column-gap:3rem}}@media screen and (max-width:768px){.contact__container{grid-template-columns:1fr;row-gap:3rem}.contact__info{justify-content:center}.contact__form{margin:0 auto}}@media screen and (max-width:576px){.contact__info{grid-template-columns:1fr}.contact__card{width:100%}}.three-bg{height:100%;left:0;overflow:hidden;pointer-events:none;position:fixed;top:0;width:100%;z-index:-1}.three-bg canvas{position:absolute;transition:opacity .3s ease}.projects__categories{grid-gap:2.5rem;display:grid;gap:2.5rem;grid-template-columns:1fr;margin:0 auto;max-width:968px;padding:0 var(--mb-1-5)}.projects__category h3{color:var(--primary-color);font-size:var(--normal-font-size);font-weight:var(--font-medium);margin-bottom:1.5rem;padding-bottom:1rem;position:relative;text-align:center}.projects__category h3:after{background-color:var(--primary-color);bottom:0;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);width:60px}.projects__grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr);justify-content:center}.project__card{align-items:center;backface-visibility:hidden;background-color:var(--container-color);border:1px solid #0000000d;border-radius:1.25rem;box-shadow:0 4px 20px #00000008;cursor:pointer;display:flex;flex-direction:column;opacity:0;overflow:hidden;padding:1.5rem;position:relative;transform:translate3d(0,70px,-30px) rotateY(-18deg) scale(.9);transform-style:preserve-3d;transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1),box-shadow .4s ease,border-color .4s ease}.project__card--entered{opacity:1;transform:translateZ(0) rotateY(0) scale(1)}.project__card--tilt-ready{transition:box-shadow .4s ease,border-color .4s ease}.project__card:hover{border-color:rgba(var(--primary-color-rgb),.2)}.project__card:active{transform:translateY(-8px);transition:all .1s}.project__img-container{border-radius:1rem;margin-bottom:1rem;overflow:hidden;position:relative;width:100%}.project__img{border-radius:1rem;height:120px;max-width:180px;object-fit:cover;transition:transform .5s ease;width:100%}.project__card:hover .project__img{transform:scale(1.05)}.project__card-overlay{align-items:center;background:rgba(var(--primary-color-rgb),.05);border-radius:1rem;bottom:0;display:flex;flex-direction:column;justify-content:center;left:0;opacity:0;overflow:hidden;position:absolute;right:0;top:0;transition:opacity .4s ease}.project__card:hover .project__card-overlay{opacity:1}.project__clickable-hint{background-color:rgba(var(--primary-color-rgb),.1);border-radius:4px;color:var(--primary-color);font-size:.75rem;opacity:.7;padding:.2rem .5rem;position:absolute;right:.75rem;top:.75rem;transition:opacity .3s ease}[data-theme=dark] .project__clickable-hint{background-color:rgba(var(--primary-color-rgb),.2)}.project__card:hover .project__clickable-hint{opacity:1}.project__card h4{font-size:1rem;font-weight:600;margin-bottom:.5rem;text-align:center;transition:color .3s ease}.project__card h4,.project__card:hover h4{color:var(--primary-color)}.project__card p{color:var(--text-color);font-size:.875rem;text-align:center}.project__modal{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.project__modal-content{animation:fadeInUp .5s ease;background:var(--container-color);border-radius:1.25rem;box-shadow:0 8px 32px #0000001f;color:var(--text-color);max-width:500px;padding:2rem;position:relative;width:90vw}@keyframes fadeInUp{0%{opacity:0;transform:translate3d(0,30px,0) rotateY(-15deg)}to{opacity:1;transform:translateZ(0) rotateY(0)}}.project__modal-img{background:#eee;border-radius:1rem;margin-bottom:1rem;width:100%}.project__tech{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.project__tech-item{background:#f0f0f0;border-radius:5px;color:var(--primary-color);font-size:.9rem;padding:.2rem .7rem}.project__link{color:var(--primary-color);display:inline-block;font-weight:500;margin:.5rem 1rem .5rem 0;text-decoration:underline}.project__close{background:var(--container-color);border:1px solid var(--border-color);border-radius:5px;color:var(--primary-color);cursor:pointer;font-size:1rem;font-weight:600;margin-top:1rem;padding:.5rem 1.2rem;transition:all .2s}.project__close:hover{background:var(--primary-color);color:var(--secondary-color)}.project__more-images{display:flex;gap:.5rem;margin-top:1rem}.project__more-img{border-radius:5px;height:60px;object-fit:cover;width:60px}@media screen and (max-width:992px){.projects__grid{grid-template-columns:repeat(2,1fr)}}@media screen and (max-width:768px){.projects__categories{gap:2rem;padding:0}.projects__grid{grid-template-columns:1fr}.project__card{padding:1.25rem}.project__modal-content{padding:1.2rem}.project__clickable-hint{font-size:.7rem}.project__view-btn{bottom:15px}}@media screen and (max-width:576px){.project__card{border-radius:1rem}.project__img{height:160px;max-width:100%}.project__card h4{font-size:.95rem}.project__card p{font-size:.82rem}}@media screen and (max-width:350px){.projects__categories{padding:0}}.project__view-btn{background-color:var(--primary-color);border:none;border-radius:20px;bottom:-40px;box-shadow:0 2px 8px #0000001a;color:var(--secondary-color);font-size:.8rem;font-weight:500;left:50%;padding:.5rem 1rem;position:absolute;transform:translateX(-50%);transition:bottom .3s ease,transform .2s ease;z-index:2}.project__card:hover .project__view-btn{bottom:15px}.project__view-btn:hover{transform:translateX(-50%) scale(1.05)}.project__card:has(h4:contains("Google DeepMind")) .project__img,.project__card:has(h4:contains("Google DeepMind")) .project__img-container{z-index:1}.project__card:has(h4:contains("Google DeepMind")) .project__view-btn{bottom:-40px;z-index:0}.project__card:has(h4:contains("Google DeepMind")):hover .project__view-btn{bottom:10px}.project__card--deepmind .project__img,.project__card--deepmind .project__img-container{position:relative;z-index:3}.project__card--deepmind .project__card-overlay{z-index:1}.project__card--deepmind .project__view-btn{background-color:var(--primary-color);border-radius:20px;bottom:auto;box-shadow:0 4px 8px #00000026;color:var(--secondary-color);left:50%;padding:.5rem 1.2rem;position:absolute;top:10px;transform:translateX(-50%);transition:transform .3s ease;z-index:2}[data-theme=dark] .project__view-btn{box-shadow:0 2px 8px #ffffff1a}.project__card--deepmind:hover .project__view-btn{bottom:auto;transform:translateX(-50%) translateY(2px)}.project__card--deepmind .project__view-btn:hover{transform:translateX(-50%) translateY(2px) scale(1.05)}.project__card-beam{animation:beam-spin 2.4s linear infinite paused;background:conic-gradient(from 0deg,#0000 0,#0000 62%,rgba(var(--primary-color-rgb),.75) 74%,#0000 86%);border-radius:inherit;inset:0;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;opacity:0;padding:1.5px;pointer-events:none;position:absolute;transition:opacity .4s ease;z-index:0}.project__card:hover .project__card-beam{animation-play-state:running;opacity:1}@keyframes beam-spin{to{transform:rotate(1turn)}}.experience__container{margin-left:auto;margin-right:auto;max-width:900px;padding:1rem}.experience__tabs{display:flex;justify-content:center;margin-bottom:var(--mb-2);position:relative;z-index:10}.experience__button{background:var(--container-color);border:1px solid #0000;border-radius:.75rem;box-shadow:0 2px 10px #0000000d;color:var(--title-color);cursor:pointer;font-size:var(--normal-font-size);font-weight:var(--font-medium);margin:0 var(--mb-1);padding:.75rem 1.5rem;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.experience__button:hover{background-color:var(--primary-color);box-shadow:0 8px 20px rgba(var(--primary-color-rgb),.3);color:var(--container-color);transform:translateY(-3px)}.experience__icon{font-size:1.2rem;margin-right:var(--mb-0-25);transition:transform .3s ease}.experience__button:hover .experience__icon{transform:translateY(-2px)}.experience__active{background-color:var(--primary-color);box-shadow:0 8px 20px rgba(var(--primary-color-rgb),.3);color:var(--container-color);transform:translateY(-3px)}.experience__sections{display:grid;grid-template-columns:.85fr;justify-content:center;position:relative;z-index:5}.experience__content{display:none;opacity:0;transform:translateY(20px);transition:all .5s cubic-bezier(.4,0,.2,1)}.experience__content-active{animation:fadeIn .5s ease-out forwards;display:block;opacity:1;transform:translateY(0)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.experience__data{grid-column-gap:1.5rem;column-gap:1.5rem;display:grid;grid-template-columns:1fr max-content 1fr;margin-bottom:2rem}.experience__data:last-child{margin-bottom:0}.experience__title-container{align-items:center;display:flex;gap:.75rem;margin-bottom:var(--mb-0-5)}.experience__title{color:var(--title-color);font-size:var(--h3-font-size);font-weight:var(--font-medium);margin-bottom:var(--mb-0-5);position:relative}.experience__project-button{align-items:center;background-color:var(--primary-color);border:none;border-radius:.5rem;box-shadow:0 4px 10px rgba(var(--primary-color-rgb),.2);color:var(--container-color);cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:500;gap:.25rem;padding:.35rem .75rem;transition:all .3s ease;white-space:nowrap}.experience__project-button i{font-size:1rem;transition:transform .3s ease}.experience__project-button:hover{background-color:rgba(var(--primary-color-rgb),.9);box-shadow:0 6px 15px rgba(var(--primary-color-rgb),.25);transform:translateY(-3px)}.experience__project-button:hover i{transform:translateX(3px)}[data-theme=dark] .experience__project-button{box-shadow:0 4px 10px #ffffff1a}[data-theme=dark] .experience__project-button:hover{box-shadow:0 6px 15px #ffffff26}.experience__subtitle{align-items:center;background-color:rgba(var(--primary-color-rgb),.08);border-radius:2rem;display:inline-flex;font-size:var(--small-font-size);margin-bottom:var(--mb-0-5);padding:.35rem .75rem;transition:all .3s ease}.experience__subtitle:hover{background-color:rgba(var(--primary-color-rgb),.15)}.experience__calendar{align-items:center;color:var(--text-color-light);display:flex;font-size:var(--smaller-font-size);gap:.25rem;margin-bottom:var(--mb-0-75)}.experience__description{font-size:var(--small-font-size);margin-bottom:var(--mb-1);opacity:.9;padding-left:1rem}.experience__description li{line-height:1.5;list-style-type:none;margin-bottom:.75rem;padding-left:1rem;position:relative}.experience__description li:before{background-color:var(--primary-color);border-radius:50%;content:"";height:6px;left:0;position:absolute;top:.6rem;width:6px}.experience__rounder{background-color:var(--primary-color);border-radius:50%;box-shadow:0 0 0 4px rgba(var(--primary-color-rgb),.1);display:inline-block;height:16px;position:relative;transition:all .3s ease;width:16px;z-index:2}.experience__data:hover .experience__rounder{transform:scale(1.3)}.experience__line{background-color:var(--primary-color);display:block;height:100%;opacity:.5;transform:translate(7px,-7px);width:2px}.experience__company-logo{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));height:32px;margin-right:.75rem;object-fit:contain;transition:transform .3s ease;vertical-align:middle;width:32px}.experience__subtitle:hover .experience__company-logo{transform:scale(1.1)}@media screen and (max-width:992px){.experience__container{margin-left:auto;margin-right:auto}}@media screen and (max-width:768px){.experience__container{margin-left:auto;margin-right:auto;padding:0}.experience__tabs{flex-wrap:wrap;gap:.75rem}.experience__button{flex:1 1 12rem;justify-content:center;margin:0}.experience__data{grid-template-columns:1fr;margin-bottom:2.5rem;row-gap:1rem}.experience__data>div:empty,.experience__data>div:nth-child(2){display:none}.experience__title-container{align-items:flex-start;flex-direction:column;gap:.5rem}.experience__project-button{align-self:flex-start}.experience__subtitle{flex-wrap:wrap}.experience__description{padding-left:0}}@media screen and (max-width:576px){.experience__sections{grid-template-columns:1fr}.experience__button{font-size:var(--small-font-size);padding:.6rem 1.2rem}.experience__title{font-size:1.1rem}.experience__company-logo{height:28px;margin-right:.5rem;width:28px}}@media screen and (max-width:350px){.experience__data{gap:.5rem}}.experience.section{opacity:0;transform:translateY(30px);transition:all .9s cubic-bezier(.17,.85,.438,.99)}.experience.section.animate{opacity:1;transform:translateY(0)}.experience__line{transform:translate(7px,-7px) scaleY(0);transform-origin:top center;transition:transform .7s cubic-bezier(.4,0,.2,1)}.experience.section.animate .experience__line{transform:translate(7px,-7px) scaleY(1)}.experience__rounder{transform:scale(0);transition:transform .45s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease}.experience__data:hover .experience__rounder{box-shadow:0 0 0 6px rgba(var(--primary-color-rgb),.2);transform:scale(1.3)!important}.experience.section.animate .experience__rounder{transform:scale(1)}.experience__data{opacity:0;transform:translateY(18px);transition:opacity .5s ease,transform .5s ease}.experience.section.animate .experience__data:first-child{opacity:1;transform:translateY(0);transition-delay:.15s}.experience.section.animate .experience__data:nth-child(2){opacity:1;transform:translateY(0);transition-delay:.27s}.experience.section.animate .experience__data:nth-child(3){opacity:1;transform:translateY(0);transition-delay:.39s}.experience.section.animate .experience__data:nth-child(4){opacity:1;transform:translateY(0);transition-delay:.51s}.experience.section.animate .experience__data:nth-child(5){opacity:1;transform:translateY(0);transition-delay:.63s}.experience.section.animate .experience__data:first-child .experience__rounder{transition-delay:.25s}.experience.section.animate .experience__data:nth-child(2) .experience__rounder{transition-delay:.37s}.experience.section.animate .experience__data:nth-child(3) .experience__rounder{transition-delay:.49s}.experience.section.animate .experience__data:nth-child(4) .experience__rounder{transition-delay:.61s}.experience.section.animate .experience__data:nth-child(5) .experience__rounder{transition-delay:.73s}.experience.section.animate .experience__data:first-child .experience__line{transition-delay:.3s}.experience.section.animate .experience__data:nth-child(2) .experience__line{transition-delay:.42s}.experience.section.animate .experience__data:nth-child(3) .experience__line{transition-delay:.54s}.experience.section.animate .experience__data:nth-child(4) .experience__line{transition-delay:.66s}.project-details__container{animation:fadeSlideUp .5s cubic-bezier(.165,.84,.44,1);background-color:var(--body-color);bottom:0;left:0;overflow-y:auto;position:fixed;right:0;scroll-behavior:smooth;scrollbar-color:var(--primary-color) var(--container-color);scrollbar-width:thin;top:0;z-index:1000}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(30px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes pulseGlow{0%{box-shadow:0 0 0 0 rgba(var(--primary-color-rgb),.2)}70%{box-shadow:0 0 0 10px rgba(var(--primary-color-rgb),0)}to{box-shadow:0 0 0 0 rgba(var(--primary-color-rgb),0)}}@keyframes shimmer{0%{background-position:-100% 0}to{background-position:200% 0}}.project-details__header{backdrop-filter:blur(22px) saturate(180%);-webkit-backdrop-filter:blur(22px) saturate(180%);background:#f6f6f6b8;border-bottom:1px solid #0000000f;box-shadow:0 4px 24px #00000012;overflow:hidden;padding:2rem 0 0;position:sticky;top:0;z-index:10}[data-theme=dark] .project-details__header{background:#1e1e236b;border-bottom:1px solid #ffffff1f;box-shadow:0 4px 30px #00000073,inset 0 -1px 0 #ffffff0f}.pdp__progress{background:linear-gradient(90deg,var(--primary-color) 0,rgba(var(--primary-color-rgb),.55) 100%);border-radius:0 2px 0 0;display:block;height:3px;margin-top:1.5rem;transition:width .08s linear}.pdp__sections-nav{display:flex;flex-direction:column;gap:.7rem;position:fixed;right:1.25rem;top:50%;transform:translateY(-50%);z-index:1002}.pdp__section-dot{background:rgba(var(--primary-color-rgb),.22);border:1.5px solid rgba(var(--primary-color-rgb),.35);border-radius:50%;cursor:pointer;height:10px;padding:0;position:relative;transition:all .3s cubic-bezier(.34,1.56,.64,1);width:10px}.pdp__section-dot--active,.pdp__section-dot:hover{background:var(--primary-color);border-color:var(--primary-color);transform:scale(1.45)}.pdp__section-dot-label{background:var(--container-color);border:1px solid var(--border-color);border-radius:5px;box-shadow:0 2px 8px #0000001a;color:var(--text-color);font-size:.72rem;font-weight:500;opacity:0;padding:.2rem .55rem;pointer-events:none;position:absolute;right:1.6rem;top:50%;transform:translateY(-50%);transition:opacity .18s ease;white-space:nowrap}.pdp__section-dot:hover .pdp__section-dot-label{opacity:1}@media screen and (max-width:768px){.pdp__sections-nav{display:none}}.pdp__parallax-wrap{margin-bottom:-80px;padding-bottom:80px;will-change:transform}.project-details__header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 2rem}.project-details__header h1{color:var(--title-color);font-size:2.2rem;font-weight:700;letter-spacing:-.5px;margin:0;position:relative;text-shadow:0 2px 4px #0000001a}[data-theme=dark] .project-details__header h1{color:#fff}.project-details__close{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#fff3;border:none;border-radius:50%;color:var(--title-color);cursor:pointer;display:flex;height:44px;justify-content:center;transition:all .3s cubic-bezier(.175,.885,.32,1.275);width:44px}[data-theme=dark] .project-details__close{background:#0000004d;color:#fff}.project-details__close:hover{background:#ffffff4d;transform:rotate(90deg) scale(1.1)}[data-theme=dark] .project-details__close:hover{background:#fff3}.project-details__close i{font-size:1.5rem}.project-details__body{margin:0 auto;max-width:1200px;padding:3rem 2rem}.project-details__main-image{background-color:var(--container-color);border-radius:16px;box-shadow:var(--card-shadow);margin-bottom:3rem;overflow:hidden;position:relative;transform:translateY(0);transition:transform .5s cubic-bezier(.19,1,.22,1);width:100%}.project-details__main-image:hover{transform:translateY(-5px)}.project-details__main-image:after{animation:shimmer 3s infinite;background:linear-gradient(120deg,rgba(var(--primary-color-rgb),0) 30%,rgba(var(--primary-color-rgb),.07) 50%,rgba(var(--primary-color-rgb),0) 70%);background-size:200% 100%;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.project-details__main-image img{display:block;transition:transform .7s ease;width:100%}.project-details__main-image object{background-color:var(--container-color);border-radius:12px;box-shadow:0 4px 15px #0000001a;transition:all .3s ease}.project-details__main-image:hover object{box-shadow:0 6px 25px #00000026}.project-details__content{grid-gap:3rem;display:grid;gap:3rem;grid-template-columns:1fr}.project-details__section{animation:sectionFadeIn .5s cubic-bezier(.19,1,.22,1) forwards;margin-bottom:0;opacity:0;transform:translateY(20px)}.project-details__section:first-child{animation-delay:.1s}.project-details__section:nth-child(2){animation-delay:.2s}.project-details__section:nth-child(3){animation-delay:.3s}.project-details__section:nth-child(4){animation-delay:.4s}.project-details__section:nth-child(5){animation-delay:.5s}@keyframes sectionFadeIn{to{opacity:1;transform:translateY(0)}}.project-details__section h2{color:var(--title-color);font-size:1.8rem;font-weight:700;letter-spacing:-.5px;margin-bottom:1.5rem;padding-bottom:.5rem;position:relative}.project-details__section h2:after{background-color:var(--primary-color);border-radius:3px;bottom:0;content:"";height:3px;left:0;position:absolute;transition:width .3s ease;width:60px}.project-details__section:hover h2:after{width:100px}.project-details__section p{color:var(--text-color);font-size:1.05rem;line-height:1.7}.project-details__features{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));list-style:none;padding:0}.project-details__features li{align-items:flex-start;background-color:var(--container-color);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 2px 10px #00000008;color:var(--text-color);display:flex;gap:.5rem;overflow:hidden;padding:1.25rem;position:relative;transition:transform .3s ease,box-shadow .3s ease}.project-details__features li:hover{box-shadow:0 5px 15px #0000000d;transform:translateY(-3px)}.project-details__features i{animation:pulseGlow 2s infinite;color:var(--primary-color);font-size:1.2rem;margin-top:.2rem}.project-details__tech{display:flex;flex-wrap:wrap;gap:.8rem}.project-details__tech-item{background-color:var(--container-color);border:1px solid var(--border-color);border-radius:50px;color:var(--title-color);font-size:.9rem;font-weight:500;overflow:hidden;padding:.6rem 1.1rem;position:relative;transition:all .3s ease}.project-details__tech-item:before{background:linear-gradient(120deg,rgba(var(--primary-color-rgb),0) 0,rgba(var(--primary-color-rgb),.07) 50%,rgba(var(--primary-color-rgb),0) 100%);content:"";height:100%;left:0;position:absolute;top:0;transform:translateX(-100%);transition:transform .6s ease;width:100%}.project-details__tech-item:hover:before{transform:translateX(100%)}.project-details__tech-item:hover{box-shadow:0 3px 10px #00000014;transform:translateY(-2px)}[data-theme=dark] .project-details__tech-item{border:1px solid #ffffff14}.project-details__links{display:flex;flex-wrap:wrap;gap:1.2rem}.project-details__link{align-items:center;background-color:var(--primary-color);border:1px solid #0000;border-radius:8px;color:var(--secondary-color);display:inline-flex;font-weight:var(--font-semi-bold);gap:.8rem;overflow:hidden;padding:.8rem 1.6rem;position:relative;text-decoration:none;transition:all .3s cubic-bezier(.175,.885,.32,1.275);z-index:1}.project-details__link:before{background:linear-gradient(120deg,#0000,#ffffff1a 50%,#0000);content:"";height:100%;left:0;position:absolute;top:0;transform:translateX(-100%);transition:transform .6s ease;width:100%;z-index:-1}.project-details__link:hover:before{transform:translateX(100%)}.project-details__link:hover{background-color:var(--primary-color-alt);box-shadow:var(--button-hover-shadow);transform:translateY(-3px) scale(1.03)}.project-details__link i{font-size:1.2rem}[data-theme=dark] .project-details__link:focus{outline:1px solid #ffffff80}.project-details__screenshots{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.project-details__screenshot{border:1px solid #0000000d;border-radius:5px;width:100%}.project-details__readme{background-color:var(--container-color);border:1px solid var(--border-color);border-radius:12px;color:var(--text-color);font-size:.95rem;line-height:1.6;margin-top:1rem;padding:1.5rem}.project-details__readme h1{color:var(--title-color);font-size:1.8rem;margin-bottom:1rem}.project-details__readme h2{color:var(--title-color);font-size:1.5rem;margin-bottom:1rem;margin-top:1.5rem}.project-details__readme h3{color:var(--title-color);font-size:1.2rem;margin-bottom:.8rem;margin-top:1.2rem}.project-details__readme p{margin-bottom:1rem}.project-details__readme ul{margin-bottom:1rem;padding-left:1.5rem}.project-details__readme li{margin-bottom:.5rem}.project-details__readme code{background-color:#0000000d;border-radius:4px;font-family:Fira Code,Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:.9em;padding:.2rem .4rem}.project-details__readme pre{background-color:#0000000d;border-radius:8px;margin-bottom:1rem;overflow-x:auto;padding:1rem}.project-details__readme pre code{background-color:initial;border-radius:0;font-size:.9rem;line-height:1.5;padding:0}[data-theme=dark] .project-details__readme code,[data-theme=dark] .project-details__readme pre{background-color:#ffffff0d}.project-details__readme strong{color:var(--title-color);font-weight:600}.project-details__readme a{color:var(--first-color);text-decoration:none}.project-details__readme a:hover{text-decoration:underline}@media screen and (max-width:768px){.project-details__readme{padding:1rem}.project-details__readme h1{font-size:1.5rem}.project-details__readme h2{font-size:1.3rem}.project-details__readme h3{font-size:1.1rem}}.project-details__readme::-webkit-scrollbar{width:8px}.project-details__readme::-webkit-scrollbar-track{background:var(--container-color);border-radius:10px}.project-details__readme::-webkit-scrollbar-thumb{background-color:var(--primary-color);border:2px solid var(--container-color);border-radius:10px}.project-details__readme:hover{box-shadow:inset 0 0 15px #0000000d}[data-theme=dark] .project-details__readme{border:1px solid #ffffff0d;box-shadow:inset 0 0 10px #ffffff03}[data-theme=dark] .project-details__readme:hover{box-shadow:inset 0 0 15px #ffffff08}.markdown-content{color:var(--text-color);font-family:var(--body-font);font-size:1rem;line-height:1.8}.markdown-content h1,.markdown-content h2,.markdown-content h3{color:var(--title-color);font-weight:700;line-height:1.4;margin-bottom:1rem;margin-top:2rem}.markdown-content h1{border-bottom:2px solid var(--border-color);font-size:1.8rem;margin-bottom:1.5rem;padding-bottom:.75rem}.markdown-content h2{font-size:1.5rem}.markdown-content h3{font-size:1.3rem}.markdown-content ol,.markdown-content ul{color:var(--text-color);margin:1.5rem 0;padding-left:2rem}.markdown-content li{margin-bottom:.7rem;position:relative}.markdown-content li::marker{color:var(--primary-color)}.markdown-content a{color:var(--primary-color);font-weight:500;position:relative;transition:all .2s ease}.markdown-content a,.markdown-content a:hover{text-decoration:none}.markdown-content a:after{background-color:var(--primary-color);bottom:-2px;content:"";height:1px;left:0;position:absolute;transform:scaleX(0);transform-origin:right;transition:transform .3s ease;width:100%}.markdown-content a:hover:after{transform:scaleX(1);transform-origin:left}.markdown-content code{background-color:var(--code-bg);border-radius:4px;color:var(--code-color);font-family:Fira Code,monospace;font-size:.9em;font-weight:500;padding:.2rem .4rem}.markdown-content pre code{background-color:var(--code-bg);border:1px solid var(--border-color);border-radius:8px;display:block;line-height:1.5;overflow-x:auto;padding:1.2rem}.markdown-content br{display:block;margin-top:.5rem}.project-details__readme pre{display:none}@media screen and (max-width:992px){.project-details__features{grid-template-columns:repeat(2,1fr)}}@media screen and (max-width:768px){.project-details__header{padding:1.5rem 0}.project-details__header-content{padding:0 1.5rem}.project-details__header h1{font-size:1.6rem}.project-details__body{padding:2rem 1.5rem}.project-details__features{grid-template-columns:1fr}.project-details__section h2{font-size:1.5rem}.project-details__links{flex-direction:column;gap:1rem}.project-details__link{justify-content:center;width:100%}.project-details__readme{padding:1.5rem}.indoornav-svg{height:auto!important;min-height:400px}}@media screen and (max-width:480px){.project-details__header h1{font-size:1.4rem}.project-details__tech{gap:.6rem}.project-details__tech-item{font-size:.8rem;padding:.5rem .8rem}}.project-details__header-icon{align-items:center;color:var(--title-color);display:inline-flex;font-size:1.2rem;margin-right:.5rem;opacity:.8}[data-theme=dark] .project-details__header-icon{color:#fff}.project-details__category-badge{backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);border:1px solid #ffffff1a;border-radius:30px;box-shadow:0 4px 12px #00000026;font-size:.85rem;font-weight:600;letter-spacing:.5px;padding:.5rem 1rem;position:absolute;right:1.25rem;text-transform:uppercase;top:1.25rem;transform:translateY(0);transition:transform .3s cubic-bezier(.175,.885,.32,1.275);z-index:5}.project-details__category-badge,[data-theme=dark] .project-details__category-badge{background-color:var(--primary-color);color:var(--container-color)}[data-theme=light] .project-details__category-badge{background-color:var(--primary-color);color:#fff}.project-details__main-image:hover .project-details__category-badge{transform:translateY(-3px)}.project-details__section h2 i{color:var(--primary-color);font-size:1.3rem;margin-right:.75rem;opacity:.9;position:relative;top:2px}.project-details__footer{border-top:1px solid var(--border-color);display:flex;justify-content:center;margin-top:3rem;padding-top:2rem}.project-details__back-button{align-items:center;background-color:initial;border:1px solid var(--border-color);border-radius:8px;color:var(--text-color);cursor:pointer;display:inline-flex;font-size:1rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.project-details__back-button:hover{background-color:var(--container-color);box-shadow:0 4px 12px #0000000d;color:var(--primary-color);transform:translateY(-2px)}.project-details__back-button i{font-size:1.1rem;transition:transform .3s ease}.project-details__back-button:hover i{transform:translateX(-3px)}.project-details__link--demo{background-color:initial;border:1px solid var(--primary-color);color:var(--primary-color)}.project-details__link--demo:hover{background-color:var(--primary-color);color:var(--secondary-color)}.indoornav-svg{overflow:visible!important}@media screen and (max-width:992px){.indoornav-svg{height:auto!important;min-height:450px}}@media screen and (max-width:768px){.indoornav-svg{height:auto!important;min-height:500px}}@media screen and (max-width:480px){.indoornav-svg{min-height:550px}}.code-visualization{background-color:#1e1e1e;border-radius:10px;box-shadow:0 5px 15px #0003;margin:0 auto;max-width:100%;overflow:hidden;width:100%}.code-block{font-family:Fira Code,Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:14px;line-height:1.5;margin:0;overflow-x:auto;padding:25px;white-space:pre}[data-theme=dark] .code-block{background-color:#1e1e1e;color:#f8f8f2}[data-theme=light] .code-block{background-color:#f8f8f8;color:#333}.code-block .keyword{color:#ff79c6}.code-block .function{color:#50fa7b}.code-block .string{color:#f1fa8c}.code-block .comment{color:#6272a4}.code-block .variable{color:#8be9fd}.implementation-steps{color:var(--text-color);list-style-type:decimal;margin:1.5rem 0;padding-left:1.5rem}.implementation-steps li{line-height:1.5;margin-bottom:1rem}.project-details__code-showcase{background-color:var(--container-color);border:1px solid var(--border-color);border-radius:12px;margin-top:1rem;padding:1.5rem}.project-details__code-showcase h3{color:var(--title-color);font-size:1.2rem;font-weight:600;margin-bottom:1rem;margin-top:0}.image-carousel{border-radius:12px;box-shadow:0 4px 15px #0000001a;overflow:hidden;position:relative;width:100%}.carousel-image{border-radius:12px;display:block;transition:all .3s ease;width:100%}.carousel-controls{align-items:center;background:linear-gradient(0deg,#00000080,#0000);border-bottom-left-radius:12px;border-bottom-right-radius:12px;bottom:0;display:flex;justify-content:space-between;left:0;padding:1rem;position:absolute;right:0}.carousel-control{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;height:40px;justify-content:center;transition:all .2s ease;width:40px}.carousel-control:hover{background:#ffffff4d;transform:scale(1.05)}.carousel-indicators{display:flex;gap:8px}.carousel-indicator{background-color:#fff6;border-radius:50%;cursor:pointer;height:10px;transition:all .2s ease;width:10px}.carousel-indicator.active{background-color:#fff;transform:scale(1.2)}[data-theme=dark] .carousel-control{background:#ffffff26}[data-theme=dark] .carousel-control:hover{background:#ffffff40}@media screen and (max-width:768px){.carousel-controls{padding:.5rem}.carousel-control{font-size:1.2rem;height:32px;width:32px}.carousel-indicator{height:8px;width:8px}}.blogs__container{grid-gap:2.5rem;display:grid;gap:2.5rem;grid-template-columns:1fr;margin:0 auto;max-width:968px;padding:0 var(--mb-1-5)}.blogs__category-title{color:var(--primary-color);font-size:var(--normal-font-size);font-weight:var(--font-medium);margin-bottom:1.5rem;padding-bottom:1rem;position:relative;text-align:center}.blogs__category-title:after{background-color:var(--primary-color);bottom:0;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);width:60px}.blogs__empty{color:var(--text-color-light);font-size:var(--small-font-size);text-align:center}.blogs__grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr);list-style:none;margin:0;padding:0}.blog__card{background-color:var(--container-color);border:1px solid #0000000d;border-radius:1.25rem;cursor:pointer;display:flex;flex-direction:column;overflow:hidden;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease,border-color .35s ease}.blog__card:hover{border-color:rgba(var(--primary-color-rgb),.25);box-shadow:0 10px 30px #00000014;transform:translateY(-6px)}.blog__card-cover{aspect-ratio:16/9;background:#0000000d;overflow:hidden;width:100%}.blog__card-cover img{height:100%;object-fit:cover;width:100%}.blog__card-body{display:flex;flex:1 1;flex-direction:column;gap:.5rem;padding:1.25rem 1.25rem 1.5rem}.blog__card-date{color:var(--text-color-light);font-size:var(--smaller-font-size);letter-spacing:.02em}.blog__card-title{color:var(--title-color);font-size:var(--h3-font-size);font-weight:var(--font-medium);line-height:1.3}.blog__card-desc{color:var(--text-color);flex:1 1;font-size:var(--small-font-size);line-height:1.5}.blog__card-cta{color:var(--primary-color);font-size:var(--small-font-size);font-weight:var(--font-medium);margin-top:.25rem}.blogs__articles{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr;list-style:none;margin:0;padding:0}.article__item{background-color:var(--container-color);border:1px solid #0000000d;border-radius:1rem;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.article__item:hover{border-color:rgba(var(--primary-color-rgb),.3);box-shadow:0 4px 16px #0000000d;transform:translateX(4px)}.article__link{color:inherit;display:flex;flex-direction:column;gap:.35rem;padding:1rem 1.25rem;text-decoration:none}.article__meta{align-items:center;color:var(--text-color-light);display:flex;font-size:var(--smaller-font-size);gap:.75rem;letter-spacing:.02em}.article__source,.article__title{font-weight:var(--font-medium)}.article__title{color:var(--title-color);font-size:var(--h3-font-size);line-height:1.3;margin:.1rem 0}.article__desc{color:var(--text-color);font-size:var(--small-font-size);line-height:1.5}.article__cta{color:var(--primary-color);font-size:var(--smaller-font-size);font-weight:var(--font-medium);margin-top:.2rem}@media screen and (max-width:768px){.blogs__grid{grid-template-columns:1fr}}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_AMS-Regular.73ea273a72f4aca30ca5.woff2) format("woff2"),url(/static/media/KaTeX_AMS-Regular.d562e886c52f12660a41.woff) format("woff"),url(/static/media/KaTeX_AMS-Regular.853be92419a6c3766b9a.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/static/media/KaTeX_Caligraphic-Bold.a1abf90dfd72792a577a.woff2) format("woff2"),url(/static/media/KaTeX_Caligraphic-Bold.d757c535a2e5902f1325.woff) format("woff"),url(/static/media/KaTeX_Caligraphic-Bold.7489a2fbfb9bfe704420.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Caligraphic-Regular.d6484fce1ef428d5bd94.woff2) format("woff2"),url(/static/media/KaTeX_Caligraphic-Regular.db074fa22cf224af93d7.woff) format("woff"),url(/static/media/KaTeX_Caligraphic-Regular.7e873d3833eb108a0758.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/static/media/KaTeX_Fraktur-Bold.931d67ea207ab37ee693.woff2) format("woff2"),url(/static/media/KaTeX_Fraktur-Bold.354501bac435c3264834.woff) format("woff"),url(/static/media/KaTeX_Fraktur-Bold.4c761b3711973ab04edf.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Fraktur-Regular.172d3529b26f8cedef6b.woff2) format("woff2"),url(/static/media/KaTeX_Fraktur-Regular.6fdf0ac577be0ba82a4c.woff) format("woff"),url(/static/media/KaTeX_Fraktur-Regular.ed305b5434865e06ffde.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/static/media/KaTeX_Main-Bold.39890742bc957b368704.woff2) format("woff2"),url(/static/media/KaTeX_Main-Bold.0c3b8929d377c0e9b2f3.woff) format("woff"),url(/static/media/KaTeX_Main-Bold.8169508bf58f8bd92ad8.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/static/media/KaTeX_Main-BoldItalic.20f389c4120be058d80a.woff2) format("woff2"),url(/static/media/KaTeX_Main-BoldItalic.428978dc7837d46de091.woff) format("woff"),url(/static/media/KaTeX_Main-BoldItalic.828abcb200061cffbaae.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/static/media/KaTeX_Main-Italic.fe2176f79edaa716e621.woff2) format("woff2"),url(/static/media/KaTeX_Main-Italic.fd947498bc16392e76c2.woff) format("woff"),url(/static/media/KaTeX_Main-Italic.fa675e5e4bec9eb250b6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Main-Regular.f650f111a3b890d116f1.woff2) format("woff2"),url(/static/media/KaTeX_Main-Regular.4f35fbcc9ee8614c2bcc.woff) format("woff"),url(/static/media/KaTeX_Main-Regular.9eba1d77abcf2aa6e94e.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/static/media/KaTeX_Math-BoldItalic.dcbcbd93bac0470b462d.woff2) format("woff2"),url(/static/media/KaTeX_Math-BoldItalic.3f07ed67f06c720120ce.woff) format("woff"),url(/static/media/KaTeX_Math-BoldItalic.bf2d440b3a42ea78a998.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/static/media/KaTeX_Math-Italic.6d3d25f4820d0da8f01f.woff2) format("woff2"),url(/static/media/KaTeX_Math-Italic.96759856b4e70f3a8338.woff) format("woff"),url(/static/media/KaTeX_Math-Italic.8a5f936332e8028c7278.ttf) format("truetype")}@font-face{font-display:block;font-family:"KaTeX_SansSerif";font-style:normal;font-weight:700;src:url(/static/media/KaTeX_SansSerif-Bold.95591a929f0d32aa282a.woff2) format("woff2"),url(/static/media/KaTeX_SansSerif-Bold.b9cd458ac6d5889ff9c3.woff) format("woff"),url(/static/media/KaTeX_SansSerif-Bold.5b49f4993ae22d7975b4.ttf) format("truetype")}@font-face{font-display:block;font-family:"KaTeX_SansSerif";font-style:italic;font-weight:400;src:url(/static/media/KaTeX_SansSerif-Italic.7d393d382f3e7fb1c637.woff2) format("woff2"),url(/static/media/KaTeX_SansSerif-Italic.8d593cfaa96238d5e2f8.woff) format("woff"),url(/static/media/KaTeX_SansSerif-Italic.b257a18c016f37ee4543.ttf) format("truetype")}@font-face{font-display:block;font-family:"KaTeX_SansSerif";font-style:normal;font-weight:400;src:url(/static/media/KaTeX_SansSerif-Regular.cd5e231e0cc53b2cb2c0.woff2) format("woff2"),url(/static/media/KaTeX_SansSerif-Regular.02271ec5cb9f5b4588ac.woff) format("woff"),url(/static/media/KaTeX_SansSerif-Regular.2f7bc363fc5424ebda59.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Script-Regular.c81d1b2a4b75d3eded60.woff2) format("woff2"),url(/static/media/KaTeX_Script-Regular.073b3402d036714b4370.woff) format("woff"),url(/static/media/KaTeX_Script-Regular.fc9ba5249878cd8f8d88.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Size1-Regular.6eec866c69313624be60.woff2) format("woff2"),url(/static/media/KaTeX_Size1-Regular.0108e89c9003e8c14ea3.woff) format("woff"),url(/static/media/KaTeX_Size1-Regular.6de7d4b539221a49e9e2.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Size2-Regular.2960900c4f271311eb36.woff2) format("woff2"),url(/static/media/KaTeX_Size2-Regular.3a99e70aee4076660d38.woff) format("woff"),url(/static/media/KaTeX_Size2-Regular.57f5c1837853986ea1db.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Size3-Regular.e1951519f6f0596f7356.woff2) format("woff2"),url(/static/media/KaTeX_Size3-Regular.7947224e8a9914fa332b.woff) format("woff"),url(/static/media/KaTeX_Size3-Regular.8d6b6822586eea3d3b20.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Size4-Regular.e418bf257af1052628d8.woff2) format("woff2"),url(/static/media/KaTeX_Size4-Regular.aeffd8025cba3647f1a6.woff) format("woff"),url(/static/media/KaTeX_Size4-Regular.4ad7c7e8bb8d10a34bb7.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Typewriter-Regular.c295e7f71970f03c0549.woff2) format("woff2"),url(/static/media/KaTeX_Typewriter-Regular.4c6b94fd1d07f8beff7c.woff) format("woff"),url(/static/media/KaTeX_Typewriter-Regular.c5c02d763c89380dcb4e.ttf) format("truetype")}.katex{font:normal 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;position:relative;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.45"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .smash{display:inline;line-height:0}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}.blog-post-shell{background:#fff;inset:0;overflow-y:auto;position:fixed;z-index:1000}.blog-post{color:#1a1a1a;margin:0 auto;max-width:780px;padding:5rem 1.5rem 4rem}.blog-post__topbar{margin-bottom:2rem}.blog-post__back{background:#0000;border:1px solid #0000001a;border-radius:999px;color:var(--title-color);cursor:pointer;font-size:var(--small-font-size);padding:.45rem .9rem;transition:border-color .2s ease,transform .2s ease}.blog-post__back:hover{border-color:var(--primary-color);transform:translateX(-2px)}.blog-post__header{border-bottom:1px solid #00000014;margin-bottom:3rem;padding-bottom:2rem}.blog-post__date{color:var(--text-color-light);font-size:var(--smaller-font-size);letter-spacing:.03em;text-transform:uppercase}.blog-post__title{color:var(--title-color);font-size:clamp(1.8rem,3vw,2.6rem);font-weight:var(--font-semi-bold);letter-spacing:-.01em;line-height:1.15;margin:.6rem 0 .75rem}.blog-post__description{color:var(--text-color-light);font-size:var(--normal-font-size);line-height:1.5}.blog-post__status{color:var(--text-color-light);padding:3rem 0;text-align:center}.blog-post__body{font-size:1.05rem;line-height:1.75}.blog-post__body h1,.blog-post__body h2,.blog-post__body h3,.blog-post__body h4{color:var(--title-color);font-weight:var(--font-semi-bold);line-height:1.25;margin:2.5rem 0 1rem}.blog-post__body h1{font-size:2rem}.blog-post__body h2{font-size:1.55rem}.blog-post__body h3{font-size:1.25rem}.blog-post__body h4{font-size:1.1rem}.blog-post__body p{margin:0 0 1.25rem}.blog-post__body a{border-bottom:1px solid rgba(var(--primary-color-rgb),.35);color:var(--primary-color);text-decoration:none;transition:border-color .2s ease}.blog-post__body a:hover{border-bottom-color:var(--primary-color)}.blog-post__body ol,.blog-post__body ul{margin:0 0 1.25rem;padding-left:1.5rem}.blog-post__body li{margin-bottom:.4rem}.blog-post__body strong{color:var(--title-color);font-weight:var(--font-semi-bold)}.blog-post__body blockquote{border-left:3px solid var(--primary-color);color:var(--text-color-light);font-style:italic;margin:1.5rem 0;padding:.1rem 1.25rem}.blog-post__body code{background:#0000000f;border-radius:4px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.92em;padding:.15rem .4rem}.blog-post__body pre{background:#0f1115;border-radius:.75rem;color:#e6edf3;font-size:.92rem;line-height:1.55;margin:1.5rem 0;overflow-x:auto;padding:1.1rem 1.25rem}.blog-post__body pre code{background:#0000;color:inherit;font-size:inherit;padding:0}.blog-post__body img{border-radius:.75rem;box-shadow:0 10px 30px #00000014;display:block;height:auto;margin:1.5rem auto;max-width:100%}.blog-post__body table{border-collapse:collapse;font-size:.95rem;margin:1.5rem 0;width:100%}.blog-post__body td,.blog-post__body th{border:1px solid #0000001f;padding:.6rem .85rem;text-align:left}.blog-post__body th{background:#0000000a;font-weight:var(--font-semi-bold)}.blog-post__body hr{border:0;border-top:1px solid #0000001a;margin:2.5rem 0}.blog-post__body .katex-display{margin:1.6rem 0;overflow-x:auto;overflow-y:hidden;padding:.25rem 0}[data-theme=dark] .blog-post__body code{background:#ffffff14}[data-theme=dark] .blog-post__body th{background:#ffffff0a}[data-theme=dark] .blog-post__body hr,[data-theme=dark] .blog-post__body td,[data-theme=dark] .blog-post__body th,[data-theme=dark] .blog-post__header{border-color:#ffffff1a}[data-theme=dark] .blog-post__back{border-color:#ffffff26}
/*# sourceMappingURL=main.be95eeeb.css.map*/