:root{--red:#d10f18;--black:#090909;--white:#fff;--muted:#c8c8c8;--line:#ddd;--max:1180px}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;font-family:Inter,Arial,sans-serif;color:#111;background:#fff} a{text-decoration:none;color:inherit} img{max-width:100%;display:block}.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:50;background:#050505;border-bottom:1px solid #333}.nav-wrap{height:80px;display:flex;align-items:center;gap:28px}.brand img{width:285px;max-height:62px;object-fit:contain}.main-nav{display:flex;gap:26px;margin-left:auto}.main-nav a{font:700 18px/1 "Barlow Condensed",sans-serif;text-transform:uppercase;color:#eee;padding:29px 0 24px;border-bottom:3px solid transparent}.main-nav a:hover,.main-nav a.active{color:#fff;border-color:var(--red)}.phone{white-space:nowrap}.top-phone{background:var(--red);color:#fff;padding:16px 18px;font:700 22px/1 "Barlow Condensed",sans-serif}.menu-toggle{display:none;background:none;border:0;color:#fff;font-size:28px}.hero{min-height:550px;position:relative;background:url('hero.jpg') center/cover no-repeat;display:flex;align-items:center}.hero-shade{
  position:absolute;
  inset:0;
  background:linear-gradient(
    90deg,
    rgba(0,0,0,.72) 0%,
    rgba(0,0,0,.45) 42%,
    rgba(0,0,0,.08) 72%,
    rgba(0,0,0,0) 100%
  );
}.hero-content{position:relative;padding:55px 0;color:#fff}.hero h1{margin:0 0 12px;font:800 clamp(52px,7vw,76px)/.93 "Barlow Condensed",sans-serif;text-transform:uppercase;max-width:500px}.hero h1 span{display:block}.red{color:var(--red)}.hero p{max-width:500px;font-size:19px;line-height:1.55;color:#eee}.hero-actions{display:flex;gap:14px;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;font:700 18px/1 "Barlow Condensed",sans-serif;text-transform:uppercase;letter-spacing:.5px;border:2px solid transparent;transition:.2s}.btn:hover{transform:translateY(-1px)}.btn-red{background:var(--red);color:#fff}.btn-outline{border-color:#fff;color:#fff;background:rgba(0,0,0,.35)}.btn-black{background:#080808;color:#fff}.btn-outline-light{border-color:#fff;color:#fff}.tagline{background:#050505;color:#eee;text-align:center;padding:17px;font-size:15px;letter-spacing:5px;text-transform:uppercase}.tagline b{color:var(--red);padding:0 12px}.section{padding:58px 0}.eyebrow{text-align:center;color:var(--red);font:700 18px/1 "Barlow Condensed",sans-serif;text-transform:uppercase}.section h2{text-align:center;margin:7px 0 32px;font:800 34px/1.05 "Barlow Condensed",sans-serif;text-transform:uppercase}.service-grid{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-grid article{padding:22px 18px 26px;text-align:center;border-right:1px solid var(--line)}.service-grid article:last-child{border-right:0}.icon{font-size:44px;line-height:1;color:var(--red);height:58px}.service-grid h3{font:800 20px/1.05 "Barlow Condensed",sans-serif;text-transform:uppercase;min-height:44px}.service-grid p{font-size:13px;line-height:1.55;min-height:86px;color:#333}.service-grid a{color:var(--red);font:700 14px/1 "Barlow Condensed",sans-serif;text-transform:uppercase}.dark{background:#050505;color:#fff}.dark p{color:#d0d0d0}.two-col{display:grid;grid-template-columns:1.3fr .7fr;gap:45px;align-items:center}.two-col .eyebrow,.two-col h2{text-align:left}.two-col h2{margin-bottom:15px}.products{padding:42px 0}.projects{padding-top:38px}.project-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.project-grid img{width:100%;height:220px;object-fit:cover}.center{text-align:center;margin-top:16px}.align-start{align-items:start}.about p{line-height:1.7;color:#333}.coverage-card{background:#f5f5f5;padding:24px}.coverage-card h3{margin-top:0;font:800 26px/1 "Barlow Condensed",sans-serif;text-transform:uppercase}.coverage-card img{margin-top:12px;width:100%;max-height:220px;object-fit:contain}.cta{background:linear-gradient(90deg,#b70d16,#e41a25);color:#fff;padding:22px 0}.cta-inner{display:grid;grid-template-columns:1fr auto auto;gap:24px;align-items:center}.cta strong{display:block;font:800 32px/1 "Barlow Condensed",sans-serif;text-transform:uppercase}.cta span{display:block;margin-top:7px}.footer{background:#070707;color:#eee;padding:38px 0 18px}.footer-grid{display:grid;grid-template-columns:1.2fr .65fr 1fr;gap:45px}.footer-logo{width:290px;margin-bottom:14px}.footer p,.footer a{color:#d8d8d8;font-size:14px;line-height:1.6}.footer a{display:block;margin:5px 0}.footer h3{color:var(--red);font:800 20px/1 "Barlow Condensed",sans-serif;text-transform:uppercase}.copyright{text-align:center;border-top:1px solid #222;margin-top:28px;padding-top:16px;color:#aaa;font-size:13px}
@media(max-width:1050px){.top-phone{display:none}.service-grid{grid-template-columns:repeat(3,1fr)}.service-grid article:nth-child(3){border-right:0}.service-grid article:nth-child(-n+3){border-bottom:1px solid var(--line)}}
@media(max-width:780px){.nav-wrap{height:70px}.brand img{width:235px}.menu-toggle{display:block;margin-left:auto}.main-nav{display:none;position:absolute;left:0;right:0;top:70px;background:#090909;flex-direction:column;gap:0;padding:12px 24px 18px}.main-nav.open{display:flex}.main-nav a{padding:13px 0}.hero{min-height:520px;background-position:58% center}.hero-content{padding-top:115px}.hero h1{font-size:58px}.hero p{font-size:16px;max-width:420px}.hero-actions{flex-wrap:wrap}.tagline{font-size:12px;letter-spacing:2px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-grid article{border-bottom:1px solid var(--line)}.service-grid article:nth-child(odd){border-right:1px solid var(--line)}.service-grid article:nth-child(even){border-right:0}.two-col,.cta-inner,.footer-grid{grid-template-columns:1fr}.two-col .btn{justify-self:start}.project-grid{grid-template-columns:repeat(2,1fr)}.cta-inner{gap:12px}.cta .btn{width:100%}}
@media(max-width:480px){.wrap{width:min(var(--max),calc(100% - 26px))}.brand img{width:210px}.hero{min-height:500px}.hero h1{font-size:50px}.service-grid{grid-template-columns:1fr}.service-grid article{border-right:0!important}.project-grid{grid-template-columns:1fr}.project-grid img{height:210px}.cta strong{font-size:28px}}
@media (max-width:780px){

  .nav-wrap{
    height:80px;
    display:flex;
    align-items:center;
    justify-content:space-between;
  }

  .brand img{
    width:210px;
    max-height:65px;
    object-fit:contain;
  }

  .menu-toggle{
    display:block;
    margin-left:auto;
  }

  .hero{
    min-height:500px;
    background-position:center center;
  }

  .hero-content{
    padding-top:60px;
    padding-bottom:60px;
  }

  .hero h1{
    font-size:50px;
    line-height:.95;
  }

  .service-grid{
    grid-template-columns:1fr;
  }

  .service-grid article{
    border-right:0 !important;
    border-bottom:1px solid var(--line);
    min-height:auto;
    padding:35px 20px;
  }

  .service-grid p{
    min-height:0;
  }

  .project-grid{
    grid-template-columns:1fr;
  }

  .project-grid img{
    height:auto;
  }

  .two-col,
  .cta-inner,
  .footer-grid{
    grid-template-columns:1fr;
  }
}
/* HERO FIX */
.hero{
  background-image:url('hero.jpg') !important;
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}

.hero-shade{
  background:rgba(0,0,0,.35) !important;
}
/* MOBILE HEADER FIX */
@media (max-width:780px){

  .site-header{
    height:90px;
  }

  .nav-wrap{
    height:90px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    flex-wrap:nowrap !important;
  }

  .brand{
    display:flex;
    align-items:center;
  }

  .brand img{
    width:200px !important;
    height:auto !important;
    max-height:70px !important;
    object-fit:contain !important;
  }

  .menu-toggle{
    display:block !important;
    margin:0 0 0 auto !important;
    position:static !important;
    font-size:32px !important;
    line-height:1 !important;
  }
}
@media (max-width:780px){

  .site-header{
    height:90px !important;
  }

  .site-header .nav-wrap{
    width:100% !important;
    height:90px !important;
    padding:0 25px !important;
    margin:0 !important;
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:space-between !important;
  }

  .site-header .brand{
    display:block !important;
    flex:0 0 auto !important;
  }

  .site-header .brand img{
    width:190px !important;
    max-width:190px !important;
    max-height:65px !important;
    margin:0 !important;
  }

  .site-header .menu-toggle{
    display:block !important;
    position:static !important;
    flex:0 0 auto !important;
    margin:0 !important;
    padding:8px !important;
  }
}
@media (max-width:780px){

  .site-header .main-nav,
  .site-header .top-phone{
    display:none !important;
  }

  .site-header .nav-wrap{
    width:100% !important;
    max-width:none !important;
    padding:0 25px !important;
  }

  .site-header .menu-toggle{
    display:block !important;
    margin-left:auto !important;
    flex-shrink:0 !important;
    color:white !important;
  }
}
html, body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

* {
  max-width: 100%;
}

@media (max-width: 780px) {
  .wrap {
    width: calc(100% - 30px) !important;
    max-width: 100% !important;
  }

  .nav-wrap {
    width: calc(100% - 30px) !important;
  }

  .tagline {
    width: 100% !important;
    max-width: 100% !important;
    padding: 18px 15px !important;
    font-size: 11px !important;
    letter-spacing: 1.5px !important;
    white-space: nowrap !important;
    text-align: center !important;
  }
}