@font-face{font-family:"Saira Regular";font-style:normal;font-display:block;src:url("../fonts/saira-regular.woff2") format("woff2");}@font-face{font-family:"Saira Medium";font-style:normal;font-display:block;src:url("../fonts/saira-medium.woff2") format("woff2");}:root{--page-width:min(1200px,80vw);--font-stack-normal:"Saira Regular",sans-serif;--font-stack-medium:"Saira Medium",sans-serif;--size-relative-0:.1em;--size-relative-1:.3em;--size-relative-2:.6em;--size-relative-3:.8em;--size-relative-4:1.5em;--size-relative-5:2em;--size-relative-6:3em;--font-size-fluid-0:clamp(1rem,2vw,1.25rem);--font-size-fluid-1:clamp(1.25rem,2vw,1.5rem);--font-size-fluid-2:clamp(1.5rem,3vw,2rem);--font-size-fluid-3:clamp(2rem,4vw,3rem);--font-size-fluid-4:clamp(2.5rem,5vw,3.5rem);--font-size-fluid-5:clamp(3rem,6vw,5rem);--font-size-fluid-6:clamp(3rem,7vw,5.75rem);}html[data-theme="dark"]{color-scheme:dark;--color-default:hsl(55,100%,95%);--color-accent:hsl(75,100%,65%);--color-success:hsl(75,100%,65%);--color-error:hsl(0,100%,50%);--color-warning:hsl(30,100%,60%);--color-info:hsl(240,100%,60%);--color-accepted:hsl(75,100%,65%);--color-declined:hsl(0,100%,50%);--color-scrollbar:linear-gradient(to right,hsl(75,100%,75%),hsl(75,100%,55%),hsl(75,100%,35%));--color-gray-1:hsl(30,3%,15%);--color-gray-2:hsl(30,3%,25%);--color-gray-3:hsl(30,3%,35%);--color-gray-4:hsl(30,3%,40%);--gradient-dark:linear-gradient(hsl(30,3%,50%),hsl(30,3%,30%));--gradient-light:linear-gradient(hsl(30,3%,58%),hsl(30,3%,38%));--shadow-border:0 0 0 clamp(1px,.2vmin,2px) hsl(30,3%,15%);--shadow-button:0 clamp(1px,.2vmin,2px) clamp(3px,.6vmin,6px) hsl(30,3%,15%),0 0 0 clamp(1px,.2vmin,2px) hsl(30,3%,20%);--shadow-popup:0 clamp(5px,1vmin,10px) clamp(20px,3vmin,30px) hsl(30,3%,20%);--body-background:hsl(30,3%,40%);--background-opacity:.3;--background-filter:invert(0) sepia(.2);--header-background:hsla(30,3%,15%,.5);--avatar-foreground:var(--body-background);--avatar-background:var(--color-default);--avatar-text:var(--body-background);--base-background:linear-gradient(120deg,hsla(55,100%,95%,.1),hsla(75,100%,65%,.2));--base-shadow:0 clamp(2px,.3vmin,3px) clamp(2px,.3vmin,3px) hsla(0,0%,0%,.2);--logo-background:hsl(30,3%,15%);}html[data-theme="light"]{color-scheme:light;--color-default:hsl(0,0%,25%);--color-accent:hsl(25,100%,40%);--color-success:hsl(75,100%,35%);--color-error:hsl(0,100%,35%);--color-warning:hsl(25,100%,40%);--color-info:hsl(240,100%,30%);--color-accepted:hsl(75,100%,35%);--color-declined:hsl(0,100%,35%);--color-scrollbar:linear-gradient(to right,hsl(25,100%,60%),hsl(25,100%,50%),hsl(25,100%,30%));--color-gray-1:hsl(25,5%,80%);--color-gray-2:hsl(25,5%,80%);--color-gray-3:hsl(25,2%,93%);--color-gray-4:hsl(25,5%,93%);--gradient-dark:linear-gradient(hsl(25,5%,90%),hsl(25,5%,70%));--gradient-light:linear-gradient(hsl(25,5%,98%),hsl(25,5%,78%));--shadow-border:0 0 0 clamp(1px,.2vmin,2px) hsl(25,5%,45%);--shadow-button:0 clamp(1px,.2vmin,2px) clamp(3px,.6vmin,6px) hsl(25,5%,30%),0 0 0 clamp(1px,.2vmin,2px) hsl(25,5%,50%);--shadow-popup:0 clamp(5px,1vmin,10px) clamp(20px,3vmin,30px) hsl(25,5%,40%);--body-background:hsl(0,2%,100%);--background-opacity:.1;--background-filter:invert(1);--header-background:hsla(25,5%,70%,.5);--avatar-foreground:var(--color-default);--avatar-background:var(--color-gray-4);--avatar-text:var(--color-default);--base-background:linear-gradient(120deg,hsla(0,0%,25%,.05),hsla(25,100%,40%,.2));--base-shadow:0 clamp(2px,.3vmin,3px) clamp(2px,.3vmin,3px) hsla(0,0%,0%,.2);--logo-background:hsl(25,5%,45%);}::view-transition-group(root){animation-duration:.3s;}*,*::before,*::after{margin:0;padding:0;border:0;box-sizing:border-box;}html{scroll-behavior:smooth;scroll-padding-top:5em;}body{display:grid;place-items:center;font-family:var(--font-stack-normal);font-weight:var(--font-weight-4);line-height:1.3;background-color:var(--body-background);color:var(--color-default);overflow-x:hidden;}.background{position:fixed;display:none;z-index:-1;height:100%;width:100%;top:0;left:0;background-image:url("../images/background.png");background-repeat:no-repeat;background-size:cover;opacity:var(--background-opacity);filter:var(--background-filter);}.icon{display:flex;align-items:center;justify-content:center;}.icon::before{height:var(--icon-size);width:var(--icon-size);background-color:var(--icon-color);}.icon::before{display:inline-block;content:"";mask-size:contain;mask-repeat:no-repeat;mask-position:center;-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;line-height:1;}.icon-spinner::before{mask-image:url("../icons/hourglass.svg");-webkit-mask-image:url("../icons/hourglass.svg");}.icon-home::before{mask-image:url("../icons/home.svg");-webkit-mask-image:url("../icons/home.svg");}.icon-info::before{mask-image:url("../icons/info.svg");-webkit-mask-image:url("../icons/info.svg");}.icon-burger-open::before{mask-image:url("../icons/burger-open.svg");-webkit-mask-image:url("../icons/burger-open.svg");}.icon-burger-close::before{mask-image:url("../icons/burger-close.svg");-webkit-mask-image:url("../icons/burger-close.svg");}.icon-preface::before{mask-image:url("../icons/preface.svg");-webkit-mask-image:url("../icons/preface.svg");}.icon-studies::before{mask-image:url("../icons/studies.svg");-webkit-mask-image:url("../icons/studies.svg");}.icon-projects::before{mask-image:url("../icons/projects.svg");-webkit-mask-image:url("../icons/projects.svg");}.icon-contact::before{mask-image:url("../icons/contact.svg");-webkit-mask-image:url("../icons/contact.svg");}.icon-gear::before{mask-image:url("../icons/point.svg");-webkit-mask-image:url("../icons/point.svg");}.icon-chevron-up::before{mask-image:url("../icons/up.svg");-webkit-mask-image:url("../icons/up.svg");}.icon-chevron-down::before{mask-image:url("../icons/down.svg");-webkit-mask-image:url("../icons/down.svg");}.icon-send::before{mask-image:url("../icons/send.svg");-webkit-mask-image:url("../icons/send.svg");}.icon-phone::before{mask-image:url("../icons/phone.svg");-webkit-mask-image:url("../icons/phone.svg");}.icon-fax::before{mask-image:url("../icons/fax.svg");-webkit-mask-image:url("../icons/fax.svg");}.icon-mobile::before{mask-image:url("../icons/mobile.svg");-webkit-mask-image:url("../icons/mobile.svg");}.icon-email::before{mask-image:url("../icons/mail.svg");-webkit-mask-image:url("../icons/mail.svg");}.icon-close::before{mask-image:url("../icons/close.svg");-webkit-mask-image:url("../icons/close.svg");}.icon-imprint::before{mask-image:url("../icons/gavel.svg");-webkit-mask-image:url("../icons/gavel.svg");}.icon-disclaimer::before{mask-image:url("../icons/shield.svg");-webkit-mask-image:url("../icons/shield.svg");}.icon-cookies::before{mask-image:url("../icons/check.svg");-webkit-mask-image:url("../icons/check.svg");}.icon-thumb-up::before{mask-image:url("../icons/thumb-up.svg");-webkit-mask-image:url("../icons/thumb-up.svg");}.icon-thumb-down::before{mask-image:url("../icons/thumb-down.svg");-webkit-mask-image:url("../icons/thumb-down.svg");}.logo{display:flex;align-items:center;justify-content:center;flex-shrink:0;}.logo::before{display:inline-block;content:"";width:var(--logo-width);height:var(--logo-height);background-color:var(--logo-color);mask-size:contain;mask-repeat:no-repeat;mask-position:center;-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;}.logo-nicepage::before{mask-image:url("../logos/nicepage.png");-webkit-mask-image:url("../logos/nicepage.png");}.logo-wordpress::before{mask-image:url("../logos/wordpress.png");-webkit-mask-image:url("../logos/wordpress.png");}.logo-greensock::before{mask-image:url("../logos/greensock.png");-webkit-mask-image:url("../logos/greensock.png");}.logo-threejs::before{mask-image:url("../logos/threejs.png");-webkit-mask-image:url("../logos/threejs.png");}.logo-vscode::before{mask-image:url("../logos/vscode.png");-webkit-mask-image:url("../logos/vscode.png");}.logo-affinity::before{mask-image:url("../logos/affinity.png");-webkit-mask-image:url("../logos/affinity.png");}.logo-blender::before{mask-image:url("../logos/blender.png");-webkit-mask-image:url("../logos/blender.png");}.logo-claude::before{mask-image:url("../logos/claude.png");-webkit-mask-image:url("../logos/claude.png");}.logo-openai::before{mask-image:url("../logos/openai.png");-webkit-mask-image:url("../logos/openai.png");}.logo-midjourney::before{mask-image:url("../logos/midjourney.png");-webkit-mask-image:url("../logos/midjourney.png");}.logo-elevenlabs::before{mask-image:url("../logos/elevenlabs.png");-webkit-mask-image:url("../logos/elevenlabs.png");}.logo-codepen::before{mask-image:url("../logos/codepen.png");-webkit-mask-image:url("../logos/codepen.png");}.logo-stackoverflow::before{mask-image:url("../logos/stackoverflow.png");-webkit-mask-image:url("../logos/stackoverflow.png");}::-webkit-resizer{display:none;}::-webkit-scrollbar{overflow-x:auto;-webkit-overflow-scrolling:touch;width:1rem;}::-webkit-scrollbar-thumb{background-image:var(--color-scrollbar);}::-webkit-scrollbar-track{background-color:hsl(0,0%,4%);}@-moz-document url-prefix(){html{scrollbar-color:var(--color-accent) hsl(0,0%,4%);scrollbar-width:thin}:root{scrollbar-color:var(--color-accent) hsl(0,0%,4%)!important;scrollbar-width:thin!important}}p,a,ul,li,label,input,textarea,button{font-family:var(--font-stack-normal);font-size:var(--font-size-fluid-1);font-weight:var(--font-weight-4);}h5{font-size:var(--font-size-fluid-2);font-weight:var(--font-weight-4);}h4{font-family:var(--font-stack-medium);font-size:var(--font-size-fluid-2);font-weight:var(--font-weight-5);letter-spacing:-.01em;}h3{font-family:var(--font-stack-medium);font-size:var(--font-size-fluid-3);font-weight:var(--font-weight-5);letter-spacing:-.02em;}h2{font-family:var(--font-stack-medium);font-size:var(--font-size-fluid-3);font-weight:var(--font-weight-5);letter-spacing:-.02em;}h1{font-family:var(--font-stack-medium);font-size:var(--font-size-fluid-5);font-weight:var(--font-weight-5);letter-spacing:-.05em;}blockquote{position:relative;padding:var(--size-relative-2) var(--size-relative-3);background-color:var(--color-gray-4);box-shadow:var(--shadow-border);}blockquote::before{content:"";position:absolute;width:var(--border-size-3);height:100%;left:calc(var(--border-size-2) * -1);top:0;background-color:var(--color-warning);}button{padding:var(--size-relative-2) var(--size-relative-3);line-height:1;color:var(--color-default);background-color:var(--color-gray-1);background-image:var(--gradient-dark);box-shadow:var(--shadow-button);border-radius:var(--size-relative-1);outline:none;cursor:pointer;user-select:none;}button span{font-weight:var(--font-weight-4);line-height:1;}button:hover{background-image:var(--gradient-light);}a{color:var(--color-default);text-decoration:none;outline:none;}a:hover{text-decoration:underline;text-underline-offset:var(--size-relative-1);text-decoration-thickness:var(--border-size-2);}input,textarea{padding:1.25em var(--size-relative-3) var(--size-relative-1);color:var(--color-default);background-color:var(--color-gray-4);outline:var(--border-size-2) solid transparent;box-shadow:var(--shadow-border);caret-color:var(--color-accent);}textarea{resize:none;height:18em;}@media (width <= 800px){textarea{height:15em}}input{margin-bottom:var(--size-relative-2);}input:autofill{color:var(--color-default);box-shadow:inset 0 0 0 100px var(--color-gray-4),var(--shadow-border);-webkit-text-fill-color:var(--color-default);}input:-webkit-autofill,input:-webkit-autofill:focus{transition:background-color 0s 0s,color 0s 0s;transition-delay:calc(infinity * 1s);}input:focus-visible,textarea:focus-visible{outline-color:var(--color-accent);}input::placeholder,textarea::placeholder{display:none;color:transparent}input[type="checkbox"]{display:none;appearance:none;outline:none;-webkit-appearance:none;}input[type="checkbox"] + label{display:flex;align-items:center;justify-content:center;gap:var(--size-relative-1);font-weight:var(--font-weight-4);width:max-content;background-image:var(--gradient-dark);cursor:pointer;user-select:none;}input[type="checkbox"]:hover + label{background-image:var(--gradient-light);}input[type="checkbox"] + label span{--icon-size:1em;--icon-color:var(--color-accent);}input[type="radio"]{display:none;appearance:none;-webkit-appearance:none;}input[type="radio"] + label{display:flex;align-items:center;justify-content:center;padding-block:var(--size-relative-1);line-height:1;border-bottom:var(--border-size-2) solid transparent;cursor:pointer;user-select:none;}input[type="radio"]:checked + label{color:var(--color-accent);border-bottom:var(--border-size-2) solid var(--color-accent);}.toggle + label{margin-top:var(--size-fluid-3);padding:var(--size-relative-2) var(--size-relative-3);border-radius:var(--size-relative-1);box-shadow:var(--shadow-button);line-height:1;}.preloader{position:fixed;display:none;place-items:center;pointer-events:none;inset:0;background-color:var(--color-gray-1);color:var(--color-accent);z-index:var(--layer-5);transition:opacity 1s;}.progress{width:clamp(150px,20vw,200px);height:clamp(150px,20vw,200px);}.progress .track{stroke:color-mix(in srgb,var(--color-accent),transparent 50%);}.progress .percentage{stroke:var(--color-accent);}.progress .label{fill:var(--color-default);font-size:1rem;}.progress .text{fill:var(--color-default);font-size:1.5rem;}.toast,.zoom{position:fixed;display:none;pointer-events:none;z-index:var(--layer-5);bottom:0;left:50%;transform:translateX(-50%);max-width:min(80%,800px);width:max-content;text-align:center;border-radius:var(--size-relative-2);background-color:rgba(0,0,0,.7);color:rgba(255,255,255,.8);padding:var(--size-fluid-1) var(--size-fluid-2);}.zoom{bottom:20vh;}.banner{position:fixed;display:none;grid-template-columns:1fr max-content;z-index:var(--layer-5);width:calc(var(--page-width) - 2 * var(--size-fluid-3));bottom:var(--size-relative-4);left:50%;transform:translateX(-50%);background-color:var(--color-gray-3);border:var(--border-size-2) solid var(--color-default);box-shadow:var(--shadow-popup);padding:var(--size-fluid-3);gap:var(--size-relative-4);}.banner-caption h2{font-size:clamp(2rem,4vw,2.75rem);line-height:.9;}.banner-flag{display:flex;align-items:center;justify-content:left;gap:var(--size-relative-1);}.banner-flag span{--icon-size:1.5em;--icon-color:var(--color-accent);display:flex;align-items:center;justify-content:center;gap:var(--size-relative-1);}.banner-choice{display:flex;flex-direction:column;flex-wrap:wrap;justify-content:left;gap:var(--size-relative-3);}.banner-choice span{--icon-size:1em;--icon-color:var(--color-default);display:flex;align-items:center;justify-content:start;gap:var(--size-relative-1);}.banner-flag[data-status="true"] span{--icon-color:var(--color-accepted);}.banner-flag[data-status="false"] span{--icon-color:var(--color-declined);}@media (width <= 1200px){.banner{grid-template-columns:1fr;width:var(--page-width);top:50%;bottom:unset;left:50%;transform:translate(-50%,-50%);outline:none}.banner-content{max-height:300px;padding-right:var(--size-fluid-3);overflow-y:auto}.banner-choice{flex-direction:row;justify-content:center}}@media (width <= 800px){.banner-choice span::before{display:none}}.popup{position:fixed;display:none;flex-direction:column;z-index:var(--layer-5);width:calc(var(--page-width) - 2 * var(--size-fluid-2));height:75%;top:50%;left:50%;transform:translate(-50%,-50%);background-color:var(--color-gray-3);border:var(--border-size-2) solid var(--color-default);box-shadow:var(--shadow-popup);padding:var(--size-fluid-3);gap:var(--size-relative-4);}.popup-close{--icon-size:max(2rem,min(3vw,2.5rem));--icon-color:var(--color-default);position:absolute;top:calc(var(--icon-size) / 2 * -1 - 1px);right:calc(var(--icon-size) / 2 * -1 - 1px);background-color:var(--color-gray-3);border-radius:50%;transition:rotate .2s ease-in-out;cursor:pointer;user-select:none;}.popup-close:hover{rotate:180deg;}.popup-caption{line-height:.9;}.popup-content{overflow-x:hidden;height:100%;padding-right:var(--size-fluid-3);}.popup-content p,li{text-wrap:pretty;}.popup-content ul{display:flex;flex-direction:column;gap:1em;list-style-position:outside;list-style-type:disclosure-closed;margin-left:1em;}.popup-content h4{font-size:clamp(1.25rem,2vw,1.5rem);}.popup-content h3{font-size:clamp(1.5rem,3vw,1.75rem);}.popup-caption h2{font-size:clamp(2rem,4vw,2.75rem);}@media (width <= 1200px){.popup{width:var(--page-width)}}main{display:none;container-type:inline-size;width:var(--page-width);}section{position:relative;display:grid;padding-block:clamp(3rem,5vw,6rem);border-bottom:var(--border-size-2) dotted var(--color-accent);}.section-icon{--icon-size:clamp(3rem,5vw,4.5rem);--icon-color:var(--color-default);position:relative;place-items:center;animation:point 1.5s infinite;animation-timing-function:linear(0,.409 5.7%,.68 10.7%,.838 15.5%,.877 17.9%,.89 20.3%,.883 22.1%,.862 24%,.775 28.1%,.103 46.8%,-.03 51.9%,-.11 56.9%,-.142 61.2%,-.143 65.9%,-.124 70.2%,-.021 86%,-.004 92.1%,0);}@keyframes point{100%{transform:translateX(10px)}}.section-title{align-self:center;color:var(--color-default);}.section-article{display:flow-root;grid-column:2;font-size:var(--font-size-fluid-1);text-wrap:pretty;text-align:justify;}@media (width <= 1200px){.section-article{text-align:left}}@media (width <= 1000px){section{grid-template-columns:max-content 1fr}.section-article{grid-column:1 / span 2}}.spacer-small{grid-column:2;padding-top:var(--size-fluid-1)}.spacer-large{grid-column:2;padding-top:var(--size-fluid-4)}header{display:none;grid-template-columns:1fr var(--page-width) 1fr;position:sticky;z-index:var(--layer-2);top:0;width:100%;padding:var(--size-relative-4);background-color:var(--header-background);backdrop-filter:blur(10px)}.navigation{position:relative;display:flex;align-items:center;flex-wrap:wrap;grid-column:2;}.navigation li{font-weight:var(--font-weight-4);}.navigation li:hover{text-decoration:none;}.navigation-large{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--size-relative-3);border-radius:var(--size-relative-1);list-style-type:none;}.navigation-large li{position:relative;display:flex;align-items:center;justify-content:center;gap:var(--size-relative-1);padding:var(--size-relative-2) var(--size-relative-3);line-height:1;color:var(--color-default);background-color:var(--color-gray-1);background-image:var(--gradient-dark);outline:none;cursor:pointer;user-select:none;}.navigation-large li:hover{background-image:var(--gradient-light);}.navigation-large li[data-target="home"]{border-radius:100%;aspect-ratio:1;padding:.8em;box-shadow:var(--shadow-button);}.navigation-large li[data-target="home"] svg{width:1.8em;aspect-ratio:1;}.navigation-large li[data-target="home"] svg path:first-child{fill:var(--color-accent);}.navigation-large li[data-target="home"] svg path:last-child{fill:var(--color-default);}.navigation-group{display:flex;border-radius:var(--size-relative-1);box-shadow:var(--shadow-button);}.navigation-group li:first-child{border-radius:var(--size-relative-1) 0 0 var(--size-relative-1);}.navigation-group li:last-child{border-radius:0 var(--size-relative-1) var(--size-relative-1) 0;}.navigation-group li:not(li:last-child)::after{position:absolute;z-index:var(--layer-1);content:"";right:-1.5px;height:1.2em;border-right:3px solid var(--color-accent);}@media (width <= 800px){.navigation-large{display:none}}.navigation-small{display:none;}#burger-check + label{padding:var(--size-relative-2);border-radius:var(--size-relative-1);box-shadow:var(--shadow-button);}.dropdown{position:absolute;display:none;z-index:var(--layer-5);margin-top:var(--size-relative-4);top:calc(100% + var(--border-size-4));left:0;outline:var(--border-size-2) solid var(--color-default);box-shadow:var(--shadow-popup);}.dropdown ul{display:flex;flex-direction:column;justify-content:center;flex-wrap:wrap;padding:var(--size-relative-3);background-color:var(--color-gray-2);list-style-type:none;}.dropdown li{display:block;width:100%;padding:var(--size-relative-2) var(--size-relative-3);font-size:var(--font-size-fluid-2);cursor:pointer;user-select:none;}.dropdown li:hover{text-decoration:unset;background-color:var(--color-gray-3);}@media (width <= 800px){.navigation-small{display:block}}.options{display:flex;align-items:center;justify-content:center;gap:var(--size-relative-6);margin-left:auto;}.theme{display:flex;align-items:center;justify-content:center;gap:var(--size-relative-3);}.theme svg{font-size:var(--font-size-fluid-1);height:var(--font-size-fluid-1);}.language{display:flex;align-items:center;justify-content:center;gap:var(--size-relative-3);}.language label{font-weight:var(--font-weight-4);}footer{display:none;flex-direction:column;justify-content:center;flex-wrap:wrap;gap:var(--size-relative-5);width:100%;padding-block:var(--size-relative-5);}.links{display:flex;flex-wrap:wrap;justify-content:center;column-gap:var(--size-relative-3);}.links div{display:flex;align-items:center;font-size:var(--font-size-fluid-1);cursor:pointer;user-select:none;}.links span{--icon-size:max(2rem,min(3vw,2.5rem));--icon-color:var(--color-accent);padding:var(--size-relative-1);border-radius:50%;}.links div:hover{text-decoration:underline;text-underline-offset:var(--size-relative-1);text-decoration-thickness:var(--border-size-2);}@media (width <= 800px){.address{flex-direction:column;align-items:start;gap:unset;margin:0 auto}.address>*:not(:last-child){padding-right:unset;border-right:unset}}.marquee{--marquee-width:var(--page-width);--logo-width:200px;--logo-height:100px;--logo-padding:1em;--items-gap:var(--size-relative-3);--item-width:calc(var(--logo-width) + 2 * var(--logo-padding));--item-height:calc(var(--logo-height) + 2 * var(--logo-padding));position:relative;overflow:hidden;width:var(--marquee-width);margin-bottom:var(--size-relative-5);}.marquee-content{display:flex;gap:var(--items-gap);list-style:none;animation:scroll 30s linear infinite;}.marquee-content li{--logo-color:var(--logo-background);display:flex;justify-content:center;align-items:center;flex-shrink:0;padding:var(--logo-padding);opacity:.7}@keyframes scroll{0%{transform:translateX(0)}100%{transform:translateX(calc(-1 * (var(--item-width) + var(--items-gap)) * var(--original-items-count)))}}@media (width <= 1000px){.marquee{display:none}}#home{grid-template-columns:auto;grid-template-rows:auto 1fr auto;justify-content:center;align-content:start;user-select:none;height:85svh;max-height:850px;padding-block:clamp(3rem,4vw,6rem);}.home-title{--line-thikness:clamp(.15rem,.2vw,.2rem);visibility:hidden;display:grid;grid-template-columns:1fr max-content 1fr;align-items:center;justify-items:center;justify-self:center;transform:skew(-3deg);}.home-title-head{grid-column:1 / span 3;text-wrap:nowrap;place-self:center;font-size:clamp(3.5rem,6vw,5rem);line-height:1.1;}.home-title-tag{margin-inline:.2em;font-family:var(--font-stack-normal);font-size:var(--font-size-fluid-3);font-weight:var(--font-weight-4);font-size:clamp(2.5rem,4vw,3rem);line-height:1.1;}.home-title-line{border-top:var(--line-thikness) solid var(--color-accent);justify-self:normal;}@media (width <= 450px){.home-title-head{font-size:clamp(2.75rem,5vw,4.5rem)}.home-title-tag{font-size:clamp(1.75rem,3vw,2.5rem)}}.home-content,.home-message{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;}.home-content video{display:block;width:60%;margin-left:var(--size-fluid-5);filter:hue-rotate(270deg) brightness(1) opacity(.2) grayscale(1) sepia(.2);}.home-message{display:none;width:100%;height:100%;}@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(0)}}.home-message-text{text-align:center;}.home-message-start{--icon-size:1em;--icon-color:var(--color-accent);display:flex;align-items:center;justify-content:center;gap:var(--size-relative-1);width:fit-content;}.home-base{--pad-size:clamp(150px,20vmin,250px);justify-self:center;perspective:800px;}.home-base-inner{position:relative;display:flex;align-items:center;justify-content:center;width:var(--pad-size);height:calc(var(--pad-size) * .5);transform-style:preserve-3d;transform-origin:center top;transform:rotateX(60deg);}.home-base-inner .circle{position:absolute;background:var(--base-background);border-radius:50%;box-shadow:var(--base-shadow);aspect-ratio:1;animation:ripple 2.5s ease-in-out infinite;}.home-base-inner .circle:nth-child(1){width:25%;z-index:var(--layer-5);}.home-base-inner .circle:nth-child(2){width:40%;z-index:var(--layer-4);animation-delay:.2s;}.home-base-inner .circle:nth-child(3){width:60%;z-index:var(--layer-3);animation-delay:.4s;}.home-base-inner .circle:nth-child(4){width:80%;z-index:var(--layer-2);animation-delay:.6s;}.home-base-inner .circle:nth-child(5){width:100%;z-index:var(--layer-1);animation-delay:.8s;}@keyframes ripple{0%{transform:scale(1)}50%{transform:scale(1.3)}100%{transform:scale(1)}}.home-arrow{--arrow-width:var(--size-fluid-6);--arrow-height:calc(var(--arrow-width) * .7);--line-thikness:clamp(.15rem,.2vw,.2rem);position:relative;width:var(--arrow-width);height:var(--arrow-height);justify-self:center;cursor:pointer;}.home-arrow svg{position:absolute;top:40%;opacity:0;stroke-width:var(--line-thikness);}.home-arrow-1{stroke:var(--color-default);animation:roll 2s ease-in-out infinite;}.home-arrow-2{stroke:var(--color-accent);animation:roll 2s 1s ease-in-out infinite;}@keyframes roll{0%{opacity:0;top:10%}70%{opacity:1}100%{opacity:0}}.read-more{display:none;flex-direction:column;gap:1em;}.read-more::before{content:"...";}@media (width <= 800px){.clip-text{--preview-lines:35;--line-height:1.3;overflow:hidden;height:calc(var(--preview-lines) * var(--line-height) * 1em)}.read-more{display:flex}}#preface{grid-template-columns:max-content 1fr;place-content:start;gap:var(--size-fluid-2);}.preface-avatar{position:relative;float:right;width:200px;height:250px;margin-top:calc(3cap + .8em);margin-left:var(--size-fluid-2);margin-bottom:var(--size-fluid-2);border:var(--border-size-2) solid var(--color-default)}.preface-avatar::before,.preface-avatar::after{position:absolute;display:block;content:"";width:100%;height:100%;transition:all .5s ease-in-out;}.preface-avatar::before{background-color:var(--avatar-background);}.preface-avatar::after{background-color:var(--avatar-foreground);mask-image:url(../images/unknown.svg);mask-size:250px;mask-repeat:no-repeat;mask-position:center center;}.preface-avatar:hover::after{mask-size:385px;mask-repeat:no-repeat;mask-position:left center;}.preface-avatar span{position:absolute;color:var(--avatar-text);height:100%;padding:0 .2em;font-weight:500;font-size:1.75rem;text-align:center;text-orientation:sideways;writing-mode:vertical-rl;white-space:nowrap;opacity:0;transition:opacity .7s ease-in-out}.preface-avatar:hover span{opacity:1;}.signature-container{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--size-relative-2);width:var(--size-fluid-7);padding-block:var(--size-relative-2);margin-top:var(--size-fluid-1);}.signature-container::after{content:attr(data-signature);bottom:0;font-size:var(--font-size-fluid-1);text-wrap:nowrap;}.signature-container svg{width:auto;height:auto;border-bottom:var(--border-size-2) dotted var(--color-default);}#signature{stroke:var(--color-accent);}@media (width <= 1200px){.preface-avatar{display:none}}#studies{grid-template-columns:max-content 1fr;place-content:start;gap:var(--size-fluid-2);}#projects{grid-template-columns:max-content 1fr;place-content:start;gap:var(--size-fluid-2);}.timeline{--item-width:430px;--item-height:350px;--item-offset:7em;--column-gap:6em;--row-gap:2em;--focus-gap:10px;--line-thikness:var(--border-size-2);position:relative;display:none;justify-self:center;justify-items:center;margin-top:var(--size-fluid-5);margin-bottom:var(--size-fluid-3);scroll-margin-top:4em;}.timeline-caption{position:relative;width:fit-content;text-align:center;padding:var(--size-fluid-1) var(--size-fluid-3);color:var(--color-accent);border:var(--line-thikness) solid var(--color-accent);}.timeline-items{position:relative;display:grid;grid-template-columns:1fr 1fr;column-gap:var(--column-gap);padding-top:var(--size-fluid-6);padding-bottom:var(--size-fluid-8);list-style-type:none;}.timeline-items::before{position:absolute;z-index:-1;content:"";width:var(--line-thikness);height:100%;top:0;left:50%;transform:translateX(-50%);border-left:var(--line-thikness) dotted var(--color-accent);}.timeline-items::after{position:absolute;content:"";width:17px;height:28px;bottom:0;left:50%;transform:translate(-50%,50%);background-color:var(--color-accent);clip-path:polygon(50% 100%,0% 0%,100% 0%);}.timeline-item{display:flex;flex-direction:column;gap:.3em;max-width:var(--item-width);max-height:var(--item-height);}.timeline-item:nth-child(even){margin-top:var(--item-offset);}.timeline-item-caption{display:flex;align-items:center;white-space:nowrap;gap:.6em;line-height:1;padding-left:var(--focus-gap);}.timeline-item-caption h3{font-family:var(--font-stack-normal);font-size:var(--font-size-fluid-3);font-weight:var(--font-weight-4);color:var(--color-accent);}.timeline-item-image{position:relative;}.timeline-item-image::before{position:absolute;content:"";z-index:-1;width:calc(var(--column-gap) / 2 + var(--focus-gap));height:var(--line-thikness);border-top:var(--line-thikness) dotted var(--color-accent);}.timeline-item-image::after{--dot-size:var(--size-px-3);position:absolute;content:"";width:var(--dot-size);height:var(--dot-size);background-color:var(--color-accent);}.timeline-item:nth-child(odd) .timeline-item-image::before{top:50%;left:calc(100% - var(--focus-gap));}.timeline-item:nth-child(even) .timeline-item-image::before{top:50%;right:calc(100% - var(--focus-gap));}.timeline-item:nth-child(odd) .timeline-item-image::after{top:calc(50% - var(--dot-size) / 2 + 1px);left:calc(100% + var(--column-gap) / 2 - var(--dot-size) / 2);}.timeline-item:nth-child(even) .timeline-item-image::after{top:calc(50% - var(--dot-size) / 2 + 1px);right:calc(100% + var(--column-gap) / 2 - var(--dot-size) / 2);}.timeline-item-image a:not(.timeline-item-link){display:block;position:relative;overflow:hidden;border:var(--border-size-2) solid var(--color-default);}.timeline-item-image img{display:block;position:relative;width:100%;filter:grayscale(1);object-fit:cover;cursor:var(--cursor-pointer),auto;}.timeline-item-focus:hover img{animation:accentuate .8s .2s cubic-bezier(.25,.46,.68,.98) forwards;}@keyframes accentuate{50%{filter:grayscale(0);transform:scale(1.3)}100%{filter:grayscale(0)}}.timeline-item-focus{--border-gradient:linear-gradient(currentColor 0 0);--border-thikness:var(--border-size-2);--border-size:25px;padding:var(--focus-gap);mask:var(--border-gradient) padding-box,conic-gradient(at var(--border-size) var(--border-size),#0000 75%,#000 0%) 0 0 / calc(100% - var(--border-size)) calc(100% - var(--border-size));border:var(--border-thikness) solid transparent;transition:border-color .2s cubic-bezier(.25,.46,.68,.98);}.timeline-item-focus:hover{border-color:var(--color-accent);}.timeline-item-label.label-deprecated{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);opacity:.7;color:hsl(358,93%,39%);border:5px solid hsl(358,93%,39%);font-weight:700;font-size:1.75em;line-height:1;text-transform:uppercase;padding-inline:.1em;transform:translate(-50%,-50%) rotate(-20deg);filter:url(#noise);mix-blend-mode:multiply;}.timeline-item-link{display:block;width:fit-content;padding-left:var(--focus-gap);}@media (width <= 1400px){.timeline-caption{display:none}.timeline-items{column-gap:4em;row-gap:3em;padding-top:0;padding-bottom:0}.timeline-items::before,.timeline-items::after,.timeline-item-image::before,.timeline-item-image::after{display:none}.timeline-item:nth-child(even){margin-top:0}}@media (width <= 1000px){.timeline-items{grid-template-columns:1fr}}#contact{grid-template-columns:max-content 1fr;place-content:start;gap:var(--size-fluid-2);}#contact .section-article{max-width:75%;}.contact-map{margin-bottom:var(--size-fluid-5);}.contact-iframe{width:100%;aspect-ratio:16 / 9;filter:grayscale(1) sepia(.1);transition:outline-offset .1s cubic-bezier(.25,.46,.68,.98),filter .2s ease;outline:var(--border-size-2) solid var(--color-default);}.contact-iframe:hover{filter:grayscale(0) sepia(0);outline-offset:6px;box-shadow:0 0 0 6px var(--color-gray-3);outline:var(--border-size-2) solid var(--color-accent);}.contact-address,.contact-numbers{display:flex;align-items:center;flex-wrap:wrap;column-gap:var(--size-relative-6);row-gap:var(--size-relative-4);margin-bottom:var(--size-fluid-5);}.contact-address>*,.contact-numbers>*{display:flex;flex-direction:column;align-items:start;font-size:var(--font-size-fluid-2);font-weight:var(--font-weight-4);}.contact-address span,.contact-numbers span{font-size:var(--font-size-fluid-1);}.contact-text{margin-bottom:var(--size-fluid-3);}.contact-form{display:grid;grid-template-columns:1fr;}.contact-form label{pointer-events:none;margin-bottom:-2.5em;padding:var(--size-relative-1) .9em;font-size:var(--font-size-fluid-0);color:var(--color-default);opacity:.7;}.contact-form-send{--icon-size:1em;--icon-color:var(--color-accent);display:flex;align-items:center;justify-content:center;gap:var(--size-relative-1);width:fit-content;margin-top:var(--size-fluid-3);}@media (width <= 1200px){#contact .section-article{max-width:100%}.contact-map{display:none}}#robot{position:fixed;z-index:var(--layer-3);inset:0;pointer-events:none;}