:root{font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;font-size:clamp(1em,1em + 1vmin,2em);color:#000;background-color:#fff;--almost-white: hsl(0, 0%, 80%);--quarter-white: hsl(0, 0%, 75%);--slight-white: hsl(0, 0%, 70%);--white-gray: hsl(0, 0%, 60%);--middle-gray: hsl(0, 0%, 50%);--black-gray: hsl(0, 0%, 40%);--slight-black: hsl(0, 0%, 30%);--quarter-black: hsl(0, 0%, 25%);--almost-black: hsl(0, 0%, 20%);--red: hsl(0, 80%, 55%);--green: hsl(135, 80%, 55%);--blue: hsl(220, 100%, 55%);--cyan: hsl(175, 80%, 55%);--magenta: hsl(300, 80%, 55%);--yellow: hsl(60, 80%, 55%);--factor: calc(1 + .618 / 2);--size-4: calc(var(--size-3) / var(--factor));--size-3: calc(var(--size-2) / var(--factor));--size-2: calc(var(--size-1) / var(--factor));--size-1: calc(var(--size0) / var(--factor));--size0: 1em;--size1: calc(var(--size0) * var(--factor));--size2: calc(var(--size1) * var(--factor));--size3: calc(var(--size2) * var(--factor));--size4: calc(var(--size3) * var(--factor))}*,:before,:after{box-sizing:border-box;margin:0;padding:0;border:0 solid;color:inherit;font-family:inherit;overflow-wrap:break-word}body{width:100vw;min-height:100vh}h1,h2,h3,h4,h5,h6{margin-bottom:var(--size-4)}h1{font-size:var(--size2);font-weight:800;line-height:1.3}h2{font-size:var(--size2);font-weight:750;line-height:1.3}h3{font-size:var(--size1);font-weight:700;line-height:1.4}h4{font-size:var(--size1);font-weight:650;line-height:1.4}h5{font-size:var(--size0);font-weight:600;line-height:1.5}h6{font-size:var(--size0);font-weight:550;line-height:1.5}p,li{line-height:1.5}a{color:var(--blue)}button{cursor:pointer;font-size:var(--size0)}img{max-width:100%;max-height:100%;display:block}hr{margin:var(--size1) 0;border-top:solid}::selection{background-color:#eaff007f}main{display:grid;grid-gap:var(--size0);gap:var(--size0);padding:var(--size1)}main>section{margin:0 var(--size0)}header{position:-webkit-sticky;position:sticky;top:0;z-index:1;border-bottom:solid thin;background-color:#fff}nav{display:grid;grid-template:"icon menu contact" / 1fr 2fr 1fr;justify-content:space-between;align-items:center;padding:0 var(--size0);-webkit-user-select:none;user-select:none}@media (max-width: 849px){nav{grid-template:"icon contact menu" / 1fr 2fr 1fr}}nav a{margin:var(--size-4);font-weight:500;color:#000;text-decoration:none}nav>.nav-icon{grid-area:icon;height:var(--size3);justify-self:start}nav>.nav-icon>img{width:auto}nav>.menu{grid-area:menu;display:grid;grid-auto-flow:column;grid-gap:var(--size2);gap:var(--size2);justify-self:center}nav>.menu>.menu-button{display:none;padding:var(--size-4);font-weight:500;color:#000;background-color:transparent;outline:none}@media (max-width: 849px){nav>.menu{justify-self:end}nav>.menu>a:not(.menu-button){display:none}nav>.menu>.menu-button{display:unset}}nav>.contact{grid-area:contact;color:#fff;background-color:var(--blue);padding:var(--size-3);border-radius:var(--size-4);justify-self:end}@media (max-width: 849px){nav>.contact{justify-self:center}}nav>.expanded-menu-container{position:absolute;top:100%;left:0;right:0;height:100vh;justify-content:center;text-align:center;display:none}@media (max-width: 849px){nav>.expanded-menu-container.visible{display:grid}}@supports ((-webkit-backdrop-filter: blur(12px)) or (backdrop-filter: blur(12px))){nav>.expanded-menu-container{background-color:#ffffffd9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}}@supports not ((-webkit-backdrop-filter: blur(12px)) or (backdrop-filter: blur(12px))){nav>.expanded-menu-container{background-color:#fff}}nav>.expanded-menu-container>.expanded-menu{min-width:80vw;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;margin:var(--size0);padding:var(--size-1);border-radius:var(--size-1);background-color:#fff;box-shadow:0 16px 24px #0000001a}nav>.expanded-menu-container>.expanded-menu>ul{list-style:none}nav>.expanded-menu-container>.expanded-menu>ul>li>a{display:block;margin:0;padding:var(--size-4);font-size:var(--size1)}@supports (scroll-margin-top: 4em){:target{scroll-margin-top:4em}}@supports not (scroll-margin-top: 4em){:target{border-top:calc(4em + env(safe-area-inset-top,0)) solid transparent;margin-top:calc(-4em - env(safe-area-inset-top,0));background-clip:padding-box}}
