
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--bg); color: var(--text); font-family: var(--font-main); }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
.container { width: min(1440px, calc(100% - 80px)); margin: 0 auto; }
.site-header { height: 94px; border-bottom: 1px solid var(--line); display:flex; align-items:center; }
.header-inner { display:flex; align-items:center; justify-content:space-between; gap:24px; }
.logo { font-size:21px; line-height:1; font-weight:800; letter-spacing:-1px; }
.logo span { display:block; margin-top:7px; font-size:9px; font-weight:500; letter-spacing:5px; }
.nav { display:flex; gap:30px; align-items:center; font-size:11px; text-transform:uppercase; letter-spacing:1px; }
.nav a { color:var(--muted); transition:color .2s; }
.nav a:hover, .nav a.active { color:var(--accent); }
.contact-link { border:1px solid var(--line); padding:13px 18px; font-size:11px; text-transform:uppercase; letter-spacing:1px; }
.contact-link:hover { background:var(--accent); color:var(--bg); border-color:var(--accent); }
.eyebrow { color:var(--accent); font-size:10px; text-transform:uppercase; letter-spacing:3px; }
h1,h2,h3,p { margin-top:0; }
h1 { font-size:clamp(46px, 8vw, 108px); line-height:.98; letter-spacing:-.065em; font-weight:600; }
h1 span { color:var(--muted); }
.lead { max-width:620px; color:var(--muted); font-size:14px; line-height:1.9; }
.section { padding:75px 0; }
.section-heading { display:flex; justify-content:space-between; align-items:end; gap:30px; margin-bottom:28px; }
.section-heading h2 { margin:12px 0 0; font-size:clamp(28px,4vw,48px); letter-spacing:-.05em; }
.site-footer { border-top:1px solid var(--line); padding:28px 0; color:var(--muted); font-size:10px; }
.footer-inner { display:flex; justify-content:space-between; gap:20px; flex-wrap:wrap; }
.btn { display:inline-flex; align-items:center; gap:25px; padding:16px 20px; background:var(--accent); color:var(--bg); font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:1px; transition:transform .2s; }
.btn:hover { transform:translateY(-3px); }
.btn-outline { display:inline-flex; padding:15px 19px; border:1px solid var(--line); font-size:11px; text-transform:uppercase; letter-spacing:1px; }
.btn-outline:hover { border-color:var(--accent); color:var(--accent); }
@media (max-width:800px) {
  .container { width:calc(100% - 40px); }
  .site-header { height:78px; }
  .nav { display:none; }
  .contact-link { padding:11px 12px; font-size:9px; }
  .section { padding:52px 0; }
  .section-heading { display:block; }
}

.construction-hero { min-height:650px; display:flex; align-items:center; position:relative; background:linear-gradient(90deg,rgba(23,23,21,.97) 0%,rgba(23,23,21,.78) 53%,rgba(23,23,21,.18) 100%),url('https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?auto=format&fit=crop&w=2000&q=85') center/cover; }
.hero-content { padding-top:70px; padding-bottom:70px; }
.hero-content h1 { margin:25px 0; }
.hero-content .lead { margin-bottom:30px; }
.services { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.services article { padding:30px 25px 35px 0; }
.services article + article { border-left:1px solid var(--line); padding-left:25px; }
.services article span { color:var(--accent); font-size:11px; }
.services h3 { margin:35px 0 12px; font-size:20px; letter-spacing:-.04em; }
.services p { color:var(--muted); font-size:12px; line-height:1.8; max-width:310px; }
.project-band { margin-bottom:85px; padding:55px; background:var(--surface); display:flex; align-items:end; justify-content:space-between; gap:30px; }
.project-band h2 { margin:15px 0 0; font-size:clamp(32px,5vw,58px); line-height:1.05; letter-spacing:-.06em; }
.project-band h2 span { color:var(--muted); }
@media(max-width:800px) { .construction-hero{min-height:620px;background-position:60% center;} .services{grid-template-columns:1fr;} .services article,.services article+article{padding:25px 0;border-left:0;border-bottom:1px solid var(--line);} .services h3{margin:15px 0 10px;} .project-band{margin-bottom:50px;padding:28px;display:block;} .project-band .btn{margin-top:25px;} }
