
:root{--navy:#092542;--navy2:#0e3458;--gold:#d9a640;--ink:#12243a;--muted:#647184;--pale:#eef4f8}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{font-family:Arial,Helvetica,sans-serif;color:var(--ink);margin:0}
a{text-decoration:none}.navbar{background:rgba(7,31,56,.98)}.navbar-brand{display:flex;align-items:center;gap:.65rem;color:#fff;font-weight:800;letter-spacing:.03em;line-height:1.05}
.brand-mark{width:35px;height:38px;display:inline-flex;align-items:end;gap:3px}.brand-mark i{display:block;background:var(--gold);width:8px;transform:skewY(-18deg)}.brand-mark i:nth-child(1){height:19px}.brand-mark i:nth-child(2){height:29px}.brand-mark i:nth-child(3){height:36px}
.brand-sub{display:block;font-size:.62rem;font-weight:500;letter-spacing:.14em}.navbar .nav-link{color:#fff!important;font-size:.92rem}.navbar .nav-link:hover{color:var(--gold)!important}
.btn-gold{background:var(--gold);color:#10233a;border:1px solid var(--gold);font-weight:700;border-radius:3px;padding:.7rem 1.2rem}.btn-gold:hover{background:#edc66f;color:#10233a}.btn-outline-light{border-radius:3px}
.hero{min-height:540px;display:flex;align-items:center;color:white;background:linear-gradient(90deg,rgba(4,24,45,.93) 0%,rgba(5,31,57,.78) 43%,rgba(5,31,57,.12) 100%),url('images/hero-city-team.jpg') center 40%/cover no-repeat}
.hero .container{padding-top:4rem;padding-bottom:4rem}.eyebrow{color:var(--gold);font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.hero h1{font-size:clamp(2.4rem,5vw,4.4rem);font-weight:800;letter-spacing:.015em;line-height:1.03;max-width:720px}.hero h2{font-size:clamp(1.15rem,2vw,1.55rem);font-weight:600;max-width:600px}.hero p{max-width:560px;line-height:1.7;color:#eef4fa}
.section{padding:4.5rem 0}.section-soft{background:var(--pale)}.section-title{text-align:center;margin-bottom:2rem}.section-title .eyebrow{color:#b77c0a}.section-title h2{font-weight:800;font-size:clamp(1.7rem,3vw,2.35rem);margin:.4rem 0}.section-title p{max-width:700px;margin:auto;color:var(--muted)}
.service-card{height:100%;border:1px solid #e3e9ef;background:#fff;box-shadow:0 8px 24px rgba(10,38,64,.08);border-radius:4px;overflow:hidden;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-5px);box-shadow:0 14px 30px rgba(10,38,64,.14)}.service-card img{height:210px;width:100%;object-fit:cover}.service-body{padding:1.35rem}.service-icon{width:48px;height:48px;background:var(--navy);color:var(--gold);display:grid;place-items:center;font-size:1.35rem;border-radius:3px;margin-top:-42px;position:relative;border:3px solid white}.service-body h3{font-size:1.2rem;font-weight:800;margin:.85rem 0}.service-body p{color:var(--muted);line-height:1.6}.text-link{color:var(--navy);font-weight:700}.text-link:hover{color:#a56e00}
.stats{background:var(--navy);color:#fff;padding:1.7rem 0}.stat{display:flex;align-items:center;justify-content:center;gap:1rem;border-right:1px solid rgba(255,255,255,.3)}.stat:last-child{border:0}.stat-icon{color:var(--gold);font-size:1.9rem}.stat strong{display:block;font-size:1.8rem;line-height:1}.stat span{font-size:.86rem;color:#d7e0e9}
.about-img{width:100%;height:360px;object-fit:cover;border-radius:3px}.feature{display:flex;gap:.6rem;align-items:center;font-size:.85rem;font-weight:700}.feature span{font-size:1.35rem;color:var(--navy)}
.project-card{position:relative;overflow:hidden;border-radius:3px;background:var(--navy)}.project-card img{width:100%;height:200px;object-fit:cover;transition:transform .3s}.project-card:hover img{transform:scale(1.04)}.project-card .project-label{position:absolute;bottom:0;left:0;right:0;padding:1rem;color:#fff;font-weight:700;background:linear-gradient(transparent,rgba(3,21,40,.95))}
.testimonial{height:100%;padding:1.5rem;background:#fff;border:1px solid #e1e8ef;box-shadow:0 6px 18px rgba(10,38,64,.06);border-radius:4px}.testimonial p{color:#536173;font-style:italic;line-height:1.6}.testimonial strong{display:block}.testimonial small{color:var(--muted)}
.cta{color:white;background:linear-gradient(90deg,rgba(5,28,51,.92),rgba(5,28,51,.68)),url('images/cta-skyscrapers.jpg') center/cover;padding:3.3rem 0}.cta h2{font-weight:800}.footer{background:#071e35;color:#dbe4ec;padding:3rem 0 1rem}.footer h5{color:#fff;font-size:1rem;font-weight:800;margin-bottom:1rem}.footer a{color:#dbe4ec}.footer a:hover{color:var(--gold)}.footer-bottom{border-top:1px solid rgba(255,255,255,.2);padding-top:1rem;margin-top:2rem;font-size:.85rem;color:#b9c7d4}
.page-hero{background:linear-gradient(90deg,rgba(5,26,48,.93),rgba(5,26,48,.55)),url('images/hero-city-team.jpg') center/cover;color:white;padding:5rem 0}.page-hero h1{font-weight:800;font-size:clamp(2.2rem,4vw,3.6rem)}.content-img{width:100%;height:340px;object-fit:cover;border-radius:4px}.contact-panel{background:#fff;border:1px solid #e1e8ef;padding:2rem;box-shadow:0 8px 24px rgba(10,38,64,.08)}.form-control,.form-select{border-radius:3px;padding:.8rem}.form-control:focus,.form-select:focus{border-color:var(--gold);box-shadow:0 0 0 .2rem rgba(217,166,64,.18)}
@media(max-width:767px){.hero{min-height:570px;background-position:58% center}.hero .container{padding-top:3rem;padding-bottom:3rem}.section{padding:3.2rem 0}.stat{border:0;justify-content:flex-start;padding:.7rem 1rem}.stats .row{row-gap:.3rem}.about-img{height:270px}.service-card img{height:190px}.project-card img{height:180px}.page-hero{padding:3.5rem 0}}
