:root{--navy:#071a2b;--navy2:#0b2638;--teal:#26c6b4;--coral:#ff765f;--paper:#f3f5f1;--white:#fff;--ink:#10232f;--muted:#64747d;--line:#cfd8d6;--display:'Manrope',sans-serif;--sans:'DM Sans',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;width:100%;object-fit:cover}button,input,select,textarea{font:inherit}.page-progress{position:fixed;z-index:100;inset:0 0 auto;height:3px}.page-progress span{display:block;height:100%;background:var(--teal);transform:scaleX(0);transform-origin:left}.site-header{height:86px;position:fixed;z-index:50;inset:0 0 auto;display:flex;align-items:center;padding:0 clamp(22px,4.8vw,76px);background:rgba(7,26,43,.92);color:#fff;border-bottom:1px solid rgba(255,255,255,.12);backdrop-filter:blur(18px);transition:.3s}.site-header.scrolled{height:70px}.brand{display:flex;align-items:center;gap:13px}.brand img{width:44px;height:44px;object-fit:cover}.brand span{display:grid;gap:3px}.brand b{font:800 14px var(--display);letter-spacing:.1em}.brand small{font-size:7px;letter-spacing:.16em;text-transform:uppercase;opacity:.62}.site-header nav{display:flex;gap:31px;margin-left:auto}.site-header nav a{font-size:12px;font-weight:600;opacity:.78;transition:.25s}.site-header nav a:hover{opacity:1;color:var(--teal)}.header-cta{margin-left:35px;padding:14px 18px;background:var(--teal);color:var(--navy);font-size:11px;font-weight:800}.header-cta span{margin-left:22px}.menu-button{display:none;background:none;color:#fff;border:0}.hero{position:relative;min-height:100svh;padding:145px clamp(22px,4.8vw,76px) 54px;background:var(--navy);color:#fff;display:grid;grid-template-columns:1.07fr .93fr;gap:5vw;align-items:center;overflow:hidden}.hero:before{content:"";position:absolute;width:680px;height:680px;border:1px solid rgba(38,198,180,.17);border-radius:50%;left:-380px;bottom:-370px;box-shadow:0 0 0 90px rgba(38,198,180,.025),0 0 0 180px rgba(38,198,180,.02)}.hero-copy{position:relative;z-index:2}.status-line{font-size:9px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#a9babf;display:flex;align-items:center;gap:10px}.status-line span{width:8px;height:8px;background:var(--teal);border-radius:50%;box-shadow:0 0 0 5px rgba(38,198,180,.12)}.hero h1{max-width:900px;margin:30px 0 28px;font:700 clamp(64px,7.2vw,116px)/.88 var(--display);letter-spacing:-.075em}.hero h1 em,.section-head em,.company-lead em,.value em,.sector-copy em,.promise em,.faq em,.contact em{font-style:normal;color:var(--teal)}.hero-copy>p{max-width:680px;margin:0;color:#afbec3;font-size:clamp(16px,1.3vw,20px);line-height:1.65}.hero-actions{display:flex;gap:10px;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;border:1px solid transparent;padding:16px 19px;font-size:11px;font-weight:800;cursor:pointer}.button.light{background:#fff;color:var(--navy)}.button.line{border-color:rgba(255,255,255,.3);color:#fff}.hero-proof{display:grid;grid-template-columns:repeat(3,1fr);margin-top:54px;border-top:1px solid rgba(255,255,255,.16);padding-top:23px}.hero-proof div{display:grid;gap:4px;padding-right:20px}.hero-proof strong{font:700 23px var(--display);color:var(--teal)}.hero-proof span{max-width:120px;color:#8fa3aa;font-size:9px;line-height:1.4;text-transform:uppercase;letter-spacing:.08em}.hero-media{height:min(69vh,730px);position:relative;overflow:hidden;background:#0e2b3e}.hero-media:before{content:"";position:absolute;z-index:2;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(7,26,43,.86))}.hero-media img{height:100%;filter:saturate(1.05) contrast(1.03)}.hero-media-tag{position:absolute;z-index:3;left:27px;bottom:28px;display:grid;gap:5px}.hero-media-tag span,.hero-media-tag small{font-size:8px;text-transform:uppercase;letter-spacing:.15em;color:#a9babf}.hero-media-tag strong{font:600 21px var(--display)}.hero-mark{position:absolute;z-index:3;right:20px;top:18px;padding:14px;color:var(--navy);background:var(--teal);font:800 12px/1.05 var(--display);text-align:center}.hero-mark i{font-style:normal;font-size:26px}.hero-foot{position:absolute;bottom:22px;left:clamp(22px,4.8vw,76px);right:clamp(22px,4.8vw,76px);display:flex;justify-content:space-between;color:#78909a;font-size:9px;text-transform:uppercase;letter-spacing:.12em}.hero-foot a{color:#fff}.client-strip{min-height:112px;display:grid;grid-template-columns:190px 1fr;align-items:center;padding:25px clamp(22px,4.8vw,76px);background:#fff;border-bottom:1px solid var(--line)}.client-strip p{font-size:9px;text-transform:uppercase;letter-spacing:.15em;color:var(--muted)}.client-strip div{display:flex;justify-content:space-between;align-items:center;gap:28px}.client-strip span{font:800 clamp(12px,1.3vw,18px) var(--display);color:#839198}.section{padding:clamp(90px,11vw,170px) clamp(22px,4.8vw,76px)}.section-index{padding-bottom:17px;border-bottom:1px solid #93a4a5;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.17em}.section-index.light{color:#99acb5;border-color:#354b59}.company-lead{display:grid;grid-template-columns:.34fr 1fr;gap:5vw;margin:75px 0 90px}.company-lead p,.section-head>div>p,.value-title>span,.sector-copy>span,.contact-copy>span{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:var(--muted)}.company-lead h2,.section-head h2,.value h2,.sector-copy h2,.faq h2,.contact h2{margin:0;font:650 clamp(48px,6vw,92px)/.98 var(--display);letter-spacing:-.06em}.company-lead em{color:#169a8e}.company-grid{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:start}.company-image img{height:650px}.company-image span{display:block;padding:13px 0;border-bottom:1px solid var(--line);font-size:9px;text-transform:uppercase;letter-spacing:.13em}.company-copy>p{font-size:17px;line-height:1.7;color:#4d616a}.company-copy>p:first-child{font-size:21px;color:var(--ink)}.company-copy ul{list-style:none;padding:20px 0 0;margin:35px 0 0;border-top:1px solid var(--line)}.company-copy li{display:grid;grid-template-columns:170px 1fr;gap:25px;padding:22px 0;border-bottom:1px solid var(--line)}.company-copy b{font:700 13px var(--display)}.company-copy li span{color:var(--muted);font-size:13px;line-height:1.5}.capabilities{background:var(--navy);color:#fff}.section-head{display:grid;grid-template-columns:1.5fr .5fr;gap:7vw;align-items:end;margin:70px 0 80px}.section-head>p{color:var(--muted);line-height:1.7;font-size:14px}.section-head.light>p{color:#91a4ad}.capability-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #304754}.capability-grid article{min-height:570px;padding:30px;border-right:1px solid #304754;display:flex;flex-direction:column;transition:.35s}.capability-grid article:last-child{border:0}.capability-grid article:hover{background:var(--teal);color:var(--navy);transform:translateY(-8px)}.capability-grid article>b{font:700 11px var(--display);color:var(--teal)}.capability-grid article:hover>b{color:var(--navy)}.capability-grid article>span{margin-top:100px;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#8ea2ac}.capability-grid h3{margin:12px 0 18px;font:650 27px/1.1 var(--display)}.capability-grid p{color:#9cb0b8;font-size:13px;line-height:1.65}.capability-grid article:hover p,.capability-grid article:hover>span{color:#174c4c}.capability-grid ul{list-style:none;padding:0;margin:auto 0 0}.capability-grid li{padding:12px 0;border-top:1px solid #304754;font-size:11px}.capability-grid article:hover li{border-color:rgba(7,26,43,.25)}.value{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.value-title{position:sticky;top:120px;height:max-content}.value-title h2{margin-top:24px}.value-title em{color:#169a8e}.value-list article{display:grid;grid-template-columns:52px 1fr;gap:20px;padding:35px 0;border-top:1px solid var(--line)}.value-list article:last-child{border-bottom:1px solid var(--line)}.value-list>b,.value-list article>b{font-size:10px;color:#169a8e}.value-list h3{margin:0 0 11px;font:650 22px var(--display)}.value-list p{margin:0;color:var(--muted);font-size:14px;line-height:1.65}.work{background:#e8ece8}.filters{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:36px}.filters button{padding:11px 15px;border:1px solid #b9c5c2;background:transparent;font-size:10px;font-weight:700;color:#53666c;cursor:pointer}.filters button.active,.filters button:hover{background:var(--navy);border-color:var(--navy);color:#fff}.carousel-toolbar{display:flex;justify-content:flex-end;align-items:center;gap:25px;margin-bottom:15px}.carousel-toolbar>span{font:700 10px var(--display);letter-spacing:.12em}.carousel-toolbar div{display:flex}.carousel-toolbar button{width:47px;height:47px;background:transparent;border:1px solid #96a6a4;cursor:pointer}.carousel-toolbar button:hover:not(:disabled){background:var(--teal);border-color:var(--teal)}.carousel-toolbar button:disabled{opacity:.3}.project-viewport{overflow:hidden;margin-right:calc(clamp(22px,4.8vw,76px)*-1)}.project-grid{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;cursor:grab;padding-right:clamp(22px,4.8vw,76px)}.project-grid::-webkit-scrollbar{display:none}.project-grid.dragging{cursor:grabbing;scroll-snap-type:none}.project{flex:0 0 min(69vw,930px);scroll-snap-align:start;cursor:pointer}.project figure{height:clamp(440px,55vw,690px);margin:0;overflow:hidden;background:var(--navy)}.project img{height:100%;transition:.65s}.project:hover img{transform:scale(1.035)}.project figcaption{display:flex;justify-content:space-between;padding:17px 2px}.project figcaption div{display:flex;gap:15px;align-items:baseline}.project figcaption small{color:#169a8e;font-weight:700}.project figcaption strong{font:650 21px var(--display)}.project figcaption>span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.carousel-progress{height:2px;background:#c1ccca;margin-top:24px}.carousel-progress span{display:block;height:100%;width:4.5%;background:#169a8e;transition:.3s}.sectors{display:grid;grid-template-columns:1fr 1fr;background:var(--navy2);color:#fff}.sector-copy{padding:clamp(80px,10vw,150px) clamp(22px,6vw,95px)}.sector-copy h2{margin:24px 0 30px}.sector-copy p{max-width:590px;color:#94a8b1;line-height:1.7}.sector-copy a{display:inline-block;margin-top:28px;padding-bottom:8px;border-bottom:1px solid var(--teal);font-size:12px}.sector-grid{display:grid;grid-template-columns:1fr 1fr;border-left:1px solid #344b59}.sector-grid div{min-height:210px;padding:27px;border-right:1px solid #344b59;border-bottom:1px solid #344b59;display:flex;flex-direction:column;justify-content:space-between;transition:.3s}.sector-grid div:hover{background:var(--teal);color:var(--navy)}.sector-grid b{font-size:9px;color:var(--teal)}.sector-grid div:hover b{color:var(--navy)}.sector-grid span{font:600 17px var(--display)}.process-track{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #9cadaa}.process-track article{min-height:390px;padding:28px;border-right:1px solid var(--line);display:flex;flex-direction:column}.process-track article:first-child{border-left:1px solid var(--line)}.process-track b{font-size:10px;color:#169a8e}.process-track h3{margin:75px 0 15px;font:650 28px var(--display)}.process-track p{margin:0;color:var(--muted);line-height:1.6;font-size:13px}.process-track span{margin-top:auto;padding-top:18px;border-top:1px solid var(--line);font-size:9px;text-transform:uppercase;letter-spacing:.11em}.promise{padding:clamp(80px,10vw,150px) clamp(22px,7vw,110px);background:var(--teal);color:var(--navy);display:grid;grid-template-columns:1.5fr .5fr;gap:9vw}.promise>div>span{font-size:9px;text-transform:uppercase;letter-spacing:.16em}.promise blockquote{margin:30px 0 0;font:650 clamp(42px,5.5vw,82px)/1.03 var(--display);letter-spacing:-.055em}.promise aside{align-self:end}.promise aside>b{font:700 12px var(--display)}.promise ul{list-style:none;padding:15px 0 0}.promise li{padding:11px 0;border-bottom:1px solid rgba(7,26,43,.25);font-size:12px}.faq{display:grid;grid-template-columns:.72fr 1.28fr;gap:8vw}.faq-title h2{margin-top:65px}.faq-title em{color:#169a8e}.faq-list{border-top:1px solid #9cadaa}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:28px 0;font:600 17px var(--display)}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:#169a8e;font-size:22px}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list p{max-width:760px;margin:0;padding:0 50px 28px 0;color:var(--muted);font-size:14px;line-height:1.7}.contact{padding:clamp(90px,11vw,170px) clamp(22px,4.8vw,76px);display:grid;grid-template-columns:1fr 1fr;gap:8vw;background:var(--navy);color:#fff}.contact h2{margin:25px 0 30px}.contact-copy>p{max-width:620px;color:#97abb4;line-height:1.7}.contact-details{display:grid;gap:8px;margin-top:60px}.contact-details a{font:600 19px var(--display);color:var(--teal)}.contact-details span{margin-top:14px;color:#8fa3ab;font-size:12px;line-height:1.6}.contact form{align-self:start;display:grid;grid-template-columns:1fr 1fr;gap:23px;padding:34px;background:#fff;color:var(--ink)}.form-head{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;padding-bottom:25px;border-bottom:1px solid var(--line)}.form-head b{font:700 17px var(--display)}.form-head span{font-size:9px;color:var(--muted)}label{display:grid;gap:8px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.11em}.full{grid-column:1/-1}input,select,textarea{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;border-radius:0;padding:12px 0;color:var(--ink);outline:0}input:focus,select:focus,textarea:focus{border-color:#169a8e}.button.submit{background:var(--teal);color:var(--navy);width:100%;margin-top:5px}.form-status{margin:0;color:var(--muted);font-size:11px}footer{min-height:120px;padding:28px clamp(22px,4.8vw,76px);display:flex;align-items:center;gap:40px;background:#04111d;color:#fff;border-top:1px solid #233744}footer>div{display:flex;gap:20px;margin-left:auto}footer>div a,footer>p,footer>a{font-size:9px;color:#81959e}dialog{width:min(92vw,1100px);padding:0;border:0;background:var(--navy);color:#fff}dialog::backdrop{background:rgba(3,13,22,.9)}dialog>button{position:absolute;z-index:2;right:15px;top:15px;width:42px;height:42px;border:0;background:#fff;font-size:25px;cursor:pointer}dialog img{max-height:75vh;object-fit:contain}dialog>div{display:flex;justify-content:space-between;padding:20px}dialog span{color:var(--teal);font-size:10px;text-transform:uppercase}.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s,transform .75s}.reveal.visible{opacity:1;transform:none}
@media(max-width:1050px){.hero{grid-template-columns:1fr .75fr}.hero h1{font-size:clamp(58px,7vw,80px)}.capability-grid{grid-template-columns:1fr 1fr}.capability-grid article{min-height:470px;border-bottom:1px solid #304754}.capability-grid article:nth-child(2){border-right:0}.process-track{grid-template-columns:1fr 1fr}.process-track article{border-bottom:1px solid var(--line)}.sector-grid div{min-height:180px}}
@media(max-width:850px){.site-header nav,.header-cta{display:none}.menu-button{display:block;margin-left:auto}.site-header.open nav{display:flex;position:absolute;top:100%;left:0;right:0;height:calc(100vh - 70px);padding:10vw;flex-direction:column;justify-content:center;align-items:flex-start;background:var(--navy);gap:24px}.site-header.open nav a{font:650 38px var(--display)}.hero{display:block;padding-top:130px;padding-bottom:90px}.hero-copy{max-width:850px}.hero-media{height:650px;margin-top:70px}.hero-foot{display:none}.client-strip{display:block}.client-strip div{margin-top:20px;overflow-x:auto;justify-content:flex-start}.company-lead{grid-template-columns:1fr}.company-grid{grid-template-columns:1fr}.company-image img{height:600px}.section-head{grid-template-columns:1fr}.value{grid-template-columns:1fr}.value-title{position:static}.sectors{grid-template-columns:1fr}.sector-grid{border-left:0;border-top:1px solid #344b59}.promise{grid-template-columns:1fr}.faq{grid-template-columns:1fr}.contact{grid-template-columns:1fr}.contact form{margin-top:20px}}
@media(max-width:560px){.site-header{height:72px;padding-inline:18px}.brand img{width:40px;height:40px}.hero{padding:112px 18px 70px}.hero h1{font-size:clamp(47px,13.2vw,64px);line-height:.92}.hero-actions{display:grid;grid-template-columns:1fr 1fr}.button{gap:12px;padding:14px 13px}.hero-proof{margin-top:42px}.hero-proof strong{font-size:19px}.hero-media{height:480px;margin-top:50px}.hero-media-tag strong{font-size:17px}.client-strip{padding:23px 18px}.section{padding:82px 18px}.company-lead{margin:50px 0}.company-lead h2,.section-head h2,.value h2,.sector-copy h2,.faq h2,.contact h2{font-size:clamp(40px,12vw,58px)}.company-image img{height:450px}.company-copy>p:first-child{font-size:18px}.company-copy li{grid-template-columns:1fr;gap:8px}.section-head{margin:50px 0}.capability-grid{grid-template-columns:1fr}.capability-grid article{min-height:430px;border-right:0}.capability-grid article>span{margin-top:60px}.project-viewport{margin-right:-18px}.project-grid{gap:11px;padding-right:18px}.project{flex-basis:86vw}.project figure{height:112vw}.project figcaption{display:block}.project figcaption>span{display:block;margin:8px 0 0 29px}.carousel-toolbar{justify-content:space-between}.sector-copy{padding:80px 18px}.sector-grid div{min-height:150px}.process-track{grid-template-columns:1fr}.process-track article{min-height:320px;border-left:1px solid var(--line)}.promise{padding:80px 18px}.promise blockquote{font-size:11.5vw}.faq-title h2{margin-top:42px}.contact{padding:85px 18px}.contact form{display:block;padding:25px}.contact form label{margin:22px 0}.form-head{display:block}.form-head span{display:block;margin-top:7px}footer{display:grid;grid-template-columns:1fr auto;padding:30px 18px}footer>div{display:none}footer>p{grid-column:1/-1}.reveal{transform:translateY(16px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none}.project img{transition:none}}
