@import "https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap";@import "https://fonts.googleapis.com/css2?family=Raleway:ital,wght@0,100..900;1,100..900&display=swap";:root{--brand-blue-950:#01111d;--brand-blue-900:#021d2e;--brand-blue-800:#19313f;--brand-blue-700:#274557;--brand-blue-600:#84a1b3;--brand-blue-50:#e8f0f5;--white:#fff;--mustard-900:#c49208;--mustard-800:#dda409;--greige-100:#f4f2ed;--color-text-default:var(--white);--color-text-highlight:var(--brand-blue-600);--color-ui-contrast:var(--mustard-800);--color-main-background:var(--brand-blue-900);--color-main-background-variant:var(--brand-blue-950);--color-decoration:var(--brand-blue-700);--color-background-prominent:var(--brand-blue-800);--color-background-transparent:var(--transparent);--font-size-display:84px;--font-size-4xl:58px;--font-size-2xl:2.25rem;--font-size-xl:1.375rem;--font-size-lg:1.125rem;--font-size-md:1rem;--font-size-sm:.875rem;--line-ht-xl:2.25rem;--line-ht-lg:1.875rem;--line-ht-md:1.625rem;--font-weight-bold:700;--font-weight-medium:500;--font-weight-normal:400;--font-weight-light:300;--font-weight-extralight:200;--gutter-padding:10vw;--section-padding:8vw;--margin-bottom-normal:2rem;--focus-outline:2px dashed var(--color-ui-contrast);--focus-outline-offset-md:3px;--focus-outline-offset-lg:4px;--underline-fine:1px solid;--underline-thin:2px solid;--shadow-color:204deg 100% 2%;--shadow-elevation-low:.3px .5px .7px hsl(var(--shadow-color) / .36), .4px .8px 1px -1.2px hsl(var(--shadow-color) / .36), 1px 2.1px 2.6px -2.5px hsl(var(--shadow-color) / .36);--shadow-elevation-medium:.3px .5px .7px hsl(var(--shadow-color) / .38), .8px 1.7px 2.1px -.8px hsl(var(--shadow-color) / .38), 2.1px 4.2px 5.3px -1.7px hsl(var(--shadow-color) / .38), 5.1px 10.3px 12.9px -2.5px hsl(var(--shadow-color) / .38);--shadow-elevation-high:.3px .5px .7px hsl(var(--shadow-color) / .35), 1.5px 3px 3.8px -.4px hsl(var(--shadow-color) / .35), 2.8px 5.7px 7.1px -.7px hsl(var(--shadow-color) / .35), 4.7px 9.4px 11.8px -1.1px hsl(var(--shadow-color) / .35), 7.5px 15px 18.9px -1.4px hsl(var(--shadow-color) / .35), 11.7px 23.4px 29.4px -1.8px hsl(var(--shadow-color) / .35), 17.8px 35.6px 44.8px -2.1px hsl(var(--shadow-color) / .35), 26.3px 52.5px 66.1px -2.5px hsl(var(--shadow-color) / .35);--shadow-color-lt:203deg 65% 7%;--shadow-card-img:.3px .5px .7px hsl(var(--shadow-color-lt) / .37), .8px 1.6px 2px -.8px hsl(var(--shadow-color-lt) / .36), 2px 4.1px 5.1px -1.7px hsl(var(--shadow-color-lt) / .36), 5px 10px 12.5px -2.5px hsl(var(--shadow-color-lt) / .36)}@media screen and (width<=93.75rem){:root{--gutter-padding:15vw}}@media screen and (width<=75rem){:root{--gutter-padding:10vw}}@media screen and (width<=62.5rem){:root{--gutter-padding:5vw;--font-size-display:78px;--font-size-4xl:48px;--font-size-2xl:1.875rem;--font-size-xl:1.5rem;--font-size-lg:1.125rem;--font-size-md:1rem;--font-size-sm:.875rem;--line-ht-xl:2.375rem;--line-ht-lg:1.875rem;--line-ht-md:1.625rem}}@media screen and (width<=22.5rem){:root{--font-size-display:40px;--font-size-4xl:40px;--font-size-2xl:1.5rem;--font-size-xl:1rem;--font-size-lg:1rem;--font-size-md:.875rem;--font-size-sm:.625rem;--line-ht-xl:1.6rem;--line-ht-lg:1.6rem;--line-ht-md:1.6rem}}html{box-sizing:border-box}*,:before,:after{box-sizing:inherit}html,body{margin:0;padding:0}p,h1,h2,h3,h4,ul{margin-block:0}body,html,root{height:100%}body{-webkit-font-smoothing:antialiased;line-height:1.5}picture,video,canvas,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}#root{isolation:isolate}body{height:100%;font-family:Roboto,Arial,sans-serif;font-weight:var(--font-weight-normal);color:var(--color-text-default);background-color:var(--color-main-background);font-size:var(--font-size-md)}h1{font-family:Raleway,sans-serif;font-size:var(--font-size-display);font-weight:var(--font-weight-extralight);color:var(--color-text-default);margin-left:-6px;padding-bottom:1rem;line-height:1.1}@media screen and (width<=44rem){h1{margin-bottom:var(--margin-bottom-normal)}}h2{font-size:var(--font-size-4xl);font-weight:var(--font-weight-extralight);margin-bottom:.75rem;margin-right:-3px;line-height:1.1}h2.small{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);line-height:1.1}.subheader.blue{font-size:var(--font-size-xl);line-height:var(--line-ht-xl);color:var(--color-text-highlight)}.subheader{font-size:var(--font-size-lg);margin-bottom:var(--margin-bottom-normal)}@media screen and (width<=22.5rem){h3{padding-bottom:1rem}}button{font-size:var(--font-size-lg);color:var(--color-ui-contrast);background-color:var(--color-background-transparent);border:2px solid var(--color-ui-contrast);border-radius:16px;padding:.25rem 1rem .25rem 1.05rem}button:hover{color:var(--color-main-background);font-weight:var(--font-weight-bold);background-color:var(--color-ui-contrast);border:2px solid var(--color-ui-contrast);padding-left:1rem}button:focus{outline:none}@supports selector(:focus-visible){button:focus{outline:none}}button:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset-md)}a,a:visited{color:var(--color-ui-contrast);text-decoration:none}@supports selector(:focus-visible){a:focus{outline:none}}a:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset-lg)}a:hover{font-weight:var(--font-weight-medium);text-decoration:none}a .border-bottom{border-bottom:var(--underline-fine)}a .border-bottom:hover{border-bottom:var(--underline-thin)}a.button-link,a.button-link:hover{border-bottom:none;text-decoration:none}nav{backdrop-filter:blur(10px);z-index:999;background:#021d2ee6;grid-template:"logo links"/auto 1fr;place-items:center start;width:100%;height:5rem;margin-top:-1px;padding-left:10vw;padding-right:10vw;display:grid;position:fixed;top:0}@media screen and (width<=62.5rem){nav{padding-left:var(--gutter-padding);padding-right:var(--gutter-padding)}}nav .nav-logo{grid-area:logo}nav .nav-logo a{align-items:flex-end;gap:.25rem;display:flex}nav .nav-logo .logo-name{color:var(--color-text-default)}nav .nav-logo a:hover{text-decoration:none}nav .nav-links{grid-area:links;justify-self:end;gap:3rem;display:flex}nav .nav-links span:last-child{padding-right:1px}nav .logo-img{width:32px;height:32px;margin-right:8px}nav .logo-name{font-family:Raleway,sans-serif;font-size:var(--font-size-lg);font-weight:var(--font-weight-light);margin-top:8px;line-height:1}@media screen and (width<=23.75rem){nav .logo-name{display:none}}nav a,nav a:visited{font-family:Raleway,sans-serif;font-size:var(--font-size-lg);font-weight:var(--font-weight-normal);color:var(--color-ui-contrast)}header{background:var(--color-main-background);background-image:linear-gradient(#021d2ecc,#04283f99),url(/_astro/shutterstock_2514856573.wo5jG5vC.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;justify-content:center;align-items:center;width:100%;min-height:60svh;margin-top:5rem;display:flex;overflow:hidden}div.header-content{flex-direction:column;justify-content:space-around;align-items:flex-start;height:100%;padding-top:7svh;padding-bottom:7svh;display:flex}@media screen and (width<=44rem){div.header-content{padding-top:5svh;padding-bottom:5svh}}p.header-blurb{font-size:var(--font-size-xl);font-weight:var(--font-weight-light);line-height:var(--line-ht-lg);max-width:65ch;padding-top:1rem;padding-bottom:1rem}div.below-hero{justify-content:center;align-items:center;gap:3rem;height:calc(20svh - 5rem);min-height:3.75rem;display:flex}@media screen and (width<=62.5rem){div.below-hero{flex-direction:column;justify-content:center;height:auto;padding-top:3rem;padding-bottom:3rem}}p.below-hero-blurb{font-size:var(--font-size-lg);font-weight:var(--font-weight-normal)}@media screen and (width<=62.5rem){p.below-hero-blurb{text-align:center;padding-bottom:1rem;padding-right:0}}section{width:auto;height:min-content;margin-left:var(--gutter-padding)}section.contrast{background-color:var(--brand-blue-950);box-shadow:var(--shadow-elevation-low);border-radius:20px 0 0 20px}div.section-header{border-bottom:3px solid var(--color-decoration);margin-bottom:var(--margin-bottom-normal)}div.section-content{height:min-content;padding-left:var(--section-padding);padding-right:calc(var(--section-padding) + var(--gutter-padding));padding-top:3rem;padding-bottom:4rem}@media screen and (width<=44rem){section{width:100%}section.contrast{border-radius:0}div.section-content{padding-right:var(--gutter-padding);padding-left:var(--gutter-padding);padding-top:3rem;padding-bottom:2rem}}ul.services-list{padding-inline-start:30px}ul.services-list .service{font-size:var(--font-size-xl);color:var(--color-text-highlight);line-height:1.1}ul.services-list li{margin-bottom:var(--margin-bottom-normal)}ul.services-list li::marker{content:url("data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'%20standalone='no'?%3e%3csvg%20width='17.754843'%20height='17.759987'%20viewBox='0%200%2017.754843%2017.759987'%20fill='none'%20version='1.1'%20id='svg1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:svg='http://www.w3.org/2000/svg'%3e%3cdefs%20id='defs1'%20/%3e%3cpath%20d='M%2016.838423,9.8308819%20C%2016.201545,13.018235%2013.800688,16.019486%2010.431776,16.690126%208.788716,17.017662%207.0842689,16.817938%205.5611819,16.119436%204.0381037,15.420934%202.7739964,14.259211%201.9488756,12.799671%201.1237459,11.34022%200.77966333,9.6573399%200.96560543,7.9906823%201.1515563,6.3240422%201.8580585,4.7586083%202.9845115,3.5172876%205.2949754,0.96992624%209.1963185,0.26869974%2012.380448,1.5436497%20M%206.0120656,8.555941%209.1963185,11.743294%2016.838423,3.456088'%20stroke='%23c49208'%20stroke-width='1.83284'%20stroke-linecap='round'%20stroke-linejoin='round'%20id='path1'%20/%3e%3c/svg%3e") "  "}ul.services-list p{font-weight:var(--font-weight-light)}ul.skills-list{flex-wrap:wrap;justify-content:center;align-items:center;gap:24px;max-width:800px;margin:auto;padding-inline-start:0;list-style-type:none;display:flex}li.skill-card{background-color:var(--greige-100);width:120px;height:120px;box-shadow:var(--shadow-elevation-medium);border-radius:16px;justify-content:center;align-items:center;padding:4px;display:flex}li.skill-card img{max-width:108px;max-height:108px}@media screen and (width<=44rem){li.skill-card{width:80px;height:80px}li.skill-card img{max-width:72px;max-height:72px}}div.why-us p{margin-bottom:var(--margin-bottom-normal);font-weight:var(--font-weight-light);font-size:var(--font-size-lg);line-height:var(--line-ht-lg);max-width:80ch}div.team-cards{flex-wrap:wrap;justify-content:space-around;align-items:flex-start;gap:24px;width:100%;height:min-content;display:flex}@media screen and (width<=62.5rem){div.team-cards{flex-direction:column}}div.card{background-color:var(--color-background-prominent);min-width:300px;max-width:450px;height:auto;box-shadow:var(--shadow-elevation-medium);border-radius:20px;grid-template:"img title""blurb blurb""bio bio"/82px 1fr;gap:1rem;padding:1rem;display:grid}@media screen and (width<=93.75rem){div.card{width:25rem}}@media screen and (width<=62.5rem){div.card{width:100%;min-width:0}}@media screen and (width>=50rem){div.team-cards{flex-direction:row}div.team-cards>.card{width:calc(50% - 12px);min-width:0}}@media screen and (width<=22.5rem){div.card{grid-template:"img""title""blurb""bio"/1fr;padding-left:.5rem;padding-right:.5rem}}div.card .card-title{color:var(--color-text-highlight);grid-area:title}div.card .card-blurb{grid-area:blurb}div.card .card-bio{font-size:var(--font-size-md);font-weight:var(--font-weight-normal);line-height:var(--line-ht-md);grid-area:bio}div.card .card-bio p{padding-bottom:1rem}div.card .card-bio a{font-weight:var(--font-weight-medium)}div.card img{object-fit:contain;border:3px solid var(--color-ui-contrast);width:70px;height:70px;box-shadow:var(--shadow-card-img);border-radius:50%;grid-area:img;justify-self:center}footer{background-color:var(--brand-blue-950);height:auto;padding-left:var(--gutter-padding);padding-right:var(--gutter-padding);flex-direction:column;justify-content:center;align-items:center;gap:2rem;padding-top:2rem;padding-bottom:2rem;display:flex}footer div.logo{justify-content:center;align-items:flex-end;display:flex}footer .logo-img{width:32px;height:32px;margin-right:8px}footer .logo-name{font-family:Raleway,sans-serif;font-size:var(--font-size-lg);font-weight:var(--font-weight-light);line-height:1}footer div.contact{justify-content:center;align-items:center;gap:.5rem;display:flex}footer div.contact a,footer div.contact a:visited{color:var(--color-ui-contrast)}footer div.contact a .border-bottom:hover{border-bottom:2px solid var(--color-ui-contrast)}footer div.small-print{width:100%;font-weight:var(--font-weight-light);font-size:var(--font-size-sm);color:var(--color-text-highlight);justify-content:space-between;display:flex}.page-main{min-height:calc(100vh - 15rem);padding-top:9rem;padding-bottom:6rem}.page-intro{width:90vw;max-width:70rem;margin:0 auto 3rem}.page-intro p{color:var(--color-text-highlight);font-size:var(--font-size-xl);line-height:var(--line-ht-xl)}.page-panel{background-color:var(--brand-blue-950);width:90vw;max-width:70rem;box-shadow:var(--shadow-elevation-low);border-radius:20px;margin:0 auto;padding:2rem 3rem}.page-panel h2{margin-bottom:1rem}.page-panel>p{max-width:48rem;margin-bottom:2rem}.site-form{gap:1.25rem;display:grid}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}.form-field{gap:.4rem;display:grid}.form-field label{font-weight:var(--font-weight-medium)}.form-field input,.form-field select,.form-field textarea{width:100%;color:var(--color-text-default);background-color:var(--brand-blue-800);border:2px solid var(--brand-blue-700);border-radius:8px;padding:.7rem .8rem}.form-field textarea{resize:vertical;min-height:9rem}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset-md)}.form-actions{justify-content:center;align-items:center;margin-top:.5rem;display:flex}.jobs-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin-bottom:4rem;display:grid}.job-opening,.project-card{background-color:var(--brand-blue-800);border-left:4px solid var(--color-ui-contrast);border-radius:6px;padding:1.5rem}.project-carousel{margin-top:2rem}.project-track{scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--brand-blue-600) transparent;overscroll-behavior-x:contain;gap:1.5rem;padding:.25rem 0 1rem;display:flex;overflow-x:auto}.project-track:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-outline-offset-md)}.project-track.is-sliding{scroll-snap-type:none;scroll-behavior:auto}.project-card{scroll-snap-align:start;flex-direction:column;flex:0 0 100%;display:flex}.project-card h3{margin-bottom:1rem}.project-card p+p{margin-top:1rem}.project-description{flex:1}.project-technologies{border-top:1px solid var(--color-decoration);font-size:max(var(--font-size-sm), .875rem);line-height:var(--line-ht-md);margin-top:1.5rem;padding-top:1rem}.project-technologies h4{color:var(--color-text-highlight);font-size:inherit;font-weight:var(--font-weight-medium);margin-bottom:.5rem}.project-carousel-controls:not([hidden]){justify-content:flex-end;align-items:center;gap:1rem;margin-top:1rem;display:flex}.carousel-position{min-width:3.5rem;color:var(--color-text-highlight);text-align:center;font-variant-numeric:tabular-nums}.carousel-control:disabled{opacity:.45;cursor:not-allowed}.job-opening h3{margin-bottom:.5rem}.job-meta{color:var(--color-text-highlight);margin-bottom:1rem}.job-opening ul{margin-top:1rem;padding-left:1.25rem}.job-opening li+li{margin-top:.4rem}@media screen and (width<=44rem){.page-main{padding-top:8rem;padding-bottom:3rem}.page-intro,.page-panel{width:100%}.page-intro{padding:0 var(--gutter-padding)}.page-panel{padding:2rem var(--gutter-padding);border-radius:0}.form-row,.jobs-list{grid-template-columns:1fr}.project-card{flex-basis:100%}}
