@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-400.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/inter-800.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:850;font-display:swap;src:url(/fonts/inter-850.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/inter-900.woff2) format("woff2")}@font-face{font-family:Montserrat;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/montserrat-800.woff2) format("woff2")}@font-face{font-family:Montserrat;font-style:normal;font-weight:850;font-display:swap;src:url(/fonts/montserrat-850.woff2) format("woff2")}@font-face{font-family:Montserrat;font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/montserrat-900.woff2) format("woff2")}:root{--color-white: #ffffff;--color-ink: #101820;--color-muted: #526170;--color-navy: #1c3553;--color-teal: #2cb0b0;--color-red: #c20000;--font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;--font-display: Montserrat, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;--page-max: 1120px;--page-gutter: clamp(1rem, 4vw, 3rem);--section-pad-y: clamp(5.5rem, 11vw, 9rem);--hero-logo-size: clamp(9rem, 17vw, 13rem);--mobile-logo-size: clamp(7.25rem, 50vw, 13rem);--focus-card-min-height: clamp(14rem, 23vw, 19rem);--border-radius: 6px;--transition-fast: .18s;--transition-medium: .36s;--ease-out: cubic-bezier(.16, 1, .3, 1);--marquee-duration: 34s;--marquee-gap: clamp(2rem, 5vw, 4rem)}*{box-sizing:border-box}html{min-width:320px;overflow-x:hidden;color-scheme:only light;background-color:#fff;forced-color-adjust:none;scroll-behavior:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{position:relative;margin:0;min-width:320px;overflow-x:hidden;font-family:var(--font-sans);color:var(--color-ink);background-color:#fff;line-height:1.5;color-scheme:only light;forced-color-adjust:none}body,body *{forced-color-adjust:none}.eyebrow,.hero-title,.section-title,.hero-copy,.focus-intro,.service-tag,.service-card h3,.service-card p,.clients-list,.clients-list span,.email-address,.primary-link,.language-switcher a,.site-footer-inner{-webkit-text-fill-color:currentColor}@supports (overflow-x: clip){html,body{overflow-x:clip}}::selection{color:var(--color-white);background:var(--color-teal)}a{color:inherit}button,input,textarea{font:inherit}button{border:0}main,.site-footer{position:relative;z-index:1}#logix-loader{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;display:flex;align-items:center;justify-content:center;background-color:#fff;pointer-events:none;opacity:1;transition:opacity .32s var(--ease-out)}#logix-loader.is-hidden{opacity:0}#spatial-canvas{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;display:block;width:100%;max-width:100%;height:100vh;height:100dvh;background-color:#fff;pointer-events:none;forced-color-adjust:none}.spatial-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;background-color:var(--color-white);forced-color-adjust:none}.architecture-logo{display:block;flex-shrink:0;width:var(--hero-logo-size);aspect-ratio:760 / 740;margin:0 auto clamp(2rem,5vw,3.4rem);overflow:visible;color:var(--color-navy);forced-color-adjust:none}.logo-art,.logo-wordmark,.logo-line{transform-box:fill-box;transform-origin:center}.logo-wordmark{color:var(--color-navy);fill:currentColor;forced-color-adjust:none}.logo-line{fill:none;opacity:0;stroke-width:55px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;forced-color-adjust:none}.logo-line-navy{stroke:#1c3553}.logo-line-teal{stroke:#2cb0b0}.section-container{width:min(var(--page-max),calc(100% - (var(--page-gutter) * 2)));margin-inline:auto}.hero-section,.focus-section,.clients-section,.contact-section{position:relative;z-index:10}.focus-section,.clients-section,.contact-section{--thread-reveal: 0;opacity:1}.focus-section .eyebrow,.focus-section .section-title,.focus-intro,.service-card,.clients-section .eyebrow,.clients-marquee,.contact-section .eyebrow,.contact-section .section-title,.email-button{opacity:var(--item-reveal, var(--thread-reveal, 0));clip-path:inset(var(--item-clip-top, var(--item-clip, 100%)) 0% var(--item-clip-bottom, 0%) 0%);transform:translate3d(var(--item-x, 0px),var(--item-y, 18px),0)}.focus-section.is-reveal-active .eyebrow,.focus-section.is-reveal-active .section-title,.focus-section.is-reveal-active .focus-intro,.focus-section.is-reveal-active .service-card,.clients-section.is-reveal-active .eyebrow,.clients-section.is-reveal-active .clients-marquee,.contact-section.is-reveal-active .eyebrow,.contact-section.is-reveal-active .section-title,.contact-section.is-reveal-active .email-button{will-change:opacity,transform,clip-path}.clients-marquee{clip-path:inset(var(--item-clip-top, 0%) var(--item-clip-x, 100%) var(--item-clip-bottom, 0%) 0%)}.language-switcher{position:absolute;top:clamp(.85rem,2vw,1.35rem);right:var(--page-gutter);z-index:80;display:inline-flex;align-items:center;gap:.25rem;font-size:.55rem;font-weight:850;letter-spacing:.12em;line-height:1;text-transform:uppercase;mix-blend-mode:normal}.language-switcher a,.language-switcher span{color:var(--color-navy)}.language-switcher a{text-decoration:none;opacity:.5;transition:opacity var(--transition-fast) ease,transform var(--transition-fast) var(--ease-out)}.language-switcher a:hover,.language-switcher a.is-active{opacity:1}.hero-section{min-height:100vh;min-height:max(100svh,650px);display:grid;place-items:center;padding-block:clamp(4.5rem,9vw,7rem);background:transparent}.hero-inner{max-width:780px;text-align:center}.eyebrow{margin:0 0 .95rem;color:var(--color-teal);font-size:.72rem;font-weight:850;letter-spacing:.16em;line-height:1.2;text-transform:uppercase}.hero-title,.section-title{margin:0;color:var(--color-navy);font-family:var(--font-display);font-weight:850;letter-spacing:0}.email-address{transition:color var(--transition-medium) ease,background-color var(--transition-medium) ease,border-color var(--transition-medium) ease}.hero-title{max-width:780px;margin-inline:auto;font-size:clamp(2.65rem,8vw,4.5rem);font-kerning:none;line-height:1.1}.hero-mask{overflow:hidden}.hero-title-mask{margin-inline:auto;padding-bottom:.06em}.hero-copy-mask{margin-top:clamp(1.1rem,2.2vw,1.55rem)}.hero-cta-mask{display:inline-block;margin-top:clamp(1.5rem,3vw,2rem);padding-block:.25rem;vertical-align:top}.hero-reveal{display:block}.hero-copy{max-width:610px;margin:0 auto;color:var(--color-muted);font-kerning:none;font-size:clamp(1.02rem,1.5vw,1.22rem);line-height:1.6}html[data-motion-theme=navy] .hero-section .eyebrow,html[data-motion-theme=navy] .hero-title,html[data-motion-theme=navy] .hero-copy{color:var(--color-white)}html[data-motion-theme=navy] .primary-link{color:var(--color-navy);border-color:var(--color-white);background:var(--color-white)}.primary-link{display:inline-flex;align-items:center;justify-content:center;min-height:3rem;padding:.9rem 1.15rem;border:1px solid var(--color-navy);border-radius:var(--border-radius);color:var(--color-white);background:var(--color-navy);font-size:.95rem;font-weight:800;line-height:1;text-decoration:none;transition:color var(--transition-fast) ease,background var(--transition-fast) ease,border-color var(--transition-fast) ease,transform var(--transition-medium) var(--ease-out)}.primary-link:hover{color:var(--color-white);background:var(--color-teal);border-color:var(--color-teal);transform:translateY(-3px)}.primary-link:focus-visible,.email-button:focus-visible,.language-switcher a:focus-visible{outline:2px solid var(--color-teal);outline-offset:4px}.tp-dfwv{z-index:99999!important;pointer-events:auto!important}.focus-section{min-height:100vh;min-height:100svh;display:flex;align-items:center;padding-block:var(--section-pad-y);overflow:hidden;color:var(--color-white);background:transparent;isolation:isolate}.focus-inner{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(2.8rem,8vw,7rem);align-items:start}.focus-section .section-title{max-width:620px;color:var(--color-white);font-size:clamp(2.2rem,6vw,4rem);line-height:1.1;overflow-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.focus-section .eyebrow{color:var(--color-white)}.focus-intro{max-width:34rem;margin:clamp(1.25rem,2.5vw,1.8rem) 0 0;color:var(--color-white);font-size:clamp(1.02rem,1.4vw,1.18rem);line-height:1.62;opacity:calc(.72 * var(--item-reveal, var(--thread-reveal, 0)))}.service-stage{position:relative;z-index:1;isolation:isolate}.service-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.85rem,1.6vw,1.15rem)}.service-card{position:relative;min-height:clamp(11.5rem,15vw,14.5rem);min-width:0;padding:clamp(1.05rem,2vw,1.35rem);overflow:hidden;border:1px solid rgba(255,255,255,.15);border-radius:var(--border-radius);background:#ffffff05;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:inset 0 1px 1px #ffffff14;color:var(--color-white);transition:background-color var(--transition-medium) ease,border-color var(--transition-medium) ease,transform var(--transition-medium) var(--ease-out)}.service-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,#fff6,#fff0 40%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;opacity:.3;transition:opacity var(--transition-medium) ease}.service-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(200px circle at var(--mouse-x, 50%) var(--mouse-y, 50%),rgba(28,53,83,.6) 0%,transparent 100%);opacity:0;pointer-events:none;transition:opacity var(--transition-medium) ease}.service-card:hover:before{opacity:.9}.service-card:hover{border-color:#ffffff47;background:#ffffff17;transform:translateY(-2px) scale(1.02)}.service-card:hover:after{opacity:.85}.service-tag{display:block;margin:0 0 clamp(1.6rem,3vw,2.5rem);color:#ffffff9e;font-size:.68rem;font-weight:850;letter-spacing:.14em;line-height:1.2;text-transform:uppercase}.service-card h3,.service-card p{position:relative;z-index:2}.service-card h3{margin:0 0 .75rem;color:currentColor;font-family:var(--font-display);font-size:clamp(1.05rem,1.7vw,1.32rem);letter-spacing:0;line-height:1.16;overflow-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.service-card p{max-width:24rem;margin:0;color:currentColor;font-size:clamp(.92rem,1.1vw,1rem);line-height:1.58;opacity:.74;overflow-wrap:break-word}.contact-section{min-height:96vh;min-height:max(96svh,600px);display:flex;align-items:center;padding-block:var(--section-pad-y);color:var(--color-white);background:transparent}.bottom-logo-section{position:relative;z-index:10;display:grid;place-items:center;min-height:100svh;padding-block:clamp(5.5rem,11vw,9rem);background:transparent}.bottom-logo{flex-shrink:0;width:var(--hero-logo-size)}.bottom-logo .logo-line{opacity:1}.bottom-logo .logo-wordmark{color:var(--color-navy);fill:currentColor;opacity:0;forced-color-adjust:none;transform-origin:center;will-change:opacity,transform,filter}.contact-inner{max-width:860px}.contact-section .section-title{max-width:800px;color:var(--color-white);font-size:clamp(2.35rem,7vw,5rem);line-height:1.1}.contact-section .eyebrow,.contact-section .email-button,.contact-section .email-address{color:var(--color-white)}.email-button{position:relative;display:inline-flex;margin-top:clamp(1.6rem,3vw,2.25rem);padding:0;color:var(--color-teal);background:transparent;cursor:pointer}.email-address{font-family:var(--font-display);font-size:clamp(1.45rem,3vw,2.6rem);font-weight:850;letter-spacing:0;line-height:1.1;transition:color var(--transition-fast) ease,transform var(--transition-medium) var(--ease-out)}.email-button:hover .email-address{color:var(--color-navy);transform:translateY(-2px)}.copy-feedback{position:absolute;left:0;bottom:-1.45rem;color:#ffffffb8;font-size:.86rem;opacity:0;transform:translateY(.35rem);transition:opacity var(--transition-fast) ease,transform var(--transition-fast) ease}.copy-feedback.is-visible{opacity:1;transform:translateY(0)}.site-footer{display:flex;align-items:flex-end;justify-content:center;min-height:clamp(4.5rem,10vw,7rem);padding:clamp(1rem,2vw,1.5rem) var(--page-gutter) clamp(1.6rem,4vw,2.5rem);color:#1c3553a8;background:transparent;text-align:center;overflow:hidden}.site-footer-inner{margin:0;font-size:clamp(.78rem,1vw,.92rem);letter-spacing:.02em;transform:translateY(100%);opacity:0;will-change:opacity,transform}@media(max-width:767px){:root{--page-gutter: clamp(1.1rem, 5vw, 1.35rem);--section-pad-y: clamp(5.25rem, 21vw, 7.25rem)}.architecture-logo{width:var(--mobile-logo-size);margin-bottom:2rem}.hero-section{min-height:100vh;min-height:100svh;padding-block:clamp(3.6rem,13vw,5rem)}.hero-copy{font-size:1rem}.primary-link{width:100%}.hero-cta-mask{display:block;width:100%}.service-stage{margin-top:0}.focus-inner{grid-template-columns:1fr;gap:clamp(2.2rem,10vw,3.8rem)}.service-grid{grid-template-columns:1fr;gap:.85rem}.service-card{min-height:auto;padding:1.05rem}.focus-intro{max-width:24rem;font-size:clamp(1rem,4.1vw,1.12rem)}.service-tag{margin-bottom:1.35rem}.service-card h3{font-size:clamp(1.22rem,5.4vw,1.6rem)}.service-card p{max-width:21rem;font-size:clamp(1rem,4.15vw,1.14rem);line-height:1.56}.contact-section{min-height:104svh}.email-address{font-size:clamp(1.65rem,7vw,2.25rem)}}@media(min-width:768px)and (max-height:760px){:root{--hero-logo-size: clamp(7.25rem, 20vh, 9rem)}.hero-section{padding-block:clamp(2.3rem,6vh,3.5rem)}.architecture-logo{margin-bottom:clamp(1rem,3.2vh,1.7rem)}.eyebrow{margin-bottom:.65rem}.hero-title{font-size:clamp(2.65rem,10vh,4rem)}.hero-copy-mask{margin-top:clamp(.75rem,2.4vh,1.1rem)}.hero-copy{font-size:clamp(.98rem,2.4vh,1.12rem);line-height:1.5}.hero-cta-mask{margin-top:clamp(1rem,3vh,1.35rem)}.primary-link{min-height:2.75rem;padding:.8rem 1.05rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}.focus-section,.clients-section,.contact-section{--thread-reveal: 1;opacity:1}.focus-section .eyebrow,.focus-section .section-title,.focus-intro,.service-card,.clients-section .eyebrow,.clients-marquee,.contact-section .eyebrow,.contact-section .section-title,.email-button,.site-footer-inner{--item-reveal: 1;--item-x: 0px;--item-y: 0px;--item-clip: 0%;--item-clip-x: 0%;--item-accent: 1;clip-path:none!important;opacity:1;transform:none}.focus-section{background:var(--color-teal)}.clients-section{background:var(--color-navy)}.contact-section{background:var(--color-teal)}.bottom-logo-section{background:var(--color-white)}}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-property:overflow;transition-duration:1ms;transition-behavior:allow-discrete}.clients-section{min-height:85vh;min-height:85svh;display:grid;align-content:center;gap:clamp(1.7rem,3vw,2.4rem);padding-block:var(--section-pad-y);color:#ffffffd1;background:transparent}.clients-section .eyebrow{color:var(--color-white)}.clients-marquee{width:100%;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}.clients-track{display:flex;width:max-content;animation:clients-marquee var(--marquee-duration) linear infinite;animation-play-state:paused;transform:translateZ(0);will-change:auto}.clients-section.is-in-viewport .clients-track{animation-play-state:running;will-change:transform}.clients-marquee:hover .clients-track{animation-play-state:paused}.clients-list{display:flex;flex:0 0 auto;align-items:center;gap:var(--marquee-gap);padding-right:var(--marquee-gap);color:currentColor;font-family:var(--font-display);font-size:clamp(1.35rem,4vw,3.6rem);font-weight:850;letter-spacing:.02em;line-height:1;white-space:nowrap}.clients-list span{display:inline-block;transition:color var(--transition-fast) ease,opacity var(--transition-fast) ease}.clients-marquee:hover span{opacity:.42}.clients-list span:hover{color:var(--color-white);opacity:1}@keyframes clients-marquee{0%{transform:translateZ(0)}to{transform:translate3d(-50%,0,0)}}.clients-marquee-reverse{display:block;margin-top:clamp(2.4rem,4vw,3rem)}.clients-marquee-reverse .clients-track{animation-direction:reverse}@media(max-width:767px){.clients-section{--marquee-duration: 42s;min-height:92vh;min-height:92svh;gap:clamp(2rem,10vw,3rem)}.clients-marquee{-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}.clients-list{font-size:clamp(1.85rem,12vw,3.15rem)}}@media(prefers-reduced-motion:reduce){.clients-track{animation-play-state:paused!important;will-change:auto}}
