:root{--blue:#123db8;--blue2:#2456da;--deep:#06183f;--deep2:#0b255d;--gold:#d4af37;--gold2:#f0cb59;--ink:#111827;--muted:#5d6675;--soft:#f4f7fb;--white:#fff;--line:#e4e8ef;--shadow:0 18px 50px rgba(8,26,68,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.6;background:#fff}img{max-width:100%;display:block}a{color:inherit}button,input,textarea,select{font:inherit}
.announce{background:var(--deep);color:white;text-align:center;padding:8px 16px;font-size:.92rem}.announce b{color:var(--gold2)}
.site-header{height:84px;position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);display:flex;align-items:center;gap:24px;padding:0 5vw;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:900}.brand img{width:64px;height:50px;object-fit:contain}.brand span{line-height:1.1}.brand small{display:block;color:var(--muted);font-weight:700;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;margin-top:3px}
.site-header nav{display:flex;align-items:center;gap:20px;margin-left:auto}.site-header nav a{text-decoration:none;font-weight:800;font-size:.95rem}.site-header nav a:hover{color:var(--blue)}.header-call{background:var(--gold);padding:12px 17px;border-radius:8px;text-decoration:none;font-weight:900;white-space:nowrap}.menu-toggle{display:none;margin-left:auto;border:0;background:none;font-size:27px}
.hero{min-height:760px;position:relative;display:grid;align-items:center;background:url('assets/hero-house.jpg') center/cover no-repeat;color:white;overflow:hidden}.hero:after{content:'';position:absolute;inset:auto -10% -36% auto;width:520px;height:520px;border:1px solid rgba(255,255,255,.16);border-radius:50%}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,13,39,.96) 0%,rgba(5,24,69,.82) 48%,rgba(5,24,69,.25) 100%)}.hero-content{position:relative;z-index:2;max-width:820px;padding:95px 7vw}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-weight:900;color:var(--gold2);font-size:.9rem}.eyebrow.dark{color:var(--blue)}h1{font-size:clamp(3.2rem,6vw,6.2rem);line-height:.98;margin:.22em 0 .25em;letter-spacing:-.04em}h2{font-size:clamp(2.1rem,4vw,3.8rem);line-height:1.08;margin:.18em 0 .42em;letter-spacing:-.025em}h3{font-size:1.3rem;line-height:1.25}.hero-copy{font-size:1.2rem;max-width:690px;color:#edf2ff}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin:32px 0}.btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:14px 22px;border-radius:8px;text-decoration:none;font-weight:900;border:2px solid transparent;cursor:pointer}.btn.primary{background:var(--gold);color:#16130a}.btn.primary:hover{background:var(--gold2)}.btn.secondary{border-color:#fff;color:#fff;background:rgba(255,255,255,.04)}.btn.secondary:hover{background:#fff;color:var(--deep)}.trust-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.trust-row .stars{color:#ffd75a;letter-spacing:.12em}.trust-row strong{font-size:.98rem}
.quick-proof{display:grid;grid-template-columns:repeat(4,1fr);max-width:1220px;margin:-54px auto 0;position:relative;z-index:4;background:white;border-radius:16px;box-shadow:var(--shadow);overflow:hidden}.quick-proof article{padding:30px 24px;text-align:center;border-right:1px solid var(--line)}.quick-proof article:last-child{border:0}.quick-proof b{display:block;font-size:1.32rem;color:var(--blue)}.quick-proof span{color:var(--muted);font-size:.95rem}
.section{padding:104px 7vw}.section.alt{background:var(--soft)}.section.dark{background:var(--deep);color:white}.section-heading{max-width:800px;margin:0 auto 48px;text-align:center}.section-heading>p{text-transform:uppercase;letter-spacing:.13em;color:var(--blue);font-weight:900;margin:0}.section.dark .section-heading>p{color:var(--gold2)}.section-heading>span{color:var(--muted);font-size:1.08rem}.section.dark .section-heading>span{color:#dbe6ff}.cards{display:grid;gap:22px}.services{grid-template-columns:repeat(3,1fr);max-width:1220px;margin:auto}.services article{padding:32px;border-radius:16px;background:white;border:1px solid var(--line);box-shadow:0 10px 28px rgba(12,31,75,.07);transition:.2s transform,.2s box-shadow}.services article:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.services .icon{width:48px;height:48px;display:grid;place-items:center;border-radius:12px;background:#edf2ff;color:var(--blue);font-size:1.55rem}.services p{color:var(--muted)}.services a{font-weight:900;color:var(--blue);text-decoration:none}
.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1220px;margin:auto}.project-grid figure{margin:0;background:white;border-radius:16px;overflow:hidden;box-shadow:0 12px 32px rgba(12,31,75,.12)}.project-grid img{width:100%;height:305px;object-fit:cover;transition:.35s transform}.project-grid figure:hover img{transform:scale(1.035)}.project-grid figcaption{padding:20px}.project-grid figcaption b,.project-grid figcaption span{display:block}.project-grid figcaption span{color:var(--muted)}
.split{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center;max-width:1220px;margin:auto}.split img{border-radius:18px;max-height:660px;width:100%;object-fit:cover;box-shadow:var(--shadow)}.checks{padding:0;list-style:none}.checks li{margin:11px 0;font-weight:800}.checks li:before{content:'✓';color:var(--blue);font-weight:900;margin-right:10px}.pill-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.pill{background:#edf2ff;color:var(--blue);font-weight:800;padding:8px 12px;border-radius:999px;font-size:.9rem}
.review-cards{grid-template-columns:repeat(3,1fr);max-width:1220px;margin:auto}.review-cards blockquote{margin:0;padding:32px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:16px;font-size:1.06rem}.review-cards blockquote:before{content:'★★★★★';display:block;color:#ffd75a;letter-spacing:.12em;margin-bottom:14px}.review-cards cite{display:block;margin-top:18px;color:var(--gold2);font-style:normal;font-weight:900}
.cta-band{max-width:1220px;margin:0 auto 100px;background:linear-gradient(135deg,var(--blue),var(--deep2));color:white;border-radius:20px;padding:48px 54px;display:flex;align-items:center;justify-content:space-between;gap:30px;box-shadow:var(--shadow)}.cta-band h2{margin:0;font-size:clamp(2rem,3vw,3rem)}.cta-band p{margin:8px 0 0;color:#e7edff}.cta-band .btn{flex-shrink:0}
.contact{padding:96px 7vw;background:linear-gradient(135deg,var(--blue),var(--deep));color:white;display:grid;grid-template-columns:1fr 1fr;gap:64px}.contact-links{display:flex;flex-direction:column;gap:8px}.contact-links a{color:white;font-weight:900;text-decoration:none;font-size:1.12rem}.contact form{background:white;color:var(--ink);padding:30px;border-radius:16px;display:grid;gap:14px;box-shadow:var(--shadow)}.contact label{font-weight:800}.contact input,.contact textarea,.contact select{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid #cfd5df;border-radius:8px}.form-note{font-size:.82rem;color:var(--muted)}
.page-hero{padding:110px 7vw 90px;color:white;background:linear-gradient(110deg,rgba(4,20,57,.96),rgba(18,61,184,.78)),url('assets/commercial-dealership.jpg') center/cover}.page-hero .wrap{max-width:950px}.page-hero h1{font-size:clamp(3rem,5vw,5.4rem)}.content-wrap{max-width:1220px;margin:auto}.service-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.service-detail{border:1px solid var(--line);border-radius:16px;padding:30px;background:white}.service-detail h3{color:var(--blue)}.service-detail ul{padding-left:20px}.gallery-full{columns:3 320px;column-gap:18px}.gallery-full figure{break-inside:avoid;margin:0 0 18px;border-radius:14px;overflow:hidden;background:white;box-shadow:0 10px 24px rgba(12,31,75,.1)}.gallery-full img{width:100%}.gallery-full figcaption{padding:14px 16px;font-weight:800}.legal-box{background:#fff7dc;border:1px solid #f0d36e;border-radius:12px;padding:16px 18px;color:#5d4a08}
footer{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:22px;padding:44px 7vw;background:#040d24;color:white}footer img{width:78px;height:60px;object-fit:contain;background:white;border-radius:5px}footer div{display:flex;flex-direction:column}footer div:last-child{align-items:flex-end}footer a{color:white;text-decoration:none}.copyright{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.14);padding-top:18px;color:#aebbd6;font-size:.9rem;text-align:center}
.floating-call{display:none;position:fixed;left:14px;right:14px;bottom:14px;z-index:60;background:var(--gold);color:#111;text-decoration:none;font-weight:900;text-align:center;padding:14px;border-radius:10px;box-shadow:0 12px 30px rgba(0,0,0,.28)}
@media(max-width:980px){.site-header nav,.header-call{display:none}.menu-toggle{display:block}.site-header.open nav{position:absolute;top:84px;left:0;right:0;background:white;display:flex;flex-direction:column;align-items:flex-start;padding:24px 6vw;box-shadow:0 12px 24px rgba(0,0,0,.1)}.hero{min-height:690px}.hero-overlay{background:rgba(4,18,56,.8)}.hero-content{padding:78px 6vw}.quick-proof,.services,.project-grid,.review-cards{grid-template-columns:1fr 1fr}.quick-proof{margin:0;border-radius:0}.split,.contact{grid-template-columns:1fr}.project-grid img{height:260px}.cta-band{margin:0 5vw 80px}.service-detail-grid{grid-template-columns:1fr}}
@media(max-width:640px){.announce{font-size:.8rem}.site-header{height:72px}.site-header.open nav{top:72px}.brand img{width:55px;height:43px}.brand span{display:none}.hero{min-height:690px;background-position:58% center}.hero-content{text-align:center;padding:68px 6vw}.hero-actions,.trust-row{justify-content:center}.quick-proof,.services,.project-grid,.review-cards{grid-template-columns:1fr}.quick-proof article{border-right:0;border-bottom:1px solid var(--line)}.section{padding:74px 6vw}.project-grid img{height:245px}.contact{padding:74px 6vw}.cta-band{margin:0 5vw 70px;padding:34px 25px;display:block;text-align:center}.cta-band .btn{margin-top:20px}.page-hero{padding:90px 6vw 70px}.floating-call{display:block}footer{grid-template-columns:1fr;text-align:center;padding-bottom:88px}footer img{margin:auto}footer div:last-child{align-items:center}.gallery-full{columns:1}}

/* Clickable project photo lightbox */
.clickable-project-image{cursor:zoom-in}
.clickable-project-image:focus-visible{outline:4px solid var(--gold);outline-offset:-4px}
body.lightbox-open{overflow:hidden}
.lightbox{position:fixed;inset:0;z-index:200;background:rgba(2,8,24,.94);display:none;align-items:center;justify-content:center;padding:38px 72px;color:#fff}
.lightbox.open{display:flex}
.lightbox-stage{margin:0;max-width:min(1180px,88vw);max-height:88vh;display:flex;flex-direction:column;align-items:center;gap:14px}
.lightbox-image{max-width:100%;max-height:78vh;width:auto;height:auto;object-fit:contain;border-radius:10px;box-shadow:0 24px 70px rgba(0,0,0,.5)}
.lightbox-caption{text-align:center;font-weight:800;font-size:1rem;color:#f4f7ff;max-width:900px}
.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;border:0;color:white;background:rgba(255,255,255,.12);cursor:pointer;display:grid;place-items:center;line-height:1;backdrop-filter:blur(6px)}
.lightbox-close{top:20px;right:22px;width:48px;height:48px;border-radius:50%;font-size:34px}
.lightbox-prev,.lightbox-next{top:50%;transform:translateY(-50%);width:52px;height:72px;border-radius:12px;font-size:48px}
.lightbox-prev{left:18px}.lightbox-next{right:18px}
.lightbox-close:hover,.lightbox-prev:hover,.lightbox-next:hover{background:var(--gold);color:#111}
@media(max-width:640px){.lightbox{padding:70px 14px 28px}.lightbox-stage{max-width:96vw}.lightbox-image{max-height:72vh}.lightbox-prev,.lightbox-next{top:auto;bottom:18px;width:50px;height:50px;border-radius:50%;font-size:38px}.lightbox-prev{left:28%}.lightbox-next{right:28%}.lightbox-close{top:14px;right:14px}}
