:root{--ink:#101f38;--forest:#08284c;--green:#07558c;--lime:#e4262f;--cream:#f4f5f7;--muted:#647184;--line:rgba(16,31,56,.17)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,Arial,sans-serif}a{color:inherit;text-decoration:none}.site-header{height:88px;display:flex;align-items:center;padding:0 4.5vw;background:rgba(244,245,247,.94);position:fixed;z-index:20;width:100%;border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.brand{width:235px;display:flex;align-items:center}.brand img{display:block;width:100%;height:auto;mix-blend-mode:multiply}.site-header nav{display:flex;gap:34px;margin:auto;font:600 12px Inter;text-transform:uppercase;letter-spacing:1.2px}.site-header nav a{position:relative}.site-header nav a:after{content:"";height:2px;width:0;background:var(--green);position:absolute;left:0;bottom:-7px;transition:.25s}.site-header nav a:hover:after{width:100%}.header-call{font:600 14px Inter}.header-call small{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:3px}.menu{display:none}.hero{min-height:760px;height:100vh;position:relative;overflow:hidden;background:var(--forest);color:white;padding:150px 7vw 70px;display:flex;align-items:center}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(to right,transparent,black)}.hero:after{content:"S&J";position:absolute;right:-2vw;bottom:-13vw;font:800 39vw/1 'Barlow Condensed';letter-spacing:-3vw;color:rgba(255,255,255,.025)}.hero-glow{position:absolute;right:8%;top:12%;width:45vw;height:45vw;border:1px solid rgba(228,38,47,.28);border-radius:50%;box-shadow:0 0 0 6vw rgba(228,38,47,.035),0 0 0 13vw rgba(228,38,47,.02)}.hero-copy{position:relative;z-index:2;max-width:920px}.eyebrow,.section-label{font:600 11px Inter;letter-spacing:2.3px;text-transform:uppercase}.eyebrow{color:var(--lime);margin-bottom:28px}.hero h1,.statement h2,.section-head h2,.project-intro h2,.contact h2{font:700 clamp(65px,9vw,142px)/.78 'Barlow Condensed';letter-spacing:-.035em;text-transform:uppercase;margin:0}.hero h1 em,.contact h2 em{font-style:normal;color:var(--lime)}.intro{max-width:590px;font-size:18px;line-height:1.65;color:#d8dfda;margin:42px 0 35px}.actions{display:flex;align-items:center;gap:34px}.button{display:inline-flex;align-items:center;gap:45px;font:700 11px Inter;letter-spacing:1px;text-transform:uppercase}.button.primary{background:var(--lime);color:var(--ink);padding:20px 24px}.button.text{border-bottom:1px solid rgba(255,255,255,.45);padding:10px 0}.hero-card{position:absolute;z-index:3;right:5vw;bottom:11vh;width:260px;padding:24px;background:rgba(4,25,49,.86);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px)}.hero-card .marker{display:block;width:8px;height:8px;background:var(--lime);border-radius:50%;box-shadow:0 0 0 5px rgba(228,38,47,.16)}.hero-card p{font-size:11px;color:#9fb0a7;margin:28px 0 6px}.hero-card strong{font:600 20px 'Barlow Condensed';text-transform:uppercase}.hero-card .line{height:1px;background:rgba(255,255,255,.15);margin:22px 0}.hero-card small{font-size:8px;letter-spacing:1px;color:#a6b2ab}.scroll{position:absolute;bottom:28px;left:7vw;font:600 8px Inter;letter-spacing:2px;color:#899a91}.scroll i{display:inline-block;width:80px;height:1px;background:#899a91;margin-left:14px;vertical-align:middle}.section{padding:120px 7vw}.section-label{color:var(--green);padding-bottom:24px;border-bottom:1px solid var(--line)}.statement{display:grid;grid-template-columns:20% 1fr;gap:0 5vw}.statement-body{padding-top:60px}.kicker{font:600 14px Inter;color:var(--green);text-transform:uppercase;letter-spacing:1.5px}.statement h2{font-size:clamp(58px,7vw,110px);line-height:.88}.statement h2 span,.project-intro h2 span{color:transparent;-webkit-text-stroke:1px var(--ink)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:6vw;margin-top:55px;max-width:960px}.two-col p{font-size:15px;line-height:1.8;color:#48524c}.mission{grid-column:2;background:white;border-left:5px solid var(--lime);padding:35px 42px;margin-top:70px;display:grid;grid-template-columns:160px 1fr;gap:30px}.mission span{font:700 12px Inter;text-transform:uppercase;letter-spacing:1.5px;color:var(--green)}.mission p{font:500 19px/1.6 Inter;margin:0}.services{background:var(--ink);color:white}.section-label.light{color:var(--lime);border-color:rgba(255,255,255,.15)}.section-head h2{font-size:clamp(58px,7vw,105px);padding:70px 0}.section-head h2 span{color:#738078}.service{display:grid;grid-template-columns:100px 1fr 1fr 50px;align-items:center;border-top:1px solid rgba(255,255,255,.15);padding:27px 8px;transition:.3s}.service:hover{background:rgba(255,255,255,.04);padding-left:22px}.service b{color:var(--lime);font:600 10px Inter}.service h3{font:600 clamp(23px,2.5vw,38px) 'Barlow Condensed';text-transform:uppercase;margin:0}.service p{color:#aeb8b2;font-size:13px;max-width:390px;line-height:1.5}.service>span{color:var(--lime);font-size:20px}.service.emergency{background:var(--green);border:0;margin-top:30px;padding:35px}.service.emergency a{font:700 11px Inter;text-transform:uppercase;letter-spacing:1px;color:var(--lime)}.projects{padding-bottom:140px}.project-intro{display:flex;justify-content:space-between;align-items:end;padding:70px 0}.project-intro h2{font-size:clamp(58px,7vw,105px)}.project-intro>p{max-width:410px;color:var(--muted);line-height:1.7}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.project{background:white}.project.featured{grid-column:1/-1;display:grid;grid-template-columns:1.25fr 1fr}.project-art{min-height:340px;position:relative;overflow:hidden;background:var(--forest);color:white;padding:26px}.featured .project-art{min-height:460px}.project-art>span{font:600 9px Inter;letter-spacing:2px}.project-art.purple{background:linear-gradient(135deg,#123c69,#071a33)}.project-art.purple:before{content:"";position:absolute;width:150%;height:65px;left:-20%;top:47%;background:var(--lime);transform:rotate(-13deg);box-shadow:0 25px 0 rgba(228,38,47,.28)}.project-art.purple b{position:absolute;right:9%;bottom:10%;font:800 160px/.7 'Barlow Condensed';color:transparent;-webkit-text-stroke:2px rgba(255,255,255,.5)}.project-art.purple small{position:absolute;right:8%;bottom:8%;font:700 9px Inter;letter-spacing:1px}.water{background:#0b4a75}.rings{position:absolute;width:370px;height:370px;border:45px solid #2673a1;border-radius:50%;right:-70px;bottom:-120px;box-shadow:0 0 0 45px rgba(255,255,255,.07),0 0 0 90px rgba(255,255,255,.04)}.lead{background:#465e7d}.pipe{position:absolute;left:20%;top:38%;width:75%;height:90px;background:#95a7bd;transform:rotate(-20deg);box-shadow:0 20px 50px rgba(0,0,0,.25)}.pipe:after{content:"";position:absolute;right:-10px;top:-10px;width:55px;height:110px;border-radius:50%;background:#c9d3df}.project-copy{padding:38px}.tags{display:flex;gap:8px}.tags span{font-size:9px;text-transform:uppercase;letter-spacing:1px;border:1px solid var(--line);padding:7px 9px;color:var(--green)}.project-copy h3{font:700 34px/1 'Barlow Condensed';text-transform:uppercase;margin:25px 0 15px}.project-copy p{font-size:13px;line-height:1.75;color:var(--muted)}.project-copy>small{display:block;margin-top:30px;padding-top:18px;border-top:1px solid var(--line);font-size:10px;text-transform:uppercase;letter-spacing:1px}.partners{background:white}.partner-lead{font:600 clamp(28px,4vw,57px)/1.18 'Barlow Condensed';text-transform:uppercase;max-width:850px;margin:60px 0}.partner-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.partner-grid span{min-height:110px;display:grid;place-items:center;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font:700 18px 'Barlow Condensed';color:#40536b;text-align:center;padding:12px}.logo-note{display:block;color:#8c948f;margin-top:15px;font-size:9px}.contact{background:var(--forest);color:white;padding-bottom:0}.contact-top{text-align:center;max-width:1000px;margin:auto}.contact h2{font-size:clamp(70px,10vw,150px);margin:80px 0 35px}.contact-top p{color:#aab9b0;margin:0 auto 30px}.light-btn{background:white!important;margin-bottom:90px}.locations{border-top:1px solid rgba(255,255,255,.15);display:grid;grid-template-columns:1fr 1fr}.locations article{padding:50px;border-right:1px solid rgba(255,255,255,.15)}.locations span{font:600 9px Inter;color:var(--lime);text-transform:uppercase;letter-spacing:2px}.locations h3{font:600 27px/1.35 'Barlow Condensed';text-transform:uppercase}.locations a{display:block;color:#b5c1ba;font-size:12px;margin:7px 0}footer{background:#07182e;color:white;display:flex;align-items:center;padding:30px 7vw;gap:50px}footer p{font:600 10px Inter;letter-spacing:1px;text-transform:uppercase;color:#8e9c94;margin:auto}footer>small{color:#778078;font-size:9px}.footer-brand{background:white;padding:8px 12px;width:225px}.footer-brand img{mix-blend-mode:normal}.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}@media(max-width:850px){.site-header{height:72px}.site-header nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--cream);padding:25px;flex-direction:column}.site-header nav.open{display:flex}.menu{display:block;margin-left:auto;background:transparent;border:0;font:700 11px Inter;text-transform:uppercase}.header-call{display:none}.hero{padding-top:120px;min-height:700px}.hero-card{display:none}.hero h1{font-size:20vw}.statement{grid-template-columns:1fr}.statement-body,.mission{grid-column:1}.mission{grid-template-columns:1fr}.two-col{grid-template-columns:1fr}.service{grid-template-columns:45px 1fr 28px}.service p{display:none}.service.emergency{grid-template-columns:45px 1fr}.service.emergency a{grid-column:2}.project-intro{display:block}.project-intro>p{margin-top:30px}.project-grid{grid-template-columns:1fr}.project.featured{grid-column:1;display:block}.partner-grid{grid-template-columns:repeat(2,1fr)}.locations{grid-template-columns:1fr}.locations article{border-bottom:1px solid rgba(255,255,255,.15)}footer{align-items:flex-start;flex-direction:column;gap:18px}footer p{margin:0}.section{padding:90px 6vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}
