html{-webkit-text-size-adjust:100%;line-height:1.15}body{margin:0}main{display:block}h1{margin:.67em 0;font-size:2em}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace;font-size:1em}a{background-color:#0000}abbr[title]{border-bottom:none;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:100%;line-height:1.15}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner{border-style:none;padding:0}[type=button]::-moz-focus-inner{border-style:none;padding:0}[type=reset]::-moz-focus-inner{border-style:none;padding:0}[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring{outline:1px dotted ButtonText}[type=button]:-moz-focusring{outline:1px dotted ButtonText}[type=reset]:-moz-focusring{outline:1px dotted ButtonText}[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;white-space:normal;max-width:100%;padding:0;display:table}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button{height:auto}[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template,[hidden]{display:none}@font-face{font-family:Noto Serif;font-style:normal;font-weight:300 400 700;font-display:swap;src:url(/fonts/NotoSerif.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Jost;font-style:normal;font-weight:300 400;font-display:swap;src:url(/fonts/Jost.woff2)format("woff2");unicode-range:U0-0FF,U131,U152-153,U2BB-02BC,U2C6,U2DA,U2DC,U2000-206F,U2074,U20ACU2122,U2191,U2193,U2212,U2215,U + FEFF,U + FFF}@font-face{font-family:Adjusted Georgia Fallback;src:local(Georgia);size-adjust:111%;ascent-override:99%;descent-override:normal;line-gap-override:normal}@font-face{font-family:Adjusted Georgia Fallback Light;src:local(Georgia);size-adjust:100%;ascent-override:normal;descent-override:normal;line-gap-override:normal}@font-face{font-family:Adjusted Verdana Fallback;src:local(Arial);size-adjust:92.5%;ascent-override:120%;descent-override:40%;line-gap-override:normal}:root{--font-main:"Noto Serif","Adjusted Georgia Fallback";--font-main-fallback-light:"Noto Serif","Adjusted Georgia Fallback Light";--font-secondary:"Jost","Adjusted Verdana Fallback";--font-size-xs:1.4rem;--font-size-small:1.6rem;--font-size-medium:1.8rem;--font-size-large:2rem;--color-font-white:#fff;--color-main:#c6a890;--color-main-rgb:198 168 144;--color-main-blue:#1e2f5a;--border-radius-container:.5rem;--border-radius-child:.3rem;--transition-time-default:.3s;--transition-behavior:var(--transition-time-default)ease}html{box-sizing:border-box;scroll-behavior:smooth;color-scheme:dark;font-size:62.5%}*,:before,:after{box-sizing:inherit}body{font-family:var(--font-main);font-size:1.6rem;line-height:1.4;transition:background 80s}.main-bg{--bg-lines-inclination:105deg;background-image:repeating-linear-gradient(var(--bg-lines-inclination),#00000003 0,transparent 2%),repeating-linear-gradient(var(--bg-lines-inclination),#00000004 0,transparent 11%),linear-gradient(297deg,#140b33 0%,#1e2f5a 80%);z-index:-999;position:fixed;inset:0}h1,h2,h3,h4{font-family:var(--font-main);color:var(--color-font-white);margin:0}img{max-width:100%;max-height:100%}a{color:var(--color-font-white);text-decoration:none;display:block}p{color:var(--color-font-white);font-size:var(--font-size-medium);font-family:var(--font-secondary);margin:0;font-weight:300;line-height:1.6}ul{margin:0;padding:0;list-style:none}ol{font-family:var(--font-secondary);font-weight:300;font-size:var(--font-size-medium);margin:0;padding-left:3ch}button{color:var(--color-font-white)}svg{width:32px;height:32px}.container{width:90%;margin:0 auto}@media (min-width:768px){.container{max-width:75rem;margin:0 auto}}.title{font-size:2rem;font-weight:700}@media (min-width:768px){.title{font-size:4rem}}.title span{color:var(--color-font-white);font-size:3.2rem;font-weight:400;display:block}.subtitle{color:var(--color-main);font-size:4rem;font-weight:700}.gradient-bg-blue{z-index:-100;background-image:linear-gradient(297deg,#1f023a 0%,#1e2f5a 80%);width:100%;height:100vh;position:fixed;top:0;left:0}.external-link{transition:text-decoration-color var(--transition-behavior);align-items:baseline;gap:.3rem;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;display:flex}.external-link:hover{-webkit-text-decoration-color:var(--color-main);text-decoration-color:var(--color-main)}.external-link span{font-family:var(--font-main-fallback-light);white-space:nowrap;text-overflow:ellipsis;max-width:40ch;font-weight:300;display:block;overflow:hidden}.external-link svg{width:14px;height:14px;position:relative;bottom:-1px}.section-full-height{height:100vh;min-height:70rem;padding:5rem 0 10rem}@media (min-height:1000px){.section-full-height.centered{justify-content:center;padding:10vh 0}}@media (min-height:1360px){.section-full-height.centered{justify-content:center;padding:20vh 0}}.bold{font-weight:700}.font-regular{font-weight:400}.main-font{font-family:var(--font-main)}.xs-font{font-size:var(--font-size-xs)}.small-font{font-size:var(--font-size-small)}.readable-font{font-family:var(--font-secondary)}.ascii-text-title pre{display:none}@media (min-width:768px){.ascii-text-title pre{color:var(--color-font-white);margin:0;font-size:.4rem;font-weight:700;line-height:1.2;display:block}}.ascii-text-title span{line-height:1;font-family:var(--font-main);color:var(--color-main);margin-bottom:2rem;display:block}.ascii-text-title .sr-only{color:var(--color-font-white);font-weight:500}@media (min-width:768px){.ascii-text-title .sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}@media (min-width:768px){.ascii-text-title pre{font-size:.8rem}}.my-1-5{margin:1.5rem 0}.mt-2{margin:2rem 0 0}.mt-3{margin:3rem 0 0}.mt-6{margin:6rem 0 0}.-mt-20{margin-top:-20rem}.mb-2{margin-bottom:2rem}.m-0{margin:0}.leading-none{line-height:1}.opacity-0{opacity:0}.relative{position:relative}.disable-transitions{transition:unset!important}.flex{display:flex}.flex-column{flex-direction:column;display:flex}.gap-2{gap:2rem}.gap-3{gap:3rem}.space-between{justify-content:space-between}.items-center{align-items:center}.items-end{align-items:flex-end}.items-baseline{align-items:baseline}.simple-button{font-size:var(--font-size-small);background-color:unset;border:unset;border-radius:var(--border-radius-container);cursor:pointer;transition:background-color var(--transition-behavior),opacity .2s ease;padding:.8rem 1rem}.simple-button:hover{background-color:#ffffff1a}.simple-button:active{opacity:.7}@media (min-width:768px){.simple-button{padding:.8rem 2rem}}.color-main{color:var(--color-main)}.color-white{color:var(--color-font-white)}.post-date{color:var(--color-main);line-height:1.6;font-size:var(--font-size-xs);text-transform:capitalize}.bg-semiwhite-hover:after{--padding-x:1.5rem;--padding-y:2rem;content:"";top:calc(0rem - (var(--padding-y)/2));left:calc(0rem - (var(--padding-x)));width:calc(100% + var(--padding-x));height:calc(100% + var(--padding-y));border-radius:var(--border-radius-container);transition:background-color var(--transition-behavior);display:block;position:absolute}.bg-semiwhite-hover:hover:after{background-color:#ffffff1a}.header{justify-content:space-between;display:flex;position:relative}.logo{font-weight:700;font-size:var(--font-size-medium);color:var(--color-main)}.post .header{flex-direction:column}.post .header nav{margin-top:2rem}@media (min-width:768px){.post .header{flex-direction:row;align-items:center}.post .header nav{margin-top:0}}.social-networks{gap:1.5rem;display:flex}.social-networks li,.social-networks a{display:contents}.social-networks a svg{transition:fill var(--transition-behavior)}.social-networks a:hover svg{fill:var(--color-main)}.last-article{font-size:var(--font-size-xs);margin-top:1.5rem}.last-article p{font-family:var(--font-main);font-size:inherit;color:var(--color-main)}.portrait{aspect-ratio:1;object-fit:cover;border-radius:var(--border-radius-container);width:60px;height:60px;display:block;position:absolute;top:0;right:0}@media (min-width:768px){.portrait{width:134px;height:134px;position:static}}.tech-stack-grid{flex-wrap:wrap;gap:1rem 3rem;max-width:max-content;margin-top:.5rem;display:flex}.tech-stack-grid figure{font-family:var(--font-secondary);text-align:center;flex-direction:column;flex:0 0;align-items:center;gap:.5rem;margin:0;display:flex}@media (min-width:768px) and (min-height:650px){.tech-stack-grid figure{flex:1}}.tech-stack-grid img{object-fit:contain;width:32px;height:32px}@media (min-width:768px) and (min-height:650px){.tech-stack-grid img{width:42px;height:42px}}.tech-stack-grid figcaption{font-size:var(--font-size-xs);font-weight:300}.paginator{align-items:center;gap:1rem;width:-moz-fit-content;width:fit-content;margin-inline:auto;display:flex}@media (min-width:768px){.paginator{margin-left:auto;margin-right:0}}.paginator.hidden{display:none}.paginator button{background-color:unset;border:unset;font-size:var(--font-size-medium);cursor:pointer;transition:color var(--transition-behavior);margin:0;padding:0}.paginator button:hover{color:var(--color-main)}.paginator .pages button{border-right:1px solid var(--color-main);padding:0 1.5rem}.paginator .pages{display:flex}.paginator .pages button:last-of-type{border:unset}.paginator .back,.paginator .next{display:flex}.paginator .back{transform:rotate(180deg)}.paginator .pages button.selected{color:var(--color-main)}.paginator .pages button.disabled{pointer-events:none;color:#0000;-webkit-user-select:none;user-select:none;transition:unset}.footer{margin-top:12rem}.footer .nav-wrapper{flex-direction:column;gap:2rem;display:flex}@media (min-width:768px){.footer .nav-wrapper{flex-direction:row;justify-content:space-between;align-items:center}}.footer .nav{max-width:unset;width:unset;margin:0}.footer .nav .list{gap:2rem;display:flex}.footer .nav .list a{transition:opacity var(--transition-behavior)}.footer .nav .list a:hover{opacity:.6}.footer hr{border:none;border-bottom:1px solid var(--color-main);margin:2rem 0}.article-wrapper{--content-gap:6rem;padding:5rem 0}.article-wrapper .bg-image-blurred{object-position:left;object-fit:cover;border-radius:var(--border-radius-container);z-index:-99;-webkit-user-select:none;user-select:none;max-width:unset;margin-top:var(--content-gap);width:105%;height:40rem;position:relative;left:50%;transform:translate(-50%);-webkit-mask-image:linear-gradient(#000,#0000);mask-image:linear-gradient(#000,#0000)}@media (min-width:1200px){.article-wrapper .bg-image-blurred{object-position:center;width:115%}}.article-wrapper .article h1{font-size:2rem}@media (min-width:768px){.article-wrapper .article h1{font-size:3.2rem}}.article-wrapper .article .title{font-size:2rem}@media (min-width:768px){.article-wrapper .article .title{font-size:4rem}}.article-wrapper .article h2,.article-wrapper .article h3{scroll-margin-top:var(--content-gap);margin:var(--content-gap)0 2rem 0;color:var(--color-main);font-size:3.2rem;font-weight:600}.article-wrapper .article h3{font-size:var(--font-size-large)}.article-wrapper .article p{margin:1.5rem 0}.article-wrapper .article p.m-0{margin:0}.article-wrapper .article a{text-decoration:underline;display:inline}.article-wrapper .article ul{flex-direction:column;gap:1.5rem;margin:2rem 0;padding-left:3rem;list-style:url(/bullet.svg);display:flex}.article-wrapper .article ul.list-style-none{padding:0;list-style:none}.article-wrapper .article ul>li{font-weight:300;font-size:var(--font-size-medium);font-family:var(--font-secondary)}.article-wrapper .article ul>li>a{transition:text-decoration-color var(--transition-behavior);align-items:center;gap:1rem;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;display:flex}.article-wrapper .article ul>li>a:hover{-webkit-text-decoration-color:var(--color-font-white);text-decoration-color:var(--color-font-white)}.article-wrapper .article ul>li>a>svg,.article-wrapper .article ul>li>a>img{object-fit:contain;width:20px;height:20px;margin:0}.article-wrapper .article ol+ul{margin-left:2ch}.article-wrapper .article strong{font-weight:400}.article-wrapper .article figure{margin:2rem 0}.article-wrapper .article figure figcaption{font-family:var(--font-secondary);font-size:var(--font-size-xs);color:#fff9;text-align:center;margin-top:1rem}.article-wrapper .article figure>img{object-fit:contain;max-height:50rem;margin:0}.article-wrapper .article figure>img.maxh-20{max-height:20rem}.article-wrapper .article figure>img.preserve-aspect-ratio{object-fit:contain}.article-wrapper .article a figure figcaption{text-decoration:underline}@media (min-width:768px){.article-wrapper .article .grid-2-1{column-gap:var(--content-gap);grid-template-columns:2fr 1fr;display:grid}}.article-wrapper .article .tech-stack-grid figure{margin:0}.article-wrapper .article .tech-stack-grid figure figcaption{text-align:unset;-webkit-text-decoration:unset;text-decoration:unset;color:unset;margin:0}.article-wrapper .article .tech-stack-grid figure img{object-fit:contain;width:32px;height:32px}.article-wrapper .article img{object-fit:contain;width:100%;height:100%;margin:2.5rem 0;display:block}.article-wrapper .article hr{margin:var(--content-gap)0;border:unset;border-bottom:1px solid rgb(var(--color-main-rgb)/.3)}.article-wrapper .article hr.my-2{margin:2rem 0}.article-wrapper .article blockquote{border-radius:var(--border-radius-container);border-left:3px solid var(--color-main);background-color:#0003;margin:2rem 0;padding:1rem 2rem 1rem 4rem;position:relative}.article-wrapper .article blockquote.search:before{content:"";background:var(--color-main);width:24px;height:24px;display:inline-block;position:absolute;top:1rem;left:.7rem;-webkit-mask:url(/search.svg) 50%/cover no-repeat;mask:url(/search.svg) 50%/cover no-repeat}.article-wrapper .article .astro-code{border-radius:var(--border-radius-container)!important;-webkit-backdrop-filter:blur(2rem)!important;backdrop-filter:blur(2rem)!important;background:#0003!important;margin:2rem 0!important;padding:1rem 1.5rem!important}.article-wrapper .article .astro-code code{counter-reset:step;font-size:var(--font-size-small)!important}.article-wrapper .article .astro-code code .line{line-height:1.6}.article-wrapper .article .astro-code code .line:before{content:counter(step)/"";counter-increment:step;text-align:right;color:#616e88;opacity:.7;width:2ch;margin-right:2rem;display:inline-block}.article-wrapper .article .code{margin:2rem 0}.article-wrapper .article .code .code-tabs{display:flex}.article-wrapper .article .code .code-tabs .tab{border-radius:var(--border-radius-container)var(--border-radius-container)0 0;-webkit-backdrop-filter:blur(2rem);backdrop-filter:blur(2rem);background-color:#0003;border:1px solid #ffffff1a;border-bottom:none;margin:0;padding:.5rem 5.5rem}.article-wrapper .article .code .code-tabs .tab.highlight{z-index:9999;background-color:#00000080;border:none;position:relative}.article-wrapper .article .code .code-tabs .tab.highlight:after{content:"";z-index:9999;border-bottom:1px solid #00000080;width:100%;display:block;position:absolute;top:100%;left:0}.article-wrapper .article .code .astro-code{border-top:1px solid #ffffff1a;border-radius:var(--border-radius-container)!important;border-top-left-radius:0!important;margin:0!important}@media (min-width:768px){.article-wrapper .article .info-project{--gap-info-project:var(--content-gap);--line-divider-size-added:1.5rem;margin-bottom:calc(var(--content-gap) + var(--line-divider-size-added));position:relative}.article-wrapper .article .info-project:before{content:"";bottom:calc(var(--line-divider-size-added)*-1);top:4.5rem;left:calc(((100% - var(--content-gap))*.6666) + (var(--content-gap)/2));background-color:var(--color-main);width:1px;display:block;position:absolute}}.portfolio-main{flex-direction:column;gap:10rem;display:flex}@media (min-width:768px){.portfolio-main{gap:unset}}.portfolio-main .header nav{margin-top:2rem}.navigation-menu{display:none;top:50%;transform:translateY(-50%)}@media (min-width:1500px){.navigation-menu{pointer-events:none;width:100%;display:block;position:fixed}}.navigation-menu .pointer{aspect-ratio:1;background-color:var(--color-main-blue);z-index:9999;pointer-events:none;-webkit-clip-path:circle(40%);clip-path:circle(40%);border-radius:50%;width:2.5rem;transition:top .6s .1s;display:block;position:absolute;top:0}.navigation-menu .nav{position:relative}.navigation-menu .nav .list{pointer-events:auto;flex-direction:column;align-items:flex-end;gap:2rem;display:flex;position:relative;top:0;right:120%}.navigation-menu .nav .list:before{content:"";z-index:-1;background-image:linear-gradient(to right,transparent calc(50% - 2px),var(--color-main)50%,transparent calc(50% + 2px));width:2.5rem;position:absolute;top:1.25rem;bottom:1.25rem;right:0}.navigation-menu .nav .list a{align-items:center;gap:3rem;padding:1rem 0;display:flex}.navigation-menu .nav .list a .text{opacity:0;transition:transform var(--transition-behavior),opacity var(--transition-behavior);padding:0 1rem;transform:translate(1rem)}.navigation-menu .nav .list a .circle{aspect-ratio:1;background-color:var(--color-main);border-radius:50%;width:2.5rem;display:block}.navigation-menu .nav .list:hover .text{transform:unset;opacity:.7}.navigation-menu .nav .list:hover a.selected .text,.navigation-menu .nav .list:hover a:hover .text{opacity:1}.navigation-menu .article-list-title{pointer-events:auto;font-size:var(--font-size-small);width:max-content;margin-top:-3rem;margin-bottom:2rem;padding-left:2rem;font-weight:600;position:relative;top:0;left:-45%}.navigation-menu .article-list-headers{pointer-events:auto;--sb-thumb-color:transparent;--sb-track-color:transparent;--sb-size:5px;scrollbar-color:var(--sb-thumb-color)var(--sb-track-color);background-image:linear-gradient(90deg,#ffffff1a,#ffffff1a 5px,#0000 0);flex-direction:column;align-items:flex-start;gap:2rem;width:26rem;max-height:80vh;padding:.5rem 1rem .5rem 2rem;display:flex;position:relative;top:0;left:-45%;overflow-y:auto;transform:translate(0)}.navigation-menu .article-list-headers::-webkit-scrollbar{width:var(--sb-size)}.navigation-menu .article-list-headers::-webkit-scrollbar-track{background:var(--sb-track-color);border-radius:10px}.navigation-menu .article-list-headers::-webkit-scrollbar-thumb{background:var(--sb-thumb-color);border-radius:10px}.navigation-menu .article-list-headers:hover{--sb-thumb-color:#ffffff90;--sb-track-color:#ffffff10}.navigation-menu .article-list-headers li{width:100%}.navigation-menu .article-list-headers li a{transition:text-decoration-color var(--transition-behavior);padding-right:1rem;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;position:relative}.navigation-menu .article-list-headers li a.depth-2{font-weight:400}.navigation-menu .article-list-headers li a.depth-3{padding-left:2rem;font-weight:300}.navigation-menu .article-list-headers li a:before{content:"";border-left:5px solid var(--color-main);border-radius:var(--border-radius-child);opacity:0;transition:opacity var(--transition-behavior);height:130%;display:block;position:absolute;top:50%;left:-2rem;transform:translateY(-50%)}.navigation-menu .article-list-headers li a:after{content:"";border-radius:var(--border-radius-container);opacity:0;transition:opacity var(--transition-behavior);background-color:#ffffff1a;width:calc(100% + 2rem);height:130%;display:block;position:absolute;top:50%;left:-2rem;transform:translateY(-50%)}.navigation-menu .article-list-headers li a:hover{-webkit-text-decoration-color:var(--color-white);text-decoration-color:var(--color-white)}.navigation-menu .article-list-headers li a:hover:before{opacity:1}.navigation-menu .article-list-headers li a.selected:hover{text-decoration-color:#0000}.navigation-menu .article-list-headers li a.selected:before,.navigation-menu .article-list-headers li a.selected:after{opacity:1}.presentation-section{margin-top:8rem}@media (min-height:650px){.presentation-section{margin:0;position:absolute;top:50%;left:0;transform:translateY(-50%)}}.projects{flex-direction:column;display:flex}.projects .projects-container{flex:1;grid-template-rows:100%;grid-template-columns:repeat(2,100%);gap:4rem;margin-top:2rem;display:grid;overflow:hidden}.projects .projects-container .project{border-radius:var(--border-radius-container);border:1px solid var(--color-main);padding:1rem;overflow:hidden}.projects .projects-container .project picture{display:block}.projects .projects-container .project picture>img{border-radius:var(--border-radius-child);object-fit:cover;width:100%;max-width:100%;height:100%}.projects .projects-container .favorites{scroll-snap-type:x mandatory;--first-project-color:#88d28e;--second-project-color:#fffc;--third-project-color:#d39a1f;grid-template-columns:repeat(3,calc(100% - 4px));gap:2rem;height:100%;display:grid;position:relative;overflow-x:auto}@media (min-width:768px) and (min-height:650px){.projects .projects-container .favorites{grid-template-rows:repeat(3,minmax(10rem,1fr));grid-template-columns:unset;gap:3rem;overflow:hidden}}.projects .projects-container .favorites .favorite-project{--transition-delay:.4s;--transition-total-time:calc(var(--transition-time-default) + var(--transition-delay));scroll-snap-align:center;transition:top var(--transition-behavior)var(--transition-delay),height var(--transition-behavior)var(--transition-delay),opacity var(--transition-behavior)var(--transition-delay);flex-direction:column;gap:2rem;height:100%;display:flex;position:relative;top:0;overflow-y:auto}@media (min-width:768px) and (min-height:650px){.projects .projects-container .favorites .favorite-project{overflow:hidden}}@media (min-height:650px){.projects .projects-container .favorites .favorite-project{gap:4rem}}.projects .projects-container .favorites .favorite-project .bg-radial-pointer{display:none;position:absolute}@media (min-width:768px) and (min-height:650px){.projects .projects-container .favorites .favorite-project .bg-radial-pointer{background-image:radial-gradient(var(--color-main)0%,transparent 60%);opacity:0;z-index:-1;transition:opacity var(--transition-behavior);border-radius:50%;width:100rem;height:100rem;display:block}}@media (min-width:768px) and (min-height:650px){.projects .projects-container .favorites .favorite-project:hover .bg-radial-pointer{opacity:.2}}.projects .projects-container .favorites .favorite-project .header{flex-direction:column;gap:2rem;display:flex}@media (min-width:768px){.projects .projects-container .favorites .favorite-project .header{flex-direction:row}}.projects .projects-container .favorites .favorite-project .header>.favorite-video{border-radius:var(--border-radius-child);perspective:800px;transition:background-color 0s ease var(--transition-delay);flex:none;display:block;position:relative}@media (min-width:768px){.projects .projects-container .favorites .favorite-project .header>.favorite-video{max-height:unset;max-width:45%;height:100%;max-height:20rem}}.projects .projects-container .favorites .favorite-project .header>.favorite-video>video{border-radius:var(--border-radius-child);transition:transform var(--transition-behavior)var(--transition-delay),box-shadow var(--transition-behavior)var(--transition-delay);width:100%;height:100%;display:block;inset:0;transform:scale(.8)rotateX(15deg);box-shadow:0 10px 20px 5px #00000080}.projects .projects-container .favorites .favorite-project .header .content{flex-direction:column;flex:1;gap:.5rem;display:flex}.projects .projects-container .favorites .favorite-project .header .content>a{flex-direction:column;gap:.5rem;display:flex}.projects .projects-container .favorites .favorite-project .header .content .project-links{align-items:center;gap:2rem;height:100%;display:flex}.projects .projects-container .favorites .favorite-project .header .content .project-links>a{font-size:var(--font-size-small);display:flex}.projects .projects-container .favorites .favorite-project .header .content .project-links>.link-box{border-radius:var(--border-radius-child);border:1px solid #fff6;align-items:center;gap:1rem;height:100%;max-height:4rem;padding:1rem 2rem}.projects .projects-container .favorites .favorite-project .header .content .project-links>.link-box svg{width:20px;height:20px}.projects .projects-container .favorites .favorite-project:first-of-type .favorite-video{background-color:var(--first-project-color)}.projects .projects-container .favorites .favorite-project:nth-of-type(2) .favorite-video{background-color:var(--second-project-color)}.projects .projects-container .favorites .favorite-project:nth-of-type(3) .favorite-video{background-color:var(--third-project-color)}.projects .projects-container .favorites .favorite-project:hover .header>.favorite-video{--transition-hide-bg:.15s;transition:background-color var(--transition-hide-bg)ease calc(var(--transition-total-time) - var(--transition-hide-bg));background-color:#0000}.projects .projects-container .favorites .favorite-project:hover .header>.favorite-video>video{transform:unset;box-shadow:unset}.projects .projects-container .favorites .favorite-project .extra-content{opacity:1;transition:opacity var(--transition-behavior)var(--transition-delay);flex-direction:column;flex:1;gap:2rem;display:flex}@media (min-height:650px){.projects .projects-container .favorites .favorite-project .extra-content{gap:4rem}}.projects .projects-container .favorites .favorite-project .extra-content>div{flex-direction:column;gap:.5rem;display:flex}.projects .projects-container .favorites .favorite-project:hover .extra-content{opacity:1}.projects .projects-container .favorites .favorite-project.hidden{opacity:0;pointer-events:none}.projects .projects-container .favorites .favorite-project p{font-size:var(--font-size-small)}.projects .projects-container .favorites .favorite-project h3,.projects .projects-container .favorites .favorite-project h4{font-size:var(--font-size-large)}.projects .projects-container .other-projects{grid-template-columns:repeat(2,1fr);grid-auto-rows:max-content;gap:2rem;width:calc(100% - 2px);height:100%;margin-left:1px;display:grid;overflow-y:auto}@media (min-width:768px){.projects .projects-container .other-projects{grid-template-columns:repeat(3,1fr)}}.projects .projects-container .other-projects .project h3{z-index:100;transition:text-decoration-color var(--transition-behavior);align-items:center;gap:1rem;margin-top:.5rem;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;display:flex;position:relative}.projects .projects-container .other-projects .project:hover h3{-webkit-text-decoration-color:var(--color-main);text-decoration-color:var(--color-main)}.projects .projects-container .other-projects .project h3 svg{opacity:0;transition:opacity var(--transition-behavior);width:20px;height:20px}.projects .projects-container .other-projects .project:hover h3 svg{opacity:1}.articles{flex-direction:column;display:flex}.articles .category-bar{display:flex;position:relative;overflow-x:hidden}.articles .category-bar .pointer{border-radius:var(--border-radius-container);background-color:#ffffff1a;transition:left .3s .3s,width .3s .3s,height .3s .3s;position:absolute;top:0;left:0}.articles .category-bar>button{margin-right:1rem;position:relative}.articles .category-bar>button:after{content:"";border-right:2px solid var(--color-main);pointer-events:none;height:100%;display:block;position:absolute;top:0;bottom:0;left:calc(100% + 1rem)}.articles .category-bar>button,.articles .category-bar .category-list button{border:unset;border-radius:var(--border-radius-container);cursor:pointer;font-size:var(--font-size-small);padding:.8rem 1rem}@media (min-width:768px){:is(.articles .category-bar>button,.articles .category-bar .category-list button){padding:.8rem 3.5rem}}.articles .category-bar button{background:unset;transition:background-color var(--transition-behavior),opacity .2s ease}.articles .category-bar button:hover,.articles .category-bar button.selected{background-color:#ffffff1a}.articles .category-bar button:active{opacity:.7}.articles .category-bar .categories-container{position:relative;overflow:hidden}.articles .category-bar .categories-container .scroll-buttons{display:none}@media (min-width:768px){.articles .category-bar .categories-container .scroll-buttons{opacity:1;z-index:100;pointer-events:none;justify-content:space-between;display:flex;position:absolute;inset:0}.articles .category-bar .categories-container .scroll-buttons button{border:unset;cursor:pointer;pointer-events:auto;border-radius:var(--border-radius-container);display:none}.articles .category-bar .categories-container .scroll-buttons button.left-arrow{margin-left:calc(1rem + 2px);transform:rotate(180deg)}.articles .category-bar .categories-container .scroll-buttons button>svg{width:24px}}.articles .category-bar .categories-container .category-list{-ms-overflow-style:none;scrollbar-width:none;gap:1rem;max-width:max-content;margin-left:calc(1rem + 2px);display:flex;overflow:auto}@media (min-width:768px){.articles .category-bar .categories-container .category-list{-webkit-mask-image:var(--category-mask-arrows);mask-image:var(--category-mask-arrows)}}.articles .category-bar .categories-container .category-list::-webkit-scrollbar{display:none}.articles .category-bar .categories-container.there-is-right-scroll>.scroll-buttons .right-arrow{display:flex}.articles .category-bar .categories-container.there-is-right-scroll>.category-list{--category-mask-arrows:linear-gradient(to right,#000 90%,#00000020 95%,transparent 100%)}.articles .category-bar .categories-container.there-is-left-scroll>.scroll-buttons .left-arrow{display:flex}.articles .category-bar .categories-container.there-is-left-scroll>.category-list{--category-mask-arrows:linear-gradient(to left,#000 90%,#00000020 95%,transparent 100%)}.articles .category-bar .categories-container.there-is-right-scroll.there-is-left-scroll>.category-list{--category-mask-arrows:linear-gradient(to right,transparent 0%,#00000020 5%,#000 10%,#000 90%,#00000020 95%,transparent 100%)}.articles .articles-grid{flex-flow:column wrap;flex:1;justify-content:flex-start;gap:1rem 2rem;display:flex;overflow-x:hidden}@media (min-width:768px){.articles .articles-grid{gap:2rem}}.articles .articles-grid .article{border-radius:var(--border-radius-container);transition:background-color var(--transition-behavior);flex-direction:column;width:100%;padding:1rem 0;display:flex}@media (min-width:768px){.articles .articles-grid .article{flex-direction:row;align-items:baseline;gap:2rem}}.articles .articles-grid .article:hover{background-color:#ffffff0d}.articles .articles-grid .article .post-date{text-align:right}@media (min-width:768px){.articles .articles-grid .article .post-date{width:20%;min-width:20%}}.articles .articles-grid .article.hidden{display:none}.articles .articles-grid .article .article-title{font-size:var(--font-size-medium);text-wrap:nowrap;text-overflow:ellipsis;font-weight:400;overflow:hidden}@media (min-width:768px){.articles .articles-grid .article .article-title{padding-right:1rem}}@media (max-width:767px){.about-me{height:unset;padding:10rem 0}}.about-me>.grid{font-family:var(--font-secondary);color:#ffffff4d;flex-direction:column;gap:4rem;display:flex}@media (min-width:768px){.about-me>.grid{grid-template-columns:1fr 1fr;gap:2rem;display:grid}}.about-me>.grid>.general-content{flex-direction:column;gap:4rem;display:flex}@media (min-width:768px){.about-me>.grid>.general-content{gap:6rem}}.about-me>.grid>.general-content .group{flex-direction:column;gap:2rem;display:flex}@media (min-width:768px){.about-me>.grid>.general-content .group{gap:3rem}}.about-me>.grid>.general-content .info-chunk{font-family:var(--font-main);font-size:var(--font-size-medium);align-items:center;gap:1rem;font-weight:400;display:flex}.about-me>.grid>.general-content .info-chunk.email{background:unset;border:unset;cursor:pointer;margin:0;padding:0;position:relative}.about-me>.grid>.general-content .info-chunk.email .copy-container{opacity:0;transition:opacity var(--transition-behavior);margin-left:auto;margin-right:1.5rem;display:flex;position:relative}.about-me>.grid>.general-content .info-chunk.email .copy-container svg{display:none}.about-me>.grid>.general-content .info-chunk.email .copy-container[data-copied=false] svg:first-of-type{display:block}.about-me>.grid>.general-content .info-chunk.email .copy-container[data-copied=false] svg:last-of-type{display:none}.about-me>.grid>.general-content .info-chunk.email .copy-container[data-copied=true] svg:first-of-type{display:none}.about-me>.grid>.general-content .info-chunk.email .copy-container[data-copied=true] svg:last-of-type{display:block}.about-me>.grid>.general-content .info-chunk.email .copy-container .tooltip{font-size:var(--font-size-small);border-radius:var(--border-radius-container);z-index:999;-webkit-user-select:none;user-select:none;pointer-events:none;transition:transform var(--transition-behavior);background:#000;padding:.8rem 2rem;position:absolute;bottom:140%;right:100%;transform:translateY(20%)}.about-me>.grid>.general-content .info-chunk.email .copy-container .tooltip:after{content:"";-webkit-clip-path:polygon(0 0,50% 100%,100% 0);clip-path:polygon(0 0,50% 100%,100% 0);background:#000;width:.8rem;height:.8rem;position:absolute;top:100%;left:50%;transform:translate(-50%)}.about-me>.grid>.general-content .info-chunk.email:hover .copy-container{opacity:1}.about-me>.grid>.general-content .info-chunk.email:hover .copy-container .tooltip{transform:unset}.about-me>.grid>.general-content .product-about-me>.description{font-family:var(--font-main);font-size:var(--font-size-medium)}.about-me>.grid>.general-content .product-about-me>.content{gap:1rem;margin-top:1.5rem;display:flex;position:relative}.about-me>.grid>.general-content .product-about-me>.content>img{aspect-ratio:1;object-fit:cover;border-radius:var(--border-radius-child);width:6rem}.about-me>.grid>.general-content .product-about-me>.content>div>h4{font-family:var(--font-secondary);font-size:var(--font-size-medium);transition:text-decoration-color var(--transition-behavior);font-weight:400;-webkit-text-decoration:underline #0000;text-decoration:underline #0000}.about-me>.grid>.general-content .product-about-me>.content>div>p{font-size:var(--font-size-small)}.about-me>.grid>.general-content .product-about-me>.content:hover>div>h4{-webkit-text-decoration-color:var(--color-main);text-decoration-color:var(--color-main)}.about-me>.grid>.general-content .product-about-me>.content>.icon{width:24px;height:24px;margin-left:1rem}.about-me>.grid .info{flex-direction:column;gap:2rem;display:flex}.about-me>.grid .info strong{font-weight:500}.about-me>.grid .info a{font-weight:500;text-decoration:underline;display:inline}
