:root{--ink:#0c0c0c;--white:#fff;--muted:#686868;--line:#d4d4d4;--font:'Inter Tight',Arial,sans-serif;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--white);color:var(--ink);font-family:var(--font);font-size:1rem;line-height:1.5;-webkit-font-smoothing:antialiased}p,h1,h2,h3{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid currentColor;outline-offset:5px}img{max-width:100%;display:block}::selection{background:var(--ink);color:var(--white)}.skip-link{position:fixed;left:20px;top:-80px;padding:12px 20px;background:var(--ink);color:var(--white);z-index:50}.skip-link:focus{top:15px}
.site-header{margin:0 4%;height:76px;display:flex;align-items:center;border-bottom:1px solid var(--line);gap:22px}.brand{display:block;width:192px;flex-shrink:0}.brand img{width:192px;height:auto}.site-header nav{margin-left:auto;display:flex;align-items:center;gap:30px;font-size:.875rem}.site-header nav a{position:relative;padding:6px 0}.site-header nav a:not(.nav-contact)::after{content:'';position:absolute;left:0;right:100%;bottom:1px;height:1px;background:var(--ink);transition:right .25s}.site-header nav a:hover::after{right:0}.site-header .nav-contact{padding:12px 20px;background:var(--ink);color:var(--white)}.menu-toggle{display:none}
.intro{padding:78px 4% 90px}.hero-grid{margin-top:0;padding-top:0;display:grid;grid-template-columns:1fr 2fr;gap:40px}.eyebrow{font-family:Arial,sans-serif;font-size:.75rem;font-weight:500;letter-spacing:.05em;line-height:1.5}.intro-label>p:not(.eyebrow){margin-top:22px;font-size:.875rem;line-height:1.6;color:#565656}.intro-index{display:block;font-family:Arial,sans-serif;font-size:.75rem;color:#686868;margin-top:48px}.hero-proposition h1{font-size:clamp(52px,5.4vw,90px);line-height:1.03;letter-spacing:-.055em;font-weight:500}.hero-proposition h1 span{font-weight:400;color:var(--muted)}.hero-bottom{display:flex;align-items:flex-end;gap:32px;justify-content:space-between;margin-top:27px}.hero-bottom>p{font-size:1.125rem;line-height:1.5;max-width:420px}.button{display:inline-flex;align-items:center;justify-content:center;padding:15px 22px;font-size:.875rem;line-height:1.4;white-space:nowrap;transition:background .2s,color .2s}.button-dark{background:var(--ink);color:var(--white)}.button-dark:hover{background:#444}
.section{padding:75px 4%}.services{border-top:1px solid var(--line)}.section-heading{display:grid;grid-template-columns:1fr 2fr;gap:40px;align-items:start;margin-bottom:47px}.section-heading>.eyebrow{padding-top:8px;color:#555}.section-heading h2{font-size:clamp(35px,3.6vw,57px);letter-spacing:-.045em;line-height:1.08;font-weight:400}.section-heading>div>p{font-size:1rem;color:#666;max-width:550px;margin-top:22px;line-height:1.65}.service-list{border-top:1px solid var(--ink)}.service{border-bottom:1px solid var(--line)}.service summary{display:grid;grid-template-columns:80px 1.1fr 1fr 30px;gap:25px;align-items:center;padding:29px 0;cursor:pointer;list-style:none}.service summary::-webkit-details-marker{display:none}.service-number{font-size:.8125rem;color:#6d6d6d}.service h3{font-size:clamp(25px,2.6vw,40px);line-height:1.15;letter-spacing:-.04em;font-weight:400}.service-short{font-size:.9375rem;color:#686868}.expand{font-size:26px;line-height:1;text-align:center;transition:transform .2s}.service[open] .expand{transform:rotate(45deg)}.service-body{margin-left:105px;padding:0 25% 29px 0;max-width:960px}.service-body>p{font-size:1rem;line-height:1.7;color:#585858}.tags{display:flex;gap:19px;flex-wrap:wrap;margin-top:23px}.tags span{font-size:.8125rem;line-height:1.4;padding-bottom:4px;border-bottom:1px solid #999;color:#222}
.workflow-section{display:grid;grid-template-columns:1fr 1.4fr;gap:9%;background:#f5f5f5;padding-top:69px;padding-bottom:69px}.workflow-intro>.eyebrow{color:#666}.workflow-intro h2{font-size:clamp(36px,3.8vw,59px);letter-spacing:-.045em;line-height:1.08;font-weight:400;margin-top:25px}.workflow-intro>p:not(.eyebrow){font-size:1rem;line-height:1.65;color:#666;margin-top:23px;max-width:400px}.workflow-tabs{margin-top:31px;display:flex;flex-direction:column;align-items:flex-start}.workflow-tab{position:relative;background:none;border:0;padding:11px 0;color:#777;font-size:1rem;line-height:1.4;transition:color .2s}.workflow-tab.is-active{color:var(--ink);font-weight:500}.workflow-tab::after{content:'';position:absolute;left:0;right:100%;bottom:6px;height:1px;background:var(--ink);transition:right .2s}.workflow-tab.is-active::after{right:0}.workflow-panel{background:var(--white);padding:32px 35px;border-top:3px solid var(--ink)}.workflow-caption{display:flex;justify-content:space-between;gap:20px;font-family:Arial,sans-serif;font-size:.75rem;line-height:1.4;color:#727272;margin-bottom:32px}.workflow-caption>span:last-child{text-align:right}.workflow-panel h3{font-size:clamp(28px,3vw,44px);letter-spacing:-.04em;font-weight:400;line-height:1.12}.workflow-panel>p{margin-top:24px;font-size:1rem;line-height:1.65;color:#666}.workflow-diagram{list-style:none;padding:0;margin:35px 0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.workflow-diagram li{min-width:0;border-top:1px solid #b7b7b7;padding-top:13px}.step-symbol{font-size:.75rem;color:#777}.step-label{display:block;font-size:.875rem;line-height:1.3;margin-top:18px}.step-detail{display:block;font-size:.75rem;line-height:1.45;color:#777;margin-top:6px}.workflow-deliverable{border-top:1px solid var(--line);padding-top:20px}.workflow-deliverable>span{font-family:Arial,sans-serif;font-size:.75rem;color:#777}.workflow-deliverable>p{font-size:.9375rem;margin-top:7px;line-height:1.5}
.approach-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:36px}.approach-grid article{border-top:1px solid var(--ink);padding-top:19px;display:flex;flex-direction:column;align-items:flex-start}.approach-number{font-family:Arial,sans-serif;font-size:.75rem;color:#777}.approach-grid h3{font-size:28px;font-weight:400;letter-spacing:-.03em;line-height:1.2;margin-top:37px}.approach-grid p{font-size:1rem;line-height:1.65;color:#666;margin-top:19px;margin-bottom:25px}.approach-output{font-size:.75rem;color:#333;line-height:1.5;margin-top:auto;padding-top:18px;border-top:1px solid var(--line);width:100%}.perspective{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 2fr;gap:40px}.perspective-label>.eyebrow{padding-top:8px;color:#666}.perspective h2{font-size:clamp(37px,4.2vw,65px);font-weight:400;letter-spacing:-.045em;line-height:1.08}.perspective-copy>p{font-size:1.125rem;line-height:1.7;color:#626262;margin-top:26px;max-width:690px}.perspective-principles{display:flex;gap:22px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:22px;margin-top:35px}.perspective-principles>span{font-size:.875rem}
.regions{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 2fr;gap:40px;padding-top:35px;padding-bottom:35px}.regions .eyebrow{color:#777}.regions h2{font-weight:400;font-size:22px;letter-spacing:-.03em;margin-top:12px}.regions>div>p:not(.eyebrow){font-size:.875rem;color:#777;margin-top:9px}.clock-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:end}.region-clock .mini-label{display:block;font-family:Arial,sans-serif;font-size:.625rem;line-height:1.4;color:#777}.region-clock strong{display:block;font-size:28px;font-weight:400;letter-spacing:-.04em;margin-top:13px}.region-clock>span:last-child{display:block;font-size:.75rem;color:#777;margin-top:2px}
.contact{background:var(--ink);color:var(--white);padding-top:48px;padding-bottom:46px}.contact>.eyebrow{color:#bcbcbc}.contact-main{display:grid;grid-template-columns:1.3fr 1fr;gap:13%;align-items:end;margin-top:45px;margin-bottom:65px}.contact h2{font-size:clamp(60px,8.3vw,137px);font-weight:400;letter-spacing:-.06em;line-height:1.01}.contact h2 span{color:#959595}.contact-detail>p{font-size:1rem;line-height:1.65;color:#aaa;max-width:350px}.contact-detail .button{background:var(--white);color:var(--ink);margin-top:29px}.contact-detail .button:hover{background:#ccc}.contact-email{display:block;width:max-content;font-size:1rem;margin-top:22px;border-bottom:1px solid #777;padding-bottom:4px}.contact-bottom{display:flex;justify-content:space-between;gap:20px;font-family:Arial,sans-serif;font-size:.75rem;color:#aaa;border-top:1px solid #393939;padding-top:24px}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:28px 4%;font-size:.75rem;color:#777}.footer-brand{display:block;flex-shrink:0}.footer-brand img{width:140px;height:auto}
@media(min-width:1800px){body{max-width:1920px;margin:auto}}
@media(max-width:1000px){.hero-grid,.section-heading,.perspective,.regions{grid-template-columns:1fr 2.25fr;gap:30px}.hero-bottom{display:block}.hero-bottom .button{margin-top:22px}.service summary{grid-template-columns:55px 1.2fr 1fr 25px;gap:20px}.service-body{margin-left:75px;padding-right:12%}.workflow-section{grid-template-columns:1fr 1.3fr;gap:6%}.workflow-panel{padding:28px 24px}.workflow-diagram{grid-template-columns:repeat(2,1fr);gap:22px}.step-label{margin-top:12px}.approach-grid{grid-template-columns:repeat(2,1fr);gap:35px}.approach-grid h3{margin-top:26px}.contact-main{gap:8%}.clock-grid{gap:16px}}
@media(max-width:700px){.site-header{height:76px;margin:0 6%;gap:16px}.brand,.brand img{width:172px;height:auto}.menu-toggle{display:flex;gap:17px;align-items:center;background:none;border:0;padding:10px 0;margin-left:auto;font-size:.8125rem}.menu-icon{font-size:23px}.site-header nav{position:absolute;left:0;right:0;top:76px;z-index:10;padding:30px 6%;background:var(--white);border-bottom:1px solid var(--ink);display:none;flex-direction:column;align-items:flex-start;gap:20px;font-size:1rem}.site-header nav.is-open{display:flex}.intro{padding:40px 6% 56px}.hero-grid{display:block;margin-top:0;padding-top:0}.intro-label{display:grid;grid-template-columns:1fr 1fr;gap:20px}.intro-label>p:not(.eyebrow){margin:0;font-size:.75rem;line-height:1.5;text-align:right}.intro-label .eyebrow{font-size:.75rem}.intro-index{display:none}.hero-proposition{margin-top:38px}.hero-proposition h1{font-size:clamp(48px,12vw,72px);letter-spacing:-.052em}.hero-bottom{margin-top:24px}.hero-bottom>p{font-size:1rem;max-width:350px}.hero-bottom .button{margin-top:24px}.button{padding:14px 20px}.section{padding:58px 6%}.section-heading{display:block;margin-bottom:35px}.section-heading>.eyebrow{padding:0;margin-bottom:25px}.section-heading h2{font-size:36px;letter-spacing:-.04em}.section-heading>div>p{font-size:1rem;margin-top:20px}.service summary{grid-template-columns:25px 1fr 25px;gap:15px;padding:24px 0}.service h3{font-size:26px;line-height:1.2}.service-number{font-size:.75rem}.service-short{display:none}.service-body{margin-left:40px;padding:0 0 25px}.tags{gap:13px 18px;margin-top:21px}.tags span{font-size:.8125rem}.workflow-section{display:block}.workflow-intro h2{font-size:38px}.workflow-intro>p:not(.eyebrow){max-width:100%}.workflow-tabs{flex-direction:row;flex-wrap:wrap;gap:12px 20px;margin-top:25px}.workflow-tab{font-size:.875rem}.workflow-panel{margin-top:25px;padding:25px 22px}.workflow-caption{font-size:.75rem;gap:10px;margin-bottom:24px}.workflow-panel h3{font-size:32px}.workflow-panel>p{margin-top:20px}.workflow-diagram{margin:28px 0;gap:23px 20px}.step-label{font-size:.875rem}.step-detail{font-size:.75rem}.workflow-deliverable>p{font-size:.9375rem}.approach-grid{grid-template-columns:1fr;gap:28px}.approach-grid h3{font-size:30px;margin-top:21px}.approach-grid p{margin-top:15px;margin-bottom:20px}.approach-output{font-size:.8125rem}.perspective{display:block}.perspective-label>.eyebrow{padding:0;margin-bottom:28px}.perspective h2{font-size:39px}.perspective-copy>p{font-size:1rem;margin-top:22px}.perspective-principles{gap:15px 20px;margin-top:25px;padding-top:21px}.perspective-principles>span{font-size:.8125rem}.regions{display:block;padding-top:30px;padding-bottom:30px}.clock-grid{margin-top:25px;gap:15px}.region-clock .mini-label{font-size:.625rem}.region-clock strong{font-size:24px}.region-clock>span:last-child{font-size:.6875rem}.contact{padding-top:36px;padding-bottom:34px}.contact-main{display:block;margin-top:35px;margin-bottom:38px}.contact h2{font-size:clamp(54px,14vw,80px);letter-spacing:-.055em}.contact-detail{margin-top:29px}.contact-detail>p{max-width:100%}.contact-bottom{font-size:.6875rem;flex-wrap:wrap}.site-footer{padding:27px 6%;flex-wrap:wrap;gap:18px}.footer-brand{width:100%}.footer-brand img{width:140px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
.contact-main{grid-template-columns:1.1fr 1fr;gap:9%;align-items:start}.contact h2{font-size:clamp(56px,6.9vw,112px)}.contact-intro>p{max-width:350px;margin-top:28px;color:#aaa;font-size:1rem;line-height:1.65}.contact-form{min-width:0;padding-top:8px}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:25px}.contact-field{min-width:0;margin-bottom:26px}.contact-field label{display:block;font-size:.875rem;color:#e2e2e2;margin-bottom:10px}.contact-field input,.contact-field textarea{display:block;width:100%;border:0;border-bottom:1px solid #6e6e6e;border-radius:0;background:transparent;color:#fff;font:inherit;font-size:1rem;line-height:1.5;padding:9px 0 12px;outline-offset:5px}.contact-field textarea{min-height:120px;resize:vertical}.contact-field input:focus-visible,.contact-field textarea:focus-visible{outline:2px solid #fff;border-bottom-color:#fff}.contact-field [aria-invalid="true"]{border-bottom-color:#fca5a5}.contact-form .button{background:#fff;color:#0c0c0c;border:0;margin-top:21px;min-height:48px;font-size:.875rem}.contact-form .button:hover{background:#ddd}.contact-form .button:disabled{cursor:wait;opacity:.65}.contact-privacy{font-size:.875rem;color:#aaa;line-height:1.5;max-width:430px}.contact-status{margin-top:17px;font-size:1rem;line-height:1.5;color:#fff;min-height:1.5em}.contact-status[data-state="error"]{color:#fca5a5}.contact-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.contact-status:empty{margin-top:0;min-height:0}
@media(max-width:700px){.contact-main{display:block}.contact h2{font-size:clamp(54px,14vw,80px)}.contact-intro>p{margin-top:23px}.contact-form{margin-top:36px;padding-top:0}.contact-fields{gap:20px}.contact-field{margin-bottom:25px}.contact-field label{font-size:.875rem}.contact-form .button{width:100%}.contact-privacy{max-width:none}}
@media(max-width:420px){.contact-fields{grid-template-columns:1fr;gap:0}}
