@import url('https://fonts.googleapis.com/css2?family=Hanken+Grotesk:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap');

:root{--orange:#FE5B2A;--ink:#18191B;--paper:#F5F4EF;--muted:#96968F;--line:rgba(245,244,239,.19);--gutter:clamp(24px,5.5vw,92px);--mono:'JetBrains Mono',monospace;--ease:cubic-bezier(.2,.75,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--ink);color:var(--paper);font-family:'Hanken Grotesk',Arial,sans-serif;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{color:inherit}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--orange);outline-offset:6px}::selection{background:var(--orange);color:var(--ink)}svg{max-width:100%}button{cursor:pointer}.skip-link{position:fixed;left:20px;top:10px;transform:translateY(-160%);background:var(--paper);color:var(--ink);padding:15px;z-index:200}.skip-link:focus{transform:none}
.page-header{height:102px;padding:0 var(--gutter);position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(24,25,27,.96);transition:height .35s var(--ease),background .35s}.page-header.scrolled{height:78px}.brand{display:inline-flex;gap:12px;align-items:center;font-size:21px;letter-spacing:-.035em;white-space:nowrap;font-weight:600}.brand>span>span,.brand>span:not(:first-child){color:var(--muted)}.brand>svg{flex:none}.page-nav{display:flex;align-items:center;gap:34px;font-size:14px}.page-nav>a{position:relative;padding:12px 0}.page-nav>a:not(.nav-contact)::after{content:'';position:absolute;bottom:5px;left:0;width:100%;height:1px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}.page-nav>a:hover::after,.page-nav>a[aria-current=page]::after{transform:scaleX(1)}.page-nav .nav-contact{display:flex;gap:26px;padding:12px 19px;border:1px solid var(--line);transition:background .3s,color .3s,border-color .3s}.page-nav .nav-contact:hover{background:var(--orange);border-color:var(--orange);color:var(--ink)}.menu-toggle{display:none;border:0;background:transparent}.page-main{overflow:clip}.page-hero{padding:clamp(66px,9vw,140px) var(--gutter) 72px;position:relative;min-height:600px}.eyebrow{font-family:var(--mono);font-size:11px;line-height:1.6;font-weight:400;letter-spacing:.1em;text-transform:uppercase;display:flex;align-items:center;gap:20px;margin:0 0 30px}.eyebrow::before{content:'';width:7px;height:7px;background:var(--orange);flex:none}.hero-title{font-size:clamp(56px,7.6vw,126px);font-weight:500;letter-spacing:-.065em;line-height:.99;margin:0;max-width:1200px}.hero-title .accent{color:var(--orange)}.hero-lede{font-size:clamp(18px,1.8vw,26px);line-height:1.48;letter-spacing:-.018em;max-width:620px;color:#babbb5;margin:36px 0 0}.hero-meta{margin-top:60px;padding-top:23px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:24px;font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.075em}.hero-meta a{display:inline-flex;gap:24px}.hero-meta a span{color:var(--orange)}.page-section{padding:110px var(--gutter);position:relative;border-top:1px solid var(--line)}.section-head{display:grid;grid-template-columns:1fr 1fr;gap:36px 9%;align-items:start;margin-bottom:64px}.section-head>.eyebrow{grid-column:1/-1;margin:0}.section-head h2{font-size:clamp(42px,4.2vw,68px);line-height:1.03;letter-spacing:-.055em;font-weight:500;margin:0}.section-head>p{font-size:20px;line-height:1.55;max-width:530px;color:#aaa9a3;margin:0}.split-layout{display:grid;grid-template-columns:1fr 1fr;gap:9%}.light-section{background:var(--paper);color:var(--ink);--line:rgba(24,25,27,.22);--muted:#686960}.light-section p{color:#5c5d57}.orange-section{background:var(--orange);color:var(--ink);--line:rgba(24,25,27,.28);--muted:#5d2c1c}.orange-section .eyebrow::before{background:var(--ink)}.orange-section p{color:#4a2419}.editorial-list{border-top:1px solid var(--line)}.editorial-row{display:grid;grid-template-columns:50px minmax(180px,1fr) 1.3fr;gap:30px;padding:33px 0;border-bottom:1px solid var(--line);align-items:start}.row-number{font:11px var(--mono);color:var(--orange);padding-top:7px}.editorial-row h3{font-weight:500;font-size:27px;line-height:1.13;letter-spacing:-.035em;margin:0}.editorial-row p{font-size:17px;line-height:1.6;color:#aaa9a3;max-width:520px;margin:0}.light-section .editorial-row p{color:#64655f}.button-link{display:inline-flex;align-items:center;justify-content:space-between;gap:50px;padding:20px 0;border-bottom:1px solid currentColor;font-size:17px;line-height:1.2}.button-link>span:last-child{transition:transform .3s var(--ease);display:inline-block}.button-link:hover>span:last-child{transform:translate(5px,-5px)}.cta-section{background:var(--orange);color:var(--ink);padding:84px var(--gutter);display:grid;grid-template-columns:1fr auto;gap:28px 60px;align-items:end}.cta-section .eyebrow{grid-column:1/-1;margin:0}.cta-section .eyebrow::before{background:var(--ink)}.cta-section h2{font-size:clamp(46px,6.7vw,106px);line-height:1;letter-spacing:-.06em;font-weight:500;margin:0;max-width:970px}.cta-section .button-link{min-width:225px;margin-bottom:7px}.page-footer{padding:64px var(--gutter) 25px;overflow:hidden;background:var(--ink);color:var(--paper)}.footer-top{display:grid;grid-template-columns:1fr 1fr auto;gap:40px;align-items:start;padding-bottom:70px}.footer-top p{color:var(--muted);margin:0;font-size:16px;line-height:1.5}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:15px 45px;font-size:14px}.footer-links a:hover{color:var(--orange)}.footer-wordmark{font-size:clamp(58px,13.9vw,232px);line-height:1.08;letter-spacing:-.08em;font-weight:500;white-space:nowrap;transform-origin:bottom;will-change:transform}.footer-wordmark>span{color:var(--orange)}.footer-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:25px;margin-top:28px;padding-top:22px;font-family:var(--mono);font-size:9px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.footer-bottom a:hover{color:var(--paper)}
/* All content remains visible if scripts are unavailable. */
.motion-ready [data-reveal]{opacity:0;transform:translate3d(0,38px,0);transition:opacity .9s var(--ease),transform 1.1s var(--ease);transition-delay:var(--delay,0ms)}.motion-ready [data-reveal].is-visible{opacity:1;transform:none}.motion-ready [data-stagger]>*{opacity:0;transform:translateY(28px);transition:opacity .8s var(--ease),transform 1s var(--ease);transition-delay:calc(var(--i,0)*95ms)}.motion-ready [data-stagger].is-visible>*{opacity:1;transform:none}.hero-title .line{display:block;overflow:hidden;padding-bottom:.12em;margin-bottom:-.12em}.hero-title .line>span{display:block;animation:title-enter 1.15s var(--ease) both;animation-delay:calc(var(--i,0)*110ms)}@keyframes title-enter{from{transform:translateY(110%)}to{transform:translateY(0)}}
/* Industries: detailed, diagram-led editorial sections. */
.industry-hero{padding-bottom:0}.industry-hero .hero-lede{max-width:600px}.industry-index{display:flex;gap:0;margin-top:60px;border-top:1px solid var(--line)}.industry-index a{width:33.333%;display:flex;gap:20px;align-items:center;justify-content:space-between;padding:25px 25px 25px 0;font-size:19px;border-right:1px solid var(--line)}.industry-index a:not(:first-child){padding-left:30px}.industry-index a:last-child{border-right:0}.industry-index small{font:10px var(--mono);color:var(--muted)}.industry-index a>span:last-child{font-size:28px;transition:transform .4s var(--ease);color:var(--orange)}.industry-index a:hover>span:last-child{transform:translateY(6px)}.industry-section{padding:96px var(--gutter) 106px;scroll-margin-top:78px;--diagram-ink:var(--paper)}.industry-section.light-section{--diagram-ink:var(--ink)}.industry-top{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;align-items:center}.industry-number{font:11px var(--mono);color:var(--orange);margin-bottom:22px;display:block}.industry-title{font-size:clamp(64px,8.2vw,130px);font-weight:500;letter-spacing:-.065em;line-height:.96;margin:0 0 30px}.industry-intro{font-size:21px;line-height:1.55;max-width:520px;letter-spacing:-.02em;color:#aaa9a3;margin:0}.industry-for{font:10px/1.8 var(--mono);text-transform:uppercase;letter-spacing:.04em;margin-top:28px;max-width:450px;color:var(--muted)}.industry-for strong{font-weight:400;display:block;margin-bottom:8px;color:var(--diagram-ink)}.system-figure{margin:0;position:relative;aspect-ratio:1.3;display:grid;place-items:center;border:1px solid var(--line);overflow:hidden}.system-figure svg{width:100%;height:100%;overflow:visible}.system-figure::before,.system-figure::after{content:'+';position:absolute;top:-12px;color:var(--orange);font:20px var(--mono)}.system-figure::before{left:-7px}.system-figure::after{right:-7px}.system-figure figcaption{position:absolute;bottom:15px;left:20px;right:20px;display:flex;justify-content:space-between;gap:20px;color:var(--muted);font:8px var(--mono);text-transform:uppercase;letter-spacing:.12em}.system-figure .wire{fill:none;stroke:var(--diagram-ink);stroke-width:.8;opacity:.34}.system-figure .accent-wire{fill:none;stroke:var(--orange);stroke-width:1.4}.system-figure .node{fill:var(--ink);stroke:var(--orange);stroke-width:1.3}.light-section .system-figure .node{fill:var(--paper)}.system-figure .dash-flow{stroke-dasharray:5 18;animation:flow 7s linear infinite}.system-figure .draw-orbit{transform-origin:250px 160px;animation:orbit 45s linear infinite}.system-figure .draw-orbit.reverse{animation-direction:reverse;animation-duration:60s}.system-figure .pulse-node{transform-box:fill-box;transform-origin:center;animation:pulse 3.5s ease-in-out infinite}.system-figure text{font:9px var(--mono);fill:var(--diagram-ink);letter-spacing:1px}.system-figure .fine-text{font-size:6px;opacity:.55}.industry-deliverables{display:grid;grid-template-columns:repeat(3,1fr);margin-top:60px;border-top:1px solid var(--line)}.industry-deliverables>div{padding:25px 30px 12px 0;border-right:1px solid var(--line)}.industry-deliverables>div:not(:first-child){padding-left:30px}.industry-deliverables>div:last-child{border-right:0}.industry-deliverables h3{font-size:22px;line-height:1.15;letter-spacing:-.03em;font-weight:500;margin:0 0 14px}.industry-deliverables p{font-size:16px;line-height:1.55;color:var(--muted);margin:0}.industry-bottom{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-top:35px}.industry-bottom p{font:10px/1.8 var(--mono);max-width:430px;color:var(--muted)}.industry-bottom .button-link{font-size:15px;min-width:240px}.industry-crossovers{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:end}.industry-crossovers h2{font-size:clamp(44px,5vw,80px);font-weight:500;line-height:1.04;letter-spacing:-.055em;margin:0}.industry-crossovers p{font-size:20px;line-height:1.6;margin:0;color:var(--muted)}
/* About: an animated, connected design / build / operate composition. */
.about-hero .hero-title{max-width:1100px}.about-hero .hero-lede{margin-left:auto;max-width:560px;margin-top:44px}.about-hero .hero-meta{margin-top:55px}.about-statement{font-size:clamp(32px,4.4vw,70px);line-height:1.15;letter-spacing:-.04em;max-width:1200px;margin:0}.about-statement span{color:#81847a}.delivery-system{display:grid;grid-template-columns:repeat(3,1fr);margin-top:75px;position:relative;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.delivery-system::after{content:'';position:absolute;left:0;top:74px;width:100%;height:1px;background:var(--orange);transform:scaleX(var(--draw,0));transform-origin:left;transition:transform 1.8s var(--ease)}.delivery-system.is-visible{--draw:1}.delivery-part{padding:26px 30px 36px 0;border-right:1px solid var(--line);position:relative}.delivery-part:not(:first-child){padding-left:30px}.delivery-part:last-child{border:0}.delivery-part::before{content:'';position:absolute;top:69px;left:0;width:11px;height:11px;border:1px solid var(--orange);background:var(--paper);border-radius:50%;z-index:1}.delivery-part:not(:first-child)::before{left:30px}.delivery-part small{font:10px var(--mono);color:#74766e;display:block;margin-bottom:56px}.delivery-part h3{font-weight:500;font-size:38px;letter-spacing:-.04em;margin:0 0 18px}.delivery-part p{font-size:17px;line-height:1.55;max-width:340px;margin:0}.about-principles .section-head{margin-bottom:70px}.about-principles .editorial-row{padding:36px 0}.about-partner{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:start}.about-partner h2{font-size:clamp(46px,5.2vw,82px);line-height:1.02;letter-spacing:-.05em;font-weight:500;margin:0}.about-partner>div>p{font-size:21px;line-height:1.6;color:var(--muted);margin:0 0 24px}.about-partner .button-link{margin-top:10px}.about-fields{display:flex;flex-wrap:wrap;gap:12px;margin-top:40px}.about-fields a{border:1px solid var(--line);padding:11px 18px;font:10px var(--mono);transition:color .3s,border-color .3s}.about-fields a:hover{color:var(--orange);border-color:var(--orange)}@keyframes flow{to{stroke-dashoffset:-230}}@keyframes orbit{to{transform:rotate(360deg)}}@keyframes pulse{50%{transform:scale(1.3);opacity:.5}}
@media(min-width:1800px){.page-main,.page-footer{max-width:2000px;margin:0 auto}.page-header{padding-left:max(var(--gutter),calc((100vw - 1816px)/2));padding-right:max(var(--gutter),calc((100vw - 1816px)/2))}}
@media(max-width:1050px){.page-nav{gap:22px}.page-header{height:90px}.page-section{padding-top:80px;padding-bottom:80px}.hero-title{font-size:clamp(64px,8.8vw,100px)}.footer-top{grid-template-columns:1fr 1fr}.footer-top .footer-links{grid-column:2;grid-row:1/3}.section-head{gap:25px 6%}.section-head>p{font-size:18px}.industry-top{gap:5%}.industry-intro{font-size:18px}.industry-title{font-size:82px}.industry-deliverables h3{font-size:20px}.cta-section{gap:28px;grid-template-columns:1fr}.cta-section .button-link{justify-self:start;min-width:260px}.editorial-row{grid-template-columns:30px 1fr 1.3fr;gap:20px}.editorial-row h3{font-size:24px}}
@media(max-width:720px){:root{--gutter:24px}.page-header,.page-header.scrolled{height:76px}.brand{font-size:19px;gap:9px}.brand svg{width:33px;height:30px}.menu-toggle{display:flex;gap:20px;align-items:center;padding:12px 0 12px 18px;font-size:12px}.menu-toggle span{font-size:26px;font-weight:300;line-height:1;transition:transform .4s}.menu-toggle[aria-expanded=true] span{transform:rotate(45deg)}.page-nav{position:fixed;top:76px;left:0;right:0;height:calc(100dvh - 76px);padding:40px var(--gutter);background:var(--ink);display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;visibility:hidden;opacity:0;transform:translateY(-15px);transition:opacity .35s,transform .5s var(--ease),visibility .35s}.page-nav.is-open{visibility:visible;opacity:1;transform:none}.page-nav>a{font-size:43px;line-height:1.1;letter-spacing:-.045em;padding:22px 0;border-bottom:1px solid var(--line)}.page-nav .nav-contact{font-size:26px;margin-top:25px;padding:20px;border-color:var(--orange);justify-content:space-between}.page-nav>a:not(.nav-contact)::after{display:none}.page-nav>a[aria-current=page]{color:var(--orange)}.page-hero{padding-top:64px;padding-bottom:45px;min-height:0}.eyebrow{font-size:9px;gap:13px;margin-bottom:26px}.hero-title{font-size:clamp(48px,11vw,76px);line-height:1.03;letter-spacing:-.06em}.hero-lede{font-size:19px;margin-top:28px;line-height:1.5}.hero-meta{font-size:8px;line-height:1.6;gap:22px;margin-top:40px}.page-section{padding:65px var(--gutter)}.section-head{grid-template-columns:1fr;gap:24px;margin-bottom:40px}.section-head h2{font-size:43px;max-width:480px}.section-head>p{font-size:18px}.split-layout{grid-template-columns:1fr;gap:36px}.editorial-row{grid-template-columns:28px 1fr;gap:12px;padding:27px 0}.editorial-row h3{font-size:25px}.editorial-row p{grid-column:2;font-size:16px}.cta-section{padding:55px var(--gutter);gap:26px}.cta-section h2{font-size:52px}.cta-section .button-link{font-size:16px;min-width:240px}.page-footer{padding-top:43px}.footer-top{grid-template-columns:1fr 1fr;gap:24px;padding-bottom:48px}.footer-top .brand{grid-column:1/-1}.footer-top p{font-size:14px;grid-column:1}.footer-top .footer-links{grid-row:auto;grid-column:2;gap:12px 20px;font-size:12px}.footer-wordmark{font-size:13.3vw;letter-spacing:-.075em}.footer-bottom{flex-wrap:wrap;gap:18px;font-size:8px}.footer-bottom>span:nth-child(2){display:none}.footer-bottom>a{margin-left:auto}.industry-hero{padding-bottom:0}.industry-index{margin-top:44px;display:block}.industry-index a{width:100%;padding:20px 0!important;border-right:0;border-bottom:1px solid var(--line);font-size:18px}.industry-index a small{margin-right:auto}.industry-index a:last-child{border-bottom:0}.industry-top{grid-template-columns:1fr;gap:40px}.industry-title{font-size:74px;margin-bottom:25px}.industry-intro{font-size:19px}.industry-for{font-size:9px;margin-top:22px}.system-figure{max-width:600px;min-height:250px;aspect-ratio:1.36}.industry-deliverables{grid-template-columns:1fr;margin-top:35px}.industry-deliverables>div{padding:25px 0!important;border-right:0;border-bottom:1px solid var(--line)}.industry-deliverables h3{font-size:23px}.industry-deliverables>div:last-child{border-bottom:0}.industry-bottom{display:block;margin-top:15px}.industry-bottom p{font-size:9px}.industry-bottom .button-link{width:100%;margin-top:8px}.industry-crossovers{grid-template-columns:1fr;gap:25px}.industry-crossovers h2{font-size:46px}.industry-crossovers p{font-size:18px}.about-hero .hero-lede{margin-left:0;margin-top:30px}.about-statement{font-size:34px}.delivery-system{grid-template-columns:1fr;margin-top:42px}.delivery-system::after{width:1px;height:100%;left:5px;top:0;transform:scaleY(var(--draw,0));transform-origin:top}.delivery-part{padding:26px 0 30px 35px!important;border-right:0;border-bottom:1px solid var(--line)}.delivery-part::before,.delivery-part:not(:first-child)::before{left:0;top:31px}.delivery-part small{margin-bottom:18px}.delivery-part h3{font-size:34px;margin-bottom:12px}.delivery-part p{font-size:16px;max-width:none}.about-principles .section-head{margin-bottom:42px}.about-principles .editorial-row{padding:27px 0}.about-partner{grid-template-columns:1fr;gap:30px}.about-partner h2{font-size:48px}.about-partner>div>p{font-size:19px}.about-fields{margin-top:28px;gap:8px}.about-fields a{padding:11px;font-size:9px}}
.industry-title{font-size:clamp(54px,6.2vw,100px)}.page-footer .brand>span{color:var(--muted)}
@media(max-width:720px){.industry-title{font-size:clamp(46px,13.4vw,74px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.motion-ready [data-reveal],.motion-ready [data-stagger]>*{opacity:1;transform:none}.delivery-system{--draw:1}.footer-wordmark{transform:none!important}}
