:root{--navy:#071451;--blue:#111b91;--ink:#111827;--muted:#64748b;--line:#dce3ee;--paper:#f6f8fb;--white:#fff;--accent:#2446ff}*{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.6}.container{width:min(1160px,92%);margin:auto}.header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid #e8edf5}.nav-wrap{height:78px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px;color:var(--navy);text-decoration:none;font-family:Manrope,Arial;font-weight:800;font-size:23px;letter-spacing:-1px}.brand img{width:58px;height:auto}.brand small{display:block;font:700 9px Inter;letter-spacing:2px;color:#3e4a62;margin-top:-4px}nav{display:flex;align-items:center;gap:27px}nav a{color:#344054;text-decoration:none;font-size:14px;font-weight:700}nav a:hover{color:var(--blue)}.nav-btn{background:var(--navy);color:#fff!important;padding:12px 18px;border-radius:5px}.menu{display:none;background:none;border:0;font-size:28px;color:var(--navy)}.hero{position:relative;min-height:700px;color:#fff;display:flex;align-items:center;overflow:hidden}.hero-bg{position:absolute;inset:0;background:url('assets/images/hero-bg.jpg') center/cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,12,55,.94) 0%,rgba(4,18,70,.76) 52%,rgba(4,18,70,.35) 100%)}.hero-content{position:relative;padding:110px 0 90px}.kicker,.eyebrow{font-size:12px;font-weight:800;letter-spacing:2px;color:#7892ff;margin-bottom:15px}.hero h1{font:800 clamp(48px,6vw,78px)/1.02 Manrope,Arial;letter-spacing:-3px;max-width:850px;margin:0 0 26px}.hero h1 em{font-style:normal;color:#a9b7ff}.hero p{max-width:690px;font-size:18px;color:#d7def2}.actions{display:flex;gap:12px;margin:34px 0}.btn{display:inline-block;border:0;border-radius:5px;padding:14px 22px;font-weight:800;text-decoration:none;cursor:pointer;font-size:14px}.primary{background:#2446ff;color:#fff}.light{background:#fff;color:var(--navy)}.dark{background:var(--navy);color:#fff}.trust{display:flex;gap:44px;margin-top:56px}.trust div{display:flex;gap:12px;align-items:center}.trust b{font:800 21px Manrope}.trust span{font-size:11px;line-height:1.35;color:#b9c5e4}.trust strong{color:#fff}.proof{background:var(--navy);color:#fff}.proof-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:26px 0}.proof-grid div{padding:8px 22px;border-right:1px solid rgba(255,255,255,.14)}.proof-grid div:first-child{padding-left:0}.proof-grid div:last-child{border:0}.proof b{display:block;font-size:14px}.proof span{display:block;font-size:11px;color:#aeb9d7;margin-top:3px}.section{padding:105px 0}.two-col{display:grid;grid-template-columns:1fr 1.05fr;gap:90px}.eyebrow{color:#3851d8}.eyebrow:before{content:"";display:inline-block;width:32px;height:2px;background:#3851d8;vertical-align:middle;margin-right:10px}.about h2,.section h2,.qual h2,.team h2,.contact h2{font:800 clamp(36px,4vw,52px)/1.08 Manrope;margin:0;letter-spacing:-2px;color:var(--navy)}.copy{font-size:16px;color:#526071}.copy p{margin-top:0;margin-bottom:22px}.arrow{color:var(--blue);font-weight:800;text-decoration:none}.services{background:var(--paper)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:48px}.section-head>p{max-width:390px;color:var(--muted);margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#d9dfeb;border:1px solid #d9dfeb}.service-grid article{background:#fff;padding:35px;min-height:230px}.service-grid span{font-size:12px;font-weight:800;color:#7180a1}.service-grid h3{font:800 22px Manrope;color:var(--navy);margin:26px 0 10px}.service-grid p{font-size:14px;color:#657287;margin:0}.feature{background:var(--navy);color:#fff;padding:100px 0}.feature-grid{display:grid;grid-template-columns:1.08fr .92fr;min-height:500px}.feature-photo{background:url('assets/images/feature-commercial.jpg') center/cover;min-height:420px}.feature-copy{padding:55px 55px 45px}.feature-copy .eyebrow{color:#8fa2ff}.feature-copy h2{font:800 48px/1.05 Manrope;letter-spacing:-2px;margin:0 0 20px}.feature-copy p{color:#c5cde2}.mini-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:34px 0}.mini-grid div{border-top:1px solid rgba(255,255,255,.2);padding-top:12px}.mini-grid b{display:block;color:#8fa2ff;font-size:11px}.mini-grid span{font-size:13px}.experience{background:#fff}.gallery{display:grid;grid-template-columns:1.15fr .925fr .925fr;gap:18px}.gallery figure{margin:0;background:var(--paper)}.gimg{height:350px;background-size:cover;background-position:center}.g1{background-image:url('assets/images/gallery-commercial.jpg')}.g2{background-image:url('assets/images/gallery-siteplan.jpg')}.gallery figcaption{padding:22px}.gallery small{display:block;font-size:9px;font-weight:800;letter-spacing:1.5px;color:#7b87a1}.gallery b{display:block;color:var(--navy);font:800 19px Manrope;margin:7px 0}.gallery span{font-size:12px;color:var(--muted)}.qual{background:var(--navy);color:#fff;padding:95px 0}.qual h2{color:#fff}.qual p{color:#c5cde2;max-width:510px}.credentials{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.15)}.credentials div{background:#0b195d;padding:28px}.credentials b{display:block;font:800 22px Manrope}.credentials span{display:block;color:#aeb9d7;font-size:12px;margin-top:5px}.team{padding:100px 0}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px}.team article{border:1px solid var(--line);padding:30px}.avatar{width:56px;height:56px;border-radius:50%;background:#e7ebff;color:var(--blue);display:grid;place-items:center;font-weight:800}.team h3{font:800 21px Manrope;color:var(--navy);margin:22px 0 4px}.team p{margin:0;color:#566276;font-size:13px}.team span{display:block;color:#7a8598;font-size:11px;margin-top:13px}.contact{background:var(--paper);padding:100px 0}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}.contact h2{margin-bottom:20px}.contact>div p{color:#5d687a;max-width:520px}.contact-info{margin-top:34px;display:grid;gap:8px}.contact-info a{color:var(--navy);font:800 20px Manrope;text-decoration:none}.contact-info span{font-size:12px;color:#788399}.contact form{background:#fff;border:1px solid var(--line);padding:30px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}form label{display:block;font-size:11px;font-weight:800;color:#536077;margin-bottom:15px}input,textarea{display:block;width:100%;margin-top:6px;border:1px solid #d5dce7;border-radius:4px;padding:12px;font:inherit;font-size:14px;outline:none}input:focus,textarea:focus{border-color:#5a70ff}form .btn{width:100%;margin-top:5px}form small{display:block;color:#8a94a5;font-size:10px;margin-top:12px}footer{background:#050e3a;color:#b8c2dc;padding:55px 0 20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}.footer-brand{color:#fff}.footer-brand img{width:48px}.footer-grid p{font-size:12px;line-height:1.8}.footer-grid b{color:#fff;font-size:12px}.footer-grid a{color:#cbd4ea}.bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:18px;margin-top:35px;font-size:10px;color:#7e8aa8}.bottom span{float:right}.menu{cursor:pointer}@media(max-width:850px){nav{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;padding:20px 4%;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}nav.open{display:flex}.menu{display:block}.hero{min-height:660px}.feature-photo{min-height:280px}.trust{gap:20px;flex-wrap:wrap}.proof-grid{grid-template-columns:1fr 1fr}.proof-grid div:nth-child(2){border:0}.two-col,.feature-grid,.contact-grid{grid-template-columns:1fr;gap:45px}.service-grid,.team-grid{grid-template-columns:1fr 1fr}.gallery,.gallery-2{grid-template-columns:1fr}.gimg{height:300px}.feature-copy{padding:45px 25px}.section{padding:75px 0}.section-head{display:block}.section-head>p{margin-top:15px}.footer-grid{grid-template-columns:1fr 1fr}.bottom span{float:none;display:block;margin-top:8px}}@media(max-width:560px){.brand span{font-size:19px}.brand img{width:50px}.hero h1{font-size:46px;letter-spacing:-2px}.hero p{font-size:16px}.actions{flex-direction:column;align-items:stretch}.trust{display:grid;grid-template-columns:1fr}.proof-grid,.service-grid,.team-grid,.credentials,.form-row,.footer-grid{grid-template-columns:1fr}.proof-grid div{border-right:0;border-bottom:1px solid rgba(255,255,255,.14);padding:15px 0}.mini-grid{grid-template-columns:1fr 1fr}.hero-content{padding-top:80px}.gallery .gimg{height:260px}}

/* Residential construction section */
.clickable-photo{cursor:zoom-in;position:relative}
.photo-tag{position:absolute;left:14px;top:14px;background:rgba(5,14,58,.78);color:#fff;font-size:10px;font-weight:800;letter-spacing:1px;padding:6px 10px;border-radius:4px;z-index:2}
.clickable-photo:after{content:"\26F6 View full size";position:absolute;right:10px;bottom:10px;background:rgba(5,14,58,.72);color:#fff;font-size:11px;font-weight:700;padding:6px 10px;border-radius:4px;opacity:0;transition:opacity .15s}
.clickable-photo:hover:after{opacity:1}
.lightbox{display:none;position:fixed;inset:0;background:rgba(4,9,30,.94);z-index:200;align-items:center;justify-content:center;padding:30px}
.lightbox.open{display:flex}
.lightbox img{max-width:100%;max-height:100%;object-fit:contain;border-radius:6px;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.lightbox-close{position:absolute;top:20px;right:28px;color:#fff;font-size:38px;font-weight:300;cursor:pointer;line-height:1;z-index:201}
.gallery-2{grid-template-columns:1fr 1fr}
.residential{background:#fff}
.cta-strip{background:#f3f5fb;padding:26px 0;border-top:1px solid #e4e8f2;border-bottom:1px solid #e4e8f2}
.cta-strip.alt{background:var(--navy);border-color:var(--navy)}
.cta-strip.alt .cta-strip-inner span{color:#dfe4f7}
.cta-strip-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.cta-strip-inner span{font-weight:700;font-size:17px;color:var(--navy)}
.sticky-cta{position:fixed;right:22px;bottom:22px;background:var(--accent,#c8102e);color:#fff;font-weight:800;font-size:14px;padding:14px 22px;border-radius:40px;box-shadow:0 10px 30px rgba(0,0,0,.28);text-decoration:none;z-index:150;opacity:0;pointer-events:none;transform:translateY(12px);transition:opacity .25s,transform .25s}
.sticky-cta.show{opacity:1;pointer-events:auto;transform:translateY(0)}
@media(max-width:600px){.sticky-cta{right:16px;bottom:16px;padding:12px 18px;font-size:13px}}
.residential-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.res-card{border:1px solid var(--line);background:#fff;overflow:hidden}
.res-photo{height:245px;background-size:cover;background-position:center}
.r1{background-image:url('assets/images/res-new-construction.jpg')}
.r2{background-image:url('assets/images/res-custom-homes.jpg')}
.r3{background-image:url('assets/images/res-townhomes.jpg')}
.r4{background-image:url('assets/images/res-home-improvement.jpg')}
.res-body{padding:24px}
.res-body>span{font-size:11px;font-weight:800;color:#7180a1}
.res-body h3{font:800 20px Manrope;color:var(--navy);margin:12px 0 8px}
.res-body p{font-size:13px;color:#657287;margin:0}
.res-note{margin-top:18px;color:#8a94a5;font-size:10px;line-height:1.5}
@media(max-width:1000px){.residential-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.residential-grid{grid-template-columns:1fr}}
