:root{--ink:#121615;--paper:#f2f3ef;--muted:#58605c;--line:#cfd3cc;--accent:#e86b37;--display:"Arial Black","Helvetica Neue",Arial,sans-serif;--body:"Helvetica Neue",Arial,sans-serif;--gutter:clamp(1.3rem,5vw,5.25rem)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:6.5rem}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:1rem;line-height:1.65;-webkit-font-smoothing:antialiased}
button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit;text-decoration:none}
button{font:inherit}
img{display:block;width:100%;height:auto}
.arrow-icon{display:inline-block;width:1em;height:1em;vertical-align:-.1em;flex-shrink:0}
figure,p,h1,h2,h3{margin:0}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:6px}
[hidden]{display:none!important}
::selection{background:var(--accent);color:#121615}
.page-width{width:min(100% - var(--gutter)*2,1360px);margin-inline:auto}
.section-space{padding-block:6rem}
.section-label{display:flex;align-items:center;gap:1.5rem;font-size:.75rem;font-weight:700;letter-spacing:.1em;line-height:1.5;margin-bottom:3.5rem}
.label-line{height:1px;flex:1;background:currentColor;opacity:.25}
h2{font-family:var(--display);font-size:clamp(2.1rem,3.6vw,3.6rem);font-weight:900;line-height:1.02;letter-spacing:-.055em}
.skip-link{position:fixed;top:-5rem;left:1rem;z-index:30;padding:.7rem 1rem;background:white;color:black}
.skip-link:focus{top:1rem}
.site-header{position:sticky;top:0;z-index:20;background:var(--ink);color:#fff}
.header-inner{width:min(100% - var(--gutter)*2,1360px);margin:auto;min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:2rem}
.brand-home{display:inline-flex;align-items:center;gap:.85rem;flex-shrink:0}
.brand-home img{filter:invert(1)}
.brand-symbol{width:44px;height:54px;object-fit:contain;flex-shrink:0}
.brand-lettering{width:174px;height:auto}
.desktop-nav{display:flex;gap:clamp(1.2rem,2.5vw,2.8rem);margin-left:auto;margin-right:2.5rem;font-size:.875rem}
.desktop-nav a{padding:1rem 0;color:#d6dad5;transition:color .15s}
.desktop-nav a:hover,.desktop-nav a[aria-current]{color:#fff;text-decoration:underline;text-underline-offset:6px}
.header-contact{font-size:.875rem;display:flex;align-items:center;gap:1.4rem;white-space:nowrap;border-bottom:1px solid #758078;padding:.3rem 0}
.header-contact span{color:var(--accent);font-size:1.3rem}
.menu-toggle{display:none;background:none;border:0;width:44px;height:44px;padding:10px;color:#fff}
.menu-toggle span{display:block;height:2px;background:currentColor;margin:6px 0;transition:transform .2s}
.mobile-menu{padding:1rem var(--gutter) 1.5rem;border-top:1px solid #39403b;max-height:calc(100dvh - 84px);overflow:auto}
.mobile-menu a{display:block;font-size:1.2rem;padding:.6rem 0}
.hero{isolation:isolate;position:relative;min-height:690px;height:min(790px,calc(100svh - 94px));color:white;display:flex;align-items:center;overflow:hidden;background:#273c40}
.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:64% 42%;z-index:-3}
.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(8,21,25,.88) 0%,rgba(8,21,25,.66) 37%,rgba(8,21,25,.08) 72%),linear-gradient(0deg,rgba(8,18,24,.55),transparent 28%)}
.hero-content{padding-top:1rem;padding-bottom:5rem}
.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-bottom:1.7rem}
.eyebrow.light{color:#f0f2eb}
h1{font-family:var(--display);font-size:clamp(3.3rem,6.3vw,6.1rem);font-weight:900;line-height:.98;letter-spacing:-.055em;max-width:880px}
.hero-description{font-size:1.1rem;line-height:1.65;margin-top:1.75rem;color:#e3e7e2;max-width:440px}
.button{display:inline-flex;align-items:center;gap:2.5rem;min-height:50px;padding:.85rem 1.3rem;font-size:.875rem;font-weight:600;transition:background .2s,color .2s}
.button span{font-size:1.3rem;font-weight:400;line-height:1}
.button-light{background:var(--paper);color:var(--ink);margin-top:2rem}
.button-light:hover{background:var(--accent);color:var(--ink)}
.hero-bottom{position:absolute;bottom:1.7rem;left:0;right:0;display:flex;justify-content:space-between;align-items:center;font-size:.75rem;letter-spacing:.055em;gap:1rem;color:#edf0eb}
.hero-bottom a{font-size:.875rem;letter-spacing:0;display:flex;gap:2rem;align-items:center}
.hero-bottom a span{font-size:1.3rem}
.proof-strip{background:#e4e7df;border-bottom:1px solid var(--line)}
.proof-grid{display:grid;grid-template-columns:1fr 1fr 1.18fr;padding-block:2rem}
.proof-grid>div{display:flex;flex-direction:column;gap:.15rem;padding:0 2rem;border-left:1px solid #bac2b8}
.proof-grid>div:first-child{padding-left:0;border-left:0}
.proof-grid strong{font-size:clamp(1.8rem,3vw,2.6rem);font-family:var(--display);font-weight:900;letter-spacing:-.05em;line-height:1.15}
.proof-grid span{font-size:.8rem;color:#424a45}
.about-layout{display:grid;grid-template-columns:1fr .85fr;gap:clamp(3rem,10vw,10rem);align-items:center}
.about-copy h2{margin-bottom:2.3rem}
.about-copy p{max-width:465px;color:var(--muted);margin-bottom:1.2rem}
.about-copy .lead{font-size:1.5rem;line-height:1.35;color:var(--ink);font-weight:500;letter-spacing:-.03em;margin-bottom:1.5rem}
.about-copy .text-note{font-size:.8rem;font-weight:700;color:var(--ink);border-top:1px solid var(--line);padding-top:1.4rem;margin-top:2rem;margin-bottom:0}
.about-image{position:relative}
.about-image img{aspect-ratio:4/4.5;object-fit:cover;object-position:78% 50%}
.about-image figcaption{display:flex;justify-content:space-between;gap:1rem;padding-top:.8rem;font-size:.75rem;letter-spacing:.05em;line-height:1.6;color:var(--muted)}
.services{background:#e8ebe5}
.services-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(3rem,7vw,7rem)}
.services-intro>p{margin-top:1.5rem;max-width:330px;color:var(--muted)}
.service-image{max-width:355px;margin-top:3rem}
.service-image img{aspect-ratio:4/3;object-fit:cover}
.service-image figcaption{font-size:.8rem;margin-top:.7rem;color:var(--muted)}
.service-list{border-top:1px solid #87958a}
.service-list details{border-bottom:1px solid #b5bdb3}
.service-list summary{list-style:none;display:flex;align-items:center;gap:1rem;padding:1.3rem 0;cursor:pointer}
.service-list summary::-webkit-details-marker{display:none}
.service-number{font-size:.75rem;color:var(--muted);width:1.5rem;flex-shrink:0;align-self:center}
.service-list h3{font-weight:500;font-size:clamp(1.1rem,1.7vw,1.4rem);letter-spacing:-.025em;line-height:1.35}
.service-list small{font-size:.7em;font-weight:400;color:var(--muted);white-space:nowrap}
.expand-icon{width:24px;height:24px;position:relative;margin-left:auto;flex-shrink:0}
.expand-icon:before,.expand-icon:after{content:"";width:12px;height:1px;background:var(--ink);position:absolute;top:12px;left:6px}
.expand-icon:after{transform:rotate(90deg);transition:transform .15s}
details[open] .expand-icon:after{transform:rotate(0)}
.service-list details[open] summary{padding-bottom:.8rem}
.service-list details[open] .service-number{color:#a73912}
.service-list details p{margin-left:2.5rem;margin-right:2rem;padding-bottom:1.5rem;font-size:.95rem;color:var(--muted);max-width:470px}
.experience{background:var(--ink);color:var(--paper);padding-bottom:0}
.experience-top{display:grid;grid-template-columns:1.5fr 1fr;gap:4rem;align-items:end}
.experience-top p{max-width:290px;margin-bottom:.3rem;color:#bfc8c0}
.countries{display:flex;flex-wrap:wrap;column-gap:2rem;row-gap:.8rem;max-width:1000px;margin-top:3.5rem;margin-bottom:3.4rem}
.countries span{font-size:1.05rem;color:#e6eae3}
.project-highlights{display:grid;grid-template-columns:1fr 1fr;gap:3rem;padding:2rem 0 2.6rem;border-top:1px solid #49524b}
.highlight-label{font-size:.75rem;letter-spacing:.06em;color:#aeb8af}
.project-highlights h3{font-size:1.5rem;font-weight:500;letter-spacing:-.035em;margin-top:.4rem;margin-bottom:.65rem}
.project-highlights p{max-width:410px;font-size:.95rem;color:#bfc8c0}
.oem-row{border-top:1px solid #49524b;padding:2rem 0 3.3rem;display:flex;gap:2rem;align-items:start}
.oem-label{font-size:.8rem;color:#aeb8af;max-width:110px;line-height:1.6}
.oem-names{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;flex:1}
.oem-names span{font-size:clamp(1.1rem,1.8vw,1.7rem);font-weight:700;letter-spacing:-.025em}
.oem-names small{display:block;font-size:.75rem;line-height:1.6;color:#aeb8af;margin-top:.4rem}
.experience-photo{height:clamp(320px,42vw,620px);position:relative}
.experience-photo img{height:100%;object-fit:cover;object-position:50% 45%}
.experience-photo:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(9,20,21,.65));pointer-events:none}
.experience-photo figcaption{position:absolute;z-index:1;bottom:2rem;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;align-items:end;gap:1.5rem;color:white}
.experience-photo figcaption span:first-child{font-family:var(--display);font-weight:900;font-size:clamp(1.7rem,3vw,3rem);letter-spacing:-.055em;line-height:1.1}
.experience-photo figcaption span:last-child{font-size:.75rem;letter-spacing:.05em}
.qualification-layout{display:grid;grid-template-columns:1fr 1fr;gap:5rem}
.qualification-layout h2{font-size:clamp(2rem,3.15vw,3rem)}
.qualification-layout p{max-width:340px;margin-top:1.7rem;color:var(--muted)}
.qualification-layout .certificate-note{font-size:.875rem}
.qualification-list{border-top:1px solid var(--line)}
.qualification-list>div{display:flex;align-items:baseline;justify-content:space-between;gap:1.2rem;padding:1.1rem 0;border-bottom:1px solid var(--line);font-size:1rem;line-height:1.5}
.qualification-list strong{font-weight:400;color:var(--muted);font-size:.875rem;text-align:right}
.fieldwork{background:#e6e9e2}
.fieldwork-heading{display:flex;justify-content:space-between;align-items:end;gap:3rem;margin-bottom:2.7rem}
.fieldwork-heading p{color:var(--muted);margin-bottom:.2rem}
.gallery{display:grid;grid-template-columns:1.3fr .8fr;grid-template-rows:auto auto;gap:1.8rem}
.gallery figure{min-width:0}
.gallery img{object-fit:cover}
.gallery figcaption{margin-top:.7rem;font-size:.75rem;letter-spacing:.06em;color:var(--muted)}
.gallery-wide{grid-column:1;grid-row:1}
.gallery-wide img{aspect-ratio:16/8.5;object-position:50% 55%}
.gallery-tall{grid-column:2;grid-row:1/3;display:flex;flex-direction:column}
.gallery-tall img{height:100%;min-height:0;object-position:50% 48%;flex:1}
.gallery-bottom{grid-column:1;grid-row:2}
.gallery-bottom img{aspect-ratio:16/8.5;object-position:50% 48%}
.contact{background:#dedfdb;color:var(--ink);padding:5.5rem 0 4.5rem;position:relative;isolation:isolate;overflow:hidden}
.contact:before{content:"";position:absolute;right:var(--gutter);top:5rem;width:clamp(13rem,24vw,21rem);aspect-ratio:585/702;background:url("assets/deus-ex-turbina-symbol.svg") center/contain no-repeat;opacity:.055;pointer-events:none;z-index:-1}
.contact-heading{display:flex;justify-content:space-between;gap:4rem;align-items:end}
.contact-heading h2{font-size:clamp(4.3rem,10vw,9.7rem);line-height:.9;letter-spacing:-.065em}
.contact-heading p{max-width:350px;line-height:1.8;margin-bottom:.4rem;color:#424b46}
.contact-heading strong{display:block;margin-top:1.4rem;color:var(--ink);font-weight:500}
.contact-details{border-top:1px solid #a8ada6;padding-top:1.5rem;margin-top:3.5rem}
.contact-person{display:flex;align-items:baseline;gap:1rem;margin-bottom:1.1rem;flex-wrap:wrap}
.contact-person strong{font-size:1.25rem;font-weight:600;letter-spacing:-.025em}
.contact-person span{font-size:.875rem;color:#424b46}
.contact-links{display:flex;gap:2.5rem;flex-wrap:wrap}
.contact-links a{border-bottom:1px solid #718077;padding-bottom:.25rem;overflow-wrap:anywhere}
.contact-links a:hover{border-color:var(--ink)}
.site-footer{background:var(--ink);color:#a9b1a9;padding-block:2rem;font-size:.75rem}
.footer-main{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}
.footer-brand .brand-symbol{width:35px;height:42px}
.footer-brand .brand-lettering{width:156px}
.footer-business{display:flex;justify-content:space-between;gap:.5rem 2rem;flex-wrap:wrap;padding-top:1.2rem;margin-top:1.5rem;border-top:1px solid #39403b;font-size:.8rem;line-height:1.7;color:#bac2ba}
.footer-legal{margin-top:.9rem;font-size:.875rem}.footer-legal a{text-decoration:underline;text-underline-offset:.25em}.footer-legal a:hover{color:#fff}
@media(min-width:1600px){.hero{height:790px}.hero-content{padding-bottom:5rem}}
@media(max-width:1100px){.desktop-nav{margin-right:0;gap:1.5rem}.header-inner{gap:1.5rem}.about-layout{gap:4rem}.services-layout{gap:3rem}.qualification-layout{gap:3rem}.service-list h3{font-size:1.15rem}.hero{min-height:640px}.hero h1{font-size:clamp(3.3rem,6.6vw,5.2rem)}}
@media(max-width:850px){.desktop-nav{display:none}.header-contact{margin-left:auto}.menu-toggle{display:block}.header-inner{min-height:82px}.hero{min-height:650px;height:calc(90svh - 82px);max-height:780px}.hero-image{object-position:61% 50%}.hero h1{font-size:clamp(3.35rem,8vw,4.6rem)}.hero-shade{background:linear-gradient(90deg,rgba(8,21,25,.86),rgba(8,21,25,.35) 78%),linear-gradient(0deg,rgba(8,18,24,.6),transparent 38%)}.section-space{padding-block:4rem}.section-label{margin-bottom:2.5rem}.about-layout{gap:2.5rem;grid-template-columns:1fr 1fr}.about-image img{aspect-ratio:3/4.3}.about-image figcaption span:last-child{display:none}.services-layout{grid-template-columns:1fr}.services-intro{display:grid;grid-template-columns:1fr 1fr;column-gap:3rem}.services-intro h2{grid-column:1;grid-row:1}.services-intro>p{grid-column:1;grid-row:2}.service-image{grid-column:2;grid-row:1/3;margin:0;max-width:none}.service-list{margin-top:.3rem}.service-list h3{font-size:1.3rem}.experience-top{grid-template-columns:1.5fr 1fr;gap:2rem}.experience{padding-bottom:0}.countries{column-gap:1.5rem;row-gap:.65rem}.qualification-layout{grid-template-columns:1fr;gap:2.5rem}.qualification-layout>div:first-child{display:grid;grid-template-columns:1.4fr 1fr;gap:2rem}.qualification-layout p{margin-top:0;align-self:end}.oem-row{gap:2rem}.oem-names{gap:2rem}.contact-heading{gap:2rem}.contact-heading p{font-size:.95rem}.proof-grid>div{padding-inline:1.5rem}}
@media(max-width:600px){html{scroll-padding-top:5.6rem}.header-inner{min-height:76px;gap:1.2rem}.brand-home{gap:.65rem}.brand-symbol{width:34px;height:42px}.brand-lettering{width:146px}.header-contact{display:none}.header-contact{font-size:.8rem;gap:.8rem}.menu-toggle{width:38px;height:42px;padding:6px}.hero{height:710px;min-height:0;max-height:none;align-items:end}.hero-image{object-position:63% 50%}.hero-shade{background:linear-gradient(0deg,rgba(8,21,25,.95) 0%,rgba(8,21,25,.8) 44%,rgba(8,21,25,.06) 90%)}.hero-content{padding-top:220px;padding-bottom:5.5rem}.eyebrow{font-size:.75rem;letter-spacing:.09em;margin-bottom:1rem;max-width:250px}.hero h1{font-size:clamp(2.2rem,8.6vw,3.3rem);letter-spacing:-.055em;line-height:1.03}.hero-description{font-size:1rem;margin-top:1.25rem;line-height:1.6}.button-light{margin-top:1.5rem}.hero-bottom{bottom:1.15rem;font-size:.75rem}.hero-bottom>span{max-width:135px;line-height:1.6;letter-spacing:.03em}.hero-bottom a{font-size:.75rem;gap:.7rem}.proof-grid{grid-template-columns:.8fr .7fr 1.3fr;padding-block:1.5rem;gap:0}.proof-grid>div{padding-inline:1rem;gap:.4rem}.proof-grid>div:last-child{padding-right:0}.proof-grid strong{font-size:1.45rem;white-space:nowrap}.proof-grid span{font-size:.75rem;line-height:1.4;max-width:105px}.section-space{padding-block:3.5rem}.section-label{font-size:.75rem;gap:1rem;margin-bottom:2.4rem;letter-spacing:.06em}h2{font-size:clamp(1.9rem,7.4vw,2.5rem);line-height:1.05}.about-layout{grid-template-columns:1fr;gap:2.7rem}.about-copy h2{margin-bottom:1.5rem}.about-copy .lead{font-size:1.35rem}.about-copy p{max-width:none}.about-image img{aspect-ratio:4/4.1;object-position:78% 50%}.about-image figcaption span:last-child{display:inline}.services-layout{gap:1.8rem}.services-intro{display:block}.services-intro>p{margin-top:1.2rem}.service-image{display:none}.service-list summary{padding:1.15rem 0;gap:.65rem}.service-number{width:1.3rem}.service-list h3{font-size:1.12rem}.service-list details p{margin-left:1.95rem;margin-right:1rem}.experience-top{display:block}.experience-top p{margin-top:1.5rem;max-width:310px}.experience{padding-bottom:0}.countries{margin-top:2rem;margin-bottom:2.4rem;column-gap:1.25rem;row-gap:.65rem}.countries span{font-size:.95rem}.oem-row{display:block;padding-bottom:2.5rem}.oem-label{display:block;max-width:none;margin-bottom:1.2rem}.oem-names{justify-content:space-between;gap:1rem 1.2rem}.oem-names span{font-size:.9rem}.experience-photo{height:350px}.experience-photo img{object-position:59% 50%}.experience-photo figcaption{bottom:1.3rem;display:block}.experience-photo figcaption span{display:block}.experience-photo figcaption span:first-child{font-size:1.7rem;margin-bottom:.8rem}.qualification-layout>div:first-child{display:block}.qualification-layout h2{font-size:clamp(1.9rem,7.4vw,2.5rem)}.qualification-layout p{margin-top:1.4rem}.qualification-list>div{font-size:.95rem;gap:1rem}.qualification-list strong{font-size:.8rem}.fieldwork-heading{display:block;margin-bottom:2rem}.fieldwork-heading p{margin-top:1.3rem}.gallery{grid-template-columns:1fr 1fr;gap:1.5rem 1rem}.gallery-wide{grid-column:1/3;grid-row:1}.gallery-wide img{aspect-ratio:4/3}.gallery-tall{grid-column:2;grid-row:2}.gallery-bottom{grid-column:1;grid-row:2;display:flex;flex-direction:column}.gallery-tall img,.gallery-bottom img{height:245px;flex:initial;object-fit:cover}.gallery-tall img{object-position:50% 48%}.gallery-bottom img{object-position:25% 50%}.gallery figcaption{font-size:.75rem;line-height:1.5;letter-spacing:.02em}.contact{padding-block:3.5rem 2.5rem}.contact-heading{display:block}.contact-heading h2{font-size:clamp(4.2rem,17vw,6rem)}.contact-heading p{margin-top:2rem}.contact-heading strong{margin-top:.8rem}.contact-details{margin-top:2rem}.contact-links{flex-direction:column;align-items:flex-start;gap:1rem}.footer-main{flex-wrap:wrap;gap:1rem}.footer-main>span{order:3;width:100%}.footer-brand .brand-lettering{width:146px}.footer-business{display:block}.footer-business>span{display:block}.contact:before{width:13rem;right:-1.5rem;top:5.5rem;opacity:.04}.site-footer{padding-block:1.5rem}}
@media(max-width:1000px){.oem-names{grid-template-columns:repeat(2,1fr);gap:1.5rem 2rem}}
@media(max-width:850px) and (min-width:601px){.qualification-layout .certificate-note{grid-column:1/-1;margin-top:0}}
@media(max-width:600px){.project-highlights{grid-template-columns:1fr;gap:2rem;padding:1.7rem 0 2rem}.project-highlights h3{font-size:1.35rem}.oem-names{gap:1.5rem 1rem}.oem-names span{font-size:1.1rem}.contact-person{display:block}.contact-person span{display:block;margin-top:.4rem}.contact-links{font-size:.95rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
@media print{.site-header,.button,.hero-bottom,.skip-link,.site-footer{display:none}.hero{height:430px;min-height:0}.hero-content{padding-bottom:1rem}h1{font-size:48px}.section-space{padding-block:2rem}.section-label{margin-bottom:1.5rem}.service-list details p{display:block!important}.contact{break-inside:avoid}.gallery img{max-height:250px}.hero,.experience,.contact{print-color-adjust:exact}}
