:root{--ink:#171a20;--navy:#22262e;--steel:#5c5e62;--mist:#d4d7db;--paper:#f4f4f4;--white:#fff;--accent:#0d9b8a;--accent-deep:#087a6c;--accent-soft:#0d9b8a1a;--line:#171a201f;--line-soft:#171a2012;--hero-overlay:linear-gradient(105deg, #0a0c10e0 0%, #0a0c108c 42%, #0a0c1038 100%);--shadow-soft:0 20px 50px #171a2014;--radius:8px;--font:"Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--ease:cubic-bezier(.22, 1, .36, 1);--header-h:4.25rem;color:var(--ink);background:var(--paper);font-family:var(--font);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--paper);min-width:320px;min-height:100vh;color:var(--ink);line-height:1.5}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;background:0 0;border:none}ul{list-style:none}.container{width:min(1120px,100% - 3rem);margin-inline:auto}.container-wide{width:min(1280px,100% - 3rem);margin-inline:auto}.eyebrow{letter-spacing:.04em;color:var(--accent-deep);font-size:.8rem;font-weight:500;display:inline-block}.section-title{letter-spacing:-.01em;color:var(--ink);font-size:clamp(1.75rem,3.2vw,2.5rem);font-weight:500;line-height:1.18}.section-lead{max-width:34rem;color:var(--steel);margin-top:.9rem;font-size:1rem;font-weight:400;line-height:1.55}.btn{border-radius:var(--radius);letter-spacing:.01em;min-height:2.75rem;transition:transform .35s var(--ease), background .25s ease, color .25s ease, border-color .25s ease, box-shadow .35s var(--ease);justify-content:center;align-items:center;gap:.5rem;padding:.7rem 1.25rem;font-size:.875rem;font-weight:500;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--accent);color:var(--white)}.btn-primary:hover{background:var(--accent-deep)}.btn-ghost{color:var(--white);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid #ffffff80}.btn-ghost:hover{background:#ffffff1a;border-color:#fffc}.btn-outline{border:1px solid var(--ink);color:var(--ink)}.btn-outline:hover{background:var(--ink);color:var(--white)}.reveal{opacity:0;transition:opacity .75s var(--ease), transform .75s var(--ease);transform:translateY(24px)}.reveal.is-visible{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:80ms}.reveal-delay-2{transition-delay:.16s}.reveal-delay-3{transition-delay:.24s}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.hero__media img,.hero__content,.btn{opacity:1!important;transition:none!important;animation:none!important;transform:none!important}}.logo{align-items:center;line-height:1;display:inline-flex}.logo__word{flex-direction:column;gap:.18rem;display:flex}.logo__mark{letter-spacing:.12em;color:var(--white);font-size:1.15rem;font-weight:500;transition:color .3s}.logo__sub{letter-spacing:.28em;text-transform:uppercase;color:#ffffffb3;font-size:.62rem;font-weight:400;transition:color .3s}.site-header.is-scrolled .logo__mark,.site-header.is-open .logo__mark{color:var(--ink)}.site-header.is-scrolled .logo__sub,.site-header.is-open .logo__sub{color:var(--steel)}.site-footer .logo__mark{color:var(--white)}.site-footer .logo__sub{color:#ffffff8c}.site-header{z-index:100;height:var(--header-h);transition:background .35s,box-shadow .35s,-webkit-backdrop-filter .35s,backdrop-filter .35s;position:fixed;inset:0 0 auto}.site-header.is-scrolled{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--line-soft);background:#f4f4f4eb}.site-header__inner{justify-content:space-between;align-items:center;height:100%;display:flex}.nav{align-items:center;gap:1.5rem;display:flex}.nav__links{align-items:center;gap:1.35rem;display:flex}.nav__links a{color:#ffffffe6;font-size:.875rem;font-weight:500;transition:color .25s;position:relative}.site-header.is-scrolled .nav__links a{color:var(--navy)}.nav__links a:after{content:"";transform-origin:0;width:100%;height:1px;transition:transform .3s var(--ease);background:currentColor;position:absolute;bottom:-.3rem;left:0;transform:scaleX(0)}.nav__links a:hover:after{transform:scaleX(1)}.nav__cta{min-height:2.35rem;padding:.45rem 1rem;font-size:.8125rem}.site-header:not(.is-scrolled) .nav__cta.btn-outline{color:var(--white);border-color:#ffffff8c}.site-header:not(.is-scrolled) .nav__cta.btn-outline:hover{background:var(--white);color:var(--ink);border-color:var(--white)}.nav-toggle{border-radius:var(--radius);border:1px solid #ffffff59;place-items:center;width:2.4rem;height:2.4rem;display:none}.site-header.is-scrolled .nav-toggle{border-color:var(--line)}.nav-toggle span,.nav-toggle span:before,.nav-toggle span:after{background:var(--white);width:1.05rem;height:1.5px;transition:background .25s;display:block}.site-header.is-scrolled .nav-toggle span,.site-header.is-scrolled .nav-toggle span:before,.site-header.is-scrolled .nav-toggle span:after,.site-header.is-open .nav-toggle span,.site-header.is-open .nav-toggle span:before,.site-header.is-open .nav-toggle span:after{background:var(--ink)}.nav-toggle span{position:relative}.nav-toggle span:before,.nav-toggle span:after{content:"";position:absolute;left:0}.nav-toggle span:before{top:-5px}.nav-toggle span:after{top:5px}.hero{min-height:100svh;color:var(--white);align-items:end;display:grid;position:relative;overflow:hidden}.hero__media{z-index:0;position:absolute;inset:0}.hero__media img{object-fit:cover;object-position:72% center;width:100%;height:100%;animation:hero-zoom 18s var(--ease) forwards;transform:scale(1.05)}.hero__media:after{content:"";background:var(--hero-overlay);position:absolute;inset:0}@keyframes hero-zoom{0%{transform:scale(1.05)}to{transform:scale(1)}}.hero__content{z-index:1;padding:calc(var(--header-h) + 4rem) 0 5rem;animation:hero-rise 1s var(--ease) .12s both;position:relative}@keyframes hero-rise{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}.hero__brand{margin-bottom:1.5rem}.hero__brand-text{letter-spacing:.06em;font-size:clamp(2.6rem,6.5vw,4.5rem);font-weight:500;line-height:1}.hero__brand-text span{letter-spacing:.32em;text-transform:uppercase;color:#ffffffbf;margin-top:.4rem;font-size:.26em;font-weight:400;display:block}.hero__headline{letter-spacing:-.01em;max-width:18ch;font-size:clamp(1.55rem,3vw,2.35rem);font-weight:500;line-height:1.2}.hero__support{color:#ffffffd1;max-width:34rem;margin-top:1rem;font-size:1rem;font-weight:400;line-height:1.55}.hero__actions{flex-wrap:wrap;gap:.75rem;margin-top:1.75rem;display:flex}.hero__scroll{z-index:2;letter-spacing:.12em;text-transform:uppercase;color:#fff9;flex-direction:column;align-items:center;gap:.35rem;font-size:.7rem;font-weight:500;animation:2.4s ease-in-out infinite scroll-pulse;display:flex;position:absolute;bottom:1.25rem;left:50%;transform:translate(-50%)}.hero__scroll i{background:linear-gradient(#ffffffbf,#0000);width:1px;height:1.75rem}@keyframes scroll-pulse{0%,to{opacity:.45;transform:translate(-50%)}50%{opacity:1;transform:translate(-50%,5px)}}.about{padding:6rem 0 5rem}.about__grid{grid-template-columns:1.05fr .95fr;align-items:center;gap:3.25rem;display:grid}.about__copy .section-title{margin-top:.65rem}.about__text{color:var(--steel);margin-top:1.15rem;font-size:1rem}.about__text+.about__text{margin-top:.85rem}.about__meta{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem;padding-top:1.5rem;display:grid}.about__meta dt{color:var(--ink);font-size:1.25rem;font-weight:500}.about__meta dd{color:var(--steel);margin-top:.2rem;font-size:.85rem}.about__visual{border-radius:var(--radius);min-height:400px;box-shadow:var(--shadow-soft);position:relative;overflow:hidden}.about__visual img{object-fit:cover;width:100%;height:100%;min-height:400px}.about__visual-caption{color:#ffffffeb;background:linear-gradient(#0000,#0a0c10d1);padding:1.15rem 1.25rem;font-size:.9rem;position:absolute;bottom:0;left:0;right:0}.services{background:var(--white);padding:5rem 0 5.5rem}.services__header{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2.75rem;display:flex}.services__spotlight{grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2.5rem;display:grid}.spotlight{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);transition:border-color .3s ease, transform .35s var(--ease);padding:1.5rem 1.35rem}.spotlight:hover{border-color:#0d9b8a66;transform:translateY(-3px)}.spotlight__label{color:var(--accent-deep);margin-bottom:.55rem;font-size:.75rem;font-weight:500}.spotlight h3{margin-bottom:.5rem;font-size:1.15rem;font-weight:500}.spotlight p{color:var(--steel);font-size:.95rem;line-height:1.5}.services__list{border-top:1px solid var(--line);grid-template-columns:repeat(2,1fr);gap:0;display:grid}.service-item{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr;gap:1.1rem;padding:1.6rem 1.35rem 1.6rem 0;transition:background .3s;display:grid}.service-item:nth-child(2n){border-left:1px solid var(--line);padding-left:1.35rem}.service-item:hover{background:var(--accent-soft)}.service-item__index{color:var(--accent);padding-top:.15rem;font-size:.8rem;font-weight:500}.service-item h3{font-size:1.1rem;font-weight:500}.service-item p{color:var(--steel);max-width:34rem;margin-top:.45rem;font-size:.95rem}.process{background:linear-gradient(180deg, #171a2008, transparent 30%), var(--paper);padding:5.5rem 0}.process__header{max-width:38rem;margin-bottom:2.75rem}.process__header .section-title{margin-top:.65rem}.process__steps{grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-bottom:2.5rem;display:grid}.step{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:1.75rem 1.5rem;position:relative}.step__num{color:var(--accent-deep);margin-bottom:1rem;font-size:.8rem;font-weight:500;display:inline-block}.step h3{margin-bottom:.55rem;font-size:1.35rem;font-weight:500}.step p{color:var(--steel);font-size:.95rem;line-height:1.55}.process__signals{grid-template-columns:repeat(4,1fr);gap:.85rem;display:grid}.signal{border-top:2px solid var(--accent);background:var(--white);color:var(--ink);padding:1.1rem 1rem;font-size:.92rem;font-weight:500}.nav__links a.is-active{color:var(--accent)}.site-header.is-scrolled .nav__links a.is-active{color:var(--accent-deep)}.careers-page{padding-top:var(--header-h);background:var(--paper);min-height:70vh}.careers-page__hero{background:linear-gradient(180deg, #171a200a, transparent 70%), var(--white);border-bottom:1px solid var(--line-soft);padding:3.5rem 0 2rem}.careers-page__hero .section-title{margin-top:.65rem}.careers-page__back{color:var(--accent-deep);margin-top:1.35rem;font-size:.9rem;font-weight:500;transition:opacity .2s;display:inline-flex}.careers-page__back:hover{opacity:.75}.careers-page .careers{background:0 0;padding-top:2.5rem}.careers{background:var(--white);padding:5.5rem 0}.careers__header{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2rem;display:flex}.careers__toolbar{margin-bottom:1.5rem}.careers__form{flex-wrap:wrap;align-items:end;gap:1rem 1.25rem;display:flex}.careers__search{flex-direction:column;flex:1;gap:.4rem;min-width:min(100%,18rem);display:flex}.careers__search span{color:var(--steel);font-size:.8rem;font-weight:500}.careers__search input{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);width:100%;min-height:2.75rem;color:var(--ink);font:inherit;outline:none;padding:.65rem .9rem;transition:border-color .2s}.careers__search input:focus{border-color:var(--accent)}.careers__actions{gap:.65rem;display:flex}.careers__actions .btn{min-width:6.5rem}.careers__table-wrap{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);overflow:hidden}.careers__table{border-collapse:collapse;width:100%}.careers__table thead th{text-align:left;letter-spacing:.06em;text-transform:uppercase;color:var(--white);background:var(--ink);padding:.9rem 1.15rem;font-size:.8rem;font-weight:500}.careers__table thead th:last-child{width:32%}.careers__table tbody td{border-top:1px solid var(--line);vertical-align:top;padding:0}.careers__empty{color:var(--steel);padding:1.5rem 1.15rem!important}.careers__row{text-align:left;width:100%;color:var(--ink);justify-content:space-between;align-items:center;gap:1rem;padding:1.05rem 1.15rem;transition:background .2s;display:flex}.careers__row:hover,tr.is-open .careers__row{background:var(--accent-soft)}.careers__role{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem 1.5rem;width:100%;display:grid}.careers__role strong{font-size:1rem;font-weight:500}.careers__role strong span{color:var(--steel);margin-left:.35rem;font-weight:400}.careers__role em{color:var(--accent-deep);white-space:nowrap;font-style:normal;font-weight:500}.careers__toggle{border:1px solid var(--line);width:1.5rem;height:1.5rem;color:var(--steel);border-radius:50%;flex-shrink:0;place-items:center;font-size:1rem;line-height:1;display:grid}.careers__detail{gap:1.25rem;padding:0 1.15rem 1.35rem;display:grid}.careers__detail h3{letter-spacing:.04em;text-transform:uppercase;color:var(--ink);margin-bottom:.55rem;font-size:.85rem;font-weight:500}.careers__detail ul{gap:.4rem;display:grid}.careers__detail li{color:var(--steel);padding-left:.95rem;font-size:.95rem;line-height:1.5;position:relative}.careers__detail li:before{content:"";background:var(--accent);border-radius:50%;width:.35rem;height:.35rem;position:absolute;top:.55em;left:0}.careers__detail .btn{width:fit-content}.careers__note{color:var(--steel);margin-top:1.25rem;font-size:.9rem}.careers__note a{color:var(--accent-deep);border-bottom:1px solid #0000;font-weight:500}.careers__note a:hover{border-bottom-color:var(--accent-deep)}.engineering{color:var(--white);padding:5.5rem 0;position:relative;overflow:hidden}.engineering__bg{z-index:0;position:absolute;inset:0}.engineering__bg img{object-fit:cover;filter:saturate(.85)brightness(.5);width:100%;height:100%}.engineering__bg:after{content:"";background:linear-gradient(90deg,#0a0c10e6 0%,#0a0c10ad 55%,#0a0c1066 100%);position:absolute;inset:0}.engineering__inner{z-index:1;position:relative}.engineering .eyebrow{color:var(--accent)}.engineering .section-title{color:var(--white);max-width:16ch;margin-top:.65rem}.engineering .section-lead{color:#ffffffbf}.engineering__grid{grid-template-columns:repeat(4,1fr);gap:1.15rem;margin-top:2.75rem;display:grid}.eng-card{transition:transform .4s var(--ease);border-top:1px solid #0d9b8ab3;padding:1.35rem 0 0}.eng-card:hover{transform:translateY(-5px)}.eng-card h3{margin-bottom:.55rem;font-size:1.05rem;font-weight:500}.eng-card p{color:#ffffffb3;font-size:.9rem;line-height:1.5}.presence{padding:5.5rem 0}.presence__header{max-width:40rem;margin-bottom:2.75rem}.presence__header .section-title{margin-top:.65rem}.presence__map{grid-template-columns:repeat(2,1fr);gap:1.15rem;display:grid}.region{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);transition:border-color .3s ease, box-shadow .35s var(--ease), transform .35s var(--ease);padding:1.6rem 1.4rem 1.45rem;position:relative;overflow:hidden}.region:before{content:"";background:var(--accent);transform-origin:top;width:2px;transition:transform .4s var(--ease);position:absolute;top:0;bottom:0;left:0;transform:scaleY(0)}.region:hover{box-shadow:var(--shadow-soft);border-color:#0d9b8a59;transform:translateY(-3px)}.region:hover:before{transform:scaleY(1)}.region__label{letter-spacing:.06em;text-transform:uppercase;color:var(--accent-deep);font-size:.75rem;font-weight:500}.region h3{margin:.45rem 0 .65rem;font-size:1.2rem;font-weight:500}.region address{color:var(--steel);font-size:.95rem;font-style:normal;line-height:1.5}.cta{padding:0 0 5.5rem}.cta__panel{color:var(--white);border-radius:var(--radius);background:linear-gradient(135deg,#171a20 0%,#22262e 55%,#0d5f56 140%);padding:clamp(2.25rem,4.5vw,3.5rem);position:relative;overflow:hidden}.cta__panel:before{content:"";pointer-events:none;background:radial-gradient(circle,#0d9b8a4d,#0000 60%);height:120%;position:absolute;inset:auto -10% -40% 40%}.cta__panel>*{z-index:1;position:relative}.cta__panel .eyebrow{color:var(--accent)}.cta__panel h2{letter-spacing:-.01em;max-width:18ch;margin:.6rem 0 .9rem;font-size:clamp(1.75rem,3.2vw,2.5rem);font-weight:500}.cta__panel p{color:#ffffffbf;max-width:34rem;margin-bottom:1.5rem}.cta__actions{flex-wrap:wrap;align-items:center;gap:1rem 1.75rem;display:flex}.cta__contact{flex-direction:column;gap:.15rem;font-size:.95rem;display:flex}.cta__contact a{color:var(--white);border-bottom:1px solid #0000;width:fit-content;font-weight:500;transition:border-color .25s}.cta__contact a:hover{border-bottom-color:var(--accent)}.cta__contact span{color:#fff9;font-size:.85rem}.site-footer{background:var(--ink);color:#ffffffb3;padding:3.25rem 0 1.75rem}.footer__top{border-bottom:1px solid #ffffff1a;grid-template-columns:1.3fr 1fr 1fr;gap:2.25rem;padding-bottom:2.25rem;display:grid}.footer__brand p{max-width:28rem;margin-top:1rem;font-size:.95rem;line-height:1.55}.footer__col h4{letter-spacing:.06em;text-transform:uppercase;color:var(--white);margin-bottom:.9rem;font-size:.8rem;font-weight:500}.footer__col a{margin-bottom:.5rem;font-size:.95rem;transition:color .25s;display:block}.footer__col a:hover{color:var(--accent)}.footer__bottom{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-top:1.35rem;font-size:.85rem;display:flex}.footer__tagline{color:var(--accent);letter-spacing:.03em;font-weight:500}@media (width<=960px){.about__grid,.engineering__grid,.presence__map,.footer__top,.services__spotlight,.process__steps,.process__signals,.careers__header,.careers__role,.services__list{grid-template-columns:1fr}.service-item:nth-child(2n){border-left:none;padding-left:0}.services__header{flex-direction:column;align-items:start}.about__meta{grid-template-columns:1fr}.nav-toggle{display:grid}.nav{inset:var(--header-h) 0 auto;border-bottom:1px solid var(--line);box-shadow:var(--shadow-soft);background:#f4f4f4fa;flex-direction:column;align-items:stretch;gap:1.15rem;padding:1.15rem 1.5rem 1.4rem;display:none;position:fixed}.nav.is-open{display:flex}.nav__links{flex-direction:column;align-items:flex-start;gap:.9rem}.nav__links a,.site-header:not(.is-scrolled) .nav__links a{color:var(--ink)}.site-header:not(.is-scrolled) .nav__cta.btn-outline{border-color:var(--ink);color:var(--ink);width:100%}.site-header.is-open{background:#f4f4f4fa}.site-header.is-open .nav-toggle{border-color:var(--line)}}@media (width<=640px){.container,.container-wide{width:min(1120px,100% - 2rem)}.hero__content{padding-bottom:4.25rem}.about,.services,.engineering,.presence,.process{padding-top:4.25rem;padding-bottom:4.25rem}.hero__actions{flex-direction:column;align-items:stretch}.btn{width:100%}}
