.scope-section{background:#fff}
.scope-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.scope-card{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:280px;padding:24px;color:#fff;background:var(--navy);background-size:cover;background-position:center;transition:transform .2s,box-shadow .2s}
.scope-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(7,24,39,.35)}
.scope-num{font:11px 'DM Mono';color:#ff9461}
.scope-card h3{margin-top:32px;font-size:17px;text-transform:uppercase;letter-spacing:-.04em;line-height:1.15}
.scope-card p{margin:8px 0 0;color:#c8d5dc;font-size:12px;line-height:1.5;max-width:220px}
.scope-arrow{align-self:flex-end;color:var(--orange);font-size:20px}
.clients-section{background:#fff}
.client-list{display:flex;flex-wrap:wrap;gap:10px}
.client-list span{padding:14px 17px;border:1px solid #d8d8d1;background:#f4f1ea;font:11px 'DM Mono';text-transform:uppercase;letter-spacing:.04em}

html{scroll-padding-top:88px}
body{overflow-x:hidden}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:56px}
.contact-form{display:flex;flex-direction:column;gap:22px}
.form-field{display:flex;flex-direction:column;gap:8px}
.form-field label{font:500 11px 'DM Mono';letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.form-field input,.form-field textarea{border:1px solid var(--line);background:#fff;padding:14px 16px;font:15px 'Manrope',sans-serif;color:var(--ink)}
.form-field textarea{resize:vertical;min-height:130px}
.form-field input:focus,.form-field textarea:focus{outline:2px solid var(--orange-deep);outline-offset:1px;border-color:var(--orange-deep)}
.hidden-field{position:absolute;left:-9999px}
.contact-form .button{align-self:flex-start;border:0;cursor:pointer}
.contact-form .button[disabled]{opacity:.65;cursor:progress}
.form-status{min-height:1.25em;margin:-6px 0 0;color:var(--muted);font-size:14px;line-height:1.4}
.form-status.is-success{color:#0f6b43}
.form-status.is-error{color:#a33212}
.map-embed{border:1px solid var(--line);min-height:420px}
.map-embed iframe{width:100%;height:100%;min-height:420px;border:0;display:block}
.map-note{margin:12px 0 0;color:var(--muted);font-size:12px}

.hero-image-home{background-image:linear-gradient(90deg,rgba(4,17,28,.96) 0%,rgba(4,17,28,.76) 42%,rgba(4,17,28,.05) 100%),url('images/hero-home.jpg')}
.hero-image-company-profile{background-image:linear-gradient(90deg,rgba(4,17,28,.96) 0%,rgba(4,17,28,.76) 42%,rgba(4,17,28,.05) 100%),url('images/hero-company-profile.jpg')}
.hero-image-capabilities{background-image:linear-gradient(90deg,rgba(4,17,28,.96) 0%,rgba(4,17,28,.76) 42%,rgba(4,17,28,.05) 100%),url('images/hero-capabilities.jpg')}
.hero-image-services{background-image:linear-gradient(90deg,rgba(4,17,28,.96) 0%,rgba(4,17,28,.76) 42%,rgba(4,17,28,.05) 100%),url('images/hero-services.jpg')}
.hero-image-industries{background-image:linear-gradient(90deg,rgba(4,17,28,.96) 0%,rgba(4,17,28,.76) 42%,rgba(4,17,28,.05) 100%),url('images/hero-industries.jpg')}
.hero-image-process{background-image:linear-gradient(90deg,rgba(4,17,28,.96) 0%,rgba(4,17,28,.76) 42%,rgba(4,17,28,.05) 100%),url('images/hero-process.jpg')}
.hero-image-clients{background-image:linear-gradient(90deg,rgba(4,17,28,.96) 0%,rgba(4,17,28,.76) 42%,rgba(4,17,28,.05) 100%),url('images/hero-clients.jpg')}
.hero-image-contact{background-image:linear-gradient(90deg,rgba(4,17,28,.96) 0%,rgba(4,17,28,.76) 42%,rgba(4,17,28,.05) 100%),url('images/hero-contact.jpg')}
.industry-card:nth-child(1){background-image:linear-gradient(135deg,rgba(5,19,30,.8),rgba(5,19,30,.35)),url('images/industry-chemical.jpg')}
.industry-card:nth-child(2){background-image:linear-gradient(135deg,rgba(5,19,30,.8),rgba(5,19,30,.35)),url('images/industry-pharma.jpg')}
.industry-card:nth-child(3){background-image:linear-gradient(135deg,rgba(5,19,30,.8),rgba(5,19,30,.35)),url('images/industry-industrial.jpg')}
.industry-card:nth-child(4){background-image:linear-gradient(135deg,rgba(5,19,30,.8),rgba(5,19,30,.35)),url('images/industry-specialty.jpg')}.industry-card:nth-child(5){background-image:linear-gradient(135deg,rgba(5,19,30,.8),rgba(5,19,30,.35)),url('images/industry-speciality-chemical.jpg')}
.experience-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.experience-image{aspect-ratio:1;background-image:url('images/about-experience.jpg');background-size:cover;background-position:center}
.site-header{backdrop-filter:blur(8px)}
a,button,summary{touch-action:manipulation}
.desktop-nav a,.button,.text-link,.arrow-link,.service-card,.scope-card{min-height:44px}
.desktop-nav a:focus-visible,.button:focus-visible,.text-link:focus-visible,.arrow-link:focus-visible,.brand:focus-visible,.industry-card:focus-visible,.scope-card:focus-visible,.nav-toggle:focus-visible{outline:3px solid #f26a21;outline-offset:4px}
.detail-list summary{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.detail-list summary:after{float:none;flex:0 0 auto}
.nav-toggle{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;padding:0;margin-left:auto;background:transparent;border:0;cursor:pointer}
.nav-toggle span{display:block;width:22px;height:2px;background:#fff;transition:transform .2s,opacity .2s}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.about-copy,.section-heading>p,.process-top>p{max-width:68ch}
.hero-copy{max-width:55ch}
.project-image,.hero-image{background-color:#071827}
.client-list span{line-height:1.45}

@media (max-width:800px){
  .scope-grid{grid-template-columns:repeat(2,1fr)}
  .scope-card{min-height:240px}
  .contact-grid{grid-template-columns:1fr;gap:36px}
  .experience-grid{grid-template-columns:1fr;gap:25px}
  .nav-toggle{display:flex}
  .desktop-nav{position:fixed;top:70px;left:0;right:0;bottom:0;flex-direction:column;align-items:flex-start;gap:0;max-width:none;padding:12px 20px 24px;margin:0;background:rgba(7,24,39,.97);overflow-y:auto;transform:translateX(100%);transition:transform .25s ease;visibility:hidden}
  .desktop-nav.is-open{transform:translateX(0);visibility:visible}
  .desktop-nav a{display:block;width:100%;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.14);white-space:normal;font-size:14px}
  .site-header{position:fixed;background:rgba(7,24,39,.92)}
  .hero-content{padding-top:100px}
  .section-heading h2,.about-grid h2,.process-top h2,.cta-wrap h2{max-width:14ch}
  .service-card h3,.benefit-grid h3{line-height:1.12}
  .detail-list summary{font-size:16px}
  .shell{width:100%}
}

@media (max-width:480px){
  .scope-grid{grid-template-columns:1fr}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}
}

html.js .desktop-nav a{position:relative;padding-bottom:6px;transition:color .2s,opacity .2s}
html.js .desktop-nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .22s ease}
html.js .desktop-nav a:hover::after,html.js .desktop-nav a:focus-visible::after,html.js .desktop-nav a.is-active::after{transform:scaleX(1)}
html.js .desktop-nav a.is-active{color:#fff;opacity:1}

html.js .eyebrow span{transform:scaleX(0);transform-origin:left;animation:eyebrow-line-draw .7s ease-out .05s forwards}
@keyframes eyebrow-line-draw{to{transform:scaleX(1)}}

html.js .reveal-item{opacity:0;transform:translateY(20px);transition:opacity .55s ease-out,transform .55s ease-out}
html.js .reveal-item.is-visible{opacity:1;transform:translateY(0)}

html.js .hero-image{transform:translate3d(0,0,0);will-change:transform}
html.js .project-card{overflow:hidden}
html.js .project-image{transition:transform .35s ease-out}
html.js .project-card:hover .project-image{transform:scale(1.05)}
html.js .scope-card,
html.js .industry-card,
html.js .service-card,
html.js .project-card{transition:transform .25s ease-out,box-shadow .25s ease-out,background-color .25s ease-out}
html.js .scope-card:hover,
html.js .industry-card:hover,
html.js .service-card:hover,
html.js .project-card:hover{transform:translateY(-4px) scale(1.01)}

html.js .process-line{overflow:hidden}
html.js .process-line:before{transform:scaleX(0);transform-origin:left center;transition:transform .8s ease-out}
html.js .process-step{opacity:0;transform:translateY(14px);transition:opacity .5s ease-out,transform .5s ease-out}
html.js .process-section.is-visible .process-line:before{transform:scaleX(1)}
html.js .process-section.is-visible .process-step{opacity:1;transform:translateY(0)}
html.js .process-section.is-visible .process-step:nth-child(1){transition-delay:0ms}
html.js .process-section.is-visible .process-step:nth-child(2){transition-delay:70ms}
html.js .process-section.is-visible .process-step:nth-child(3){transition-delay:140ms}
html.js .process-section.is-visible .process-step:nth-child(4){transition-delay:210ms}
html.js .process-section.is-visible .process-step:nth-child(5){transition-delay:280ms}
html.js .process-section.is-visible .process-step:nth-child(6){transition-delay:350ms}
html.js .process-section.is-visible .process-step:nth-child(7){transition-delay:400ms}
html.js .process-section.is-visible .process-step:nth-child(8){transition-delay:400ms}

html.js .stats-grid strong{display:flex;align-items:baseline;gap:0.08em}

@media (prefers-reduced-motion:reduce){
  html.js .desktop-nav a::after,
  html.js .eyebrow span,
  html.js .reveal-item,
  html.js .project-image,
  html.js .scope-card,
  html.js .industry-card,
  html.js .service-card,
  html.js .project-card,
  html.js .process-line:before,
  html.js .process-step,
  html.js .hero-image{animation:none!important;transition:none!important;transform:none!important;opacity:1!important}
}
