:root{--ink:#020914;--ink-2:#06172f;--steel:#73839a;--paper:#f4f6f8;--white:#fff;--amber:#ffda00;--navy:#00265f;--navy-bright:#063d82;--line:rgba(255,255,255,.17);--display:"Barlow Condensed",Impact,sans-serif;--body:"Inter",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--white);font-family:var(--body);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font:inherit}.skip-link{position:fixed;left:1rem;top:-5rem;background:var(--amber);color:var(--ink);padding:.75rem 1rem;z-index:999}.skip-link:focus{top:1rem}
.site-header{height:90px;position:fixed;z-index:50;top:0;left:0;right:0;display:flex;align-items:center;padding:0 clamp(1.2rem,3vw,3.5rem);gap:2.2rem;border-bottom:1px solid rgba(255,255,255,.12);background:linear-gradient(180deg,rgba(5,8,10,.92),rgba(5,8,10,.64));backdrop-filter:blur(14px);transition:.3s}.site-header.scrolled{height:76px;background:rgba(5,8,10,.96)}.brand{display:flex;align-items:center;gap:.8rem;flex:none}.brand-mark{font-family:var(--display);font-size:2.35rem;font-weight:800;line-height:.86;letter-spacing:-.05em;color:var(--white);border-right:3px solid var(--amber);padding-right:.65rem}.brand-copy{display:flex;flex-direction:column;line-height:1}.brand-copy strong{font-family:var(--display);font-size:1rem;letter-spacing:.06em}.brand-copy small{font:600 .62rem var(--body);color:#abb2b7;letter-spacing:.18em;margin-top:.28rem}.site-header nav{display:flex;align-items:center;gap:clamp(.8rem,1.4vw,1.65rem);margin-left:auto}.site-header nav a{font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#d9dddf;position:relative}.site-header nav a:after{content:"";position:absolute;height:2px;left:0;right:100%;bottom:-9px;background:var(--amber);transition:.25s}.site-header nav a:hover:after,.site-header nav a.active:after{right:0}.header-actions{display:flex;align-items:center;gap:1rem}.header-phone{font-family:var(--display);font-weight:600;font-size:1rem;letter-spacing:.03em}.button{min-height:50px;display:inline-flex;align-items:center;justify-content:center;padding:.85rem 1.4rem;background:var(--amber);color:#111;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--amber);transition:.25s}.button:hover{background:#eca344;border-color:#eca344;transform:translateY(-2px)}.button-small{min-height:42px;padding:.7rem 1rem;font-size:.65rem}.button-ghost{background:rgba(0,0,0,.22);color:#fff;border-color:rgba(255,255,255,.35)}.button-ghost:hover{background:#fff;color:#111;border-color:#fff}.menu-button{display:none}
.hero{min-height:810px;height:100svh;position:relative;display:flex;align-items:center;overflow:hidden}.hero-image{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(5,7,9,.95) 0%,rgba(5,7,9,.76) 34%,rgba(5,7,9,.1) 74%),linear-gradient(0deg,rgba(7,10,12,.72),transparent 40%),url("assets/jsl-northern-industrial-hero.webp");background-size:cover;background-position:center}.hero-grid,.north-backdrop{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:80px 80px;mask-image:linear-gradient(90deg,#000,transparent 75%)}.hero-content{position:relative;z-index:2;width:min(760px,88vw);margin-left:clamp(1.3rem,7vw,8.5rem);padding-top:65px}.eyebrow{display:flex;align-items:center;gap:.75rem;text-transform:uppercase;letter-spacing:.18em;font-size:.68rem;font-weight:700;color:#d9dddf}.eyebrow span{width:38px;height:2px;background:var(--amber)}.eyebrow.dark{color:#596168}.hero h1,.section h2,.north-title h2,.industries-intro h2,.careers h2,.final-cta h2{font-family:var(--display);text-transform:uppercase;letter-spacing:-.035em;line-height:.83;margin:1.4rem 0;font-weight:700}.hero h1{font-size:clamp(5.5rem,11vw,10.5rem);max-width:850px}.hero-lede{font-size:clamp(1rem,1.5vw,1.25rem);max-width:650px;color:#d8dcde;line-height:1.55}.capability-line{font:600 clamp(.68rem,1vw,.82rem) var(--body);text-transform:uppercase;letter-spacing:.1em;color:#aeb6bb;margin:1.5rem 0}.capability-line i{color:var(--amber);font-style:normal;margin:.25rem}.button-row{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2rem}.hero-index{position:absolute;z-index:2;right:3rem;bottom:2rem;display:flex;gap:1.25rem;font:500 .62rem var(--body);letter-spacing:.14em;color:#aab2b8;text-transform:uppercase}
.section{padding:clamp(5rem,9vw,9rem) clamp(1.3rem,7vw,8.5rem)}.authority{background:var(--paper);color:var(--ink);display:grid;grid-template-columns:.6fr 2fr;gap:2rem}.section-kicker{display:flex;gap:1rem;align-items:flex-start;text-transform:uppercase}.section-kicker span{font:700 .65rem var(--body);color:var(--amber);padding-top:.35rem}.section-kicker p{font:700 .69rem var(--body);letter-spacing:.16em;margin:0}.authority-copy h2,.section-heading h2,.territory h2,.why h2{font-size:clamp(3.2rem,6.5vw,6.8rem);max-width:950px}.authority-copy p{max-width:820px;color:#50585e;font-size:1.05rem}.authority-stats{grid-column:2;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #c9ccca;margin-top:2rem}.authority-stats div{padding:2.2rem 2rem 0 0;border-right:1px solid #c9ccca}.authority-stats strong{display:block;font:700 clamp(2.5rem,5vw,5rem) var(--display);color:var(--amber);line-height:1}.authority-stats span{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#4f585e;margin-top:.75rem}
.services,.projects,.territory{background:var(--paper);color:var(--ink)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:3rem}.section-heading h2{margin:.8rem 0 0}.section-heading>p{max-width:430px;color:#626a6f}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #bfc4c6;border-left:1px solid #bfc4c6}.service-card{min-height:330px;padding:2rem;display:flex;flex-direction:column;border-right:1px solid #bfc4c6;border-bottom:1px solid #bfc4c6;transition:.3s}.service-number{font:600 .65rem var(--body);color:#8f969a}.service-card h3{font:600 clamp(1.7rem,2.5vw,2.4rem) var(--display);text-transform:uppercase;line-height:1;margin-top:2rem}.service-card p{color:#62696d;font-size:.9rem}.service-card b{font-size:.67rem;letter-spacing:.12em;text-transform:uppercase;margin-top:auto}.service-card b span{color:var(--amber);margin-left:.4rem;transition:.2s}.service-card:hover{background:var(--ink);color:#fff;transform:translateY(-4px)}.service-card:hover p{color:#b6bdc1}.service-card:hover b span{margin-left:.85rem}
.north-section{position:relative;background:#0a0e11 url("assets/jsl-northern-industrial-hero.webp") center/cover fixed;color:#fff}.north-section:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,9,11,.97),rgba(6,9,11,.83)),linear-gradient(0deg,#070a0c,transparent)}.north-inner{position:relative;z-index:1}.north-title{max-width:950px}.north-title h2,.industries-intro h2{font-size:clamp(4rem,8vw,8rem)}.north-title>p:last-child{max-width:680px;color:#bdc3c6}.differentiators{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);margin-top:4rem}.differentiators article{min-height:230px;padding:1.8rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.differentiators article>span{font:600 .7rem var(--body);color:var(--amber)}.differentiators h3{font:600 1.5rem var(--display);text-transform:uppercase;margin-top:2.2rem}.differentiators p{font-size:.85rem;color:#aeb6ba;max-width:300px}
.project-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:1rem}.project-card{position:relative;min-height:490px;overflow:hidden;background:#12171a;color:#fff}.project-featured img{width:100%;height:100%;object-fit:cover;transition:.6s}.project-featured:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,9,11,.94),transparent 68%)}.project-featured>div{position:absolute;z-index:2;inset:auto 2rem 2rem}.project-featured p,.project-featured span,.project-featured b{font-size:.67rem;text-transform:uppercase;letter-spacing:.12em;color:#c1c7ca}.project-featured h3,.project-future h3{font:700 clamp(2.7rem,5vw,5.5rem)/.9 var(--display);text-transform:uppercase;margin:.5rem 0}.project-featured b{float:right;color:#fff}.project-featured:hover img{transform:scale(1.035)}.project-future{padding:2rem;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(145deg,#151b1f,#090c0e)}.project-future:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:34px 34px}.project-future>*{position:relative}.project-future>span{position:absolute;top:2rem;font-size:.63rem;letter-spacing:.13em;color:#848d92;text-transform:uppercase}.project-future h3{font-size:clamp(2rem,3vw,3.5rem)}.project-future p{color:#81898e;font-size:.8rem}
.industries{background:var(--ink);display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,8vw,10rem)}.industries-intro{position:sticky;top:130px;align-self:start}.industries-intro h2{font-size:clamp(3.6rem,6vw,6.5rem)}.industry-list{border-top:1px solid var(--line)}.industry-list a{display:grid;grid-template-columns:40px 1fr 30px;align-items:center;gap:1rem;border-bottom:1px solid var(--line);padding:1.6rem 0;transition:.25s}.industry-list span{color:var(--amber);font-size:.65rem}.industry-list strong{font:600 clamp(1.6rem,3vw,2.7rem) var(--display);text-transform:uppercase}.industry-list i{font-style:normal;color:#737d82;transition:.2s}.industry-list a:hover{padding-left:1rem;color:var(--amber)}.industry-list a:hover i{transform:translate(4px,-4px)}
.territory{display:grid;grid-template-columns:.8fr 1.2fr;gap:4rem}.territory-copy p:last-child{color:#596168;max-width:550px}.territory-map{min-height:550px;position:relative;background:#10161a;overflow:hidden;color:#fff}.map-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:50px 50px;transform:perspective(700px) rotateX(55deg) scale(1.4);transform-origin:center bottom}.territory-map:after{content:"N";position:absolute;right:1.5rem;top:1.5rem;font:600 1rem var(--display);color:#758087}.place{position:absolute;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}.place i{width:10px;height:10px;display:block;background:var(--amber);border:3px solid #432f15;box-shadow:0 0 0 6px rgba(213,139,42,.17);border-radius:50%;margin-bottom:.65rem}.place strong{display:block}.place span{color:#78838a}.place-yk{left:24%;top:58%}.place-nwt{left:42%;top:30%}.place-nu{right:15%;top:46%}.route{position:absolute;height:1px;background:linear-gradient(90deg,var(--amber),transparent);transform-origin:left}.route-a{width:47%;left:26%;top:60%;transform:rotate(-28deg)}.route-b{width:57%;left:26%;top:60%;transform:rotate(12deg)}.map-label{position:absolute;left:8%;bottom:8%;font:600 2.1rem/1 var(--display);text-transform:uppercase}.map-label small{font:.55rem var(--body);color:#818a8f;letter-spacing:.12em}.territory-tags{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #c6cac8}.territory-tags span{padding:1.4rem .7rem 0 0;text-transform:uppercase;letter-spacing:.07em;font-size:.7rem}
.why{background:#e7e9e7;color:var(--ink);display:grid;grid-template-columns:.5fr 1.2fr;gap:2rem}.why h2{margin-top:0}.why-grid{grid-column:2;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #bfc4c2;border-left:1px solid #bfc4c2}.why-grid div{padding:1.5rem;min-height:155px;border-right:1px solid #bfc4c2;border-bottom:1px solid #bfc4c2}.why-grid strong{display:block;font:700 2.4rem var(--display);color:var(--amber)}.why-grid span{font:600 .7rem/1.4 var(--body);text-transform:uppercase;letter-spacing:.08em}
.careers{min-height:680px;position:relative;display:flex;align-items:center;justify-content:flex-end;padding:clamp(4rem,7vw,8rem)}.careers:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,10,12,.08),rgba(7,10,12,.92) 65%)}.careers>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.careers-content{position:relative;z-index:2;max-width:570px}.careers h2{font-size:clamp(4.5rem,8vw,8rem)}.careers p{color:#c3c8cb}.final-cta{background:var(--amber);color:var(--ink);padding:clamp(4rem,8vw,8rem) clamp(1.3rem,7vw,8.5rem);display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:3rem}.final-cta .eyebrow{color:#3b2a14}.final-cta .eyebrow span{background:#15100a}.final-cta h2{font-size:clamp(4rem,8vw,8.5rem);margin-bottom:0}.final-cta-copy>p{font-size:1.05rem;max-width:520px}.button-light{background:#111;color:#fff;border-color:#111}.button-outline-light{background:transparent;color:#111;border-color:#111}
footer{padding:4rem clamp(1.3rem,7vw,8.5rem) 1.5rem;background:#07090b;display:grid;grid-template-columns:1.5fr .8fr .8fr;gap:3rem}.footer-brand p{max-width:500px;color:#778188;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;margin-top:2rem}.footer-brand i{color:var(--amber);font-style:normal}.footer-location{display:flex;flex-direction:column;font-size:.8rem;color:#90999e}.footer-location strong{font:600 1.7rem var(--display);text-transform:uppercase;color:#fff}.footer-location a{color:var(--amber);margin-top:1rem}footer nav{display:grid;grid-template-columns:1fr 1fr;gap:.7rem 1.5rem}footer nav a{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:#a4adb1}.footer-bottom{grid-column:1/-1;border-top:1px solid var(--line);padding-top:1.3rem;margin-top:2rem;display:flex;justify-content:space-between;gap:2rem;font-size:.62rem;color:#6f797f;text-transform:uppercase;letter-spacing:.08em}.footer-bottom div{display:flex;gap:1.3rem}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:1100px){.site-header nav{display:none}.header-phone{display:none}.menu-button{display:flex;margin-left:auto;width:42px;height:42px;background:none;border:0;padding:9px;flex-direction:column;justify-content:center;gap:5px;color:#fff}.menu-button span{display:block;height:1px;background:#fff;width:100%}.menu-button b{position:absolute;clip:rect(0 0 0 0)}.site-header.nav-open nav{display:flex;position:absolute;top:100%;left:0;right:0;background:#080b0d;flex-direction:column;align-items:flex-start;padding:2rem}.site-header.nav-open nav a{font:600 1.5rem var(--display)}.service-grid{grid-template-columns:repeat(2,1fr)}.project-grid{grid-template-columns:1.5fr 1fr}.project-grid>*:last-child{grid-column:1/-1;min-height:260px}.industries{grid-template-columns:1fr}.industries-intro{position:static}.territory{grid-template-columns:1fr}.why{grid-template-columns:1fr}.why-grid{grid-column:1}.section-kicker{margin-bottom:2rem}}
@media(max-width:700px){.site-header{height:72px;padding:0 1rem}.brand-mark{font-size:1.9rem}.brand-copy strong{font-size:.82rem}.brand-copy small{font-size:.51rem}.header-actions .button{display:none}.hero{min-height:740px}.hero-image{background-image:linear-gradient(90deg,rgba(5,7,9,.93),rgba(5,7,9,.4)),linear-gradient(0deg,rgba(7,10,12,.85),transparent 50%),url("assets/jsl-northern-industrial-hero.webp");background-position:62% center}.hero-content{margin-left:1.3rem;padding-top:50px}.hero h1{font-size:clamp(4.7rem,24vw,7.4rem)}.hero-lede{font-size:.95rem}.capability-line{line-height:1.9}.hero-index{display:none}.button{width:100%}.section{padding:5rem 1.3rem}.authority{display:block}.authority-copy h2,.section-heading h2,.territory h2,.why h2{font-size:3.5rem}.authority-stats{grid-column:auto;grid-template-columns:1fr}.authority-stats div{border-right:0;border-bottom:1px solid #c9ccca;padding:1.4rem 0}.section-heading{display:block}.service-grid{grid-template-columns:1fr}.service-card{min-height:270px}.differentiators{grid-template-columns:1fr}.differentiators article{min-height:190px}.north-section{background-attachment:scroll}.north-title h2,.industries-intro h2{font-size:4.2rem}.project-grid{grid-template-columns:1fr}.project-card{min-height:430px}.project-grid>*:last-child{grid-column:auto}.project-future{min-height:240px}.territory-map{min-height:430px}.place-nwt{left:38%;top:23%}.place-nu{right:8%}.territory-tags{grid-template-columns:1fr 1fr;gap:1rem}.why-grid{grid-template-columns:1fr 1fr}.careers{min-height:620px;align-items:flex-end;padding:3rem 1.3rem}.careers:after{background:linear-gradient(0deg,rgba(7,10,12,.96),rgba(7,10,12,.12) 85%)}.careers h2{font-size:4.6rem}.final-cta{grid-template-columns:1fr;padding:5rem 1.3rem}.final-cta h2{font-size:4.5rem}footer{grid-template-columns:1fr;padding:4rem 1.3rem 1.5rem}.footer-bottom{display:block}.footer-bottom div{margin-top:1rem;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}*{animation:none!important}}

/* JSL master-brand treatment: navy, safety yellow, white and black */
.site-header{height:140px;gap:clamp(1rem,2vw,2.2rem);border-bottom:2px solid rgba(255,218,0,.28);background:linear-gradient(180deg,rgba(1,7,17,.98),rgba(0,19,48,.83))}
.site-header.scrolled{height:102px;background:rgba(1,8,20,.98)}
.brand-logo{width:220px;height:126px;padding:5px 0;overflow:hidden;transition:.3s}
.brand-logo img{width:100%;height:100%;object-fit:contain}
.site-header.scrolled .brand-logo{height:92px;width:175px}
.site-header nav{gap:clamp(.7rem,1.25vw,1.5rem)}
.site-header nav a{font-size:.7rem;font-weight:700;color:#f1f4f7}
.button{color:#031127;font-weight:800}
.button:hover{background:#fff06a;border-color:#fff06a}
.button-ghost{background:rgba(0,20,52,.42);border-color:rgba(255,255,255,.48);color:#fff}
.button-ghost:hover{background:#fff;color:var(--navy);border-color:#fff}
.hero{min-height:850px}
.hero-image{background-image:linear-gradient(90deg,rgba(1,8,20,.96) 0%,rgba(0,27,69,.76) 38%,rgba(2,9,20,.08) 76%),linear-gradient(0deg,rgba(0,15,39,.82),transparent 43%),url("assets/jsl-northern-industrial-hero.webp")}
.north-section{background-color:var(--navy)}
.north-section:before{background:linear-gradient(90deg,rgba(1,8,20,.98),rgba(0,34,83,.87)),linear-gradient(0deg,#010a18,transparent)}
.project-future{background:linear-gradient(145deg,#07336d,#020914)}
.territory-map{background:linear-gradient(145deg,#063d82,#020914)}
.place i{border-color:#544a00;box-shadow:0 0 0 6px rgba(255,218,0,.18)}
.why{background:#e8edf4}
.final-cta{color:var(--navy)}
.final-cta .eyebrow{color:var(--navy)}
.final-cta .eyebrow span{background:var(--navy)}
.button-light{background:var(--navy);color:#fff;border-color:var(--navy)}
.button-outline-light{color:var(--navy);border-color:var(--navy)}
footer{background:#010711}
.footer-logo{width:290px;height:194px;padding:0}

@media(max-width:1180px){
  .site-header nav{display:none}
}
@media(max-width:700px){
  .site-header{height:96px;padding:0 1rem}
  .site-header.scrolled{height:82px}
  .brand-logo{width:132px;height:88px;padding:2px 0}
  .site-header.scrolled .brand-logo{width:112px;height:74px}
  .hero{min-height:780px}
}
