:root{interpolate-size:allow-keywords}body{-webkit-font-smoothing:antialiased}*{margin:0;padding:0}*,:after,:before{box-sizing:border-box}canvas,img,picture,svg,video{height:auto;max-width:100%;width:100%}c-img,c-loop,figure{transform:matrix(1,0,0,1,0,0)}button,input,select,textarea{appearance:none;background:inherit;border:none;color:inherit;font:inherit;outline:none}details,details summary{list-style:none}details summary::-webkit-details-marker{display:none}a{color:inherit;text-decoration:none}input:-webkit-autofill,input:-webkit-autofill:active,input:-webkit-autofill:focus,input:-webkit-autofill:hover{transition:all 5000s ease-in-out 0s!important}:root{--white:#fff;--black:#000;--blue:#533cff;--gray:#f6f5ff;--pink:#ff11d3;--btn-color:var(--blue);--screen-desktop:1600px;--screen-hd:1920px;--screen-qhd:2560px;--screen-uhd:3840px;--screen-4k:4096px;--rhythm:4rem;--gutter:1rem;--body-l:600 1rem/1.1 "Geist";--body-m:500 0.75rem/1.3 "Geist";--body-s:500 0.625rem/1.2 "Geist";--body-xs:500 0.5rem/1.2 "Geist";--bounce:cubic-bezier(0.34,1.56,0.64,1);--outexpo:cubic-bezier(0.19,1,0.22,1);background:var(--white);color:var(--blue);font-family:Geist,sans-serif;font-size:16px;line-height:1.3}::selection{background-color:var(--pink);color:var(--white)}.btn{align-items:center;border-radius:9999px;color:var(--btn-color);cursor:pointer;display:inline-flex;font:var(--body-l);gap:.5rem;justify-content:center;overflow:hidden;padding:.5625rem 1rem;position:relative;text-align:center;text-decoration:none;transition-duration:.2s;transition-property:color}.btn:before{background:var(--btn-color);content:"";inset:0;opacity:.15;position:absolute;transition:opacity .2s;z-index:-1}.btn:hover{color:var(--white)}.btn:hover:before{opacity:1}.tag{align-items:center;border-radius:.1875rem;display:inline-flex;font:var(--body-s);justify-content:center;overflow:hidden;padding:.125rem .3125rem;position:relative;text-align:center}.tag:before{background:var(--blue);content:"";inset:0;opacity:.15;position:absolute}.tag:after{color:var(--blue);content:attr(title)}.tag.alert:before{background:var(--pink)}.tag.alert:after{color:var(--pink)}.tag.inverted:before{background:var(--white);opacity:1}.tag.inverted:after{color:var(--blue);opacity:.5}@font-face{font-display:swap;font-family:Geist;font-style:normal;font-weight:100;src:url(/assets/fonts/geist-v3-latin-100.woff2) format("woff2")}@font-face{font-display:swap;font-family:Geist;font-style:normal;font-weight:200;src:url(/assets/fonts/geist-v3-latin-200.woff2) format("woff2")}@font-face{font-display:swap;font-family:Geist;font-style:normal;font-weight:300;src:url(/assets/fonts/geist-v3-latin-300.woff2) format("woff2")}@font-face{font-display:swap;font-family:Geist;font-style:normal;font-weight:400;src:url(/assets/fonts/geist-v3-latin-regular.woff2) format("woff2")}@font-face{font-display:swap;font-family:Geist;font-style:normal;font-weight:500;src:url(/assets/fonts/geist-v3-latin-500.woff2) format("woff2")}@font-face{font-display:swap;font-family:Geist;font-style:normal;font-weight:600;src:url(/assets/fonts/geist-v3-latin-600.woff2) format("woff2")}@font-face{font-display:swap;font-family:Geist;font-style:normal;font-weight:700;src:url(/assets/fonts/geist-v3-latin-700.woff2) format("woff2")}@font-face{font-display:swap;font-family:Geist;font-style:normal;font-weight:800;src:url(/assets/fonts/geist-v3-latin-800.woff2) format("woff2")}@font-face{font-display:swap;font-family:Geist;font-style:normal;font-weight:900;src:url(/assets/fonts/geist-v3-latin-900.woff2) format("woff2")}.prose{margin-inline:auto;max-width:42rem}.prose,.prose p{font:var(--body-m)}.prose p{margin-block:1rem}.prose h1{font-size:xx-large}.prose h1,.prose h2{margin-block:2rem 1rem}.prose h2{font-size:x-large}.prose h3{font-size:large;margin-block:2rem 1rem}.prose ul{list-style:disc;list-style-position:outside;padding-left:.8rem}.prose a{text-decoration:underline}c-img{display:block;flex-grow:0;flex-shrink:0}c-img img[loading=lazy]{opacity:0}c-img img[loading=lazy][loaded]{opacity:1;transition-duration:.2s;transition-property:opacity;transition-timing-function:linear}c-img[fit=contain],c-img[fit=cover]{inset:0;position:absolute}c-img[fit=cover] img{object-fit:cover}c-img[fit=contain] img,c-img[fit=cover] img{height:100%;object-position:var(--focus);width:100%}c-img[fit=contain] img{object-fit:contain}.ctn{margin:0 auto;max-width:var(--screen-desktop);padding:0 var(--gutter);position:relative;width:100%}[tabindex]:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible{outline:2px dashed blue;outline-offset:2px;z-index:1}.brow{font:var(--body-xs)}[id=footer]{font:var(--body-s);margin-top:9.5rem;padding-bottom:2rem}[id=footer] .ctn{display:flex;justify-content:space-between}[id=footer] nav{display:flex;gap:1rem}.project-card{background:var(--gray);border-radius:.3125rem;display:flex;flex-direction:column;height:8.125rem;overflow:hidden;padding:.625rem 3.25rem .625rem .625rem;position:relative;transition:all .2s}.project-card header{display:grid;gap:.6235rem;grid-template-areas:"fig title" "fig partners";grid-template-columns:max-content}.project-card figure{border-radius:.3125rem;grid-area:fig;height:3.75rem;overflow:hidden;width:3.75rem}.project-card figure:after{background:var(--blue);content:"";inset:0;opacity:.1;position:absolute;z-index:-1}.project-card p{grid-area:title}.project-card .partners{flex-direction:column;grid-area:partners}.project-card .partners,.project-card .partners ul,.project-card .services{display:flex;gap:.1875rem}.project-card .services{flex-direction:column;flex-grow:1;justify-content:flex-end}.project-card .services ul{display:flex;gap:.1875rem}.project-card .ico{align-items:center;background:var(--white);border-radius:100%;display:flex;flex-shrink:0;height:1.875rem;justify-content:center;position:absolute;right:.625rem;top:.625rem;transition:background .2s;width:1.875rem}.project-card .ico svg{transition:color .2s;width:1.25rem}.project-card .year{bottom:.625rem;font:var(--body-s);position:absolute;right:.625rem}.project-card:hover .ico{background:var(--blue)}.project-card:hover .ico svg{color:var(--white)}#indicator{align-items:center;background:#fff;display:flex;inset:0;justify-content:center;opacity:0;position:fixed;transition:opacity .2s,visibility .2s linear;visibility:hidden;z-index:9999}#indicator svg{animation:spin 1s linear infinite;height:2rem;width:2rem}.htmx-request #indicator,.htmx-settling #indicator,.htmx-swapping #indicator{opacity:.9;transition:opacity .2s .5s;visibility:visible}.indicator{align-items:center;background:inherit;color:var(--blue);display:none;inset:0;justify-content:center;position:absolute}.indicator svg{animation:spin 1s infinite;height:2rem;width:2rem}.htmx-request .indicator,.htmx-swapping .indicator{display:flex}[id=default_hero]{padding-top:1.25rem}[id=default_hero] .ctn{display:flex;font:var(--body-s);justify-content:space-between}[id=default_hero] a{text-decoration:underline}[id=view].home{min-height:100svh}[id=home_hero] .ctn{align-items:center;display:flex;flex-direction:column;justify-content:center;text-align:center}[id=home_hero] header{background:var(--white);display:flex;flex-direction:column;justify-content:flex-end;width:100%}[id=home_hero] header .slit{background:var(--white);display:block;height:1.25rem;margin:0 auto;position:sticky;top:0;width:100%;z-index:1}[id=home_hero] header .slit:before{background:var(--gray);border-radius:9999px;bottom:0;content:"";display:block;height:.25rem;left:0;margin:0 auto;position:absolute;right:0;width:3.5625rem;z-index:1}[id=home_hero] header figure{margin:0 auto;padding-top:9.5rem;width:2.875rem}[id=home_hero] h1{font:var(--body-l);letter-spacing:.05em;margin-top:1.625rem;text-transform:uppercase}[id=home_hero] .tag{margin-top:.375rem}[id=home_hero] p{font:var(--body-m);margin-top:1.375rem;max-width:34ch}[id=home_hero] .brow{margin-top:2rem}[id=home_hero] .actions{margin-top:.5rem}[id=home_projects]{margin-top:10rem;min-height:50rem}[id=home_projects] .ctn{display:grid;gap:.625rem}@media (min-width:840px){[id=home_projects] .ctn{grid-template-columns:1fr 1fr}}@media (min-width:1240px){[id=home_projects] .ctn{grid-template-columns:1fr 1fr 1fr}}@media (min-width:1440px){[id=home_projects] .ctn{grid-template-columns:1fr 1fr 1fr 1fr}}[id=home_projects] .project-card{animation:fadein .5s forwards;opacity:0}@media (min-width:1024px){[id=home_projects] .project-card{animation:fadein .5s calc(var(--i)*50ms) forwards}}[id=legal_body]{margin-top:8.25rem}[id=view].error{display:flex;flex-direction:column;height:100vh;justify-content:space-between;width:100%}.error[id=view] h1{margin-inline:auto}section:where([class^=_]){display:block;margin-top:var(--rhythm);position:relative;scroll-margin-top:var(--rhythm)}@keyframes fadein{to{opacity:1}}@keyframes spin{to{transform:rotate(1turn)}}