@font-face{font-family:Manrope;src:url(/fonts/manrope-latin.woff2)format("woff2");font-style:normal;font-weight:200 800;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/dm-sans-latin.woff2)format("woff2");font-style:normal;font-weight:100 1000;font-display:swap}:root{--header-height:72px;--paper:#fff;--ink:#171b20;--muted:#59636e;--brand:#6bcdf2;--accent:var(--brand);--link:#006b92;--line:#dce5eb;--surface:#f2f7fa;--focus:#006b92;--error:#a12828;--display:Manrope, Arial, sans-serif;--body:"DM Sans", Arial, sans-serif;color-scheme:light;font-family:var(--body);color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizelegibility}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header-height)}body{margin:0;font-size:16px;line-height:1.6}button,input,textarea{font:inherit}fieldset{border:0;min-width:0;margin:0;padding:0}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-underline-offset:.25em}img,svg{max-width:100%;display:block}img{height:auto}figure,p,h1,h2,h3{margin:0}h1,h2,h3,.intro-title{word-spacing:.08em}button,summary{touch-action:manipulation}::selection{color:#101820;background:#bfeaff}:focus-visible{outline:3px solid var(--focus);outline-offset:5px}[hidden]{display:none!important}.wrap{width:min(1248px,100% - 112px);margin-inline:auto}.document{max-width:820px;padding-block:80px 100px}.document h1{font-family:var(--display);letter-spacing:-.03em;margin-block:16px 28px;font-size:clamp(34px,5vw,58px);line-height:1.15}.document h2{font-family:var(--display);margin-block:36px 12px;font-size:24px}.document>p,.document li{color:var(--muted)}.document>p+p{margin-top:18px}.document .button{margin-top:32px}.document a:not(.button){color:var(--link)}.document address{margin-top:18px;font-style:normal}.section{padding-block:112px}.eyebrow{letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:600}.eyebrow-dot{align-items:center;gap:10px;display:inline-flex}.eyebrow-dot:before{content:"";background:var(--link);border-radius:50%;width:7px;height:7px}.skip-link{z-index:100;background:var(--ink);color:var(--paper);padding:12px 18px;position:absolute;top:-100px;left:16px}.skip-link:focus{top:12px}.site-header{z-index:20;background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0}.nav-row{--header-gap:32px;min-height:calc(var(--header-height) - 1px);justify-content:space-between;align-items:center;gap:var(--header-gap);display:flex}.brand{flex-shrink:0;align-items:center;gap:10px;text-decoration:none;display:inline-flex}.brand-mark{border-radius:5px;width:36px;height:36px}.brand-name{font-family:var(--display);letter-spacing:-.055em;font-size:27px;font-weight:750}.brand-name span{font-weight:400}.site-nav{align-items:center;gap:34px;display:flex}.site-nav a{padding-block:12px;font-size:13px;font-weight:500;text-decoration:none}.site-nav a:is(:hover,[aria-current]){text-decoration:underline}.site-nav .nav-contact{border:1px solid var(--ink);border-radius:4px;gap:28px;padding:8px 16px;transition:background-color .18s,color .18s;display:inline-flex}.site-nav .nav-contact span{transition:transform .18s}.site-nav .nav-contact:is(:hover,:focus-visible){color:#101820;background:#a2def6;text-decoration:none}.site-nav .nav-contact:is(:hover,:focus-visible) span{transform:translate(3px)}.site-nav{margin-left:auto}.menu-toggle{color:var(--ink);background:0 0;border:0;align-items:center;gap:12px;min-height:44px;padding:10px 0 10px 12px;font-size:13px;display:none}.menu-lines{gap:5px;display:grid}.menu-lines:before,.menu-lines:after{content:"";background:currentColor;width:21px;height:1px;transition:transform .18s;display:block}.menu-toggle[aria-expanded=true] .menu-lines:before{transform:translateY(3px)rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-lines:after{transform:translateY(-3px)rotate(-45deg)}.hero{position:relative;overflow:clip}.hero-layout{grid-template-columns:1.12fr 1fr;align-items:center;gap:20px;min-height:clamp(600px,46vw,720px);display:grid}.hero-intro{padding-block:86px 54px}.hero h1{font-family:var(--display);letter-spacing:-.055em;margin-top:26px;font-size:clamp(58px,6.3vw,91px);font-weight:500;line-height:1.055}.hero h1 em{color:var(--link);font-style:normal}.homepage .hero-layout>div{min-width:0;container-type:inline-size}.homepage .hero h1{letter-spacing:-.035em;white-space:nowrap;font-size:clamp(28px,12cqi,88px)}.hero-copy{color:var(--muted);max-width:440px;margin-top:29px;font-size:17px;line-height:1.75}.hero-copy strong{color:var(--ink);font-weight:500}.actions{flex-wrap:wrap;align-items:center;gap:25px;margin-top:30px;display:flex}.button{color:#101820;background:var(--brand);border:1px solid #0000;border-radius:4px;justify-content:space-between;align-items:center;gap:25px;min-height:52px;padding:14px 22px;font-size:13px;font-weight:600;line-height:1.4;text-decoration:none;transition:background .18s;display:inline-flex}.button:hover{background:#a2def6}.button .arrow{font-size:20px;font-weight:400;line-height:1}.text-link{align-items:center;gap:15px;font-size:13px;font-weight:500;text-decoration-thickness:1px;display:inline-flex}.hero-art{position:absolute;inset:0 0 0 calc(50% + 32px)}.hero-art img{object-fit:cover;object-position:center;width:100%;height:100%}.art-caption{color:var(--muted);letter-spacing:.02em;font-size:10px;line-height:1.5}.hero-art .art-caption{text-align:center;margin-top:-13px}.hero-bottom{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:30px;max-width:440px;margin-top:46px;padding-top:23px;display:flex}.hero-bottom p{color:var(--muted);align-items:center;gap:10px;font-size:12px;display:flex}.hero-bottom p img{width:20px;height:20px}.hero-bottom .location{letter-spacing:.08em;text-transform:uppercase;font-size:11px}.clients{color:#171b20;background:#fff;border-block:1px solid #dce5eb;padding-block:31px}.client-row{justify-content:space-between;align-items:center;gap:32px;display:flex}.client-label{color:#59636e;flex-shrink:0;width:138px;font-size:12px}.client-name{color:#53606b;font-family:var(--display);letter-spacing:-.04em;font-size:23px;font-weight:700;line-height:1.15}.client-name.vauban{letter-spacing:.01em;text-transform:uppercase;font-size:17px;font-weight:600;line-height:1.2}.client-logo{width:auto;height:calc(var(--logo-height) * var(--logo-scale,1));flex-shrink:0;display:block}.client-logo.telelink-city{--logo-height:36px;width:calc(var(--logo-height) * var(--logo-scale,1) * 541 / 166);object-fit:cover;object-position:center}.client-logo.emedswiss{--logo-height:34px}.client-logo.azdio{--logo-height:27px;width:calc(var(--logo-height) * var(--logo-scale,1) * 170 / 49);object-fit:cover;object-position:center}.section-heading{justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:40px;display:flex}.section-heading h2,.intro-title{font-family:var(--display);letter-spacing:-.04em;margin-top:17px;font-size:clamp(35px,4vw,55px);font-weight:500;line-height:1.14}.section-heading>p{max-width:320px;color:var(--muted);font-size:15px}.project-kicker{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;font-size:10px;font-weight:600}.tags{flex-wrap:wrap;gap:7px;margin-block:25px;display:flex}.tags span{color:var(--muted);border:1px solid #cad7df;border-radius:20px;padding:4px 10px;font-size:10px}.project-details{font-size:13px}.project-details summary{cursor:pointer;border-bottom:1px solid;align-items:center;gap:20px;padding-block:7px;font-weight:500;list-style:none;display:inline-flex}.project-details summary::-webkit-details-marker{display:none}.project-details summary:after{content:"+";font-size:18px;line-height:1}.project-details[open] summary:after{content:"−"}.project-details p{color:var(--muted);margin-top:16px}.work-visual{flex-direction:column;min-width:0;margin:0;display:flex}.work-visual img{width:100%}.work-visual figcaption{margin-top:8px;padding-inline:40px}.work-copy{min-width:0}.work-copy h3{font-family:var(--display);letter-spacing:-.035em;margin-top:18px;font-size:32px;font-weight:500;line-height:1.2}.work-copy>p{color:var(--muted);max-width:520px;margin-top:16px;font-size:14px}.work-copy .tags{margin-block:22px 0}.work-copy .project-details{margin-top:22px}.work-tiles{grid-template-columns:1.3fr 1fr;gap:28px;display:grid}.work-tile{background:var(--surface);border-radius:8px;min-width:0}.work-lead{grid-row:span 2;overflow:hidden}.work-lead .work-copy{padding:22px 40px 40px}.work-lead .work-copy h3{margin-top:16px;font-size:34px}.work-tile:not(.work-lead){padding:34px 36px 36px;display:flex}.work-tile:not(.work-lead) .work-copy{flex-direction:column;align-items:flex-start;display:flex}.work-tile:not(.work-lead) .work-copy h3{margin-top:14px;font-size:26px}.work-tile:not(.work-lead) .project-details{margin-top:auto;padding-top:22px}.work-tiles[data-locked]{grid-template-rows:auto 1fr}.work-tiles[data-locked] .work-tile{align-self:start}.work-shot{background:#dcecf6;padding:40px 0 0 40px;position:relative;overflow:hidden}.browser-frame{background:#fff;border-radius:10px 0 0;overflow:hidden;box-shadow:0 16px 40px #102a3b2e}.browser-bar{border-bottom:1px solid #e3eaef;align-items:center;gap:16px;height:34px;padding-inline:14px;display:flex}.browser-dots{gap:6px;display:flex}.browser-dots i{background:#cfdbe3;border-radius:50%;width:9px;height:9px}.browser-url{color:#59636e;white-space:nowrap;text-overflow:ellipsis;background:#f2f7fa;border-radius:12px;flex:0 260px;min-width:0;padding:3px 12px;font-size:11px;overflow:hidden}.browser-view{aspect-ratio:16/10}.browser-view img{object-fit:cover;object-position:top left;height:100%}.browser-float{border-radius:8px;width:38%;position:absolute;bottom:22px;left:18px;box-shadow:0 18px 44px #102a3b47}.browser-float .browser-bar{gap:10px;height:24px;padding-inline:10px}.browser-float .browser-dots i{width:7px;height:7px}.browser-float .browser-url{padding:1px 10px;font-size:9px}@media (width<=960px){.work-tiles{grid-template-columns:1fr 1fr}.work-lead{grid-area:auto/1/auto/-1}}@media (width<=680px){.work-tiles{grid-template-columns:1fr;gap:24px}.work-copy h3,.work-lead .work-copy h3{font-size:26px}.work-lead .work-copy{padding:18px 22px 26px}.work-visual figcaption{padding-inline:22px}.work-tile:not(.work-lead){padding:20px 22px 26px}.work-tile:not(.work-lead) .work-copy h3{font-size:23px}.work-shot{padding:24px 0 0 22px}.browser-bar{gap:10px;height:26px;padding-inline:10px}.browser-url{padding:1px 8px;font-size:9px}.browser-float{width:44%;bottom:12px;left:10px}.browser-float .browser-bar{gap:6px;height:18px;padding-inline:6px}.browser-float .browser-dots{gap:3px}.browser-float .browser-dots i{width:5px;height:5px}.browser-float .browser-url{padding:0 6px;font-size:7px}}.services{background:var(--surface)}.services-layout{gap:46px;display:grid}.services-intro{grid-template-columns:1.2fr 1fr;align-items:end;gap:60px;display:grid}.services-intro>p{color:var(--muted);justify-self:end;max-width:370px;font-size:15px}.service-list{grid-template-columns:1fr 1fr;column-gap:80px;display:grid}.service{border-bottom:1px solid #cbd9e2;grid-template-columns:42px 1fr;gap:20px;padding-block:28px;display:grid}.service-icon{width:28px;height:28px;color:var(--link);margin-top:3px}.service h3{font-family:var(--display);letter-spacing:-.015em;font-size:21px;font-weight:500}.service p{color:var(--muted);max-width:430px;margin-top:8px;font-size:14px}.homepage .service-delivery{min-width:0;margin-top:36px}.homepage .cap-copy{color:var(--muted);font-size:14px;line-height:1.7}.homepage .cap-tool-label{color:var(--muted);letter-spacing:.055em;text-transform:uppercase;margin:0 0 10px;font-size:11px;font-weight:600;line-height:1.5}.homepage h3.cap-tool-label{font-family:var(--body);letter-spacing:normal;text-transform:none;font-size:13px}.homepage .cap-tags{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.homepage .cap-tags li{color:#435563;background:#fff;border:1px solid #c6d6e0;border-radius:4px;padding:4px 9px;font-size:12px;line-height:1.45}.homepage .cap-stage{border-top:1px solid #c4d4df;grid-template-columns:48px minmax(0,1fr) minmax(0,1.15fr);gap:32px;padding-block:32px;display:grid}.homepage .cap-stage-number{color:var(--link);font-family:var(--display);font-size:32px;line-height:1.2}.homepage .cap-stage-copy h3{font-family:var(--display);letter-spacing:-.02em;margin-bottom:18px;font-size:24px;font-weight:500;line-height:1.25}.homepage .cap-stage-copy h4{margin:0 0 7px;font-size:15px;font-weight:600}.homepage .cap-stage-copy>div+div,.homepage .cap-stage-tools>.cap-tool-group+.cap-tool-group{margin-top:22px}.homepage .cap-delivery-process{--cap-rail-width:48px;--cap-column-gap:32px}.homepage .cap-ai-intro{grid-template-columns:var(--cap-rail-width) minmax(0, 1fr) minmax(0, 1.15fr);gap:var(--cap-column-gap);border-top:1px solid #c4d4df;padding-block:32px;display:grid}.homepage .cap-ai-copy{grid-column:2;min-width:0}.homepage .cap-ai-copy h3{font-family:var(--display);letter-spacing:-.02em;margin:0;font-size:24px;font-weight:500;line-height:1.25}.homepage .cap-ai-tools{flex-wrap:wrap;grid-column:3;align-content:start;align-self:center;gap:20px 30px;margin:0;padding:0;list-style:none;display:flex}.homepage .cap-ai-tools li{color:var(--ink);font-family:var(--display);align-items:center;gap:10px;font-size:17px;font-weight:600;line-height:1.4;display:flex}.homepage .cap-ai-tools img,.homepage .cap-ai-tools svg{flex:0 0 28px;width:28px;height:28px}@media (width<=800px){.homepage .cap-stage{grid-template-columns:32px minmax(0,1fr);gap:18px 20px;padding-block:28px}.homepage .cap-stage-tools{grid-column:2}.homepage .cap-stage-copy h3{font-size:23px}.homepage .cap-delivery-process{--cap-rail-width:32px;--cap-column-gap:20px}.homepage .cap-ai-intro{grid-template-columns:var(--cap-rail-width) minmax(0, 1fr);gap:18px var(--cap-column-gap);padding-block:28px}.homepage .cap-ai-copy h3{font-size:23px}.homepage .cap-ai-tools{grid-column:2}}@media (width<=580px){.homepage .service-delivery{margin-top:28px}.homepage .cap-stage{grid-template-columns:24px minmax(0,1fr);column-gap:14px}.homepage .cap-stage-number{font-size:28px}.homepage .cap-stage-copy h3{font-size:22px}.homepage .cap-delivery-process{--cap-rail-width:24px;--cap-column-gap:14px}.homepage .cap-ai-copy h3{font-size:22px}.homepage .cap-ai-tools{gap:16px 24px}.homepage .cap-ai-tools li{font-size:16px}}.ai-section{color:#fff;background:#102a3b;position:relative;overflow:hidden}.ai-layout{grid-template-columns:1fr 1fr;align-items:center;gap:100px;display:grid}.ai-section .eyebrow{color:#c6dce9}.ai-section h2{font-family:var(--display);letter-spacing:-.04em;margin-top:22px;font-size:clamp(35px,4vw,55px);font-weight:500;line-height:1.15}.ai-section h2 em{color:var(--brand);font-style:normal}.ai-copy>p{color:#cad8e3;max-width:460px;font-size:16px}.ai-note{border-top:1px solid #456274;align-items:flex-start;gap:14px;margin-top:25px;padding-top:23px;display:flex}.ai-note svg{width:20px;height:20px;color:var(--brand);flex-shrink:0;margin-top:3px}.ai-note p{color:#cad8e3;font-size:13px}.homepage .ai-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.homepage .ai-tools{margin-top:38px}@media (width>=581px){.homepage .ai-layout{align-items:stretch}.homepage .ai-intro{flex-direction:column;display:flex}.homepage .ai-tools{margin-top:auto;padding-top:38px}}.homepage .ai-tools-label{color:#a8bdcb;letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:500}.homepage .ai-tool-list{flex-wrap:wrap;gap:20px 32px;margin:14px 0 0;padding:0;list-style:none;display:flex}.homepage .ai-tool-list li{font-family:var(--display);align-items:center;gap:10px;font-size:17px;font-weight:600;line-height:1.4;display:flex}.homepage .ai-tool-list img,.homepage .ai-openai-mark{flex:0 0 28px;width:28px;height:28px}.homepage .ai-workflow{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:560px;margin:0;padding:0;list-style:none;display:grid}.homepage .ai-workflow+p{max-width:560px;margin-top:28px}.homepage .ai-workflow li{color:#cad8e3;flex-direction:column;align-items:flex-start;gap:12px;font-size:12px;line-height:1.5;display:flex;position:relative}.homepage .ai-workflow li:not(:last-child):after{content:"";background:#456274;height:1px;position:absolute;top:19px;left:52px;right:0}.homepage .ai-workflow-icon{width:40px;height:40px;color:var(--brand);flex:0 0 40px;justify-content:center;align-items:center;display:flex}.homepage .ai-workflow svg{stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:28px;height:28px}.homepage .ai-workflow-copy{flex-direction:column;gap:5px;display:flex}.homepage .ai-workflow-copy strong{color:#fff;font-size:14px;font-weight:600}@media (width<=800px){.homepage .ai-tool-list{gap:18px 24px}.homepage .ai-tool-list li{font-size:15px}.homepage .ai-workflow{grid-template-columns:minmax(0,1fr);gap:22px}.homepage .ai-workflow li{flex-direction:row}.homepage .ai-workflow li:not(:last-child):after{width:1px;height:auto;inset:48px auto -10px 19px}}@media (width<=580px){.homepage .ai-layout{grid-template-columns:minmax(0,1fr);gap:32px}.homepage .ai-tools{margin-top:28px}.homepage .ai-tool-list li{font-size:16px}}.approach-grid{grid-template-columns:1fr 1fr 1fr;gap:46px;margin-top:48px;display:grid}.approach-item{border-top:1px solid var(--line);padding-top:24px}.approach-item h3{font-family:var(--display);letter-spacing:-.01em;align-items:baseline;gap:12px;font-size:22px;font-weight:600;line-height:1.4;display:flex}.approach-item .step{color:var(--link);font:inherit;font-variant-numeric:tabular-nums;flex:0 0 24px}.approach-item .step-title{min-width:0}.approach-item p{color:var(--muted);max-width:320px;margin:12px 0 0 36px;font-size:14px}.homepage .approach-step-methods{margin:22px 0 0 36px}.homepage .approach-step-methods h4{margin-top:0}.contact{background:var(--surface);border-top:1px solid var(--line)}.contact-layout{grid-template-rows:auto 1fr;grid-template-columns:1fr 1fr;align-items:start;gap:40px 120px;display:grid}.contact-intro{grid-area:1/1}.contact h2{font-family:var(--display);letter-spacing:-.045em;margin-top:22px;font-size:clamp(40px,4.5vw,62px);font-weight:500;line-height:1.12}.contact-intro>p:not(.eyebrow){color:var(--muted);max-width:350px;margin-top:24px;font-size:15px}.contact-email{letter-spacing:-.03em;align-items:center;gap:35px;margin-top:30px;font-size:21px;display:inline-flex}.contact-small{color:var(--muted);grid-area:2/1;margin:0;font-size:12px;font-style:normal;line-height:1.7}.contact-small strong{color:var(--ink);font-weight:500}.contact-linkedin{min-height:44px;color:var(--link);align-items:center;gap:8px;margin-top:12px;font-size:14px;font-weight:500;display:inline-flex}.contact-linkedin svg{flex:none}.contact-form{grid-area:1/2/span 2;min-width:0}.form-row{grid-template-columns:1fr 1fr;gap:24px;display:grid}.form-note{color:var(--muted);margin-bottom:18px;font-size:12px}.field{margin-bottom:20px}.field label{margin-bottom:8px;font-size:12px;font-weight:500;display:block}.field label span{color:var(--muted);font-size:11px;font-weight:400}.field input,.field textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #82909b;border-radius:4px;min-height:48px;padding:13px 14px;font-size:14px;display:block}.field textarea{resize:vertical;min-height:128px}.field input::placeholder,.field textarea::placeholder{color:#687580;opacity:1}.field input:focus,.field textarea:focus{border-color:var(--link)}.field [aria-invalid=true]{border-color:var(--error)}.field-hint{color:var(--muted);margin-top:6px;font-size:11px}.field-error{color:var(--error);margin-top:6px;font-size:12px}.form-footer{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.form-footer p{color:var(--muted);max-width:190px;font-size:11px}.form-status{background:#d9efe1;border-left:3px solid #1e7a46;margin-top:20px;padding:12px 16px;scroll-margin-bottom:24px;font-size:13px;line-height:1.6}.form-status[data-state=pending]{color:var(--muted);background:0 0;border:0;padding:0}.form-status[data-state=error]{border-left-color:var(--error);background:#f8e9e9}.no-js-note{color:var(--muted);margin-top:15px;font-size:13px}.site-footer{padding-block:35px}.footer-row{justify-content:space-between;align-items:center;gap:24px;display:flex}.footer-row p{color:var(--muted);font-size:12px}.footer-links{align-items:center;gap:32px;display:flex}.footer-links a{font-size:12px}.homepage .about{background:var(--surface)}.about-layout{grid-template-columns:1.25fr 1fr;align-items:center;gap:100px;display:grid}.about-copy{max-width:600px;margin-top:32px}.about-copy p{color:var(--muted);font-size:16px}.about-copy p+p{margin-top:18px}.about-copy strong{color:var(--ink);font-weight:500}.expertise h3{color:var(--muted)}.expertise-list{border-top:1px solid var(--line);margin:14px 0 0;padding:0;list-style:none}.expertise-list li{border-bottom:1px solid var(--line);font-family:var(--display);letter-spacing:-.01em;padding-block:9px;font-size:16px;font-weight:500}.detail-list{color:var(--muted);margin:14px 0 0;padding-left:18px}.detail-list li+li{margin-top:7px}.detail-list strong{color:var(--ink);font-weight:500}.section-action{margin-top:36px}.services-layout>.section-action{margin-top:0}.project-archive{border-top:1px solid var(--line);min-width:0;margin-top:36px;padding-top:26px}.project-archive>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:24px;min-height:48px;list-style:none;display:flex}.project-archive>summary::-webkit-details-marker{display:none}.project-archive>summary:after{content:"+";color:var(--link);font-size:28px}.project-archive[open]>summary:after{content:"−"}.project-archive h3{font-family:var(--display);letter-spacing:-.03em;font-size:27px;font-weight:500}.more-grid{grid-template-columns:1fr 1fr;column-gap:64px;margin:24px 0 0;padding:0;list-style:none;display:grid}.more-grid li{border-top:1px solid var(--line);padding-block:22px}.more-grid h4{font-family:var(--display);letter-spacing:-.01em;word-spacing:.08em;margin:8px 0 0;font-size:19px;font-weight:600}.more-grid li>p:last-child{color:var(--muted);max-width:520px;margin-top:6px;font-size:14px}.homepage .project-archive{border-top:0;margin-top:64px;padding-top:0}.homepage .project-archive>h3{letter-spacing:normal;font-size:20px;font-weight:600;line-height:1.4}.homepage .archive-list{margin-top:16px;position:relative}.homepage .archive-list .more-grid{margin-top:0}.homepage .archive-preview[data-collapsed=true] .archive-list{max-height:var(--archive-preview-height,180px);mask-image:linear-gradient(to bottom, #000 var(--archive-fade-start,78px), #00000073 calc(var(--archive-fade-start,78px) + 22px), #0000001f 72%, transparent);overflow:hidden}.homepage .archive-toggle{min-height:44px;color:var(--link);text-underline-offset:.25em;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;margin:8px 0 0;padding:0;font-size:13px;font-weight:600;text-decoration:underline 1px;display:inline-flex}.homepage .archive-toggle:hover{text-decoration-thickness:2px}.homepage .archive-toggle svg{flex-shrink:0;width:16px;height:16px}.homepage .archive-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.tech-grid{grid-template-columns:repeat(3,1fr);gap:44px 60px;display:grid}.tech-group{border-top:1px solid var(--line);padding-top:20px}.tech-group h3{font-family:var(--display);letter-spacing:-.01em;font-size:19px;font-weight:600}.tech-group ul{flex-wrap:wrap;gap:8px;margin:14px 0 0;padding:0;list-style:none;display:flex}.tech-group li{border:1px solid #cad7df;border-radius:20px;padding:4px 12px;font-size:13px}@media (width>=1600px){.wrap{width:min(1360px,100% - 160px)}.hero-layout{gap:40px}}@media (width<=1100px){.approach-grid{grid-template-columns:1fr;gap:28px}.approach-item p{max-width:560px}.wrap{width:calc(100% - 72px)}.section{padding-block:84px}.site-nav{gap:22px}.nav-row{--header-gap:20px}.hero-intro{padding-top:64px}.hero h1{font-size:69px}.hero-copy{font-size:16px}.client-logo{--logo-scale:.87}.client-name.vauban{font-size:15px}.client-label{width:115px}.client-row{gap:20px}.ai-layout,.about-layout{gap:60px}.services-intro{gap:40px}.service-list{column-gap:50px}.tech-grid{column-gap:40px}.contact-layout{column-gap:65px}.form-footer{flex-direction:column}.form-footer p{max-width:100%}}@media (width>=801px) and (width<=960px){.nav-row{--header-gap:16px}.site-nav{gap:16px}.site-nav a{font-size:12px}.site-nav .nav-contact{gap:14px;padding-inline:12px}}@media (width<=800px){:root{--header-height:64px}.js .site-header{transition:transform .18s}.js .site-header[data-scroll-hidden=true]:not(:has(:focus-visible)){transform:translateY(-100%)}html:not(.js){scroll-padding-top:0}html:not(.js) .site-header{position:relative}.wrap{width:calc(100% - 48px)}.nav-row{gap:20px}.menu-toggle{flex-shrink:0;margin-left:auto;display:flex}html:not(.js) .nav-row{flex-wrap:wrap;padding-block:18px}html:not(.js) .site-nav{flex-wrap:wrap;gap:8px 24px;width:100%}.js .site-nav{background:var(--paper);border-bottom:1px solid var(--line);padding:18px 24px 24px;display:none;position:absolute;top:100%;left:0;right:0;box-shadow:0 18px 24px #10131612}.js .site-nav[data-open=true]{flex-direction:column;align-items:stretch;gap:3px;display:flex}.site-nav a{min-height:44px}.site-nav .nav-contact{justify-content:space-between;margin-top:10px;padding:11px 18px}.hero-layout{grid-template-columns:1fr;gap:0;min-height:0}.hero-intro{max-width:620px;padding-block:50px 38px}.hero h1{font-size:clamp(48px,7.5vw,62px)}.hero-copy{font-size:15px}.hero-art{height:clamp(320px,62.5vw,500px);position:relative;inset:auto}.hero-art .art-caption{margin-top:6px;font-size:9px}.actions{gap:18px}.button{gap:18px;padding-inline:16px}.hero-bottom .location{font-size:9px}.hero-bottom{gap:20px}.client-row{grid-template-columns:repeat(4,1fr);gap:24px;display:grid}.client-label{grid-column:1/-1;width:auto}.client-label br{display:none}.client-logo{--logo-scale:.78}.client-name.vauban{font-size:14px}.section-heading{gap:35px}.section-heading>p{max-width:260px;font-size:14px}.tags{margin-block:20px}.services-layout{gap:38px}.services-intro{grid-template-columns:1fr;gap:20px}.about-layout{grid-template-columns:1fr;gap:45px}.more-grid{column-gap:35px}.tech-grid{grid-template-columns:1fr 1fr;gap:36px 35px}.services-intro>p{justify-self:start;max-width:470px}.service-list{grid-template-columns:1fr 1fr;column-gap:35px;display:grid}.service{grid-template-columns:28px 1fr;gap:14px;padding-block:23px}.service h3{font-size:18px}.service-icon{width:24px;height:24px}.ai-layout{gap:35px}.ai-copy>p{font-size:14px}.approach-grid{gap:25px}.approach-item h3{font-size:21px}.approach-item p{max-width:560px}.contact-layout{grid-template-rows:auto;grid-template-columns:1fr;gap:40px}.contact-intro,.contact-form,.contact-small{grid-area:auto}.contact-intro{grid-template-columns:1fr 1fr;align-items:start;column-gap:40px;display:grid}.contact-intro .eyebrow{grid-area:1/1}.contact-intro h2{grid-area:2/1}.contact-intro>p:not(.eyebrow){grid-area:2/2;margin-top:25px}.form-footer{flex-direction:row}.form-footer p{max-width:230px}}@media (width<=580px){.wrap{width:calc(100% - 40px)}.contact>.wrap{width:calc(100% - 48px)}.section{padding-block:65px}.brand-name{font-size:24px}.brand-mark{width:31px;height:31px}.nav-row{gap:4px}.menu-toggle{justify-content:center;width:44px;padding:10px}.menu-toggle [data-menu-label]{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.hero-intro{padding-block:40px 30px}.hero-layout{grid-template-columns:1fr}.hero .eyebrow{font-size:10px}.hero h1{margin-top:22px;font-size:clamp(46px,12.7vw,69px);line-height:1.06}.hero-copy{max-width:430px;margin-top:23px;font-size:15px}.actions{gap:24px;margin-top:25px}.button{min-height:51px;font-size:12px}.text-link{gap:10px;font-size:12px}.hero-art{aspect-ratio:1.15;height:auto}.hero-art .art-caption{margin-top:-8px}.hero-bottom{flex-direction:column;align-items:flex-start;gap:10px;margin-top:28px;padding-top:19px}.hero-bottom p{font-size:11px}.hero-bottom .location{font-size:10px}.clients{padding-block:25px}.client-row{grid-template-columns:1fr 1fr;row-gap:23px}.client-label{font-size:11px}.client-logo{--logo-scale:.9}.client-name.vauban{font-size:17px}.section-heading{flex-direction:column;align-items:flex-start;gap:20px;margin-bottom:28px}.section-heading h2,.intro-title{font-size:35px}.section-heading>p{max-width:340px}.art-caption{font-size:9px}.service-list{grid-template-columns:1fr}.about-copy{margin-top:24px}.about-copy p{font-size:15px}.project-archive h3{font-size:25px}.more-grid{grid-template-columns:1fr}.more-grid li{padding-block:18px}.tech-grid{grid-template-columns:1fr;gap:28px}.service{grid-template-columns:30px 1fr;gap:16px}.service h3{font-size:20px}.service p{max-width:100%}.ai-layout{grid-template-columns:1fr;gap:28px}.ai-section h2{font-size:39px}.ai-copy>p{font-size:15px}.ai-note{margin-top:24px;padding-top:20px}.approach-grid{grid-template-columns:1fr;gap:25px;margin-top:35px}.approach-item{padding-top:20px}.approach-item h3{font-size:21px}.approach-item p{max-width:100%;font-size:14px}.contact-intro{display:block}.contact h2{font-size:46px}.contact-intro>p:not(.eyebrow){margin-top:23px}.contact-email{margin-top:22px;font-size:21px}.contact-layout{gap:35px}.form-row{grid-template-columns:1fr;gap:0}.field{margin-bottom:22px}.field input,.field textarea{font-size:16px}.field label{font-size:13px}.form-footer{flex-direction:column;gap:20px}.form-footer p{max-width:100%}.form-footer .button{width:100%}.site-footer{padding-block:29px}.footer-row{flex-direction:column-reverse;align-items:flex-start;gap:18px}.footer-row p{text-wrap:balance;font-size:11px}.footer-links{gap:28px}}@media (width<=360px){.nav-row{gap:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.site-nav .nav-contact:is(:hover,:focus-visible) span{transform:none}}@property --live-mx{syntax:"<length-percentage>";inherits:true;initial-value:30%}@property --live-my{syntax:"<length-percentage>";inherits:true;initial-value:40%}.motion-live{--live:#6bcdf2;--live-ease:cubic-bezier(.2, .8, .2, 1)}.motion-live .live-progress{background:var(--live);height:2px;transform:scaleX(var(--live-scroll,0));transform-origin:0;pointer-events:none;position:absolute;bottom:-1px;left:0;right:0}.motion-live .hero .live-char{animation:live-char .8s var(--live-ease) both;animation-delay:calc(.1s + var(--i) * 32ms);display:inline-block}.motion-live .hero h1 em{background:linear-gradient(100deg, var(--link) 40%, #d6f2ff 50%, var(--link) 60%) 120% 0 / 300% 100%;color:#0000;animation:live-char .8s var(--live-ease) calc(.1s + var(--i) * 32ms) both, live-shine 1.4s ease-in-out .8s both;-webkit-background-clip:text;background-clip:text;display:inline-block}.motion-live .hero h1.live-shine-again em{animation:1.2s ease-in-out both live-shine}@keyframes live-char{0%{opacity:0;filter:blur(10px);transform:translateY(.3em)}}@keyframes live-shine{0%{background-position:120% 0}to{background-position:-20% 0}}@keyframes live-fade{0%{opacity:0;transform:translateY(12px)}}.motion-live .button{transform:translate(var(--live-bx,0), var(--live-by,0));transition:transform .35s var(--live-ease), background-color .18s ease, color .18s ease}.motion-live .button .arrow{transform:translate(var(--live-ax,0), var(--live-ay,0));transition:transform .35s var(--live-ease)}.motion-live .live-line{margin-bottom:-.1em;padding-bottom:.1em;display:block;overflow:hidden}.motion-live .live-line>span{transition:transform 1s var(--live-ease);transition-delay:calc(var(--i) * .11s);display:inline-block}.motion-live [data-live-reveal]:not([data-live-in]) .live-line>span{transform:translateY(110%)}.motion-live .ai-layout{z-index:1;position:relative}.motion-live .live-spot{pointer-events:none;-webkit-mask-image:radial-gradient(300px circle at var(--live-mx) var(--live-my), #000, transparent 72%);mask-image:radial-gradient(300px circle at var(--live-mx) var(--live-my), #000, transparent 72%);background:radial-gradient(circle,#6bcdf28c 1.2px,#0000 1.7px) 0 0/22px 22px;animation:16s ease-in-out infinite alternate live-drift;position:absolute;inset:0}.motion-live .live-spot:after{content:"";background:radial-gradient(420px circle at var(--live-mx) var(--live-my), #6bcdf21f, transparent 70%);position:absolute;inset:0}.motion-live .live-spot[data-pointer]{transition:--live-mx .5s var(--live-ease), --live-my .5s var(--live-ease);animation:none}.motion-live .ai-workflow-icon{transition:transform .4s var(--live-ease)}.motion-live .ai-workflow li:hover .ai-workflow-icon{transform:translateY(-3px)scale(1.12)}@keyframes live-drift{0%{--live-mx:18%;--live-my:30%}35%{--live-mx:62%;--live-my:70%}70%{--live-mx:84%;--live-my:26%}to{--live-mx:40%;--live-my:58%}}.motion-live #work article{isolation:isolate;position:relative}.motion-live #work article:before{content:"";z-index:-1;border-radius:inherit;background:radial-gradient(420px circle at var(--live-sx,50%) var(--live-sy,50%), #6bcdf22e, transparent 65%);opacity:0;pointer-events:none;transition:opacity .4s;position:absolute;inset:0}.motion-live #work article:hover:before{opacity:1}.motion-live :is(.browser-frame,.wo-browser){transition:transform .6s var(--live-ease)}.motion-live :is(.browser-frame,.wo-browser):not(.browser-float,.wo-browser-float){transform-origin:0 0;transform:translate(calc(var(--live-px,0) * -6px), calc(var(--live-py,0) * -4px)) scale(1.03)}.motion-live :is(.browser-float,.wo-browser-float){transform:translate(calc(var(--live-px,0) * 14px), calc(var(--live-py,0) * 10px + var(--live-depth,0) * 1px)) rotate(calc(var(--live-px,0) * 1deg))}.motion-live .live-cascade>li[data-live-new]{animation:live-fade .6s var(--live-ease) both;animation-delay:calc(var(--i) * 45ms)}.motion-live .project-details{interpolate-size:allow-keywords}.motion-live .project-details::details-content{height:0;transition:height .45s var(--live-ease), content-visibility .45s allow-discrete;overflow:clip}.motion-live .project-details[open]::details-content{height:auto}.motion-live .field :is(input,textarea){transition:border-color .2s ease, box-shadow .3s var(--live-ease)}.motion-live .field :is(input,textarea):focus{box-shadow:0 0 0 4px #6bcdf247}
