
:root{
  --black:#070707;
  --black-2:#0e0e0e;
  --white:#fff;
  --text:#151515;
  --muted:#6f6f6f;
  --line:#dedede;
  --gold:#d7a319;
  --gold-2:#f0b519;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:#fff;line-height:1.5}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
.container{width:min(var(--max),calc(100% - 64px));margin:0 auto}
.wide-container{width:calc(100% - 28px);margin:0 auto}
.site-header{position:sticky;top:0;z-index:50;background:#050505;border-bottom:1px solid #202020}
.nav-wrap{height:110px;display:flex;align-items:center;gap:30px}
.brand{width:96px;flex:0 0 96px}
.brand img{width:96px;height:96px;object-fit:contain}
.main-nav{display:flex;gap:42px;margin-left:auto}
.main-nav a{color:#fff;font-size:13px;font-weight:700;letter-spacing:.03em}
.main-nav a:hover{color:var(--gold)}
.phone-top{border:1px solid var(--gold);color:var(--gold);padding:13px 18px;font-size:14px;font-weight:700}
.menu-toggle{display:none;margin-left:auto;background:none;border:0;color:#fff;font-size:28px}
.hero{position:relative;min-height:530px;background:#050505;color:#fff;overflow:hidden}
.hero-bg{position:absolute;inset:0 0 0 39%;background:url('assets/hero-office.jpg') center/cover no-repeat}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#050505 0%,#050505 34%,rgba(5,5,5,.76) 48%,rgba(5,5,5,.12) 72%,rgba(5,5,5,.05) 100%)}
.hero-content{position:relative;z-index:2;padding-top:78px;padding-bottom:76px}
.hero h1{margin:0;font-size:58px;line-height:1.06;letter-spacing:-.025em;font-weight:900}
.accent-line{width:44px;height:3px;background:var(--gold);margin:25px 0 18px}
.hero-tagline{font-size:19px;font-weight:700;margin:0 0 28px}
.hero-slogan{
  font-size:19px;
  font-weight:500;
  margin-top:14px;
  margin-bottom:0;
}
.btn{display:inline-flex;gap:14px;align-items:center;padding:13px 20px;font-weight:800;font-size:13px}
.btn-outline{border:1px solid var(--gold);color:#fff}
.btn-outline:hover{background:var(--gold);color:#000}
.section-light{background:#fff}
.pillars{padding:40px 0;border-bottom:1px solid var(--line)}
.three-col{display:grid;grid-template-columns:repeat(3,1fr)}
.pillar{padding:0 50px;text-align:center;border-right:1px solid var(--line)}
.pillar:first-child{padding-left:10px}
.pillar:last-child{border-right:0;padding-right:10px}
.pillar .icon{font-size:46px;line-height:1;color:var(--gold);margin-bottom:8px}
.pillar h2{font-size:21px;margin:6px 0 10px}
.pillar p{font-size:14px;margin:0 auto;max-width:300px}
.section-kicker{color:var(--gold);font-size:13px;font-weight:900;letter-spacing:.05em}
.section-title{font-size:31px;line-height:1.1;margin:8px 0 10px}
.section-lead{max-width:650px;color:#4f4f4f;margin:0}
.services{padding:30px 0 58px}
.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:30px}
.service-card{min-height:150px;border:1px solid #e6e6e6;border-radius:3px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:18px;background:#fff}
.svc-icon{font-size:42px;line-height:1;color:#111;margin-bottom:12px}
.svc-icon img{width:48px!important;height:48px!important;max-width:48px!important;object-fit:contain;display:block;margin:0 auto 10px}
.service-card h3{font-size:16px;margin:0;font-weight:700}
.section-dark{background:#090a0a;color:#fff}
.projects{padding:48px 0 18px}
.centered{text-align:center}
.light{color:#fff}
.project-headings{display:grid;grid-template-columns:4.05fr 1.3fr;margin:0 16px 10px}
.project-headings h3{margin:0;color:var(--gold);font-size:15px;text-align:center}
.projects-grid{display:grid;grid-template-columns:1.2fr .9fr .9fr 1.05fr 1.3fr;gap:8px}
.project-card{background:#111;border:1px solid #1d1d1d;min-width:0}
.project-card img{width:100%;height:152px;object-fit:cover}
.project-copy{padding:14px 14px 18px}
.project-copy h3{font-size:18px;margin:0 0 7px}
.project-copy p{font-size:13px;color:#ddd;margin:0 0 9px}
.project-copy a{font-size:12px;color:var(--gold);font-weight:900}
.featured{box-shadow:inset 0 0 0 1px rgba(215,163,25,.22)}
.about{padding:0}
.about-grid{display:grid;grid-template-columns:41% 59%;min-height:385px;align-items:stretch}
.about-photo{background:url('assets/about-helmet.jpg') center/cover no-repeat;height:100%}
.about-copy{padding:34px 54px 28px;background:#fff}
.about-copy p{font-size:14px;margin:0 0 12px;max-width:760px}
.motto{font-size:22px!important;color:#b88711;font-weight:900;margin-top:18px!important}
.contact-strip{background:#111;color:#fff;padding:28px 0}
.contact-row{display:flex;justify-content:space-between;align-items:center;gap:30px}
.contact-row h2{margin:4px 0 0;font-size:26px}
.contact-actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap}
.contact-actions a:hover{color:var(--gold)}
.footer{background:#050505;color:#fff;padding:30px 0}
.footer-grid{display:grid;grid-template-columns:1.4fr .7fr 1fr;gap:40px;align-items:center}
.footer-brand{display:flex;align-items:center;gap:18px}
.footer-brand img{width:70px;height:70px;object-fit:contain}
.footer p{color:#ccc;margin:5px 0;font-size:13px}
.footer a{font-size:14px}
@media (max-width: 980px){
  .container{width:min(var(--max),calc(100% - 36px))}
  .phone-top{display:none}
  .main-nav{gap:24px}
  .hero-bg{inset:0 0 0 28%}
  .hero h1{font-size:48px}
  .projects-grid{grid-template-columns:repeat(2,1fr)}
  .project-headings{display:none}
  .maintenance{grid-column:span 2}
  .three-col{grid-template-columns:1fr}
  .pillar{border-right:0;border-bottom:1px solid var(--line);padding:28px 0}
  .pillar:last-child{border-bottom:0}
  .services-grid{grid-template-columns:repeat(2,1fr)}
  .about-grid{grid-template-columns:1fr}
  .about-photo{min-height:360px}
}
@media (max-width: 720px){
  .nav-wrap{height:74px}
  .brand,.brand img{width:62px;height:62px}
  .menu-toggle{display:block}
  .main-nav{display:none;position:absolute;left:0;right:0;top:74px;background:#080808;padding:18px 22px;flex-direction:column;gap:16px;border-top:1px solid #252525}
  .main-nav.open{display:flex}
  .hero{min-height:600px}
  .hero-bg{inset:0;background-position:58% center}
  .hero:after{background:linear-gradient(90deg,rgba(5,5,5,.96) 0%,rgba(5,5,5,.84) 52%,rgba(5,5,5,.35) 100%)}
  .hero-content{padding-top:86px}
  .hero h1{font-size:42px}
  .hero-tagline{font-size:17px}
  .services-grid{grid-template-columns:1fr}
  .projects-grid{grid-template-columns:1fr}
  .maintenance{grid-column:auto}
  .project-card img{height:220px}
  .about-copy{padding:28px 24px}
  .motto{font-size:19px!important}
  .contact-row{align-items:flex-start;flex-direction:column}
  .contact-actions{flex-direction:column;align-items:flex-start;gap:11px}
  .footer-grid{grid-template-columns:1fr}
}
