*{box-sizing:border-box;font-family:Inter,sans-serif;margin:0;padding:0}#root,body,html{height:100%}.app-shell{display:flex;flex-direction:column;min-height:100vh}.site-main{flex:1 0 auto}.about-us,.careers,.home,.our-work,.services{align-items:center;display:flex;font-size:3rem;justify-content:center}.services{background-image:url(/static/media/engineering-team.c4336f074181613a6b8e.jpg);font-size:3.5rem;letter-spacing:2px;padding:0 1rem;text-shadow:0 2px 4px #0009;text-transform:uppercase}.about-us,.services{background-position:50%;background-repeat:no-repeat;background-size:cover;color:#fff}.about-us{background-image:url(/static/media/img-1.53f4843759ebec256cb9.jpg);font-size:100px}.careers{align-items:center;background-image:url(/static/media/img-7.dfeef5257053ba651d89.jpg);border-radius:8px;display:flex;font-size:clamp(24px,6vw,60px);justify-content:center;line-height:1.2;padding:60px 16px;text-align:center;text-shadow:0 2px 6px #00000080}.careers,.our-work{background-position:50%;background-repeat:no-repeat;background-size:cover;color:#fff}.our-work{background-image:url(/static/media/our-work-pic.1af1a2c15c8c3408d1de.jpg);font-size:3.5rem;letter-spacing:2px;padding:0 1rem;text-shadow:0 2px 4px #0009;text-transform:uppercase}.approach-hero{background:#0b1f33;border-radius:18px;height:clamp(280px,38vw,420px);isolation:isolate;margin:32px auto 0;max-width:min(1200px,92vw);overflow:hidden;position:relative}.approach-hero__img{filter:saturate(1.05);height:100%;inset:0;object-fit:cover;position:absolute;transform:scale(1.02);width:100%}.approach-hero__overlay{background:linear-gradient(90deg,#081420a6,#08142059 55%,#08142000);inset:0;position:absolute;z-index:1}.approach-hero__content{align-items:center;color:#fff;display:flex;flex-direction:column;gap:12px;height:100%;justify-content:center;margin:0 auto;max-width:820px;padding:0 20px;position:relative;text-align:center;width:100%;z-index:2}.approach-hero__title{font-size:clamp(28px,5vw,46px);font-weight:700;letter-spacing:.2px;line-height:1.05;margin:0}.approach-hero__subtitle{font-size:clamp(14px,1.6vw,18px);margin:0;opacity:.95}.approach-container{margin:28px auto 80px;max-width:min(1100px,92vw)}.approach-section+.approach-section{margin-top:26px}.approach-h2{color:#0f2742;font-size:clamp(20px,2.4vw,26px);letter-spacing:.2px;margin:16px 0 12px}.approach-h3{color:#173a63;font-size:clamp(16px,2vw,20px);margin:4px 0 10px}.approach-card{background:#fff;border:1px solid #0a1f3514;border-radius:14px;box-shadow:0 6px 20px #0000000d;padding:clamp(14px,2vw,20px) clamp(16px,2.4vw,24px)}.approach-card p{color:#2a3441;line-height:1.6;margin:0 0 12px}.approach-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr}@media (min-width:880px){.approach-grid{grid-template-columns:1fr 1fr}}.approach-list{grid-gap:8px;display:grid;gap:8px;list-style:none;margin:8px 0 0;padding-left:0}.approach-list li{color:#273544;line-height:1.55;padding-left:26px;position:relative}.approach-list li:before{background:radial-gradient(circle at 30% 30%,#78be20 0,#57a20f 60%,#3d7f09 100%);border-radius:50%;box-shadow:0 0 0 2px #57a20f1a;content:"";height:10px;left:0;position:absolute;top:.55em;width:10px}.btn{text-decoration:none}.two-col{grid-template-columns:1fr}@media (min-width:720px){.two-col{column-gap:18px;grid-template-columns:1fr 1fr}}.navbar{align-items:center;background-color:#fff;border-bottom:4px solid #78be20;display:flex;font-size:1rem;height:clamp(40px,6vw,60px);position:sticky;top:0;z-index:999}.fa-bars,.menu-icon{cursor:pointer;display:none}.navbar-container{align-items:center;display:flex;justify-content:flex-start;padding:0 20px;position:relative;width:100%}.navbar-logo{margin-right:2rem}.nav-logo-img{max-height:40px}.nav-menu{display:flex;gap:20px;list-style:none;margin-left:auto;padding:0}.nav-item{position:static}.nav-item.about-dropdown{position:relative}.nav-button,.nav-links{align-items:center;color:#036;display:flex;font:inherit;padding:.5rem 1rem;text-decoration:none;transition:color .2s}.nav-button{appearance:none;background:#0000;border:0;cursor:pointer}.nav-button:hover,.nav-links:hover{color:#78be20}.nav-item.cta{align-items:center;display:flex}.nav-cta{align-items:center;background:#78be20;border:2px solid #0000;border-radius:999px;box-shadow:0 2px 6px #00000026;color:#fff!important;display:inline-flex;font-weight:700;justify-content:center;padding:.5rem 1rem;text-decoration:none;transition:background .2s,transform .15s}.nav-cta:hover{background:#5ea312;transform:translateY(-1px)}.nav-cta:active{transform:translateY(0)}.nav-item.has-dropdown>.nav-button:after,.nav-item.has-dropdown>.nav-links:after{color:currentColor;content:" ▼";font-size:.75rem;margin-left:.25rem;transition:transform .2s,color .2s}.nav-item.has-dropdown:hover>.nav-links:after{transform:rotate(180deg)}.nav-item.open>.nav-button,.nav-item.open>.nav-links{color:#78be20}.nav-item.open>.nav-button:after,.nav-item.open>.nav-links:after{transform:rotate(180deg)}.dropdown-menu{background:#fff;border-radius:4px;box-shadow:0 4px 8px #0000001a;box-sizing:border-box;display:none;left:0;max-height:80vh;overflow-y:auto;padding:1rem 2rem;position:absolute;top:100%;width:100%;z-index:1000}.nav-item.has-dropdown:not(.about-dropdown):hover>.dropdown-menu{grid-gap:1rem 2rem;display:grid;gap:1rem 2rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.nav-item.about-dropdown:hover>.dropdown-menu{align-items:flex-start;background:#fff;border-radius:4px;box-shadow:0 4px 8px #0000001a;box-sizing:border-box;display:flex;flex-direction:column;left:0;list-style:disc inside;min-width:200px;padding:.5rem 1rem;position:absolute;top:100%;width:auto;z-index:1000}.about-dropdown .dropdown-item{margin-bottom:.5rem}.dropdown-section{align-items:flex-start;display:flex;flex-direction:column}.dropdown-heading{color:#036;font-weight:700;margin-bottom:.5rem;text-decoration:underline}.dropdown-list{list-style:disc;margin:0;padding-left:1.25rem}.dropdown-list-item{margin-bottom:.25rem}.dropdown-link{color:#036;font-size:.9rem;text-decoration:none;transition:color .2s}.dropdown-link:hover{color:#78be20}@media screen and (max-width:960px){.fa-bars,.menu-icon{display:block}.navbar-container{padding:0 16px}.navbar-logo{padding:3px 0}.nav-logo-img{display:block;max-height:28px;object-fit:contain}.menu-icon{line-height:1;padding:8px;position:absolute;right:20px;top:50%;transform:translateY(-50%);z-index:10001}.nav-menu{background:#fff;flex-direction:column;height:90vh;left:-100%;overflow-y:auto;padding-bottom:2rem;position:absolute;top:80px;transition:left .5s ease;width:100%;z-index:9999}.nav-menu.active{left:0}.nav-button,.nav-links{justify-content:space-between;padding:1.25rem 1rem;text-align:left;width:100%}.nav-button:hover,.nav-links:hover{background:#f6f9f6;color:#036}.nav-item.cta{justify-content:center;padding:0 1rem;width:100%}.nav-cta{font-size:1.05rem;max-width:320px;padding:.9rem 1.25rem;width:100%}.nav-item{position:static}.nav-item.about-dropdown:hover>.dropdown-menu,.nav-item.has-dropdown:hover>.dropdown-menu{display:none}.nav-item.has-dropdown:hover>.nav-button:after,.nav-item.has-dropdown:hover>.nav-links:after{transform:none}.nav-item.open>.dropdown-menu{border-radius:0;box-shadow:none;display:block!important;max-height:none;padding:.5rem 1rem 1rem;position:static;width:100%;z-index:10000}.nav-item.open>.dropdown-menu .dropdown-section+.dropdown-section{border-top:1px solid #eee;margin-top:.75rem;padding-top:.5rem}}.meet-the-team{background-color:#f0f2f5;padding:4rem 1rem;text-align:center}.mtl-heading{color:#333;font-size:2rem;margin-bottom:2rem}.team-grid{grid-gap:clamp(20px,3vw,36px);display:grid;gap:clamp(20px,3vw,36px);grid-template-columns:repeat(2,minmax(320px,520px));justify-content:center;justify-items:center;margin:0 auto;max-width:1200px}.team-card{background:#fff;border:2px solid #78be20;border-radius:10px;box-shadow:0 2px 8px #0000001a;max-width:520px;padding:2rem 1.5rem;position:relative;text-align:center;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;width:100%}.team-card:hover{border-color:#5ca016;box-shadow:0 4px 12px #00000026;transform:translateY(-4px)}.team-photo{border-radius:50%;display:block;height:120px;margin:0 auto 1rem;object-fit:cover;width:120px}.team-name{color:#0057b8;font-size:1.25rem;margin:.5rem 0}.team-role{color:#666;font-style:italic;margin-bottom:1rem}.team-quote{color:#444;font-size:1rem;line-height:1.6;margin-bottom:2.5rem}.quote-icon{bottom:1rem;color:#0057b8;font-size:1.5rem;position:absolute;right:1rem}@media (max-width:768px){.team-grid{grid-template-columns:minmax(280px,520px);max-width:520px}}.gcs-container{--row-height:48px;--item-gap:18px;--logo-pad:12px;--logo-vpad:8px;--img-filter:none;--cell-w:calc(var(--row-height)*1.9);background:#0000;overflow-x:hidden;overflow-y:visible;padding:10px 0 48px;position:relative;text-align:center;width:100%}.gcs-title{color:#0f2742;font-size:clamp(15px,1.3vw,18px);font-weight:700;line-height:1.2;margin:0 0 10px}.gcs-fade{bottom:0;pointer-events:none;position:absolute;top:0;width:clamp(14px,3.5vw,48px);z-index:2}.gcs-fade--left{background:linear-gradient(90deg,#fff,#fff0);left:0}.gcs-fade--right{background:linear-gradient(270deg,#fff,#fff0);right:0}.gcs-viewport{overflow-x:hidden;overflow-y:visible;width:100%}.gcs-track{align-items:center;display:flex;gap:var(--item-gap);list-style:none;margin:0;padding:0;will-change:transform}.gcs-item{flex:0 0 var(--cell-w);height:calc(var(--row-height) + var(--logo-vpad)*2);line-height:0;overflow:visible;place-items:center;width:var(--cell-w)}.gcs-item,.gcs-link{box-sizing:border-box;display:grid}.gcs-link{height:100%;padding:0 var(--logo-pad);place-items:center;text-decoration:none;width:100%}.gcs-img{display:block;filter:var(--img-filter);height:auto;max-height:var(--row-height);max-width:100%;object-fit:contain;object-position:center;opacity:.96;transition:transform .16s ease,opacity .16s ease,filter .16s ease;width:auto}.gcs-item:focus-within .gcs-img,.gcs-item:hover .gcs-img{filter:none;opacity:1;transform:translateY(-1px)}@media (max-width:900px){.gcs-container{--row-height:64px;--cell-w:calc(var(--row-height)*1.9);--item-gap:16px;--logo-pad:14px;--logo-vpad:10px;padding:8px 0 56px}.gcs-title{font-size:15px;margin-bottom:8px}}@media (min-width:1600px){.gcs-container{--row-height:88px;--cell-w:calc(var(--row-height)*2);--logo-pad:18px;--logo-vpad:12px;padding-bottom:64px}}@media (prefers-reduced-motion:reduce){.gcs-track{transform:none!important}}.alt-hero-container{--nav-height:76px;grid-gap:clamp(8px,2vh,16px);color:#fff;display:grid;gap:clamp(8px,2vh,16px);isolation:isolate;min-height:calc(100svh - var(--nav-height));overflow:hidden;padding:max(24px,9vh) clamp(12px,2.5vw,28px) clamp(12px,2.5vw,28px);place-items:center;position:relative;text-align:center}.alt-hero-inner{margin:0 auto;max-width:1400px;width:100%}.alt-hero-bg{background:linear-gradient(180deg,#0b1726,#0f2742);inset:0;position:absolute;z-index:-2}.alt-hero-bg:after,.alt-hero-bg:before{border-radius:50%;content:"";filter:blur(60px);height:90vmax;opacity:.22;pointer-events:none;position:absolute;width:90vmax;will-change:transform,opacity}.alt-hero-bg:before{animation:blobDrift1 24s ease-in-out .4s infinite alternate;background:radial-gradient(circle at center,#78be20 0,#0000 60%);left:-25vmax;top:-20vmax}.alt-hero-bg:after{animation:blobDrift2 28s ease-in-out .6s infinite alternate;background:radial-gradient(circle at center,#036 0,#0000 60%);bottom:-22vmax;opacity:.3;right:-24vmax}@keyframes blobDrift1{0%{transform:translate(0) scale(1)}50%{transform:translate(8vmax,6vmax) scale(1.05)}to{transform:translate(14vmax,10vmax) scale(1.1)}}@keyframes blobDrift2{0%{transform:translate(0) scale(1)}50%{transform:translate(-10vmax,-6vmax) scale(1.06)}to{transform:translate(-16vmax,-12vmax) scale(1.12)}}.alt-hero-logo{background:#fffffffa;border:1px solid #0000000f;border-radius:16px;box-shadow:0 18px 50px #00000047,0 6px 18px #0000002e;height:auto;max-height:min(38vh,440px);object-fit:contain;opacity:0;transform:translateY(14px) scale(.985);width:clamp(220px,28vw,380px);will-change:transform,opacity}.is-ready .alt-hero-logo{animation:logoReveal 1.6s cubic-bezier(.22,1,.36,1) forwards,logoBreathe 7s ease-in-out 1.6s infinite}@keyframes logoReveal{0%{opacity:0;transform:translateY(14px) scale(.985)}70%{opacity:1;transform:translateY(0) scale(1.006)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes logoBreathe{0%{opacity:1;transform:translateY(0) scale(1)}50%{opacity:.96;transform:translateY(-4px) scale(1.015)}to{opacity:1;transform:translateY(0) scale(1)}}.alt-hero-subtitle{-webkit-font-smoothing:antialiased;color:#fff;font-size:clamp(24px,3.2vw,40px);font-weight:900;letter-spacing:.2px;line-height:1.1;margin:8px 0 10px;opacity:0;text-rendering:optimizeLegibility;text-shadow:0 3px 16px #0009,0 0 1px #000000a6;transform:translateY(6px)}.is-ready .alt-hero-subtitle{animation:riseIn .82s cubic-bezier(.22,1,.36,1) 1s forwards}@keyframes riseIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.alt-hero-btns{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:4px;opacity:0;transform:translateY(6px)}.is-ready .alt-hero-btns{animation:riseIn .82s cubic-bezier(.22,1,.36,1) 1.5s forwards}.alt-hero-btns .btn,.alt-hero-btns .no-underline{text-decoration:none!important}.alt-hero-btns .btn{margin:0}.btn--outline-middle{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);border-radius:999px;box-shadow:0 10px 30px #00000040}@media (prefers-reduced-motion:reduce){.alt-hero-container:not(.motion) .alt-hero-bg,.alt-hero-container:not(.motion) .alt-hero-btns,.alt-hero-container:not(.motion) .alt-hero-logo,.alt-hero-container:not(.motion) .alt-hero-subtitle{animation:none!important;opacity:1!important;transform:none!important}}@media (min-width:1024px){.alt-hero-container{text-align:left}.alt-hero-inner{grid-gap:clamp(24px,5vw,96px);align-items:center;display:grid;gap:clamp(24px,5vw,96px);grid-template-columns:minmax(360px,640px) minmax(420px,48vw);justify-content:center}.alt-hero-copy{max-width:62ch}.alt-hero-subtitle{font-size:clamp(32px,3.2vw,52px);margin-left:auto;margin-right:auto;max-width:20ch;text-align:center}.alt-hero-btns{justify-content:cen}.alt-hero-logo{justify-self:end;max-height:none;width:clamp(420px,36vw,640px)}}@media (min-width:1600px){.alt-hero-inner{max-width:1520px}.alt-hero-subtitle{font-size:clamp(36px,2.8vw,56px)}.alt-hero-logo{width:clamp(460px,34vw,700px)}}@media (max-width:1023.98px){.alt-hero-inner{align-items:center;display:flex;flex-direction:column}.alt-hero-logo{margin-inline:auto;margin-bottom:12px;order:-1}.alt-hero-subtitle{text-align:center}.alt-hero-btns{justify-content:center}}@media (max-width:960px){.alt-hero-logo{max-height:34vh;width:clamp(200px,36vw,340px)}}@media (max-width:768px){.alt-hero-logo{max-height:30vh;width:clamp(180px,46vw,320px)}}:root{--primary:#000}.btn{border:none;border-radius:2px;cursor:pointer;outline:none;padding:8px 20px}.btn--primary{background-color:#000;background-color:var(--primary);border:1px solid #000;border:1px solid var(--primary);color:#242424}.btn--outline{border:1px solid #000;border:1px solid var(--primary);color:#000}.btn--outline,.btn--outline-middle{background-color:initial;padding:8px 20px;transition:all .3s ease-out}.btn--outline-middle{border:3px solid #000;border:3px solid var(--primary);color:#fff}.btn--medium{font-size:20px;padding:8px 20px}.btn--large{font-size:20px;padding:12px 26px}.btn--outline:hover{background:#000;color:#fff;transition:all .3s ease-out}.btn--large:hover:not(.btn--outline),.btn--medium:hover:not(.btn--outline){background:#fff;color:#000;transition:all .3s ease-out}.services-page{margin:28px auto 72px;max-width:1140px;padding:0 20px}.service-section{border-bottom:1px solid #eef2f6;padding:28px 0 36px}.service-section:first-of-type{border-top:1px solid #eef2f6}.service-title{color:#0f2742;font-size:clamp(26px,2.6vw,34px);font-weight:800;letter-spacing:.2px;line-height:1.15;margin:0 0 18px;text-align:left}.service-content{grid-gap:28px;align-items:start;display:grid;gap:28px;grid-template-columns:1.15fr 1fr}.service-text{color:#2a3441;-webkit-hyphens:auto;hyphens:auto;max-width:64ch}.service-text p{line-height:1.7;margin:0 0 14px}.service-text p:first-of-type{text-indent:1.25rem}.service-text p.lead{color:#253449;font-size:1.05rem;line-height:1.8}.service-media{width:100%}.ss-carousel{background:#fff;border:1px solid #0a1f3514;border-radius:14px;box-shadow:0 8px 24px #10213414;overflow:hidden;position:relative}.ss-carousel__viewport{background:#f6f8fb;cursor:zoom-in;width:100%}.ss-carousel__img{-webkit-user-drag:none;aspect-ratio:16/10;display:block;object-fit:cover;-webkit-user-select:none;user-select:none;width:100%}.ss-carousel__caption{border-top:1px solid #0a1f350f;color:#4a5b70;font-size:.92rem;padding:10px 12px 12px}.ss-carousel__nav{background:#00000059;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:26px;height:38px;line-height:36px;position:absolute;text-align:center;top:50%;transform:translateY(-50%);width:38px}.ss-carousel__nav:hover{background:#00000073}.ss-carousel__nav--left{left:12px}.ss-carousel__nav--right{right:12px}.ss-carousel__dots{background:#fff;display:flex;gap:8px;justify-content:center;padding:10px 10px 12px}.ss-dot{background:#c9d3de;border:none;border-radius:9999px;cursor:pointer;height:8px;width:8px}.ss-dot.is-active{background:#1e3a5f}.ss-carousel__empty{color:#617289;padding:16px;text-align:center}.ss-lightbox{background:#000000bf;display:grid;inset:0;padding:16px;place-items:center;position:fixed;z-index:9999}.ss-lightbox__img{border-radius:12px;max-height:88vh;max-width:92vw}.related-projects{margin-top:32px}.related-projects__title{color:#0f2742;font-size:clamp(20px,2.1vw,24px);font-weight:700;margin:0 0 14px}.ss-related{margin-top:12px}.ss-related__grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));list-style:none;padding:0}.ss-related__card{background:#fff;border:1px solid #0a1f3514;border-radius:12px;overflow:hidden;transition:transform .16s ease,box-shadow .16s ease}.ss-related__card:hover{box-shadow:0 10px 24px #1021341a;transform:translateY(-2px)}.ss-related__link{color:inherit;display:grid;grid-template-rows:auto 1fr;text-decoration:none}.ss-related__img{aspect-ratio:16/10;display:block;object-fit:cover;width:100%}.ss-related__body{padding:12px 14px 16px}.ss-related__title{font-size:1rem;margin:0 0 6px}.ss-related__cta{font-size:.9rem;opacity:.85}@media (max-width:820px){.service-content{grid-template-columns:1fr}.ss-carousel__img{aspect-ratio:16/11}}@media (max-width:480px){.services-page{overflow-x:hidden;padding:0 14px}.service-content{gap:18px;grid-template-columns:1fr}.service-title{font-size:clamp(22px,6.2vw,28px)}.related-projects__title,.service-text,.service-text p{overflow-wrap:anywhere;word-break:break-word}.ss-carousel__img{aspect-ratio:auto;height:auto;object-fit:contain;width:100%}.ss-related__grid{gap:14px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}.jobposting-list{border-radius:4px;box-shadow:0 2px 8px #0000000d;font-family:Work Sans,sans-serif;margin:2rem auto;max-width:800px;overflow:hidden;padding:1rem;width:100%}.jobposting-item{align-items:center;border:1px solid #ddd;border-radius:4px;color:inherit;display:flex;justify-content:space-between;margin-bottom:1rem;padding:1rem 1.5rem;text-decoration:none}.jobposting-item:last-child{margin-bottom:0}.jobposting-item.even{background-color:#fff}.jobposting-item.odd{background-color:#f5f5f5}.jobposting-title{color:#3c4e75;font-size:1.125rem;font-weight:500;text-decoration:none}.jobposting-location{color:#757575;font-size:1rem;text-decoration:none}.jobposting-item:active,.jobposting-item:hover,.jobposting-item:link,.jobposting-item:visited{text-decoration:none}.jobposting-item:last-child{border-bottom:none}@media (max-width:600px){.jobposting-item{align-items:flex-start;flex-direction:column;gap:.5rem}.jobposting-location{margin-left:0}}.job-pagination{align-items:center;display:flex;gap:10px;justify-content:center;margin-top:18px}.job-page-btn{background:#fff;border:1px solid #0a1f3526;border-radius:10px;cursor:pointer;padding:8px 12px}.job-page-btn:disabled{cursor:not-allowed;opacity:.5}.job-page-list{display:flex;gap:6px;list-style:none;margin:0;padding:0}.job-page-num{background:#fff;border:1px solid #0a1f3526;border-radius:10px;cursor:pointer;height:36px;min-width:36px}.job-page-num.is-active{background:#036;border-color:#036;color:#fff}.job-page-ellipsis{align-items:center;color:#7b8a9a;display:flex;padding:0 6px}.job-app-container{font-family:Inter,sans-serif;margin:0 auto;max-width:800px;padding:2rem 1rem}.job-app-container h1{color:#036;margin-bottom:.5rem}.job-app-container p,.job-app-container ul{color:#333;line-height:1.6;margin-bottom:1rem}.job-app-container ul{padding-left:1.2rem}.our-commitment{background-color:#f9fafb;border-radius:8px;margin:2rem 0;padding:1.5rem}.our-commitment h2{color:#036;font-size:1.8rem;margin-bottom:1rem}.our-commitment p{color:#333;font-size:1rem;line-height:1.6;margin-bottom:1rem}.our-commitment p:last-child{margin-bottom:0}.job-search-form{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem}.search-group{width:100%}.search-group input,.search-group select{border:1px solid #ccc;border-radius:4px;font-size:1rem;padding:.75rem 1rem;width:100%}.search-btn{background-color:#036;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem;width:100%}.search-btn:hover{background-color:#002150}.visually-hidden{clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;position:absolute;width:1px}:root{--gap:20px;--navy:#036}.hdow-grid{grid-gap:20px;grid-gap:var(--gap);align-items:start;box-sizing:border-box;display:grid;gap:20px;gap:var(--gap);grid-template-columns:repeat(4,1fr);justify-content:start;justify-items:stretch;margin:0 auto;max-width:1400px;padding:0 16px 40px;width:100%}.hdow-card-link{color:inherit;display:block;text-decoration:none}.hdow-card{background:#fff;border-radius:12px;box-shadow:0 6px 16px #10182814;display:flex;flex-direction:column;height:auto}.hdow-card,.hdow-card-media{overflow:hidden;position:relative;width:100%}.hdow-card-media{aspect-ratio:16/9;background:#eef3f8}.hdow-card img{display:block;height:100%;object-fit:cover;width:100%}.hdow-card__placeholder{color:#6b7280;display:grid;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-weight:600;inset:0;place-items:center;position:absolute}.hdow-overlay{align-items:center;background:#003366e6;bottom:0;display:flex;justify-content:center;left:0;max-height:56px;padding:12px 16px;position:absolute;right:0;text-align:center}.hdow-title-text{-webkit-box-orient:vertical;-webkit-line-clamp:2;color:#fff;display:-webkit-box;font-size:1rem;font-weight:800;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:normal}.hdow-pagination{align-items:center;display:flex;gap:10px;justify-content:center;margin-top:22px}.hdow-page-btn{background:#fff;border:1px solid #0a1f3526;border-radius:10px;cursor:pointer;padding:8px 12px}.hdow-page-btn:disabled{cursor:not-allowed;opacity:.5}.hdow-page-list{display:flex;gap:6px;list-style:none;margin:0;padding:0}.hdow-page-num{background:#fff;border:1px solid #0a1f3526;border-radius:10px;cursor:pointer;height:36px;min-width:36px}.hdow-page-num.is-active{background:#036;background:var(--navy);border-color:#036;border-color:var(--navy);color:#fff}.hdow-page-ellipsis{align-items:center;color:#7b8a9a;display:flex;padding:0 6px}@media (max-width:1280px){.hdow-grid{grid-template-columns:repeat(3,1fr);max-width:1100px}}@media (max-width:900px){.hdow-grid{grid-template-columns:repeat(2,1fr);max-width:900px}}@media (max-width:580px){.hdow-grid{grid-template-columns:1fr;max-width:640px}}.hdow-container{font-family:Work Sans,sans-serif;margin:0 auto;max-width:1280px;padding:2rem 1rem}.hdow-title{color:#333;font-size:2rem;margin-bottom:1.5rem}.hdow-filters{grid-gap:1rem;align-items:end;display:grid;gap:1rem;grid-template-columns:1fr 1fr auto auto;margin-bottom:2rem}.hdow-filter-group{display:flex;flex-direction:column;min-width:0}.hdow-filter-group label{color:#555;font-size:.85rem;font-weight:600;margin-bottom:.25rem}.hdow-filter-group input[type=search],.hdow-filter-group select{border:2px solid #036;border-radius:6px;box-sizing:border-box;font-size:1.05rem;padding:.75rem 1rem;width:100%}.hdow-buttons{display:contents}.hdow-buttons button{background:#036;border:2px solid #036;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;height:44px;padding:.65rem 1.25rem;transition:background .2s,color .2s,border-color .2s}.hdow-buttons .hdow-reset{background:#0000;color:#036}.hdow-buttons button:hover{background:#002150;color:#fff}.hdow-buttons .hdow-reset:hover{background:#036;color:#fff}@media (max-width:700px){.hdow-filters{grid-template-columns:1fr}.hdow-buttons{display:flex;gap:.75rem}}.footer-container{background-color:#036;color:#fff;padding:.6rem 6% .5rem}.footer-content{grid-column-gap:1.5rem;align-items:start;column-gap:1.5rem;display:grid;grid-template-columns:repeat(3,1fr);justify-items:center;margin:0 auto;max-width:900px;padding:0 8px;width:100%}.footer-brand,.panel{text-align:center;width:100%}.footer-logo{margin-bottom:.25rem;max-width:110px}.website-rights{display:block;font-size:.75rem;margin-top:.2rem;opacity:.9;text-align:center}.panel h4{font-size:1rem;margin-bottom:.3rem}.panel-contact{align-items:center;display:flex;flex-direction:column}.contact-list{grid-row-gap:.45rem;display:grid;justify-items:start;max-width:420px;row-gap:.45rem;width:100%}.contact-item{grid-column-gap:8px;align-items:center;column-gap:8px;display:grid;grid-template-columns:22px 1fr;width:100%}.contact-icon{background:#ffffff24;border-radius:50%;color:#fff;display:grid;font-size:11px;height:22px;place-items:center;width:22px}.contact-text{display:flex;flex-direction:column;line-height:1.2;text-align:left}.contact-label{font-size:.7rem;letter-spacing:.02em;margin-bottom:.06rem;opacity:.8;text-transform:uppercase}.contact-value{color:#fff;font-size:.95rem;font-weight:600;text-decoration:none;word-break:break-word}.contact-value:hover{color:#78be20}.social-icons{display:flex;gap:.5rem;justify-content:center}.social-icon-link{font-size:1.3rem}.footer-container a:link,.footer-container a:visited{color:#fff;text-decoration:none}.footer-container a:active,.footer-container a:hover{color:#78be20}@media (max-width:768px){.footer-container{padding:.45rem 5% .35rem}.footer-content{align-items:center;column-gap:.8rem;grid-template-areas:"brand connect" "contact contact";grid-template-columns:auto auto;justify-content:center;justify-items:center;max-width:640px;row-gap:.4rem}.footer-brand,.panel{text-align:center;width:auto}.footer-content>.footer-brand{grid-area:brand}.footer-content>.panel-connect{grid-area:connect}.footer-content>.panel-contact{grid-area:contact;grid-column:1/-1}.panel h4{display:none}.footer-logo{margin-bottom:.1rem;max-width:84px}.website-rights{font-size:.66rem;margin-top:.1rem}.contact-list{max-width:520px;row-gap:.35rem;width:100%}.contact-item{column-gap:6px;grid-template-columns:18px 1fr}.contact-icon{font-size:10px;height:18px;width:18px}.contact-label{display:none}.contact-value{font-size:.9rem;line-height:1.1}.social-icons{gap:.35rem}.social-icon-link{font-size:1.1rem}}@media (min-width:769px){.footer-content{grid-template-columns:1.25fr 1fr 1fr}}.history-container{margin:0 auto;max-width:1200px;padding:4rem 2rem}.history-title{color:#036;font-size:2.5rem;margin-bottom:2rem;text-align:center}.history-timeline{margin:2rem 0;padding-left:40px;position:relative}.history-timeline:before{background:#78be20;bottom:0;content:"";left:20px;position:absolute;top:0;width:4px}.event-item{margin-bottom:2.5rem;position:relative}.event-marker{align-items:center;display:flex;left:0;position:absolute}.marker-dot{background:#036;border-radius:50%;height:12px;margin-right:8px;width:12px}.marker-year{color:#78be20;font-size:1rem;font-weight:700}.event-content{background:#f9f9f9;border-radius:8px;box-shadow:0 4px 12px #0000001a;margin-left:40px;padding:1.5rem}.event-content img{border-radius:8px;height:auto;margin-bottom:1rem;width:100%}.event-title{color:#036;font-size:1.25rem;margin-bottom:.5rem}.event-description{color:#444;line-height:1.6}@media (max-width:768px){.history-timeline{padding-left:20px}.event-content{margin-left:30px}}:root{--brand-navy:#036;--brand-green:#78be20;--text-900:#0f2742;--text-700:#2b3a4e;--text-500:#445468;--bg-50:#f6f9fc;--bg-100:#eef3f8;--chip-bg:#eef2f6;--chip-border:#d8e1ea;--ring:#00336638;--shadow-sm:0 1px 2px #1018280f,0 1px 1px #1018280a;--shadow-md:0 8px 20px #10182814;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--container-max:1200px}.project-page-layout{grid-gap:2rem;grid-gap:var(--space-8);color:#0f2742;color:var(--text-900);display:grid;font-family:Work Sans,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;gap:2rem;gap:var(--space-8);grid-template-columns:1.1fr .9fr;margin:0 auto;max-width:1200px;max-width:var(--container-max);padding:2.5rem 1rem;padding:var(--space-10) var(--space-4)}.project-page-content{min-width:0}.project-title{text-wrap:balance;color:#036;color:var(--brand-navy);font-size:clamp(1.25rem,1.75vw,1.8rem);font-weight:800;-webkit-hyphens:auto;hyphens:auto;letter-spacing:.2px;line-height:1.22;margin:0 0 1.25rem;margin:0 0 var(--space-5);max-width:40ch;overflow-wrap:break-word;word-break:normal}.project-details{grid-row-gap:.75rem;grid-row-gap:var(--space-3);display:grid;grid-template-columns:1fr;list-style:none;margin:0 0 1.5rem;margin:0 0 var(--space-6);padding:0;row-gap:.75rem;row-gap:var(--space-3)}.project-details li{color:#2b3a4e;color:var(--text-700);font-size:1rem;line-height:1.45}.project-details strong{color:#036;color:var(--brand-navy);font-weight:800;margin-right:.35rem}.project-services{grid-column-gap:.75rem;grid-column-gap:var(--space-3);align-items:start;column-gap:.75rem;column-gap:var(--space-3);display:grid;grid-template-columns:auto 1fr}.services-list{display:flex;flex-wrap:wrap;gap:.375rem .5rem;list-style:none;margin:0;padding:0}.service-chip{align-items:center;background:#eef2f6;background:var(--chip-bg);border:1px solid #d8e1ea;border:1px solid var(--chip-border);border-radius:999px;color:#0f2742;color:var(--text-900);display:inline-flex;font-size:.94rem;line-height:1.2;padding:.28rem .6rem;transition:box-shadow .16s ease,transform .16s ease;white-space:nowrap}.service-chip:hover{box-shadow:0 1px 2px #1018280f,0 1px 1px #1018280a;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.project-description{margin:1.5rem 0 0;margin:var(--space-6) 0 0}.project-description>strong{color:#036;color:var(--brand-navy);display:inline-block;font-weight:800;margin-bottom:.5rem;margin-bottom:var(--space-2)}.project-description-body,.project-description-rich p{color:#2b3a4e;color:var(--text-700);font-size:1.02rem;line-height:1.7;margin:.6rem 0;white-space:pre-line}.project-description-rich h2{color:#036;color:var(--brand-navy);font-size:1.25rem;font-weight:800;margin:1.5rem 0 .75rem;margin:var(--space-6) 0 var(--space-3)}.project-description-rich h3{color:#036;color:var(--brand-navy);font-size:1.1rem;font-weight:700;margin:1rem 0 .5rem;margin:var(--space-4) 0 var(--space-2)}.project-description a{color:#036;color:var(--brand-navy);text-decoration:underline;text-underline-offset:2px}.project-media{min-width:0}.carousel{background:#fff;border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 8px 20px #10182814;box-shadow:var(--shadow-md);overflow:hidden;position:relative}.carousel-viewport{background:linear-gradient(180deg,#f6f9fc,#fff 70%);background:linear-gradient(180deg,var(--bg-50),#fff 70%);display:grid;min-height:280px;place-items:center;position:relative;width:100%}.carousel-image{display:block;height:auto;max-height:520px;object-fit:contain;width:100%}.carousel-viewport .carousel-nav{-webkit-backdrop-filter:saturate(120%) blur(4px);backdrop-filter:saturate(120%) blur(4px);background:#ffffffdb;border:1px solid #00000014;border-radius:999px;box-shadow:0 1px 2px #1018280f,0 1px 1px #1018280a;box-shadow:var(--shadow-sm);color:#036;color:var(--brand-navy);cursor:pointer;display:grid;font-size:22px;height:42px;place-items:center;position:absolute;top:50%;transform:translateY(-50%);transition:background .16s ease,transform .16s ease,box-shadow .16s ease;width:42px}.carousel-viewport .carousel-nav:focus-visible,.carousel-viewport .carousel-nav:hover{background:#fff;box-shadow:0 6px 14px #1018281f;outline:none;transform:translateY(-50%) scale(1.04)}.carousel-viewport .carousel-nav.left{left:10px}.carousel-viewport .carousel-nav.right{right:10px}.carousel-caption{background:linear-gradient(0deg,#0000008c,#0000 60%);color:#fff;font-size:.95rem;inset:auto 0 0 0;padding:.6rem .8rem;position:absolute}.carousel-dots{display:flex;gap:8px;justify-content:center;margin-top:10px}.dot{background:#c7d2e0;border:0;border-radius:999px;cursor:pointer;height:9px;width:9px}.dot.active{background:#036;background:var(--brand-navy)}.carousel-thumbs{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));margin-top:10px}.thumb{background:#fff;border:2px solid #0000;border-radius:8px;border-radius:var(--radius-sm);box-shadow:0 1px 2px #1018280f,0 1px 1px #1018280a;box-shadow:var(--shadow-sm);cursor:pointer;overflow:hidden;padding:0;transition:border-color .12s ease,transform .12s ease}.thumb:hover{transform:translateY(-1px)}.thumb.current{border-color:#036;border-color:var(--brand-navy)}.thumb img{aspect-ratio:16/10;display:block;object-fit:cover;width:100%}.carousel-empty{background:#eef3f8;background:var(--bg-100);border-radius:16px;border-radius:var(--radius-lg);box-shadow:inset 0 0 0 2px #e5e7eb;color:#6b7280;display:grid;min-height:260px;place-items:center}@media (max-width:1100px){.project-page-layout{gap:2rem;gap:var(--space-8);grid-template-columns:1fr}.project-media{order:-1}}@media (max-width:780px){.project-page-layout{padding:2rem 1rem;padding:var(--space-8) var(--space-4)}.carousel-image{max-height:420px}}@media (max-width:520px){.project-page-layout{padding:1.5rem 1rem;padding:var(--space-6) var(--space-4)}.project-title{font-size:clamp(1.1rem,5.2vw,1.5rem)}.project-description-body,.project-description-rich p,.project-details{overflow-wrap:anywhere;word-break:break-word}.carousel-viewport{min-height:220px}.carousel-image{max-height:320px}}:where(.carousel-nav,.dot,.thumb,.service-chip):focus-visible{box-shadow:0 0 0 4px #00336638;box-shadow:0 0 0 4px var(--ring);outline:3px solid #00336638;outline:3px solid var(--ring);outline-offset:2px}.job-app-modal{align-items:center;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:10000}.job-app-overlay{background:#00000080;height:100%;left:0;position:absolute;top:0;width:100%}.job-app-content{background:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a;max-height:90vh;max-width:500px;overflow-y:auto;padding:2rem;position:relative;width:90%;z-index:10001}.close-btn{background:#0000;border:none;cursor:pointer;font-size:1.5rem;position:absolute;right:.5rem;top:.5rem}.job-app-form .form-group{margin-bottom:1rem}.job-app-form label{display:block;font-weight:600;margin-bottom:.25rem}.job-app-form input[type=email],.job-app-form input[type=file],.job-app-form input[type=tel],.job-app-form input[type=text]{border:1px solid #ccc;border-radius:4px;padding:.5rem;width:100%}.submit-btn{background:#78be20;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem}.submit-btn:hover{background:#5da517}.job-page{font-family:Work Sans,sans-serif;margin:2rem auto;max-width:800px;padding:0 1rem}.job-title{color:#036;font-size:2rem;margin-bottom:.5rem}.job-location{color:#555}.job-description,.job-location,.job-qualifications,.job-specialization{margin-bottom:1.5rem}.job-description h2,.job-qualifications h2,.job-specialization h2{color:#036;font-size:1.25rem;margin-bottom:.5rem}.job-qualifications ul,.job-specialization ul{list-style:disc;margin-left:1.5rem}.apply-btn{background:#78be20;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;padding:.75rem 1.5rem}.apply-btn:hover{background:#5da517}.contact-page{font-family:Work Sans,sans-serif;margin:0 auto;max-width:1100px;padding:3rem 1rem}.contact-hero h1{color:#036;font-size:clamp(1.9rem,3vw,2.4rem);margin:0 0 .5rem}.contact-hero p{color:#444;margin:0 0 1.5rem}.contact-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);margin-bottom:2rem}.contact-card{background:#f7f9fc;border:1px solid #e5e8ef;border-radius:12px;padding:1rem}.contact-card h2{color:#036;font-size:1rem;letter-spacing:.03em;margin:0 0 .35rem;text-transform:uppercase}.contact-link{color:#036;font-weight:700;text-decoration:none}.contact-link:hover{color:#78be20}address{color:#333;font-style:normal;line-height:1.4}.contact-form-wrap{background:#fff;border:1px solid #e5e8ef;border-radius:12px;padding:1.25rem}.contact-form-wrap h2{color:#036;font-size:1.25rem;margin:0 0 .75rem}.contact-form{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr))}.contact-form input,.contact-form textarea{border:1px solid #c9d2e3;border-radius:10px;font-size:1rem;padding:.7rem .9rem;width:100%}.contact-form textarea{grid-column:1/-1;min-height:160px;resize:vertical}.contact-form button{background:#036;border:none;border-radius:999px;color:#fff;cursor:pointer;font-weight:700;grid-column:1/-1;justify-self:start;padding:.75rem 1.25rem}.contact-form button:hover{background:#00244f}.hp{display:none}.privacy-note{color:#6b7280;font-size:.9rem;margin-top:.5rem}@media (max-width:820px){.contact-grid{grid-template-columns:1fr 1fr}}@media (max-width:560px){.contact-form,.contact-grid{grid-template-columns:1fr}}
/*# sourceMappingURL=main.921c1606.css.map*/