
:root{
  --bg:#080a09; --panel:#0f1310; --panel2:#151a16; --ink:#f4f5f2; --muted:#b8beb8;
  --green:#1f6b43; --green2:#2f8a59; --gold:#c99a2e; --silver:#d8dadd; --line:#293129;
  --max:1180px; --radius:18px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(var(--max),calc(100% - 40px));margin:auto}
.eyebrow{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:#8dc6a3;font-weight:700}
h1,h2,h3{line-height:1.08;margin:.2em 0 .55em}
h1{font-size:clamp(2.8rem,7vw,6.4rem);letter-spacing:-.045em}
h2{font-size:clamp(2.1rem,4.4vw,4rem);letter-spacing:-.035em}
h3{font-size:1.28rem}
p{color:var(--muted);margin:.5rem 0 1rem}
.small{font-size:.92rem}
.accent{color:#75bf91}.gold{color:var(--gold)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:.86rem 1.1rem;border:1px solid transparent;border-radius:10px;font-weight:800;letter-spacing:.02em;transition:.2s}
.btn.primary{background:var(--green2);color:white}
.btn.primary:hover{transform:translateY(-1px);background:#379762}
.btn.secondary{border-color:#526052;background:#111712}
.btn.secondary:hover{border-color:#719079}
.btn-row{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.5rem}
.topbar{border-bottom:1px solid #1a211b;background:#050605;color:#c6cdc7;font-size:1rem}
.topbar a{color:#f0f3f0;font-weight:750}
.footer-links a[href^="tel:"],.footer-links a[href^="mailto:"]{font-size:1.08rem;font-weight:750;color:#f0f3f0}
.topbar .container{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:10px 0}
header{position:sticky;top:0;z-index:50;background:rgba(8,10,9,.92);backdrop-filter:blur(14px);border-bottom:1px solid #202721}
.nav{display:flex;align-items:center;min-height:128px;gap:24px}
.brand{display:flex;align-items:center;min-width:260px}
.brand img{width:300px;max-height:112px;object-fit:contain;object-position:left center}
nav{margin-left:auto;display:flex;align-items:center;gap:24px;font-size:.88rem;font-weight:750;text-transform:uppercase;letter-spacing:.06em}
nav a{color:#d6dad6}
nav a:hover,nav a.active{color:#7fc698}
.menu-btn{display:none;margin-left:auto;background:#121713;color:white;border:1px solid #313a32;border-radius:9px;padding:.58rem .75rem;font-weight:700}
.hero{position:relative;overflow:hidden;min-height:760px;display:grid;align-items:center;border-bottom:1px solid var(--line)}
.hero:before{
  content:"";position:absolute;inset:0;
  background:
    radial-gradient(circle at 78% 28%,rgba(47,138,89,.24),transparent 24%),
    radial-gradient(circle at 66% 66%,rgba(201,154,46,.09),transparent 20%),
    linear-gradient(115deg,rgba(3,6,4,.98) 12%,rgba(5,12,8,.88) 49%,rgba(8,23,14,.66) 100%);
}
.hero:after{
  content:"";position:absolute;inset:auto -10% -8% 26%;height:68%;
  background:
    linear-gradient(160deg,transparent 44%,rgba(36,78,54,.34) 44.5%,rgba(17,47,31,.65) 61%,transparent 61.5%),
    linear-gradient(168deg,transparent 55%,rgba(15,33,24,.75) 55.5%,rgba(8,20,13,.92) 77%,transparent 77.5%);
  filter:drop-shadow(0 0 30px rgba(0,0,0,.45));transform:skewX(-8deg);opacity:.92
}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center;padding:96px 0}
.hero-copy{max-width:760px}
.hero h1 .line2{display:block;color:#64b881}
.hero .lead{font-size:1.16rem;max-width:690px}
.hero-card{justify-self:end;width:min(440px,100%);padding:30px;border:1px solid #2d3930;border-radius:24px;background:linear-gradient(180deg,rgba(19,29,22,.86),rgba(10,13,11,.93));box-shadow:0 22px 60px rgba(0,0,0,.32)}
.hero-card .stat{display:flex;gap:18px;padding:17px 0;border-bottom:1px solid #263027}
.hero-card .stat:last-child{border:0}
.num{font-size:2rem;flex:0 0 96px;font-weight:900;color:#7fc698}.num.word{font-size:1.12rem;letter-spacing:.04em;white-space:nowrap}
.section{padding:96px 0}
.section.alt{background:#0c0f0d}
.section-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:36px}
.section-head>div:first-child{max-width:720px}
.section-head p{max-width:440px}
.grid{display:grid;gap:18px}
.cards5{grid-template-columns:repeat(5,1fr)}
.card{border:1px solid #283028;background:linear-gradient(180deg,#121713,#0d100e);border-radius:var(--radius);padding:26px;min-height:250px}
.card .icon{width:42px;height:42px;border-radius:10px;display:grid;place-items:center;background:#183323;color:#8ed1a4;font-weight:900;margin-bottom:24px}
.card p{font-size:.94rem}
.card a{color:#82c99b;font-weight:800;font-size:.88rem}
.cards3{grid-template-columns:repeat(3,1fr)}
.industry{padding:28px;border-top:2px solid #335e44;background:#101411}
.split{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}
.credential{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.badge{padding:20px;border:1px solid #2c372e;border-radius:14px;background:#0c100d}
.badge strong{display:block;margin-bottom:4px;color:#e8ece8}
.service-area{position:relative;overflow:hidden;background:
linear-gradient(105deg,rgba(5,9,6,.97),rgba(7,18,11,.87)),
radial-gradient(circle at 80% 20%,rgba(54,134,84,.30),transparent 30%)}
.locations{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.locations span{padding:.5rem .72rem;border:1px solid #34513d;border-radius:999px;background:#0d1710;color:#d6ddd7}
.quote-strip{padding:70px 0;background:linear-gradient(90deg,#183b27,#0e2418 50%,#17140b)}
.quote-strip .container{display:flex;align-items:center;justify-content:space-between;gap:30px}
footer{padding:60px 0 30px;border-top:1px solid #283028;background:#050706}
.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:42px}
.footer-logo{width:230px;margin-bottom:18px}
.footer-links{display:grid;gap:9px}
.footer-links a{color:#bac1ba}
.legal{margin-top:42px;padding-top:20px;border-top:1px solid #1e251f;color:#7f8981;font-size:.82rem;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.page-hero{padding:110px 0 70px;background:
linear-gradient(120deg,#070908 35%,rgba(19,59,36,.84)),
radial-gradient(circle at 90% 10%,rgba(201,154,46,.12),transparent 25%);border-bottom:1px solid #293129}
.page-hero p{max-width:760px;font-size:1.1rem}
.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.detail{padding:32px;border:1px solid #2a332b;background:#0e120f;border-radius:18px}
.detail ul{padding-left:1.2rem;color:#bec4bf}
.detail li{margin:.35rem 0}
.form-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:42px;align-items:start}
form{display:grid;gap:14px}
label{font-weight:800;font-size:.9rem}
input,textarea,select{width:100%;padding:13px 14px;border-radius:10px;border:1px solid #354038;background:#0b0f0c;color:#f2f4f2;font:inherit}
textarea{min-height:150px;resize:vertical}
.hp{position:absolute;left:-9999px}
.notice{font-size:.84rem;color:#9ca49e}
.success{padding:18px;border:1px solid #315d41;border-radius:12px;background:#102319}
@media(max-width:1050px){
  .cards5{grid-template-columns:repeat(2,1fr)}
  .hero-grid{grid-template-columns:1fr}.hero-card{justify-self:start}
  nav{display:none;position:absolute;top:128px;left:0;right:0;padding:20px;background:#090c0a;border-bottom:1px solid #273128;flex-direction:column;align-items:flex-start}
  nav.open{display:flex}.menu-btn{display:block}.nav>.btn{display:none}
}
@media(max-width:760px){
  .container{width:min(100% - 28px,var(--max))}
  .topbar .container{flex-direction:column;gap:2px}
  .brand{min-width:0}.brand img{width:250px;max-height:94px}
  .hero{min-height:auto}.hero-grid{padding:72px 0}
  .hero-card{display:none}
  .section{padding:72px 0}
  .section-head,.quote-strip .container{align-items:flex-start;flex-direction:column}
  .cards5,.cards3,.split,.detail-grid,.form-wrap,.footer-grid{grid-template-columns:1fr}
  .credential{grid-template-columns:1fr}
}

:focus-visible{outline:3px solid #8ed1a4;outline-offset:3px}
.menu-btn{min-height:44px;min-width:64px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}

/* Updated IGS palette: light neutral surfaces with deep green accents. */
:root{
  --bg:#f5f7f4;--panel:#ffffff;--panel2:#edf1ed;--ink:#18231b;--muted:#536056;
  --green:#1d5f3a;--green2:#236b43;--gold:#bd9234;--silver:#d8dadd;--line:#d8e0d9;
}
body{background:var(--bg);color:var(--ink)}
p{color:var(--muted)}
.eyebrow{color:#246542}
.accent{color:#236b43}
.topbar{background:#080b09;color:#c6cdc7}
.topbar a{color:#f0f3f0}
header{background:rgba(8,11,9,.97);border-bottom-color:#202721}
nav a{color:#e1e7e2}
nav a:hover,nav a.active{color:#9cdbaf}
.hero{background:#f5f7f4;border-bottom-color:#dce4dd}
.hero:before{
  background:
    radial-gradient(circle at 82% 24%,rgba(47,138,89,.13),transparent 27%),
    radial-gradient(circle at 68% 72%,rgba(201,154,46,.06),transparent 23%),
    linear-gradient(115deg,#fbfcfb 12%,#f1f6f2 56%,#e8f0ea 100%);
}
.hero:after{
  background:
    linear-gradient(160deg,transparent 44%,rgba(36,78,54,.08) 44.5%,rgba(17,47,31,.12) 61%,transparent 61.5%),
    linear-gradient(168deg,transparent 55%,rgba(15,33,24,.09) 55.5%,rgba(8,20,13,.13) 77%,transparent 77.5%);
  opacity:.5;
}
.hero h1{color:#16251a}
.hero h1 .line2{color:#236b43}
.hero-card{border-color:#d9e2db;background:#fff;box-shadow:0 18px 45px rgba(22,52,32,.10)}
.hero-card .stat{border-bottom-color:#e4eae5}
.num{color:#236b43}
.section.alt{background:#eaf0eb}
.card{border-color:#dce4dd;background:#fff;box-shadow:0 8px 22px rgba(22,52,32,.05)}
.card .icon{background:#e5f0e8;color:#236b43}
.card a{color:#21653d}
.industry{border-top-color:#2c7549;background:#fff}
.badge{border-color:#d9e2db;background:#fff}
.badge strong{color:#1b2b1e}
.service-area{background:linear-gradient(110deg,#edf3ee,#f7f9f7 62%,#e8f1ea)}
.locations span{border-color:#cbd9ce;background:#fff;color:#25422f}
.quote-strip{background:linear-gradient(110deg,#1c5c38,#17472d 68%,#183d29)}
.quote-strip p{color:#e0e9e2}
.quote-strip .eyebrow{color:#bfe2ca}
.quote-strip .btn.primary{background:#fff;color:#18472d}
footer{background:#080b09}
.page-hero{background:linear-gradient(120deg,#f9fbf9 35%,#eaf2ec),radial-gradient(circle at 90% 10%,rgba(201,154,46,.08),transparent 25%);border-bottom-color:#dce4dd}
.page-hero h1,.page-hero h2{color:#18231b}
.detail{border-color:#dce4dd;background:#fff}
.detail ul{color:#465349}
input,textarea,select{border-color:#cbd7cd;background:#fff;color:#18231b}
input::placeholder,textarea::placeholder{color:#77847a}
.notice{color:#617065}
.success{border-color:#bad2c0;background:#edf7ef}
.btn.secondary{border-color:#b9c9bd;background:#fff;color:#1e3424}
.btn.secondary:hover{border-color:#72947d;background:#f8fbf8}
@media(max-width:760px){
  .section.alt{background:#eaf0eb}
  nav{background:#080b09;border-bottom-color:#273128}
}
