:root{
  --marine:#071371;--royal:#1B4EB8;--cyan:#03B3E8;--ink:#1A2233;--sub:#5a6577;
  --line:#DDE5F0;--wash:#F5F8FC;--amber:#C96B00;--maxw:1180px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;color:var(--ink);background:#fff;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:'Montserrat',sans-serif;line-height:1.15}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.eyebrow{font:700 12px/1.2 'Montserrat',sans-serif;letter-spacing:.15em;text-transform:uppercase;color:var(--accent-dark)}
header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav{display:flex;justify-content:space-between;align-items:center;height:76px}
.brand{display:flex;align-items:center;gap:11px}.brand img{height:44px;width:auto}
.brand .bt{font:800 19px 'Montserrat',sans-serif;color:var(--marine)}.brand .bt span{font-weight:500;color:var(--royal)}
.menu{display:flex;gap:28px;align-items:center}.menu a{font-size:14px;font-weight:600;transition:color .2s}.menu a:hover{color:var(--royal)}
.menu .cta{background:var(--amber);color:#fff;font-family:'Montserrat';font-weight:700;padding:10px 18px;border-radius:7px}
.burger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:7px}.burger span{width:24px;height:2px;background:var(--marine);border-radius:2px}
.phero{position:relative;overflow:hidden;padding:72px 0 68px;background:linear-gradient(135deg,var(--hero-a),var(--hero-b));color:#fff}
.phero::after{content:"";position:absolute;right:-9%;bottom:-45%;width:430px;height:430px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.18),transparent 68%)}
.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr 300px;gap:54px;align-items:center}
.back{display:inline-flex;align-items:center;gap:7px;margin-bottom:25px;font:700 13px 'Montserrat';color:rgba(255,255,255,.82)}
.phero .eyebrow{color:var(--accent-soft);margin-bottom:13px}.phero h1{font-size:clamp(32px,5vw,52px);max-width:17ch;margin-bottom:20px}
.phero .intro{font-size:clamp(16px,2vw,19px);color:rgba(255,255,255,.86);max-width:62ch}
.hero-logo{justify-self:center;width:240px;height:240px;display:grid;place-items:center;border-radius:34px;background:rgba(255,255,255,.94);box-shadow:0 25px 60px rgba(0,0,0,.24)}
.hero-logo img{max-width:190px;max-height:190px;width:auto;height:auto}
.hero-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:28px}.hero-tags span{padding:7px 11px;border:1px solid rgba(255,255,255,.3);border-radius:999px;background:rgba(255,255,255,.09);font-size:12px;font-weight:600}
section{padding:76px 0}.section-tint{background:var(--wash);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.sec-head{max-width:68ch;margin-bottom:36px}.sec-head.center{text-align:center;margin-left:auto;margin-right:auto}.sec-head .eyebrow{margin-bottom:8px}
.sec-head h2{font-size:clamp(26px,3.7vw,38px);color:var(--marine);margin-bottom:12px}.sec-head p{color:var(--sub);font-size:15px}
.services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.service{position:relative;min-height:220px;padding:25px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 8px 25px rgba(7,19,113,.05);transition:transform .2s,box-shadow .2s}
.service:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(7,19,113,.11)}
.service .num{display:grid;place-items:center;width:35px;height:35px;margin-bottom:18px;border-radius:10px;background:var(--accent-bg);color:var(--accent-dark);font:800 13px 'Montserrat'}
.service h3{font-size:18px;color:var(--marine);margin-bottom:10px}.service p{font-size:14px;color:var(--sub)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:24px}.panel{padding:31px;border:1px solid var(--line);border-radius:18px;background:#fff}
.panel.accent{background:linear-gradient(145deg,var(--accent-bg),#fff);border-color:var(--accent-line)}
.panel h3{font-size:22px;color:var(--marine);margin-bottom:18px}.check-list{list-style:none;display:grid;gap:12px}
.check-list li{position:relative;padding-left:27px;color:var(--sub);font-size:14px}.check-list li::before{content:"✓";position:absolute;left:0;top:0;color:var(--accent-dark);font-weight:800}
.process{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;counter-reset:step}
.step{position:relative;padding:24px 20px;border-radius:15px;background:#fff;border:1px solid var(--line)}
.step::before{counter-increment:step;content:"0" counter(step);display:block;margin-bottom:15px;color:var(--accent-dark);font:800 14px 'Montserrat'}
.step h3{font-size:16px;color:var(--marine);margin-bottom:8px}.step p{font-size:13.5px;color:var(--sub)}
.sectors{display:flex;flex-wrap:wrap;justify-content:center;gap:11px}.sectors span{padding:11px 16px;border-radius:999px;background:var(--accent-bg);border:1px solid var(--accent-line);color:var(--marine);font:700 13px 'Montserrat'}
.cta-band{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;padding:38px 42px;border-radius:20px;background:linear-gradient(135deg,var(--marine),var(--royal));color:#fff;box-shadow:0 24px 55px rgba(7,19,113,.2)}
.cta-band h2{font-size:clamp(24px,3vw,34px);margin-bottom:8px}.cta-band p{color:#c9d8f2;max-width:58ch}
.btn{display:inline-block;padding:14px 25px;border-radius:8px;background:var(--amber);color:#fff;font:700 14px 'Montserrat';white-space:nowrap}
footer{background:#0a1024;color:#8ea0c0;padding:56px 0 28px;margin-top:20px}.foot-grid{display:flex;justify-content:space-between;flex-wrap:wrap;gap:30px;margin-bottom:34px}
.foot-brand{font:800 20px 'Montserrat';color:#fff}.foot-brand span{color:#7fa8e0;font-weight:500}.foot-col h4{font-size:13px;color:#fff;margin-bottom:12px;text-transform:uppercase;letter-spacing:.06em}
.foot-col a{display:block;font-size:13px;margin-bottom:8px}.foot-col a:hover{color:#fff}.foot-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:20px;font-size:12px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}
:focus-visible{outline:3px solid var(--cyan);outline-offset:3px;border-radius:4px}
.pole-infra{--accent:#F2BE01;--accent-dark:#8A6800;--accent-soft:#FFF0A8;--accent-bg:#FFF8E3;--accent-line:#F4D878;--hero-a:#715300;--hero-b:#D99F00}
.pole-building{--accent:#8A9099;--accent-dark:#536071;--accent-soft:#DDE3EA;--accent-bg:#EEF1F4;--accent-line:#C8D0D9;--hero-a:#15213A;--hero-b:#53657B}
.pole-energy{--accent:#0C7C3F;--accent-dark:#086533;--accent-soft:#A9E9C4;--accent-bg:#E6F4EC;--accent-line:#AED9BF;--hero-a:#063B26;--hero-b:#0C7C3F}
.pole-carto{--accent:#AD8765;--accent-dark:#725237;--accent-soft:#E7C8A8;--accent-bg:#F4EBE1;--accent-line:#DCC4AB;--hero-a:#25315D;--hero-b:#7A5D3F}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr 210px;gap:30px}.hero-logo{width:190px;height:190px}.hero-logo img{max-width:150px;max-height:150px}.services{grid-template-columns:1fr 1fr}.process{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.menu{display:none}.burger{display:flex}.brand .bt{display:none}.phero{padding:54px 0}.hero-grid{grid-template-columns:1fr}.hero-logo{display:none}.services,.split,.process{grid-template-columns:1fr}.cta-band{grid-template-columns:1fr;padding:30px 24px}.cta-band .btn{justify-self:start}.service{min-height:0}}

