.CodeBlock_codeBlockWrapper__u7UME{margin:2rem 0;border-radius:.5rem;border:1px solid #333;overflow:hidden;background-color:#1e1e1e}.CodeBlock_header__yAzNp{display:flex;justify-content:space-between;align-items:center;padding:.5rem 1rem;background-color:#252526;border-bottom:1px solid #333;color:#ccc;font-family:monospace;font-size:.85rem}.CodeBlock_copyButton__O67XJ{display:flex;align-items:center;gap:.5rem;background:transparent;border:none;color:#888;cursor:pointer;transition:color .2s}.CodeBlock_copyButton__O67XJ:hover{color:#fff}.CodeBlock_icon__LJH5J{width:1rem;height:1rem}.CodeBlock_copyText__dOm2D{font-size:.75rem}.TextBlock_textBlock__I9uRg{margin-block:4rem}.Highlight_technology__w1lxA span{margin-left:2px}.Highlight_technology__w1lxA img,.Highlight_technology__w1lxA picture,.Highlight_technology__w1lxA svg{margin-inline:3px;vertical-align:sub;display:inline}.Highlight_none__OScPs{background:transparent}.Highlight_blue__9zJl7,.Highlight_code__VnMSn,.Highlight_green__gY7_z,.Highlight_red__XX_Sw,.Highlight_yellow__Qtbu9{padding:.1rem .3rem;border-radius:5px}.Highlight_red__XX_Sw{background-color:rgba(255,0,0,.2);color:#fcc}.Highlight_green__gY7_z{background-color:rgba(0,255,0,.2);color:#cfc}.Highlight_blue__9zJl7{background-color:rgba(0,162,255,.2);color:#ccecff}.Highlight_yellow__Qtbu9{background-color:rgba(255,251,0,.2);color:#feffcc}.Highlight_code__VnMSn{background:#000;font-family:monospace;border:1px solid #313131;font-size:14px}.TextSpacer_spacer-1__V0hYv{padding:1rem}.TextSpacer_spacer-2__vobxO{padding:2rem}.TextSpacer_spacer-4__Kh9Wy{padding:4rem}.TextSpacer_spacer-8__IDStT{padding:8rem}.TextSpacer_spacer-16__TmRno{padding:16rem}.mdxParentFile_caseStudyParagraph__6_zQO{line-height:2;margin-bottom:16px;text-align:justify}.mdxParentFile_caseStudyHeading__2wOZ4{scroll-margin-top:70px}.mdxParentFile_caseStudyUnorderedList__qUPzZ{line-height:2}.Hyperlink_link__dZwM1{color:#0ef;text-decoration:underline;text-underline-offset:4px;transition:color .2s ease,opacity .2s ease;display:inline-flex;align-items:center;gap:.25em}.Hyperlink_link__dZwM1:hover{color:#87f7ff}.CaseStudy_wrapper__m9qdJ{margin:150px auto;max-width:1200px;padding:var(--nwt--r-spacer-lg);display:flex;flex-direction:column;gap:4rem}.CaseStudy_header__Hu2no{display:flex;align-items:flex-start;gap:2rem}.CaseStudy_header__Hu2no h1{text-decoration:underline}.CaseStudy_body__cSB_S{display:flex;flex-direction:column;gap:6rem}.CaseStudy_bodyTop__gPJKj{display:flex;flex-direction:column;gap:5rem}.CaseStudy_bodyBottom__Zzfgw{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem}.CaseStudy_projectThumbnail__FZ4Qc{box-shadow:0 0 15px 5px rgba(0,81,255,.25);background:#000;border:1px solid #002b98}.CaseStudy_projectThumbnail__FZ4Qc img{width:100%;height:auto}.CaseStudy_studyOverview__4Vl18,.CaseStudy_thumbnailOverview__ijTjv{display:flex;flex-direction:column;gap:1.5rem}.CaseStudy_studyOverview__4Vl18 hr,.CaseStudy_thumbnailOverview__ijTjv hr{border:2px solid #0082fc;border-radius:5px}.CaseStudy_studyOverview__4Vl18 ul,.CaseStudy_thumbnailOverview__ijTjv ul{padding:0;margin:0;list-style:none}.CaseStudy_studyOverview__4Vl18 h2,.CaseStudy_thumbnailOverview__ijTjv h2{scroll-margin-top:70px}.CaseStudy_thumbnailOverview__ijTjv>div:last-child{display:flex;flex-direction:column;gap:1rem}.CaseStudy_studyOverview__4Vl18 strong{font-family:var(--font-heading);text-decoration:underline}.CaseStudy_details__hputu{display:flex;gap:1rem;flex-direction:column;align-items:flex-start}.CaseStudy_details__hputu ul li{display:grid;grid-template-columns:1fr auto;grid-gap:1rem;gap:1rem;font-size:14px}.CaseStudy_techStack__uZFtt{display:flex;flex-direction:column;gap:.25rem}.CaseStudy_techStack__uZFtt ul{display:flex;gap:.5rem;flex-wrap:wrap}.CaseStudy_links__XK3Qo{display:flex;flex-direction:column;gap:.25rem}.CaseStudy_links__XK3Qo>div{display:flex;gap:1rem;flex-wrap:wrap}.CaseStudy_tableOfContent___WNRo{flex:290px 0;flex-shrink:0;padding:1rem 1.5rem 3rem 0;position:-webkit-sticky;position:sticky;top:70px;display:none}.CaseStudy_tableOfContent___WNRo ul{padding:0;margin:0;list-style:none;max-height:calc(80svh - 60px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#07f #00457e}.CaseStudy_article__Sxpia{flex:72ch 1;max-width:72ch}.CaseStudy_article__Sxpia h2,.CaseStudy_article__Sxpia h3,.CaseStudy_article__Sxpia h4,.CaseStudy_article__Sxpia h5,.CaseStudy_article__Sxpia h6{font-weight:800}.CaseStudy_article__Sxpia h2{font-size:var(--nwt--r-fs-head-h3);text-transform:capitalize}.CaseStudy_article__Sxpia h3{font-size:var(--nwt--r-fs-head-h4)}.CaseStudy_article__Sxpia h4{font-size:var(--nwt--r-fs-head-h5)}@media(min-width:536px){.CaseStudy_details__hputu{gap:4rem;flex-direction:row;align-items:normal}}@media(min-width:900px){.CaseStudy_mobileTableOfContent__EjIm0{display:none}.CaseStudy_tableOfContent___WNRo{display:block}}.BlogPost_wrapper__6d22P{padding:var(--nwt--r-spacer-sm);gap:4rem;background:rgba(0,9,46,.75);box-shadow:0 0 15px 3px rgba(0,9,46,.75)}.BlogPost_relatedArticles__CnHaN,.BlogPost_wrapper__6d22P{margin:150px auto;max-width:1280px;display:flex;flex-direction:column}.BlogPost_relatedArticles__CnHaN{padding:0 var(--nwt--r-spacer-sm);align-items:center;gap:2rem}.BlogPost_relArtHeader__aehRw{text-align:center}.BlogPost_relArtBody__UwpS0{display:grid;grid-template-columns:repeat(1,1fr);grid-gap:2rem;gap:2rem;align-items:start}@media(min-width:768px){.BlogPost_relArtBody__UwpS0{grid-template-columns:repeat(2,1fr)}}.BlogPost_header__eOQMx{gap:2rem}.BlogPost_header__eOQMx,.BlogPost_miscs__Zg6vt{display:flex;align-items:center;flex-direction:column}.BlogPost_miscs__Zg6vt{gap:.5rem}.BlogPost_miscs__Zg6vt>span{display:none}.BlogPost_headingPara__he5Hg,.BlogPost_tags__m_Ycd{display:flex;flex-direction:column;text-align:center}.BlogPost_headingPara__he5Hg{gap:1rem}.BlogPost_headingPara__he5Hg>h1{text-decoration:underline}.BlogPost_personalCard__Br2rj{display:flex;align-items:center;flex-direction:column;gap:.5rem;margin:2rem 0}.BlogPost_personalCard__Br2rj hr{border:1px solid #656565;border-radius:5px;width:75%}.BlogPost_personalImage__qH3av{border-radius:50%;overflow:hidden;box-shadow:0 0 30px 2px #07f;min-width:75px}.BlogPost_personalCardContent__brTF1{display:flex;flex-direction:column;align-items:center;gap:.25rem}.BlogPost_personalText__lLefY{display:flex;flex-direction:column;font-size:16px;line-height:1.5;text-align:center}.BlogPost_personalText__lLefY>span{display:none}.BlogPost_personalLinks__StsUv{display:flex;flex-wrap:wrap;gap:.25rem}.BlogPost_personalLinks__StsUv>a{color:#fff;text-decoration:underline;transition:color .3s ease}.BlogPost_personalLinks__StsUv>a:hover{color:#7fc1ff}.BlogPost_thumbnail__lHRhI img{height:auto}.BlogPost_thumbnail__lHRhI figcaption{display:flex;gap:.5rem;font-size:14px;color:#d3d3d3}.BlogPost_thumbnail__lHRhI .BlogPost_thumbnailCaption__NoAcA{font-style:italic}.BlogPost_body__RR7eO{display:block;gap:2rem}.BlogPost_content__7RGlQ{flex:100% 1;min-width:0}.BlogPost_content__7RGlQ h2,.BlogPost_content__7RGlQ h3,.BlogPost_content__7RGlQ h4,.BlogPost_content__7RGlQ h5,.BlogPost_content__7RGlQ h6{font-weight:800}.BlogPost_content__7RGlQ h2{font-size:var(--nwt--r-fs-head-h3);text-transform:capitalize}.BlogPost_content__7RGlQ h3{font-size:var(--nwt--r-fs-head-h4)}.BlogPost_content__7RGlQ h4{font-size:var(--nwt--r-fs-head-h5)}.BlogPost_tableOfContentContainer__aOxN2{flex:290px 0;flex-shrink:0;display:none}.BlogPost_tableOfContent__WMwjN{padding:0 1.5rem 3rem 0;position:-webkit-sticky;position:sticky;top:70px}@media(min-width:384px){.BlogPost_personalText__lLefY{flex-direction:row;gap:.33rem}.BlogPost_personalText__lLefY>span{display:inline}}@media(min-width:576px){.BlogPost_wrapper__6d22P{padding:var(--nwt--r-spacer-lg)}.BlogPost_body__RR7eO{display:flex}.BlogPost_tags__m_Ycd{flex-direction:row;text-align:left;gap:.25rem}}@media(min-width:768px){.BlogPost_miscs__Zg6vt{flex-direction:row;align-items:flex-start}.BlogPost_miscs__Zg6vt>span{display:inline}}@media(min-width:900px){.BlogPost_mobileTableOfContent__jTTFu{display:none}.BlogPost_content__7RGlQ{flex:72ch 1}.BlogPost_tableOfContentContainer__aOxN2{display:block}}.TableOfContent_tocHeading__oyb9h{font-size:30px;text-decoration:underline;margin-bottom:1rem}.TableOfContent_tocListItem__Fddrr{border-left:3px solid hsla(0,0%,100%,.122);transition:all .05s ease-in-out}.TableOfContent_tocListItem__Fddrr.TableOfContent_active__yAOfv:hover,.TableOfContent_tocListItem__Fddrr:hover{background:rgba(84,158,255,.467);border-color:#0050b9}.TableOfContent_tocListItem__Fddrr.TableOfContent_active__yAOfv{background:rgba(84,158,255,.247);border-color:#003881}.TableOfContent_tocLink__JeYb8{display:block;padding:.25rem 1rem;color:#fff;text-decoration:none;transition:color .2s ease-in-out}.TableOfContent_tocIndentLv3__INBXd{padding-left:1rem}.TableOfContent_sidebarNav__qHEZ9 ol{padding:0;margin:0;list-style:none;max-height:calc(80svh - 60px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#07f #00457e}.TableOfContent_collapsibleNav__RZovE{border-radius:.5rem;margin-bottom:2rem;max-width:72ch;background:#00228a;box-shadow:0 0 10px 5px #002bad}.TableOfContent_collapsibleNav__RZovE button{text-decoration:underline}.TableOfContent_collapsibleHeader__5RLll{display:flex;justify-content:space-between;align-items:center;width:100%;padding:.75rem 1rem;background:none;border:0;color:#fff;font-weight:700;cursor:pointer}.TableOfContent_caret__PYyKB{transition:transform .2s ease-in-out}.TableOfContent_caretOpen__Lltnn{transform:rotate(180deg)}.TableOfContent_collapsibleContent__yIRKj{padding:0 1rem .75rem;border-top:1px solid #4a4a4a}.TableOfContent_collapsibleContent__yIRKj>ol{padding-left:1rem;margin:0}.TableOfContent_collapsibleContent__yIRKj>ol ::marker{font-size:14px}.MobileTableOfContent_floatingButton__Ejx_2{position:fixed;bottom:1.5rem;right:1.5rem;z-index:40;background-color:#0033be;color:#fff;padding:.75rem;border-radius:50%;border:1px solid #2b2b2b;box-shadow:0 4px 15px rgba(0,0,0,.4);opacity:0;transform:scale(.9);transition:opacity .3s ease,transform .3s ease,background .1s ease-in-out;pointer-events:none}.MobileTableOfContent_floatingButton__Ejx_2.MobileTableOfContent_visible__9XUvg{opacity:1;transform:scale(1);pointer-events:auto}.MobileTableOfContent_floatingButton__Ejx_2:hover{color:#fff;cursor:pointer;background-color:#0043fa}.MobileTableOfContent_overlayBackdrop__zaMqc{position:fixed;inset:0;background-color:rgba(0,0,0,.7);z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;transition:opacity .3s ease-out}.MobileTableOfContent_overlayBackdrop__zaMqc.MobileTableOfContent_open__nY6C_{opacity:1}.MobileTableOfContent_overlayContent__vughs{position:fixed;top:0;bottom:0;right:0;width:85%;max-width:320px;z-index:1000;background:linear-gradient(180deg,#000645,#000435 60%,#000216);border-left:1px solid #747474;padding:1rem;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .3s ease-out}.MobileTableOfContent_overlayContent__vughs.MobileTableOfContent_open__nY6C_{transform:translateX(0)}.MobileTableOfContent_overlayContent__vughs nav{overflow-y:auto;flex-grow:1;scrollbar-width:thin;scrollbar-color:#003cff #000a7e}.MobileTableOfContent_overlayContent__vughs nav ul{padding:0;margin:0;list-style:none}.MobileTableOfContent_overlayHeader__1QSnQ{display:flex;justify-content:space-between;align-items:center;padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid #4a4a4a;flex-shrink:0}.MobileTableOfContent_overlayHeader__1QSnQ h3{font-size:1.25rem}.MobileTableOfContent_overlayHeader__1QSnQ button{background:none;border:none;color:#a0aec0;cursor:pointer;padding:.25rem}.MobileTableOfContent_overlayHeader__1QSnQ button:hover{color:#fff}