.react-slideshow-container{align-items:center;display:flex;position:relative}.react-slideshow-container .nav{z-index:10;cursor:pointer;position:absolute}.react-slideshow-container .nav:first-of-type{left:0}.react-slideshow-container .nav:last-of-type{right:0}.react-slideshow-container .default-nav{text-align:center;color:#fff;background:#fff9;border:0;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.react-slideshow-container .default-nav:hover,.react-slideshow-container .default-nav:focus{color:#666;background:#fff;outline:0}.react-slideshow-container .default-nav.disabled:hover{cursor:not-allowed}.react-slideshow-container .default-nav:first-of-type{border-top:0;border-right:0;margin-right:-30px}.react-slideshow-container .default-nav:last-of-type{margin-left:-30px}.react-slideshow-container+ul.indicators{flex-wrap:wrap;justify-content:center;margin-top:20px;display:flex}.react-slideshow-container+ul.indicators li{width:7px;height:7px;margin:0;padding:5px;display:inline-block;position:relative}.react-slideshow-container+ul.indicators .each-slideshow-indicator{opacity:.25;cursor:pointer;color:#0000;background:0 0;border:0}.react-slideshow-container+ul.indicators .each-slideshow-indicator:before{content:"";text-align:center;background:#000;border-radius:50%;width:7px;height:7px;position:absolute;top:0;left:0}.react-slideshow-container+ul.indicators .each-slideshow-indicator:hover,.react-slideshow-container+ul.indicators .each-slideshow-indicator.active{opacity:.75;outline:0}.react-slideshow-fadezoom-wrapper{width:100%;overflow:hidden}.react-slideshow-fadezoom-wrapper .react-slideshow-fadezoom-images-wrap{flex-wrap:wrap;display:flex}.react-slideshow-fadezoom-wrapper .react-slideshow-fadezoom-images-wrap>div{opacity:0;position:relative}.react-slideshow-wrapper .react-slideshow-fade-images-wrap>div[aria-hidden=true]{display:none}.react-slideshow-wrapper.slide{width:100%;overflow:hidden}.react-slideshow-wrapper .images-wrap.horizontal{flex-wrap:wrap;width:auto;display:flex}.react-slideshow-wrapper .images-wrap>div[aria-hidden=true]{display:none}
.ProjectBody-module__bgI3dq__projectBodyWrapper pre{border:1px solid var(--lightningcss-light,#2f2f2f)var(--lightningcss-dark,#fff);margin:1em 0 2em}.ProjectBody-module__bgI3dq__projectBodyWrapper pre pre{border:none;margin:0}.ProjectBody-module__bgI3dq__projectBodyWrapper pre:has(code){clear:right;width:125%;padding:.5rem .5rem .5rem .25rem;position:relative;left:-12.5%}.ProjectBody-module__bgI3dq__projectBodyWrapper .glitch-embed-wrap{clear:right;width:125%;padding:.5rem .5rem .5rem .25rem;position:relative;left:-12.5%}.ProjectBody-module__bgI3dq__projectBodyWrapper pre pre{width:100%;left:0}.ProjectBody-module__bgI3dq__projectBodyWrapper pre code{white-space:pre-wrap!important}.ProjectBody-module__bgI3dq__projectBodyWrapper code span{display:inherit;margin-bottom:auto;font-size:1.1rem}
.projectWrapper{width:100%;max-width:1040px;margin:0 auto 2rem}.projectWrapper h1,.projectWrapper h2,.projectWrapper h3,.projectWrapper h4,.projectWrapper h5{font-weight:500;line-height:1.3}.projectWrapper h1{margin-bottom:1.5rem;font-size:3.052rem;line-height:1.1}.projectWrapper h2{margin-top:3.5rem;margin-bottom:1rem;font-size:2.441rem;font-weight:600}.projectWrapper h2:first-child{margin-top:0}.projectWrapper h3{margin-bottom:.5rem;font-size:1.953rem}.projectWrapper h4{margin-bottom:.5rem;font-size:1.563rem}.projectWrapper h5{font-size:1.25rem}.projectWrapper p{margin-top:0;margin-bottom:2rem}.projectWrapper ul,.projectWrapper ol{margin-top:2rem;margin-bottom:2rem}.projectWrapper li{margin-top:1rem;margin-bottom:1rem}.projectWrapper li:first-child{margin-top:0}.projectWrapper li:last-child{margin-bottom:0}.projectWrapper p,.projectWrapper li{letter-spacing:.02rem;font-size:1.25rem;line-height:32px}.projectWrapper small{font-size:1rem}.projectWrapper p:has(small){margin-bottom:1rem;line-height:24px}.projectWrapper a:not(.btn){color:var(--lightningcss-light,#06767b)var(--lightningcss-dark,#5cf8ff);-webkit-text-decoration:var(--post-link-decoration-underline);text-decoration:var(--post-link-decoration-underline);transition:text-decoration-color .3s}.btn{margin-bottom:2rem}.imageWrapper{float:right;flex-direction:column;align-items:center;margin-block-end:1rem;margin-inline-start:1.25rem;display:flex}.imageWrapper small{text-align:center;margin-block-start:.5rem}.technologyWrapper{margin-block-end:1.5rem}.technologyWrapper p{margin-block:.25rem}.technologyList{margin-block:0;padding-inline:0;list-style:none}.technologyList li{margin-inline-end:1rem;display:inline}.technologyList li:last-child{margin-inline-end:0}.technologyList li:not(:last-child):after{content:"•";margin-inline-start:1rem;font-weight:700}.btnContentWidth{width:max-content;margin-block-start:1rem}.projectWrapper a:hover{-webkit-text-decoration-color:var(--post-link-decoration-underline);text-decoration-color:var(--post-link-decoration-underline);opacity:.8}.iframeWrapper{flex-direction:column;justify-content:space-between;width:1300px;height:1100px;margin:0 -10%;display:flex}.iframeWrapper .caption{text-align:center;margin-bottom:0;font-size:1rem}.iPadIframeWrapper{height:1050px;position:relative}.iPadIframeWrapper img{pointer-events:none;width:100%;height:1050px;position:absolute;top:0;left:0}.iPadIframeWrapper iframe{border:none;position:absolute;top:50px;left:50px}@media screen and (max-width:1250px){.projectWrapper{margin-block-end:2rem;padding-inline-start:var(--tablet-section-padding);padding-inline-end:var(--tablet-section-padding)}.technologyList{margin-block:1rem;margin-inline-start:1rem;padding-inline-start:1rem;list-style-type:disc}.technologyList li{padding-inline-start:.5rem;display:list-item}.technologyList li:not(:last-child):after{content:none;margin-inline-start:0}}@media screen and (max-width:700px){.projectWrapper h1{line-height:1.25}}.mermaid-diagram{width:100%;overflow:visible}.mermaid-diagram svg{max-width:100%;height:auto;overflow:visible}.mermaid-diagram .nodeLabel{white-space:nowrap;overflow:visible}.mermaid-diagram .node rect,.mermaid-diagram .node circle,.mermaid-diagram .node ellipse,.mermaid-diagram .node polygon{min-width:fit-content}.mermaid-diagram .edgeLabel{white-space:nowrap;background-color:#0000;overflow:visible}.mermaid-diagram foreignObject,.mermaid-diagram foreignObject>div{overflow:visible;width:100%!important;max-width:100%!important}@media screen and (max-width:650px){.imageWrapper{float:none;align-items:center;margin-block-end:2rem;margin-inline-start:0}.imageWrapper img{width:100%;height:auto}}
