
:root{
  --blue:#07539a;
  --blue-dark:#06396b;
  --blue-deep:#022c54;
  --lime:#c7e719;
  --text:#123b63;
  --muted:#5c7390;
  --light:#f2f7fc;
  --white:#fff;
  --border:#dce7f1;
  --radius:14px;
  --shadow:0 10px 28px rgba(7,50,90,.10);
  --container:1170px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--text);background:#fff;line-height:1.55}
a{color:inherit;text-decoration:none}
.container{width:min(var(--container),calc(100% - 80px));margin:auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);border-bottom:1px solid #e7eef5}
.header-inner{min-height:76px;display:flex;align-items:center;gap:28px}
.brand{display:flex;align-items:center;gap:12px;min-width:285px}
.brand-mark{width:42px;height:42px;display:grid;place-items:center;font-size:30px;font-weight:800;color:#fff;background:linear-gradient(135deg,var(--blue) 0 58%,var(--lime) 58%);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%)}
.brand-copy{display:flex;flex-direction:column}
.brand-copy strong{font-size:24px;letter-spacing:-.8px;color:var(--blue-dark)}
.brand-copy small{font-size:8px;font-weight:700;color:var(--blue);letter-spacing:.2px}
.main-nav{display:flex;align-items:center;gap:30px;margin-left:auto;font-size:14px;font-weight:600}
.main-nav a{padding:29px 0 25px;position:relative}
.main-nav a.active:after,.main-nav a:hover:after{content:"";height:3px;background:var(--lime);position:absolute;bottom:0;left:0;right:0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:11px;padding:13px 22px;font-weight:700;font-size:13px;border:1px solid transparent;transition:.2s ease;white-space:nowrap}
.btn:hover{transform:translateY(-1px)}
.btn-primary,.btn-dark{background:var(--blue-dark);color:#fff}
.btn-lime{background:var(--lime);color:#173b13}
.btn-outline-light{border-color:#fff;color:#fff;background:transparent}
.btn-dark{margin-top:15px}
.header-cta{margin-left:4px}
.nav-toggle{display:none;border:0;background:transparent}
.hero{position:relative;min-height:570px;overflow:hidden;background:linear-gradient(110deg,#073d70,#0a5da0)}
.hero-media{position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(2,44,84,.96) 0%,rgba(3,59,107,.76) 45%,rgba(3,59,107,.22) 100%),
  radial-gradient(circle at 78% 20%,rgba(255,255,255,.18),transparent 25%),
  linear-gradient(135deg,#176ca8 0%,#17466e 55%,#1b668e 100%)}
.hero-media:after{content:"";position:absolute;right:10%;top:0;width:27%;height:100%;background:repeating-linear-gradient(90deg,transparent 0 28px,rgba(255,255,255,.14) 29px 31px),linear-gradient(180deg,transparent,#082f55);clip-path:polygon(35% 0,70% 0,100% 100%,0 100%)}
.hero-content{position:relative;min-height:570px;color:#fff;padding-top:92px}
.hero-text{max-width:650px}
.eyebrow{font-size:11px;letter-spacing:3px;font-weight:700;color:var(--blue);margin:0 0 12px}
.eyebrow:before{content:"";display:inline-block;width:35px;height:3px;background:var(--lime);vertical-align:middle;margin-right:15px}
.eyebrow-light{color:#d9e9f8}
.hero h1{font-size:56px;line-height:1.05;letter-spacing:-2px;margin:0 0 15px;font-weight:800}
.hero-lead{font-size:19px;max-width:580px;line-height:1.35;margin:0 0 25px}
.hero-actions{display:flex;gap:15px}
.hero-side-note{position:absolute;right:0;top:95px;font-size:17px;text-align:left}
.lime-line{display:block;width:35px;height:3px;background:var(--lime);margin-top:12px}
.hero-location{position:absolute;right:0;bottom:110px;display:flex;gap:10px;background:rgba(0,35,70,.65);padding:14px 17px;border-radius:8px}
.hero-location strong,.hero-location small{display:block}
.hero-location strong{font-size:11px}.hero-location small{font-size:9px;color:#cfe1f2}
.location-icon{font-size:22px}
.hero-pillars{position:absolute;left:0;right:0;bottom:27px;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.hero-pillars>div{display:flex;gap:13px;align-items:center;border-right:1px solid rgba(255,255,255,.14)}
.hero-pillars span{font-size:29px}.hero-pillars strong{font-size:12px;line-height:1.2}
.section{padding:70px 0}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:25px}
.section h2,.company-copy h2,.cta-band h2{font-size:30px;line-height:1.2;margin:0;font-weight:800;color:var(--blue-dark);letter-spacing:-.7px}
.text-link{font-size:12px;color:var(--blue);font-weight:700;margin-bottom:4px}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.service-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:var(--shadow);border:1px solid #edf3f8}
.card-image{height:150px;background-size:cover;background-position:center}
.image-tower{background:linear-gradient(145deg,#1488ca,#0b4c86 55%,#76b9d6)}
.image-electric{background:linear-gradient(145deg,#c9d3d9,#6c8793 45%,#213e51)}
.image-dish{background:linear-gradient(145deg,#71c6ef,#0a5797 55%,#d9effa)}
.image-road{background:linear-gradient(145deg,#89c85a,#326f3b 45%,#244d35)}
.service-body{padding:18px}
.service-icon{font-size:25px;color:var(--blue);font-weight:800}
.service-body h3{font-size:17px;line-height:1.15;margin:8px 0;color:var(--blue-dark)}
.service-body p{font-size:12px;color:var(--muted);min-height:57px;margin:0 0 13px}
.service-body a{font-size:11px;color:var(--blue);font-weight:800}
.company-band{background:#f1f7fc;padding:65px 0;overflow:hidden}
.company-layout{display:grid;grid-template-columns:1.15fr .95fr .7fr;gap:40px;align-items:center}
.company-copy p:not(.eyebrow):not(.company-tagline){font-size:13px;color:#48647e;max-width:520px}
.company-tagline{font-size:17px;color:var(--blue-dark);margin:7px 0 10px}
.company-facts{display:grid;grid-template-columns:1fr 1fr;gap:23px}
.fact{display:flex;gap:12px}.fact>span{font-size:24px;color:var(--blue)}
.fact b{display:block;font-size:11px;color:var(--blue)}.fact small{display:block;color:#526d86;font-size:10px;line-height:1.35}
.company-image{min-height:290px;background:linear-gradient(135deg,#7cb6db,#195b91 50%,#0b3b66);position:relative;clip-path:polygon(28% 0,100% 0,100% 100%,0 100%);display:flex;align-items:flex-end}
.company-image-overlay{padding:30px 25px 30px 75px;color:#fff;font-size:13px}
.projects{padding-top:62px}
.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.project-card h3{font-size:13px;margin:9px 0 2px;color:var(--blue-dark)}
.project-card p{font-size:11px;color:var(--muted);margin:0}
.project-image{height:150px;border-radius:8px;overflow:hidden;position:relative;background-size:cover}
.project-image span{position:absolute;bottom:10px;left:10px;background:rgba(2,44,84,.86);color:#fff;border-radius:5px;padding:6px 9px;font-size:9px;font-weight:700}
.image-project-tower{background:linear-gradient(135deg,#68b4e2,#07539a 50%,#7bb35c)}
.image-project-electric{background:linear-gradient(135deg,#b9c6cb,#324d59 50%,#e5b95b)}
.image-project-road{background:linear-gradient(135deg,#d9a45e,#4d8046 48%,#27506d)}
.cta-band{background:linear-gradient(105deg,#043867,#07539a);color:#fff;padding:55px 0}
.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:35px}
.cta-band h2{color:#fff;font-size:31px}.cta-band p:last-child{max-width:610px;margin:10px 0 0;color:#d7e7f5;font-size:13px}
.cta-actions{display:flex;gap:14px}
.site-footer{background:#032b51;color:#fff}
.footer-main{min-height:145px;display:grid;grid-template-columns:1.5fr 1fr auto auto;gap:30px;align-items:center}
.brand-footer .brand-copy strong{color:#fff}.brand-footer .brand-copy small{color:#cbddec}
.footer-nav{display:flex;gap:20px;font-size:11px}.footer-nav a:hover{color:var(--lime)}
.socials{display:flex;gap:12px}.socials span{border:1px solid rgba(255,255,255,.35);width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-size:11px}
.footer-location{font-size:10px;border-left:1px solid rgba(255,255,255,.2);padding-left:25px}
.footer-location small{color:#cbddec}
.footer-bottom{border-top:1px solid rgba(255,255,255,.15);padding:17px 0;display:flex;justify-content:space-between;font-size:9px;color:#b8cede}
@media(max-width:1050px){
  .container{width:min(var(--container),calc(100% - 40px))}
  .main-nav{gap:18px}.brand{min-width:245px}
  .service-grid{grid-template-columns:repeat(2,1fr)}
  .company-layout{grid-template-columns:1fr 1fr}.company-image{display:none}
  .footer-main{grid-template-columns:1fr 1fr}.footer-location{border-left:0;padding-left:0}
}
@media(max-width:760px){
  .header-inner{min-height:68px}.brand-copy strong{font-size:20px}
  .brand-copy small{display:none}.brand{min-width:0}.header-cta{display:none}
  .nav-toggle{display:flex;margin-left:auto;flex-direction:column;gap:4px;padding:8px}
  .nav-toggle span{width:24px;height:2px;background:var(--blue-dark)}
  .main-nav{position:absolute;top:68px;left:0;right:0;background:#fff;display:none;flex-direction:column;align-items:stretch;gap:0;padding:10px 20px;box-shadow:0 12px 25px rgba(0,0,0,.1)}
  .main-nav.open{display:flex}.main-nav a{padding:13px 0}
  .hero{min-height:680px}.hero-content{min-height:680px;padding-top:65px}
  .hero h1{font-size:40px}.hero-lead{font-size:16px}
  .hero-side-note{display:none}.hero-location{right:20px;bottom:135px}.hero-pillars{grid-template-columns:1fr 1fr;gap:15px}
  .hero-pillars>div{border-right:0}.hero-pillars span{font-size:23px}
  .section{padding:50px 0}.section-head{align-items:start;flex-direction:column;gap:8px}.section h2{font-size:25px}
  .service-grid,.project-grid{grid-template-columns:1fr}
  .company-layout{grid-template-columns:1fr}.company-facts{grid-template-columns:1fr 1fr}
  .cta-inner{flex-direction:column;align-items:flex-start}.cta-actions{flex-wrap:wrap}
  .footer-main{grid-template-columns:1fr}.footer-nav{flex-wrap:wrap}.footer-bottom{flex-direction:column;gap:8px}
}
@media(max-width:440px){
  .container{width:calc(100% - 28px)}
  .hero-actions,.cta-actions{flex-direction:column;align-items:stretch}.hero-actions .btn,.cta-actions .btn{width:100%}
  .company-facts{grid-template-columns:1fr}
}
