@import "https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap";:root{--std-wrapper:1444px;--sml-wrapper:1000px;--lrg-wrapper:1800px;--padding-lr:24px;--padding-tb:48px;--padding-lr-d:40px;--padding-tb-d:120px;--grid-gap:24px;--grid-gap-d:32px;--grid-gap-row-d:48px;--hero-gap:12px;--hero-gap-d:12px;--font-mazda:MazdaTypeTT;--font-bt50:BT-50Type;--wrapper-gap:24px;--wrapper-gap-d:32px;--clr-primary:#8969fa;--clr-primary-lt:#af8fff;--clr-primary-dk:#3d1dae;--clr-white:#fff;--clr-black:#101010;--clr-grey:#ccc;--clr-grey-dk:#999;--clr-dark-grey:#151515;--clr-dark-grey-lt:#545760;--clr-dark-grey-dk:#21242d;--clr-blue:#00fffc;--clr-blue-lt:#26ffff;--clr-blue-xlt:#bfffff;--clr-blue-dk:#00b3b0;--clr-blue-xdk:#001a1a;--clr-purple:#8969fa;--clr-purple-lt:#af8fff;--clr-purple-xlt:#fcdcff;--clr-purple-dk:#3d1dae;--clr-purple-xdk:#1f0039;--clr-pink:#e400ff;--clr-pink-lt:#ff26ff;--clr-pink-xlt:#ffbfff;--clr-pink-dk:#9800b3;--clr-pink-xdk:#4b0066;--clr-nav:#000;--header-text:#fff;--header-link:#b0b0b0;--header-bg:#101010;--clr-head:#e5e5e5;--clr-base:#d5d5d5;--clr-dark-bg-base:#d5d5d5;--clr-grey-border:#d5d5d5;--clr-dark-grey-border:#333;--clr-footer-border:#333;--extra-text-spacing:.5em;--clr-gradient:linear-gradient(45deg, #00fffc, #e400ff);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}@media (width>=1024px){:root{--extra-text-spacing:1em}}html *{box-sizing:border-box}body{background-color:var(--clr-black);color:var(--clr-base);margin:0;font-size:12px;line-height:1.6em}.dark-bg h1,.dark-bg h2,.dark-bg h3,.dark-bg h4,.dark-bg .h1,.dark-bg .h2,.dark-bg .h3,.dark-bg .h4{color:var(--clr-head)}.dark-bg,.dark-bg p,.dark-bg p a,.dark-bg ul{color:var(--clr-base)}img{max-width:100%;height:auto}.img-round img{border-radius:24px}@media (width>=1024px){body{font-size:14px;line-height:2em}}.white-bg{background-color:var(--clr-white)!important}.black-bg{background-color:var(--clr-black)!important}.grey-bg{background-color:var(--clr-grey)!important}.dark-grey-bg{background-color:var(--clr-dark-grey)!important}.purple-bg{background-color:var(--clr-purple-xdk)}.blue-gradiant-bg{background:linear-gradient(135deg, var(--clr-purple-xdk), var(--clr-blue-xdk))}.blue-gradiant-top-bg{background:linear-gradient(0deg, var(--clr-black), var(--clr-blue-xdk))}.purple-gradiant-top-bg{background:linear-gradient(0deg, var(--clr-black), var(--clr-purple-xdk))}.gradiant-black-overlay-bg{content:"";background-color:#000000bf;width:100%;height:100%;position:absolute;top:0;left:0}@media (width>=1024px){.gradiant-black-overlay-bg{background-color:#000000d1}}[class*=\ icon-],[class^=icon-]{stroke-width:0;stroke:currentColor;fill:currentColor;width:1em;height:1em;display:inline-block}body,button{font-optical-sizing:auto;font-family:Montserrat,sans-serif;font-style:normal;font-weight:400}p{margin:0}a,a:visited,a:hover,a:active{color:inherit;text-decoration:none}p a{color:var(--clr-primary)}p a:hover{text-decoration:underline}.t-center{text-align:center}.t-white{color:var(--clr-white)!important}.h1,h1,.h2,h2{gap:8px;display:grid}.title-eyebrow{background:var(--clr-gradient);-webkit-text-fill-color:transparent;color:#0000;letter-spacing:.25em;text-transform:uppercase;-webkit-background-clip:text;background-clip:text;width:fit-content;font-size:8px;line-height:1.5em;display:block}.title-eyebrow:before{content:"//";margin-right:4px}.section-title{gap:8px;width:100%;max-width:800px;line-height:1;display:grid}.t-center .title-eyebrow{margin:0 auto}.section-title.t-center,.t-center .section-title{margin-left:auto;margin-right:auto}.t-spacing{letter-spacing:.5em;text-transform:uppercase;font-size:.8em;font-weight:400;line-height:1.5em}@media (width>=1024px){.anchor{top:-90px}.title-eyebrow{letter-spacing:var(--extra-text-spacing);font-size:12px}.h1,h1,.h2,h2{gap:16px}}@media (width<=1023px){.t-center-below-d{text-align:center}}@media (width<=767px){.t-center-below-t{text-align:center}}h1,h2,h3,h4,.h1,.h2,.h3,.h4{letter-spacing:-.065em;color:var(--clr-head);margin:0;font-style:normal;font-weight:700;line-height:.9em}h1,.h1{font-size:1em}h2,.h2{font-size:.8em}h3,.h3{font-size:1.5em}h4,.h4{font-size:1.3em}@media (width>=320px){h1,.h1{font-size:3em}h2,.h2{font-size:2.5em}}@media (width>=1024px){h1,.h1{font-size:4.5em}h2,.h2{font-size:3.25em}h3,.h3{font-size:2em}h4,.h4{font-size:1.75em}}@media (width>=1440px){h1,.h1{font-size:6em}h2,.h2{font-size:4em}h3,.h3{font-size:2.5em}h4,.h4{font-size:1.3em}}.anchor{position:relative;top:-103px}@media (width>=1024px){.anchor{top:-90px}.hide-desktop{display:none!important}}@media (width<=1023px){.hide-below-desktop{display:none!important}}@media (width<=767px){.hide-mobile{display:none!important}}.std-wrapper{max-width:var(--std-wrapper)}.sml-wrapper{max-width:var(--sml-wrapper)}.lrg-wrapper{max-width:var(--lrg-wrapper)}.std-wrapper,.sml-wrapper,.lrg-wrapper,.full-wrapper{gap:var(--wrapper-gap);padding:var(--padding-tb) var(--padding-lr);margin:0 auto;display:grid;position:relative}.full-wrapper{padding-left:0;padding-right:0}.std-wrapper.no-padding-bottom,.sml-wrapper.no-padding-bottom,.lrg-wrapper.no-padding-bottom,.full-wrapper.no-padding-bottom{padding-bottom:0!important}.std-wrapper.no-padding-top,.sml-wrapper.no-padding-top,.lrg-wrapper.no-padding-top,.full-wrapper.no-padding-top{padding-top:0!important}main>section.content:first-child>.sml-wrapper,main>section.content:first-child>.std-wrapper,main>section.content:first-child>.lrg-wrapper{padding-top:120px}@media (width>=1024px){.std-wrapper,.sml-wrapper,.lrg-wrapper,.full-wrapper{gap:var(--wrapper-gap-d)}.std-wrapper,.sml-wrapper,.lrg-wrapper{padding:var(--padding-tb-d) var(--padding-lr-d)}.full-wrapper{padding-top:var(--padding-tb-d);padding-bottom:var(--padding-tb-d)}}.grid,.grid-m-two-cols,.grid-m-three-cols,.grid-m-four-cols,.grid-m-five-cols,.grid-t-two-cols,.grid-t-three-cols,.grid-t-four-cols,.grid-t-five-cols,.grid-l-two-cols,.grid-l-three-cols,.grid-l-four-cols,.grid-l-five-cols,.grid-d-two-cols,.grid-d-three-cols,.grid-d-four-cols,.grid-d-five-cols,.grid-xl-two-cols,.grid-xl-three-cols,.grid-xl-four-cols,.grid-xl-five-cols{gap:var(--grid-gap);display:grid}.grid-m-two-cols.no-gaps,.grid-m-three-cols.no-gaps,.grid-m-four-cols.no-gaps,.grid-m-five-cols.no-gaps,.grid-t-two-cols.no-gaps,.grid-t-three-cols.no-gaps,.grid-t-four-cols.no-gaps,.grid-t-five-cols.no-gaps,.grid-l-two-cols.no-gaps,.grid-l-three-cols.no-gaps,.grid-l-four-cols.no-gaps,.grid-l-five-cols.no-gaps,.grid-d-two-cols.no-gaps,.grid-d-three-cols.no-gaps,.grid-d-four-cols.no-gaps,.grid-d-five-cols.no-gaps,.grid-xl-two-cols.no-gaps,.grid-xl-three-cols.no-gaps,.grid-xl-four-cols.no-gaps,.grid-xl-five-cols.no-gaps{gap:0}.grid>div,.grid-d-two-cols>div,.grid-d-three-cols>div,.grid-d-four-cols>div,.grid-d-five-cols>div,.grid-l-two-cols>div,.grid-l-three-cols>div,.grid-l-four-cols>div,.grid-l-five-cols>div,.grid-t-two-cols>div,.grid-t-three-cols>div,.grid-t-four-cols>div,.grid-t-five-cols>div,.grid-m-two-cols>div,.grid-m-three-cols>div,.grid-m-four-cols>div,.grid-m-five-cols>div{grid-column:span 1}.grid-m-two-cols{grid-template-columns:repeat(2,1fr)}.grid-m-three-cols{grid-template-columns:repeat(3,1fr)}.grid-m-four-cols{grid-template-columns:repeat(4,1fr)}.grid-m-five-cols{grid-template-columns:repeat(5,1fr)}@media (width>=576px){.grid-t-two-cols{grid-template-columns:repeat(2,1fr)}.grid-t-three-cols{grid-template-columns:repeat(3,1fr)}.grid-t-four-cols{grid-template-columns:repeat(4,1fr)}.grid-t-five-cols{grid-template-columns:repeat(5,1fr)}}@media (width>=768px){.grid-l-two-cols{grid-template-columns:repeat(2,1fr)}.grid-l-three-cols{grid-template-columns:repeat(3,1fr)}.grid-l-four-cols{grid-template-columns:repeat(4,1fr)}.grid-l-five-cols{grid-template-columns:repeat(5,1fr)}}@media (width>=1024px){.grid,.grid-d-two-cols,.grid-d-three-cols,.grid-d-four-cols,.grid-d-five-cols{gap:var(--grid-gap-d);column-gap:var(--grid-gap-row-d)}.grid-d-two-cols{grid-template-columns:repeat(2,1fr)}.grid-d-three-cols{grid-template-columns:repeat(3,1fr)}.grid-d-four-cols{grid-template-columns:repeat(4,1fr)}.grid-d-five-cols{grid-template-columns:repeat(5,1fr)}}@media (width>=1280px){.grid,.grid-xl-two-cols,.grid-xl-three-cols,.grid-xl-four-cols,.grid-xl-five-cols{gap:var(--grid-gap-d);column-gap:var(--grid-gap-row-d)}.grid-xl-two-cols{grid-template-columns:repeat(2,1fr)}.grid-xl-three-cols{grid-template-columns:repeat(3,1fr)}.grid-xl-four-cols{grid-template-columns:repeat(4,1fr)}.grid-xl-five-cols{grid-template-columns:repeat(5,1fr)}}.center-content{align-items:center;display:grid}.center-img img,.centre-img img{object-fit:cover;width:100%;height:100%}.gv-center{align-items:center!important}@media (width>=768px){.grid-l-two-cols .center-content>div{padding-top:var(--padding-tb);padding-bottom:var(--padding-tb);padding-right:var(--padding-tb)}.grid-l-two-cols.grid-l-reverse .center-content>div{padding-right:0;padding-left:var(--padding-tb-d)}.grid-l-two-cols.no-gaps .center-content>div{padding-left:var(--padding-tb)}.grid-l-two-cols.grid-l-reverse.no-gaps .center-content>div{padding-right:var(--padding-tb)}.grid-l-reverse{direction:rtl}.grid-l-reverse>div{direction:ltr}}@media (width>=1024px){.grid-d-two-cols .center-content>div{padding-top:var(--padding-tb);padding-bottom:var(--padding-tb);padding-right:var(--padding-tb)}.grid-d-two-cols.grid-d-reverse .center-content>div{padding-right:0;padding-left:var(--padding-tb-d)}.grid-d-reverse{direction:rtl}.grid-d-reverse>div{direction:ltr}}@media (width>=1600px){.grid-d-two-cols .center-content>div{padding-top:var(--padding-tb-d);padding-bottom:var(--padding-tb-d);padding-right:var(--padding-tb-d)}}@media (width<=1023px){.full-wrapper .grid-d-two-cols .center-content>div{padding:0 0 var(--padding-tb)}.lrg-wrapper .grid-d-two-cols .center-content>div{padding:0}.full-wrapper .grid-d-two-cols.no-gaps .center-content>div,.lrg-wrapper .grid-d-two-cols.no-gaps .center-content>div{padding-top:var(--padding-tb)}}@media (width<=767px){.full-wrapper .grid-l-two-cols .center-content>div,.lrg-wrapper .grid-l-two-cols .center-content>div{padding:0 var(--padding-lr) var(--padding-tb)}.full-wrapper .grid-l-two-cols.no-gaps .center-content>div,.lrg-wrapper .grid-l-two-cols.no-gaps .center-content>div{padding-top:var(--padding-tb)}}@media (width>=1024px){.grid-d-two-cols.d-grid-cols-40-60{grid-template-columns:repeat(10,1fr)}.grid-d-two-cols.d-grid-cols-40-60>div:nth-child(odd){grid-column:span 4}.grid-d-two-cols.d-grid-cols-40-60>div:nth-child(2n){grid-column:span 6}.grid-d-two-cols.d-grid-cols-60-40{grid-template-columns:repeat(10,1fr)}.grid-d-two-cols.d-grid-cols-60-40>div:nth-child(odd){grid-column:span 6}.grid-d-two-cols.d-grid-cols-60-40>div:nth-child(2n){grid-column:span 4}.grid-d-two-cols.d-grid-cols-20-80{grid-template-columns:repeat(10,1fr)}}.block-col{border:solid 1px var(--clr-grey-border);border-radius:8px;padding:24px}.grey-bg .block-col{background-color:#fff}.block-padding{padding:12px}.block-round-border{border:solid 1px var(--clr-dark-grey-dk);border-radius:12px;overflow:hidden}.block-round-border .btn{width:100%}.block-round-border .btn-github svg{max-width:none;margin-left:auto;font-size:24px}@media (width>=576px){.block-padding{padding:16px}}@media (width>=1024px){.block-padding{padding:32px 24px}}.btn,a.btn{cursor:pointer;border:none;border-radius:32px;align-items:center;gap:10px;width:fit-content;padding:12px 20px;font-size:1em;font-weight:500;transition:all .4s;display:flex}.btn-primary,a.btn-primary{color:var(--clr-white);background-color:var(--clr-primary)}.btn-primary:hover,a.btn-primary:hover{color:var(--clr-white);background-color:var(--clr-black)}.btn-underline,a.btn-underline{color:var(--clr-primary);border-bottom:solid 1px var(--clr-primary);letter-spacing:0;text-transform:none;border-radius:0;width:max-content;margin:0 auto;padding:0}.btn-outline,a.btn-outline{color:var(--clr-dark-grey);border:solid 1px var(--clr-dark-grey)}.btn-outline:hover,a.btn-outline:hover{color:var(--clr-white);background-color:var(--clr-black)}.btn svg{max-width:8px;margin-top:-1px}.t-center .btn-flex{justify-content:center}.dark-bg .btn-primary,.dark-bg a.btn-primary{color:var(--clr-black);background-color:var(--clr-grey-dk)}.dark-bg .btn-primary:hover,.dark-bg a.btn-primary:hover{color:var(--clr-black);background-color:var(--clr-white)}.dark-bg .btn-outline,.dark-bg a.btn-outline{color:var(--clr-white);border:solid 1px var(--clr-dark-grey-border);background-color:#0000}.dark-bg .btn-outline:hover,.dark-bg a.btn-outline:hover{color:var(--clr-black);background-color:var(--clr-white);border-color:var(--clr-white)}.t-center .btn{margin-left:auto;margin-right:auto}.btn-full,.btn.btn-full,a.btn.btn-full{width:100%}.btn-flex{gap:16px;display:flex}@media (width<=479px){.btn-flex{flex-direction:column}.btn-flex .btn{text-align:center}.btn:not(.btn-underline){text-align:center;width:100%;max-width:none}}@media (width<=1024px){.btn,a.btn{padding:8px 24px}}.embla{position:relative}.embla__viewport{width:100%;padding-bottom:2px;overflow:hidden}.embla__container{display:flex}.embla__slide{flex:0 0 100%;position:relative}.embla__slide img{object-fit:cover;width:100%;display:block}.embla .embla__container,.embla .embla__container,.embla .embla__container,.embla .embla__container{gap:0;display:flex}.embla .embla__container>div,.embla .embla__container>div,.embla .embla__container>div,.embla .embla__container>div{flex:0 0 100%}.embla .grid-d-two-cols,.embla .grid-d-three-cols,.embla .grid-d-four-cols,.embla .grid-d-five-cols,.embla .grid-l-two-cols,.embla .grid-l-three-cols,.embla .grid-l-four-cols,.embla .grid-l-five-cols,.embla .grid-t-two-cols,.embla .grid-t-three-cols,.embla .grid-t-four-cols,.embla .grid-t-five-cols,.embla .embla__container{margin-left:-24px}.embla .embla__container>div{flex:0 0 calc(100% - 24px);padding-left:24px}.embla .embla__slide{height:100%}@media (width>=480px){.embla .grid-t-two-cols>div,.embla .grid-t-three-cols>div,.embla .grid-t-four-cols>div,.embla .grid-t-five-cols>div{padding-left:24px}.embla .grid-t-two-cols>div{flex:0 0 50%}.embla .grid-t-three-cols>div{flex:0 0 33.33%}.embla .grid-t-four-cols>div{flex:0 0 25%}}@media (width>=768px){.embla .grid-l-two-cols>div,.embla .grid-l-three-cols>div,.embla .grid-l-four-cols>div,.embla .grid-l-five-cols>div{padding-left:24px}.embla .grid-l-two-cols>div{flex:0 0 50%}.embla .grid-l-three-cols>div{flex:0 0 33.33%}.embla .grid-l-four-cols>div{flex:0 0 25%}}@media (width>=1024px){.embla .grid-d-two-cols>div,.embla .grid-d-three-cols>div,.embla .grid-d-four-cols>div,.embla .grid-d-five-cols>div{padding-left:24px}.embla .grid-d-two-cols>div{flex:0 0 50%}.embla .grid-d-three-cols>div{flex:0 0 33.33%}.embla .grid-d-four-cols>div{flex:0 0 25%}}@media (width>=1280px){.embla .grid-xl-two-cols>div,.embla .grid-xl-three-cols>div,.embla .grid-xl-four-cols>div,.embla .grid-xl-five-cols>div{padding-left:24px}.embla .grid-xl-two-cols>div{flex:0 0 50%}.embla .grid-xl-three-cols>div{flex:0 0 33.33%}.embla .grid-xl-four-cols>div{flex:0 0 25%}}.embla__dots{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.embla__dots__container{padding:var(--padding-tb) 0 0;flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.embla__dot{cursor:pointer;background:#ffffff2b;border:none;border-radius:50%;width:8px;height:8px;padding:0;position:relative;overflow:hidden}.embla__dot.is-active{background:0 0}.embla__dot-progress{background:var(--clr-white);transform-origin:0;animation:none;position:absolute;inset:0}@media (width>=480px){.embla__dots{gap:16px}.embla__dot{aspect-ratio:auto;width:12px;height:12px}}@media (width>=768px){.embla__dots__container{gap:48px}}.embla__prev,.embla__next{top:50%;left:var(--padding-lr);cursor:pointer;z-index:2;background-color:#0000;border:none;display:none;position:absolute;transform:translateY(-50%)}.embla__next{left:auto;right:var(--padding-lr)}.embla__prev,.embla__next{color:var(--clr-white);border:1px solid #ffffff2b;border-radius:50%;width:32px;height:32px;padding:8px 9px 10px;transition:all .3s;position:relative;top:auto;left:auto;right:auto;transform:none}.embla__prev:hover,.embla__next:hover{background-color:#666;border:1px solid #666}@media (width>=576px){.embla__prev,.embla__next{display:flex}}header{z-index:10;width:100%;color:var(--header-text);font-weight:600;transition:all .4s;position:absolute}header .lrg-wrapper,header .std-wrapper{padding-top:24px;padding-bottom:24px}.header-flex{justify-content:space-between;align-items:center;display:flex}.header .logo{align-items:center;gap:12px;width:100%;max-width:140px;transition:all .2s;display:flex}.logo{align-items:center;display:inline-flex;position:relative}.header-fixed .logo:hover .logo-name,.header-fixed .logo:not(:hover) .logo-name,.header-fixed .logo:hover img,.header-fixed .logo:hover .logo-pf,.header-fixed .logo img{animation:none}.logo-name{opacity:0;visibility:hidden;filter:blur(6px);text-align:left;text-transform:uppercase;letter-spacing:.2em;background:var(--clr-gradient);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text;padding-left:12px;font-size:10px;font-weight:800;line-height:1;position:absolute;left:0}.logo-pf span{line-height:1}header nav{display:none}@media (width>=1024px){header nav{grid-auto-flow:column;gap:32px;display:grid}.header nav a{color:var(--header-link);font-weight:500;transition:all .3s;position:relative}.header nav a:hover{color:var(--clr-white)}}@media (width>=1025px){.logo img,.logo-pf{animation:.5s forwards logo-in}.logo:hover img,.logo:hover .logo-pf{animation:.5s forwards logo-out}.logo:hover .logo-name{visibility:visible;animation:.5s forwards name-in}.logo:not(:hover) .logo-name{animation:.5s forwards name-out}@keyframes logo-out{0%{opacity:1;filter:blur()}to{opacity:0;filter:blur(6px)}}@keyframes logo-in{0%{opacity:0;filter:blur(6px)}to{opacity:1;filter:blur()}}@keyframes name-in{0%{opacity:0;filter:blur(6px)}to{opacity:1;filter:blur()}}@keyframes name-out{0%{opacity:1;filter:blur()}to{opacity:0;filter:blur(6px)}}}@media (width<=1023px){header .lrg-wrapper,header .std-wrapper{z-index:3;position:relative}}.header-fixed .header{width:100%;animation:.6s forwards headerFadeIn;position:fixed;top:0;left:0}@keyframes headerFadeIn{0%{opacity:0}to{opacity:1}}.header-hidden .header{transform:translateY(-100%)}.header-fixed .logo-name{display:none}.header-fixed .header .lrg-wrapper,.header-fixed .header .std-wrapper{justify-content:center;max-width:100%;padding-top:12px;padding-bottom:0}.header-fixed .header-flex{-webkit-backdrop-filter:blur(4px);padding:12px var(--padding-lr);background-color:#222c;border:1px solid #ffffff12;border-radius:32px;justify-content:center;align-items:center;gap:32px;display:flex;box-shadow:0 2px 16px #0000002b}.header-fixed .logo img{max-width:32px}.header-fixed .header nav a:hover:after{bottom:-4px}@media (width>=1024px){.header-fixed .header-flex{padding:12px var(--padding-lr-d);gap:32px}.header-fixed .logo-pf{display:none}}body.show-mobile-menu{overflow:hidden}.menu-button-mobile{-webkit-backdrop-filter:blur(10px);background-color:#ffffff1a;border:1px solid #ffffff0f;border-radius:32px;width:32px;height:32px;margin-left:auto;padding:7px}.header-fixed .menu-button-mobile{-webkit-backdrop-filter:none;background-color:#0000;border:none;padding-right:0}.header .menu-mobile{z-index:2;opacity:0;width:calc(100% - 24px);height:auto;max-height:100%;transition:all .8s;position:fixed;top:0;left:50%;overflow-y:auto;transform:translate(-50%,-100%)}.header-fixed .header .menu-mobile{padding:0 12px var(--padding-tb)}.show-mobile-menu .header .menu-mobile{opacity:1;transform:translate(-50%);box-shadow:8px 0 16px #00000075}.header .menu-mobile nav{text-align:center;-webkit-backdrop-filter:blur(10px);padding:24px var(--padding-lr);background-color:#ffffff1a;border:1px solid #ffffff0f;border-radius:32px;flex-direction:column;max-width:480px;margin:86px auto 0;display:flex}.header .menu-mobile nav a{letter-spacing:var(--extra-text-spacing);text-transform:uppercase;border-bottom:1px solid #ffffff0f;padding:12px 0;font-weight:400}.header .menu-mobile nav a:last-child{border-bottom:none}.menu-mobile-close-btn{width:fit-content;color:var(--clr-white);background-color:#0000;border:none;margin:32px auto 0;padding:0;transform:rotate(180deg)}.menu-mobile-bg{display:none}.show-mobile-menu .menu-mobile-bg{background-color:#000000e0;width:100%;height:100%;display:block;position:fixed;top:0;left:0}@media (width>=1024px){.menu-mobile,.menu-button-mobile,.menu-mobile-close-btn{display:none}}@media (width<=1023px){.header-fixed .header .lrg-wrapper,.header-fixed .header .std-wrapper{display:flex}.header-fixed .header-flex{width:100%;max-width:480px}}footer{background-color:var(--clr-grey);background:linear-gradient(180deg, var(--clr-black), #1f0039)}footer .std-wrapper{padding-top:72px;padding-bottom:72px}.footer-contact-flex{gap:var(--grid-gap);flex-direction:column;padding-top:40px;display:flex}.footer-contact-row{align-content:start;align-items:center;line-height:1em;display:grid;position:relative}.footer-contact-row a{letter-spacing:-.1em;align-content:start;align-items:center;gap:24px;padding-left:32px;font-size:1.3em;font-weight:700;line-height:1em;display:grid;position:relative}.footer-contact-row a small{color:var(--clr-grey-dk);letter-spacing:normal;margin-top:4px;font-size:.65em;font-weight:400;display:block}.footer-contact-row a:hover{color:var(--clr-white)}.footer-contact-row:after{content:"";background-image:var(--clr-gradient);opacity:.3;width:2px;height:100%;position:absolute;top:0;left:0}.footer-contact-row svg{color:var(--clr-white);padding-top:8px;font-size:48px;transition:all .3s}.footer-contact-row a:hover svg{transform:translateY(-8px)}.footer-contact-row svg.icon-linkedin{padding-top:8px}.footer-contact-row a,.footer-contact-row svg{transition:all .3s}.footer-text{font-weight:600;line-height:1.5em}@media (width>=576px){.footer-contact-flex{flex-direction:row;gap:64px}}@media (width>=1024px){footer .std-wrapper{padding-top:160px;padding-bottom:160px}.footer-contact-flex{flex-direction:row;align-items:flex-end;gap:64px;padding-top:0;display:flex}.footer-text{font-size:1.2em}}.hero-content{height:100vh;max-height:800px;position:relative}.hero-content .full-wrapper{gap:0;height:100%;padding-top:0;padding-bottom:0;overflow:hidden}.hero-content .full-wrapper:after{content:"";z-index:1;background-image:linear-gradient(#0000,#1010106e,#101010);width:100%;height:75%;position:absolute;bottom:0;left:0}.hero-layer{max-width:var(--lrg-wrapper);z-index:2;align-items:end;width:100%;height:calc(100% - 80px);display:grid;position:absolute;top:80px}.hero-txt{padding:var(--padding-tb) var(--padding-lr);gap:12px}.hero-content h2{flex-wrap:nowrap;column-gap:10px;width:100%;font-size:clamp(2rem,14vw,5rem);line-height:.75;display:flex}.hero-txt .hero-heading{display:grid}.hero-heading-lt,.hero-heading{white-space:nowrap}.hero-txt .hero-heading-lt{font-weight:300}.hero-subheading,.hero-subheading-lt{text-transform:uppercase;background:var(--clr-gradient);-webkit-text-fill-color:transparent;color:#0000;letter-spacing:.5em;-webkit-background-clip:text;background-clip:text;width:fit-content;font-size:1em;font-weight:700;line-height:1em;display:block}.hero-subheading-lt{letter-spacing:var(--extra-text-spacing);font-size:.65em}.hero-description p{font-size:.85em;font-weight:600;line-height:1.5em}@media (width>=576px){.hero-layer{max-height:auto}.hero-txt{gap:var(--grid-gap);padding:var(--padding-tb) var(--padding-lr)}.hero-content h2{column-gap:18px;font-size:clamp(2rem,15vw,8rem)}.hero-subheading{font-size:.8em}.hero-subheading-lt{font-size:.5em}.hero-description p{font-size:.85em}}@media (width>=768px){.hero-content{height:auto;max-height:none}.hero-content .full-wrapper{height:auto}.hero-layer{padding:0 var(--padding-lr);height:auto;top:50%;left:50%;transform:translate(-50%,-50%)}.hero-txt{width:45%;padding:0}.hero-content h2{font-size:2.5em;display:block}.hero-heading-lt,.hero-heading{font-size:clamp(2rem,12vw,10rem)}.hero-description{width:50%}.hero-content .full-wrapper:after{height:50%}.hero-description .btn-flex{flex-direction:column}}@media (width>=1024px){.hero-layer{padding-left:var(--padding-lr-d);padding-right:var(--padding-lr-d)}.hero-subheading{font-size:1em}.hero-description p{font-size:.85em;line-height:2em}}@media (width>=1440px){.hero-subheading{font-size:1.4em}.hero-subheading-lt{font-size:.85em}.hero-description{width:33.33%;padding-top:32px}.hero-description p{font-size:1.2em}.hero-description .btn-flex{flex-direction:row}}@media (width>=1900px){.hero-heading-lt,.hero-heading{font-size:clamp(2rem,12vw,10rem)}.hero-subheading{font-size:1.8em}.hero-description{padding-top:64px}.hero-description p{font-size:1.2em}}@media (width>=2500px){.hero-subheading{font-size:2em}.hero-subheading-lt{font-size:1em}}.hero-content img{object-fit:cover;object-fit:cover;will-change:transform;object-position:top;width:100%;height:100vh;min-height:720px;max-height:none;transition:transform .6s ease-out;transform:scale(1.05)translate(0)}@media (width>=768px){.hero-content img{object-fit:cover;object-fit:cover;will-change:transform;width:100%;height:100%;min-height:720px;max-height:none;transition:transform .6s ease-out;transform:scale(1.05)translate(0)}}.hero-txt{width:100%}.featured-projects{position:relative;top:-50%}.featured-projects-grid{gap:4px}.featured-projects .project-card img{display:block}.featured-projects h2{letter-spacing:var(--extra-text-spacing);text-transform:uppercase;font-weight:400}.featured-projects-grid>div{display:none}.featured-projects-grid>div:first-child{display:block}@media (width>=576px){.featured-projects-grid>div:nth-child(2){display:block}}@media (width>=768px){.featured-projects .lrg-wrapper{padding-top:0}}@media (width>=1024px){.featured-projects-grid>div{display:block}}.featured-projects{z-index:1}.feature-project-card{background-color:var(--clr-black);transition:all 1s;position:relative;top:0}.feature-project-card a{z-index:3;width:100%;height:100%;position:absolute;top:0;left:0}.feature-project-content{z-index:2;flex-direction:column;align-items:center;width:100%;height:100%;padding:32px 24px 24px;display:flex;position:absolute;top:0;left:0}.feature-project-card-title{text-align:center;justify-content:flex-start;gap:16px;width:100%;margin-top:auto;display:flex}.feature-project-card-title h3{font-size:14px;font-weight:700}.feature-project-card-title svg{font-size:10px}.feature-project-header{gap:16px;display:grid}.feature-project-header img{max-width:64px;max-height:64px;margin:0 auto;display:block}.feature-project-header{text-transform:uppercase;letter-spacing:var(--extra-text-spacing);text-align:center;flex-direction:column;align-items:center;gap:16px;font-size:10px;line-height:1.6em;display:flex}.feature-project-header h3:before{content:"";background-color:var(--clr-white);width:100%;max-width:32px;height:1px;display:block}.feature-project-img{opacity:.35;filter:grayscale();object-fit:cover;width:100%;max-height:256px;transition:all .6s;display:block}.feature-project-img-overlay{z-index:1;background-blend-mode:overlay;background:linear-gradient(45deg,#00fffc30,#7000ff00,#e400ff4f);width:100%;height:100%;position:absolute;top:0;left:0}.feature-project-card:hover .feature-project-img-overlay{background:0 0}.feature-project-card:hover .feature-project-img{opacity:.65;filter:none}@media (width>=576px){.feature-project-img{object-fit:contain;max-height:none}.feature-project-card-title{text-align:left}}@media (width>=768px){.feature-project-header img{max-width:96px;max-height:96px}}@media (width>=1024px){.feature-project-card:hover{top:-24px}.feature-project-img{object-fit:cover;min-height:480px}.feature-project-header img{max-width:64px;max-height:64px}}@media (width>=1440px){.feature-project-header img{max-width:96px;max-height:96px}}.image-mosaic-container{border:1px solid #313131;border-radius:48px;gap:16px;display:grid;overflow:hidden}.image-mosaic{gap:4px;width:110%;margin-left:-5%;display:grid;overflow:hidden;transform:rotate(-4deg)}.image-mosaic-row{gap:8px;width:max-content;display:flex}.image-mosaic-item{aspect-ratio:4/3;border-radius:16px;flex-shrink:0;width:280px;overflow:hidden}.image-mosaic-item img{object-fit:cover;width:100%;height:100%;display:block}@media (width>=768px){.image-mosaic-item{aspect-ratio:16/10;width:240px}}@media (width>=1024px){.image-mosaic-item{aspect-ratio:4/3;width:280px}}.skills-content{background-image:url(/src/assets/skills-bg.webp);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;position:relative}.skills-content:before,.skills-content:after{content:"";z-index:2;background-image:var(--clr-gradient);opacity:.1;width:100%;height:1px;position:absolute;top:0;left:0}.skills-content:before{top:auto;bottom:0}.skills-content>.sml-wrapper,.skills-content>.std-wrapper,.skills-content>.lrg-wrapper,.skills-content>.fulll-wrapper{z-index:1;position:relative}.skills-content-grid{gap:32px;display:grid}.skills-content-category{gap:var(--wrapper-gap);flex-wrap:wrap;display:flex}.skills-content-category-title{text-align:center;width:100%;font-size:1.2em;font-weight:700;line-height:1.3em}.skills-content-items{grid-template-columns:repeat(2,1fr);align-items:start;gap:4px;width:100%;display:grid}@media (width>=425px){.skills-content-items{grid-template-columns:repeat(3,1fr)}}@media (width>=576px){.skills-content-items{grid-template-columns:repeat(4,1fr)}}@media (width>=768px){.skills-content-items{grid-template-columns:repeat(4,1fr)}}@media (width>=1024px){.skills-content .std-wrapper{gap:96px}.skills-content-category{grid-template-columns:repeat(6,1fr);grid-auto-flow:column;align-items:center;padding-bottom:32px;position:relative}.skills-content-category:after{content:"";background-image:var(--clr-gradient);opacity:.2;width:100%;height:1px;position:absolute;bottom:0;left:0}.skills-content-category-title{text-align:left;grid-column:span 1}.skills-content-items{grid-template-columns:repeat(5,1fr);gap:8px}}.skill-col{text-align:center;background-color:#ffffff1a;border-radius:4px;flex-direction:row;justify-content:center;align-items:center;height:100%;padding:6px 8px;display:flex}.skill-img{align-items:center;display:flex}.skill-name{letter-spacing:.05em;font-size:9px;font-weight:200;line-height:1.3em}.skill-img:after,.skill-name:before{content:none}@media (width>=1024px){.skill-col{padding:8px 24px}}.skills-main .skill-col{background-color:#ffffff0a;border-radius:8px;align-content:center;justify-items:center;gap:8px;padding:8px;display:grid}.skills-main .skills-content-items>div{aspect-ratio:4/3;grid-column:span 1;height:100%}.skills-main .skill-name{color:var(--clr-white);letter-spacing:.5em;text-transform:uppercase;text-align:center;gap:8px;width:fit-content;font-size:8px;font-weight:700;line-height:1.5;display:grid}.skills-main .skill-img{position:relative}.skills-main .skill-img img{z-index:2;max-width:32px;transition:all .3s ease-out;position:relative}.skills-main .skill-img:after{content:"";z-index:1;filter:blur(16px);background-color:#00000080;border-radius:50%;width:100%;max-width:120px;height:32px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.skills-main .skill-col:hover .skill-img img{transform:scale(1.1)}@media (width>=576px){.skills-main.skills-content-category{padding-bottom:24px}.skills-main .skill-img img{max-width:32px}}@media (width>=768px){.skills-main .skills-content-items{grid-template-columns:repeat(4,1fr)}.skills-main .skill-img img{max-width:48px}}@media (width>=1024px){.skills-content-category-title{width:15%}.skills-content-items{width:calc(85% - 32px)}.skills-main.skills-content-category{gap:32px;padding-bottom:64px}.skills-main.skills-prof-dev{padding-top:32px}.skills-main .skills-content-items{grid-template-columns:repeat(3,1fr);gap:16px}.skills-main .skills-content-items>div,.skills-main .skills-content-category-title{grid-column:span 1}.skills-main .skill-img img{max-width:64px}.skills-main .skill-name{letter-spacing:var(--extra-text-spacing);letter-spacing:.75em;font-size:9px}}@media (width>=1280px){.skills-main .skills-content-items{grid-template-columns:repeat(4,1fr)}}@media (width>=1440px){.skills-main .skills-content-items{grid-template-columns:repeat(5,1fr)}}@media (width<=1023px){.skills-content h2{text-align:center}.skills-content .title-eyebrow{margin:0 auto}}.skills-seconardy .skills-content-items{gap:4px}.featured-case-study-content{position:relative}.featured-case-study-hero img{object-fit:contain;opacity:.85;width:100%;height:100%;display:block}.featured-case-study-text-container{padding:0 var(--padding-lr);align-items:center;display:grid}.featured-case-study-content+.featured-case-study-content .featured-case-study-text-container{left:auto;right:0}.featured-case-study-content+.featured-case-study-content .full-wrapper{padding-top:0}.featured-case-study-content+.featured-case-study-content .featured-case-study-hero{margin-left:0;margin-right:auto}.featured-case-study-content+.featured-case-study-content .featured-case-study-text{margin-left:auto}@media (width>=1024px){.featured-case-study-content .full-wrapper{padding-bottom:0}.featured-case-study-text-container{z-index:2;height:100%;padding:0 var(--padding-lr-d);align-items:center;display:grid;position:absolute;left:0}.featured-case-study-text{width:33.3333%}.featured-case-study-hero{width:75%;height:100%;margin-left:auto}}@media (width>=1600px){.featured-case-study-text-container{padding:0 120px}.featured-case-study-text{width:30%}.featured-case-study-hero{width:80%}}@media (width<=1023px){.featured-case-study-content .full-wrapper{gap:0}}.page-hero .full-wrapper{padding:0}.projects-page .page-hero .page-hero-img img{object-fit:cover;width:100%;height:100%;min-height:360px}.page-hero-content{z-index:2;max-width:var(--sml-wrapper);padding:80px var(--padding-lr) 24px;align-content:center;margin:0 auto;display:grid}.page-hero-content h1{line-height:1em}.page-hero-img{width:100%;height:100%;max-height:800px;position:fixed;left:0}.page-hero-img>div{position:relative}.page-hero-img>div:after{content:"";background-image:linear-gradient(0deg, var(--clr-black), #00000065, #000000f5);width:100%;height:100%;position:absolute;bottom:0}.page-hero-content p{text-shadow:0 1px 4px #00000040;font-weight:600;line-height:1.5em}@media (width>=768px){.page-hero .full-wrapper{min-height:50vh;max-height:800px;position:relative}.projects-page .page-hero .page-hero-img img{min-height:576px}.page-hero-content{padding-top:80px}}@media (width>=1024px){.page-hero-content{align-content:start;padding-top:180px}.page-hero-img>div:after{background-image:linear-gradient(0deg, var(--clr-black), transparent)}.page-hero-content p{font-size:1.2em}}.image-loader{width:100%;position:relative;overflow:hidden}.image-loader img{opacity:0;width:100%;height:auto;transition:opacity .4s;display:block}.image-loader.is-loaded img{opacity:1}.image-loader-spinner{border:3px solid #9999991f;border-top-color:#e5e5e5;border-radius:50%;width:32px;height:32px;animation:.8s linear infinite image-loader-spin;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes image-loader-spin{0%{transform:translate(-50%,-50%)rotate(0)}to{transform:translate(-50%,-50%)rotate(360deg)}}.image-loader.is-loaded .image-loader-spinner{opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;animation:none}.project-card{position:relative}.project-card a{z-index:3;width:100%;height:100%;position:absolute;top:0;left:0}.project-card-block{gap:16px;display:grid}.project-card-img{z-index:2;border-radius:16px;width:100%;max-width:640px;margin:0 auto;display:block;position:relative;box-shadow:0 0 8px #0000005c}.project-card-img-overflow{background-color:var(--clr-dark-grey);border-radius:4px;overflow:hidden}.project-card:hover .project-card-img img{transform:scale(1.05)}.project-card:hover .project-card-img img,.project-card:hover .project-card-img .image-loader.is-loaded img{opacity:1}.project-card-img img{opacity:0;object-fit:cover;width:100%;transition:all .6s;display:block}.project-card-img-shadow{z-index:1;filter:blur(12px);background-color:#00000057;width:100%;height:100%;position:absolute;top:24px;left:0}.project-card-content{z-index:2;justify-content:space-between;gap:8px;display:flex;position:relative}.project-card-txt{text-align:center;gap:8px;margin:0 auto;display:grid}.project-card-txt h3{font-size:1.2em}.project-card-txt p{text-transform:uppercase;letter-spacing:.2em;font-size:8px;line-height:1.5em}.project-card-txt a{position:relative}@media (width>=768px){.project-card-frame{background-color:var(--clr-black);z-index:2;border-radius:16px;padding:24px;position:relative}.project-card-img-container{box-sizing:border-box;background-image:linear-gradient(130deg,#15373a,#2b213a);border:1px solid #ffffff0f;border-radius:16px;padding:64px 48px;position:relative}.project-card-txt p{letter-spacing:.5em;font-size:10px}.project-card-img img{height:auto;transition:all .6s;display:block}.project-card-img .image-loader.is-loaded img{opacity:.5}}@media (width>=1024px){.project-card-block{gap:16px}.project-card-content{gap:4px}.project-card-txt{text-align:left;gap:12px;margin:0}.project-card-img-overflow{border-radius:8px}.project-card-img img{min-height:240px}}@media (width>=1900px){.project-card-content{gap:8px}.project-card-block{gap:32px}}.project-grid{gap:48px}@media (width>=1024px){.project-grid{gap:36px 24px}}@media (width>=1900px){.project-grid{gap:64px}}.hero-banner{background-color:var(--clr-black)}.hero-banner img{opacity:1;transition:opacity .5s}.hero-banner img.is-loaded{opacity:1}.project-hero{overflow:hidden}.project-hero .full-wrapper{gap:0;padding-top:0;padding-bottom:0;position:relative}.project-hero-fade{background-image:linear-gradient(#000c,#0000009a,#0000);width:100%;height:33%;position:absolute;top:0;bottom:auto}@media (width>=768px){.hero-banner img{object-fit:cover;object-position:bottom;width:100%;max-height:576px}}@media (width>=1024px){.project-hero-fade{display:none}.hero-banner img{object-position:center;opacity:.5;max-height:none;position:absolute;top:0}.project-hero-fade{background-image:linear-gradient(0deg, var(--clr-black), transparent);display:block;top:auto;bottom:0}}@media (width>=1440px){.project-hero .full-wrapper{max-height:none}}.hero-summary-img{width:100%;max-width:900px;margin:24px auto;position:relative}.hero-summary-img:after{content:"";z-index:-1;filter:blur(64px);opacity:.75;background-color:#000;width:100%;height:75%;position:absolute;top:0;left:50%;transform:translate(-50%)}.hero-summary-img-window{--preview-height:480px;width:100%;height:var(--preview-height);background:#111;border:4px solid #1a1a1a;border-radius:12px;position:relative;overflow:hidden;box-shadow:0 24px 72px #00000080}.hero-summary-img-window:before{content:"●  ●  ●";letter-spacing:3px;color:#666;background:#1a1a1a;justify-content:flex-end;align-items:center;height:36px;padding:0 16px;font-size:10px;display:flex}.hero-summary-img-screen{height:calc(var(--preview-height) - 36px);position:relative;overflow:hidden}.hero-summary-img-screen img{opacity:.85;width:100%;height:auto;display:block}.hero-summary-img-screen .image-loader.is-loaded img{animation:6s ease-in-out infinite alternate heroWebsiteScroll}@keyframes heroWebsiteScroll{0%,15%{transform:translateY(0)}85%,to{transform:translateY(min(0px, calc(-100% + var(--preview-height) - 36px)))}}@media (width<=1023px){.hero-summary-img{display:none}}.hero-banner-layer{max-width:var(--std-wrapper);padding:0 var(--padding-lr) var(--padding-tb);z-index:1;width:100%;margin:0 auto}.hero-banner-text{text-align:center;gap:var(--grid-gap);align-content:start;width:100%;height:100%;display:grid}.hero-banner-text h1{letter-spacing:-.065em;line-height:.9em}.hero-banner-text h2{margin:0 auto}.hero-banner-title{z-index:4;width:100%;padding:0 var(--padding-lr);gap:8px;display:grid;position:absolute;top:84px;left:0}.hero-banner-description{max-width:800px;margin:0 auto}.hero-banner-description p{letter-spacing:-.065em;text-shadow:0 1px 4px #00000040;font-size:1.8em;font-weight:400;line-height:1.3em}@media (width>=768px){.hero-banner-title{gap:24px;top:96px}}@media (width>=1024px){.hero-banner-layer{padding:180px var(--padding-lr-d) var(--padding-lr-d)}.hero-banner-title{padding:0;position:relative;top:auto}}@media (width>=1600px){.hero-banner-text h1{font-size:6em}}.hero-summary-cta{padding-top:16px}.hero-summary-cta svg{max-width:none}@media (width>=1024px){.hero-summary-cta{padding-top:32px}}.hero-summary-details{gap:var(--grid-gap);display:grid}.hero-summary-details-rows{text-align:left;grid-template-columns:repeat(2,1fr);gap:16px 8px;display:grid}.hero-summary-row{align-content:start;align-items:center;gap:8px;padding-left:12px;line-height:1em;display:grid;position:relative}.hero-summary-row:after{content:"";background-image:var(--clr-gradient);opacity:.3;width:2px;height:100%;position:absolute;top:0;left:0}.hero-summary-row-label{text-transform:uppercase;letter-spacing:.6em;font-size:.5em;font-weight:600;line-height:1em}.hero-summary-row-value{font-size:10px;font-weight:600}.hero-summary-technologies{text-align:left;gap:16px;display:grid}.hero-summary-technologies-head{text-transform:uppercase;letter-spacing:.6em;font-size:.5em;font-weight:600;line-height:1em}.hero-summary-technologies ul{flex-wrap:wrap;grid-template-columns:repeat(2,1fr);gap:4px;margin:0;padding:0;list-style:none;display:grid}.hero-summary-technologie li{grid-column:span 1}.hero-summary-technologies span{color:var(--clr-grey-dk);background-color:#ffffff0f;border-radius:4px;width:100%;padding:4px 8px;font-size:.8em;line-height:1;display:inline-block}@media (width>=480px){.hero-summary-technologies ul{grid-template-columns:repeat(3,1fr)}}@media (width>=768px){.hero-summary-details-rows{grid-template-columns:repeat(3,1fr)}.hero-summary-technologies ul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.hero-summary-technologies span{background-color:#ffffff0f;border-radius:12px;padding:6px 12px;font-size:.65em;line-height:1;display:inline-block}}@media (width>=1024px){.hero-summary-row{padding-left:24px}.hero-summary-details-rows{grid-template-columns:repeat(4,1fr);gap:32px}}@media (width>=1440px){.hero-summary-row-value{font-size:16px}}@media (width>=1024px){.project-hero.hero-banner-static .hero-banner img{opacity:.8;position:relative}.project-hero.hero-banner-static .hero-banner-layer{padding-top:0}.project-hero.hero-banner-static .hero-banner-title{position:absolute;top:180px}.project-hero-fade{display:none}}@media (width>=1440px){.project-hero.hero-banner-static .hero-banner-layer{max-width:var(--std-wrapper)}}.hero-summary-img-screen .image-loader{z-index:2;position:absolute;inset:0}.hero-summary-img-screen .image-loader .image-loader-spinner{z-index:1}.project-summary{background-position:top;background-repeat:no-repeat;background-size:cover;position:relative}.project-summary:after{content:"";background:linear-gradient(0deg, var(--clr-black), transparent);z-index:1;width:100%;height:25%;display:block;position:absolute;bottom:0;left:0}.project-summary .full-wrapper,.project-summary .lrg-wrapper,.project-summary .std-wrapper,.project-summary .sml-wrapper{z-index:2;position:relative}.project-summary-text{max-width:var(--std-wrapper);margin:0 auto}.project-summary-text p{letter-spacing:normal;font-size:1em;font-weight:700;line-height:1.5em}.project-summary-container{z-index:2;width:100%;max-width:var(--std-wrapper);min-height:100%;padding:0 var(--padding-lr-d);align-content:center;gap:120px;padding:0 120px;display:grid;position:absolute;left:50%;transform:translate(-50%)}.project-summary-details{gap:32px;display:grid}.project-summary-details-rows{gap:16px;display:grid}.project-summary-row{border-bottom:1px solid #ffffff1a;gap:6px;padding-bottom:16px;line-height:1em;display:grid}.project-summary-row-label{text-transform:uppercase;letter-spacing:.6em;font-size:.5em;font-weight:600;line-height:1em}.project-summary-row-value{font-weight:600}.project-summary-technologies{gap:16px;display:grid}.project-summary-technologies-head{text-transform:uppercase;letter-spacing:.6em;font-size:.5em;font-weight:600;line-height:1em}.project-summary-technologies ul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.project-summary-technologies span{background-color:#ffffff0f;border-radius:12px;padding:6px 12px;font-size:.65em;line-height:1;display:inline-block}.project-summary-bg-img img{width:100%}@media (width>=768px){.project-summary-text p{letter-spacing:-.065em;text-shadow:0 1px 4px #00000040;font-size:1.2em;font-weight:600;line-height:2em}}@media (width>=1024px){.project-summary .btn-outline svg{font-size:1.5em}}.gradient-bg:before,.gradient-bg:after{content:"";z-index:2;background-image:var(--clr-gradient);opacity:.1;width:100%;height:1px;position:absolute;top:0;left:0}.gradient-bg:before{top:auto;bottom:0}.project-text-block .gradiant-black-overlay-bg{display:none}.project-text-block.gradient-bg .gradiant-black-overlay-bg{display:block}.project-text-block{background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;position:relative}.project-text-block-content{background-color:#ffffff05;border:1px solid #ffffff0f;border-radius:24px;padding:24px 16px}.project-text-block .std-wrapper,.project-text-block .lrg-wrapper,.project-text-block .sml-wrapper{z-index:1;position:relative}.project-text-block-title-eyebrow{gap:16px;display:grid}.project-text-block-title-eyebrow .subtitle-eyebrow{text-transform:uppercase;letter-spacing:var(--extra-text-spacing);font-size:10px}@media (width>=576px){.project-text-block-content{padding:32px 20px}}@media (width>=1024px){.project-text-block-content{padding:48px}}.project-image-block img{width:100%;display:block}.project-teck-stacks-grid{gap:8px}.project-teck-stack-item{text-align:center;background-color:#ffffff0f;border-radius:12px;padding:6px 12px;font-size:.65em;line-height:1;display:inline-block}.project-process{background-repeat:no-repeat;background-size:cover;background-attachment:fixed;position:relative}.project-process .gradiant-black-overlay-bg{display:none}.project-process.gradient-bg .gradiant-black-overlay-bg{display:block}.project-process .std-wrapper,.project-process .lrg-wrapper,.project-process .sml-wrapper{z-index:1;position:relative}.project-process-block{text-align:left;background-color:#ffffff05;border:1px solid #2a2a2a;border-radius:24px;align-content:start;height:100%;padding:32px 16px;position:relative}.gradient-bg .project-process-block{border:1px solid #ffffff05}.project-process-block:after{content:"";background-color:#2a2a2a;width:1px;height:24px;position:absolute;bottom:-25px;left:50%;transform:translate(-50%)}.project-process-block .h2{background:var(--clr-gradient);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text;width:fit-content}.project-process-block-title{letter-spacing:.25em;text-transform:uppercase;font-weight:700}.project-process-block:nth-child(2n),.project-process-steps>div:nth-child(2n){position:relative}.project-process-steps>div:last-child .project-process-block:after{content:none}.header-accent .project-process-block-title{padding-left:12px;position:relative}.header-accent .project-process-block-title:before{content:"";background-image:var(--clr-gradient);width:1px;height:calc(100% - 12px);position:absolute;top:50%;left:0;transform:translateY(-50%)}@media (width>=768px){.project-process-steps{gap:64px 32px;padding-bottom:64px}.project-process-block:nth-child(2n),.project-process-steps>div:nth-child(2n){position:relative;top:64px}.project-process-block:after,.project-process-block:nth-child(odd):after,.project-process-block:after,.project-process-block:nth-child(odd):after{width:32px;height:1px;top:calc(50% + 64px);left:auto;right:-32px;transform:translateY(-50%)}.project-process-steps>div:nth-child(2n) .project-process-block:after{background-color:#0000;border:none;border-top:1px solid #2a2a2a;border-left:1px solid #2a2a2a;border-radius:32px 0 0;width:calc(50% + 32px);height:32px;inset:auto auto -2px calc(-50% - 32px);transform:none}}@media (width>=1024px){.project-process-block-title{letter-spacing:.6em}.project-process-steps{gap:96px 64px;padding-bottom:96px}.project-process-block{padding:48px}.project-process-block:nth-child(2n),.project-process-steps>div:nth-child(2n){top:64px}.project-process-steps>div:nth-child(2n) .project-process-block:after{width:calc(100% - 160px);height:64px;bottom:-32px;left:calc(158px - 100%)}.project-process-block:after,.project-process-block:nth-child(odd):after,.project-process-block:after,.project-process-block:nth-child(odd):after{width:64px;right:-64px}.header-accent .project-process-block-title{padding-left:20px}}.project-process-block ul{margin:0;padding:0 0 0 20px}.project-gallery-brand-content{gap:64px;display:grid}.project-gallery-nav{justify-content:center;gap:24px;display:flex}.project-gallery-nav-col{text-transform:uppercase;letter-spacing:var(--extra-text-spacing);border:1px solid #333;border-radius:4px;padding:8px 24px;font-size:10px;line-height:1em}.project-gallery-brand-title{text-align:center;justify-items:center;gap:8px;display:grid}.project-gallery-brand-title h3{text-transform:uppercase;letter-spacing:var(--extra-text-spacing);font-size:10px}.project-gallery-brand-logo{max-width:32px}.yarl__fullsize{width:100%;height:100%}.yarl__relative{position:relative}.yarl__portal{opacity:0;z-index:var(--yarl__portal_zindex,9999);transition:opacity var(--yarl__fade_animation_duration,.25s) var(--yarl__fade_animation_timing_function,ease);pointer-events:auto;position:fixed;inset:0;overflow:hidden}.yarl__portal_open{opacity:1}.yarl__container{background-color:var(--yarl__container_background_color,var(--yarl__color_backdrop,#000));-webkit-user-select:none;user-select:none;touch-action:var(--yarl__controller_touch_action,none);overscroll-behavior:var(--yarl__controller_overscroll_behavior,contain);outline:none;position:absolute;inset:0;overflow:hidden}.yarl__carousel{height:100%;width:calc(100% + (var(--yarl__carousel_slides_count) - 1)*(100% + var(--yarl__carousel_spacing_px,0)*1px + var(--yarl__carousel_spacing_percent,0)*1%));transform:translate(var(--yarl__swipe_offset,0),var(--yarl__pull_offset,0));opacity:var(--yarl__pull_opacity,1);flex:none;place-content:center;align-items:stretch;display:flex}.yarl__carousel_with_slides{-moz-column-gap:calc(var(--yarl__carousel_spacing_px,0)*1px + 100/(var(--yarl__carousel_slides_count)*100 + (var(--yarl__carousel_slides_count) - 1)*var(--yarl__carousel_spacing_percent,0))*var(--yarl__carousel_spacing_percent,0)*1%);column-gap:calc(var(--yarl__carousel_spacing_px,0)*1px + 100/(var(--yarl__carousel_slides_count)*100 + (var(--yarl__carousel_slides_count) - 1)*var(--yarl__carousel_spacing_percent,0))*var(--yarl__carousel_spacing_percent,0)*1%)}.yarl__flex_center{place-content:center;align-items:center;display:flex}.yarl__slide{padding:calc(var(--yarl__carousel_padding_px,0)*1px + 100/(var(--yarl__carousel_slides_count)*100 + (var(--yarl__carousel_slides_count) - 1)*var(--yarl__carousel_spacing_percent,0))*var(--yarl__carousel_padding_percent,0)*1%);flex:1;position:relative;overflow:hidden}[dir=rtl] .yarl__slide{--yarl__direction:-1}.yarl__slide_image{-o-object-fit:contain;object-fit:contain;touch-action:var(--yarl__controller_touch_action,none);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;max-width:100%;max-height:100%}.yarl__slide_image_cover{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.yarl__slide_image_loading{opacity:0}@media screen and (width>=800px){.yarl__slide_wrapper:not(.yarl__slide_wrapper_interactive) .yarl__slide_image{-webkit-backface-visibility:hidden;-webkit-transform-style:preserve-3d;-webkit-transform:translateZ(0)}}.yarl__slide_placeholder{line-height:0;position:absolute;top:50%;left:50%;transform:translate(-50%)translateY(-50%)}.yarl__slide_loading{color:var(--yarl__slide_icon_loading_color,var(--yarl__color_button,#fffc));animation:1s linear yarl__delayed_fadein}.yarl__slide_loading line{animation:1s linear infinite yarl__stroke_opacity}.yarl__slide_loading line:first-of-type{animation-delay:-1.875s}.yarl__slide_loading line:nth-of-type(2){animation-delay:-1.75s}.yarl__slide_loading line:nth-of-type(3){animation-delay:-1.625s}.yarl__slide_loading line:nth-of-type(4){animation-delay:-1.5s}.yarl__slide_loading line:nth-of-type(5){animation-delay:-1.375s}.yarl__slide_loading line:nth-of-type(6){animation-delay:-1.25s}.yarl__slide_loading line:nth-of-type(7){animation-delay:-1.125s}.yarl__slide_loading line:nth-of-type(8){animation-delay:-1s}.yarl__slide_error{width:var(--yarl__slide_icon_error_size,48px);height:var(--yarl__slide_icon_error_size,48px);color:var(--yarl__slide_icon_error_color,red)}@media (prefers-reduced-motion){.yarl__portal,.yarl__slide{transition:unset}.yarl__slide_loading,.yarl__slide_loading line{animation:unset}}.yarl__toolbar{padding:var(--yarl__toolbar_padding,8px);justify-content:flex-end;display:flex;position:absolute;inset:0 0 auto auto}[dir=rtl] .yarl__toolbar{inset:0 auto auto 0}.yarl__icon{width:var(--yarl__icon_size,32px);height:var(--yarl__icon_size,32px)}.yarl__button{cursor:pointer;appearance:none;background-color:var(--yarl__button_background_color,transparent);border:var(--yarl__button_border,0);margin:var(--yarl__button_margin,0);padding:var(--yarl__button_padding,8px);color:var(--yarl__color_button,#fffc);filter:var(--yarl__button_filter,drop-shadow(2px 2px 2px #000c));-webkit-tap-highlight-color:transparent;outline:none;line-height:0}.yarl__button:focus{color:var(--yarl__color_button_active,#fff)}.yarl__button:focus:not(:focus-visible){color:var(--yarl__color_button,#fffc)}.yarl__button:focus-visible{color:var(--yarl__color_button_active,#fff)}@media (hover:hover){.yarl__button:focus-visible:hover,.yarl__button:focus:hover,.yarl__button:hover{color:var(--yarl__color_button_active,#fff)}}.yarl__button:disabled{color:var(--yarl__color_button_disabled,#fff6);cursor:default}.yarl__navigation_next,.yarl__navigation_prev{padding:var(--yarl__navigation_button_padding,24px 16px);position:absolute;top:50%;transform:translateY(-50%)}.yarl__navigation_prev{left:0}[dir=rtl] .yarl__navigation_prev{left:unset;right:0;transform:translateY(-50%)rotate(180deg)}.yarl__navigation_next{right:0}[dir=rtl] .yarl__navigation_next{left:0;right:unset;transform:translateY(-50%)rotate(180deg)}.yarl__no_scroll{overscroll-behavior:none;height:100%;overflow:hidden}@keyframes yarl__delayed_fadein{0%{opacity:0}80%{opacity:0}to{opacity:1}}@keyframes yarl__stroke_opacity{0%{stroke-opacity:1}to{stroke-opacity:.125}}.project-gallery-fancybox .full-wrapper{padding-left:var(--grid-gap);padding-right:var(--grid-gap)}.project-gallery-card{cursor:pointer;background-color:#0000;border:none;gap:24px;padding:0;display:grid;position:relative;overflow:hidden}.project-gallery-card:after{content:"";background-image:linear-gradient(#000000af,#0000);width:100%;height:65%;position:absolute;top:0;left:0}.project-gallery-card-logo{z-index:1;object-fit:contain;max-height:48px;position:absolute;top:24px;left:50%;transform:translate(-50%)}.project-gallery-card h3{text-transform:uppercase;letter-spacing:.3em;text-align:center;width:100%;padding:24px;font-size:10px;line-height:1.35em;position:absolute;bottom:0;left:0}.project-gallery-thumb{opacity:.8}@media (width>=768px){.project-gallery-card-logo{max-height:72px}}@media (width>=1024px){.project-gallery-fancybox .full-wrapper{padding-left:var(--grid-gap-row-d);padding-right:var(--grid-gap-row-d)}}@media (width>=1440px){.project-gallery-card{cursor:pointer;background-color:#0000;border:none;gap:24px;padding:0;display:grid;position:relative;overflow:hidden}.project-gallery-card h3{text-transform:uppercase;letter-spacing:var(--extra-text-spacing);text-align:center;text-shadow:0 2px 12px #000;background-image:linear-gradient(#0000,#00000091);width:100%;padding:24px 24px 48px;font-size:10px;display:none;position:absolute;bottom:0;left:0}.project-gallery-card:hover h3,.project-gallery-card img{display:block}.project-gallery-card-logo{z-index:2;object-fit:contain;width:100%;max-width:240px;max-height:120px;transition:all 1s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.project-gallery-card:hover .project-gallery-card-logo{opacity:0;filter:blur(16px);transform:translate(-50%,-100%)}.project-gallery-thumb{opacity:.5;filter:blur(2px);transition:all .6s}.project-gallery-card:hover .project-gallery-thumb{opacity:1;filter:blur()}.project-gallery-card:after{content:"";filter:blur(64px);background:#0000008a;width:20%;height:20%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.yarl__button{z-index:1;position:absolute}.yarl__button--next{top:50%;right:0;transform:translateY(-50%)}}@keyframes emblaProgress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.project-gallery-columns-slider .embla .embla__container>div{flex:0 0 95%}.project-gallery-slider .embla .embla__container>div{flex:0 0 90%}.project-gallery-columns-slider,.project-gallery-slider{background-color:#1c1c1c;align-content:center;display:grid}.project-gallery-columns-slider .full-wrapper,.project-gallery-slider .full-wrapper{padding:var(--padding-tb) 0}.project-gallery-slide-inner{padding:24px 0}.project-gallery-flex{background-color:#f1f1f1;border-radius:24px;flex-direction:column;justify-content:center;gap:16px;padding:24px 0;display:flex;overflow:hidden;box-shadow:0 8px 16px #0000005e}.dark-bg .project-gallery-flex{background-color:#2b2b2b}.gallery-column-img{border:1px solid #e5e5e5;border-radius:16px;width:80%;margin:0 auto;overflow:hidden}.dark-bg .gallery-column-img{border-color:#0000;box-shadow:2px 8px 10px #0000007a}.gallery-column-img img{width:100%;display:block}.project-gallery-slider .gallery-column-img{width:100%}.gallery-react-versions{background-color:var(--clr-black)}.gallery-react-versions .gallery-column-img{position:relative}@media (width>=576px){.gallery-column-img{width:66.6667%}}@media (width>=768px){.project-gallery-slider .embla .embla__container>div,.project-gallery-columns-slider .embla .embla__container>div{flex:0 0 80%;padding-left:0}.project-gallery-flex{flex-direction:row;padding:24px}.gallery-column-img{width:calc(50% - 8px)}.project-gallery-slide-inner{margin:0 24px;padding:24px 0}}@media (width>=1024px){.project-gallery-columns-slider .full-wrapper,.project-gallery-slider .full-wrapper{padding:var(--padding-tb-d) 0}.project-gallery-slider .embla .embla__container>div,.project-gallery-columns-slider .embla .embla__container>div{flex:0 0 65%;padding-left:0}.project-gallery-slide-inner{margin:0 32px}}.process-pinned-scroll{height:calc(100vh * var(--step-count));position:relative}.process-pinned-scroll-sticky{height:100vh;position:sticky;top:0;overflow:hidden}.process-pinned-scroll-steps{height:100vh;overflow:hidden}.process-pinned-scroll-track{flex-direction:column;display:flex}.process-pinned-scroll-step{align-items:center;height:100vh;min-height:100vh;display:flex}.process-pinned-scroll-content{display:grid}.process-pinned-scroll-title{align-items:center;display:flex}.process-pinned-scroll-step-block{text-align:left;background-color:#ffffff05;border:1px solid #2a2a2a;border-radius:24px;align-content:start;padding:48px;position:relative}.version-block-tabs-btns{border:solid 1px var(--clr-dark-grey-lt);border-radius:24px;flex-direction:column;gap:8px;width:100%;padding:6px;display:flex}.t-center .version-block-tabs-btns{margin:0 auto}.version-block-tabs-btns button{color:var(--clr-grey-dk);cursor:pointer;text-transform:uppercase;letter-spacing:.2em;background-color:#0000;border:none;border-radius:24px;padding:12px 24px;font-size:.8em;font-weight:700;transition:all .3s}.version-block-tabs-btns button:hover{color:var(--clr-grey-lt)}.version-block-tabs-btns button.active{background-color:var(--clr-grey);color:var(--clr-black);border:none}.version-block-tab-content{border-radius:8px;overflow:hidden}.version-block-tab-content img{margin:0 auto;display:block}@media (width>=576px){.version-block-tabs-btns{flex-direction:row;width:fit-content}.version-block-tabs-btns button{letter-spacing:.5em}}.preview-block-content .full-wrapper{padding:0}.preview-block-content .btn{width:100%}.preview-block-content .btn svg{max-width:none;font-size:1em}.preview-block-content .grid-d-two-cols .center-content>div{padding:0 var(--padding-lr)}.preview-block-content .btn-primary{font-weight:700}.preview-block-content .btn-primary svg{color:var(--clr-black);fill:var(--clr-black)}.preview-block-content .grid-d-two-cols .center-img{max-height:480px}.preview-block-content .grid-d-two-cols .center-img:after{content:"";background-image:linear-gradient(0deg, var(--clr-black), transparent);width:100%;height:50%;position:absolute;bottom:0;left:0}.preview-block-versions{margin-top:24px}.preview-version-item img{object-fit:cover;object-position:top;width:100%;max-width:240px;max-height:480px}.preview-version-head{text-transform:uppercase;letter-spacing:.25em;align-items:center;gap:16px;font-weight:700;display:flex}.preview-version-head svg{font-size:24px}.preview-block-versions-border{display:none}@media (width>=576px){.preview-block-content .btn-flex>div{width:50%}}@media (width>=768px){.preview-block-versions-border{background-image:var(--clr-gradient);opacity:.25;width:100%;height:1px;margin:24px 0;display:block}}@media (width>=1024px){.preview-block-content .grid-d-two-cols .center-content>div{width:100%;max-width:700px}.preview-block-content .grid-d-two-cols .center-img{max-height:none}.preview-block-content .grid-d-reverse .center-content{justify-content:end;display:flex}.preview-block-content .grid-d-reverse .center-content>div{padding:0 0 0 var(--padding-lr-d)}.preview-block-content .grid-d-two-cols .center-img{position:relative}.preview-block-content .grid-d-two-cols .center-img:after,.preview-block-content .grid-d-two-cols .center-img:before{content:"";background-image:linear-gradient(90deg, var(--clr-black), transparent);width:100%;height:100%;position:absolute;top:0;left:0}.preview-block-content .grid-d-two-cols .center-img:before{background-image:linear-gradient(0deg, var(--clr-black), transparent);height:50%;top:auto;bottom:0}.preview-block-versions{margin-top:0}.preview-block-content .btn svg{font-size:2em}}@media (width<=1023px){.preview-block-versions{gap:40px}}section.dark-grey-bg+.project-navigation{background-color:var(--clr-dark-grey)}.project-navigation .sml-wrapper,.project-navigation .std-wrapper{padding-bottom:0}.project-navigation-flex{flex-direction:column;justify-content:space-between;gap:32px;padding-bottom:24px;display:flex}.project-navigation-flex:after{content:"";background-image:var(--clr-gradient);opacity:.25;width:100%;height:1px;display:block}.project-navigation-flex a{justify-content:space-between;align-items:flex-end;display:flex}.project-navigation-flex a>div{flex-direction:column;gap:24px;line-height:1em;display:flex}.project-navigation-flex span{letter-spacing:var(--extra-text-spacing);text-transform:uppercase;font-size:.8em;font-weight:700}.project-navigation-flex svg{color:var(--clr-white);font-size:24px}.project-navigation-title{color:var(--clr-white);font-size:2em;font-weight:400;line-height:1em}.project-navigation-flex a.project-navigation-previous{display:none}.project-not-found{align-content:center;min-height:50vh;display:grid}.experience-grid{gap:48px;display:grid;position:relative}.experience-item{background-color:var(--clr-dark-grey);z-index:1;width:100%;box-shadow:1px 1px 24px var(--clr-black);border-radius:8px;flex-direction:column;align-items:start;gap:12px;padding:24px 20px;line-height:1em;display:flex;position:relative}.experience-year{text-transform:uppercase;letter-spacing:.2em;background:var(--clr-gradient);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text;width:fit-content;font-size:.8em;font-weight:700;line-height:1;position:relative}.experience-text,.experience-head{gap:16px;display:grid}.experience-description{gap:16px;font-size:1em;line-height:1.3em;display:grid}.experience-description p,.dark-bg .experience-description p{color:var(--clr-grey-dk)}.experience-grid:after{content:"";background-image:var(--clr-gradient);opacity:.2;width:1px;height:100%;position:absolute;top:0;left:22px}.experience-item:before{content:"";background-color:var(--clr-grey);z-index:2;border-radius:50%;width:8px;height:8px;position:absolute;top:-4px;left:18px}@media (width>=1024px){.experience-grid{gap:96px;padding:0}.experience-grid:after{left:48px;transform:translate(-50%)}.experience-item{flex-direction:row;grid-template-columns:repeat(3,1fr);align-items:center;gap:64px;padding:32px 24px 32px 96px;display:grid}.experience-item:before{top:50%;left:46px;transform:translateY(-50%)}.experience-text,.experience-description{grid-column:span 1;width:100%}.experience-item:nth-child(2n) .experience-text{text-align:left;justify-content:start}.experience-company{color:var(--clr-grey-dk)}.experience-item:nth-child(2n) .experience-year{margin-left:0;margin-right:auto}.experience-description{grid-column:span 2;font-size:1.25em;line-height:1.3em}}.page-not-found-grid{align-content:center;justify-items:center;min-height:240px;display:grid}@media (width>=1024px){.page-not-found-grid{min-height:480px}}
