@font-face{font-family:Roboto;font-weight:400 700;font-display:swap;src:url(/fonts/roboto.woff2)format("woff2")}@font-face{font-family:Montserrat;font-weight:700;font-display:swap;src:url(/fonts/montserrat-700.woff2)format("woff2")}:root{--red:#fd5e53;--orange:#fc9c54;--gold:#ffe373;--white:#fff;--black:#000;--grey:#c8c8c8;--cubic:cubic-bezier(.19, 1, .22, 1);color-scheme:dark}*,:before,:after{box-sizing:border-box}html{scrollbar-color:var(--orange) var(--black);scrollbar-width:thin;font-size:10px}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:linear-gradient(90deg,#201c29,#201c29 1px,#100e17 0,#100e17)}::-webkit-scrollbar-thumb{background:linear-gradient(180deg, var(--red), var(--orange), var(--gold));border-radius:5px}::selection{color:var(--orange);background-color:#0000}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--black);color:var(--white);min-height:100dvh;margin:0;padding:0;font-family:Roboto,sans-serif}body.no-scroll{overflow:hidden}ul,li{margin:0;padding:0;list-style:none}img{max-width:100%}.screen-reader-text{clip-path:inset(50%);border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}main{min-height:100dvh;position:relative}@view-transition{navigation:auto}::view-transition-old(root){animation:.6s both page-leave}::view-transition-new(root){animation:.6s both page-enter}@keyframes page-leave{to{opacity:0;transform:translateY(100%)}}@keyframes page-enter{0%{opacity:0;transform:translateY(-100%)}}html:not(.visited) main{animation:.6s both fade-in}@keyframes fade-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}.site-header{z-index:5;view-transition-name:site-header;width:100%;position:fixed;top:0;right:0}html:not(.visited) .site-header{animation:.8s ease-out 1s both header-in}@keyframes header-in{0%{opacity:0;transform:translateY(-200%)}}.desktop-nav{display:none}.menu-icon{cursor:pointer;z-index:8;width:80px;height:80px;color:inherit;background:0 0;border:0;padding:0;position:absolute;top:0;right:0}.hamburger,.hamburger:before,.hamburger:after{background-color:var(--white);width:50px;height:4px;position:absolute;box-shadow:0 2px 5px #0003}.hamburger{transition:all .8s,background-color .3s ease-in-out .7s;top:50%;left:50%;transform:translate(-50%,-50%);&:before,&:after{content:"";z-index:8;transition:all .8s,background-color .3s ease-in-out .7s,transform 1s cubic-bezier(.51,-.91,.24,1.16);right:0}&:before{top:-13px}&:after{top:13px}}.hamburger-text{color:var(--white);text-align:center;letter-spacing:.1em;width:50px;font-size:1.6rem;font-weight:800;transition:all .8s;position:absolute;top:60px;right:15.5px}.menu-open{overflow:hidden;& .hamburger:before,& .hamburger:after{background-color:var(--orange);transition:all .8s,background-color,transform 1s cubic-bezier(.51,-.91,.24,1.16)}& .hamburger{box-shadow:none;background-color:#0000;transition:all .8s,background-color}& .hamburger:before{top:0;transform:rotate(405deg)}& .hamburger:after{top:0;transform:rotate(-405deg)}& .hamburger-text{opacity:0}& .overlay{height:100dvh}}.overlay{z-index:3;background-color:#fffffff2;width:100%;height:0;transition:all 1s;position:fixed;top:0;left:0;overflow:hidden}.overlay-content{flex-direction:column;padding:10px;display:flex;& a{color:var(--black);padding:8px;font-size:4.5em;font-weight:800;line-height:1em;text-decoration:none;&:hover,&:focus{color:var(--orange)}}}@media (width>=370px){.overlay-content{padding:0 10px;& a{font-size:5.5rem}}}@media (height<=450px){.overlay-content a{font-size:20px}}@media (width>=769px){.site-header{background:#000000d9;justify-content:space-evenly;padding:20px 0;display:flex}.menu-icon,.overlay{display:none}.desktop-nav{margin:0;display:flex;& li{padding:10px 20px;transition:transform .3s ease-in-out;display:flex}& a{color:#fffc;font-size:2rem;font-weight:700;text-decoration:none;display:flex}& a[aria-current=page]{color:var(--white)}}.menu-animation{position:relative;overflow:hidden;&:hover{transform:translateY(-2px)}&:before,&:after,&>a:before,&>a:after{content:"";transition:var(--cubic) 1s;display:block;position:absolute}&:before,&>a:before{width:2px;height:0}&:before{background:linear-gradient(to bottom, var(--gold), var(--orange) 50%, var(--red));top:0;left:0}&>a:before{background:linear-gradient(to top, var(--gold), var(--orange) 50%, var(--red));bottom:0;right:0}&:after,&>a:after{width:0;height:2px}&:after{background:linear-gradient(to right, var(--gold), var(--orange) 50%, var(--red));top:0;left:0}&>a:after{background:linear-gradient(to left, var(--gold), var(--orange) 50%, var(--red));bottom:0;right:0}&:hover:before,&:hover>a:before{height:100%}&:hover:after,&:hover>a:after{width:100%}}}@media (width>=1025px){.desktop-nav a{font-size:3rem}}@media (width>=1350px){.desktop-nav a{font-size:4rem}}.windowHeader{animation:1s ease-out both window-header-in;animation-delay:calc(var(--i,1) * .1s);background:#ddd;border-radius:3px 3px 0 0;position:relative;& .browser-button-close,& .browser-button-minimize,& .browser-button-expand{width:10px;height:10px;color:inherit;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:25%;& svg{fill:#0000;width:6px;height:6px;transition:fill .3s ease-in-out}}&:hover svg{fill:#000000b3}}.browser-button-close{background:#ff5f57;left:4px}.browser-button-minimize{background:#ffbd2e;left:18px}.browser-button-expand{background:#28ca41;left:32px}.windowTitle{color:#8a8a8a;text-align:center;padding:3px 0;font-family:Montserrat,Tahoma,Arial,sans-serif;font-size:1.2rem;font-weight:700}.preview{width:100%;height:31vh;min-height:20rem;animation:1s ease-out both fade-in;animation-delay:calc(var(--i,1) * .1s + 1s);background-position:top;background-repeat:no-repeat;background-size:cover;border-radius:0 0 3px 3px;display:block}.mobile .windowHeader{background:0 0}.mobile .windowTitle{color:#fff}.mobile .preview{background-size:contain}@media (width<=768px){.mobile .preview{height:65lvh}}@media (width>=600px){.preview{min-height:25rem}}@keyframes window-header-in{0%{opacity:0;transform:translateY(-50px)}}
