:root{--navy:#101d33;--navy-2:#162947;--orange:#f58220;--ink:#142033;--paper:#f4f6f8;--white:#fff;--line:#d8dee7;--muted:#5d6879;--max:1200px;--radius:2px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,"Helvetica Neue",sans-serif;color:var(--ink);background:var(--white);font-size:16px;line-height:1.55}a{color:inherit}button,input,textarea{font:inherit}.site-header{position:sticky;top:0;z-index:20;height:80px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - var(--max))/2));background:rgba(16,29,51,.97);color:#fff;border-bottom:1px solid rgba(255,255,255,.12)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;line-height:1}.brand strong,.brand small{display:block}.brand strong{font-size:17px;letter-spacing:.09em}.brand small{font-size:10px;letter-spacing:.2em;color:#dbe3ef;margin-top:5px}.brand-mark{width:38px;height:40px;display:grid;grid-template-columns:repeat(3,1fr);gap:5px;position:relative}.brand-mark:before,.brand-mark:after{content:"";position:absolute;left:0;right:0;height:3px;background:var(--orange)}.brand-mark:before{top:8px}.brand-mark:after{bottom:8px}.brand-mark i{display:block;background:var(--orange);width:3px;justify-self:center}.site-header nav{display:flex;align-items:center;gap:26px}.site-header nav a{text-decoration:none;font-size:14px;font-weight:700}.nav-cta{background:var(--orange);padding:11px 16px}.menu-button{display:none;background:transparent;color:#fff;border:1px solid #71809a;padding:8px 12px}.hero{min-height:720px;background:var(--navy);color:#fff;display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:70px;align-items:center;padding:90px max(24px,calc((100vw - var(--max))/2));position:relative;overflow:hidden}.hero-grid{position:absolute;inset:-5% -10% -5% 48%;opacity:.18;background:repeating-linear-gradient(90deg,transparent 0 58px,var(--orange) 59px 62px),repeating-linear-gradient(0deg,transparent 0 78px,#fff 79px 82px);transform:skewX(-9deg);mask-image:linear-gradient(90deg,transparent,#000)}.hero-copy,.hero-panel{position:relative;z-index:1}.eyebrow{color:var(--orange);font-weight:800;letter-spacing:.13em;text-transform:uppercase;font-size:13px;margin:0 0 18px}.hero h1{font-size:clamp(48px,7vw,92px);line-height:.97;letter-spacing:-.045em;max-width:820px;margin:0 0 28px}.hero-intro{font-size:clamp(18px,2vw,22px);line-height:1.55;color:#dce5f2;max-width:760px}.hero-actions{display:flex;gap:12px;margin:35px 0}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 22px;text-decoration:none;border:0;font-weight:800;cursor:pointer}.primary{background:var(--orange);color:#111}.secondary{border:1px solid #8491a6;background:transparent;color:inherit}.trust-list{list-style:none;padding:25px 0 0;margin:35px 0 0;border-top:1px solid rgba(255,255,255,.16);display:flex;gap:26px;flex-wrap:wrap;color:#dce5f2;font-size:13px}.trust-list li:before{content:"";display:inline-block;width:7px;height:7px;background:var(--orange);margin-right:9px}.hero-panel{background:#fff;color:var(--ink);padding:36px;border-top:6px solid var(--orange)}.panel-label{font-size:12px;text-transform:uppercase;font-weight:800;letter-spacing:.12em;color:var(--muted)}.hero-panel h2{font-size:31px;line-height:1.12;margin:10px 0 18px}.hero-panel a{display:inline-block;margin-top:18px;font-weight:800;text-decoration:none;color:#b34f00}.marquee{background:var(--orange);padding:13px 20px;text-align:center;overflow:hidden}.marquee p{margin:0;font-size:13px;font-weight:900;letter-spacing:.06em;white-space:nowrap}.marquee span{padding:0 14px}.section{max-width:var(--max);margin:0 auto;padding:110px 24px}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin-bottom:52px}.section-heading .eyebrow{grid-column:1/-1;margin-bottom:-20px}.section-heading h2,.split h2,.founder h2,.quote h2{font-size:clamp(37px,5vw,62px);line-height:1.03;letter-spacing:-.035em;margin:0}.section-heading>p:last-child{color:var(--muted);font-size:18px;margin:0}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-grid article{padding:32px 25px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:320px;display:flex;flex-direction:column}.service-grid article>span{color:var(--orange);font-size:13px;font-weight:900}.service-grid h3{font-size:23px;line-height:1.15;margin:50px 0 14px}.service-grid p{color:var(--muted);margin:0}.service-grid a{margin-top:auto;font-weight:800;text-decoration:none;font-size:14px}.split{max-width:none;padding:0;display:grid;grid-template-columns:1fr 1fr}.split>div{padding:100px max(40px,calc((100vw - var(--max))/2))}.split-dark{background:var(--navy);color:#fff;padding-left:max(24px,calc((100vw - var(--max))/2))!important}.split-light{background:var(--paper);padding-right:max(24px,calc((100vw - var(--max))/2))!important}.split p{font-size:18px}.tick-list{list-style:none;padding:0;margin:35px 0 0}.tick-list li{border-top:1px solid rgba(255,255,255,.18);padding:14px 0}.tick-list li:before{content:"✓";color:var(--orange);font-weight:900;margin-right:12px}.sector-list{display:grid;grid-template-columns:1fr 1fr;margin:20px 0 30px}.sector-list span{padding:15px 4px;border-bottom:1px solid var(--line);font-weight:700}.small-note{color:var(--muted)}.text-link{font-weight:900;color:#a84800}.compact{display:block;max-width:700px}.compact .eyebrow{margin-bottom:18px}.process-grid{list-style:none;margin:50px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}.process-grid li{display:grid;grid-template-columns:55px 1fr;gap:20px;padding:30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.process-grid li>span{font-weight:900;color:var(--orange)}.process-grid h3{margin:0 0 8px;font-size:21px}.process-grid p{margin:0;color:var(--muted)}.projects{background:#fff}.project-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:18px}.project-card{background:var(--paper)}.project-card>div:last-child{padding:25px}.project-card p{color:#a84800;font-weight:900;font-size:12px;text-transform:uppercase;letter-spacing:.1em}.project-card h3{font-size:22px;line-height:1.18;margin:7px 0 22px}.project-card span{font-size:13px;color:var(--muted)}.project-visual{height:250px;background-color:var(--navy);position:relative;overflow:hidden}.feature .project-visual{height:360px}.scaffold-lines,.bridge-lines,.roof-lines{background-image:repeating-linear-gradient(90deg,transparent 0 54px,var(--orange) 55px 59px),repeating-linear-gradient(0deg,transparent 0 62px,rgba(255,255,255,.65) 63px 67px)}.bridge-lines{background-image:linear-gradient(25deg,transparent 44%,var(--orange) 45% 48%,transparent 49%),linear-gradient(-25deg,transparent 44%,rgba(255,255,255,.7) 45% 48%,transparent 49%),repeating-linear-gradient(90deg,transparent 0 60px,var(--orange) 61px 64px)}.roof-lines{background-image:linear-gradient(145deg,transparent 49%,var(--orange) 50% 54%,transparent 55%),repeating-linear-gradient(90deg,transparent 0 70px,rgba(255,255,255,.65) 71px 74px)}.founder{background:var(--navy);color:#fff;max-width:none;display:grid;grid-template-columns:minmax(250px,1fr) 2fr;gap:70px;padding-left:max(24px,calc((100vw - var(--max))/2));padding-right:max(24px,calc((100vw - var(--max))/2));align-items:center}.founder-number{font-size:clamp(150px,20vw,280px);line-height:.8;font-weight:900;color:var(--orange);letter-spacing:-.08em}.founder>div:last-child>p:not(.eyebrow):not(.signature){font-size:19px;color:#dce5f2;max-width:720px}.signature{font-weight:900;margin-top:30px}.signature span{font-weight:400;color:#9eacc0;margin-left:10px}.quote{display:grid;grid-template-columns:1fr 1.2fr;background:var(--paper)}.quote>div,.quote form{padding:100px max(24px,calc((100vw - var(--max))/2));}.quote-intro{padding-left:max(24px,calc((100vw - var(--max))/2))!important}.quote form{padding-right:max(24px,calc((100vw - var(--max))/2))!important;background:#fff}.quote-intro>p{font-size:18px;color:var(--muted)}.quote-help{border-top:1px solid var(--line);margin-top:45px;padding-top:25px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;font-weight:800;font-size:14px;margin-bottom:17px}input,textarea{display:block;width:100%;border:1px solid #bac3cf;background:#fff;padding:13px 14px;margin-top:7px;border-radius:0;color:var(--ink)}input:focus,textarea:focus{outline:3px solid rgba(245,130,32,.25);border-color:var(--orange)}.submit-button{width:100%;margin-top:8px}.form-note{font-size:12px;color:var(--muted)}.enquiry-output{margin-top:22px;border-top:3px solid var(--orange);padding-top:18px}.enquiry-output pre{white-space:pre-wrap;background:var(--paper);padding:15px;font:14px/1.5 Arial,sans-serif}.enquiry-output .secondary{color:var(--ink);border-color:#8692a3}footer{background:#091222;color:#dce5f2;display:flex;justify-content:space-between;gap:30px;padding:45px max(24px,calc((100vw - var(--max))/2));font-size:13px}footer strong,footer span{display:block}.footer-brand span{color:#92a0b5;margin-top:7px}footer p{margin:0 0 5px}footer a{color:var(--orange);font-weight:900}.menu-button:focus,.button:focus,a:focus{outline:3px solid #ffd3ad;outline-offset:3px}
@media(max-width:900px){.site-header{height:68px}.menu-button{display:block}.site-header nav{position:absolute;top:68px;left:0;right:0;background:var(--navy);padding:20px 24px 28px;display:none;flex-direction:column;align-items:stretch}.site-header nav.open{display:flex}.hero{min-height:auto;grid-template-columns:1fr;padding-top:75px;padding-bottom:70px}.hero-grid{inset:0 -30% 35% 45%}.hero-panel{max-width:520px}.section{padding-top:80px;padding-bottom:80px}.section-heading{grid-template-columns:1fr;gap:15px}.section-heading .eyebrow{margin-bottom:5px}.service-grid{grid-template-columns:1fr 1fr}.split{grid-template-columns:1fr}.split>div{padding:75px 24px!important}.project-grid{grid-template-columns:1fr 1fr}.project-grid .feature{grid-column:1/-1}.founder{grid-template-columns:1fr;padding-top:80px;padding-bottom:80px;gap:35px}.founder-number{font-size:140px}.quote{grid-template-columns:1fr}.quote>div,.quote form{padding:75px 24px!important}}
@media(max-width:600px){body{font-size:16px}.hero{padding-left:20px;padding-right:20px}.hero h1{font-size:51px}.hero-actions{flex-direction:column}.trust-list{display:grid;grid-template-columns:1fr}.section{padding-left:20px;padding-right:20px}.service-grid,.process-grid,.project-grid{grid-template-columns:1fr}.project-grid .feature{grid-column:auto}.service-grid article{min-height:270px}.sector-list,.field-row{grid-template-columns:1fr}.project-visual,.feature .project-visual{height:250px}.founder-number{font-size:120px}.signature span{display:block;margin:4px 0 0}.quote h2,.section-heading h2,.split h2,.founder h2{font-size:39px}footer{flex-direction:column}.marquee{text-align:left;overflow-x:hidden}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.direct-contact{display:flex;flex-direction:column;gap:8px;margin-top:30px}.direct-contact a{font-size:19px;font-weight:900;color:#9f4100}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,29,51,.98) 0%,rgba(16,29,51,.9) 48%,rgba(16,29,51,.48) 100%);z-index:1}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;z-index:0}.hero-copy,.hero-panel{z-index:2}.project-visual{display:block;width:100%;object-fit:cover;object-position:center}.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin:68px 0 20px;padding-top:30px;border-top:1px solid var(--line)}.gallery-heading .eyebrow{margin:0}.gallery-heading>p:last-child{max-width:600px;margin:0;color:var(--muted)}.work-gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:270px;gap:12px}.work-gallery figure{margin:0;position:relative;overflow:hidden;background:var(--navy)}.work-gallery figure.wide{grid-column:span 2}.work-gallery img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.work-gallery figure:hover img{transform:scale(1.025)}.work-gallery figcaption{position:absolute;left:0;right:0;bottom:0;padding:34px 16px 13px;color:#fff;font-size:13px;font-weight:900;background:linear-gradient(transparent,rgba(9,18,34,.88))}
@media(max-width:900px){.hero:before{background:linear-gradient(90deg,rgba(16,29,51,.96),rgba(16,29,51,.7))}.work-gallery{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.hero-photo{object-position:60% center}.hero:before{background:rgba(16,29,51,.82)}.gallery-heading{display:block;margin-top:48px}.gallery-heading .eyebrow{margin-bottom:10px}.work-gallery{grid-template-columns:1fr;grid-auto-rows:255px}.work-gallery figure.wide{grid-column:auto}}
.brand-logo{display:block;width:58px;height:38px;object-fit:contain}.footer-logo{display:block;width:220px;max-width:100%;height:auto}.footer-brand{flex:0 0 auto}footer{background:#eef2f6;color:var(--ink);border-top:5px solid var(--orange)}.footer-brand span{color:var(--muted)}footer a{color:#9f4100}
@media(max-width:600px){.brand-logo{width:50px;height:34px}.brand{gap:8px}.brand strong{font-size:15px}.brand small{font-size:9px}.footer-logo{width:200px}}
.flagship{border-top:6px solid var(--orange)}.flagship .project-visual{object-position:center 45%}.flagship h3{font-size:30px}.flagship span{font-weight:700;color:var(--ink)}
.case-study{max-width:880px}.case-study h1{font-size:clamp(36px,6vw,68px);line-height:1.04;letter-spacing:-.035em;margin:0 0 20px}.case-study h2{margin:36px 0 10px}.case-intro{font-size:20px;color:var(--muted)}.case-study figure{margin:30px 0}.case-study figure img{display:block;width:100%;height:auto}.case-study figcaption{color:var(--muted);font-size:14px;padding-top:8px}
.service-detail{max-width:960px}.service-detail-actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 36px}.service-header-link{font-weight:700}.service-detail li+li{margin-top:8px}
@media(max-width:600px){.flagship h3{font-size:25px}}

#tank-work {
  scroll-margin-top: 100px;
}

#tank-work-heading {
  margin: 4px 0 0;
  font-size: clamp(28px, 4vw, 40px);
  line-height: 1.1;
}

.service-grid p a {
  font-size: inherit;
  text-decoration: underline;
}

.tank-gallery {
  grid-auto-rows: auto;
}

.tank-gallery img {
  height: auto;
}

.tank-gallery figcaption {
  position: static;
  padding: 10px 12px;
  background: var(--navy);
}

@media (max-width: 600px) {
  #tank-work .gallery-heading > p {
    margin-top: 12px;
  }

  .tank-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
