:root{--navy:#0b2239;--blue:#124a73;--blue2:#17608f;--teal:#45bfa7;--ink:#162536;--muted:#5c6b78;--pale:#eef5f7;--white:#fff;--line:#d8e3e8;--shadow:0 20px 50px rgba(11,34,57,.12);--radius:20px;--container:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.65}img,svg{max-width:100%;display:block}a{color:inherit}.container{width:min(calc(100% - 40px),var(--container));margin-inline:auto}.skip-link{position:absolute;left:-999px;top:10px;background:#fff;padding:10px;z-index:100}.skip-link:focus{left:10px}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(216,227,232,.75)}.nav-wrap{height:84px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand-mark{width:47px;height:47px;border-radius:13px;background:var(--navy);display:grid;place-items:center}.brand-mark svg{width:35px;fill:none;stroke:var(--teal);stroke-width:3}.brand strong{display:block;font-family:Manrope,sans-serif;font-size:1.05rem;letter-spacing:-.02em}.brand small{display:block;color:var(--muted);font-size:.69rem}.primary-nav{display:flex;align-items:center;gap:28px}.primary-nav a{text-decoration:none;font-weight:600;font-size:.93rem}.primary-nav a:hover{color:var(--blue2)}.nav-cta{background:var(--navy);color:#fff!important;padding:11px 18px;border-radius:999px}.menu-toggle{display:none;border:0;background:none;padding:8px}.menu-toggle span{display:block;width:25px;height:2px;background:var(--navy);margin:5px}.hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#f9fcfd 0%,#e9f4f6 100%);padding:88px 0 78px}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(18,74,115,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(18,74,115,.05) 1px,transparent 1px);background-size:46px 46px;mask-image:linear-gradient(to right,#000,transparent 75%)}.hero-layout{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center}.eyebrow{margin:0 0 14px;text-transform:uppercase;letter-spacing:.16em;font-size:.76rem;font-weight:800;color:var(--blue2)}h1,h2,h3{font-family:Manrope,Inter,sans-serif;line-height:1.15;margin-top:0}h1{font-size:clamp(2.7rem,5vw,5.2rem);letter-spacing:-.055em;margin-bottom:24px;max-width:820px}h2{font-size:clamp(2rem,3.5vw,3.45rem);letter-spacing:-.04em;margin-bottom:20px}h3{font-size:1.15rem;margin-bottom:10px}.hero-lead{font-size:1.16rem;color:var(--muted);max-width:680px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin:30px 0 36px}.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:14px 23px;font:700 .95rem Inter,sans-serif;text-decoration:none;cursor:pointer}.button-primary{background:var(--blue);color:#fff;box-shadow:0 12px 25px rgba(18,74,115,.22)}.button-primary:hover{background:var(--navy);transform:translateY(-1px)}.button-secondary{background:#fff;color:var(--navy);border:1px solid var(--line)}.hero-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.hero-proof div{padding-right:12px;border-right:1px solid var(--line)}.hero-proof div:last-child{border:0}.hero-proof strong{display:block;font:800 1.35rem Manrope;color:var(--navy)}.hero-proof span{display:block;font-size:.78rem;color:var(--muted)}.hero-visual svg{width:100%}.trust-strip{background:var(--navy);color:#d9edf7}.trust-items{min-height:76px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.section{padding:100px 0}.section-alt{background:var(--pale)}.two-column{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}.section-heading p:last-child{color:var(--muted);max-width:680px}.section-heading.centered{text-align:center;max-width:760px;margin:0 auto 48px}.about-copy{font-size:1.08rem;color:var(--muted)}.about-copy p:first-child{font-size:1.25rem;color:var(--ink)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;min-height:250px;box-shadow:0 5px 20px rgba(11,34,57,.04);transition:.25s}.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.service-card .icon{width:45px;height:45px;border-radius:13px;display:grid;place-items:center;background:#e5f6f2;color:#15745f;font-weight:800;margin-bottom:25px}.service-card p{color:var(--muted);margin-bottom:0}.approach-section{background:#fff}.approach-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:42px}.step{display:flex;gap:20px;border-top:1px solid var(--line);padding:24px 0}.step>span{flex:0 0 44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;font-weight:800}.step p{color:var(--muted);margin:0}.section-dark{background:var(--navy);color:#fff}.section-dark .eyebrow{color:#6fd4bf}.section-dark .section-heading p:last-child{color:#afc4d0}.experience-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:start}.experience-points{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.experience-points div{padding:24px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(255,255,255,.04)}.experience-points strong{display:block;margin-bottom:8px}.experience-points span{color:#bcd0da;font-size:.93rem}.contact-section{background:linear-gradient(180deg,#f3f8fa,#fff)}.contact-card{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;background:#fff;border:1px solid var(--line);border-radius:28px;padding:54px;box-shadow:var(--shadow)}.contact-details{margin-top:30px}.contact-details a{color:var(--blue2);font-weight:700}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form label{font-size:.8rem;font-weight:700;color:var(--navy)}.contact-form label:nth-child(4){grid-column:1/-1}.contact-form input,.contact-form textarea{width:100%;display:block;margin-top:6px;border:1px solid #cbd9df;border-radius:10px;padding:12px 13px;font:inherit;background:#fbfdfe}.contact-form input:focus,.contact-form textarea:focus{outline:3px solid rgba(69,191,167,.22);border-color:var(--teal)}.contact-form button{justify-self:start}.contact-form small{grid-column:1/-1;color:var(--muted)}.site-footer{background:#071a2b;color:#c9d9e1;padding:35px 0}.footer-grid{display:flex;justify-content:space-between;gap:30px;align-items:center}.footer-grid p{margin:4px 0;font-size:.85rem}.footer-grid a{font-size:.85rem}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media (max-width:900px){.menu-toggle{display:block}.primary-nav{display:none;position:absolute;top:84px;left:0;right:0;background:#fff;padding:22px;box-shadow:0 15px 30px rgba(0,0,0,.1);flex-direction:column;align-items:flex-start}.primary-nav.open{display:flex}.hero-layout,.two-column,.experience-layout,.contact-card{grid-template-columns:1fr}.hero{padding-top:62px}.hero-visual{max-width:650px;margin:auto}.services-grid{grid-template-columns:repeat(2,1fr)}.two-column,.experience-layout,.contact-card{gap:35px}.brand small{display:none}}
@media (max-width:620px){.container{width:min(calc(100% - 28px),var(--container))}.nav-wrap{height:72px}.primary-nav{top:72px}.brand strong{font-size:.92rem}.brand-mark{width:40px;height:40px}.hero{padding:48px 0 56px}.hero-proof{grid-template-columns:1fr}.hero-proof div{border-right:0;border-bottom:1px solid var(--line);padding-bottom:10px}.trust-items{justify-content:center;padding:22px 0}.section{padding:72px 0}.services-grid,.approach-grid,.experience-points{grid-template-columns:1fr}.contact-card{padding:28px 20px}.contact-form{grid-template-columns:1fr}.contact-form label:nth-child(4){grid-column:auto}.footer-grid{flex-direction:column;align-items:flex-start}h1{font-size:2.65rem}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}

.page-hero{padding:78px 0;background:linear-gradient(135deg,#f8fbfc,#e9f4f6);border-bottom:1px solid var(--line)}
.page-hero .container{max-width:900px}.page-hero h1{font-size:clamp(2.5rem,5vw,4.7rem)}
.breadcrumbs{font-size:.82rem;color:var(--muted);margin-bottom:18px}.breadcrumbs a{color:var(--blue2)}
.content-grid{display:grid;grid-template-columns:1fr 320px;gap:64px;align-items:start}.prose{font-size:1.05rem}.prose h2{margin-top:50px;font-size:2rem}.prose h3{margin-top:30px}.prose p,.prose li{color:var(--muted)}
.side-card{position:sticky;top:110px;background:var(--navy);color:#fff;border-radius:22px;padding:28px}.side-card p{color:#bfd0d9}.side-card .button{width:100%;background:var(--teal);color:#082a2a}
.capabilities{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:28px 0}.capability{border:1px solid var(--line);border-radius:16px;padding:22px;background:#fff}.capability p{margin-bottom:0;font-size:.95rem}
.client-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.client-type{border:1px solid var(--line);padding:24px;border-radius:16px;background:#fff;min-height:150px}.client-type p{color:var(--muted);font-size:.92rem}
.banner{background:linear-gradient(135deg,var(--blue),var(--navy));color:#fff;border-radius:26px;padding:42px;display:flex;align-items:center;justify-content:space-between;gap:30px}.banner p{color:#c7d9e3;margin:0}.banner .button{background:#fff;color:var(--navy);white-space:nowrap}
.resource-list{display:grid;gap:16px}.resource{display:flex;justify-content:space-between;gap:25px;align-items:center;border:1px solid var(--line);border-radius:16px;padding:22px}.resource p{margin:4px 0;color:var(--muted)}
.notice{background:#fff8e8;border:1px solid #efdaa6;border-radius:14px;padding:18px;color:#76570d}
.footer-links{display:flex;gap:18px;flex-wrap:wrap}.footer-links a{text-decoration:none}
.active{color:var(--blue2)!important}
@media(max-width:900px){.content-grid{grid-template-columns:1fr}.side-card{position:static}.client-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.capabilities,.client-grid{grid-template-columns:1fr}.banner,.resource{align-items:flex-start;flex-direction:column}.page-hero{padding:55px 0}}
.hero-visual img{width:100%;height:auto;border-radius:28px;box-shadow:var(--shadow)}
.visual-services{background:#fff}.visual-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.visual-card{overflow:hidden;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 8px 24px rgba(11,34,57,.06)}.visual-card img{width:100%;aspect-ratio:8/5;object-fit:cover}.visual-card h3{margin:22px 24px 8px}.visual-card p{margin:0 24px 26px;color:var(--muted)}
@media(max-width:700px){.visual-grid{grid-template-columns:1fr}}

/* Logo and Utility Expertise image corrections */
.brand{flex:0 1 470px;min-width:250px;max-width:470px;height:68px;overflow:visible}
.brand-logo{display:block;width:100%;height:68px;object-fit:contain;object-position:left center}
.hero-visual{min-width:0}.hero-visual img{display:block;width:100%;max-height:520px;object-fit:contain;background:transparent}
.visual-grid{align-items:stretch}
.visual-card{display:flex;flex-direction:column;min-width:0;height:100%}
.visual-card-media{height:210px;overflow:hidden;background:#eef5f7;border-bottom:1px solid var(--line)}
.visual-card-media img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center}
.visual-card-body{padding:22px 24px 26px;flex:1}
.visual-card-body h3,.visual-card-body p{margin-left:0;margin-right:0}
.visual-card-body h3{margin-top:0;margin-bottom:8px}.visual-card-body p{margin-bottom:0}
@media(max-width:900px){.brand{max-width:390px;height:60px}.brand-logo{height:60px}.visual-card-media{height:190px}}
@media(max-width:620px){.brand{max-width:270px;min-width:210px;height:50px}.brand-logo{height:50px}.visual-card-media{height:165px}.visual-card-body{padding:18px 19px 22px}}

/* Final logo, language selector, and expertise-card corrections */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.brand{flex:0 1 500px;max-width:500px;min-width:300px;height:68px;overflow:visible}
.brand-logo{width:100%;height:68px;object-fit:contain;object-position:left center;overflow:visible}
.language-picker{display:flex;align-items:center}
.language-picker select{border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--navy);font:600 .83rem Inter,sans-serif;padding:9px 30px 9px 12px;cursor:pointer}
.visual-card-media{height:210px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#eef5f7;border-bottom:1px solid var(--line)}
.visual-card-media img{width:100%;height:100%;max-width:100%;object-fit:contain!important;object-position:center;padding:12px}
.resource-list{margin-top:0}
@media(max-width:1050px){.primary-nav{gap:16px}.brand{max-width:410px;min-width:270px}}
@media(max-width:900px){.brand{max-width:390px;height:60px}.brand-logo{height:60px}.language-picker{width:100%}.language-picker select{width:100%}}
@media(max-width:620px){.brand{max-width:265px;min-width:190px;height:48px}.brand-logo{height:48px}.visual-card-media{height:175px}}

/* Version 2 photographic redesign */
.home-v2 .site-header{background:rgba(255,255,255,.97);box-shadow:0 3px 18px rgba(7,26,43,.08)}
.home-v2 .hero-photo{position:relative;min-height:610px;padding:0;background-image:linear-gradient(90deg,rgba(4,20,36,.88) 0%,rgba(5,26,45,.72) 47%,rgba(5,26,45,.18) 78%),url('images/photo/hero-transmission-substation.jpg');background-size:cover;background-position:center;display:flex;align-items:center;color:#fff;overflow:hidden}
.home-v2 .hero-photo:after{content:"";position:absolute;inset:auto 0 0;height:7px;background:linear-gradient(90deg,var(--teal),#f47721)}
.home-v2 .hero-photo .hero-grid{display:none}
.home-v2 .hero-photo .hero-layout{position:relative;z-index:1;display:block;width:100%;padding:92px 0 96px}
.home-v2 .hero-photo .hero-copy{max-width:790px}
.home-v2 .hero-photo .eyebrow{color:#84e0cd;text-shadow:0 1px 2px rgba(0,0,0,.25)}
.home-v2 .hero-photo h1{max-width:790px;color:#fff;font-size:clamp(3rem,6.1vw,5.7rem);line-height:1.01;text-shadow:0 3px 18px rgba(0,0,0,.38)}
.home-v2 .hero-photo .hero-lead{max-width:720px;color:#edf5f8;font-size:1.22rem;text-shadow:0 2px 10px rgba(0,0,0,.45)}
.home-v2 .hero-photo .button-primary{background:#f47721;color:#fff;border-color:#f47721;box-shadow:0 10px 26px rgba(244,119,33,.26)}
.home-v2 .hero-photo .button-primary:hover{background:#dc6415;transform:translateY(-2px)}
.home-v2 .hero-photo .button-secondary{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.7);color:#fff;backdrop-filter:blur(7px)}
.home-v2 .hero-photo .button-secondary:hover{background:#fff;color:var(--navy)}
.home-v2 .hero-note{margin:27px 0 18px;color:#d9e8ee;font-size:.86rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.home-v2 .hero-proof{max-width:710px;background:rgba(5,25,42,.58);border:1px solid rgba(255,255,255,.2);border-radius:18px;padding:18px 20px;backdrop-filter:blur(8px)}
.home-v2 .hero-proof div{border-color:rgba(255,255,255,.22)}
.home-v2 .hero-proof strong{color:#fff}.home-v2 .hero-proof span{color:#d8e7ed}
.home-v2 .trust-strip{background:#092a49}
.home-v2 .visual-services{background:linear-gradient(180deg,#fff,#f4f8fa)}
.home-v2 .visual-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.home-v2 .visual-card{border-radius:16px;box-shadow:0 10px 28px rgba(7,26,43,.1);transition:transform .3s ease,box-shadow .3s ease}
.home-v2 .visual-card:hover{transform:translateY(-7px);box-shadow:0 18px 38px rgba(7,26,43,.16)}
.home-v2 .visual-card-media.photo-media{height:190px;padding:0;background:#dfe8ec;overflow:hidden}
.home-v2 .visual-card-media.photo-media img{width:100%;height:100%;padding:0!important;object-fit:cover!important;object-position:center}
.home-v2 .visual-card-body{position:relative;padding:26px 22px 28px;border-top:4px solid #f47721}
.home-v2 .visual-card-body h3{font-size:1.08rem;color:var(--navy)}
.home-v2 .service-card{border-top:4px solid transparent}
.home-v2 .service-card:hover{border-top-color:var(--teal)}
.home-v2 .section-dark{background:linear-gradient(135deg,#071a2b,#0b3658)}
@media(max-width:1100px){.home-v2 .visual-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-v2 .visual-card-media.photo-media{height:230px}}
@media(max-width:900px){.home-v2 .hero-photo{min-height:570px;background-position:58% center}.home-v2 .hero-photo .hero-layout{padding:72px 0 80px}.home-v2 .hero-photo .hero-copy{max-width:680px}}
@media(max-width:620px){.home-v2 .hero-photo{min-height:620px;background-image:linear-gradient(90deg,rgba(4,20,36,.91),rgba(5,26,45,.62)),url('images/photo/hero-transmission-substation.jpg');background-position:62% center}.home-v2 .hero-photo h1{font-size:2.75rem}.home-v2 .hero-photo .hero-lead{font-size:1.05rem}.home-v2 .hero-actions{align-items:stretch}.home-v2 .hero-actions .button{width:100%}.home-v2 .hero-proof{grid-template-columns:1fr;padding:16px}.home-v2 .visual-grid{grid-template-columns:1fr}.home-v2 .visual-card-media.photo-media{height:210px}}

/* Version 2.1 header and language reliability fixes */
.brand{flex:0 0 430px;width:430px;max-width:430px;min-width:0;height:68px;overflow:visible}
.brand-logo{display:block;width:100%;height:68px;max-width:none;object-fit:contain;object-position:left center;overflow:visible}
.primary-nav{flex:1 1 auto;justify-content:flex-end;min-width:0;gap:20px}
.language-picker select{min-width:112px}
@media(max-width:1120px) and (min-width:901px){.brand{flex-basis:350px;width:350px;max-width:350px}.brand-logo{height:62px}.primary-nav{gap:13px}.primary-nav a{font-size:.86rem}.language-picker select{min-width:100px;padding-left:10px;padding-right:24px}}
@media(max-width:900px){.brand{flex:0 1 390px;width:auto;max-width:390px;height:60px}.brand-logo{width:100%;height:60px;max-width:100%}.primary-nav{justify-content:flex-start}.language-picker select{min-width:0}}
@media(max-width:620px){.brand{max-width:280px;height:50px}.brand-logo{height:50px}}
