@charset "UTF-8";@font-face{font-display:auto;font-family:Calibre;font-style:"normal";font-weight:400;src:url(../fonts/Calibre/Calibre-Regular.woff2) format("woff2"),url(../fonts/Calibre/Calibre-Regular.woff) format("woff")}@font-face{font-display:auto;font-family:Calibre;font-style:"normal";font-weight:500;src:url(../fonts/Calibre/Calibre-Medium.woff2) format("woff2"),url(../fonts/Calibre/Calibre-Medium.woff) format("woff")}@font-face{font-display:auto;font-family:Calibre;font-style:"normal";font-weight:600;src:url(../fonts/Calibre/Calibre-Semibold.woff2) format("woff2"),url(../fonts/Calibre/Calibre-Semibold.woff) format("woff")}@font-face{font-display:auto;font-family:SF Mono;font-style:"normal";font-weight:400;src:url(../fonts/SFMono/SFMono-Regular.woff2) format("woff2"),url(../fonts/SFMono/SFMono-Regular.woff) format("woff")}@font-face{font-display:auto;font-family:SF Mono;font-style:"normal";font-weight:600;src:url(../fonts/SFMono/SFMono-Semibold.woff2) format("woff2"),url(../fonts/SFMono/SFMono-Semibold.woff) format("woff")}:root{--dark-navy:#020c1b;--navy:#0a192f;--light-navy:#112240;--lightest-navy:#233554;--navy-shadow:rgba(2,12,27,.7);--dark-slate:#495670;--slate:#8892b0;--light-slate:#a8b2d1;--lightest-slate:#ccd6f6;--white:#e6f1ff;--green:#64ffda;--green-tint:rgba(100,255,218,.1);--pink:#f57dff;--blue:#57cbff;--font-sans:"Calibre","Inter","San Francisco","SF Pro Text",-apple-system,system-ui,sans-serif;--font-mono:"SF Mono","Fira Code","Fira Mono","Roboto Mono",monospace;--fz-xxs:12px;--fz-xs:13px;--fz-sm:14px;--fz-md:16px;--fz-lg:18px;--fz-xl:20px;--fz-xxl:22px;--fz-heading:32px;--border-radius:4px;--nav-height:100px;--nav-scroll-height:70px;--tab-height:42px;--tab-width:120px;--easing:cubic-bezier(.645,.045,.355,1);--transition:all .25s cubic-bezier(.645,.045,.355,1);--hamburger-width:30px;--ham-before:top .1s ease-in .25s,opacity .1s ease-in;--ham-before-active:top .1s ease-out,opacity .1s ease-out .12s;--ham-after:bottom .1s ease-in .25s,transform .22s cubic-bezier(.55,.055,.675,.19);--ham-after-active:bottom .1s ease-out,transform .22s cubic-bezier(.215,.61,.355,1) .12s}html{box-sizing:border-box;scroll-behavior:smooth;width:100%}*,:after,:before{box-sizing:inherit}::-moz-selection{background-color:var(--lightest-navy);color:var(--lightest-slate)}::selection{background-color:var(--lightest-navy);color:var(--lightest-slate)}:focus{outline:2px dashed var(--green);outline-offset:3px}:focus:not(:focus-visible){outline:none;outline-offset:0}:focus-visible{outline:2px dashed var(--green);outline-offset:3px}html{scrollbar-color:var(--dark-slate) var(--navy);scrollbar-width:thin}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:var(--navy)}::-webkit-scrollbar-thumb{background-color:var(--dark-slate);border:3px solid var(--navy);border-radius:10px}body{margin:0;min-height:100%;overflow-x:hidden;width:100%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;background-color:var(--navy);color:var(--slate);font-family:var(--font-sans);font-size:var(--fz-xl);line-height:1.3}@media(max-width:480px){body{font-size:var(--fz-lg)}}body.blur,body.hidden{overflow:hidden}body.blur header{background-color:transparent}body.blur #content>*{filter:blur(5px) brightness(.7);pointer-events:none;transition:var(--transition);-webkit-user-select:none;-moz-user-select:none;user-select:none}#root{display:grid;grid-template-columns:100%;grid-template-rows:1fr auto}#root,main{min-height:100vh}main{margin:0 auto;max-width:1600px;padding:200px 150px;width:100%}@media(max-width:1080px){main{padding:200px 100px}}@media(max-width:768px){main{padding:150px 50px}}@media(max-width:480px){main{padding:125px 25px}}main.fillHeight{padding:0 150px}@media(max-width:1080px){main.fillHeight{padding:0 100px}}@media(max-width:768px){main.fillHeight{padding:0 50px}}@media(max-width:480px){main.fillHeight{padding:0 25px}}#root section{margin:0 auto;max-width:1000px;padding:100px 0}@media(max-width:768px){#root section{padding:80px 0}}@media(max-width:480px){#root section{padding:60px 0}}#root h1,#root h2,#root h3,#root h4,#root h5,#root h6{color:var(--lightest-slate);font-weight:600;line-height:1.1;margin:0 0 10px}#root .big-heading{font-size:clamp(30px,8vw,80px);margin:0}#root .medium-heading{font-size:clamp(40px,8vw,60px);margin:0}.numbered-heading{align-items:center;display:flex;font-size:clamp(26px,5vw,var(--fz-heading));margin:10px 0 40px;position:relative;white-space:nowrap;width:100%}.numbered-heading span{bottom:4px;color:var(--green);content:"0" counter(section) "."!important;counter-increment:section;font-family:var(--font-mono);font-size:clamp(var(--fz-md),3vw,var(--fz-xl));font-weight:400;margin-right:10px;position:relative}@media(max-width:480px){.numbered-heading span{margin-bottom:-3px;margin-right:5px}}.numbered-heading:after{background-color:var(--lightest-navy);content:"";display:block;height:1px;margin-left:20px;position:relative;top:-5px;width:300px}@media(max-width:1080px){.numbered-heading:after{width:200px}}@media(max-width:768px){.numbered-heading:after{width:100%}}@media(max-width:600px){.numbered-heading:after{margin-left:10px}}.gatsby-image-wrapper,img,svg{max-width:100%;vertical-align:middle;width:100%}img:not([alt]),img[alt=""]{filter:blur(5px)}svg{fill:currentColor;height:100%;vertical-align:middle;width:100%}svg.feather{fill:none}a{display:inline-block;text-decoration:none;-webkit-text-decoration-skip:ink;color:inherit;position:relative;text-decoration-skip-ink:auto;transition:var(--transition)}a.inline-link,a:focus,a:hover{color:var(--green)}a.inline-link{display:inline-block;text-decoration:none;-webkit-text-decoration-skip:ink;position:relative;text-decoration-skip-ink:auto;transition:var(--transition)}a.inline-link:active,a.inline-link:focus,a.inline-link:hover{color:var(--green);outline:0}a.inline-link:active:after,a.inline-link:focus:after,a.inline-link:hover:after{width:100%}a.inline-link:active>*,a.inline-link:focus>*,a.inline-link:hover>*{color:var(--green)!important;transition:var(--transition)}a.inline-link:after{background-color:var(--green);bottom:.37em;content:"";display:block;height:1px;opacity:.5;position:relative;transition:var(--transition);width:0}#root button{border:0;border-radius:0;cursor:pointer}#root input,#root textarea{border-radius:0;outline:0}#root input:focus,#root textarea:focus{outline:0}#root input:active::-moz-placeholder,#root input:focus::-moz-placeholder,#root textarea:active::-moz-placeholder,#root textarea:focus::-moz-placeholder{opacity:.5}#root input:active::placeholder,#root input:focus::placeholder,#root textarea:active::placeholder,#root textarea:focus::placeholder{opacity:.5}#root p{margin:0 0 15px}#root p:last-child,#root p:last-of-type{margin:0}#root p>a{display:inline-block;text-decoration:none;-webkit-text-decoration-skip:ink;color:var(--green);position:relative;text-decoration-skip-ink:auto;transition:var(--transition)}#root p>a:active,#root p>a:focus,#root p>a:hover{color:var(--green);outline:0}#root p>a:active:after,#root p>a:focus:after,#root p>a:hover:after{width:100%}#root p>a:active>*,#root p>a:focus>*,#root p>a:hover>*{color:var(--green)!important;transition:var(--transition)}#root p>a:after{background-color:var(--green);bottom:.37em;content:"";display:block;height:1px;opacity:.5;position:relative;transition:var(--transition);width:0}#root p>code{background-color:var(--light-navy);border-radius:var(--border-radius);color:var(--white);font-size:var(--fz-sm);padding:.3em .5em}#root ul.fancy-list{font-size:var(--fz-lg);list-style:none;margin:0;padding:0}#root ul.fancy-list li{margin-bottom:10px;padding-left:30px;position:relative}#root ul.fancy-list li:before{color:var(--green);content:"▹";left:0;position:absolute}#root blockquote{border-left:1px solid var(--green);margin-left:0;margin-right:0;padding-left:1.5rem}#root blockquote p{font-size:24px;font-style:italic}#root hr{background-color:var(--lightest-navy);border:0 initial;border-color:initial;-o-border-image:initial;border-image:initial;height:1px;margin:1rem}#root code{font-size:var(--fz-md)}#root code,.skip-to-content{font-family:var(--font-mono)}.skip-to-content{background-color:transparent;border:1px solid var(--green);border-radius:var(--border-radius);color:var(--green);cursor:pointer;font-size:var(--fz-xs);line-height:1;padding:1.25rem 1.75rem;text-decoration:none;transition:var(--transition)}.skip-to-content:active,.skip-to-content:focus,.skip-to-content:hover{background-color:var(--green-tint);outline:none}.skip-to-content:after{display:none!important}.skip-to-content{height:1px;left:-999px;overflow:hidden;position:absolute;top:auto;width:1px;z-index:-99}.skip-to-content:active,.skip-to-content:focus{background-color:var(--green);color:var(--navy);height:auto;left:0;overflow:auto;top:0;width:auto;z-index:99}#logo{color:var(--green)}.overline,.subtitle{color:var(--green);font-family:var(--font-mono);font-size:var(--fz-md);font-weight:400}.subtitle{line-height:1.5;margin:0 0 20px}@media(max-width:1080px){.subtitle{font-size:var(--fz-sm)}}@media(max-width:768px){.subtitle{font-size:var(--fz-xs)}}.subtitle a{display:inline-block;text-decoration:none;-webkit-text-decoration-skip:ink;color:var(--green);position:relative;text-decoration-skip-ink:auto;transition:var(--transition)}.subtitle a:active,.subtitle a:focus,.subtitle a:hover{color:var(--green);outline:0}.subtitle a:active:after,.subtitle a:focus:after,.subtitle a:hover:after{width:100%}.subtitle a:active>*,.subtitle a:focus>*,.subtitle a:hover>*{color:var(--green)!important;transition:var(--transition)}.subtitle a:after{background-color:var(--green);bottom:.37em;content:"";display:block;height:1px;opacity:.5;position:relative;transition:var(--transition);width:0}.subtitle a{line-height:1.5}.breadcrumb{align-items:center;color:var(--green);display:flex;margin-bottom:50px}.breadcrumb .arrow{display:block;margin-right:10px;padding-top:4px}.breadcrumb a{display:inline-block;text-decoration:none;-webkit-text-decoration-skip:ink;color:var(--green);position:relative;text-decoration-skip-ink:auto;transition:var(--transition)}.breadcrumb a:active,.breadcrumb a:focus,.breadcrumb a:hover{color:var(--green);outline:0}.breadcrumb a:active:after,.breadcrumb a:focus:after,.breadcrumb a:hover:after{width:100%}.breadcrumb a:active>*,.breadcrumb a:focus>*,.breadcrumb a:hover>*{color:var(--green)!important;transition:var(--transition)}.breadcrumb a:after{background-color:var(--green);bottom:.37em;content:"";display:block;height:1px;opacity:.5;position:relative;transition:var(--transition);width:0}.breadcrumb a{font-family:var(--font-mono);font-size:var(--fz-sm);font-weight:600;letter-spacing:.1em;line-height:1.5;text-transform:uppercase}.fadeup-appear-active,.fadeup-enter-active,.fadeup-leave-active{transform:translateY(0);transition:opacity .3s var(--easing),transform .3s var(--easing)}.fadeup-appear-from,.fadeup-enter-from,.fadeup-leave-to{opacity:.01;transform:translateY(20px);transition:opacity .3s var(--easing),transform .3s var(--easing)}.fadedown-enter-active,.fadedown-leave-active{opacity:1;transform:translateY(0);transition:opacity .3s var(--easing),transform .3s var(--easing)}.fadedown-enter-from,.fadedown-leave-to{opacity:.01;transform:translateY(-20px);transition:opacity .3s var(--easing),transform .3s var(--easing)}.fade-enter-active,.fade-leave-active{transition:opacity .3s var(--easing)}.fade-enter-from,.fade-leave-to{opacity:0}@media(min-width:1200px){.blog-header{-webkit-text-fill-color:var(--white);-webkit-text-stroke-width:1px;-webkit-text-stroke-color:var(--navy);text-shadow:0 4px 0 var(--slate)}}.error-page[data-v-45744047]{align-items:center;background-color:var(--dark-navy);color:var(--lightest-slate);display:flex;font-family:var(--font-mono);justify-content:center;min-height:100vh;padding:0 25px}.error-page .error-content[data-v-45744047]{max-width:600px;text-align:center}.error-page .error-code[data-v-45744047]{color:var(--green);font-size:clamp(80px,20vw,200px);line-height:1;margin:0}.error-page .error-message[data-v-45744047]{color:var(--slate);font-size:clamp(var(--fz-md),4vw,var(--fz-xl));margin:20px 0 40px}.error-page .back-home[data-v-45744047]{background-color:transparent;border:1px solid var(--green);border-radius:var(--border-radius);color:var(--green);cursor:pointer;font-family:var(--font-mono);font-size:var(--fz-sm);padding:1.25rem 1.75rem;transition:var(--transition)}.error-page .back-home[data-v-45744047]:focus,.error-page .back-home[data-v-45744047]:hover{background-color:var(--green-tint);outline:none}
