@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;700&family=Manrope:wght@400;500;600;650;700;800&display=swap');
:root{--red:#e62b27;--ink:#16191b;--muted:#656b70;--line:#dddfe1;--paper:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid var(--red);outline-offset:5px}header{height:106px;margin:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}.brand{display:flex;align-items:center;gap:13px}.brand img{width:62px;height:62px;object-fit:cover;border-radius:3px}.brand>span{font-size:24px;font-weight:800;letter-spacing:2px;line-height:1.1}.brand small{display:block;font-size:10px;letter-spacing:1.3px;margin-top:8px}nav{display:flex;align-items:center;gap:32px;font-size:14px;font-weight:600}nav a:hover,.text-link:hover{color:var(--red)}.nav-contact{padding:12px 18px;border:1px solid var(--ink)}.nav-contact span{margin-left:20px}.hero{display:grid;grid-template-columns:1.2fr 1fr;margin:50px 5% 0;gap:5%}.eyebrow{font-size:12px;letter-spacing:1.7px;font-weight:700;margin:0 0 24px;display:flex;align-items:center;gap:9px}.eyebrow>span{width:6px;height:6px;background:var(--red)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,Arial,sans-serif}h1{font-size:clamp(40px,4.6vw,73px);line-height:1.12;letter-spacing:-2.7px;font-weight:650;margin-bottom:26px}em{font-style:normal;color:var(--red)}.intro{font-size:18px;color:var(--muted);max-width:460px;line-height:1.7}.actions{display:flex;gap:26px;align-items:center;margin-top:32px;flex-wrap:wrap}.button{display:inline-flex;padding:16px 24px;font-size:14px;font-weight:700;gap:38px;align-items:center;justify-content:space-between;transition:transform .2s}.button:hover{transform:translateY(-3px)}.red{background:var(--red);color:#fff}.text-link{font-size:14px;font-weight:600;border-bottom:1px solid;padding:8px 0}.text-link span{margin-left:15px}.hero-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:57px;padding:19px 0;font-size:10px;letter-spacing:1.5px;color:var(--muted)}.hero-bottom a{font-size:22px}.hero-panel{background:#1c2023;color:#fff;padding:30px 36px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;border-top:4px solid var(--red)}.panel-top{font-size:10px;letter-spacing:1.6px;display:flex;justify-content:space-between;color:#b8bec2}.panel-title{font-family:Manrope,sans-serif;font-size:clamp(36px,3.6vw,58px);line-height:1.15;letter-spacing:-1.6px;margin:35px 0}.panel-title>span{color:#aeb7bd}.capabilities{padding:0;margin:0;list-style:none}.capabilities li{border-top:1px solid #41464a;padding:12px 0;font-size:14px}.capabilities li>span{color:#e65a57;font-size:12px;margin-right:22px}.panel-foot{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.5px;color:#b8bec2;padding-top:25px}.proof{margin:40px 5% 0;display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line);padding-bottom:40px}.proof>div{display:flex;flex-direction:column;border-right:1px solid var(--line);padding-left:30px}.proof>div:first-child{padding-left:0}.proof>div:last-child{border:0}.proof strong{font-size:28px;font-family:Manrope,sans-serif;letter-spacing:-1px}.proof span{font-size:14px;color:var(--muted)}.section{padding:94px 5%}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:43px}.section-heading h2{margin-bottom:0}h2{font-size:clamp(32px,3.4vw,52px);line-height:1.18;letter-spacing:-1.6px;font-weight:650}.section-heading>p{color:var(--muted);max-width:380px;margin-bottom:5px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.service{background:#fff;padding:32px;min-height:300px}.service.featured{grid-row:span 2;background:#f1f3f4;display:flex;flex-direction:column;justify-content:flex-start}.index{font-size:11px;letter-spacing:1.2px;color:var(--muted)}.service h3{font-size:27px;line-height:1.25;letter-spacing:-.7px;margin:31px 0 20px}.featured h3{font-size:43px;margin-top:50px}.service p{font-size:15px;color:var(--muted);margin-bottom:0}.service a{font-size:14px;font-weight:700;margin-top:auto;padding-top:50px;display:flex;justify-content:space-between}.network{background:#1c2023;color:#fff;display:grid;grid-template-columns:1.1fr 1fr;gap:10%}.network .eyebrow{color:#f17a77}.network-intro{color:#c0c6cb;max-width:520px}.network .text-link{display:inline-block;margin-top:20px}.regions>div{position:relative;border-top:1px solid #454b50;padding:19px 0 19px 42px}.regions h3{font-size:19px;margin:0 0 4px}.regions p{color:#aeb7bd;font-size:14px;margin:0}.regions span{position:absolute;left:0;top:22px;color:#ef706c;font-size:12px}.industry-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.industry-grid article{border-top:2px solid var(--ink);padding-top:20px}.industry-grid article>span{color:var(--red);font-size:13px}.industry-grid h3{font-size:21px;line-height:1.3;margin:23px 0 16px}.industry-grid p{font-size:15px;color:var(--muted)}.industry-grid small{font-size:12px;display:block;color:var(--muted);border-top:1px solid var(--line);padding-top:18px}.quality{background:#f3f5f6}.process{list-style:none;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:20px;margin-bottom:0}.process li{border-top:1px solid #bcc2c6;padding-top:22px}.process span{color:var(--red);font-size:14px}.process h3{font-size:17px;margin:20px 0 8px}.process p{color:var(--muted);font-size:14px;margin-bottom:0}.contact{background:var(--red);color:#fff}.contact .eyebrow{color:#fff}.contact-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:12%}.contact h2{font-size:clamp(40px,4.5vw,68px);line-height:1.12;margin-bottom:0}.contact em{color:#fff;opacity:.66}.contact-details>p{max-width:390px;margin-bottom:30px}.contact-details>span{display:block;font-size:10px;letter-spacing:1.5px;margin-top:20px;color:#ffe1df}.contact-details>a:not(.button){font-size:clamp(18px,2vw,27px);border-bottom:1px solid #ff8d8a;display:block;width:fit-content;overflow-wrap:anywhere}.light{background:#fff;color:var(--ink);margin-top:30px}footer{margin:0 5%;padding:34px 0;display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:12px;color:var(--muted)}footer strong{font-size:11px;color:var(--ink)}footer p{margin:5px 0 0}footer a{white-space:nowrap}.skip{position:fixed;top:-100px;background:#fff;padding:12px;z-index:9}.skip:focus{top:0}@media(min-width:1600px){header,.hero,.proof,footer{max-width:1440px;margin-left:auto;margin-right:auto}.section{padding-left:max(5%,calc((100vw - 1440px)/2));padding-right:max(5%,calc((100vw - 1440px)/2))}}@media(max-width:1000px){nav{gap:18px}.hero{gap:30px;grid-template-columns:1.1fr 1fr}.hero-panel{padding:25px}h1{letter-spacing:-1.7px}.eyebrow{font-size:10px}.service{padding:24px}.industry-grid{grid-template-columns:repeat(2,1fr);gap:35px}.contact-grid{gap:6%}.process{gap:14px}.process h3{font-size:15px}}@media(max-width:700px){header{height:auto;padding:18px 0;flex-wrap:wrap;gap:20px}.brand img{width:48px;height:48px}.brand>span{font-size:22px}.brand small{font-size:9px}nav{width:100%;justify-content:space-between;gap:8px;font-size:12px}.nav-contact{padding:7px 9px}.nav-contact span{margin-left:8px}.hero{grid-template-columns:1fr;margin-top:34px}.hero h1{font-size:clamp(39px,9.6vw,65px)}.hero-bottom{margin-top:30px}.hero-panel{padding:28px}.panel-title{font-size:44px}.proof{gap:10px;padding-bottom:30px;margin-top:32px}.proof>div{padding-left:10px}.proof strong{font-size:19px;letter-spacing:-.5px}.proof span{font-size:12px;margin-top:5px}.section{padding-top:60px;padding-bottom:60px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:22px}.service-grid{grid-template-columns:1fr}.service.featured{grid-row:auto}.service{min-height:auto;padding:28px}.service h3,.featured h3{font-size:28px;margin-top:22px}.service a{padding-top:28px}.network{grid-template-columns:1fr;gap:40px}.industry-grid{gap:30px 20px}.industry-grid h3{font-size:19px}.process{grid-template-columns:1fr}.process li{padding:17px 0 2px 38px;position:relative}.process span{position:absolute;left:0;top:20px}.process h3{margin:0 0 4px;font-size:18px}.contact-grid{grid-template-columns:1fr;gap:35px}.contact h2{font-size:43px}.contact-details>a:not(.button){font-size:24px}footer{flex-wrap:wrap;gap:18px}footer>p{order:3;width:100%}.actions{gap:18px}.button{padding:14px 18px;gap:24px}.text-link{font-size:13px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Photography: locally hosted, reserved dimensions and responsive crops. */
.photo-hero{padding:0;min-height:580px;border-top:0;isolation:isolate;background:#171b1e}
.photo-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;z-index:-2}
.photo-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,16,20,.45),rgba(10,16,20,0) 35%,rgba(10,16,20,.94));z-index:-1}
.photo-hero-top{display:flex;flex-direction:column;gap:7px;margin:28px 30px;font-size:10px;letter-spacing:1.5px;color:#fff}
.photo-hero-top>span{color:#d3d8da;font-size:9px}
.photo-hero-caption{margin:0 30px 29px}.photo-label{display:block;font-size:10px;letter-spacing:1.5px;color:#ffc1be;margin-bottom:16px}
.photo-hero-caption p{font:600 clamp(30px,3vw,47px)/1.14 Manrope,Arial,sans-serif;letter-spacing:-1.4px;margin:0 0 28px}
.photo-line{border-top:1px solid #ffffff50;padding-top:16px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.4px}.photo-line b{font-size:20px;line-height:1}
.service-photo{display:block;width:calc(100% + 64px);max-width:none;height:225px;object-fit:cover;margin:27px -32px 0}.featured h3{margin-top:30px;font-size:39px}
.industry-grid{gap:24px}.industry-grid article{border-top:0;padding-top:0}.industry-photo{display:block;width:100%;height:210px;object-fit:cover;margin:0 0 22px;background:#e9edef}.industrial-robot{object-position:center 43%}.industry-grid h3{margin-top:13px}
@media(max-width:1000px){.service-photo{width:calc(100% + 48px);margin-left:-24px;margin-right:-24px}.photo-hero{min-height:540px}.industry-photo{height:240px}}
@media(max-width:700px){.photo-hero{min-height:490px;padding:0}.photo-hero-caption p{font-size:38px}.service-photo{width:calc(100% + 56px);margin-left:-28px;margin-right:-28px;height:240px}.industry-photo{height:170px}.industry-grid{gap:30px 18px}}
@media(max-width:420px){.industry-grid{grid-template-columns:1fr}.industry-photo{height:230px}.photo-hero{min-height:460px}}

header nav{gap:22px}header nav a{padding:12px 0;white-space:nowrap}header nav a[aria-current=page]{color:var(--red);box-shadow:inset 0 -2px var(--red)}
.page-banner{position:relative;isolation:isolate;min-height:440px;display:flex;align-items:flex-end;background:#152126;color:#fff;overflow:hidden}.page-banner>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover}.page-banner:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(9,17,22,.88),rgba(9,17,22,.36) 70%,rgba(9,17,22,.15))}.banner-copy{padding:70px 5%;width:100%}.banner-copy h1{font-size:clamp(40px,5.4vw,76px);margin:0 0 20px;letter-spacing:-2px}.banner-copy>p:last-child{font-size:22px;margin:0;color:#eef1f3}.banner-copy .eyebrow{color:#ffd3d1}.industries-banner>img{object-position:center 38%}.products-banner>img{object-position:center 47%}.breadcrumbs{display:flex;gap:15px;padding:22px 5%;font-size:13px;border-bottom:1px solid var(--line);color:var(--muted)}.breadcrumbs a{color:var(--ink)}.lead{font-size:18px;color:var(--muted);max-width:800px;line-height:1.8}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:38px 0}.detail-grid article{border-top:2px solid var(--red);padding:28px;background:#f4f6f7}.detail-grid h3{font-size:24px;line-height:1.3;margin:20px 0 15px}.detail-grid p{color:var(--muted);margin-bottom:0}.soft{background:#f4f6f7}.soft .detail-grid article{background:white}.page-cta{margin:0 5%;padding:65px 0;display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid var(--line)}.page-cta h2{font-size:36px}.page-cta p:last-child{margin:0;color:var(--muted)}.page-cta .button{white-space:nowrap}.explore{padding-bottom:35px}.explore-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:35px}.explore-grid>a{display:block;border:1px solid var(--line);padding:27px;transition:border-color .2s}.explore-grid>a:hover{border-color:var(--red)}.explore-grid span{color:var(--red);font-size:12px}.explore-grid h3{font-size:23px;margin:16px 0 10px}.explore-grid p{color:var(--muted);font-size:14px}.explore-grid b{font-size:13px}.page-content{padding-top:65px}
@media(max-width:1050px){header{height:auto;min-height:106px;flex-wrap:wrap;padding:20px 0}header nav{gap:23px;flex-wrap:wrap}.detail-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){header nav{display:grid;grid-template-columns:repeat(3,1fr);width:100%;gap:5px 18px;font-size:13px}header nav a{padding:8px 0}.page-banner{min-height:340px}.banner-copy{padding:50px 5%}.banner-copy h1{font-size:42px;letter-spacing:-1.5px}.banner-copy>p:last-child{font-size:18px}.banner-copy .eyebrow{font-size:9px;letter-spacing:1.3px}.detail-grid,.explore-grid{grid-template-columns:1fr}.page-cta{flex-direction:column;align-items:flex-start;padding:48px 0}.page-cta h2{font-size:30px}.lead{font-size:16px}.detail-grid article{padding:24px}.explore{padding-bottom:25px}}
