
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#15231f;font:15px/1.6 Manrope,Arial,sans-serif}img{display:block;width:100%;object-fit:cover}a{color:inherit;text-decoration:none}.b2bar{font-size:11px;text-align:center;padding:8px 16px;background:#1a2420;color:white}.b2bar a{color:#ffdf28;text-decoration:underline;margin-left:12px}.b2shell{width:min(1170px,calc(100% - 44px));margin:auto}.b2head{height:80px;display:flex;align-items:center;justify-content:space-between}.b2brand{font-weight:950;font-size:27px;letter-spacing:-.08em;line-height:.9}.b2brand small{display:block;font-size:8px;letter-spacing:.2em;margin-top:7px}.b2nav{display:flex;gap:24px;align-items:center;font-size:12px;font-weight:900}.b2menu{display:none;background:transparent;border:0;font:inherit;font-weight:900}.b2btn{display:inline-block;padding:13px 18px;border:1px solid currentColor;font-weight:900;font-size:12px}.b2btn:hover{transform:translateY(-2px)}.b2btn:after{content:' ↗';font-size:15px}.b2kicker{font-size:10px;letter-spacing:.15em;font-weight:900;margin:0 0 13px}.b2title{margin:0;font-size:clamp(42px,5.7vw,77px);letter-spacing:-.08em;line-height:.91}.b2title em{font-family:'DM Serif Display',serif;font-weight:400}.b2copy{font-size:17px;max-width:570px}.b2section{padding:85px 0}.b2section h2{font-size:clamp(31px,4vw,50px);letter-spacing:-.065em;line-height:1;margin:0 0 15px}.b2intro{max-width:570px;color:#66706b;margin:0 0 32px}.b2grid{display:grid;gap:18px}.b2card{padding:26px;border:1px solid #cfd4cf;background:#fff}.b2card b{font-size:11px;letter-spacing:.13em}.b2card h3{font-size:21px;line-height:1.05;letter-spacing:-.05em;margin:36px 0 8px}.b2card p{margin:0;color:#66706b}.b2form{background:#fff;padding:27px;border:1px solid #bdc6bd}.b2form h2{font-size:26px}.b2form label{display:block;font-size:12px;font-weight:900;margin:14px 0 7px}.b2form select,.b2form textarea{width:100%;padding:11px;font:inherit;border:1px solid #bac3ba;background:white}.b2form textarea{height:98px;resize:vertical}.b2form button{margin-top:15px;cursor:pointer}.b2status{font-size:12px;font-weight:800}.b2foot{padding:31px 0;background:#12231d;color:white;font-size:11px}.b2foot .b2shell{display:flex;justify-content:space-between;gap:20px}.b2foot a{text-decoration:underline}.b2sticky{display:none}
/* electrical: technical, high-contrast */.electric{background:#f5f5ef}.electric .b2head{background:#111;color:white}.electric .b2shell{position:relative}.electric .b2head:before,.electric .b2head:after{content:'';position:absolute;top:0;bottom:0;width:calc((100vw - min(1170px,calc(100vw - 44px)))/2);background:#111}.electric .b2head:before{right:100%}.electric .b2head:after{left:100%}.electric .b2brand{font-family:Arial,sans-serif;letter-spacing:-.11em}.electric .b2nav .b2btn{background:#ffdc20;color:#111;border-color:#ffdc20}.electric-hero{background:#111;color:#fff;overflow:hidden}.electric-hero .b2shell{min-height:565px;display:grid;grid-template-columns:1fr .9fr;align-items:center;gap:35px}.electric .b2title{font-family:Arial,sans-serif;font-weight:950}.electric .b2title em{font-family:Arial,sans-serif;font-style:normal;color:#ffdc20}.electric-hero .b2copy{color:#d3d5d0}.electric-hero .b2btn{background:#ffdc20;color:#111;border-color:#ffdc20;margin-right:8px}.electric-hero .ghost{background:transparent;color:white;border-color:white}.electric-media{height:100%;min-height:565px;position:relative;background:#20201e}.electric-media img{height:100%;filter:grayscale(1) contrast(1.2)}.electric-media:after{content:'01\A POWER\A CLARITY\A CONTROL';white-space:pre;position:absolute;left:-32px;bottom:48px;color:#ffdc20;font-weight:950;letter-spacing:.13em;line-height:1.45;font-size:12px}.electric-strip{background:#ffdc20;color:#111;font-size:12px;font-weight:900}.electric-strip .b2shell{padding:15px 0;display:flex;justify-content:space-between}.electric-cards{grid-template-columns:repeat(4,1fr)}.electric-cards .b2card{background:#181818;color:white;border-color:#3a3a3a;border-top:5px solid #ffdc20}.electric-cards .b2card p{color:#c8c8c1}.electric-services{background:#181818}.electric-services h2{color:white}.electric-services .b2intro{color:#b8bbb4}.electric-process{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid #b8bdb6}.electric-process article{padding:30px;border-right:1px solid #b8bdb6;border-bottom:1px solid #b8bdb6}.electric-process span{font-size:34px;font-weight:950;color:#ffbd00}.electric-process h3{font-size:23px;margin:28px 0 6px}.electric-contact{background:#e3e7dd}.electric-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px}.electric .b2form button{background:#111;color:#fff;border-color:#111}
/* renovations: warm editorial */.reno{background:#faf8f4}.reno .b2bar{background:#6a5140}.reno .b2bar a{color:#f7d9b6}.reno .b2brand{font-family:'DM Serif Display',serif;letter-spacing:.02em;font-size:33px}.reno .b2nav .b2btn{background:#243e35;color:white;border-color:#243e35}.reno-hero{padding:25px 0 90px}.reno-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:55px;align-items:center}.reno-title{font-size:clamp(43px,5vw,73px)}.reno-title em{color:#a35f43}.reno-hero .b2copy{color:#6a625a}.reno-hero .b2btn{background:#243e35;color:white;border-color:#243e35}.reno-hero img{height:500px}.reno-meta{display:flex;gap:22px;border-top:1px solid #cfc6bc;padding-top:16px;margin-top:35px;font-size:11px;font-weight:900}.reno-intro{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end}.reno-gallery{background:#ded4c8}.reno-gallery-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:20px}.reno-project{height:400px;position:relative}.reno-project.small{height:190px}.reno-project+.reno-project{margin-top:20px}.reno-project img{height:100%;filter:saturate(.75)}.reno-caption{position:absolute;left:0;bottom:0;background:#f9f5ef;padding:14px 17px;font-size:12px}.reno-caption b{display:block;font-size:18px}.reno-services{grid-template-columns:repeat(3,1fr)}.reno-services .b2card{border:0;background:#fff}.reno-services .b2card b{color:#a35f43}.reno-services .b2card h3{margin-top:45px}.reno-process{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.reno-process article{padding-top:18px;border-top:1px solid #bcb2a7}.reno-process span{font-family:'DM Serif Display',serif;font-size:32px;color:#a35f43}.reno-process h3{font-size:19px}.reno-contact{background:#e5eee5}.reno-contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px}.reno .b2form button{background:#243e35;color:#fff;border-color:#243e35}
@media(max-width:760px){.b2shell{width:min(100% - 30px,600px)}.b2bar span,.b2bar a{display:none}.b2head{height:65px}.b2brand{font-size:22px}.b2menu{display:block}.b2nav{display:none;position:absolute;z-index:9;right:15px;top:64px;width:260px;padding:14px;background:inherit;border:1px solid currentColor;flex-direction:column;align-items:stretch}.b2nav.open{display:flex}.b2section{padding:56px 0}.b2title{font-size:45px}.b2copy{font-size:15px}.electric-hero .b2shell,.reno-grid,.reno-intro,.electric-contact-grid,.reno-contact-grid{grid-template-columns:1fr;gap:27px}.electric-hero .b2shell{padding:46px 0 0;min-height:auto}.electric-media{height:300px;min-height:300px;margin:20px -15px 0}.electric-media:after{left:20px;bottom:25px}.electric-strip .b2shell{display:block}.electric-strip span+span{display:none}.electric-cards{grid-template-columns:1fr 1fr;gap:10px}.b2card{padding:18px}.b2card h3{font-size:18px;margin-top:25px}.electric-process{grid-template-columns:1fr}.electric-process article{border-right:0;padding:20px}.reno-hero{padding:15px 0 55px}.reno-hero img{height:310px}.reno-meta{gap:8px;justify-content:space-between}.reno-gallery-grid{grid-template-columns:1fr}.reno-project{height:280px}.reno-project.small{height:205px}.reno-project+.reno-project{margin-top:0}.reno-services{grid-template-columns:1fr}.reno-process{grid-template-columns:1fr 1fr;gap:14px}.b2foot{padding-bottom:80px}.b2foot .b2shell{display:block}.b2sticky{display:block;position:fixed;z-index:20;bottom:12px;left:15px;right:15px;text-align:center;padding:14px;background:#ffdc20;color:#111;font-weight:900;box-shadow:0 8px 22px #0004}.reno .b2sticky{background:#243e35;color:#fff}}
