:root{--red:#e60012;--action:#b51f2b;--ink:#17191c;--gray:#666a70;--warm:#f3f1ee;--line:#d9d7d3;--white:#fff;scroll-behavior:smooth;scroll-padding-top:28px}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6;background:#fff}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:6px}a:hover{text-decoration:none}::selection{background:#f9cbd0}.wrap{width:min(1280px,calc(100% - 112px));margin:auto}.section{padding-top:100px;padding-bottom:100px}.utility{border-bottom:1px solid #eaeaea;font-size:10px;letter-spacing:1.1px}.utility .wrap{display:flex;justify-content:space-between;padding:10px 0}.utility a{letter-spacing:0;font-size:11px}.utility a span{margin-left:15px;color:var(--action)}.nav{min-height:105px;display:flex;align-items:center;justify-content:space-between;gap:30px}.logo{display:block;width:220px;height:70px;object-fit:contain}nav{display:flex;align-items:center;gap:34px;font-size:13px;font-weight:bold}.nav nav>a{padding:10px 0;border-bottom:2px solid transparent}.nav nav>a:hover{border-color:var(--red)}.nav .nav-contact{border-bottom:2px solid var(--red);margin-left:14px}.nav-contact span{margin-left:26px}.menu-toggle{display:none}.hero{position:relative;min-height:660px;background:#10161e;color:#fff;isolation:isolate}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%;filter:saturate(.25);z-index:-3}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,13,18,.88),rgba(10,13,18,.55) 50%,rgba(10,13,18,.07));z-index:-2}.hero-content{padding-top:70px;padding-bottom:105px}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:bold;color:var(--action);margin-bottom:24px;display:flex;align-items:center;gap:12px}.eyebrow.light{color:#fff}.hero .eyebrow span{display:inline-block;width:32px;height:3px;background:var(--red)}h1,h2,h3,p{margin:0}h1{font-size:clamp(48px,5.7vw,80px);letter-spacing:-3px;line-height:1.04;font-weight:700}h1 em{font-family:Georgia,serif;font-weight:400;font-style:normal}h2{font-size:clamp(32px,3.1vw,46px);line-height:1.15;letter-spacing:-1.2px;font-weight:700}.serif{font-family:Georgia,serif;font-weight:400}.hero p{font-size:17px;line-height:1.7;color:#e3e3e3;margin:28px 0}.hero-link{display:inline-flex;align-items:center;gap:45px;font-size:13px;font-weight:bold;border-bottom:3px solid var(--red);padding-bottom:13px}.hero-link:hover span,.text-link:hover span,.read-link:hover span{transform:translateX(5px)}a span,button span{transition:transform .2s}.hero-bottom{position:absolute;bottom:24px;left:0;right:0;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:1.5px;color:#ddd}.hero-bottom a{font-size:11px;letter-spacing:0}.hero-bottom a span{margin-left:22px;font-size:22px}.topic-strip{background:var(--warm);border-bottom:1px solid var(--line)}.topic-strip .wrap{display:grid;grid-template-columns:.8fr 1fr 1fr 1fr;gap:24px;align-items:center;min-height:88px}.topic-strip span{font-size:10px;color:var(--gray);letter-spacing:1.3px}.topic-strip a{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:12px;border-left:1px solid var(--line);padding-left:24px}.topic-strip b{font-size:18px;color:var(--action);font-weight:400}.intro{display:grid;grid-template-columns:1.1fr 1fr;gap:90px}.intro-copy .large{font-size:21px;line-height:1.5;margin:0 0 23px;color:var(--ink)}.intro-copy p{font-size:15px;color:var(--gray)}.text-link{display:inline-flex;gap:34px;align-items:center;font-weight:bold;font-size:12px;padding:17px 0 7px;border-bottom:1px solid var(--action)}.text-link span{font-size:19px;color:var(--action)}.expertise{background:var(--warm)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:50px}.section-heading>p{font-size:14px;color:var(--gray);padding-bottom:5px}.service-list{border-top:1px solid #aaa}details{border-bottom:1px solid #bbb;scroll-margin-top:30px}summary{list-style:none;display:flex;align-items:center;gap:36px;cursor:pointer;padding:24px 0}summary::-webkit-details-marker{display:none}.service-number{font-size:11px;color:var(--action);width:22px}summary h3{font-size:27px;letter-spacing:-.6px;font-weight:400}.expand{margin-left:auto;color:var(--action);font-size:30px;font-weight:400;line-height:1}details[open] .expand{font-size:0}details[open] .expand:after{content:'−';font-size:30px}.service-body{padding:0 35px 32px 58px;display:grid;grid-template-columns:1fr 1fr;gap:85px}.service-body>p{font-family:Georgia,serif;font-size:23px;line-height:1.4;max-width:400px}.service-body ul{margin:0 0 6px;padding-left:18px;font-size:14px;color:var(--gray);line-height:1.9}.statement{background:var(--action);color:#fff;padding:75px 0}.statement h2{font-size:clamp(34px,3.7vw,54px);margin-bottom:28px}.white-link{display:inline-flex;gap:45px;align-items:center;font-size:13px;font-weight:bold;border-bottom:1px solid #ffffff90;padding-bottom:10px}.white-link span{font-size:22px}.white-link:hover{border-color:#fff}.industries{display:grid;grid-template-columns:1fr 1fr;gap:100px}.industries p{margin-top:25px;max-width:420px;font-size:15px;color:var(--gray)}.industry-grid{display:grid;grid-template-columns:1fr;align-content:start}.industry-grid a{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:16px 0;font-size:15px}.industry-grid a:first-child{padding-top:0}.industry-grid a span{color:var(--action)}.industry-grid a:hover{color:var(--action)}.approach{background:var(--ink);color:#fff}.approach .eyebrow{color:#ff7b82}.approach .section-heading p{color:#bbb}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:48px}.steps article{padding-top:20px;border-top:2px solid var(--red)}.steps article>span{font-size:10px;letter-spacing:1.5px;color:#c9c9c9}.steps h3{font-size:24px;line-height:1.3;font-weight:400;margin:22px 0 18px;max-width:260px}.steps p{font-size:14px;color:#b9b9b9;max-width:290px}.editor-note{font-size:12px;color:var(--gray);padding-bottom:5px}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.article-art{height:220px;margin-bottom:25px;overflow:hidden;position:relative}.art-one{background:var(--warm);padding:27px}.art-one>span{font-family:Georgia,serif;font-size:49px;line-height:1.05;position:relative;z-index:1}.art-one i{position:absolute;right:-30px;top:23px;width:160px;height:160px;border:28px solid var(--red);border-radius:50%}.art-two{background:var(--ink);color:white;padding:25px 26px;font-size:29px;line-height:1.6;letter-spacing:-1px}.art-two div:nth-child(2){color:#aaa}.art-two div:last-child{color:#ff7781}.art-two div:last-child span{float:right}.art-three{background:var(--action);color:white;padding:26px;font-size:34px;line-height:1.2;font-weight:bold;letter-spacing:-1px}.category{font-size:9px;letter-spacing:1.2px;color:var(--action);font-weight:bold}.article-grid h3{font-family:Georgia,serif;font-weight:400;font-size:25px;line-height:1.25;margin:14px 0}.article-grid p{font-size:14px;color:var(--gray);margin-bottom:8px}.read-link{display:inline-flex;gap:28px;border:0;background:none;padding:14px 0;font-size:12px;font-weight:bold}.read-link span{color:var(--action)}.contact{background:var(--ink);color:white;padding:75px 0}.contact>.wrap{display:flex;justify-content:space-between;gap:60px;align-items:center}.contact h2{font-size:clamp(42px,4.5vw,64px);margin-bottom:22px}.contact p{font-size:15px;color:#bbb}.contact-actions{display:flex;flex-direction:column;align-items:start;gap:18px}.call-link{font-size:28px;border-bottom:2px solid var(--red);padding-bottom:12px;white-space:nowrap}.call-link span{margin-left:30px}.contact-actions>span{font-size:12px;color:#bbb}.contact-actions .white-link{margin-top:28px}.footer-main{display:grid;grid-template-columns:1.3fr 1fr 1fr .7fr;gap:50px;padding-top:60px;padding-bottom:50px;align-items:start}.footer-main img{display:block;max-width:100%;object-fit:contain}.footer-main p{font-size:12px;color:var(--gray)}.footer-main nav{flex-direction:column;align-items:start;gap:9px;font-size:12px}.back-top{font-size:11px;text-align:right}.footer-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:25px;padding-top:20px;padding-bottom:25px;font-size:10px;color:var(--gray)}.skip{position:absolute;top:-60px;left:20px;z-index:10;background:#fff;padding:12px}.skip:focus{top:10px}dialog{max-width:760px;width:calc(100% - 40px);padding:44px;border:0;max-height:85vh;overflow:auto;color:var(--ink)}dialog::backdrop{background:#111b}body:has(dialog[open]){overflow:hidden}.dialog-top{display:flex;align-items:center;gap:25px;justify-content:space-between;margin-bottom:24px}.dialog-top button{border:0;background:none;font-size:30px;line-height:1;padding:5px 10px}dialog h2{font-family:Georgia,serif;font-weight:400;font-size:35px;margin-bottom:26px}#dialog-body p{font-size:16px;color:var(--gray);margin-bottom:20px}.dialog-contact{display:inline-block;border-bottom:2px solid var(--red);font-size:13px;font-weight:bold;margin-top:10px;padding-bottom:8px}
@media(min-width:1500px){.hero{min-height:730px}.hero-content{padding-top:90px}}@media(max-width:1000px){.wrap{width:calc(100% - 64px)}nav{gap:22px}.nav .nav-contact{margin-left:0}.intro,.industries{gap:45px}.service-body{gap:40px}.article-art{height:190px}.art-one>span{font-size:40px}.art-two{font-size:23px}.art-three{font-size:29px}.footer-main{gap:25px}.call-link{font-size:24px}}@media(max-width:760px){.wrap{width:calc(100% - 40px)}.section{padding-top:65px;padding-bottom:65px}.utility{font-size:8px;letter-spacing:.5px}.utility a{font-size:9px}.nav{min-height:92px;position:relative}.menu-toggle{display:flex;align-items:center;gap:14px;background:none;border:0;font-size:12px;padding:12px 0}.menu-toggle span{font-size:20px}.logo{width:200px;height:auto}.nav nav{display:none;position:absolute;top:92px;left:-20px;right:-20px;padding:20px;background:white;z-index:5;border-top:1px solid var(--line);box-shadow:0 8px 12px #0001}.nav nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:4px}.nav nav a{padding:12px}.nav .nav-contact{border:0;color:var(--action)}.hero{min-height:610px}.hero-content{padding-top:55px;padding-bottom:110px}.hero-image{object-position:60% center}.hero-shade{background:linear-gradient(90deg,#0b0f16e8,#0b0f1685)}h1{font-size:52px;letter-spacing:-2px}.hero p{font-size:15px}.hero-bottom>span{display:none}.hero-bottom{justify-content:flex-end;bottom:22px}.topic-strip .wrap{grid-template-columns:1fr;padding:20px 0;gap:14px}.topic-strip a{border-left:0;border-top:1px solid var(--line);padding:12px 0 0}.intro,.industries{grid-template-columns:1fr;gap:35px}.intro-copy .large{font-size:19px}h2{font-size:33px;letter-spacing:-1px}.section-heading{display:block;margin-bottom:33px}.section-heading>p,.editor-note{margin-top:20px;display:block}summary{gap:15px;padding:23px 0}summary h3{font-size:21px;line-height:1.25}.service-number{width:20px;flex-shrink:0}.service-body{padding-left:35px;padding-right:0;grid-template-columns:1fr;gap:20px}.service-body>p{font-size:21px}.statement{padding:60px 0}.statement h2{font-size:34px}.steps{grid-template-columns:1fr;gap:35px}.steps h3{max-width:none;font-size:25px}.steps p{max-width:none}.article-grid{grid-template-columns:1fr;gap:35px}.article-art{height:230px}.art-one>span{font-size:55px}.art-one i{right:20px;width:190px;height:190px}.art-two{font-size:34px}.art-three{font-size:42px}.article-grid h3{font-size:28px}.contact{padding:60px 0}.contact>.wrap{flex-direction:column;align-items:start;gap:40px}.contact h2{font-size:49px}.call-link{font-size:25px}.contact-actions .white-link{margin-top:10px}.footer-main{grid-template-columns:1fr 1fr;gap:30px;padding-top:40px}.footer-main>a:first-child{grid-column:1/-1}.footer-main p{display:none}.footer-main .back-top{text-align:left}.footer-bottom{flex-direction:column;gap:8px;font-size:9px}dialog{padding:27px}dialog h2{font-size:29px}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*{transition:none!important}}
/* Motion and sticky navigation */
:root{scroll-padding-top:106px}header{position:sticky;top:0;z-index:30;background:#fff;box-shadow:0 0 0 transparent;transition:box-shadow .3s}header .utility{max-height:38px;overflow:hidden;transition:max-height .35s,opacity .25s}header .nav{transition:min-height .35s}header .logo{transition:width .35s,height .35s;transform-origin:left center}header.is-scrolled{box-shadow:0 3px 18px #00000012}header.is-scrolled .utility{max-height:0;opacity:0}header.is-scrolled .nav{min-height:78px}header.is-scrolled .logo{width:198px;height:63px}.hero-slider{height:700px;min-height:700px;overflow:hidden;transition:background-color .5s,color .5s}.hero-stage{position:absolute;inset:0}.hero-slide{position:absolute;inset:0;isolation:isolate;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .9s ease,visibility .9s;color:#fff;overflow:hidden}.hero-slide.is-active{opacity:1;visibility:visible;pointer-events:auto}.hero-slide .hero-content{position:relative;padding-top:62px;padding-bottom:150px}.hero-title{font-size:clamp(48px,5.7vw,80px);letter-spacing:-3px;line-height:1.04;font-weight:700;margin:0}.hero-title em{font-family:Georgia,serif;font-weight:400;font-style:normal}.hero-slide .hero-content>*{transform:translateY(22px);opacity:0;transition:transform .85s ease,opacity .85s ease}.hero-slide.is-active .hero-content>*{transform:translateY(0);opacity:1;transition-delay:.15s}.hero-slide.is-active .hero-content>p{transition-delay:.25s}.hero-slide.is-active .hero-content>a{transition-delay:.35s}.hero-slide .hero-image{transform:scale(1.06);transition:transform 8s linear}.hero-slide.is-active .hero-image{transform:scale(1)}.slide-research{background:var(--warm);color:var(--ink)}.slide-research .hero-content{z-index:2}.slide-research .hero-content p{color:var(--gray)}.slide-research .hero-content .eyebrow span{background:var(--red)}.slide-research .hero-link{color:var(--ink)}.research-graphic{position:absolute;inset:0;overflow:hidden;pointer-events:none}.research-graphic span{position:absolute;border:50px solid var(--red);border-radius:50%;width:490px;height:490px;right:-50px;top:90px;opacity:.9;transform:translateX(100px) rotate(-30deg);transition:transform 1.4s ease}.research-graphic span:nth-child(2){width:350px;height:350px;right:20px;top:160px;border-width:2px;border-color:#c8c4bd}.research-graphic span:nth-child(3){width:650px;height:650px;right:-130px;top:10px;border-width:2px;border-color:#c8c4bd}.is-active .research-graphic span{transform:translateX(0) rotate(0)}.slide-capability{background:var(--action)}.slide-capability .hero-image{object-position:right center;opacity:.32;mix-blend-mode:luminosity}.slide-capability .hero-shade{background:linear-gradient(90deg,#9d1121e8,#b51f2b40)}.slide-capability .eyebrow span{background:white}.slide-capability .hero-link{border-color:white}.slider-controls{position:absolute;bottom:24px;left:0;right:0;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:35px;color:white}.slide-pickers{display:flex;gap:26px;flex:1;max-width:740px}.slide-picker{position:relative;display:flex;gap:12px;align-items:center;background:none;border:0;border-top:1px solid #ffffff55;color:inherit;padding:17px 0 7px;flex:1;text-align:left;font-size:11px;opacity:.65}.slide-picker.is-active{opacity:1}.slide-picker>span:first-child{font-size:10px}.slide-picker i{position:absolute;top:-1px;left:0;width:0;height:3px;background:var(--red)}.slide-picker.is-active i{width:100%}.slider-buttons{display:flex;gap:8px}.slider-buttons button{background:transparent;color:inherit;border:1px solid #ffffff55;width:40px;height:40px;display:grid;place-items:center;font-size:17px;line-height:1}.slider-buttons button:hover{background:#ffffff20}.hero-slider[data-tone="light"] .slider-controls{color:var(--ink)}.hero-slider[data-tone="light"] .slide-picker{border-color:#17191c40}.hero-slider[data-tone="light"] .slider-buttons button{border-color:#17191c40}.hero-slider[data-tone="red"] .slide-picker i{background:white}.hero-slider[data-tone="light"] .slider-buttons button:hover{background:#17191c10}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1000px){.research-graphic{opacity:.45}.research-graphic span{right:-200px}.research-graphic span:nth-child(2){right:-130px}.research-graphic span:nth-child(3){right:-280px}.slide-pickers{gap:18px}.picker-name{font-size:10px}}@media(max-width:760px){:root{scroll-padding-top:93px}header.is-scrolled .nav{min-height:74px}header.is-scrolled .logo{width:185px;height:auto}header .nav nav{top:100%}.hero-slider{height:660px;min-height:660px}.hero-slide .hero-content{padding-top:48px;padding-bottom:170px}.hero-title{font-size:48px;letter-spacing:-2px}.hero-slide h1{font-size:50px}.hero-slide .hero-content p{font-size:15px}.hero-slider .hero-content .eyebrow{font-size:9px;letter-spacing:1.1px}.slider-controls{flex-direction:column;gap:20px;align-items:stretch;bottom:20px}.slide-pickers{max-width:none;gap:15px}.slide-picker{gap:7px;padding-top:12px;font-size:10px}.picker-name{font-size:9px;line-height:1.3}.slider-buttons{justify-content:flex-end}.slider-buttons button{width:38px;height:36px}.research-graphic{opacity:.2}.research-graphic span{top:90px}.slide-research .hero-title{font-size:44px}.slide-research .hero-link{background:var(--warm)}.hero-slide .hero-content>p{margin:24px 0}.hero-link{gap:30px}}
@media(prefers-reduced-motion:reduce){header,header .nav,header .logo,header .utility,.hero-slide,.hero-slide .hero-content>*,.hero-slide .hero-image,.research-graphic span{transition:none!important;animation:none!important}.hero-slide .hero-image{transform:none}.hero-slide .hero-content>*{transform:none}.research-graphic span{transform:none}}
/* Email is the primary contact action. */
.contact-actions{max-width:100%;min-width:0;gap:15px}.email-link{display:flex;align-items:baseline;gap:20px;max-width:100%;font-size:clamp(22px,2.15vw,32px);line-height:1.35;letter-spacing:-.5px;border-bottom:2px solid var(--red);padding-bottom:12px}.email-link>span:first-child{min-width:0;overflow-wrap:anywhere}.email-link>span:last-child{flex-shrink:0;font-size:22px}.contact-actions .call-link{font-size:16px;line-height:1.6;border:0;padding-bottom:0;color:#d0d0d0}.contact-actions .call-link span{font-size:14px;margin-left:12px}.contact-actions .call-link:hover{color:white}.email-link:hover{border-color:white}@media(max-width:760px){.contact-actions .email-link{font-size:24px;gap:12px}.contact-actions .call-link{font-size:16px}}
