:root{--green:#33cc22;--green-d:#1f7a12;--brand:#266a0e;--ink:#1f2a24;--muted:#5b6660;--bg:#f6f8f5;--line:#e2e8e0;--dark:#18211b}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:17px/1.65 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:#fff}
img{max-width:100%;height:auto}a{color:var(--green-d)}a:hover{color:var(--brand)}
.wrap{max-width:1140px;margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;background:#fff;padding:8px;z-index:99}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
:focus-visible{outline:3px solid var(--green);outline-offset:2px}
.site-header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}
.hbar{display:flex;align-items:center;gap:20px;min-height:76px}.logo img{display:block;max-height:56px;width:auto}
nav{margin-left:auto}.menu{list-style:none;display:flex;gap:4px;margin:0;padding:0}
.menu>li{position:relative}.menu a,.sub-toggle{display:block;padding:10px 12px;color:var(--ink);text-decoration:none;font-family:inherit;font-size:15px;font-weight:600;line-height:1.2;background:none;border:0;cursor:pointer;border-radius:6px}
.menu a:hover,.sub-toggle:hover,.menu a[aria-current],.has-sub.active>.sub-toggle{color:var(--green-d);background:#eef8ec}
.sub{list-style:none;margin:0;padding:6px;position:absolute;top:100%;left:0;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 10px 30px #0002;min-width:240px;display:none}
.has-sub:hover .sub,.has-sub:focus-within .sub,.sub-toggle[aria-expanded=true]+.sub{display:block}
.hphone{font-weight:700;text-decoration:none;background:var(--green);color:#fff;padding:9px 14px;border-radius:999px;white-space:nowrap}.hphone:hover{background:var(--green-d);color:#fff}
.menu-toggle{display:none;margin-left:auto;background:var(--dark);color:#fff;border:0;padding:9px 14px;border-radius:6px;font-weight:600}
.hero{position:relative;height:440px;background:#000;overflow:hidden}
.slide{position:absolute;inset:0;background:center/cover no-repeat;opacity:0;transition:opacity .8s;display:flex;align-items:flex-end}
.slide.is-active{opacity:1}.slide::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 40%,#000a)}
.slide .wrap{position:relative;z-index:1;width:100%;padding-bottom:56px}
.slide-cap{display:inline-block;margin:0;color:#fff;font-size:clamp(24px,4vw,40px);font-weight:700;line-height:1.2;max-width:720px;border-left:6px solid var(--green);padding-left:16px}
.dots{position:absolute;bottom:18px;left:0;right:0;display:flex;justify-content:center;gap:8px;z-index:2}
.dot{width:12px;height:12px;border-radius:50%;border:2px solid #fff;background:transparent;padding:0;cursor:pointer}.dot.is-active{background:#fff}
.pagehead{background:linear-gradient(120deg,var(--dark),#24402a);color:#fff;padding:44px 0}.pagehead h1{margin:0;font-size:clamp(28px,4vw,42px)}
.content{padding:48px 20px 64px}
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:40px}
.cols-3{grid-template-columns:repeat(3,1fr)}
h2,h4{color:var(--brand);font-size:22px;line-height:1.3;margin:1.2em 0 .5em}.col>h4:first-child,.col>h2:first-child{margin-top:0}
.alignleft{float:left;margin:4px 16px 10px 0;border-radius:8px}.alignright{float:right;margin:4px 0 10px 16px;border-radius:8px}.aligncenter{display:block;margin:0 auto}
.col{min-width:0}.col::after{content:"";display:block;clear:both}
.home ul{padding-left:0;list-style:none}.home li{padding:6px 0 6px 30px;position:relative}.home li::before{content:"✓";position:absolute;left:0;color:#fff;background:var(--green);width:20px;height:20px;border-radius:50%;font-size:12px;display:grid;place-items:center;top:9px}
.home .col:last-child{text-align:center}.home .col:last-child img{float:none;margin:0 auto 16px}
.cta,.btn{display:inline-block;background:var(--green);color:#fff;font-weight:700;padding:12px 20px;border-radius:8px;text-decoration:none;border:0;font-size:16px;cursor:pointer}.cta:hover,.btn:hover{background:var(--green-d);color:#fff}
.prose{max-width:820px}.prose::after{content:"";display:block;clear:both}
.team .wp-block-columns{display:grid;grid-template-columns:200px 1fr;gap:28px;align-items:start;padding:8px 0}
.team figure{margin:0;text-align:center}.team p[class],.team .wp-block-column p:first-child{margin:.2em 0}
.team .wp-block-column p:first-child{font-weight:700;font-size:20px}.team .has-text-color{color:var(--brand)}
.wp-block-separator{border:0;border-top:1px solid var(--line);margin:28px 0}
.sec{margin-top:48px}.cards{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px}
.card a{display:block;border:1px solid var(--line);border-radius:12px;overflow:hidden;text-decoration:none;color:var(--ink);font-weight:700;transition:box-shadow .2s}
.card a:hover{box-shadow:0 8px 24px #0002}.card img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}.card span{display:block;padding:14px}
.feat{display:block;border-radius:12px;margin-bottom:20px}
.video-ph{margin:0}.video-ph img{border-radius:12px}.video-ph figcaption{color:var(--muted)}
.contact{display:grid;grid-template-columns:2fr 1fr;gap:40px;align-items:start}
.cform{background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:28px}.cform h2{margin-top:0}
.frow{margin-bottom:16px}.frow label{display:block;font-weight:600;margin-bottom:4px}
.frow input,.frow textarea{width:100%;padding:11px 12px;border:1px solid #b9c4b6;border-radius:8px;font:inherit;background:#fff}
.form-note{margin-top:14px;background:#fff7d6;border:1px solid #e9d27a;padding:10px 12px;border-radius:8px}
.contact-card{text-align:center;border:1px solid var(--line);border-radius:12px;padding:24px}.contact-card .big{font-size:20px;font-weight:700}
.site-footer{background:var(--dark);color:#cfd8d1;font-size:15px}.site-footer h2{color:#fff;font-size:17px;margin:0 0 10px}
.fgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;padding:48px 20px}.site-footer a{color:#8fe684}
.flinks{list-style:none;padding:0;margin:0}.flinks li{padding:3px 0}
.callbar{background:#0f1611;padding:16px 0}.callbar .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}.callbar span:first-child{font-weight:700;color:#fff}
@media (max-width:960px){.cols-3,.fgrid{grid-template-columns:1fr 1fr}.hphone{display:none}}
@media (max-width:760px){.menu-toggle{display:block}nav{position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);display:none}
nav.open{display:block}.menu{flex-direction:column;padding:10px 20px}.sub{position:static;box-shadow:none;border:0;padding-left:16px;display:block}
.cols-3,.fgrid,.contact,.team .wp-block-columns{grid-template-columns:1fr}.hero{height:340px}.alignleft,.alignright{float:none;display:block;margin:0 auto 12px}}
@media (prefers-reduced-motion:reduce){.slide{transition:none}}

/* Initials stand-in when no headshot is available */
.team-initials{display:inline-flex;align-items:center;justify-content:center;width:122px;height:122px;border-radius:8px;background:var(--brand,#266a0e);color:#fff;font-weight:700;font-size:36px;letter-spacing:.02em;line-height:1;margin:0 auto;user-select:none}

/* Formspree contact: honeypot + status */
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.form-success{margin-top:0;margin-bottom:16px;background:#e7f7e4;border:1px solid #9fd39a;color:#1f5a14;padding:10px 12px;border-radius:8px}
.form-error{margin-top:0;margin-bottom:16px;background:#fdecea;border:1px solid #e3a09a;color:#8a1f16;padding:10px 12px;border-radius:8px}
.btn[disabled],.btn[aria-busy=true]{opacity:.65;cursor:wait}

/* Hero slide backgrounds (CSP: no inline style attrs) */
.slide-bg-powerplant{background-image:url(/wp-content/uploads/2013/09/powerplant.jpg)}
.slide-bg-chemist{background-image:url(/wp-content/uploads/2013/09/chemist.jpg)}
.slide-bg-motor{background-image:url(/wp-content/uploads/2013/09/motor.jpg)}
.slide-bg-truck_snow{background-image:url(/wp-content/uploads/2013/09/truck_snow.jpg)}
.slide-bg-refinery{background-image:url(/wp-content/uploads/2013/09/refinery.jpg)}
.slide-bg-powerplant_sunset1{background-image:url(/wp-content/uploads/2013/09/powerplant_sunset1.jpg)}
