@font-face{font-family:Inter;src:url("fonts/inter-latin.woff2") format("woff2");font-weight:400 800;font-display:swap}
:root{--slate:#1E293B;--blue:#2563EB;--blue-dark:#1D4ED8;--text:#475569;--muted:#94A3B8;--border:#E2E8F0;--surface:#F1F5F9;--white:#FFFFFF}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--white);color:var(--slate);font-family:Inter,Arial,sans-serif;line-height:1.6}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
.skip-link{position:absolute;left:1rem;top:-4rem;z-index:50;background:var(--blue);color:#fff;padding:.7rem 1rem}
.skip-link:focus{top:1rem}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.site-header{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:240px 1fr auto;align-items:center;background:linear-gradient(135deg,#152133,var(--slate));color:#fff;border-bottom:1px solid rgba(255,255,255,.14)}
.brand{padding:1.15rem 1.4rem;border-right:1px solid rgba(255,255,255,.18)}
.logo{display:block;text-decoration:none;font-weight:800;font-size:1.55rem;line-height:1.1}
.brand span{color:#b8c3d0}
nav{display:flex;justify-content:center;gap:clamp(1rem,4vw,3rem)}
nav a{text-decoration:none;color:#e7edf5;font-weight:600}
.header-actions{display:flex;align-items:center;gap:1rem;padding:1rem 1.4rem;font-weight:700}
.phone-symbol{display:none}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.82rem 1.1rem;border:1px solid transparent;text-decoration:none;font-weight:800;border-radius:0;cursor:pointer}
.button-blue{background:linear-gradient(135deg,var(--blue),var(--blue-dark));color:#fff}
.button-outline{border-color:rgba(255,255,255,.7);color:#fff;background:rgba(255,255,255,.03)}
.menu-button{display:none}
.hero{display:grid;grid-template-columns:120px minmax(0,1fr) minmax(360px,.92fr);background:var(--slate);color:#fff;min-height:620px;border-bottom:1px solid rgba(255,255,255,.14)}
.spec-rail{display:grid;align-content:center;gap:5.5rem;padding:2rem 1rem;border-right:1px solid rgba(255,255,255,.22);color:#a6b3c4;font-weight:800;text-transform:uppercase}
.hero-copy{padding:clamp(2.4rem,6vw,5rem) clamp(1.4rem,5vw,4rem);background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:32px 32px}
.mobile-chips{display:none}
.eyebrow{margin:0 0 .7rem;color:#60A5FA;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
h1,h2,h3{margin:0;color:inherit;line-height:1.12}
h1{font-size:clamp(2.65rem,6vw,5.2rem);font-weight:800;max-width:850px}
h2{font-size:clamp(2rem,4vw,3.25rem);font-weight:800}
h3{font-size:1.15rem;font-weight:800}
.hero-copy>p:not(.eyebrow){font-size:1.08rem;max-width:760px;color:#e7edf5}
.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.5rem}
.hero-photo img{width:100%;height:100%;object-fit:cover}
.after-hours{text-align:center;background:#e8edf4;color:#253245;padding:1.2rem 1rem;font-weight:600}
.after-hours p{margin:0}
.section-light{padding:clamp(3rem,6vw,5rem) clamp(1rem,5vw,4rem);background:#fff;border-bottom:1px solid var(--border)}
.section-intro{max-width:860px;margin-bottom:2rem}
.section-intro p:not(.eyebrow){color:var(--text)}
.industries{display:grid;grid-template-columns:.75fr 1.25fr;gap:2rem;align-items:start}
.industry-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--border)}
.industry-grid article{background:var(--surface);padding:1.35rem;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}
.industry-grid article:nth-child(3n){border-right:0}
.industry-grid article:nth-last-child(-n+3){border-bottom:0}
.industry-grid p{color:var(--text)}
.capability-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:2rem;align-items:start}
.spec-table{display:grid;grid-template-columns:repeat(2,1fr);border:1px solid var(--border)}
.spec-table article{padding:1rem;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}
.spec-table article:nth-child(2n){border-right:0}
.spec-table article:nth-last-child(-n+2){border-bottom:0}
.spec-table p{color:var(--text);margin:.45rem 0 0}
.capability-layout img{border:1px solid var(--border);height:100%;object-fit:cover}
.case-study{display:grid;grid-template-columns:1fr 1fr;gap:2rem;padding:clamp(3rem,6vw,5rem) clamp(1rem,5vw,4rem);background:linear-gradient(135deg,#132033,var(--slate));color:#fff}
.case-copy p{color:#e7edf5}
.case-copy .meta{color:#93C5FD;font-weight:700}
.case-study img{height:100%;object-fit:cover;border:1px solid rgba(255,255,255,.18)}
dl{margin:1.4rem 0 0;border-top:1px solid rgba(255,255,255,.25)}
dl div{display:grid;grid-template-columns:140px 1fr;border-bottom:1px solid rgba(255,255,255,.25)}
dt,dd{padding:.9rem 0;margin:0}
dt{font-weight:800}
dd{color:#e7edf5}
.plan-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
.plan-grid article{background:var(--surface);border:1px solid var(--border);padding:1.4rem}
.plan-grid p,.plan-grid li{color:var(--text)}
.muted-line{color:var(--text);margin-top:1rem}
.about{display:grid;grid-template-columns:1fr .85fr;gap:2rem}
.about p{color:var(--text)}
.facts{display:grid;gap:.45rem;margin-top:1.4rem}
.facts span{border-top:1px solid var(--border);padding-top:.55rem;font-weight:700;color:var(--slate)}
.role-quotes{display:grid;gap:1.2rem}
blockquote{margin:0;padding:1.2rem;border-left:3px solid var(--blue);background:#fff}
blockquote p{font-size:1.2rem;color:var(--slate)}
blockquote footer{color:var(--blue);font-weight:700}
.rfq{display:grid;grid-template-columns:.75fr 1.25fr;gap:2rem;padding:clamp(3rem,6vw,5rem) clamp(1rem,5vw,4rem);background:var(--surface)}
.rfq-copy p{color:var(--text)}
.rfq-actions{display:flex;gap:1rem;flex-wrap:wrap}
.rfq-actions a{font-weight:800;color:var(--blue);text-decoration:none}
.rfq-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;background:#fff;border:1px solid var(--border);padding:1.2rem}
.rfq-form .full{grid-column:1/-1}
label{display:block;font-weight:800;margin-bottom:.28rem}
input,select,textarea{width:100%;min-height:46px;border:1px solid #CBD5E1;background:#fff;color:var(--slate);font:inherit;padding:.7rem .75rem}
textarea{min-height:130px;resize:vertical}
.website-field{position:absolute;left:-10000px;width:1px;height:1px}
.form-micro,.form-status{font-size:.9rem;color:var(--text);text-align:center;margin:.1rem 0}
.template-copy[hidden]{display:none}
.site-footer{display:grid;grid-template-columns:1.1fr 1fr .9fr .65fr;gap:1.4rem;padding:2rem clamp(1rem,4vw,3rem);background:linear-gradient(135deg,#132033,var(--slate));color:#dbe4ef}
.site-footer p{margin:.2rem 0;color:#dbe4ef}
.site-footer a{text-decoration:none;color:#fff}
.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.18);padding-top:1rem}
@media (max-width:980px){
  .site-header{grid-template-columns:1fr auto;align-items:start}
  .brand{border-right:0}
  .menu-button{display:inline-grid;gap:5px;align-content:center;justify-content:center;margin:1rem;border:1px solid rgba(255,255,255,.45);background:transparent;color:#fff;width:46px;min-height:42px;padding:.55rem .8rem}
  .menu-button span{display:block;width:18px;height:2px;background:#fff}
  nav{display:none;grid-column:1/-1;padding:0 1.4rem 1rem;justify-content:flex-start;flex-wrap:wrap}
  nav.is-open{display:flex}
  .header-actions{grid-column:1/-1;padding-top:0}
  .hero{grid-template-columns:1fr}
  .spec-rail{display:none}
  .mobile-chips{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}
  .mobile-chips span{border:1px solid rgba(255,255,255,.24);padding:.25rem .5rem;color:#b8c3d0;font-weight:800}
  .hero-photo{order:-1}
  .hero-photo img{max-height:360px}
  .industries,.capability-layout,.case-study,.about,.rfq{grid-template-columns:1fr}
  .industry-grid{grid-template-columns:repeat(2,1fr)}
  .industry-grid article:nth-child(3n){border-right:1px solid var(--border)}
  .industry-grid article:nth-child(2n){border-right:0}
  .industry-grid article:nth-last-child(-n+3){border-bottom:1px solid var(--border)}
  .industry-grid article:nth-last-child(-n+2){border-bottom:0}
  .site-footer{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  .header-actions,.hero-actions,.rfq-actions{display:grid;grid-template-columns:1fr}
  .industry-grid,.spec-table,.plan-grid,.rfq-form,.site-footer{grid-template-columns:1fr}
  .industry-grid article,.spec-table article{border-right:0!important;border-bottom:1px solid var(--border)!important}
  .industry-grid article:last-child,.spec-table article:last-child{border-bottom:0!important}
  .footer-bottom{display:block}
  dl div{grid-template-columns:1fr}
  dt{padding-bottom:.1rem}
  dd{padding-top:0}
}
@media (max-width:360px){
  h1{font-size:2.25rem}
  h2{font-size:1.8rem}
}
@media (max-width:480px){
  .site-header{position:sticky;display:flex;align-items:center;justify-content:space-between;gap:.45rem;min-height:68px;padding:.5rem .65rem}
  .brand{padding:0;border-right:0;min-width:0;flex:1}
  .logo{font-size:1rem;white-space:nowrap}
  .brand span,.phone-text{display:none}
  nav{display:none}
  .menu-button{display:inline-grid;order:3;margin:0;width:38px;min-height:38px;padding:.45rem}
  .menu-button span{width:16px}
  .header-actions{order:2;display:flex;align-items:center;gap:.45rem;padding:0;grid-column:auto}
  .header-phone{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.5);border-radius:999px;text-decoration:none}
  .phone-symbol{display:inline;font-size:.95rem;line-height:1}
  .header-actions .button{min-height:38px;padding:.48rem .58rem;font-size:.75rem;white-space:nowrap}
  .hero-photo img{max-height:240px}
  .hero-copy{padding:1.35rem .95rem}
  .hero-copy>p:not(.eyebrow){font-size:.92rem}
  .mobile-chips{gap:.35rem}
}
