/* MOCKUP B — "Bold Dark Industrial"
   Dark-dominant, photography-forward. Full-bleed photo hero with protection
   gradient + transparent overlay nav, oversized condensed type, amber + red
   accents, alternating full-width project rows. Content identical (ESW_HOME). */
(function () {
  const { Button, StatBlock } = window.ESWagnerDesignSystem_ee40a0;
  const D = window.ESW_HOME;

  const head = () => ({ fontFamily: "var(--font-heading)", fontWeight: 700, textTransform: "uppercase", lineHeight: 1.0, letterSpacing: "-0.01em", margin: 0 });
  const eyebrow = (color) => ({ fontFamily: "var(--font-heading)", fontWeight: 600, textTransform: "uppercase", letterSpacing: "0.16em", fontSize: 14, color: color || "var(--esw-dozer)", display: "inline-flex", alignItems: "center", gap: 12 });
  const body = { fontFamily: "var(--font-body)", lineHeight: 1.65 };
  const rule = { width: 64, height: 4, background: "var(--brand-primary)", margin: "20px 0 0" };

  function Eyebrow({ children, color, noLine }) {
    return <span style={eyebrow(color)}>{!noLine && <span style={{ width: 30, height: 2, background: "var(--esw-dozer)", display: "inline-block" }} />}{children}</span>;
  }

  function SectorCardB({ s }) {
    const c = `var(--esw-${s.color === "dirt" ? "carolina-dirt" : s.color})`;
    return (
      <a href="#" onClick={(e) => e.preventDefault()} className="reveal"
        style={{ background: "radial-gradient(120% 140% at 90% 0%, #1c4456 0%, var(--esw-navy) 55%, var(--esw-navy-900) 100%)", border: "1px solid rgba(255,255,255,0.08)", borderLeft: `3px solid ${c}`, borderRadius: "var(--radius-md)", padding: "26px 24px", display: "flex", flexDirection: "column", gap: 13, transition: "transform .25s var(--ease-out), box-shadow .25s" }}
        onMouseEnter={(e) => { e.currentTarget.style.transform = "translateY(-4px)"; e.currentTarget.style.boxShadow = "var(--shadow-lg)"; }}
        onMouseLeave={(e) => { e.currentTarget.style.transform = "none"; e.currentTarget.style.boxShadow = "none"; }}>
        <span style={{ width: 52, height: 45, clipPath: "polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%)", background: "#fff", display: "flex", alignItems: "center", justifyContent: "center" }}>
          <img src={s.img} alt="" style={{ width: 28, height: 28, objectFit: "contain" }} />
        </span>
        <h3 style={{ ...head(), fontSize: 20, color: "#fff" }}>{s.label}</h3>
        <p style={{ ...body, fontSize: 13.5, color: "rgba(255,255,255,0.66)", margin: 0 }}>{s.blurb}</p>
      </a>
    );
  }

  function ProjectRow({ p, i, iconMap }) {
    return (
      <div className="reveal rsp-split" style={{ display: "grid", gridTemplateColumns: "1.15fr 1fr", gap: "clamp(28px,4vw,64px)", alignItems: "center" }}>
        <div style={{ order: 1, position: "relative", overflow: "hidden", borderRadius: "var(--radius-md)", aspectRatio: "16/10" }}>
          <img src={p.image} alt={p.title} style={{ width: "100%", height: "100%", objectFit: "cover", objectPosition: p.id === "clt" ? "center top" : "center" }} />
          <span style={{ position: "absolute", top: 16, left: 16, whiteSpace: "nowrap", fontFamily: "var(--font-heading)", fontWeight: 600, textTransform: "uppercase", letterSpacing: "0.06em", fontSize: 12, padding: "6px 12px", borderRadius: "var(--radius-pill)", background: p.status.includes("Progress") ? "rgba(253,183,26,0.92)" : "rgba(47,125,79,0.95)", color: p.status.includes("Progress") ? "#3a2a00" : "#fff" }}>{p.status}</span>
        </div>
        <div style={{ order: 2 }}>
          <span style={{ display: "inline-flex", alignItems: "center", gap: 10, fontFamily: "var(--font-heading)", fontWeight: 600, textTransform: "uppercase", letterSpacing: "0.08em", fontSize: 12.5, color: "var(--esw-asphalt)" }}>
            {iconMap && iconMap[p.sector] && (
              <span style={{ position: "relative", display: "inline-flex", alignItems: "center", justifyContent: "center", width: 39, height: 34, flex: "none" }}>
                <svg viewBox="0 0 39 34" aria-hidden="true" style={{ position: "absolute", inset: 0, width: "100%", height: "100%", overflow: "visible" }}>
                  <polygon points="9.75,0 29.25,0 39,17 29.25,34 9.75,34 0,17" fill="none" stroke="var(--esw-asphalt)" strokeWidth="1" />
                </svg>
                <img src={iconMap[p.sector]} alt="" style={{ position: "relative", width: 18, height: 18, objectFit: "contain" }} />
              </span>
            )}{p.sector}
          </span>
          <h3 style={{ ...head(), fontSize: "clamp(26px,2.6vw,40px)", color: "var(--esw-asphalt)", margin: "10px 0 6px" }}>{p.title}</h3>
          <div style={{ display: "inline-flex", alignItems: "center", gap: 7, color: "var(--text-muted)", fontFamily: "var(--font-body)", fontSize: 15 }}>
            <i data-lucide="map-pin" style={{ width: 16, height: 16, color: "var(--brand-primary)" }} /> {p.location}
          </div>
          <div style={{ display: "flex", gap: 44, marginTop: 24 }}>
            {p.metrics.map((m) => <StatBlock key={m.label} value={m.value} label={m.label} accent="navy" />)}
          </div>
          <div style={{ marginTop: 26 }}>
            <Button variant="outline" iconRight={<i data-lucide="arrow-right" style={{ width: 16, height: 16 }} />}>View the Project</Button>
          </div>
        </div>
      </div>
    );
  }

  function App() {
    window.useReveal();
    const sectorIcon = React.useMemo(() => D.sectors.items.reduce((m, s) => { m[s.label] = s.img; return m; }, {}), []);
    React.useEffect(() => { if (window.lucide) window.lucide.createIcons(); });

    return (
      <div style={{ background: "var(--esw-asphalt)" }}>
        <window.ESWNav theme="transparent" />

        {/* 1 — HERO (full-bleed photo) */}
        <section style={{ position: "relative", minHeight: "92vh", display: "flex", alignItems: "flex-end", overflow: "hidden" }}>
          <img src="assets/photos/bridge-steel-truss-lift.jpg" alt="ESW bridge girder lift" style={{ position: "absolute", inset: 0, width: "100%", height: "100%", objectFit: "cover" }} />
          <div style={{ position: "absolute", inset: 0, background: "linear-gradient(180deg, rgba(8,24,32,0.55) 0%, rgba(8,24,32,0.1) 32%, rgba(8,24,32,0.6) 72%, rgba(8,24,32,0.94) 100%)" }} />
          <div className="esw-wrap" style={{ position: "relative", width: "100%", paddingTop: 120, paddingBottom: "clamp(48px,6vw,88px)" }}>
            <Eyebrow color="#fff">{D.hero.eyebrow}</Eyebrow>
            <h1 style={{ ...head(), fontSize: "clamp(52px,8vw,124px)", color: "#fff", margin: "20px 0 0", maxWidth: "16ch" }}>
              {D.hero.h1a} <span style={{ color: "var(--esw-dozer)" }}>{D.hero.h1b}</span>
            </h1>
            <div className="rsp-stack-c" style={{ display: "flex", gap: 14, marginTop: 32, flexWrap: "wrap" }}>
              <Button variant="primary" size="lg" iconRight={<i data-lucide="arrow-right" style={{ width: 18, height: 18 }} />}>{D.hero.primaryCta}</Button>
              <Button variant="outline-light" size="lg">{D.hero.secondaryCta}</Button>
            </div>
          </div>
        </section>

        {/* 2 — INTRO */}
        <section style={{ background: "var(--esw-navy)", color: "#fff", position: "relative", overflow: "hidden" }}>
          {/* gravel hexagon-point divider in the gutter — reaches top & bottom, sits clear of text */}
          <svg aria-hidden="true" preserveAspectRatio="none" viewBox="0 0 120 100" style={{ position: "absolute", top: 0, bottom: 0, right: "51%", width: 120, height: "100%", opacity: 0.25, pointerEvents: "none", zIndex: 0 }}>
            <polyline points="0,0 120,50 0,100" fill="none" stroke="var(--esw-gravel)" strokeWidth="1.5" vectorEffect="non-scaling-stroke" />
          </svg>
          <div className="esw-wrap rsp-pad rsp-split" style={{ position: "relative", zIndex: 1, paddingTop: "var(--section-y)", paddingBottom: "var(--section-y)", display: "grid", gridTemplateColumns: "1fr 1fr", gap: "clamp(36px,5vw,80px)", alignItems: "center" }}>
            <div className="reveal">
              <Eyebrow noLine>{D.intro.eyebrow}</Eyebrow>
              <h2 style={{ ...head(), fontSize: "clamp(34px,4.4vw,64px)", color: "#fff", margin: "16px 0 0" }}>Four Generations<br />of Groundwork</h2>
              <div style={rule} />
            </div>
            <div className="reveal">
              <p style={{ ...body, fontSize: "clamp(17px,1.4vw,20px)", color: "rgba(255,255,255,0.82)", margin: 0 }}>{D.intro.body}</p>
              <div style={{ marginTop: 26 }}>
                <Button variant="outline-light" iconRight={<i data-lucide="arrow-right" style={{ width: 16, height: 16 }} />}>{D.intro.link}</Button>
              </div>
            </div>
          </div>
        </section>

        {/* 3 — STAT BAND */}
        <section style={{ background: "var(--esw-asphalt-deep)", color: "#fff" }}>
          <div className="esw-wrap rsp-stats" style={{ display: "grid", gridTemplateColumns: "repeat(5,1fr)", padding: "clamp(40px,5vw,64px) var(--gutter)", gap: 24 }}>
            {D.stats.map((s) => (
              <div key={s.label} className="reveal">
                <div style={{ ...head(), fontSize: "clamp(40px,4.6vw,68px)", color: "var(--esw-dozer)" }}>{s.value}</div>
                <div style={{ fontFamily: "var(--font-heading)", fontWeight: 600, textTransform: "uppercase", letterSpacing: "0.05em", fontSize: 15, color: "#fff", marginTop: 4 }}>{s.label}</div>
                <div style={{ ...body, fontSize: 13, color: "rgba(255,255,255,0.55)" }}>{s.sublabel}</div>
              </div>
            ))}
          </div>
        </section>

        {/* 4 — SECTORS */}
        <section style={{ background: "#f3f3f4", color: "var(--esw-asphalt)" }}>
          <div className="esw-wrap rsp-pad" style={{ paddingTop: "var(--section-y)", paddingBottom: "var(--section-y)" }}>
            <div className="reveal" style={{ textAlign: "left", maxWidth: 720, margin: "0 0 48px" }}>
              <Eyebrow noLine color="var(--brand-primary)">{D.sectors.eyebrow}</Eyebrow>
              <h2 style={{ ...head(), fontSize: "clamp(34px,4.4vw,64px)", color: "var(--esw-asphalt)", margin: "16px 0 0" }}>{D.sectors.h2}</h2>
              <div style={{ ...rule, margin: "20px 0 22px" }} />
              <p style={{ ...body, fontSize: 18, color: "var(--esw-asphalt)", margin: 0 }}>{D.sectors.intro}</p>
            </div>
            <div className="rsp-4" style={{ display: "grid", gridTemplateColumns: "repeat(4,1fr)", gap: 14 }}>
              {D.sectors.items.map((s) => <SectorCardB key={s.id} s={s} />)}
            </div>
          </div>
        </section>

        {/* 5 — FEATURED PROJECTS (alternating rows) */}
        <section style={{ background: "#fff", color: "var(--esw-asphalt)" }}>
          <div className="esw-wrap rsp-pad" style={{ paddingTop: "var(--section-y)", paddingBottom: "var(--section-y)" }}>
            <div className="reveal rsp-stack" style={{ display: "flex", justifyContent: "space-between", alignItems: "flex-end", gap: 16, marginBottom: 56 }}>
              <div>
                <Eyebrow noLine color="var(--brand-primary)">{D.projects.eyebrow}</Eyebrow>
                <h2 style={{ ...head(), fontSize: "clamp(34px,4.4vw,64px)", color: "var(--esw-asphalt)", margin: "16px 0 0" }}>{D.projects.h2}</h2>
                <div style={rule} />
                <p style={{ ...body, fontSize: 17, color: "var(--text-muted)", margin: "20px 0 0", maxWidth: 560 }}>{D.projects.intro}</p>
              </div>
              <Button variant="outline">{D.projects.cta}</Button>
            </div>
            <div style={{ display: "flex", flexDirection: "column", gap: "clamp(48px,6vw,88px)" }}>
              {D.projects.items.map((p, i) => <ProjectRow key={p.id} p={p} i={i} iconMap={sectorIcon} />)}
            </div>
          </div>
        </section>

        {/* 6 — CAREERS (full-bleed photo) */}
        <section style={{ position: "relative", overflow: "hidden", color: "#fff" }}>
          <img src="assets/photos/operator-cab-profile.jpg" alt="ESW operator" style={{ position: "absolute", inset: 0, width: "100%", height: "100%", objectFit: "cover" }} />
          <div style={{ position: "absolute", inset: 0, background: "linear-gradient(100deg, rgba(8,24,32,0.94) 0%, rgba(8,24,32,0.82) 46%, rgba(8,24,32,0.5) 100%)" }} />
          <div className="esw-wrap rsp-pad" style={{ position: "relative", paddingTop: "var(--section-y)", paddingBottom: "var(--section-y)" }}>
            <div className="reveal" style={{ maxWidth: 720 }}>
              <Eyebrow noLine>{D.careers.eyebrow}</Eyebrow>
              <h2 style={{ ...head(), fontSize: "clamp(36px,4.6vw,68px)", color: "#fff", margin: "16px 0 0" }}>Build Your Career<br />at E.S. Wagner</h2>
              <div style={rule} />
              <p style={{ ...body, fontSize: 18, color: "rgba(255,255,255,0.85)", margin: "22px 0 0" }}>{D.careers.pitch}</p>
            </div>
            <div className="rsp-3" style={{ display: "grid", gridTemplateColumns: "repeat(3,1fr)", gap: 16, margin: "40px 0 36px" }}>
              {D.careers.paths.map((p) => (
                <div key={p.title} className="reveal" style={{ background: "rgba(255,255,255,0.06)", backdropFilter: "blur(2px)", border: "1px solid rgba(255,255,255,0.14)", borderRadius: "var(--radius-md)", padding: "24px 22px" }}>
                  <span style={{ width: 44, height: 38, clipPath: "polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%)", background: "rgba(253,183,26,0.18)", color: "var(--esw-dozer)", display: "inline-flex", alignItems: "center", justifyContent: "center", marginBottom: 12 }}>
                    <i data-lucide={p.icon} style={{ width: 22, height: 22 }} />
                  </span>
                  <h3 style={{ ...head(), fontSize: 18, color: "var(--esw-dozer)", marginBottom: 8 }}>{p.title}</h3>
                  <p style={{ ...body, fontSize: 13.5, color: "rgba(255,255,255,0.74)", margin: 0 }}>{p.blurb}</p>
                </div>
              ))}
            </div>
            <Button variant="primary" size="lg" iconRight={<i data-lucide="arrow-right" style={{ width: 18, height: 18 }} />}>{D.careers.cta}</Button>
          </div>
        </section>

        {/* 7 — CULTURE */}
        <section style={{ background: "#f3f3f4", color: "var(--esw-asphalt)", position: "relative", overflow: "hidden" }}>
          <div className="esw-wrap rsp-pad rsp-split" style={{ paddingTop: "var(--section-y)", paddingBottom: "var(--section-y)", display: "grid", gridTemplateColumns: "1fr 1fr", gap: "clamp(36px,5vw,72px)", alignItems: "stretch" }}>
            {/* hexagon stack — photo & red are regular hexagons (aspect 2/√3 ≈ 1.1547) */}
            <div className="reveal" style={{ position: "relative", alignSelf: "stretch", minHeight: 480 }}>
              {/* red hexagon — same (full) height as the light shape; shifted right so it extends a little past the photo's right point; parallel edges */}
              <div style={{ position: "absolute", top: "calc(-1 * var(--section-y))", bottom: "calc(-1 * var(--section-y))", right: "-5.5%", aspectRatio: "1.1547 / 1", background: "var(--brand-primary)", clipPath: "polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%)", zIndex: 1 }} />
              {/* large light shape — fills the entire left side; top reaches the section top; its right point sits BELOW the photo/red right point */}
              <div style={{ position: "absolute", top: "calc(-1 * var(--section-y))", bottom: "calc(-1 * var(--section-y))", left: "-100vw", right: "-2%", background: "#e8e7ec", clipPath: "polygon(0 0, calc(100% - 250px) 0, 100% 62%, calc(100% - 153px) 100%, 0 100%)", zIndex: 2 }} />
              {/* photo hexagon — on top; shifted right so its right point lines up vertically with the light shape's point */}
              <div style={{ position: "absolute", top: "50%", right: "-2%", width: "82%", aspectRatio: "1.1547 / 1", transform: "translateY(-50%)", zIndex: 3 }}>
                <div style={{ position: "absolute", inset: 0, clipPath: "polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%)", overflow: "hidden" }}>
                  <img src={D.culture.image} alt="ESW crew" style={{ width: "100%", height: "100%", objectFit: "cover", objectPosition: "50% 35%" }} />
                </div>
              </div>
            </div>
            <div className="reveal">
              <Eyebrow noLine color="var(--brand-primary)">{D.culture.eyebrow}</Eyebrow>
              <h2 style={{ ...head(), fontSize: "clamp(34px,4.2vw,60px)", color: "var(--esw-asphalt)", margin: "16px 0 0" }}>{D.culture.h2}</h2>
              <div style={rule} />
              <p style={{ ...body, fontSize: 17, color: "var(--text-muted)", margin: "22px 0 0" }}>{D.culture.body}</p>
              <blockquote style={{ margin: "26px 0 0", paddingLeft: 22, borderLeft: "4px solid var(--esw-dozer)" }}>
                <p style={{ fontFamily: "var(--font-heading)", fontWeight: 500, fontStyle: "italic", fontSize: 20, lineHeight: 1.4, color: "var(--esw-asphalt)", margin: 0 }}>"{D.culture.quote}"</p>
                <cite style={{ display: "block", marginTop: 12, ...eyebrow("var(--esw-asphalt)"), fontStyle: "normal" }}>— {D.culture.quoteAttr}</cite>
              </blockquote>
              <div style={{ marginTop: 26 }}>
                <Button variant="outline" iconRight={<i data-lucide="arrow-right" style={{ width: 16, height: 16 }} />}>{D.culture.cta}</Button>
              </div>
            </div>
          </div>
        </section>

        {/* 8 — SAFETY (full-bleed dramatic) */}
        <section style={{ position: "relative", overflow: "hidden", color: "#fff" }}>
          <img src="assets/photos/safety-own-it-vest.jpg" alt="ESW safety vest — Own It" style={{ position: "absolute", inset: 0, width: "100%", height: "100%", objectFit: "cover" }} />
          <div style={{ position: "absolute", inset: 0, background: "linear-gradient(90deg, rgba(8,24,32,0.92) 0%, rgba(8,24,32,0.7) 55%, rgba(208,55,66,0.28) 100%)" }} />
          <div className="esw-wrap rsp-pad rsp-split" style={{ position: "relative", paddingTop: "var(--section-y)", paddingBottom: "var(--section-y)", display: "grid", gridTemplateColumns: "1.5fr 1fr", gap: 48, alignItems: "center" }}>
            <div className="reveal">
              <Eyebrow noLine>{D.safety.eyebrow}</Eyebrow>
              <h2 style={{ ...head(), fontSize: "clamp(40px,5.6vw,84px)", color: "#fff", margin: "16px 0 0" }}>{D.safety.headline}</h2>
              <div style={rule} />
              <p style={{ ...body, fontSize: 19, color: "rgba(255,255,255,0.88)", margin: "22px 0 0", maxWidth: 560 }}>{D.safety.body}</p>
              <div style={{ display: "flex", gap: 48, marginTop: 30, flexWrap: "wrap" }}>
                <StatBlock value={D.safety.stat.value} label={D.safety.stat.label} accent="white" />
                <StatBlock value={D.safety.stat2.value} label={D.safety.stat2.label} accent="white" />
              </div>
            </div>
            <div className="reveal rsp-hide-sm" style={{ display: "flex", justifyContent: "center" }}>
              <img src="assets/logos/esw-safety-badge.png" alt="Safety — Own It!" style={{ height: 260, filter: "drop-shadow(0 16px 40px rgba(0,0,0,0.6))" }} />
            </div>
          </div>
        </section>

        {/* 9 — NEWS */}
        <section style={{ background: "#fff", color: "var(--esw-asphalt)" }}>
          <div className="esw-wrap rsp-pad" style={{ paddingTop: "var(--section-y)", paddingBottom: "var(--section-y)" }}>
            <div className="reveal rsp-stack" style={{ display: "flex", justifyContent: "space-between", alignItems: "flex-end", gap: 16, marginBottom: 44 }}>
              <div>
                <Eyebrow noLine color="var(--brand-primary)">The Latest</Eyebrow>
                <h2 style={{ ...head(), fontSize: "clamp(32px,4vw,56px)", color: "var(--esw-asphalt)", margin: "16px 0 0" }}>{D.news.h2}</h2>
                <div style={rule} />
              </div>
              <Button variant="outline">{D.news.cta}</Button>
            </div>
            <div className="rsp-3" style={{ display: "grid", gridTemplateColumns: "repeat(3,1fr)", gap: 20 }}>
              {D.news.items.map((n) => (
                <a key={n.title} href="#" onClick={(e) => e.preventDefault()} className="reveal"
                  style={{ background: "radial-gradient(120% 140% at 90% 0%, #1c4456 0%, var(--esw-navy) 55%, var(--esw-navy-900) 100%)", borderRadius: "var(--radius-md)", overflow: "hidden", display: "flex", flexDirection: "column", transition: "transform .25s var(--ease-out)" }}
                  onMouseEnter={(e) => { e.currentTarget.style.transform = "translateY(-4px)"; }}
                  onMouseLeave={(e) => { e.currentTarget.style.transform = "none"; }}>
                  <div style={{ aspectRatio: "16/10", overflow: "hidden" }}><img src={n.image} alt="" style={{ width: "100%", height: "100%", objectFit: "cover" }} /></div>
                  <div style={{ padding: "20px 22px 24px" }}>
                    <div style={{ ...eyebrow(), fontSize: 12, marginBottom: 8 }}>{n.date}</div>
                    <h3 style={{ fontFamily: "var(--font-heading)", fontWeight: 700, fontSize: 19, color: "#fff", margin: "0 0 8px", lineHeight: 1.1 }}>{n.title}</h3>
                    <p style={{ ...body, fontSize: 14, color: "rgba(255,255,255,0.66)", margin: 0 }}>{n.excerpt}</p>
                  </div>
                </a>
              ))}
            </div>
          </div>
        </section>

        {/* 10 — CAPABILITY */}
        <section style={{ position: "relative", overflow: "hidden", color: "#fff", background: "var(--esw-asphalt-deep)" }}>
          <img src="assets/photos/cat-articulated-truck.jpg" alt="" style={{ position: "absolute", inset: 0, width: "100%", height: "100%", objectFit: "cover", opacity: 0.16 }} />
          <div className="esw-wrap rsp-pad rsp-split" style={{ position: "relative", paddingTop: "clamp(56px,6vw,96px)", paddingBottom: "clamp(56px,6vw,96px)", display: "grid", gridTemplateColumns: "auto 1fr", gap: "clamp(28px,4vw,64px)", alignItems: "center" }}>
            <div className="reveal" style={{ minWidth: 180 }}>
              <Eyebrow noLine>{D.capability.eyebrow}</Eyebrow>
              <div style={{ ...head(), fontSize: "clamp(72px,9vw,150px)", color: "var(--esw-dozer)", marginTop: 8, lineHeight: 0.9 }}>400+</div>
              <div style={{ fontFamily: "var(--font-heading)", fontWeight: 600, textTransform: "uppercase", letterSpacing: "0.05em", fontSize: 15, color: "rgba(255,255,255,0.7)" }}>Pieces of major equipment</div>
            </div>
            <p className="reveal" style={{ fontFamily: "var(--font-heading)", fontWeight: 500, fontSize: "clamp(22px,2.6vw,38px)", lineHeight: 1.35, color: "#fff", margin: 0 }}>{D.capability.body}</p>
          </div>
        </section>

        {/* 11 — CLOSING CTA */}
        <section style={{ position: "relative", overflow: "hidden", color: "#fff" }}>
          <img src="assets/photos/aerial-rail-industrial-site.jpg" alt="" style={{ position: "absolute", inset: 0, width: "100%", height: "100%", objectFit: "cover" }} />
          <div style={{ position: "absolute", inset: 0, background: "linear-gradient(90deg, rgba(150,26,40,0.94) 0%, rgba(208,55,66,0.86) 55%, rgba(208,55,66,0.6) 100%)" }} />
          <div className="esw-wrap rsp-pad rsp-stack" style={{ position: "relative", paddingTop: "clamp(56px,6vw,96px)", paddingBottom: "clamp(56px,6vw,96px)", display: "flex", justifyContent: "space-between", alignItems: "center", gap: 32 }}>
            <div className="reveal">
              <h2 style={{ ...head(), fontSize: "clamp(36px,4.6vw,68px)", color: "#fff" }}>{D.closing.h2}</h2>
              <p style={{ ...body, fontSize: 18, color: "rgba(255,255,255,0.94)", margin: "14px 0 0", maxWidth: 560 }}>{D.closing.body}</p>
            </div>
            <div className="reveal rsp-stack-c" style={{ display: "flex", gap: 14, flexShrink: 0, flexWrap: "wrap" }}>
              <Button variant="navy" size="lg">{D.closing.cta1}</Button>
              <Button variant="outline-light" size="lg">{D.closing.cta2}</Button>
            </div>
          </div>
        </section>

        {/* 12 — LOCATIONS STRIP */}
        <section style={{ background: "var(--esw-asphalt-deep)", color: "#fff", borderTop: "1px solid rgba(255,255,255,0.08)" }}>
          <div className="esw-wrap rsp-stack" style={{ padding: "30px var(--gutter)", display: "flex", alignItems: "center", justifyContent: "space-between", gap: 24, flexWrap: "wrap" }}>
            <div style={{ display: "flex", alignItems: "center", gap: 36, flexWrap: "wrap" }}>
              <span style={{ ...eyebrow() }}>{D.locations.eyebrow}</span>
              {D.locations.offices.map((o) => (
                <div key={o.city} style={{ display: "flex", alignItems: "baseline", gap: 9 }}>
                  <i data-lucide="map-pin" style={{ width: 16, height: 16, color: "var(--brand-primary)" }} />
                  <span style={{ fontFamily: "var(--font-heading)", fontWeight: 600, textTransform: "uppercase", letterSpacing: "0.03em", fontSize: 15, color: "#fff" }}>{o.city}</span>
                  <span style={{ fontFamily: "var(--font-body)", fontSize: 13, color: "rgba(255,255,255,0.6)" }}>{o.role}</span>
                </div>
              ))}
            </div>
            <a href="#" onClick={(e) => e.preventDefault()} style={{ display: "inline-flex", alignItems: "center", gap: 8, fontFamily: "var(--font-heading)", fontWeight: 700, fontSize: 18, color: "#fff" }}>
              <i data-lucide="phone" style={{ width: 18, height: 18, color: "var(--esw-dozer)" }} /> {D.locations.phone}
            </a>
          </div>
        </section>

        <window.ESWFooter />
      </div>
    );
  }

  ReactDOM.createRoot(document.getElementById("root")).render(<App />);
})();
