:root{--ink:#111a1f;--ink-2:#182228;--paper:#f5f4f1;--white:#fff;--muted:#657078;--line:#111a1f24;--orange:#f36a1f;--orange-2:#ff7a25;--font-display:"Barlow Condensed", Arial Narrow, sans-serif;--font-body:"Manrope", Arial, sans-serif;--shadow:0 24px 70px #0a141a29}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink)}body{color:var(--ink);background:var(--paper);font-family:var(--font-body);text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.6}body.menu-open{overflow:hidden}img{width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{color:inherit}.shell{width:min(1180px,100% - 48px);margin-inline:auto}.section{padding:clamp(76px,9vw,124px) 0}.section-dark{color:var(--white);background:var(--ink)}.skip-link{z-index:999;color:var(--white);background:var(--orange);padding:10px 16px;position:fixed;top:-60px;left:16px}.skip-link:focus{top:10px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--font-display);text-wrap:balance;line-height:.98}h1{letter-spacing:-.035em;text-transform:uppercase;margin-bottom:22px;font-size:clamp(4.1rem,8.5vw,8rem);font-weight:700}h2{letter-spacing:-.025em;margin-bottom:20px;font-size:clamp(2.6rem,5vw,4.75rem)}h3{font-size:clamp(1.5rem,2.1vw,2rem)}p{color:var(--muted)}.section-dark p,.site-footer p,.cta-band p{color:#ffffffad}.eyebrow{color:var(--ink);letter-spacing:.22em;text-transform:uppercase;align-items:center;gap:12px;margin-bottom:16px;font-size:.72rem;font-weight:700;display:flex}.eyebrow:before{content:"";background:var(--orange);width:24px;height:2px}.eyebrow.light{color:#ffffffd1}.button{border:1px solid var(--orange);min-height:52px;color:var(--white);background:var(--orange);letter-spacing:.065em;text-transform:uppercase;justify-content:center;align-items:center;gap:24px;padding:14px 24px;font-size:.77rem;font-weight:700;transition:background .25s,color .25s,transform .25s,box-shadow .25s;display:inline-flex}.button:hover{background:var(--orange-2);transform:translateY(-2px);box-shadow:0 10px 30px #f36a1f40}.button-small{min-height:44px;padding:11px 18px}.button-ghost{background:0 0;border-color:#ffffffb3}.button-ghost:hover{color:var(--ink);background:var(--white);box-shadow:none}.button:disabled{cursor:not-allowed;opacity:.48;transform:none}.text-link{letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid;align-items:center;gap:20px;padding-bottom:7px;font-size:.8rem;font-weight:700;display:inline-flex}.text-link span,.card-arrow{color:var(--orange)}.site-header{z-index:50;color:var(--white);transition:background .3s,box-shadow .3s;position:fixed;inset:0 0 auto}.site-header:after{content:"";background:#ffffff26;height:1px;position:absolute;inset:auto 0 0}.site-header.is-scrolled{color:var(--ink);backdrop-filter:blur(14px);background:#f7f6f3f0;box-shadow:0 8px 30px #0e181e14}.header-inner{justify-content:space-between;align-items:center;gap:28px;min-height:86px;display:flex}.brand{align-items:center;gap:13px;display:flex}.brand img{object-fit:contain;filter:brightness(0)invert();width:112px;height:43px;transition:filter .3s}.is-scrolled .brand img{filter:none}.brand span{font-family:var(--font-display);letter-spacing:.045em;text-transform:uppercase;opacity:.78;border-left:1px solid;padding-left:13px;font-size:.62rem;line-height:1.12}.primary-nav{align-items:center;gap:clamp(16px,2.2vw,30px);display:flex}.primary-nav>a:not(.button){font-size:.76rem;font-weight:600;position:relative}.primary-nav>a:not(.button):after{content:"";background:var(--orange);transform-origin:0;height:2px;transition:transform .25s;position:absolute;inset:auto 0 -9px;transform:scaleX(0)}.primary-nav>a.active:after,.primary-nav>a:hover:after{transform:scaleX(1)}.primary-nav .lang-link{border-left:1px solid;padding-left:16px}.menu-button{background:0 0;border:0;width:44px;height:44px;display:none}.menu-button span{background:currentColor;width:26px;height:2px;margin:7px auto;display:block}.home-hero,.page-hero{min-height:760px;color:var(--white);background:var(--ink) var(--hero-image) center/cover no-repeat;display:grid;position:relative;overflow:hidden}.page-hero{background-position:50% 48%;min-height:610px}.hero-scrim{background:linear-gradient(90deg,#0a1115f0 0%,#0a1115ad 42%,#0a11151f 78%),linear-gradient(#0000 55%,#0a111573);position:absolute;inset:0}.home-hero-inner,.page-hero-inner{z-index:2;align-self:center;padding-top:100px;position:relative}.home-hero-inner{padding-right:30%}.page-hero-inner{padding-right:44%}.home-hero h1 em,.page-hero h1 em{color:var(--orange);font-style:normal}.hero-copy{color:#fffc;max-width:620px;margin-bottom:32px;font-size:clamp(1rem,1.4vw,1.2rem)}.hero-actions{gap:14px;display:flex}.hero-side-note{z-index:2;border-left:2px solid var(--orange);font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;flex-direction:column;padding-left:18px;font-size:.78rem;display:flex;position:absolute;bottom:76px;right:max(24px,50% - 590px)}.scroll-cue{z-index:2;border:1px solid #fff6;border-radius:20px;place-items:start center;width:26px;height:42px;display:grid;position:absolute;bottom:30px;left:50%}.scroll-cue span{background:var(--orange);border-radius:2px;width:3px;height:8px;margin-top:8px;animation:1.8s infinite scroll}.hero-rail{z-index:2;flex-direction:column;gap:8px;display:flex;position:absolute;bottom:45px;right:3vw}.hero-rail span{background:#ffffff73;width:52px;height:1px}.hero-rail span:nth-child(2){background:var(--orange);width:74px}@keyframes scroll{0%,to{opacity:.4;transform:translateY(0)}50%{opacity:1;transform:translateY(14px)}}.hero-rise{animation:.8s cubic-bezier(.2,.75,.25,1) both heroRise}.hero-rise.delay-1{animation-delay:.12s}.hero-rise.delay-2{animation-delay:.24s}.hero-rise.delay-3{animation-delay:.36s}@keyframes heroRise{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}.split-grid{grid-template-columns:.9fr 1.3fr;align-items:stretch;min-height:520px;display:grid}.split-copy{align-self:center;padding-right:clamp(48px,7vw,100px)}.split-copy h2{font-size:clamp(2.7rem,4vw,4rem)}.split-copy p:not(.eyebrow){max-width:510px}.angled-image{clip-path:polygon(10% 0,100% 0,100% 100%,0 100%);min-height:460px;margin:0;position:relative;overflow:hidden}.angled-image:after{content:"";background:var(--orange);opacity:.82;clip-path:polygon(80% 0,100% 0,100% 100%,0 100%);width:12%;position:absolute;inset:0 0 0 auto}.angled-image img{object-fit:cover;width:100%;height:100%}.section-heading{justify-content:space-between;align-items:end;gap:60px;margin-bottom:46px;display:flex}.section-heading>div{max-width:720px}.section-heading>p{max-width:440px}.section-heading h2{margin-bottom:0}.section-heading.dark h2{color:var(--ink)}.service-grid{border-top:1px solid #ffffff29;border-left:1px solid #ffffff29;grid-template-columns:repeat(3,1fr);display:grid}.service-card{border-bottom:1px solid #ffffff29;border-right:1px solid #ffffff29;min-height:280px;padding:34px 32px;transition:background .3s,transform .3s;position:relative}.service-card:hover{z-index:2;background:#202c32;transform:translateY(-6px)}.card-number,.catalog-grid article>span{color:var(--orange);font-family:var(--font-display);margin-bottom:42px;font-size:1rem;font-weight:700;display:block}.service-card p{font-size:.86rem}.card-arrow{font-size:1.4rem;position:absolute;bottom:26px;left:32px}.stats-strip{background:var(--white);padding:36px 0}.stats-grid{grid-template-columns:repeat(4,1fr);display:grid}.stats-grid article{border-right:1px solid var(--line);align-items:center;gap:20px;min-height:76px;padding:0 28px;display:flex}.stats-grid article:first-child{padding-left:0}.stats-grid article:last-child{border:0}.stat-icon{color:var(--ink);font-family:var(--font-display);font-size:2.4rem}.stats-grid strong,.stats-grid span{display:block}.stats-grid strong{color:var(--orange);font-family:var(--font-display);font-size:1.7rem;line-height:1}.stats-grid div span{max-width:150px;margin-top:5px;font-size:.68rem;line-height:1.25}.project-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.project-card{background:var(--ink);min-height:370px;position:relative;overflow:hidden}.project-card img{object-fit:cover;width:100%;height:100%;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.project-card:hover img{transform:scale(1.055)}.project-overlay{min-height:105px;color:var(--white);background:linear-gradient(#0a1217d1,#0a1217fa);grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:18px 22px;display:grid;position:absolute;inset:auto 0 0}.project-overlay small{color:var(--orange)}.project-overlay strong{font-family:var(--font-display);font-size:1.35rem}.project-overlay i{color:var(--orange);font-style:normal}.provisional-note{text-align:right;margin:20px 0 0;font-size:.72rem}.intro-section{background:var(--white)}.intro-grid{grid-template-columns:.9fr 1.1fr;align-items:end;gap:clamp(40px,8vw,120px);display:grid}.intro-grid h2{margin:0}.intro-grid>p{border-top:1px solid var(--line);padding:24px 0 8px}.experience-panel{padding:0}.experience-grid{grid-template-columns:1.2fr .8fr;align-items:center;display:grid}.experience-grid figure{height:560px;margin:0 0 0 calc(590px - 50vw);overflow:hidden}.experience-grid figure img{object-fit:cover;height:100%}.experience-grid>div{padding:70px 0 70px 70px}.values{background:var(--white)}.value-grid{border:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.value-grid article{border-right:1px solid var(--line);min-height:210px;padding:34px}.value-grid article:last-child{border:0}.value-grid span{color:var(--orange);font-family:var(--font-display);font-weight:700}.value-grid h3{margin-top:62px}.catalog-grid{background:#ffffff24;grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.catalog-grid article{background:var(--ink-2);min-height:290px;padding:36px;transition:background .25s;position:relative}.catalog-grid article:hover{background:#243139}.catalog-grid article>span{margin-bottom:48px}.catalog-grid article p{font-size:.86rem}.catalog-grid article i{color:var(--orange);font-style:normal;position:absolute;bottom:26px;right:30px}.filter-row{gap:8px;margin-bottom:26px;display:flex;overflow-x:auto}.filter-row button{border:1px solid var(--line);background:0 0;flex:none;min-width:130px;padding:12px 20px;font-size:.76rem}.filter-row button.active{color:var(--white);border-color:var(--orange);background:var(--orange)}.form-grid,.quote-grid{grid-template-columns:.72fr 1.28fr;align-items:start;gap:clamp(50px,8vw,110px);display:grid}.contact-list{margin:38px 0 0;padding:0;list-style:none}.contact-list li{border-bottom:1px solid var(--line);gap:20px;padding:22px 0;display:flex}.contact-list li>span{color:var(--orange);font-size:1.8rem}.contact-list strong,.contact-list small{display:block}.contact-list small{color:var(--muted)}.form-card,.quote-card{background:var(--white);box-shadow:var(--shadow);padding:clamp(28px,4vw,48px)}.form-card-head{justify-content:space-between;align-items:start;gap:20px;margin-bottom:28px;display:flex}.form-card-head h2{margin:0;font-size:2.8rem}.form-card-head>span{color:var(--orange);letter-spacing:.06em;text-transform:uppercase;border:1px solid #f36a1f59;padding:6px 10px;font-size:.65rem;font-weight:700}.field-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.field-grid label{color:var(--ink);letter-spacing:.03em;font-size:.7rem;font-weight:700}.field-grid .full{grid-column:1/-1}.field-grid input,.field-grid textarea{border:1px solid var(--line);resize:vertical;background:#fbfbfa;border-radius:0;width:100%;margin-top:7px;padding:14px}.field-grid input:disabled,.field-grid textarea:disabled{color:#737b80;opacity:1}.full-button{width:100%;margin-top:20px}.form-status{margin:12px 0 0;font-size:.72rem}.quote-section{background:#eceeec}.quote-steps{position:sticky;top:130px}.quote-steps>div{border-bottom:1px solid var(--line);align-items:center;gap:16px;padding:17px 0;display:flex}.quote-steps span{width:42px;height:42px;color:var(--orange);border:1px solid var(--orange);font-family:var(--font-display);border-radius:50%;flex:none;place-items:center;display:grid}.quote-steps p{color:var(--ink);margin:0;font-weight:700}.upload-field{text-align:center;border:1px dashed #f36a1f99;place-items:center;min-height:130px;display:grid;color:var(--muted)!important}.upload-field span{color:var(--orange);font-size:2rem}.cta-band{color:var(--white);background:var(--ink);position:relative;overflow:hidden}.cta-band-bg{background:linear-gradient(90deg,#0b1217fa,#0b1217ad),url(/images/hero-railway-sunset.png) 50% 67%/cover;position:absolute;inset:0}.cta-band-inner{justify-content:space-between;align-items:center;gap:50px;min-height:280px;display:flex;position:relative}.cta-band h2{max-width:760px;margin-bottom:0}.cta-band p:not(.eyebrow){margin:12px 0 0}.site-footer{color:var(--white);background:#0b1216}.footer-main{grid-template-columns:1fr 1.5fr auto;align-items:center;gap:50px;padding-block:58px;display:grid}.footer-brand{align-items:center;gap:18px;display:flex}.footer-logo{background:var(--white);width:106px;padding:8px}.footer-brand p{max-width:190px;margin:0;font-size:.7rem}.footer-main nav{justify-content:center;gap:26px;display:flex}.footer-main nav a{opacity:.72;font-size:.7rem}.footer-main nav a:hover{color:var(--orange);opacity:1}.socials{gap:9px;display:flex}.socials a{border:1px solid #ffffff40;place-items:center;width:34px;height:34px;font-size:.75rem;font-weight:700;display:grid}.footer-bottom{color:#ffffff73;border-top:1px solid #ffffff1a;justify-content:space-between;align-items:center;gap:30px;padding-block:22px;font-size:.62rem;display:flex}.footer-bottom div{gap:28px;display:flex}.js [data-reveal]{opacity:0;transition:opacity .7s cubic-bezier(.2,.75,.25,1),transform .7s cubic-bezier(.2,.75,.25,1);transition-delay:var(--delay,0s);transform:translateY(30px)}.js [data-reveal].is-visible{opacity:1;transform:none}@media (width<=1050px){.brand span{display:none}.primary-nav{gap:15px}.primary-nav>a:not(.button){font-size:.68rem}.home-hero-inner,.page-hero-inner{padding-right:32%}.service-grid,.catalog-grid{grid-template-columns:repeat(2,1fr)}.project-card{min-height:330px}.stats-grid{grid-template-columns:repeat(2,1fr);row-gap:28px}.stats-grid article:nth-child(2){border-right:0}.stats-grid article:nth-child(3){padding-left:0}.footer-main{grid-template-columns:1fr auto}.footer-main nav{grid-area:2/1/auto/-1;justify-content:start}}@media (width<=780px){.shell{width:min(100% - 32px,1180px)}.section{padding:72px 0}h1{font-size:clamp(3.7rem,18vw,6rem)}h2{font-size:clamp(2.5rem,12vw,4rem)}.site-header{color:var(--ink);background:#f7f6f3f5}.header-inner{min-height:72px}.brand img{filter:none;width:94px}.menu-button{display:block}.primary-nav{color:var(--white);background:var(--ink);opacity:0;pointer-events:none;flex-direction:column;align-items:stretch;gap:0;padding:32px 24px;transition:opacity .25s,transform .25s;display:flex;position:fixed;inset:72px 0 0;transform:translateY(-10px)}.primary-nav.is-open{opacity:1;pointer-events:auto;transform:none}.primary-nav>a:not(.button){font-family:var(--font-display);border-bottom:1px solid #ffffff1f;padding:15px 0;font-size:1.7rem}.primary-nav .lang-link{border-left:0;padding-left:0}.primary-nav .button{margin-top:22px}.home-hero,.page-hero{background-position:66%;min-height:720px}.page-hero{min-height:620px}.hero-scrim{background:linear-gradient(90deg,#0a1115eb,#0a11157a),linear-gradient(#0000,#0a111599)}.home-hero-inner,.page-hero-inner{padding:110px 0 70px}.hero-side-note,.hero-rail{display:none}.hero-actions{flex-direction:column;align-items:stretch;max-width:320px}.split-grid,.intro-grid,.experience-grid,.form-grid,.quote-grid{grid-template-columns:1fr}.split-copy{padding:0 0 45px}.angled-image{clip-path:none;min-height:350px}.section-heading{flex-direction:column;align-items:start;gap:20px}.service-grid,.catalog-grid,.project-grid,.value-grid{grid-template-columns:1fr}.project-card{min-height:420px}.value-grid article{border-right:0;border-bottom:1px solid var(--line)}.experience-grid figure{height:400px;margin:0 -16px}.experience-grid>div{padding:60px 0}.form-grid,.quote-grid{gap:50px}.quote-steps{position:static}.field-grid{grid-template-columns:1fr}.field-grid .full{grid-column:1}.cta-band-inner{flex-direction:column;justify-content:center;align-items:start;padding-block:70px}.footer-main{grid-template-columns:1fr}.footer-main nav{flex-wrap:wrap;grid-area:auto/1}.footer-bottom{flex-direction:column;align-items:start}}@media (width<=520px){.stats-grid{grid-template-columns:1fr}.stats-grid article,.stats-grid article:nth-child(3){border-right:0;border-bottom:1px solid var(--line);padding:15px 0}.stats-grid article:last-child{border-bottom:0}.service-grid,.catalog-grid{display:block}.service-card,.catalog-grid article{border-left:1px solid #ffffff29;min-height:260px}.project-card{min-height:360px}.form-card,.quote-card{margin-inline:-8px;padding:24px 18px}.form-card-head{flex-direction:column-reverse}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
