@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-ext-wght-normal.BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-wght-normal.DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-ext-wght-normal.DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-wght-normal.CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-vietnamese-wght-normal.CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-ext-wght-normal.DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-wght-normal.Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper:#f6f7f5;--ink:#182326;--muted:#626c71;--line:#d8deda;--blue:#1957fd;--mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;color:var(--ink);background:var(--paper);font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:100px;font-family:Inter Variable,Inter,Arial,sans-serif}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,summary,a{-webkit-tap-highlight-color:transparent}button,summary{font:inherit}img,svg{max-width:100%;display:block}h1,h2,h3,p,figure{margin:0}a:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:6px}::selection{color:#122450;background:#ceddff}.shell{width:min(1320px,100% - 112px);margin-inline:auto}.eyebrow{font-family:var(--mono);letter-spacing:.085em;text-transform:uppercase;font-size:10px;font-weight:500;line-height:1.6}.skip-link{background:var(--ink);color:#fff;z-index:100;padding:15px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:10px}.site-header{z-index:20;border-bottom:1px solid var(--line);background:#f6f7f5f5;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:40px;height:97px;display:flex}.brand{flex-shrink:0}.brand img{width:153px;height:auto}.desktop-nav{align-items:center;gap:32px;margin-left:auto;display:flex}.desktop-nav a,.header-contact{font-size:12px;font-weight:500}.desktop-nav a{padding-block:12px}.desktop-nav a:hover{color:var(--blue)}.header-contact{border-left:1px solid var(--line);align-items:center;gap:28px;padding-left:32px;display:flex}.header-contact span{color:var(--blue);font-size:23px}.mobile-menu{display:none}.hero{grid-template-columns:1.1fr 1fr;align-items:center;gap:26px;padding-block:69px 65px;display:grid}.hero-copy{padding-block:12px}.hero-copy .eyebrow{letter-spacing:.07em;align-items:center;gap:10px;font-size:10px;display:flex}.signal-dot{background:var(--blue);border-radius:50%;flex-shrink:0;width:6px;height:6px}.hero h1{letter-spacing:-.078em;white-space:nowrap;margin:33px 0 26px;font-size:clamp(54px,6.05vw,91px);font-weight:500;line-height:1.04}.hero h1 em{color:var(--blue);font-style:normal}.hero-lead{letter-spacing:-.025em;max-width:400px;font-size:20px;line-height:1.55}.hero-description{max-width:385px;color:var(--muted);margin-top:15px;font-size:13px;line-height:1.85}.text-link{border-bottom:1px solid var(--ink);align-items:center;gap:42px;margin-top:29px;padding-bottom:10px;font-size:12px;font-weight:600;display:inline-flex}.text-link span{color:var(--blue);font-size:22px;transition:transform .18s}.text-link:hover{color:var(--blue);border-color:var(--blue)}.text-link:hover span{transform:translate(3px,-3px)}.engineering-visual{background:#eef2f8;border:1px solid #e0e6ed;flex-direction:column;justify-content:space-between;align-self:stretch;min-width:0;display:flex}.visual-heading{color:#52637c;justify-content:space-between;align-items:center;gap:10px;padding:23px 25px;display:flex}.visual-heading .eyebrow{font-size:9px}.figure-index{font-family:var(--mono);white-space:nowrap;color:#52637c;font-size:9px}.engineering-visual svg{width:100%;margin-block:5px}.engineering-visual figcaption{color:#52637c;border-top:1px solid #d0d9e6;justify-content:space-between;align-items:center;margin:0 25px;padding:16px 0 21px;font-size:10px;display:flex}.engineering-visual figcaption>span:first-child{align-items:center;gap:8px;display:flex}.engineering-visual figcaption i{background:var(--blue);border-radius:50%;width:5px;height:5px}.engineering-visual figcaption>span:last-child{color:var(--blue);font-size:20px}.discipline-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding-block:25px;display:flex}.discipline-strip>.eyebrow{color:var(--muted);font-size:9px}.discipline-strip p{align-items:center;gap:24px;font-size:11px;font-weight:500;display:flex}.discipline-strip p span{color:#a8b1b5}.section{padding-block:100px}.expertise{grid-template-columns:.92fr 1.3fr;gap:100px;display:grid}h2{letter-spacing:-.055em;font-size:clamp(32px,3.45vw,49px);font-weight:500;line-height:1.12}h2 span{color:#788281}.section-heading .eyebrow,.work-heading .eyebrow,.approach-intro .eyebrow{color:#536461;margin-bottom:28px}.section-heading>p:last-child{color:var(--muted);max-width:265px;margin-top:22px;font-size:13px;line-height:1.8}.capability{border-top:1px solid var(--line);grid-template-columns:24px 1fr 34px;gap:20px;padding-block:25px;display:grid}.capability:last-child{border-bottom:1px solid var(--line)}.item-number{font-family:var(--mono);color:var(--blue);padding-top:5px;font-size:10px}.capability h3{letter-spacing:-.035em;margin-bottom:11px;font-size:20px;font-weight:500}.capability p{color:var(--muted);max-width:420px;font-size:12px;line-height:1.85}.capability-tags{font-family:var(--mono);letter-spacing:.035em;color:#626c71;margin-top:18px;font-size:8px;line-height:1.8;display:block}.round-arrow{border:1px solid var(--line);border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:18px;transition:color .18s,background-color .18s,border-color .18s;display:flex}.capability:hover h3{color:var(--blue)}.capability:hover .round-arrow{color:#fff;background:var(--blue);border-color:var(--blue)}.work-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#eaece8}.work-heading{justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:42px;display:flex}.work-heading>p{max-width:300px;color:var(--muted);margin-bottom:5px;font-size:13px;line-height:1.8}.work-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;display:grid}.work-card{min-width:0}.work-art{border:1px solid #18232614;height:220px;padding:20px;position:relative;overflow:hidden}.work-category{font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em;font-size:9px;position:absolute;top:19px;left:20px}.work-art-name{letter-spacing:-.02em;font-size:13px;font-weight:500;position:absolute;bottom:18px;left:20px}.work-index{font-family:var(--mono);font-size:9px;position:absolute;bottom:20px;right:20px}.blue-capsule .work-art{color:#365d67;background:#dce9eb}.ultramarin .work-art{color:#3849b5;background:#dfe4fd}.kleorix .work-art{color:#38604a;background:#dbe5dc}.work-copy{padding:25px 0 0}.client-name{font-family:var(--mono);text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-bottom:14px;font-size:9px}.work-copy h3{letter-spacing:-.04em;max-width:270px;margin-bottom:13px;font-size:23px;font-weight:500;line-height:1.25}.work-description{color:var(--muted);min-height:92px;font-size:12px;line-height:1.9}.tags{flex-wrap:wrap;gap:6px;margin:19px 0 24px;padding:0;list-style:none;display:flex}.tags li{font-family:var(--mono);color:#52605b;border:1px solid #c7ceca;border-radius:3px;padding:6px 8px;font-size:8px}.project-detail{border-top:1px solid #c9d0ca}.project-detail summary{cursor:pointer;justify-content:space-between;align-items:center;padding:15px 0;font-size:11px;font-weight:500;list-style:none;display:flex}.project-detail summary::-webkit-details-marker{display:none}.project-detail summary span{color:var(--blue);font-size:19px}.project-detail[open] summary span{transform:rotate(45deg)}.project-detail summary:hover{color:var(--blue)}.project-detail>div{color:var(--muted);padding:0 0 15px;font-size:12px;line-height:1.85}.project-detail a{color:var(--ink);text-underline-offset:4px;margin-top:12px;text-decoration:underline;display:inline-block}.approach{grid-template-columns:1fr 1fr;gap:100px;display:grid}.approach-steps{margin:0;padding:0;list-style:none}.approach-steps li{grid-template-columns:25px 1fr;gap:20px;padding:0 0 30px;display:grid;position:relative}.approach-steps li:last-child{padding-bottom:0}.approach-steps li:not(:last-child):before{content:"";background:var(--line);width:1px;position:absolute;top:30px;bottom:10px;left:7px}.approach-steps h3{letter-spacing:-.025em;margin-bottom:10px;font-size:19px;font-weight:500}.approach-steps p{color:var(--muted);max-width:360px;font-size:12px;line-height:1.85}.site-footer{color:#eef2ef;background:#1b282b;padding-top:70px}.footer-top{justify-content:space-between;align-items:center;gap:50px;padding-bottom:66px;display:flex}.footer-top .eyebrow{color:#a9b9b6;margin-bottom:25px}.footer-top h2{letter-spacing:-.055em;font-size:60px}.footer-contact{width:40%}.footer-contact p{color:#aab8b5;margin-bottom:26px;font-size:13px;line-height:1.8}.footer-contact>a{letter-spacing:-.04em;border-bottom:1px solid #647674;justify-content:space-between;align-items:center;gap:20px;padding-bottom:15px;font-size:25px;display:flex}.footer-contact>a:hover,.footer-contact>a span{color:#a7c0ff}.footer-bottom{color:#aab8b5;border-top:1px solid #3d4a4b;justify-content:space-between;align-items:center;gap:25px;padding-block:28px;font-size:9px;display:flex}.footer-bottom p{margin-right:auto}.footer-bottom img{width:106px;height:auto}.footer-bottom a:hover{color:#fff}@media (width>=1600px){.hero h1{font-size:94px}.hero{gap:70px;padding-block:84px}.hero-lead{max-width:445px;font-size:22px}.hero-description{max-width:420px;font-size:14px}}@media (width<=1150px){.shell{width:calc(100% - 72px)}.header-inner{gap:25px}.desktop-nav{gap:22px}.header-contact{gap:20px;padding-left:22px}.hero{gap:25px;padding-block:55px}.hero h1{font-size:6.3vw}.hero-lead{font-size:18px}.hero-copy .eyebrow{font-size:8px}.discipline-strip{flex-direction:column;align-items:flex-start;gap:14px}.expertise,.approach{gap:55px}.section{padding-block:75px}.work-grid{gap:20px}.work-art{height:190px}.work-copy h3{font-size:21px}.work-description{min-height:115px}.footer-bottom{flex-wrap:wrap}}@media (width<=800px){.shell{width:calc(100% - 48px)}.header-inner{height:78px}.brand img{width:133px}.desktop-nav,.header-contact{display:none}.mobile-menu{display:block}.mobile-menu>summary{cursor:pointer;align-items:center;gap:30px;padding:12px 0 12px 12px;font-size:12px;list-style:none;display:flex}.mobile-menu>summary::-webkit-details-marker{display:none}.menu-symbol{color:var(--blue);font-size:24px}.mobile-menu[open] .menu-symbol{transform:rotate(45deg)}.mobile-menu nav{background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;max-height:calc(100dvh - 78px);padding:15px 24px 24px;display:flex;position:absolute;top:78px;left:0;right:0;overflow-y:auto;box-shadow:0 16px 24px #1823260d}.mobile-menu nav a{border-bottom:1px solid var(--line);padding:15px 0;font-size:16px}.hero{grid-template-columns:1fr;gap:42px;padding-block:45px 35px}.hero-copy .eyebrow{font-size:9px}.hero h1{letter-spacing:-.075em;margin-top:30px;font-size:clamp(52px,10.3vw,82px)}.hero-lead{max-width:460px;font-size:20px}.hero-description{max-width:450px;font-size:13px}.engineering-visual{justify-self:center;width:100%;max-width:600px}.engineering-visual svg{max-height:410px}.visual-heading{padding-block:18px}.discipline-strip p{flex-wrap:wrap;gap:12px 16px;font-size:10px}.expertise{grid-template-columns:1fr;gap:35px}.section-heading>p:last-child{max-width:340px}.section{padding-block:62px}h2{font-size:38px}.section-heading .eyebrow,.work-heading .eyebrow,.approach-intro .eyebrow{margin-bottom:21px}.work-heading{flex-direction:column;align-items:flex-start;gap:20px}.work-heading>p{max-width:390px}.work-grid{grid-template-columns:1fr;gap:38px}.work-card{border-bottom:1px solid #c9d0ca;grid-template-columns:1fr 1.25fr;gap:25px;padding-bottom:28px;display:grid}.work-card:last-child{border-bottom:0;padding-bottom:0}.work-art{height:235px}.work-copy{padding:0}.work-description{min-height:0}.work-copy h3{max-width:100%;font-size:23px}.work-copy .tags{margin-block:16px}.approach{grid-template-columns:1fr;gap:40px}.footer-top{gap:40px}.footer-top h2{font-size:44px}.footer-contact{width:45%}.footer-contact>a{font-size:19px}.footer-bottom p{display:none}.footer-bottom{gap:20px;font-size:9px}.footer-bottom>a:last-child{margin-left:auto}}@media (width<=480px){.hero h1{font-size:12vw}.hero-lead{font-size:18px}.hero-description{font-size:12px}.hero-copy .eyebrow{letter-spacing:.04em;font-size:8px}.engineering-visual svg{height:auto}.visual-heading{padding:17px 15px}.visual-heading .eyebrow,.figure-index{font-size:7px}.engineering-visual figcaption{margin-inline:15px;padding-block:12px;font-size:8px}.discipline-strip p{gap:9px 11px;font-size:9px}.capability{grid-template-columns:18px 1fr 28px;gap:12px;padding-block:23px}.capability h3{font-size:19px}.capability p{font-size:12px}.capability-tags{font-size:7px}.round-arrow{width:28px;height:28px;font-size:16px}.work-card{grid-template-columns:1fr;gap:22px}.work-art{height:220px}.work-copy h3{max-width:280px;font-size:25px}.work-description{font-size:13px}.work-heading{margin-bottom:30px}.footer-top{flex-direction:column;align-items:stretch;gap:35px;padding-bottom:45px}.footer-top h2{font-size:49px}.footer-contact{width:100%}.footer-contact>a{font-size:24px}.footer-bottom{justify-content:space-between}.footer-bottom>a:last-child{width:100%;margin-left:0}.site-footer{padding-top:48px}}@media (prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.partner-logo{justify-content:center;align-items:center;display:flex;position:absolute;inset:55px 35px}.partner-logo svg{width:100%;max-width:260px;height:auto;max-height:90px}.ultramarin .partner-logo svg{width:156px;max-height:85px}.kleorix .partner-logo svg{max-width:250px}.site-header[data-over-hero]{color:#fff;background:0 0;border-bottom-color:#ffffff2e;position:fixed;inset:0 0 auto}.site-header[data-over-hero=false]{color:var(--ink);border-bottom-color:var(--line);background:#f6f7f5f7}.site-header .brand-light{display:block}.site-header .brand-dark,.site-header[data-over-hero=false] .brand-light{display:none}.site-header[data-over-hero=false] .brand-dark{display:block}.site-header[data-over-hero=true] .desktop-nav a:hover{color:#b8ccff}.site-header[data-over-hero] .header-contact{border:1px solid #ffffff5c;gap:28px;padding:11px 18px}.site-header[data-over-hero] .header-contact span{color:#b8ccff}.site-header[data-over-hero=false] .header-contact{border-color:var(--line)}.site-header[data-over-hero=false] .header-contact span{color:var(--blue)}.site-header[data-over-hero=true] :is(a,summary):focus-visible{outline-color:#b8ccff}.site-header[data-over-hero=true] .menu-symbol{color:#b8ccff}.site-header[data-over-hero=true] .mobile-menu nav{background:#101e2d;border-color:#fff3}.site-header[data-over-hero=true] .mobile-menu nav a{border-color:#ffffff29}.immersive-hero{isolation:isolate;color:#fff;background:#101e2d;flex-direction:column;min-height:clamp(740px,90svh,1000px);display:flex;position:relative}.immersive-hero__image{z-index:-2;object-fit:cover;object-position:var(--hero-position,65% 52%);width:100%;height:100%;position:absolute;inset:0}.immersive-hero:after{z-index:-1;content:"";background:linear-gradient(90deg,#081424de 0%,#081424b5 32%,#0814243d 66%,#0814240a 100%),linear-gradient(#08142447 0%,#0000 48%,#101e2d61 82%,#101e2d 100%);position:absolute;inset:0}.immersive-hero__body{flex-direction:column;flex:1;justify-content:center;align-items:flex-start;padding-block:175px 104px;display:flex}.immersive-hero__eyebrow{letter-spacing:.11em;color:#dbe5f3;align-items:center;gap:14px;font-size:10px;display:flex}.immersive-hero__eyebrow:before{content:"";background:#a8c2ff;border-radius:50%;width:7px;height:7px}.immersive-hero h1{letter-spacing:-.07em;margin:35px 0 27px;font-size:clamp(64px,7.4vw,110px);font-weight:450;line-height:1.04}.immersive-hero h1 span{color:#abc5ff;display:block}.immersive-hero__lead{letter-spacing:-.025em;color:#e0e6ef;max-width:430px;font-size:18px;line-height:1.65}.immersive-hero__cta{background:var(--blue);border:1px solid #ffffff24;align-items:center;gap:44px;min-height:60px;margin-top:34px;padding:14px 23px;font-size:12px;font-weight:550;display:inline-flex}.immersive-hero__cta:hover{background:#1249dc}.immersive-hero__cta span{font-size:26px;font-weight:300}.immersive-hero a:focus-visible{outline-color:#b8ccff}.immersive-hero__caption{text-align:right;color:#e0e6ef;font-size:11px;line-height:1.8;position:absolute;bottom:144px;right:max(56px,50% - 660px)}.immersive-hero__caption>span:not(.hero-scene-caption){color:#bcc9db;font-size:9px;display:block}.immersive-hero__bottom{color:#c5cfde;justify-content:space-between;align-items:center;gap:24px;padding-block:22px 31px;display:flex}.immersive-hero__bottom p,.immersive-hero__bottom a{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;font-size:9px;line-height:1.6}.immersive-hero__bottom a{align-items:center;gap:18px;display:flex}.immersive-hero__bottom a span{color:#abc5ff;font-size:23px}.hero-disciplines{color:#edf2f9;background:#142539;border-top:1px solid #ffffff1f}.hero-disciplines__inner{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.hero-disciplines a{letter-spacing:-.015em;border-right:1px solid #ffffff1f;align-items:center;gap:18px;min-height:96px;padding:24px;font-size:12px;display:flex}.hero-disciplines a:first-child{padding-left:0}.hero-disciplines a:last-child{border-right:0}.hero-disciplines a:hover{color:#abc5ff}.hero-disciplines a:focus-visible{outline-offset:-6px;outline-color:#abc5ff}.hero-disciplines span{font-family:var(--mono);color:#91a8c8;font-size:9px}@media (width<=1150px){.immersive-hero__caption{bottom:112px;right:36px}.immersive-hero__body{padding-block:160px 110px}.hero-disciplines a{gap:12px;padding-inline:15px;font-size:11px}}@media (width<=800px){.immersive-hero{min-height:max(780px,92svh)}.immersive-hero__body{justify-content:flex-start;padding-block:145px 200px}.immersive-hero h1{font-size:clamp(52px,9vw,75px)}.immersive-hero__image{object-position:var(--hero-position-mobile,83% 50%)}.immersive-hero:after{background:linear-gradient(90deg,#081424c7,#0814245c),linear-gradient(#08142494 0%,#0000 62%,#101e2d 100%)}.immersive-hero__caption{bottom:98px;right:24px}.immersive-hero__bottom{padding-bottom:24px}.immersive-hero__bottom p{max-width:220px;font-size:8px}.immersive-hero__bottom a{gap:10px;font-size:8px}.hero-disciplines__inner{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-disciplines a{min-height:76px;padding:20px 14px;font-size:11px}.hero-disciplines a:nth-child(2){border-right:0}.hero-disciplines a:nth-child(3){padding-left:0}.hero-disciplines a:nth-child(-n+2){border-bottom:1px solid #ffffff1f}}@media (width<=480px){.immersive-hero{min-height:max(820px,96svh)}.immersive-hero__body{padding-block:136px 220px}.immersive-hero h1{letter-spacing:-.065em;margin-top:29px;font-size:clamp(42px,11.7vw,56px)}.immersive-hero__eyebrow{letter-spacing:.045em;gap:10px;font-size:8px}.immersive-hero__lead{max-width:310px;font-size:16px}.immersive-hero__cta{gap:32px;min-height:56px;margin-top:28px;padding-inline:20px}.immersive-hero__image{object-position:var(--hero-position-mobile,83% 50%)}.immersive-hero__bottom p{max-width:160px;font-size:7px}.immersive-hero__bottom a{font-size:7px}.hero-disciplines a{gap:9px;padding-right:0;font-size:10px}}:root{--resize-dur:.3s;--resize-ease:cubic-bezier(.22, 1, .36, 1);--digit-dur:.5s;--digit-distance:8px;--digit-stagger:70ms;--digit-blur:2px;--digit-ease:cubic-bezier(.34, 1.45, .64, 1);--digit-dir-x:0;--digit-dir-y:1;--badge-slide-dur:.26s;--badge-pop-dur:.5s;--badge-pop-close-dur:.18s;--badge-fade-dur:.4s;--badge-fade-close-dur:.18s;--badge-blur:2px;--badge-offset-x:-8.2px;--badge-offset-y:12.4px;--badge-slide-ease:cubic-bezier(.22, 1, .36, 1);--badge-pop-ease:cubic-bezier(.34, 1.36, .64, 1);--badge-close-ease:cubic-bezier(.4, 0, .2, 1);--text-swap-dur:.15s;--text-swap-translate-y:4px;--text-swap-blur:2px;--text-swap-ease:ease-in-out;--dropdown-open-dur:.25s;--dropdown-close-dur:.15s;--dropdown-pre-scale:.97;--dropdown-closing-scale:.99;--dropdown-ease:cubic-bezier(.22, 1, .36, 1);--modal-open-dur:.25s;--modal-close-dur:.15s;--modal-scale:.96;--modal-scale-close:.96;--modal-ease:cubic-bezier(.22, 1, .36, 1);--panel-open-dur:.4s;--panel-close-dur:.35s;--panel-translate-y:100px;--panel-blur:2px;--panel-ease:cubic-bezier(.22, 1, .36, 1);--page-slide-dur:.2s;--page-fade-dur:.2s;--page-slide-distance:8px;--page-blur:3px;--page-stagger:0s;--page-exit-enabled:1;--page-slide-ease:cubic-bezier(.22, 1, .36, 1);--page-fade-ease:cubic-bezier(.22, 1, .36, 1);--icon-swap-dur:.2s;--icon-swap-blur:2px;--icon-swap-start-scale:.25;--icon-swap-ease:ease-in-out;--check-opacity-dur:.55s;--check-rotate-dur:.55s;--check-rotate-from:80deg;--check-bob-dur:.45s;--check-y-amount:40px;--check-blur-dur:.5s;--check-blur-from:10px;--check-path-dur:.55s;--check-path-delay:80ms;--check-ease-out:cubic-bezier(.22, 1, .36, 1);--check-ease-opacity:cubic-bezier(.22, 1, .36, 1);--check-ease-rotate:cubic-bezier(.22, 1, .36, 1);--check-ease-bob:cubic-bezier(.34, 1.35, .64, 1);--check-ease-path:cubic-bezier(.22, 1, .36, 1);--avatar-lift:-4px;--avatar-dur:.32s;--avatar-scale:1.05;--avatar-falloff:.45;--avatar-ease-in:cubic-bezier(.22, 1, .36, 1);--avatar-ease-out:cubic-bezier(.34, 3.85, .64, 1);--shake-distance:6px;--shake-overshoot:4px;--shake-dur-a:80ms;--shake-dur-b:60ms;--shake-ease:cubic-bezier(.22, 1, .36, 1);--revert-hold:3s;--revert-dur:.28s}.t-dropdown{transform-origin:0 0;transform:scale(var(--dropdown-pre-scale));opacity:0;pointer-events:none;transition:transform var(--dropdown-open-dur) var(--dropdown-ease), opacity var(--dropdown-open-dur) var(--dropdown-ease);will-change:transform, opacity}.t-dropdown[data-origin=top-right]{transform-origin:100% 0}.t-dropdown[data-origin=top-center]{transform-origin:top}.t-dropdown[data-origin=bottom-left]{transform-origin:0 100%}.t-dropdown[data-origin=bottom-center]{transform-origin:bottom}.t-dropdown[data-origin=bottom-right]{transform-origin:100% 100%}.t-dropdown.is-open{opacity:1;pointer-events:auto;transform:scale(1)}.t-dropdown.is-closing{transform:scale(var(--dropdown-closing-scale));opacity:0;pointer-events:none;transition:transform var(--dropdown-close-dur) var(--dropdown-ease), opacity var(--dropdown-close-dur) var(--dropdown-ease)}@media (prefers-reduced-motion:reduce){.t-dropdown{transition:none!important}}.header-disclosure>summary{user-select:none}.services-menu[open]:not([data-expanded])>summary>svg{transform:rotate(180deg)}.services-chevron,.menu-symbol{transform-origin:50%;width:14px;height:14px;transition:transform var(--dropdown-open-dur) var(--dropdown-ease);flex:none;display:block}.header-disclosure[data-expanded=false]>summary :is(.services-chevron,.menu-symbol){transform:rotate(0)}.header-disclosure[data-expanded=true]>summary .services-chevron{transform:rotate(180deg)}.header-disclosure[data-expanded=true]>summary .menu-symbol{transform:rotate(45deg)}@media (prefers-reduced-motion:reduce){.services-chevron,.menu-symbol{transition:none}}.interior-page main{padding-top:97px}.page-lead{color:var(--muted);max-width:560px;font-size:16px;line-height:1.85}.page-sections{border-block:1px solid var(--line);flex-wrap:wrap;gap:18px 40px;padding-block:22px;font-size:12px;display:flex}.page-sections a:hover{color:var(--blue)}.content-split{grid-template-columns:.9fr 1.3fr;gap:90px;display:grid}.section-intro>.eyebrow,.wide-heading .eyebrow{color:#536461;margin-bottom:24px}.section-intro>p:not(.eyebrow){color:var(--muted);max-width:410px;margin-top:25px;font-size:15px;line-height:1.85}.scope-list article{border-top:1px solid var(--line);grid-template-columns:25px 1fr;gap:24px;padding-block:25px;display:grid}.scope-list article:last-child{border-bottom:1px solid var(--line)}.scope-list h3,.editorial-grid h3,.process-grid h3,.technology-list h3,.related-grid h3{letter-spacing:-.035em;font-size:23px;font-weight:500;line-height:1.25}.scope-list p,.editorial-grid article>p:last-child,.process-grid p,.technology-list p,.related-grid p{color:var(--muted);margin-top:13px;font-size:14px;line-height:1.85}.soft-section{border-block:1px solid var(--line);background:#eaece8}.wide-heading{justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:48px;display:flex}.wide-heading>p{max-width:330px;color:var(--muted);font-size:14px;line-height:1.85}.editorial-grid,.process-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:42px;display:grid}.editorial-grid article{border-top:1px solid #bdc7c3;padding-top:22px}.editorial-grid .eyebrow{color:var(--blue);margin-bottom:35px}.dark-section{color:#fff;background:#142433}.dark-section .eyebrow{color:#abc1f9}.dark-section .text-link{color:#fff;border-color:#63758b}.dark-section .text-link span{color:#abc1f9}.process-grid{margin:0;padding:0;list-style:none}.process-grid li{border-top:1px solid #465461;padding-top:22px}.process-grid h3{margin-top:35px}.process-grid p{color:#b8c3ca}.technology-list article{border-top:1px solid var(--line);grid-template-columns:.9fr 1.3fr;gap:90px;padding-block:30px;display:grid}.technology-list article:last-child{border-bottom:1px solid var(--line)}.technology-list .technology-names{color:var(--ink);margin-top:0;font-size:17px}.interior-faq{border-block:1px solid var(--line);background:#edf0ed}.question-list{border-top:1px solid #c8d0ca}.question-list details{border-bottom:1px solid #c8d0ca}.question-list summary{cursor:pointer;justify-content:space-between;align-items:center;gap:24px;padding:23px 0;font-size:17px;line-height:1.5;list-style:none;display:flex}.question-list summary::-webkit-details-marker{display:none}.question-list svg{color:var(--blue);flex-shrink:0}.question-list [open] svg{transform:rotate(45deg)}.question-list details>p{color:var(--muted);padding:0 36px 24px 0;font-size:14px;line-height:1.85}.related-grid{grid-template-columns:1fr 1fr;gap:40px;display:grid}.related-grid>a{border-block:1px solid var(--line);padding-block:25px}.related-grid .eyebrow{color:var(--muted)}.related-grid h3{justify-content:space-between;gap:20px;margin-top:25px;display:flex}.related-grid h3>span,.related-grid a:hover h3{color:var(--blue)}.footer-directory{border-top:1px solid #3d4a4b;grid-template-columns:1fr 1.25fr 1fr;gap:50px;padding-block:35px 45px;display:grid}.footer-directory .eyebrow{color:#9bb1ad;margin-bottom:18px}.footer-directory a{color:#d9e2df;width:fit-content;padding-block:5px;font-size:12px;line-height:1.8;display:block}.footer-directory p:not(.eyebrow){color:#d9e2df;margin-bottom:10px;font-size:12px;line-height:1.9}.footer-directory a:hover{color:#abc1f9}[aria-current=page]{text-underline-offset:6px;text-decoration:underline}.company-facts{border-block:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:25px;padding-block:25px;display:grid}.company-facts p{margin-top:10px;font-size:13px;line-height:1.75}.company-facts .eyebrow{color:var(--muted)}.case-logo{max-width:250px;padding:25px 0 45px}.case-logo svg{width:100%;max-height:80px}.case-statement{letter-spacing:-.04em;max-width:980px;font-size:clamp(30px,4vw,56px);font-weight:500;line-height:1.2}.contact-grid{grid-template-columns:1.4fr 1fr;gap:90px;padding-bottom:100px;display:grid}.contact-form{border-top:1px solid var(--line);padding-top:30px}.contact-form h2{margin-bottom:30px;font-size:32px}.field-grid{grid-template-columns:1fr 1fr;gap:25px;display:grid}.field{flex-direction:column;gap:10px;display:flex}.field-wide{grid-column:1/-1}.field label{font-size:12px;font-weight:500}.field input,.field select,.field textarea{font:inherit;color:var(--ink);background:0 0;border:1px solid #b9c4be;border-radius:0;width:100%;min-width:0;padding:14px;font-size:15px}.field input,.field select{height:50px}.field select{-webkit-appearance:none;appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='m4 6 4 4 4-4' stroke='%231a2628' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;background-size:16px 16px;padding-right:44px}.field textarea{resize:vertical}.budget-field{border:0;min-width:0;margin:0;padding:0}.budget-field legend{margin-bottom:12px;padding:0;font-size:12px;font-weight:500}.budget-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.budget-option{min-height:96px;color:var(--muted);cursor:pointer;border:1px solid #b9c4be;justify-content:space-between;align-items:center;gap:16px;padding:20px;display:flex}.budget-option:has(input:checked){border-color:var(--blue);color:var(--blue)}.budget-option:has(input:focus-visible){outline:2px solid var(--blue);outline-offset:2px}.budget-option input{width:20px;height:20px;accent-color:var(--blue);cursor:pointer;flex-shrink:0;order:1;margin:0}.budget-option__copy{gap:6px;font-size:13px;line-height:1.4;display:grid}.budget-option__copy strong{font-size:17px;font-weight:600}@media (width<=480px){.budget-options{grid-template-columns:1fr;gap:12px}.budget-option{min-height:86px}}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--blue);outline-offset:2px}.primary-button{background:var(--blue);color:#fff;font:inherit;cursor:pointer;border:0;justify-content:space-between;align-items:center;gap:38px;padding:19px 24px;font-size:13px;display:inline-flex}.primary-button:hover{background:#1649d1}.primary-button:disabled{opacity:.6;cursor:wait}button:focus-visible{outline:3px solid var(--blue);outline-offset:5px}.form-note{color:var(--muted);margin:20px 0;font-size:12px;line-height:1.8}.form-note a{text-decoration:underline}.form-status{margin-top:20px;font-size:14px;line-height:1.8}.form-status[data-state=error]{color:#9f3525}.form-status[data-state=success]{color:#245a3b}.contact-details{background:#eaece8;align-self:start;padding:32px}.contact-details section+section{border-top:1px solid #c8d0ca;margin-top:30px;padding-top:30px}.contact-details h2{margin-bottom:18px;font-size:22px}.contact-details p,.contact-details a,.contact-details address{font-size:14px;font-style:normal;line-height:1.9}.contact-details a{color:var(--blue);display:block}.contact-details dl{margin:20px 0 0;font-size:13px;line-height:1.85}.contact-details dt{color:var(--muted)}.contact-details dd{margin:0 0 12px}.article-list{padding-block:0 90px}.article-card{border-top:1px solid var(--line);grid-template-columns:180px 1fr 40px;gap:40px;padding-block:36px;display:grid}.article-card:last-child{border-bottom:1px solid var(--line)}.article-card h2{max-width:720px;font-size:32px}.article-card p{color:var(--muted);max-width:640px;margin-top:16px;font-size:14px;line-height:1.8}.article-card .eyebrow{color:#536461;padding-top:7px}.article-card>span:last-child{color:var(--blue);font-size:28px}.article-card:hover h2{color:var(--blue)}.article-meta{color:var(--muted);padding-top:25px;font-size:12px}.article-body{max-width:760px;padding-bottom:100px}.article-body h2{margin:45px 0 18px;font-size:32px}.article-body h3{margin:28px 0 15px;font-size:23px}.article-body p,.article-body li{color:#475653;margin-bottom:20px;font-size:16px;line-height:1.9}.article-body a{color:var(--blue);text-underline-offset:4px;text-decoration:underline}.article-body ul{padding-left:22px}.article-body li{padding-left:6px}.error-page{min-height:65vh;padding-block:100px}.error-page h1{letter-spacing:-.07em;margin:25px 0;font-size:clamp(60px,9vw,130px);font-weight:500;line-height:1.05}.error-page .page-lead{margin-bottom:30px}@media (width<=1150px){.content-split,.technology-list article,.contact-grid{gap:50px}.editorial-grid,.process-grid{gap:28px}}@media (width<=800px){.interior-page main{padding-top:78px}.page-lead{font-size:15px}.page-sections{gap:15px 25px}.content-split,.contact-grid{grid-template-columns:1fr;gap:35px}.wide-heading{flex-direction:column;align-items:flex-start;gap:25px;margin-bottom:35px}.editorial-grid,.process-grid{grid-template-columns:1fr;gap:32px}.editorial-grid .eyebrow{margin-bottom:20px}.process-grid h3{margin-top:20px}.technology-list article{grid-template-columns:1fr;gap:18px}.related-grid{gap:25px}.company-facts{grid-template-columns:1fr}.contact-grid{padding-bottom:62px}.article-card{grid-template-columns:1fr 28px;gap:15px}.article-card .eyebrow{grid-column:1/-1}.article-card h2{font-size:28px}.footer-directory{gap:30px}}@media (width<=480px){.related-grid,.field-grid{grid-template-columns:1fr}.footer-directory{grid-template-columns:1fr 1fr}.footer-directory>div:last-child{grid-column:1/-1}.contact-details{padding:25px}.scope-list article{gap:14px}.scope-list h3{font-size:21px}.question-list summary{font-size:16px}}.interior-page.has-page-hero main{padding-top:0}.page-hero{isolation:isolate;color:#fff;background:#101e2d;flex-direction:column;min-height:clamp(740px,90svh,1000px);display:flex;position:relative}.page-hero__image{z-index:-2;object-fit:cover;object-position:var(--hero-position,65% 50%);width:100%;height:100%;position:absolute;inset:0}.page-hero:after{content:"";z-index:-1;background:linear-gradient(90deg,#081424cc 0%,#081424ab 32%,#08142430 68%,#08142408 100%),linear-gradient(#0814244d 0%,#0000 45%,#101e2d4d 80%,#101e2d 100%);position:absolute;inset:0}.page-hero__body{flex-direction:column;flex:1;justify-content:center;align-items:flex-start;padding-block:180px 105px;display:flex}.page-hero .eyebrow{color:#dbe5f3;letter-spacing:.1em;max-width:620px}.page-hero .eyebrow span{color:#9eb1cb;margin-inline:10px}.page-hero h1{letter-spacing:-.065em;text-wrap:balance;max-width:920px;margin:35px 0 27px;font-size:clamp(60px,6.5vw,96px);font-weight:450;line-height:1.04}.page-hero h1>span{color:#abc5ff;display:block}.page-hero .page-lead{color:#e0e6ef;max-width:535px;font-size:17px;line-height:1.8}.page-hero a:focus-visible{outline-color:#b8ccff}.page-hero__bottom{color:#becbdb;font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em;border-top:1px solid #ffffff2e;justify-content:space-between;align-items:center;gap:25px;padding-block:26px 30px;font-size:9px;line-height:1.7;display:flex}.page-hero__bottom a{flex-shrink:0;align-items:center;gap:20px;display:inline-flex}.page-hero__bottom a span{color:#abc5ff;font-size:20px}.has-page-hero .contact-grid,.has-page-hero .article-list{padding-top:75px}.has-page-hero .article-meta{padding-top:55px}.has-page-hero .company-facts{border-top:0;padding-block:32px}@media (width<=1150px){.page-hero h1{max-width:770px}.page-hero__body{padding-block:165px 90px}}@media (width<=800px){.page-hero{min-height:max(760px,92svh)}.page-hero__image{object-position:var(--hero-position-mobile,75% 50%)}.page-hero:after{background:linear-gradient(90deg,#081424ad,#0814244d),linear-gradient(#08142473,#08142438 32%,#101e2d80 78%,#101e2d)}.page-hero__body{justify-content:flex-start;padding-block:145px 100px}.page-hero h1{max-width:680px;margin-block:27px 24px;font-size:clamp(43px,8.8vw,68px)}.page-hero .page-lead{max-width:480px;font-size:16px}.page-hero .eyebrow{font-size:9px}.page-hero__bottom{gap:20px;padding-block:22px 26px;font-size:8px}.page-hero__bottom p{max-width:190px}.page-hero__bottom a{gap:12px}.has-page-hero .contact-grid,.has-page-hero .article-list{padding-top:50px}}@media (width<=480px){.page-hero h1{letter-spacing:-.055em;font-size:clamp(41px,10.8vw,52px)}.page-hero__body{padding-block:132px 95px}.page-hero .page-lead{font-size:15px;line-height:1.8}.page-hero__bottom{font-size:7px}.page-hero__bottom p{max-width:150px}}.services-menu[data-astro-cid-s7o5jv66]{position:relative}.services-menu[data-astro-cid-s7o5jv66]>summary[data-astro-cid-s7o5jv66]{cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding-block:12px;font-size:12px;font-weight:500;list-style:none;display:flex}summary[data-astro-cid-s7o5jv66]::-webkit-details-marker{display:none}.services-menu__links[data-astro-cid-s7o5jv66]{background:var(--paper);width:290px;color:var(--ink);border:1px solid var(--line);padding:12px 20px;position:absolute;top:calc(100% + 12px);left:-20px;box-shadow:0 18px 40px #101e2d24}.services-menu__links[data-astro-cid-s7o5jv66] a[data-astro-cid-s7o5jv66]{padding:12px 0;font-size:13px;line-height:1.5;display:block}.services-menu__links[data-astro-cid-s7o5jv66] a[data-astro-cid-s7o5jv66]:first-child{border-bottom:1px solid var(--line);margin-bottom:5px}.site-header[data-over-hero=true] .services-menu__links[data-astro-cid-s7o5jv66] a[data-astro-cid-s7o5jv66]:hover{color:var(--blue)}@media (width<=800px){.services-menu[data-astro-cid-s7o5jv66]>summary[data-astro-cid-s7o5jv66]{padding:15px 0;font-size:16px}.services-menu[data-astro-cid-s7o5jv66]{border-bottom:1px solid var(--line)}.services-menu__links[data-astro-cid-s7o5jv66]{width:auto;color:inherit;box-shadow:none;background:0 0;border:0;padding:0 0 12px 16px;position:static}.services-menu[data-astro-cid-s7o5jv66] .services-menu__links[data-astro-cid-s7o5jv66] a[data-astro-cid-s7o5jv66]{border:0;padding:12px 0;font-size:14px}.site-header[data-over-hero=true] .services-menu[data-astro-cid-s7o5jv66]{border-color:#ffffff29}.site-header[data-over-hero=true] .services-menu__links[data-astro-cid-s7o5jv66] a[data-astro-cid-s7o5jv66]:hover{color:#b8ccff}}
