:root{--ink:#112f3f;--navy:#071f2c;--cyan:#1bc9dc;--orange:#ffb333;--muted:#526c7a;--line:#d9e4e8;--pale:#f1f6f6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}a,button,input,select,textarea,summary{outline-offset:5px}button,summary{cursor:pointer}svg{display:block}img{max-width:100%}.shell{max-width:1240px;padding:0 38px;margin:auto}.preview{font-size:11px;text-align:center;padding:9px 18px;background:#e7f0f2;color:#496977;letter-spacing:.2px}.preview span{padding:0 8px}header{position:relative;background:var(--navy);color:#fff;border-bottom:1px solid #ffffff18}.nav{min-height:100px;display:flex;justify-content:space-between;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:13px;font-size:17px;font-weight:bold;letter-spacing:.8px}.brand img{width:43px;height:57px;object-fit:contain}.brand small{font-size:9px;letter-spacing:2.4px;font-weight:normal;display:block;margin-top:7px;color:#b4ccd4}nav{display:flex;gap:29px;align-items:center;font-size:13px}nav>a:not(.button){padding:10px 0;color:#d1e0e5}nav>a:hover,nav [aria-current=page]{color:var(--cyan)!important}.button{display:inline-flex;gap:25px;align-items:center;justify-content:space-between;border-radius:3px;border:1px solid transparent;background:var(--orange);color:var(--navy);padding:16px 21px;font-size:13px;font-weight:bold;line-height:1.3;transition:background .15s,transform .15s}.button:hover{transform:translateY(-2px);background:#ffc665}.button.compact{padding:13px 17px}.button.ghost{background:transparent;border-color:#567580;color:#fff}.button.border{background:transparent;border-color:#a9c0c9;color:var(--ink)}.button.dark{background:var(--navy);color:#fff}.menu{display:none}.eyebrow{display:block;font-size:10px;font-weight:bold;letter-spacing:2px;line-height:1.6;color:#057e92;margin-bottom:18px}h1,h2,h3,p{margin-top:0}h1{font-size:55px;line-height:1.08;letter-spacing:-2px;margin-bottom:25px;font-weight:700}h2{font-size:35px;line-height:1.16;letter-spacing:-1px;margin-bottom:20px}h3{font-size:19px;line-height:1.3;letter-spacing:-.25px}em{font-style:normal;color:#087f94}p{line-height:1.75;color:var(--muted);font-size:15px}.hero{background:var(--navy);color:white;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:55px;align-items:center;padding-top:70px;padding-bottom:65px}.hero .eyebrow,.service-hero .eyebrow,.closing .eyebrow{color:var(--cyan)}.hero h1 em,.service-hero h1 em{color:var(--cyan)}.lead{font-size:17px;line-height:1.75;max-width:540px}.hero p,.service-hero p{color:#b5cbd4}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:29px}.hero-call{font-size:12px;color:#a9c2cc;margin-top:27px}.hero-call a{color:white;font-weight:bold;margin-left:10px}.technical{border:1px solid #335360;transform:rotate(-1.5deg);padding:23px 23px 0;background:#0e2938;box-shadow:12px 12px 0 #102d3c;border-radius:5px}.drawing-label{font-size:10px;letter-spacing:2px;color:var(--cyan);display:flex;justify-content:space-between;padding-bottom:15px;border-bottom:1px solid #294b5b}.drawing-label span{color:#7da1af}.building{width:100%;margin-top:10px}.drawing-footer{font-size:11px;line-height:1.5;color:#b1cbd6;padding:18px 0;border-top:1px solid #294b5b}.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--orange);margin-right:9px}.trust{display:flex;justify-content:space-between;gap:24px;border-top:1px solid #304957;padding-top:22px;padding-bottom:23px;font-size:12px;color:#c7dae1}.trust span:before{content:'✓';color:var(--cyan);margin-right:10px}section{padding:80px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:35px}.section-heading h2{margin-bottom:0}.section-heading p{max-width:380px;margin-bottom:0}.routes{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.routes>a,.routes>article{border-top:2px solid #bdd5de;padding:24px 2px 10px}.routes>a:hover{border-color:#009bb3}.routes span{font-size:12px;color:#087f94;display:block;margin-bottom:22px}.routes h3{font-size:22px}.routes p{font-size:14px}.routes b{font-size:12px;color:#087f94}.pale{background:var(--pale)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{background:white;border:1px solid var(--line);padding:29px 25px;border-radius:5px;display:flex;flex-direction:column;transition:transform .18s,box-shadow .18s}.service-card:hover{transform:translateY(-5px);box-shadow:0 16px 30px #1635450c}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:35px}.icon{color:#0796aa;background:#ebf7f7;padding:13px;border-radius:4px}.icon svg{width:28px;height:28px}.number{font-size:11px;letter-spacing:1px;color:#8aa5b1}.service-card h3{max-width:260px;min-height:49px;margin-bottom:15px}.service-card p{font-size:14px;line-height:1.7}.more{display:flex;justify-content:space-between;gap:20px;margin-top:auto;padding-top:24px;color:#087f94;font-weight:bold;font-size:12px}.service-links{display:flex;gap:20px;flex-wrap:wrap;font-size:12px;margin-top:28px;color:var(--muted)}.service-links a{color:#087f94;font-weight:bold}.split{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.statement h2{font-size:42px}.statement p{max-width:470px}.process>div{display:flex;gap:28px;border-bottom:1px solid var(--line);padding:22px 0}.process>div:first-child{border-top:1px solid var(--line)}.process section{padding:0}.process h3{margin-bottom:8px}.process p{font-size:14px;margin-bottom:0}.process>div>span{font-size:11px;color:#0094a9;padding-top:5px}.closing{background:#dff4f3;padding:50px 0}.closing-grid{display:flex;align-items:center;justify-content:space-between;gap:30px}.closing h2{margin-bottom:12px}.closing p{margin:0}.closing .eyebrow{color:#087f94}.closing .button{background:var(--navy);color:white}footer{background:var(--navy);color:#b2c8d2;padding:52px 0 20px}.footgrid{display:grid;grid-template-columns:1.5fr 1fr .7fr;gap:60px}.footgrid .brand{color:white}.footgrid p{font-size:11px;margin-top:18px;color:#9bb6c2}.footgrid>div> b{display:block;font-size:12px;color:#fff;margin-bottom:20px}.footgrid>div>a:not(.brand),.footgrid>div>span{display:block;font-size:12px;margin-bottom:14px}.bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff17;margin-top:35px;padding-top:20px;font-size:10px}.page-top{background:var(--pale);padding:28px 0 55px}.crumb{display:flex;gap:12px;font-size:11px;color:#65808c;margin-bottom:45px;line-height:1.6}.crumb a:hover{text-decoration:underline}.page-top h1{font-size:49px;max-width:760px}.page-top p{font-size:17px;max-width:650px;margin-bottom:0}.service-hero{background:var(--navy);color:white;padding:28px 0 65px}.service-hero .crumb{color:#a8c3cf}.service-hero-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:100px;align-items:center}.service-hero h1{font-size:48px;max-width:750px}.service-hero p:not(.lead){max-width:600px}.service-hero .lead{color:white;font-size:21px;margin-bottom:15px}.service-emblem{border:1px solid #315462;border-radius:50%;aspect-ratio:1;display:flex;flex-direction:column;justify-content:center;align-items:center;box-shadow:0 0 0 20px #10303e44}.service-emblem svg{width:90px;height:90px;color:var(--orange);margin-bottom:25px}.service-emblem small{text-align:center;font-size:9px;letter-spacing:2px;line-height:1.8;color:#96b9c7}.detail-layout{display:grid;grid-template-columns:1.35fr .8fr;gap:95px}.scope{list-style:none;padding:0;margin:27px 0 0}.scope li{padding:18px 0;border-bottom:1px solid var(--line);font-size:16px}.scope li:before{content:'↗';color:#0796aa;margin-right:16px}.space-top{margin-top:55px}.situations{padding-left:18px;color:var(--muted);font-size:15px;line-height:1.7}.situations li{margin-bottom:15px}aside{background:var(--pale);border-top:3px solid var(--cyan);padding:30px;align-self:start;border-radius:3px}aside p{font-size:14px}aside .button{width:100%;margin:12px 0 25px}.aside-note{border-top:1px solid #c7d9df;padding-top:25px;font-size:12px}.aside-note strong{display:block;font-size:12px;margin-bottom:10px}.aside-note p{font-size:12px;margin-bottom:0}.bodycopy{font-size:16px;max-width:640px}.about-panel{background:var(--navy);min-height:420px;display:flex;align-items:center;justify-content:center;flex-direction:column;border-bottom:5px solid var(--cyan)}.about-panel img{width:150px}.about-panel span{margin-top:35px;font-size:10px;letter-spacing:3px;color:#a4c4d0}.credential{padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:27px 0}.credential b{display:block;color:#087f94;margin-bottom:8px}.credential span{font-size:13px}.form-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.form-layout h2{font-size:31px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form-grid label{display:flex;flex-direction:column;gap:10px;font-size:12px;font-weight:bold}.form-grid .full{grid-column:span 2}input,select,textarea{width:100%;padding:14px;border:1px solid #b8ced7;border-radius:3px;background:white;color:var(--ink);font-size:14px}textarea{resize:vertical}.enquiry-form>.button{margin-top:24px}.form-note{font-size:11px;line-height:1.7;margin-top:15px}.info-box{background:var(--pale);padding:24px;border-left:3px solid var(--cyan);margin:30px 0}.info-box b{font-size:13px}.info-box p{font-size:13px;margin-top:10px;margin-bottom:0}.contact-phone{font-size:22px;font-weight:bold}.visit-steps{padding-left:20px;color:var(--muted);font-size:14px;line-height:2.2}.form-status{font-size:13px;line-height:1.7;color:#087f94}.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.contact-cards>a,.contact-cards>div{border-top:3px solid var(--cyan);padding:25px;background:var(--pale)}.contact-cards h2{font-size:24px;overflow-wrap:anywhere}.contact-cards p{font-size:13px}.faq{max-width:900px}details{padding:23px 0;border-bottom:1px solid var(--line)}summary{font-size:16px;font-weight:bold}details p{font-size:14px;margin-top:17px;margin-bottom:0}.call-mobile{display:none}
@media(max-width:1000px){.shell{padding-left:28px;padding-right:28px}nav{gap:16px;font-size:12px}.brand{font-size:14px}h1{font-size:45px}.hero-grid{gap:30px}.trust{font-size:10px;gap:14px}.cards{grid-template-columns:repeat(2,1fr)}.service-hero-grid{gap:45px}.service-hero h1{font-size:42px}.detail-layout{gap:45px}.split{gap:45px}.form-layout{gap:38px}.footgrid{gap:30px}.contact-cards{gap:15px}.contact-cards>a,.contact-cards>div{padding:20px}.contact-cards h2{font-size:21px}}
@media(max-width:700px){.preview{font-size:9px;line-height:1.6}.shell{padding-left:22px;padding-right:22px}.nav{min-height:80px}.brand{font-size:14px}.brand img{width:34px;height:47px}.brand small{font-size:8px}.menu{display:flex;gap:17px;background:none;border:1px solid #4e6e7a;color:white;padding:10px;border-radius:3px;font-size:12px}nav{display:none;position:absolute;top:100%;left:0;width:100%;background:var(--navy);z-index:10;padding:22px;flex-direction:column;align-items:stretch;box-shadow:0 15px 20px #04162333}nav.open{display:flex}.hero-grid{grid-template-columns:1fr;padding-top:38px;padding-bottom:40px;gap:40px}h1{font-size:40px;letter-spacing:-1.3px}.hero .eyebrow{font-size:9px}.lead{font-size:16px}.technical{transform:none;box-shadow:7px 7px 0 #102d3c;padding:18px 18px 0}.building{max-height:310px}.trust{display:grid;grid-template-columns:1fr 1fr;gap:18px;font-size:10px}.actions{gap:10px}.button{font-size:12px;padding:14px 17px;gap:17px}.hero-call{font-size:11px}.hero-call a{margin-left:4px}section{padding:48px 0}h2{font-size:29px}.section-heading{display:block;margin-bottom:27px}.section-heading p{margin-top:20px}.section-heading>.button{margin-top:20px}.routes{grid-template-columns:1fr;gap:20px}.routes h3{font-size:21px}.routes span{margin-bottom:16px}.cards{grid-template-columns:1fr;gap:16px}.service-card{padding:25px}.card-top{margin-bottom:22px}.service-card h3{min-height:0}.service-links{line-height:1.8;gap:10px 18px}.split,.detail-layout,.form-layout{grid-template-columns:1fr;gap:33px}.statement h2{font-size:35px}.process>div{gap:23px}.closing-grid{display:block}.closing .button{margin-top:25px}.footgrid{grid-template-columns:1fr 1fr;gap:30px}.footgrid>div:first-child{grid-column:span 2}.bottom{display:block;font-size:9px;line-height:1.8}.bottom span{display:block}.page-top{padding:23px 0 40px}.crumb{font-size:10px;margin-bottom:30px}.page-top h1,.service-hero h1{font-size:36px}.page-top p{font-size:15px}.service-hero{padding:23px 0 45px}.service-hero-grid{grid-template-columns:1fr;gap:40px}.service-emblem{width:170px;margin:0 auto}.service-emblem svg{width:50px;height:50px;margin-bottom:14px}.service-emblem small{font-size:7px;letter-spacing:1px}.service-hero .lead{font-size:20px}.scope li{font-size:14px;line-height:1.6}.space-top{margin-top:35px}.about-panel{min-height:300px}.about-panel img{width:110px}.form-grid{gap:18px}.form-grid label{grid-column:span 2}.form-layout h2{font-size:29px}.contact-cards{grid-template-columns:1fr}.contact-cards h2{font-size:27px}.call-mobile{display:block;position:fixed;bottom:16px;right:16px;background:var(--orange);padding:13px 19px;font-size:12px;font-weight:bold;border-radius:25px;box-shadow:0 5px 20px #001c3540;z-index:5}footer{padding-bottom:70px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.work-card{border:1px solid #ccdce0;padding:0;text-align:left;background:white;color:#102b37;cursor:pointer;border-radius:12px;overflow:hidden}.work-card img,.work-cover{width:100%;height:230px;object-fit:cover;background:#113546}.work-cover{display:grid;place-items:center;color:#39cde1;font-size:50px}.work-card .work-copy{padding:24px}.work-card h3{margin:12px 0}.empty-work{padding:45px;background:#edf4f5;border:1px dashed #88aab6;border-radius:12px;grid-column:1/-1}.portfolio-editor{display:grid;grid-template-columns:2fr 1fr;gap:50px;margin:50px 0}.portfolio-editor aside{background:#edf4f5;padding:24px;border-radius:12px}.portfolio-editor label,.instagram-settings label{display:flex;flex-direction:column;gap:8px}.portfolio-editor input,.portfolio-editor select,.portfolio-editor textarea,.instagram-settings input,#work-filter{padding:12px;border:1px solid #97b4bd;border-radius:5px;font:inherit;max-width:100%}.saved-project{padding:20px 0;border-bottom:1px solid #b8ccd3}.saved-project button,.media-list button{margin:8px 8px 0 0;padding:8px 14px;cursor:pointer}.media-list img,.media-list video{width:160px;height:100px;object-fit:cover}.media-list{display:flex;gap:14px;flex-wrap:wrap;margin:20px 0}.media-list figure{margin:0;width:170px;overflow-wrap:anywhere}.instagram-settings{border-top:1px solid #c2d5db;padding-top:40px;max-width:600px}#work-dialog{width:min(900px,92vw);max-height:90vh;border:0;border-radius:16px;padding:30px;color:#102b37}#work-dialog::backdrop{background:#031923d9}#project-detail img,#project-detail video{width:100%;max-height:650px;object-fit:contain;background:#0b2531;margin:12px 0}#project-detail p{white-space:pre-wrap;overflow-wrap:anywhere}.work-card:focus-visible{outline:3px solid #008ca5}button{font:inherit}@media(max-width:900px){.work-grid{grid-template-columns:repeat(2,1fr)}.portfolio-editor{grid-template-columns:1fr}}@media(max-width:600px){.work-grid{grid-template-columns:1fr}.actions{flex-wrap:wrap}}

.header-instagram{display:inline-flex;align-items:center;gap:7px;color:var(--cyan);font-size:12px;font-weight:700;white-space:nowrap;margin-left:auto;padding:9px 0}.header-instagram svg{flex-shrink:0}.header-instagram:focus-visible{outline:2px solid var(--cyan);outline-offset:5px}header nav{gap:20px}@media(min-width:1001px) and (max-width:1250px){.header-instagram span{display:none}.nav{gap:18px}header nav{gap:16px}}@media(max-width:600px){.header-instagram span{display:none}.nav{gap:15px}}

.admin-layout{display:grid;grid-template-columns:1fr 1fr;gap:65px}.admin-card{background:#f1f6f6;padding:36px;border:1px solid #d9e4e8;border-radius:16px;height:fit-content}.admin-card .button{margin:20px 0}.admin-steps{padding-left:24px}.admin-steps li{padding-left:12px;margin-bottom:25px}.admin-steps b{font-size:19px}.project-description{white-space:pre-wrap}.project-media{margin:20px 0}.project-media figcaption{font-size:14px;padding:8px 0}.project-media video{max-height:500px}.project-details{display:grid;grid-template-columns:auto 1fr;gap:10px 25px}.project-details dd{margin:0}.gallery-error button{margin-top:12px}@media(max-width:800px){.admin-layout{grid-template-columns:1fr;gap:35px}.admin-card{padding:24px}}

/* Responsive navigation and keyboard access. */
.skip-link{position:fixed;top:8px;left:8px;padding:14px 20px;background:#fff;color:var(--navy);z-index:100;transform:translateY(-160%);border:2px solid var(--navy)}.skip-link:focus{transform:none}
header .brand{flex-shrink:0}header nav>a{white-space:nowrap}
@media(max-width:1100px){.nav{min-height:80px}.header-instagram span{display:none}.menu{display:flex;gap:12px;background:none;border:1px solid #4e6e7a;color:white;padding:10px;border-radius:3px;font-size:12px}header nav{display:none;position:absolute;top:100%;left:0;width:100%;background:var(--navy);z-index:10;padding:22px;flex-direction:column;align-items:stretch;box-shadow:0 15px 20px #04162333;max-height:calc(100dvh - 80px);overflow-y:auto}header nav.open{display:flex}}
@media(max-width:700px){input,select,textarea{font-size:16px}.project-details{grid-template-columns:1fr;gap:6px}.project-details dd{margin-bottom:12px}}
@media(max-width:380px){header .shell{padding-left:14px;padding-right:14px}header .nav{gap:10px}header .brand{font-size:12px;gap:8px}header .brand img{width:28px}header .menu{gap:7px}}

/* Large service illustrations retain the ARG electrical drawing style. */
.service-card{overflow:hidden;border-top:3px solid #0796aa}.service-card .card-top{margin-bottom:20px}.service-card h3{font-size:21px;min-height:55px;margin-bottom:20px}.service-visual{margin:0 -25px 24px;background:#0b2838;border-top:1px solid #1bc9dc22;border-bottom:1px solid #1bc9dc22}.service-visual img{display:block;width:100%;height:auto;aspect-ratio:400/184}.service-card:hover .service-visual{background:#13394a}.service-card .more{border-top:1px solid var(--line);padding-top:18px}.service-card p{margin-bottom:24px}@media(max-width:700px){.service-card h3{min-height:0}.service-visual{margin-bottom:22px}}
/* Glossy service panels, distinct from the light page background. */
.service-card{position:relative;isolation:isolate;background:linear-gradient(135deg,#245164 0%,#102f40 35%,#071f2c 100%);color:#fff;border:1px solid #42d5e980;border-top:3px solid #48ddeb;border-radius:15px;box-shadow:inset 0 1px 0 #ffffff30,0 10px 25px #092b3c24;transition:transform .18s,box-shadow .18s,border-color .18s}
.service-card::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(125deg,#ffffff14,transparent 35%,transparent 75%,#1bc9dc0c);border-radius:inherit}
.service-card:hover,.service-card:focus-visible{transform:translateY(-5px);border-color:#66e8f2;box-shadow:inset 0 1px 0 #ffffff40,0 15px 34px #092b3c33,0 0 20px #1bc9dc24}
.service-card .icon{color:#ffca62;background:#ffb33312;border:1px solid #ffb33345;box-shadow:inset 0 1px 0 #ffffff12}.service-card .number{color:#72e0ea;font-weight:bold;letter-spacing:2px}.service-card h3{color:#fff;text-shadow:0 2px 10px #0003}.service-card p{color:#c4dbe4}.service-card .more{color:#81edf3;border-color:#65bdd33b}.service-card .more b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#ffb333;color:#071f2c;font-size:17px;box-shadow:0 0 12px #ffb33325}.service-visual{border-color:#6edfea30;box-shadow:inset 0 1px 0 #ffffff0d}

.qualifications{padding:26px 0;margin:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.qualifications .eyebrow{margin-bottom:10px}.qualifications>h3{margin-bottom:20px}.degree-credential{display:flex;align-items:center;gap:20px;padding:24px;background:linear-gradient(135deg,#245164,#071f2c);border:1px solid #42d5e980;border-top:3px solid #48ddeb;border-radius:12px;box-shadow:0 8px 20px #092b3c18;color:#fff}.degree-label{display:grid;place-items:center;flex-shrink:0;width:62px;height:62px;border:1px solid #ffb33375;border-radius:50%;color:#ffca62;font-size:23px;font-weight:bold}.degree-credential h4{font-size:20px;line-height:1.35;margin:0 0 7px}.degree-credential p{font-size:13px;color:#c4dbe4;margin:0}.credential-list{list-style:none;margin:20px 0 0;padding:0}.credential-list li{position:relative;padding:15px 0 15px 26px;border-bottom:1px solid var(--line)}.credential-list li:last-child{border-bottom:0;padding-bottom:0}.credential-list li:before{content:'✓';position:absolute;left:0;color:#087f94;font-weight:bold}.credential-list strong{display:block;font-size:14px;line-height:1.5}.credential-list span{display:block;color:var(--muted);font-size:13px;line-height:1.6;margin-top:4px}@media(max-width:400px){.degree-credential{padding:18px;gap:14px}.degree-label{width:50px;height:50px;font-size:20px}.degree-credential h4{font-size:18px}}
