/* Shared presentation for the five public website routes only. */
.elec-public{--navy-900:#0b2e59;--navy-800:#0b2e59;--blue-700:#1676c5;--blue-600:#1676c5;--sky-500:#53b7f4;--ink:#14263a;--muted:#66788a;--line:#dce5ed;--surface:#f4f8fb;--radius:4px;--shadow:0 12px 40px #0b2e590a;--container:min(1440px,calc(100% - clamp(40px,7vw,144px)));--type-body:clamp(16px,.88rem + .25vw,20px);--type-title:clamp(38px,2rem + 3vw,88px);--type-heading:clamp(29px,1.25rem + 2vw,56px);--type-card:clamp(21px,1rem + .65vw,30px);font-family:Arial,"Helvetica Neue",Tahoma,sans-serif;font-size:var(--type-body);line-height:1.75;color:var(--ink);background:#fff}
html[dir=rtl] .elec-public{font-family:Tahoma,Arial,sans-serif;line-height:1.9}
.elec-public :is(h1,h2,h3){text-wrap:balance;overflow-wrap:break-word}
.elec-public p{line-height:1.8}
.elec-public :is(.section,.service-list-section,.contact-section){padding:clamp(64px,7.5vw,128px) 0}
.elec-public :is(.section-copy h2,.section-heading h2,.purpose-main h2,.contact-info h2,.cta-content h2,.download-band h2){font-size:var(--type-heading);font-weight:500;line-height:1.18;letter-spacing:-.035em}
.elec-public :is(.section-copy p,.section-heading>p,.service-row-copy p,.contact-info>p,.ep-details,.hero-content>p,.page-hero p){font-size:var(--type-body);line-height:1.8}
.elec-public :is(.section-kicker,.ep-kicker,.eyebrow){font-size:clamp(11px,.65rem + .13vw,14px);letter-spacing:.15em;font-weight:700;color:#1676c5}
.elec-public :is(.section-heading,.split-grid,.contact-grid){gap:clamp(28px,5vw,80px)}
.elec-public :is(.section-heading){margin-bottom:clamp(32px,4vw,60px)}
.elec-public .topbar{background:#071e3b;color:#e0e8f1;font-size:12px}
.elec-public .topbar-inner{min-height:38px}
.elec-public .site-header{background:#fffffff5;backdrop-filter:blur(16px);border-bottom:1px solid #dce5ed;box-shadow:none}
.elec-public .site-header.is-scrolled{box-shadow:0 5px 24px #0b2e590a}
.elec-public .header-inner{min-height:clamp(80px,6.5vw,104px);gap:24px}
.elec-public .site-header .brand-copy strong{color:#0b2e59;font-size:clamp(16px,1.15vw,20px);letter-spacing:.13em}
.elec-public .site-header .brand-copy small{color:#66788a;font-size:clamp(10px,.75vw,12px)}
.elec-public .brand img{width:56px;height:56px;flex-basis:56px}
.elec-public .main-nav>a{font-size:clamp(13px,.85vw,16px);font-weight:600;padding:12px;color:#0b2e59;border-radius:2px}
.elec-public .main-nav>a:hover,.elec-public .main-nav>a.is-active{background:#edf5fc;color:#1676c5}
.elec-public .main-nav .portal-link{font-size:12px;border:1px solid #ccddea;background:transparent;border-radius:3px}
.elec-public .nav-toggle{color:#0b2e59}
.elec-public.elec-home .site-header:not(.is-scrolled){background:transparent;backdrop-filter:none;border-color:#ffffff30}
.elec-public.elec-home .site-header:not(.is-scrolled) :is(.brand-copy strong,.brand-copy small,.main-nav>a,.nav-toggle){color:#fff}
.elec-public.elec-home .site-header:not(.is-scrolled) .main-nav>a:hover,.elec-public.elec-home .site-header:not(.is-scrolled) .main-nav>a.is-active{background:#ffffff16}
.elec-public.elec-home .site-header,.elec-public.elec-home .header-inner{height:96px;min-height:96px}
.elec-public :is(.btn,.text-link,.premium-service-link){font-size:clamp(14px,.75rem + .15vw,17px);font-weight:600}
.elec-public .btn{border-radius:3px;min-height:52px;padding:14px 26px;box-shadow:none;background-image:none;transition:background .2s,transform .2s;white-space:normal;text-align:center}
.elec-public .btn-primary{background:#1676c5;color:#fff}
.elec-public .btn-primary:hover{background:#0c5fa7;box-shadow:none;transform:translateY(-2px)}
.elec-public .btn-secondary{background:#0b2e59;color:#fff}
.elec-public .page-hero{min-height:clamp(390px,36vw,620px)}
.elec-public .page-hero .container{padding:clamp(64px,7vw,110px) 0}
.elec-public .page-hero h1{font-size:var(--type-title);font-weight:500;line-height:1.1;letter-spacing:-.045em;max-width:1050px}
.elec-public .page-hero p{max-width:760px;color:#e1eaf3}
.elec-public .page-hero:after{background:linear-gradient(90deg,#071e3be8,#071e3b99,#071e3b40)}
html[dir=rtl] .elec-public .page-hero:after{background:linear-gradient(270deg,#071e3be8,#071e3b99,#071e3b40)}
.elec-public :is(.image-panel,.org-chart,.contact-form-wrap,.contact-cards>a,.contact-cards>div,.mission-card,.value-card){border-radius:4px;box-shadow:none}
.elec-public .mission-card{padding:clamp(24px,3vw,48px)}
.elec-public .mission-card h2{font-size:var(--type-card);font-weight:500}
.elec-public .value-card h3{font-size:clamp(17px,1.2vw,21px);font-weight:600}
.elec-public .service-list-section,.elec-public .premium-service-list{background:#f4f8fb}
.elec-public .premium-services-orb{display:none}
.elec-public .service-list{gap:clamp(28px,4vw,56px)}
.elec-public :is(.service-row,.premium-service-row){border:1px solid #dce5ed;background:#fff;border-radius:4px;box-shadow:none;transform:none!important}
.elec-public .service-row:hover{box-shadow:none}
.elec-public .service-row-copy{padding:clamp(24px,4vw,64px)}
.elec-public .service-row-copy h2{font-size:var(--type-card);font-weight:500;line-height:1.3}
.elec-public .service-row-copy ul{font-size:var(--type-body)}
.elec-public .service-row-image{min-height:440px}
.elec-public .service-row-image>span{font-size:24px;font-weight:500}
.elec-public .service-icon{border-radius:3px;box-shadow:none;background:#edf5fc;color:#1676c5}
.elec-public .premium-service-row .service-row-copy:before{display:none}
.elec-public .el-projects-page .ep-hero{padding:clamp(64px,7vw,112px) 0;background:#edf5fc;border-bottom:1px solid #dce5ed}
.elec-public .el-projects-page .ep-hero h1{font-size:var(--type-title);font-weight:500;line-height:1.15;color:#0b2e59}
.elec-public .el-projects-page .ep-hero p{font-size:var(--type-body);color:#66788a}
.elec-public .ep-list{padding:clamp(64px,7vw,112px) 0}
.elec-public .ep-card{border-radius:4px;box-shadow:none;border:1px solid #dce5ed;margin-bottom:48px;scroll-margin-top:120px}
.elec-public .ep-content{padding:clamp(24px,3vw,48px)}
.elec-public .ep-content h2{font-size:var(--type-card);font-weight:500;line-height:1.3;color:#0b2e59}
.elec-public .ep-meta-row{font-size:clamp(14px,1vw,17px)}
.elec-public .ep-arrow{border-radius:3px;border:1px solid #ffffff70}
.elec-public .ep-count{border-radius:3px}
.elec-public .contact-form-wrap{padding:clamp(24px,3.4vw,52px);border:1px solid #dce5ed}
.elec-public .form-heading h2{font-size:var(--type-card);font-weight:500}
.elec-public :is(input,textarea,select){border-radius:3px;font-size:16px;padding:14px;border-color:#cad8e5;min-height:50px}
.elec-public .form-grid label>span{font-size:14px}
.elec-public .form-note{font-size:13px}
.elec-public .cta-section{background:#edf5fc;color:#0b2e59;padding:clamp(64px,7vw,112px) 0}
.elec-public :is(.cta-bg,.cta-shade,.footer-glow){display:none}
.elec-public .cta-content{gap:40px}
.elec-public .cta-content h2{color:#0b2e59;max-width:920px}
.elec-public .cta-content p{color:#66788a;font-size:var(--type-body)}
.elec-public .site-footer{background:#071e3b;padding-top:clamp(56px,6vw,90px)}
.elec-public .footer-grid{gap:clamp(32px,5vw,80px);padding-bottom:56px}
.elec-public .footer-brand p,.elec-public .footer-links,.elec-public .footer-contact{font-size:clamp(14px,.8rem + .2vw,18px);line-height:1.8}
.elec-public .footer-grid h3{font-size:17px;font-weight:600}
.elec-public .footer-bottom{font-size:12px;color:#a8bcd3}
.elec-public.elec-home .home-project-copy h1{font-size:var(--type-title);line-height:1.12}
.elec-public.elec-home .premium-service-content h3,.elec-public.elec-home .home-work-caption h3{font-size:var(--type-card);line-height:1.3}
.elec-public.elec-home .premium-service-content p{font-size:var(--type-body)}
.elec-public :is(a,button,input,textarea,select):focus-visible{outline:3px solid #53b7f4;outline-offset:4px}
html[dir=rtl] .elec-public :is(h1,h2,h3){letter-spacing:0;line-height:1.45}
html[dir=rtl] .elec-public :is(.section-kicker,.ep-kicker,.eyebrow){letter-spacing:0}
@media(min-width:1800px){.elec-public{--container:min(1640px,calc(100% - 160px))}}
@media(max-width:1100px){.elec-public .main-nav>a{padding:10px 8px}.elec-public .site-header .brand-copy small{max-width:180px}.elec-public .service-row-image{min-height:380px}.elec-public .ep-card{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}}
@media(max-width:900px){.elec-public .main-nav{background:#fff;border:1px solid #dce5ed;border-radius:3px;padding:12px;max-height:70svh;overflow:auto}.elec-public .site-header .main-nav>a,.elec-public.elec-home .site-header:not(.is-scrolled) .main-nav>a{color:#0b2e59;font-size:16px;padding:12px}.elec-public.elec-home .site-header,.elec-public.elec-home .header-inner{height:80px;min-height:80px}.elec-public .contact-grid{grid-template-columns:1fr}.elec-public .ep-card{grid-template-columns:1fr}.elec-public .ep-media{min-height:440px}.elec-public .cta-content{flex-direction:column;align-items:flex-start}.elec-public .service-row,.elec-public .service-row:nth-child(even){grid-template-columns:1fr}.elec-public .service-row:nth-child(even) .service-row-image{order:0}.elec-public .split-grid{grid-template-columns:1fr}.elec-public .org-chart{padding:24px;overflow:auto}.elec-public .org-branches{min-width:650px}}
@media(max-width:640px){.elec-public .brand img{width:44px;height:44px;flex-basis:44px}.elec-public .site-header .brand-copy small{font-size:9px;max-width:200px}.elec-public .section-heading{flex-direction:column;align-items:flex-start;gap:16px}.elec-public .mission-grid,.elec-public .values-grid,.elec-public .form-grid{grid-template-columns:1fr}.elec-public .service-row-image,.elec-public .ep-media,.elec-public .ep-placeholder{min-height:300px}.elec-public .footer-grid{grid-template-columns:1fr}.elec-public .footer-bottom{align-items:flex-start;text-align:start}.elec-public .download-band .container,.elec-public .map-band .container{flex-direction:column;align-items:flex-start}.elec-public .page-hero{min-height:400px}.elec-public .ep-meta-row{grid-template-columns:90px minmax(0,1fr)}.elec-public .ep-meta-row strong{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){.elec-public *{transition:none!important;animation:none!important;scroll-behavior:auto!important}.elec-public .reveal{opacity:1;transform:none}}

/* V4 — composed editorial layouts, restrained architectural details. */
.elec-public{--surface:#f0f5f9;--type-title:clamp(42px,2rem + 3.8vw,100px);--type-heading:clamp(32px,1.3rem + 2.2vw,62px)}
.elec-public .section-kicker{display:flex;align-items:center;gap:14px}
.elec-public .section-kicker:before{content:"";display:block;width:28px;height:2px;background:#1676c5;flex-shrink:0}
.elec-public .page-hero .section-kicker{color:#c7e8ff}
.elec-public .page-hero .section-kicker:before{background:#53b7f4}
.elec-public .main-nav>a.is-active{background:transparent}
.elec-public .main-nav>a.is-active:after{left:12px;right:12px;bottom:6px;height:2px;background:#1676c5}
.elec-public .text-link{padding-bottom:8px;border-bottom:1px solid #1676c54d;transition:gap .25s,border-color .25s}
.elec-public .text-link:hover{gap:24px;border-color:#1676c5}
.elec-public .page-hero:before{transform:scale(1.01)}
.elec-public .page-hero h1{max-width:1100px}
.elec-public.elec-home .home-project-copy{max-width:1040px;border-inline-start:2px solid #53b7f4;padding-inline-start:30px}
.elec-public.elec-home .home-project-copy h1{font-weight:500;font-size:clamp(40px,5.8vw,92px);letter-spacing:-.045em;line-height:1.06}
.elec-public.elec-home .home-project-location{font-size:clamp(14px,1.1vw,19px);margin-top:26px;letter-spacing:.02em}
.elec-public.elec-home .home-project-content{padding-bottom:138px}
.elec-public.elec-home .home-project-nav{width:52px;height:52px;border-radius:50%}
.elec-public.elec-home .home-project-overlay{background:linear-gradient(180deg,#041529a6,transparent 40%,#04152933 58%,#041529e6)}
.elec-public.elec-home .intro-section .split-grid{grid-template-columns:.92fr 1.08fr;gap:clamp(40px,8vw,128px)}
.elec-public.elec-home .intro-section .image-panel{min-height:540px;overflow:visible;border-radius:0;isolation:isolate}
.elec-public.elec-home .intro-section .image-panel img{border-radius:2px}
.elec-public.elec-home .intro-section .image-panel:before{inset:28px -22px -24px 30px;border:1px solid #b9ccdd;background:none;z-index:-1}
.elec-public.elec-home .image-panel-badge{bottom:28px;inset-inline-start:24px;background:#0b2e59;padding:24px 28px;border-radius:0}
.elec-public.elec-home .image-panel-badge strong{color:#fff;font-size:20px;font-weight:500}
.elec-public.elec-home .image-panel-badge span{color:#c2d9ec;font-size:13px}
.elec-public.elec-home .section-copy h2{margin-top:24px;margin-bottom:28px}
.elec-public.elec-home .premium-services{background:#f0f5f9}
.elec-public.elec-home .premium-service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 30px}
.elec-public.elec-home .premium-service-card:nth-child(n){background:#fff;display:flex;flex-direction:column;border-radius:3px;overflow:hidden;border:1px solid #dde7ef}
.elec-public.elec-home .premium-service-media,.elec-public.elec-home .premium-service-card:nth-child(n) .premium-service-media{aspect-ratio:5/4;flex-shrink:0}
.elec-public.elec-home .premium-service-content{padding:28px;display:flex;flex-direction:column;flex:1}
.elec-public.elec-home .premium-service-content h3{font-size:clamp(23px,1.6vw,30px);font-weight:500;letter-spacing:-.025em;margin-bottom:16px}
.elec-public.elec-home .premium-service-content p{font-size:clamp(15px,1.05vw,18px);line-height:1.75;margin-bottom:26px}
.elec-public.elec-home .premium-service-link{margin-top:auto;padding-top:18px}
.elec-public.elec-home .premium-service-number{background:#fff;color:#0b2e59;padding:9px 12px;font-size:12px;bottom:16px;inset-inline-start:16px}
.elec-public.elec-home .home-work-card:only-child{background:#0b2e59;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}
.elec-public.elec-home .home-work-card:only-child .home-work-caption{padding:clamp(28px,4vw,64px);align-items:center}
.elec-public.elec-home .home-work-card:only-child h3{color:#fff;font-weight:500}
.elec-public.elec-home .home-work-card:only-child p{color:#c4d9eb;font-size:16px;margin-top:24px}
.elec-public.elec-home .home-work-card:only-child .home-work-caption>span{color:#fff}
.elec-public.elec-home .home-stats{background:#f0f5f9;color:#0b2e59;border-top:1px solid #dce5ed;border-bottom:1px solid #dce5ed}
.elec-public.elec-home .home-stats .section-kicker{color:#1676c5}
.elec-public.elec-home .home-stat{border-color:#c4d6e6}
.elec-public.elec-home .home-stat strong{font-size:clamp(56px,6vw,88px);font-weight:400;letter-spacing:-.045em}
.elec-public.elec-home .home-stat span{color:#66788a;font-size:15px}
.elec-public .el-projects-page .ep-hero{background:#071e3b;position:relative;overflow:hidden}
.elec-public .el-projects-page .ep-hero:after{content:"";position:absolute;width:440px;height:440px;border:1px solid #ffffff12;border-radius:50%;inset-inline-end:-70px;top:-80px;pointer-events:none}
.elec-public .el-projects-page .ep-hero h1{color:#fff;position:relative;z-index:1;max-width:1100px}
.elec-public .el-projects-page .ep-hero p{color:#c3d5e5;max-width:680px}
.elec-public .el-projects-page .ep-hero .section-kicker{color:#91cfff}
.elec-public .ep-card{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);border:0;background:#f0f5f9}
.elec-public .ep-content{padding:clamp(28px,4vw,64px)}
.elec-public .ep-content h2{font-size:clamp(28px,2.5vw,44px)}
.elec-public .ep-meta{border-color:#cbdbe8}
.elec-public .cta-section{background:#0b2e59;color:#fff;position:relative;overflow:hidden}
.elec-public .cta-content{position:relative;z-index:1}
.elec-public .cta-content h2{color:#fff;font-size:clamp(38px,4.6vw,76px);line-height:1.12;max-width:900px}
.elec-public .cta-content p{color:#c6d9e9;max-width:650px}
.elec-public .cta-content .section-kicker{color:#a3d8ff}
.elec-public .cta-content .btn-primary{background:#fff;color:#0b2e59;min-height:60px;padding:18px 30px}
.elec-public .cta-content .btn-primary:hover{background:#dceffd}
.elec-public .site-footer{border-top:1px solid #ffffff16}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.elec-public.elec-home .premium-service-card{transition:box-shadow .3s,border-color .3s}.elec-public.elec-home .premium-service-card:hover{border-color:#a8c9e2;box-shadow:0 18px 40px #0b2e590b}}
@media(max-width:1100px){.elec-public.elec-home .premium-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.elec-public.elec-home .intro-section .image-panel{min-height:480px}}
@media(max-width:900px){.elec-public.elec-home .intro-section .split-grid{grid-template-columns:1fr;gap:64px}.elec-public.elec-home .intro-section .image-panel{max-width:680px;width:calc(100% - 22px)}.elec-public .ep-card{grid-template-columns:1fr}}
@media(max-width:640px){.elec-public.elec-home .home-project-copy{padding-inline-start:18px}.elec-public.elec-home .home-project-copy h1{font-size:clamp(34px,9vw,50px);line-height:1.15}.elec-public.elec-home .home-project-content{padding-bottom:124px}.elec-public.elec-home .home-project-nav{width:46px;height:46px}.elec-public.elec-home .premium-service-grid{grid-template-columns:1fr}.elec-public.elec-home .premium-service-content{padding:24px}.elec-public.elec-home .intro-section .image-panel{min-height:360px}.elec-public.elec-home .home-work-card:only-child{display:block}.elec-public.elec-home .home-work-card:only-child .home-work-caption{padding:28px}.elec-public.elec-home .home-stat span{font-size:13px}.elec-public .cta-content h2{font-size:40px}}
html[dir=rtl] .elec-public.elec-home .home-project-copy h1{letter-spacing:0;line-height:1.35}
