@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap");.ProjectTile_projectTile__0b60g{background-color:hsla(0,0%,100%,.2);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-radius:5px;padding:20px;box-shadow:0 4px 8px transparent;border:1px solid rgba(51,51,51,.1);transition:transform .3s ease-in-out,box-shadow .3s ease-in-out;text-align:left;display:flex;flex-direction:column;height:100%}@media (min-width:768px){.ProjectTile_projectTile__0b60g:hover{box-shadow:0 6px 15px rgba(0,0,0,.15);transform:translateY(-2px)}}.ProjectTile_disabled__MNFwk{pointer-events:none;opacity:.25}.ProjectTile_projectTile__0b60g h3{color:#333;margin-top:0;font-weight:800}.ProjectTile_projectTile__0b60g p{color:#333}.ProjectTile_projectTile__0b60g a.ProjectTile_primary___dlLH.ProjectTile_btns__nu7mL{background-color:#66f966;transition:all .2s ease-in-out;color:#333}.ProjectTile_projectTile__0b60g a.ProjectTile_primary___dlLH.ProjectTile_btns__nu7mL:hover{transform:scale(.97)!important;transition:all .2s ease-in-out}.ProjectTile_projectTile__0b60g a.ProjectTile_secondary__i01Ev.ProjectTile_btns__nu7mL{background-color:#333;transition:all .2s ease-in-out;color:#f5f5f5}.ProjectTile_projectTile__0b60g a.ProjectTile_secondary__i01Ev.ProjectTile_btns__nu7mL:hover{opacity:.8!important;transform:scale(.97)!important;transition:all .2s ease-in-out}.ProjectTile_projectTile__0b60g a.ProjectTile_tertiary__eHLTg.ProjectTile_btns__nu7mL{color:#333;background-color:#f6c0f6;transition:all .2s ease-in-out}.ProjectTile_projectTile__0b60g a.ProjectTile_tertiary__eHLTg.ProjectTile_btns__nu7mL:hover{opacity:.8!important;transform:scale(.97)!important;transition:all .2s ease-in-out}.ProjectTile_projectTile__0b60g a.ProjectTile_btns__nu7mL{font-weight:700;display:inline-block;color:#333;padding:10px 15px;border-radius:5px;text-decoration:none;margin-top:10px;text-align:center}.ProjectTile_projectTile__0b60g a{text-decoration:none}.ProjectTile_tagWrap__Zh0RO{line-height:1}.ProjectTile_tag__yr7cD{background-color:transparent;border:1px solid hsla(0,0%,100%,.25);color:#333;margin-right:5px;display:inline-block;margin-top:0;margin-bottom:0;line-height:1;word-wrap:break-word!important;word-break:break-word!important}.ProjectTile_hasButtons__KFe54>:last-child{margin-bottom:10px}.ProjectTile_title__yWKxQ{margin-bottom:0;padding-bottom:0;padding-top:0;word-wrap:break-word}.ProjectTile_subtitle__h49ZL{margin-bottom:5px;margin-top:0}.ProjectTile_description__BlQ1t{margin-top:5px;margin-bottom:20px;flex-grow:1}.AppbarWrapper_metadataTwo__Lh4VW{display:flex;align-items:center;width:min(100vw - 40px,700px);padding:10px 0;margin:0 auto}.AppbarWrapper_banner__j0Vcg{padding:5px 20px;background-color:#66f966;text-align:center;cursor:pointer}.AppbarWrapper_metadataTwo__Lh4VW a{text-decoration:none}.AppbarWrapper_small__CGMTI{width:-moz-fit-content;width:fit-content}.AppbarWrapper_metadataTwo__Lh4VW>:first-child{text-align:left;flex:1}.AppbarWrapper_metadataTwo__Lh4VW>:nth-child(2){flex:1;text-align:center;flex-shrink:0}.AppbarWrapper_metadataTwo__Lh4VW>:last-child{text-align:right;flex:1}.AppbarWrapper_top__MQZ2V{position:sticky;top:0;display:flex;border-bottom:1px solid rgba(51,51,51,.1);width:100%;justify-content:left;align-items:center;color:#333;z-index:5;transition:all .25s ease-in-out;background-color:#f5f5f5}.AppbarWrapper_content__UQy8H{text-align:center;display:flex;align-items:center;justify-content:center;width:700px;padding:0 20px;margin:25px auto;flex-direction:column;z-index:999}.AppbarWrapper_primary__lyWmx{font-weight:700}@media (max-width:768px){.AppbarWrapper_primary__lyWmx{opacity:0!important;display:none}.AppbarWrapper_metadataTwo__Lh4VW>:nth-child(2){flex-shrink:0}.AppbarWrapper_primaryWrapper__B1UmW{display:none}}.AppbarWrapper_leftAligned__nSnQF{text-align:left;margin-right:auto}.AppbarWrapper_centerAligned__odHJh{text-align:center;flex-grow:0;flex-shrink:0}.AppbarWrapper_bannerLink__Qinb5{text-decoration:none}.AppbarWrapper_bannerLink__Qinb5:hover{opacity:.6}.AppbarWrapper_deprecatedBanner__nN1EL{cursor:default}.AppbarWrapper_hereLink__3Ge8y{text-decoration:underline;color:inherit}.AppbarWrapper_hereLink__3Ge8y:hover{opacity:.6}.AppbarWrapper_rightAligned__b6Dhg{text-align:right;margin-left:auto;padding-left:20px}.AppbarWrapper_link__kvI4m{background-color:#3333330e;padding:5px;border-radius:5px;line-height:2}.AppbarWrapper_hidden__z_Tnk{pointer-events:none}.Live_liveIndicator__XU95a{color:#66f966;border-radius:5px;text-align:left;padding-bottom:2px;font-size:16px}.Live_indicatorText__6Bp8D{color:#33333369!important;font-size:12px;padding-bottom:7px}.Live_dots__Dn45R{display:inline-block;position:relative;width:24px;padding-bottom:8px}.Live_dot__Gs9Rw{position:absolute;top:0;width:6px;height:6px;border-radius:50%;background-color:#66f966;animation:Live_pulse__qA47Z .8s ease-in-out infinite both;margin-left:3px}.Live_dot__Gs9Rw:first-child{left:0;animation-delay:-.32s}.Live_dot__Gs9Rw:nth-child(2){left:8px;animation-delay:-.16s}.Live_dot__Gs9Rw:nth-child(3){left:16px}@keyframes Live_pulse__qA47Z{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}code[class*=language-],pre[class*=language-]{color:#ba7ebe;font-size:13px;text-shadow:none;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;hyphens:none}code[class*=language-]::-moz-selection,pre[class*=language-]::-moz-selection{text-shadow:none;background:#b3d4fc}code[class*=language-]::mozselection,code[class*=language-]::selection,pre[class*=language-]::mozselection,pre[class*=language-]::selection{text-shadow:none;background:#b3d4fc}@media print{code[class*=language-],pre[class*=language-]{text-shadow:none}}pre[class*=language-]{padding:15px!important;margin:20px 0!important;overflow:auto;background:#e6e6e6}:not(pre)>code[class*=language-]{padding:.1em .3em;border-radius:.3em;color:#db4c69;background:#f9f2f4}.namespace{opacity:.7}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#779c9c}.token.punctuation{color:#adadad}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#905}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string{color:#690}.language-css .token.string,.style .token.string,.token.entity,.token.operator,.token.url{color:#a67f59;background:#e6e6e6}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.function{color:#dd4a68}.token.important,.token.regex,.token.variable{color:#e90}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}pre[data-line]{position:relative}pre[class*=language-]>code[class*=language-]{position:relative;z-index:1}.line-highlight{position:absolute;left:0;right:0;padding-left:0;padding-bottom:inherit;padding-right:0;padding-top:inherit;margin-top:1em;background:#f7ebc6;box-shadow:inset 5px 0 0 #f7d87c;z-index:0;pointer-events:none;line-height:inherit;white-space:pre}.ContactForm_form__SPAg0{width:100%}.ContactForm_formContainer__pCWF8{gap:5px;flex-direction:column;display:flex;align-items:center;padding:0 15px}.ContactForm_input__r2X62,.ContactForm_textarea__FwTA3{background-color:#f5f5f5;width:100%;padding:15px;font-size:1rem;border:1px solid rgba(51,51,51,.1);border-radius:5px;font-family:Roboto,sans-serif}.ContactForm_textarea__FwTA3{height:150px;resize:vertical}.ContactForm_btnWrapper__pgLQM{display:flex;justify-content:flex-end}@media (max-width:768px){.ContactForm_submitButton__u75ka{width:100%!important}}.ContactForm_submitButton__u75ka{width:100%;margin-top:25px;padding:15px;font-size:1rem;color:#333;background-color:#66f966;border:none;border-radius:5px;cursor:pointer;transition:opacity .2s ease-in-out,transform .2s ease-in-out;font-weight:700;text-align:center;white-space:normal;overflow:visible;text-overflow:clip}.ContactForm_errorMessage__LiHxO{text-align:left;transition:opacity .2s;overflow:hidden;color:#d04848;white-space:nowrap;max-lines:1;height:50px;display:flex;align-items:center}.ContactForm_submitButton__u75ka:hover{background-color:#66f966;opacity:.8;transform:scale(.97)}.BottomBump_container__9kC7S{display:flex;flex-direction:column;align-items:center;cursor:pointer;transition:transform .2s ease-in-out}.BottomBump_nudgeTile__a26H5{width:300px;margin:20px auto;background-color:#66f966;border-radius:30px;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#333;box-shadow:0 0 50px 0 rgba(102,249,102,.586)}@keyframes BottomBump_bounce__o3U1G{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.BottomBump_nudgeTile__a26H5{animation:BottomBump_bounce__o3U1G 1s infinite}.BottomBump_nudgeTile__a26H5:hover{animation-play-state:paused}.BottomBump_text__UC6WO{padding:10px}.BottomBump_arrowDown__Q_j7n{font-size:24px}.Portfolio_container__ZvEdq{display:flex;flex-direction:column;box-sizing:border-box;padding:0 20px;margin:50px auto 0;width:min(100vw,740px);text-align:center;align-items:center}.Portfolio_btnLink__kz_Xq{text-decoration:underline}.Portfolio_btnLink__kz_Xq:hover{cursor:pointer}.Portfolio_subtitle__CaD_z{width:90%;min-width:min(470px,100%)}.Portfolio_mdBlock__s2PD5{width:100%;margin:-20px auto!important}.Portfolio_leftAlign__XxxuA{text-align:left}.Portfolio_columnsContainer__eLZYB{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;margin-left:-10px;margin-right:-10px}.Portfolio_column___hbvU{padding-left:10px;padding-right:10px;flex:1 1 45%;max-width:45%;text-align:left}.Portfolio_columnDesc__WXFhm{margin-top:5px}@media (max-width:768px){.Portfolio_columnsContainer__eLZYB{justify-content:center}.Portfolio_column___hbvU:nth-child(odd){padding-bottom:20px}.Portfolio_column___hbvU{flex-basis:100%;max-width:100%;text-align:center}}@media (min-width:768px){.Portfolio_column___hbvU:nth-child(odd){text-align:left}.Portfolio_column___hbvU:nth-child(2n){text-align:right}}.Portfolio_hr__4cm1g{padding:20px 0;width:100%}.Portfolio_container__ZvEdq table{margin:0}.Portfolio_left__5kUPT{display:inline;text-align:left;display:block;margin-bottom:0;padding-bottom:0!important;padding-top:0;margin-right:auto}.Portfolio_left__5kUPT p{padding-bottom:10px;padding-top:5px}.Portfolio_subHeader__Ebypv{margin:10px auto;background-color:#66f966;padding:2px;border-radius:2px;font-style:italic}.Portfolio_container__ZvEdq h3{margin-bottom:0}.Portfolio_splash__6hJkm{-o-object-position:top;object-position:top;border:1px solid rgba(51,51,51,.1);border-radius:50%;width:200px;height:200px}.Portfolio_title__hKCjM{line-height:1.4;margin-bottom:5px}.Portfolio_container__ZvEdq h3{margin-top:0}.Portfolio_barcode__2mev6{height:5px;width:100%;background-image:linear-gradient(90deg,#333 10%,#fff 0,#fff 20%,#333 0,#333 30%,#fff 0,#fff 40%,#333 0,#333 50%,#fff 0,#fff 60%,#333 0,#333 70%,#fff 0,#fff 80%,#333 0,#333 90%,#fff 0,#fff);background-size:40px 40px}.Portfolio_barcodeBig__6LmBa{height:70px}.Portfolio_pt20__ZHb4n{padding-top:20px}.Portfolio_pt40__IbNJD{padding-top:40px}.Portfolio_pt10__bGy7Y{padding-top:10px}.Portfolio_pb20__3DPq5{padding-bottom:20px}.Portfolio_pb40__dAguN{padding-bottom:40px}.Portfolio_badgeRow__zxwoW{padding:10px 0;width:100%;display:flex;justify-content:space-between;align-items:center}.Portfolio_badgeChild__ZIUu0{display:flex;align-items:center;flex-wrap:wrap}.Portfolio_badgePara__Ks8RV{text-align:left;margin-right:auto;padding-right:20px}.Portfolio_badge__CqWnn{display:flex;justify-content:flex-end;align-items:center;height:100%}.Portfolio_container__ZvEdq table tr{text-align:left}.Portfolio_columns__hmLH2{width:100%;height:100%;display:flex;flex-wrap:wrap;align-items:stretch}.Portfolio_columnItem__x0fWT{box-sizing:border-box;display:flex;flex-direction:column;justify-content:space-between;width:100%;min-width:0;align-items:stretch;align-self:stretch}.Portfolio_columns__hmLH2>.Portfolio_columnItem__x0fWT:nth-last-child(2):first-child,.Portfolio_columns__hmLH2>.Portfolio_columnItem__x0fWT:nth-last-child(2):first-child~.Portfolio_columnItem__x0fWT{width:calc(50% - 10px)}.Portfolio_columns__hmLH2>.Portfolio_columnItem__x0fWT:nth-last-child(2):first-child{margin-right:10px}.Portfolio_columns__hmLH2>.Portfolio_columnItem__x0fWT:nth-last-child(2):first-child~.Portfolio_columnItem__x0fWT{margin-left:10px}.Portfolio_columns__hmLH2{margin-bottom:20px}@media screen and (max-width:768px){.Portfolio_columns__hmLH2{flex-direction:column}.Portfolio_columnItem__x0fWT{width:100%!important;margin-right:0!important;margin-left:0!important;margin-bottom:20px}.Portfolio_columnItem__x0fWT:last-child{margin-bottom:0}}.Portfolio_bottomBump__hMrpf{position:fixed;bottom:0;right:0;left:0;text-align:center;z-index:10;transition:opacity .5s ease-in-out}.Portfolio_hiddenBottomBump__rYGWZ{opacity:0;pointer-events:none}@media (max-height:550px),(min-height:1000px){.Portfolio_bottomBump__hMrpf{display:none}}.Portfolio_legendRow__R7Z4c,.Portfolio_noSplit__QP3j9{display:flex;align-items:center;flex-wrap:wrap}.Portfolio_legendDot__bGqOb{width:10px;height:10px;border-radius:50%;margin-left:8px;margin-right:16px}.Portfolio_legendKey__2iZAx{margin-right:16px}.Portfolio_legendDot__bGqOb.Portfolio_black__4MR_o{background-color:#333}.Portfolio_legendDot__bGqOb.Portfolio_green___UV_M{background-color:#66f966}.Portfolio_legendDot__bGqOb.Portfolio_violet__BPvF_{background-color:#f6c0f6}.Portfolio_legendTop__Kh85E{margin-top:7px;padding-bottom:12px}.Portfolio_mainTable__3J_ph{max-width:100%;border-collapse:collapse;overflow-x:scroll;overscroll-behavior:unset!important;text-align:left;margin-right:auto}.Portfolio_mainTable__3J_ph td,.Portfolio_mainTable__3J_ph th{background-color:#ebebeb}