@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');:root{--bg:#0b1321;--panel:#111e30;--ink:#edf4ff;--muted:#9aabc0;--cyan:#65d6e6;--line:#26364b;--light:#f2f5f7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 'DM Sans',sans-serif}h1,h2,h3,.logo{font-family:'Space Grotesk',sans-serif;line-height:1.12;letter-spacing:-.045em}a{color:inherit;text-decoration:none}a:hover{color:var(--cyan)}.topbar{height:84px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 max(5vw,24px);border-bottom:1px solid var(--line);background:#0b1321ee;position:sticky;top:0;z-index:10;backdrop-filter:blur(14px)}.logo{font-size:21px;font-weight:700;letter-spacing:-.05em;white-space:nowrap}.mark{display:inline-flex;background:var(--cyan);color:#071323;width:37px;height:37px;align-items:center;justify-content:center;border-radius:7px;margin-right:9px;font-size:17px}.dot{color:var(--cyan)}nav{display:flex;gap:32px;font-size:13px;color:#c1cddd}nav a,.nav-cta{white-space:nowrap}.nav-cta{border:1px solid #60768d;border-radius:5px;padding:10px 16px;font-size:13px}.hero{min-height:680px;display:grid;grid-template-columns:1.2fr .8fr;max-width:1600px;margin:auto;padding:112px max(5vw,24px) 85px;gap:35px;overflow:hidden}.eyebrow,.kicker,.num,.tag{color:var(--cyan);font-weight:700;font-size:11px;letter-spacing:.16em}.pulse{display:inline-block;width:8px;height:8px;background:var(--cyan);border-radius:50%;margin-right:9px;box-shadow:0 0 18px var(--cyan)}h1{font-size:clamp(46px,5.4vw,84px);margin:26px 0}h1 em{color:var(--cyan);font-style:normal}.lead{font-size:19px;max-width:660px;color:#b7c7da;line-height:1.7}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:34px 0 62px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;padding:15px 21px;border-radius:5px;font:700 13px 'DM Sans',sans-serif;cursor:pointer}.primary{background:var(--cyan);color:#081421;border:1px solid var(--cyan)}.primary:hover{background:#9cf1f9;color:#081421}.outline{border:1px solid #52677f;color:#e6f1fa}.metrics{display:flex;gap:30px;flex-wrap:wrap}.metrics div{border-left:1px solid #466178;padding-left:18px;display:grid;gap:3px}.metrics strong{font:700 21px 'Space Grotesk',sans-serif}.metrics span{font-size:11px;color:var(--muted)}.hero-art{position:relative;min-height:490px;display:grid;place-items:center}.art-grid{position:absolute;inset:0;background-image:linear-gradient(#4f6c8622 1px,transparent 1px),linear-gradient(90deg,#4f6c8622 1px,transparent 1px);background-size:35px 35px;mask-image:radial-gradient(ellipse,black,transparent 75%)}.orbit{position:absolute;border:1px solid #4e8ca977;border-radius:50%;width:min(35vw,420px);aspect-ratio:1;transform:rotate(-25deg) scaleY(.65)}.orbit2{transform:rotate(52deg) scaleY(.75);border-color:#65d6e644}.center-icon{display:flex;align-items:center;justify-content:center;width:185px;height:185px;background:radial-gradient(circle at 40% 30%,#1e5066,#10253c 68%);border:1px solid #4c92ac;border-radius:50%;box-shadow:0 0 100px #2b9dc22c;font:700 31px 'Space Grotesk',sans-serif;z-index:1}.center-icon span{color:var(--cyan);margin:0 7px}.art-label{position:absolute;color:#92c4d1;font:700 10px 'DM Sans',sans-serif;letter-spacing:.1em}.label1{top:17%;left:5%}.label2{bottom:19%;right:0}.label3{top:24%;right:0}.trustbar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 5vw;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center}.trustbar span{font-size:10px;letter-spacing:.18em;color:var(--muted)}.trustbar div{font-size:13px;letter-spacing:.06em;font-weight:700;color:#c1cdd9}.trustbar b{color:var(--cyan);margin:0 10px}.section{padding:100px max(5vw,24px);max-width:1600px;margin:auto;scroll-margin-top:85px}.section-head{display:grid;grid-template-columns:1.1fr .65fr;gap:60px;align-items:end;margin-bottom:45px}.section-head p{max-width:440px;color:var(--muted)}h2{font-size:clamp(37px,4vw,61px);margin:16px 0 0}h3{font-size:25px;margin:18px 0}.engagement-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.engage{background:#132338;border:1px solid #34465c;border-radius:9px;padding:38px;min-height:390px}.engage.highlighted{background:linear-gradient(135deg,#173a4a,#142238);border-color:#398da0}.engage-symbol{font-size:58px;color:var(--cyan);height:85px}.engage p,.service p,.project p{color:#a9bace}.engage ul{padding-left:20px;color:#c5d3e0;font-size:14px}.engage a,.service a{color:var(--cyan);font-weight:700;font-size:13px}.dark-section{max-width:none;background:#101b2b}.dark-section>.section-head,.dark-section>.services-grid{max-width:1450px;margin-left:auto;margin-right:auto}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#33445a;border:1px solid #33445a}.service{padding:32px;background:#101b2b;min-height:270px}.service:hover{background:#15273b}.service h3{font-size:23px}.service p{font-size:14px;min-height:92px}.projects{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.project{padding:30px;border:1px solid var(--line);border-radius:7px;background:#101d2e}.project>span{font-size:10px;color:var(--cyan);font-weight:700;letter-spacing:.12em}.project small{color:#b7e8ef}.note{font-size:12px;color:var(--muted);margin-top:22px}.about{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-top:1px solid var(--line)}.about p{color:#b8c8da}.about-links{display:flex;gap:22px;flex-wrap:wrap;margin-top:25px}.about-links a{color:var(--cyan);font-weight:700;font-size:13px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:70px;background:#142338;max-width:none;padding-left:max(5vw,24px);padding-right:max(5vw,24px)}.contact>div>p{color:#b9cadb;max-width:490px}.contact-details{display:grid;gap:10px;margin-top:40px}.contact-details a{color:var(--cyan);font-weight:700}.contact-details span{font-size:13px;color:var(--muted)}.contact-form{display:grid;gap:8px;max-width:580px}.contact-form label{font-size:12px;font-weight:700;margin-top:12px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid #3d5369;border-radius:5px;background:#0e1b2d;color:#f0f7ff;padding:14px;font:inherit}.contact-form button{margin-top:12px}.form-note{font-size:11px;color:var(--muted)}footer{padding:28px 5vw;display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:12px}footer div{display:flex;gap:20px}@media(max-width:950px){.topbar nav{display:none}.hero{grid-template-columns:1fr;padding-top:75px}.hero-art{display:none}.section-head,.about,.contact{grid-template-columns:1fr;gap:24px}.services-grid,.projects{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.topbar{height:70px}.hero{min-height:auto;padding-bottom:60px}h1{font-size:43px}.lead{font-size:16px}.metrics{gap:18px}.engagement-grid,.services-grid,.projects{grid-template-columns:1fr}.section{padding-top:70px;padding-bottom:70px}.engage{padding:25px;min-height:auto}.service p{min-height:auto}.contact{gap:30px}footer{flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}/* V2 editorial engineering direction */
:root{--accent:#b8d4df}
body{background:#10171c;color:#e8ecec}
.topbar{background:rgba(13,21,26,.96);border-bottom:1px solid #33414a}
.hero{min-height:690px}
.hero-art{display:none!important}
.hero-copy{max-width:950px!important}
.hero h1{font-weight:650;letter-spacing:-.055em;line-height:1.07;max-width:950px}
.hero h1 em{font-style:normal;color:#a9c5d0}
.hero .lead{max-width:690px}
.button.primary,.nav-cta{background:#d9e5e9!important;color:#14212a!important;border-color:#d9e5e9!important}
.button.primary:hover,.nav-cta:hover{background:white!important}
.section{scroll-margin-top:75px}
.service,.engage,.project{border-radius:3px!important}
.service{border-top:2px solid #839da8}
.trustbar{letter-spacing:.06em}
.kicker,.eyebrow{letter-spacing:.13em}
.project{position:relative}
.project:before{content:'ENGINEERING / FIELD EXPERIENCE';display:block;font-size:.66rem;letter-spacing:.14em;color:#819eae;margin-bottom:12px}
.contact{background:#19252c}
@media(max-width:760px){.hero{min-height:auto;background-position:60% center}.hero h1{font-size:clamp(2.5rem,11vw,4.4rem)}.hero-copy{padding-top:75px;padding-bottom:65px}}

/* V3: mobile-first refinements */
.mobile-menu-toggle{display:none}
@media(max-width:950px){
 .topbar{position:sticky;gap:10px;padding-inline:20px}
 .mobile-menu-toggle{display:flex;align-items:center;justify-content:center;margin-left:auto;min-width:44px;min-height:44px;border:1px solid #566a78;background:transparent;color:#eaf3f6;border-radius:5px;font-size:23px;cursor:pointer}
 .topbar nav{display:none;position:absolute;top:100%;left:0;right:0;background:#111d25;padding:14px 20px 22px;border-bottom:1px solid #455560;flex-direction:column;gap:0;box-shadow:0 15px 24px #0007}
 .topbar nav.is-open{display:flex}
 .topbar nav a{padding:13px 4px;font-size:15px;border-bottom:1px solid #263944}
 .hero{grid-template-columns:minmax(0,1fr);padding:56px 24px 62px;min-height:auto}
 .hero-copy{min-width:0;max-width:100%}
 .hero h1{font-size:clamp(37px,7.7vw,67px);overflow-wrap:normal;letter-spacing:-.05em}
 .hero h1 br{display:none}
 .hero .lead{font-size:17px;line-height:1.55}
 .hero .actions{margin:28px 0 36px}
 .hero-art{display:none!important}
 .trustbar div{line-height:2}
}
@media(max-width:650px){
 html,body{max-width:100%;overflow-x:clip}
 .topbar{height:68px;padding-inline:16px}
 .logo{font-size:18px}.mark{width:34px;height:34px;font-size:15px}
 .nav-cta{display:none}
 .hero{padding:49px 20px 55px;background-position:68% center}
 .hero .eyebrow{font-size:10px;line-height:1.7;letter-spacing:.10em}
 .hero h1{font-size:clamp(34px,9.2vw,49px);line-height:1.12;margin:20px 0 22px;letter-spacing:-.055em}
 .hero .lead{font-size:16px;line-height:1.55}
 .actions{display:grid;grid-template-columns:1fr;gap:12px}
 .actions .button{width:100%;min-height:50px;padding:14px 16px;justify-content:center;text-align:center}
 .metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 10px}
 .metrics div{min-width:0;padding-left:12px}
 .metrics div:last-child{grid-column:1/-1}
 .trustbar{padding:23px 20px}.trustbar div{font-size:12px;overflow-wrap:anywhere}
 .section{padding:65px 20px}.section-head{gap:14px;margin-bottom:30px}
 h2{font-size:clamp(32px,8.5vw,43px)}h3{font-size:23px}
 .engage{padding:24px}.service,.project{padding:24px}
 .contact{padding:65px 20px}.contact-form input,.contact-form select,.contact-form textarea{font-size:16px}
 footer{padding:24px 20px}
}

/* V4 language selector - accessible on desktop and mobile */
.lang-switch{display:flex;gap:3px;align-items:center;border:1px solid #405362;border-radius:6px;padding:3px;margin-left:auto;flex-shrink:0}
.lang-switch button{min-width:35px;min-height:34px;border:0;background:transparent;color:#b8cbd5;font:700 12px 'DM Sans',sans-serif;cursor:pointer;border-radius:4px}
.lang-switch button.active,.lang-switch button[aria-pressed="true"]{background:#d9e5e9;color:#14212a}
.lang-switch button:focus-visible{outline:2px solid #65d6e6;outline-offset:2px}
.topbar nav{margin-left:auto}
@media(max-width:1100px){.topbar{gap:12px}.topbar nav{gap:14px}}
@media(max-width:950px){.lang-switch{margin-left:auto}.mobile-menu-toggle{margin-left:0}}
@media(max-width:650px){.lang-switch button{min-width:31px;min-height:36px;font-size:11px}.logo{font-size:16px}.topbar{gap:8px}.mobile-menu-toggle{min-width:42px}}
@media(max-width:380px){.logo{font-size:14px}.mark{margin-right:4px;width:29px;height:29px}.lang-switch{gap:0;padding:2px}.lang-switch button{min-width:28px}.topbar{padding-inline:10px}}

/* V5: engineering contractor positioning */
.contract-proof{font-size:.82rem;letter-spacing:.025em;color:#a9c5d0;border-left:2px solid #91afbc;padding-left:14px;margin:20px 0}
@media(max-width:650px){.hero h1{overflow-wrap:break-word;hyphens:auto}.section-head p{max-width:100%}.topbar .logo{white-space:nowrap}}

/* V6 portfolio access */
.portfolio-cta{display:flex;justify-content:space-between;align-items:center;gap:24px;border:1px solid #385265;background:#13242d;padding:23px 26px;margin-top:26px}.portfolio-cta p{color:#becdd3;font-size:14px;margin:7px 0 0}.portfolio-cta .button{white-space:nowrap}.portfolio-cta .kicker{font-size:10px}@media(max-width:650px){.portfolio-cta{flex-direction:column;align-items:stretch;padding:23px 18px}.portfolio-cta .button{width:100%;white-space:normal;text-align:center}}


/* ==========================================================
   V7 GRAPHITE & TITANIUM — Industrial Engineering Design System
   ========================================================== */
:root {
 --bg:#0B0F14; --panel:#151D26; --ink:#E7EDF2; --muted:#A7B5C2;
 --cyan:#83B7D5; --line:#2B3946; --accent:#83B7D5; --light:#DCE9F1;
 --surface-2:#10171F; --surface-3:#1B2732; --focus:#A6D6F2;
}
html{color-scheme:dark;scroll-padding-top:84px}
body{background:var(--bg);color:var(--ink)}
body::selection{background:#36576c;color:#fff}
.topbar{background:rgba(11,15,20,.96);border-bottom-color:#283743;box-shadow:0 10px 35px rgba(0,0,0,.15)}
.mark{background:#223B4B;color:#BDE4F8;border:1px solid #41657A}
.dot{color:#83B7D5}
nav{color:#C1CCD5}nav a:hover{color:#B0D4E9}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--focus);outline-offset:3px}
.lang-switch{border-color:#3D4C5B;background:#111922}
.lang-switch button{color:#B5C4CF}
.lang-switch button.active,.lang-switch button[aria-pressed='true']{background:#DCE9F1;color:#111C25}
.nav-cta,.button.primary{background:#DCE9F1!important;color:#111C25!important;border:1px solid #DCE9F1!important}
.nav-cta:hover,.button.primary:hover{background:#FFFFFF!important;border-color:#FFFFFF!important}
.button.outline{border-color:#566877;background:#111923;color:#ECF2F5}
.button.outline:hover{background:#1B2A36;color:white}
.hero{background:radial-gradient(ellipse at 90% 5%,rgba(57,91,112,.28),transparent 42%),linear-gradient(120deg,#0B0F14 5%,#101921 55%,#0D121A 100%);min-height:675px}
.hero h1{color:#F1F5F8;letter-spacing:-.055em}
.hero h1 em{color:#83B7D5}
.hero .lead{color:#B9C7D3}
.eyebrow,.kicker,.num,.tag,.pulse + span{color:#83B7D5}
.pulse{background:#83B7D5;box-shadow:0 0 14px #537f98}
.metrics div{border-color:#445668}.metrics span{color:#A7B5C2}
.trustbar{background:#0E151D;border-color:#263543}
.trustbar div{color:#D2DEE6}.trustbar b{color:#83B7D5}
.section{color:#E7EDF2}.section-head p{color:#ADBFCC}
.dark-section{background:#10171F}
.engage,.engage.highlighted{background:#151D26;border:1px solid #30404D;box-shadow:none}
.engage.highlighted{background:linear-gradient(140deg,#1B2B36,#151D26);border-color:#52758B}
.engage-symbol{color:#83B7D5}
.engage p,.service p,.project p{color:#B3C1CE}
.engage ul{color:#CAD5DE}
.engage a,.service a,.about-links a{color:#91C3E0}
.services-grid{border-color:#2A3947;background:#2A3947}
.service{background:#151D26;border-top:2px solid #6A8EA6}
.service:hover{background:#1B2732}
.project{background:#151D26;border:1px solid #2E3E4D;box-shadow:0 10px 26px rgba(0,0,0,.12)}
.project:hover{border-color:#597B91;background:#1A2530}
.project>span,.project small{color:#91C3E0}
.project:before{color:#92AABB}
.about{border-color:#2B3946}.about p{color:#B6C6D1}
.contact{background:#111A23;border-top:1px solid #293946}
.contact>div>p{color:#B9C9D4}
.contact-details a{color:#A6D6F2}
.contact-form input,.contact-form select,.contact-form textarea{background:#0B1219;border-color:#465A69;color:#EAF1F6}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#83B7D5}
footer{background:#0B0F14;border-top:1px solid #2B3946}
.portfolio-cta{background:linear-gradient(100deg,#192631,#131D26);border-color:#40576A;border-radius:5px}
.portfolio-cta p{color:#B8C7D2}
.contract-proof{border-color:#83B7D5;color:#BDD2DE}
@media(max-width:950px){.topbar nav{background:#111A23;border-color:#334556}}
@media(max-width:650px){.hero{min-height:auto;background:radial-gradient(ellipse at 95% 3%,rgba(66,105,130,.18),transparent 60%),#0B0F14}}

/* Direct link and cover for the warehouse case study on the homepage */
.project-link{display:block;color:inherit;text-decoration:none;transition:border-color .18s ease,transform .18s ease}
.project-link:hover,.project-link:focus-visible{color:inherit;border-color:#75b7d5;transform:translateY(-2px)}
.project-cover{display:block;width:calc(100% + 48px);max-width:none;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:center;margin:-24px -24px 22px;border-bottom:1px solid #2e3e4d}
.project-view-link{display:inline-block;margin-top:16px;color:#91c3e0;font-size:13px;font-weight:700}
.project-link:focus-visible{outline:2px solid #91c3e0;outline-offset:3px}
@media(max-width:650px){.project-cover{margin:-24px -24px 18px;aspect-ratio:16/9}}
