.nav{--navbg:var(--darkbgcolor);--navheight:var(--navh);--navitemswidth:70vw;--navlogowidth:10vw;--navtextsize:12px;display:grid;font-family:var(--font2);font-size:var(--navtextsize);width:100%;height:var(--navheight);position:fixed;top:0;z-index:10;grid-template-columns:auto auto;background-color:var(--navbg);text-transform:uppercase;font-weight:500}.nav li>a{color:var(--navtextcolor)}.firmlogo{justify-self:left;width:auto;padding-left:4vw;padding-top:2px;padding-bottom:2px}.firmlogo>.image{height:revert-layer;max-height:calc(var(--navh) - 17px)}.firmlogo:active{background-color:transparent}.menubutton,.navbar{justify-self:right;align-self:center;grid-column:2/3;overflow:visible}.navitems{display:flex;list-style:none;align-items:center;justify-content:right;width:var(--navitemswidth);text-transform:uppercase;padding-right:4vw}.navitems li{margin-right:40px}.mobileonly{display:none}.navitems>li>a:hover{filter:none}.activeclass{font-weight:700}@media only screen and (max-width:62em){.nav{--navitemswidth:70vw;--navlogowidth:15vw}}@media only screen and (max-width:53em){.nav{--navitemswidth:79vw;--navlogowidth:15vw}}@media only screen and (max-width:37.5em){.nav{--marginleft:6.92vw;--navlogowidth:15vw;--menuwidth:7vw;--menuheight:4vw;--navh:60px;--animspeed:600ms;grid-template-rows:auto;transition:background-color var(--animspeed);height:-moz-fit-content;height:fit-content}.nav li>a{color:var(--navtextcolor)}.firmlogo{grid-column:1/2;grid-row:1/2;margin-left:var(--marginleft);padding-left:0}.firmlogo .image{max-height:calc(var(--navh) - 15px)}.mobilenav{display:grid;grid-template-columns:auto auto;height:var(--navheight)}.desktoponly{display:none}.mobileonly{display:block}.menubutton{background-color:transparent;border:none;width:var(--menuwidth);height:var(--menuheight);margin-right:5vw;grid-row:1/2;grid-column:2/3;margin-top:0}.menubutton>.bars{width:inherit;height:.4vw;margin-bottom:1vw;background-color:var(--navtextcolor);transition:transform var(--animspeed),background-color var(--animspeed)}.open>.mobilenav>.menubutton>.bars:first-child{transform:rotate(-45deg) translateY(1.8vw);background-color:var(--navtextcolor)}.open>.mobilenav>.menubutton>.bars:nth-child(2){transform:scaleX(0);background-color:var(--navtextcolor)}.open>.mobilenav>.menubutton>.bars:nth-child(3){transform:rotate(45deg) translateY(-1.8vw);background-color:var(--navtextcolor)}.navbar{grid-column:1/3;grid-row:2/3;height:0;font-size:var(--fontsize1);display:grid;justify-items:center;width:100%;transform:translateX(100%);transition:height var(--animspeed),font-size calc(var(--animspeed) / 4),transform .1s}.navitems{flex-direction:column;justify-content:center;width:80vw;align-items:baseline;row-gap:10vw;padding-bottom:20vh;max-height:90vh;overflow:auto}.navitems>li>a:active{background-color:transparent}.open{background-color:var(--navbg)}.open>.navbar{font-size:var(--fontsize1);top:0;height:calc(100vh - var(--navheight));transform:translateX(0);opacity:1}@keyframes openmenu{0%{height:var(--navheight)}25%{height:100vh}50%{background-color:var(--navbg);height:100vh}to{background-color:var(--navbg);height:100vh}}}.themebutton{--bgcircle:var(--textcolor);--bigcircle:var(--bgcolor);--smallcircle:var(--linkcolor);border:none;background-color:transparent;outline:none;width:max-content;cursor:pointer;position:-webkit-sticky;display:grid;--themewidth:1.1rem;z-index:10;position:sticky;bottom:2%;left:90%;margin-right:3vw;overflow:visible}.animcircle,.bgcircle{width:calc(var(--themewidth) * 3);height:calc(var(--themewidth) * 3);background-color:var(--bgcircle);display:grid;transition:background-color .45s ease-out}.animcircle,.bgcircle,.bigcircle{grid-area:1/1/2/2;border-radius:calc(var(--themewidth) * 2);position:relative}.bigcircle{width:calc(var(--themewidth) * 1.4);height:calc(var(--themewidth) * 1.4);margin-top:calc(var(--themewidth) * .4);margin-left:calc(var(--themewidth) * .4);background-color:var(--bigcircle);z-index:2}.bigcircle,.smallcircle{transition:transform .45s ease-out}.smallcircle{width:calc(var(--themewidth) * .9);height:calc(var(--themewidth) * .9);margin-top:calc(var(--themewidth) * 1.6);margin-left:calc(var(--themewidth) * 1.6);border-radius:calc(var(--themewidth) * 2);grid-area:1/1/2/2;background-color:var(--smallcircle);position:relative;z-index:3}.themebutton:hover>.bgcircle{background-color:#000000}.themebutton:hover>.bgcircle>.bigcircle{transform:scale(.642) translateX(calc(var(--themewidth) * 1.5)) translateY(calc(var(--themewidth) * 1.5))}.themebutton:hover>.bgcircle>.smallcircle{transform:scale(1.55) translateX(calc(var(--themewidth) * -.61)) translateY(calc(var(--themewidth) * -.61))}.animcircle{background-color:var(--bgcolor);transform-origin:bottom right;z-index:-3}.playanimcircle{animation:grow .85s ease-in}.playanimcircleagain{animation:grow2 .85s ease-in}.playanimcircleagain2{animation:grow3 .85s ease-in}.playanimcircleagain3{animation:grow4 .85s ease-in}.playanimcircleagain4{animation:grow5 .85s ease-in}@keyframes grow{0%{transform:scale(1);opacity:1}90%{transform:scale(60);opacity:0}to{transform:scale(1);opacity:0}}@keyframes grow2{0%{transform:scale(1);opacity:1}80%{transform:scale(40);opacity:0}to{transform:scale(1);opacity:0}}@keyframes grow3{0%{transform:scale(1);opacity:1}80%{transform:scale(40);opacity:0}to{transform:scale(1);opacity:0}}@keyframes grow4{0%{transform:scale(1);opacity:1}80%{transform:scale(40);opacity:0}to{transform:scale(1);opacity:0}}@keyframes grow5{0%{transform:scale(1);opacity:1}80%{transform:scale(40);opacity:0}to{transform:scale(1);opacity:0}}.pageload{animation:showelem .35s ease-in}@keyframes showelem{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}@media only screen and (max-width:37.5em){.bgcircle{z-index:2}.animcircle{z-index:1}}.h100{min-height:100vh}.h50{min-height:50vh}.h10{min-height:10vh}.h19{min-height:19vh}.h30{min-height:30vh}@media only screen and (max-width:53em){.h100{min-height:50vh}.h50{min-height:25vh}.h10{min-height:5vh}.h19{min-height:7.5vh}.h30{min-height:15vh}}@media only screen and (max-width:37.5em){.h50{min-height:35vh}}.footerpage{--footerbgcolor:var(--darkbgcolor);--footertextcolor:var(--navtextcolor);--footermarginright:11vw;--footerfont1:1.125rem;--footerfont2:2rem;--font1:var(--header-font);--font2:var(--body-font);background-color:var(--footerbgcolor);color:var(--footertextcolor)}.footer{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-start;gap:5vw;font-size:var(--footerfont1);font-family:var(--font2),Verdana,Geneva,Tahoma,sans-serif;padding:20vh var(--footermarginright) 0 var(--footermarginright);flex-wrap:wrap}.footertitle{font-size:var(--footerfont2);font-weight:700;font-family:var(--font1),Verdana,Geneva,Tahoma,sans-serif;text-transform:uppercase;margin-bottom:2rem}.footer .details .footertitle.firmname{margin-bottom:3rem}ul{list-style:none}li>a{color:var(--footertextcolor);filter:none}.footerbar>.navitems{flex-direction:column;align-items:baseline;row-gap:var(--fsp1)}.footerbar>.navitems li{margin-right:0;margin-bottom:1.5rem}.follow>li,.footer .details>li{margin-bottom:1.5rem}.footer .details>li{max-width:700px}.allowoverflow{overflow:auto}.footer .details p{margin-bottom:0}.footer .details{flex-grow:2}.footer .details a{text-decoration:underline;font-weight:500;font-size:calc(var(--footerfont1) * 1.5)}.footer .details .address{max-width:400px}.footerbottomgrid{grid-template-columns:auto auto;margin:10vh var(--footermarginright) 0 var(--footermarginright);font-family:var(--font2);text-transform:uppercase;font-size:.875rem}.firmcopyright{justify-self:left}.Asteriasoftsignature{justify-self:right}.Asteriasoftsignature>a{color:var(--footertextcolor)}@media only screen and (max-width:53em){.footer{padding-top:10vh}.footerbottomgrid{margin-top:2vh;font-size:2vw}.footerpage{--footerfont1:1rem;--footerfont2:1.5rem}}@media only screen and (max-width:37.5em){.footerpage{--footermarginright:8.4vw}.footer{display:flex;flex-direction:column;font-size:var(--footerfont1);padding-top:0}.footertitle{font-size:var(--footerfont2);margin-top:10vh}.footerbar{height:auto;font-size:inherit;transform:scaleX(1)}.footerbottomgrid.gridthis{display:block;font-size:3vw}.footerbottomgrid>div{margin:auto auto 3vh;white-space:nowrap;width:min-content}.footer .details li{max-width:calc(100vw - (2 * var(--footermarginright)))}.allowoverflow{overflow:auto}.footer .details a{font-size:var(--footerfont1)}}@font-face{font-family:PlusJakartaSans;src:url(/fonts/PlusJakartaSans-VariableFont_wght.ttf) format("truetype");font-weight:300 900;font-display:swap;font-style:normal}*,:after,:before,html{margin:0;padding:0;box-sizing:border-box}.mainpage{--margingeneral:3vw;--header-font:"PlusJakartaSans";--body-font:"PlusJakartaSans";--bgcolor:#f6f6f1;--textcolor:#1e1d1c;--buttonbgcolor:transparent;--buttontextcolor:var(--textcolor);--buttonbordercolor:#8e8e8e;--navtextcolor:var(--bgcolor);--darkbgcolor:#333333;--bgdefault:#ffffff;--textdefault:#000000;--navh:50px;--linkcolor:#0000ee;--linkvisitedcolor:#551a8b;--linkactivecolor:#ff0000;--mw:86vw;--tw:min(698px,var(--mw));--mainwidth:min(1440px,var(--mw));--contentblocktextwidth:min(644px,45vw);--tabwidthmax:88vw;--tabwidth:64.74vw;background-color:var(--bgcolor);color:var(--textcolor);margin-top:var(--navh);transition:background-color .35s ease-in}@media (prefers-color-scheme:dark){.mainpage{--bgcolor:#1a1a1a;--textcolor:#f3f3f3;--buttonbgcolor:transparent;--buttontextcolor:var(--textcolor);--buttonbordercolor:#8e8e8e;--navtextcolor:var(--bgcolor);--darkbgcolor:#f3f3f3;--bgdefault:#000000;--textdefault:#ffffff;--linkcolor:#0000ee;--linkvisitedcolor:#551a8b;--linkactivecolor:#ff0000}}.mainpage.portfolio,.mainpage.resources,.mainpage.services{--bgcolor:#272727;--textcolor:#f2f2f2;--buttonbgcolor:transparent;--buttontextcolor:#f2f2f2;--bgdefault:#000000;--textdefault:#ffffff;background-color:var(--bgcolor);color:var(--textcolor)}.flexthis{display:flex}.gridthis{display:grid}.fullwidth{width:100%}.centerthis{display:grid;place-items:center}.uppercasethis{text-transform:uppercase}.centeralignthis{text-align:center}.disabled,.displayhide.image{display:none}.enabled{display:block}a{text-decoration:none;color:var(--textcolor);transition-duration:.3s}p{margin-bottom:.8em}.button,button{background-color:var(--buttonbgcolor);color:var(--buttontextcolor);cursor:pointer;border:none;padding-top:5px;padding-bottom:5px;display:inline-block;position:relative;overflow:hidden;z-index:1;margin-top:32px}.button:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:.1em;background:linear-gradient(90deg,var(--textcolor) 0,var(--textcolor) 20%,rgba(255,255,255,0) 26%,rgba(255,255,255,0) 38%,var(--textcolor) 44%,var(--textcolor) 100%);opacity:1;transition:opacity .3s,transform .6s}a .button:after{opacity:1;transform:translate3d(-100%,0,0) scaleX(3)}.button:hover{border-bottom:0 solid black}a .button:focus:after,a .button:hover:after{transform:translate3d(100%,0,0) scaleX(3)}.Secondary .button{background-color:transparent;color:var(--bgcolor);border-bottom:none;padding:18px 20px;border-radius:8px;font-style:normal;font-weight:700;line-height:100%;text-transform:capitalize;font-size:1.5rem;line-height:32px}.Secondary .button:after{height:100%;z-index:-1;background:linear-gradient(90deg,var(--textcolor) 0,var(--textcolor) 37%,rgba(0,0,0,.473) 41%,rgba(0,0,0,.404) 45%,var(--textcolor) 50%,var(--textcolor) 100%);transform:translate3d(-80%,0,0) scaleX(3) skew(-10deg,0deg)}a.Secondary .button:focus:after,a.Secondary .button:hover:after{opacity:.8;color:var(--textcolor)}.contentblocktextwidth{width:var(--contentblocktextwidth)}.mainwidth{width:var(--mainwidth)}.marginauto{margin:auto}.hidethis{display:none}.button:hover:before{height:100%}.makebold{font-weight:700}.makeitalic{font-style:italic}.underlinethis{text-decoration:underline}.switchtheme{color:var(--bgcolor)}a:active{color:var(--textcolor)}.desktophide.image{display:none}h3{font-family:var(---font)}.image{width:100%;height:auto;align-self:center;object-fit:cover}.horizontalline{display:block;width:100%;height:1px;background-color:var(--textcolor)}.standardgrid{display:grid;grid-template-columns:auto var(--contentblocktextwidth);justify-items:left;margin:220px auto;grid-gap:8.3vw;gap:8.3vw}.logos{display:flex;flex-wrap:wrap;justify-content:space-around}.stats{display:flex;font-family:var(--header-font);gap:40px}.stats li{min-width:10ch}.stats .statnumber{font-style:normal;font-weight:400;font-size:3rem;line-height:110%;text-transform:uppercase;margin-bottom:.2em}.stats .statdescription{font-style:italic;font-size:1.125rem;margin-bottom:.2em}.textslice ol,.textslice ul{padding-left:1rem;margin-bottom:.8em}.textslice ul{list-style-type:disc}.textslice a{color:var(--linkcolor);text-decoration:underline}.textslice a:visited{color:var(--linkvisitedcolor)}.textslice a:active,.textslice a:visited:active{color:var(--linkactivecolor)}@media only screen and (max-width:53em){.standardgrid{display:block;margin:180px auto;gap:8.3vw}}@media only screen and (max-width:37.5em){.mobilehide.image{display:none}.desktophide.image{display:block}.mainpage{--marginleft:6.92vw;--mw:86.15vw;--navheight:6vh;--navh:6vh;--fontsize1:9.23vw;--fontsize2:7.14vw;--fontsize3:6.153vw;--fontsize4:5.12vw;--fontsize5:4.102vw}.standardgrid{display:block;margin:70px auto;gap:8.3vw}.stats{gap:24px}.stats .statnumber{font-size:2.25rem}.stats .statdescription{font-size:.875rem;margin-bottom:.1em}}.mainpage{--bodytextsize:1.25rem;--lineheight:130%;--fontweight:400;--h1size:4.5rem;--h2size:4.5rem;--h3size:3rem;--h4size:2.5rem;--h5size:2rem;--h6size:1.75rem;--hero-fs5:var(--h1size);--hlineheight:110%;--hletterspacing:-0.02em;--htexttransform:uppercase;--hmarginbottom:1.5rem;font-family:var(--body-font);font-size:var(--bodytextsize);line-height:var(--lineheight);font-weight:var(--fontweight);--stats-fs1:4rem;--stats-fs2:1rem}.para2,h1,h2,h3,h4,h5,h6{font-family:var(--header-font);text-transform:var(--htexttransform);line-height:var(--hlineheight);letter-spacing:var(--hletterspacing);margin-bottom:var(--hmarginbottom)}h1{font-size:var(--h1size)}h2{font-size:var(--h2size)}.para2,h3{font-size:var(--h3size);font-weight:var(--fontweight)}h4{font-size:var(--h4size)}h5{font-size:var(--h5size)}h6{font-size:var(--h6size)}.para{font-size:var(--bodytextsize);line-height:var(--lineheight);font-weight:var(--fontweight)}.smallbutton{font-size:.875rem;text-transform:uppercase;margin-top:1.5rem}.bigbutton{font-size:1.25rem}.button{font-weight:500;font-family:var(--body-font)}h1{font-weight:600;letter-spacing:-.02em}@media only screen and (max-width:53em){.mainpage{--bodytextsize:1.25rem;--h1size:4rem;--h2size:3rem;--h3size:2.25rem;--h4size:2rem;--h5size:1.5rem;--h6size:1.125rem}}@media only screen and (max-width:37.5em){.mainpage{--bodytextsize:1.125rem;--h1size:3rem;--h2size:2.25rem;--h3size:2rem;--h4size:1.5rem;--h5size:1.125rem;--h6size:1rem;--stats-fs1:3rem;--hmarginbottom:0.75rem}.para2{font-size:1.25rem}}