@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/font-0.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/font-1.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/font-2.ttf) format('truetype');
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(fonts/font-3.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/font-4.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/font-5.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/font-6.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/font-7.ttf) format('truetype');
}


:root{--ink:#151d22;--paper:#f3f2ed;--yellow:#f4c44e;--blue:#344f99;--muted:#828b8e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:15px 'DM Sans',Arial,sans-serif}button,input,select,textarea{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button,a{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #4a90e2;outline-offset:4px}button{border:0}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif;font-weight:600;line-height:1.04}h2{font-size:clamp(40px,4.5vw,66px);letter-spacing:-1px;margin-bottom:28px}p{line-height:1.8}em{font-style:normal;color:var(--yellow)}.conceptbar{height:31px;background:#0d151a;color:#c0c7ca;display:flex;justify-content:space-between;align-items:center;padding:0 4%;font:10px monospace;letter-spacing:1px}.conceptbar button{background:none;color:var(--yellow);font:inherit}header{height:89px;padding:16px 4%;display:flex;align-items:center;justify-content:space-between;background:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid #d4d7d4}.brand img{width:229px;height:55px;object-fit:contain}nav{display:flex;gap:29px;font-size:13px}nav a:hover{color:var(--blue)}.navcta{border:1px solid #b9bcb9;padding:15px 20px;font-size:12px;font-weight:700}.navcta span{margin-left:24px}.menutoggle{display:none;background:none;font-size:24px}.hero{min-height:720px;height:calc(100svh - 120px);max-height:1050px;position:relative;background:#12202b;color:white;overflow:hidden}.heroimg,.heroshade,.heroGrid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.heroimg{object-position:50% 38%}.heroshade{background:linear-gradient(90deg,rgba(7,17,25,.96),rgba(9,19,29,.78) 45%,rgba(9,19,29,.32)),linear-gradient(0deg,#111b24,transparent 60%)}.heroGrid{background-image:linear-gradient(#ffffff05 1px,transparent 1px),linear-gradient(90deg,#ffffff05 1px,transparent 1px);background-size:90px 90px;pointer-events:none}.heroText{position:relative;width:53%;padding:64px 0 90px 6%}.eyebrow,.sectionlabel{font:11px monospace;letter-spacing:1.8px;margin-bottom:27px}.dot{display:inline-block;width:6px;height:6px;background:var(--yellow);border-radius:50%;margin-right:7px}.hero h1{font-size:clamp(56px,5.8vw,88px);letter-spacing:-1.8px;margin-bottom:23px;line-height:.98}.heroText p{max-width:410px;color:#bbc4ca;font-size:14px;line-height:1.75}.heroActions{display:flex;gap:28px;align-items:center;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:18px 23px;font-size:13px;font-weight:700;border:0}.yellow{background:var(--yellow);color:#1a242a}.yellow:hover{background:#ffda7d}.textlink{font-size:12px}.textlink span{margin-left:12px}.weldPanel{position:absolute;top:21%;right:5%;width:42%;max-width:650px;border:1px solid #79828c44;background:#11191ddd;box-shadow:0 30px 100px #0005;transform:perspective(1300px) rotateY(-6deg)}.panelLabel{display:flex;justify-content:space-between;padding:19px 22px;font:10px monospace;color:#b7bfc3;letter-spacing:1.3px;border-bottom:1px solid #ffffff12}.weldPanel canvas{display:block;width:100%;aspect-ratio:1.7}.weldControls{padding:16px 20px;border-top:1px solid #ffffff12;display:flex;justify-content:space-between;align-items:center;font:9px monospace;letter-spacing:.6px}.weldControls button{color:#d3dadd;background:none;font-size:10px}.animationNote{position:absolute;right:0;bottom:-39px;font:10px monospace;color:#a5b0b7}.heroBottom{position:absolute;bottom:0;left:6%;right:5%;height:66px;border-top:1px solid #ffffff29;display:flex;justify-content:space-between;align-items:center;font:10px monospace;letter-spacing:1px}.intro{display:grid;grid-template-columns:1fr 3fr;gap:40px;padding:100px 6%;border-bottom:1px solid #ccd0cd}.intro .sectionlabel{padding-top:8px;color:#657178}.intro h2 span,.projects h2 span{color:#808a8b}.introColumns{display:grid;grid-template-columns:1fr 1fr;gap:38px;color:#596367;font-size:14px;max-width:850px}.underlink{display:inline-flex;justify-content:space-between;gap:60px;border-bottom:1px solid #a2aaa9;padding:12px 0;background:none;font-size:13px}.services,.projects{padding:90px 6%}.sectionTop{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;margin-bottom:40px}.sectionTop h2{margin:0}.sectionTop>p{font-size:13px;color:#687377;margin:0 0 5px}.sectionlabel{color:#68757b}.serviceRows{border-top:1px solid #bfc7c7}.serviceRows details{border-bottom:1px solid #bfc7c7;padding:25px 0}.serviceRows summary{display:flex;align-items:center;gap:30px;cursor:pointer;list-style:none}.serviceRows summary::-webkit-details-marker{display:none}.serviceRows summary>span{font:12px monospace;color:#859095}.serviceRows h3{font-size:37px;margin:0}.serviceRows summary b{margin-left:auto;font-size:27px;font-weight:400}.serviceRows details[open] summary b{transform:rotate(90deg)}.serviceContent{margin:22px 0 5px 47px;display:flex;justify-content:space-between}.serviceContent p{max-width:530px;color:#667378;font-size:14px}.beamSketch{font:bold 85px Georgia;color:#4e6481;display:flex;align-items:center;gap:28px;padding-right:7%}.beamSketch span{font:10px monospace;letter-spacing:1px;color:#778486}.projects{background:#e8eae5}.filters{display:flex;align-items:center;gap:8px;border-top:1px solid #c4cbc5;padding-top:25px;margin-bottom:30px;flex-wrap:wrap}.filters button{padding:12px 18px;background:transparent;border:1px solid #bbc5c0;font-size:12px}.filters button.active{background:var(--ink);color:white;border-color:var(--ink)}.search{margin-left:auto;display:flex;align-items:center;border-bottom:1px solid #aeb8b2;gap:10px}.search input{padding:12px 4px;border:0;background:none;outline:none;width:160px;font-size:12px}.projectGrid{display:grid;grid-template-columns:1fr 1fr;gap:40px 24px}.projectCard{padding:0;text-align:left;background:none;position:relative}.projectCard:first-child{grid-column:1/-1}.projectPhoto{overflow:hidden;background:#c9d1ce;position:relative}.projectCard img{width:100%;height:300px;object-fit:cover;display:block;transition:transform .65s}.projectCard:first-child img{height:450px}.projectCard:hover img{transform:scale(1.035)}.projectPhoto .number{position:absolute;left:18px;top:18px;color:white;font:12px monospace;background:#12202abf;padding:7px 10px}.projectPhoto .arrow{position:absolute;right:20px;bottom:20px;background:var(--yellow);width:44px;height:44px;display:grid;place-items:center;font-size:21px}.projectMeta{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:19px}.projectMeta h3{font-size:30px;margin:0 0 7px}.projectMeta p{font:11px monospace;color:#6a7678;margin:0}.projectMeta>span{font:10px monospace;text-transform:uppercase;border:1px solid #bcc5be;padding:8px 12px}.process{background:#142029;color:#e8edee;padding:100px 6%;display:grid;grid-template-columns:1fr 1fr;gap:9%}.process h2{font-size:66px}.process>div>p{font-size:14px;max-width:400px;color:#a5b4bc}.process .sectionlabel{color:#a6b3ba}.crane{max-width:450px;margin-top:25px}.crane svg{display:block;width:100%}.lift{animation:lift 6s ease-in-out infinite alternate;transform-origin:358px 95px}@keyframes lift{to{transform:translateY(-25px)}}.step{display:block;width:100%;text-align:left;background:transparent;border-top:1px solid #ffffff24;padding:25px 0;color:#8e9da4}.step span{font:10px monospace;letter-spacing:1px}.step h3{font-size:32px;margin:12px 0}.step p{display:none;font-size:13px;max-width:410px;margin-bottom:0;color:#b7c2c9}.step.active{color:var(--yellow)}.step.active p{display:block}.contact{padding:100px 6%;background:#d7dfe6}.contact h2{font-size:clamp(48px,6vw,80px)}.contact h2 span{color:#476086}.contactGrid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.contactGrid>div>p{color:#5c6b75}.contactGrid>div>a{font-size:clamp(15px,1.8vw,24px);border-bottom:1px solid #9faeb8;padding-bottom:10px}.contact .small{margin-top:35px;font-size:13px}form label{display:block;font-size:12px}input,select,textarea{display:block;width:100%;margin-top:9px;border:1px solid #b4c0c7;background:#ffffff44;padding:13px;color:var(--ink);border-radius:0}textarea{resize:vertical;min-height:80px}#inquiry{display:grid;grid-template-columns:1fr 1fr;gap:22px}.wide{grid-column:1/-1}#inquiry small{color:#697780;font-size:11px}#messageReview{margin-top:35px;border-top:1px solid #9aabb8;padding-top:25px}#messageText{white-space:pre-wrap}footer{padding:35px 6%;display:flex;gap:30px;justify-content:space-between;align-items:center;font:10px monospace;color:#69747b}footer img{width:180px}dialog{border:0;padding:0;max-height:90svh;width:min(1000px,92vw);background:var(--paper);color:var(--ink);box-shadow:0 20px 80px #0007}dialog::backdrop{background:#08121bd9;backdrop-filter:blur(5px)}dialog .close{position:absolute;right:15px;top:15px;width:35px;height:35px;font-size:25px;background:var(--paper);z-index:2}#detailImage{width:100%;height:440px;object-fit:contain;background:#17252e}.dialogBody{padding:32px}.dialogBody h2{font-size:45px}.dialogBody p{color:#637076}.galleryButtons{display:flex;gap:20px;justify-content:space-between;align-items:center;margin:25px 0;font-size:12px}.galleryButtons button{padding:12px;background:#dce2de}.adminTop{padding:25px 30px;background:#142029;color:white;font-size:24px}.adminTop span{font:11px monospace;letter-spacing:2px;color:#9eafb9}.demoNotice{background:#f6e7bc;padding:14px 30px;font-size:12px;line-height:1.7}.adminLayout{display:grid;grid-template-columns:220px 1fr;min-height:530px}.adminLayout aside{background:#e4e8e3;padding:25px 15px;display:flex;gap:8px;flex-direction:column}.adminLayout aside button{padding:14px;text-align:left;background:none;font-size:12px}.adminLayout aside button.selected{background:#142029;color:white}.adminLayout aside a{padding:20px 14px;font-size:12px}.adminMain{padding:35px}.adminMain h2{font-size:44px}.adminMain p,.adminMain li{font-size:13px;line-height:1.8}.adminMain form label{margin-bottom:18px}.check{display:flex;align-items:center;gap:12px}.check input{width:auto;margin:0}.adminProject{border-bottom:1px solid #ccd3cc;padding:15px 0;display:grid;grid-template-columns:70px 1fr;gap:15px}.adminProject img{width:70px;height:70px;object-fit:cover}.adminProject label{font-size:11px}.adminProject .check{margin-top:9px}.adminProject input[type=text]{margin-top:0;padding:8px}.adminProject .saveProject{margin-top:8px;padding:8px 15px;background:#142029;color:white;font-size:11px}[hidden]{display:none!important}body.motionOff .lift{animation:none}body.paused .lift{animation-play-state:paused}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media(min-width:1700px){.heroText{padding-top:100px}.hero h1{font-size:100px}}@media(max-width:1000px){nav{gap:16px}.brand img{width:190px}.hero h1{font-size:65px}.heroText{padding-top:60px}.heroActions{gap:18px}.weldControls{padding:15px 10px;font-size:8px}.intro{grid-template-columns:1fr}.process{gap:5%}.process h2{font-size:55px}.beamSketch{display:none}}@media(max-width:720px){.conceptbar{font-size:8px;height:29px}.conceptbar>span:nth-child(2){display:none}header{height:74px;padding:12px 5%}.brand img{width:174px;height:44px}.navcta{margin-left:auto;margin-right:15px;padding:12px;font-size:10px}.navcta span{display:none}.menutoggle{display:block}nav{display:none;position:absolute;top:74px;left:0;right:0;background:var(--paper);padding:25px;flex-direction:column;border-bottom:1px solid #ccc}nav.open{display:flex}.hero{height:auto;min-height:1000px;max-height:none;padding-bottom:90px}.heroText{width:100%;padding:48px 6% 26px}.eyebrow{font-size:9px;letter-spacing:1px}.hero h1{font-size:65px}.heroText p{max-width:330px;font-size:13px}.heroActions{margin-top:25px}.button{padding:16px 20px}.weldPanel{position:relative;right:auto;top:auto;width:88%;margin:25px auto 35px;transform:none}.heroBottom{font-size:8px;height:65px}.heroBottom span{max-width:170px;line-height:1.7}.heroimg{object-position:60% 50%}.intro,.services,.projects,.process,.contact{padding:60px 6%}.intro{gap:10px}.introColumns{grid-template-columns:1fr;gap:0}.sectionTop{display:block}.sectionTop>p{margin-top:22px}.serviceRows h3{font-size:30px}.serviceContent{margin-left:0}.projectGrid{grid-template-columns:1fr;gap:32px}.projectCard:first-child img,.projectCard img{height:250px}.projectMeta h3{font-size:26px}.projectMeta>span{font-size:8px;padding:6px}.filters button{padding:10px 11px;font-size:10px}.search{margin:12px 0 0;width:100%}.search input{width:100%}.process{grid-template-columns:1fr;gap:30px}.process h2{font-size:54px}.contactGrid{grid-template-columns:1fr;gap:30px}.contact h2{font-size:53px}footer{flex-wrap:wrap;gap:22px}footer img{width:160px}footer>span:nth-child(2){display:none}#detailImage{height:250px}.dialogBody{padding:22px}.dialogBody h2{font-size:35px}.galleryButtons{gap:10px;font-size:10px}.galleryButtons button{font-size:10px}.adminLayout{grid-template-columns:1fr}.adminLayout aside{flex-direction:row;flex-wrap:wrap;padding:12px}.adminLayout aside button{padding:10px}.adminLayout aside a{padding:10px}.adminMain{padding:24px}.adminTop{font-size:21px;padding:24px}.demoNotice{padding:12px 20px;font-size:11px}}
@media(max-width:720px){.hero h1{font-size:52px}.hero{min-height:950px}}

/* The official mark appears only during requested navigation. */
#pageTransition{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;background:#111b23f5;backdrop-filter:blur(9px)}
.transitionMark{width:min(520px,88vw);text-align:center;color:#b4c3ce}
.transitionMark canvas{display:block;width:100%;height:auto}
.transitionMark p{font:10px monospace;letter-spacing:4px;margin:12px 0 25px}
#skipTransition{background:none;border-bottom:1px solid #70818d;color:#acbbc7;padding:8px 0;font-size:11px}
body.transitioning{overflow:hidden}
.heroText{width:65%}.heroimg{object-position:70% 42%}
@media(max-width:720px){.heroText{width:100%}.hero{min-height:730px;padding-bottom:80px}.heroText{padding-top:48px}}

nav a[aria-current=page]{color:#344f99;border-bottom:1px solid #344f99}
.routeHeading{padding:75px 6% 60px;background:#dde3e6}.routeHeading h1{font-size:clamp(52px,7vw,100px);margin:18px 0 24px;max-width:1100px}.routeHeading p{max-width:650px;color:#5b6972}.filterButtons{display:flex;flex-wrap:wrap;gap:8px}.profileExtra{display:grid;grid-template-columns:1fr 1fr;gap:6%;padding:80px 6%}.profileExtra img{width:100%;height:460px;object-fit:cover}.profileExtra li{line-height:1.8;margin:12px 0}.projectCover{padding:40px 6% 0}.projectCover img{width:100%;max-height:650px;object-fit:cover}.projectInfo{display:grid;grid-template-columns:1fr 1fr;gap:7%;padding:70px 6%}.projectInfo dt{font:11px monospace;color:#77858c;margin:0 0 10px}.projectInfo dd{margin:0;line-height:1.8}.projectInfo dl>div{padding:20px 0;border-bottom:1px solid #c3cdce}.projectGallery{padding:40px 6% 80px}.galleryGrid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.galleryGrid img{width:100%;height:330px;object-fit:cover;display:block}.photoPending{background:#dbe0df;color:#60717a;min-height:260px;display:grid;place-items:center}.projectHeading .sectionlabel{margin-top:35px}#galleryImage{display:block;width:100%;height:min(65svh,700px);object-fit:contain;background:#142029}.skipLink{position:fixed;left:20px;top:-100px;z-index:2000;padding:15px;background:#f4c44e;color:#142029}.skipLink:focus{top:15px}
@media(max-width:720px){.routeHeading{padding:45px 6% 35px}.routeHeading h1{font-size:54px}.profileExtra,.projectInfo{grid-template-columns:1fr;padding:45px 6%;gap:30px}.profileExtra img{height:300px}.galleryGrid{grid-template-columns:1fr}.galleryGrid img{height:280px}.projectGallery{padding-top:20px}.projectCover{padding-top:25px}.hero{min-height:730px}}
