*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"DM Sans",sans-serif;color:#202831;background:#fff;line-height:1.6}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.08;margin:0}h1{font-size:clamp(3rem,6.5vw,6.7rem);letter-spacing:-.065em}h2{font-size:clamp(2.4rem,4.2vw,4.6rem);letter-spacing:-.05em}h3{font-size:1.25rem}p{color:#65707b}.container{width:min(1180px,calc(100% - 40px));margin:auto}.progress{position:fixed;z-index:1000;top:0;left:0;height:3px;background:#e21d25;width:0}.nav-wrap{position:fixed;top:0;left:0;right:0;z-index:50;background:rgba(255,255,255,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(20,30,40,.08)}.nav{height:82px;display:flex;align-items:center;justify-content:space-between}.brand img{width:205px;height:65px;object-fit:contain;mix-blend-mode:multiply}.links{display:flex;gap:26px;align-items:center}.links a{color:#27303a;text-decoration:none;font-weight:600;font-size:.92rem}.links a:hover{color:#d91e26}.nav-cta{padding:12px 18px;background:#202831;color:#fff!important;border-radius:4px}.menu{display:none;background:none;border:0}.menu span{display:block;width:25px;height:2px;background:#202831;margin:5px}.hero{min-height:790px;position:relative;overflow:hidden;padding-top:82px;background:#f5f6f7}.hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,#f5f6f7 0%,#f5f6f7 48%,rgba(245,246,247,.15) 100%),url("assets/bridge.jpg") center/cover;opacity:.95}.hero-inner{position:relative;min-height:708px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:60px}.eyebrow{font-size:.75rem;font-weight:800;letter-spacing:.18em;color:#e21d25}.hero-copy p{font-size:1.15rem;max-width:640px;margin:26px 0}.hero h1 em,h2 em{color:#e21d25;font-style:normal}.hero-actions{display:flex;gap:12px;margin:30px 0}.btn{display:inline-flex;padding:14px 20px;text-decoration:none;font-weight:700;border-radius:4px}.btn.primary{background:#e21d25;color:white}.btn.ghost{border:1px solid #bbc1c7;color:#202831}.hero-facts{display:flex;gap:42px;margin-top:45px}.hero-facts strong{display:block;font:800 1.4rem Manrope}.hero-facts small{color:#78828b}.hero-card{background:#fff;padding:12px;box-shadow:0 25px 70px rgba(0,0,0,.18);transform:rotate(2deg)}.hero-card-image{height:530px;overflow:hidden}.hero-card img{width:100%;height:100%;object-fit:cover}.hero-card-foot{display:flex;justify-content:space-between;padding:14px 5px 4px;font-size:.8rem;font-weight:700}.ticker{overflow:hidden;background:#202831;color:#fff}.ticker-track{white-space:nowrap;display:flex;gap:24px;padding:13px 0;justify-content:center;font-size:.72rem;font-weight:800;letter-spacing:.14em}.ticker i{color:#e21d25}.section{padding:120px 0}.two-col{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px}.red-line{height:4px;width:70px;background:#e21d25;margin-top:28px}.lead{font-size:1.35rem;color:#313b44}.values{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#dfe3e6;margin-top:40px;border:1px solid #dfe3e6}.values div{background:#fff;padding:20px}.values b{display:block}.values span{font-size:.82rem;color:#7a838c}.vision-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:80px}.vision{padding:42px;background:#f0f2f3}.vision.dark{background:#202831;color:#fff}.vision.dark p{color:#b8c0c6}.vision span{color:#e21d25;font-weight:800}.vision h3{margin:12px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:50px}.section-heading p{max-width:520px;margin:0}.services{background:#f5f6f7}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service{background:#fff;padding:22px;position:relative;overflow:hidden;border:1px solid #e4e7e9;min-height:380px;transition:.35s}.service:hover{transform:translateY(-8px);box-shadow:0 20px 45px rgba(32,40,49,.12)}.service .num{color:#e21d25;font-weight:800;font-size:.8rem}.service h3{margin:35px 0 8px}.service p{font-size:.88rem}.service img{position:absolute;left:0;right:0;bottom:0;width:100%;height:125px;object-fit:cover;filter:saturate(.85)}.capabilities{display:flex;flex-wrap:wrap;gap:12px;margin-top:35px;align-items:center}.capabilities span{font-size:.72rem;color:#e21d25;font-weight:800;margin-right:15px}.capabilities b{font-size:.8rem;background:#fff;border:1px solid #dfe3e6;padding:9px 12px}.projects{background:#fff}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.project{padding:25px;border:1px solid #e0e4e7;min-height:290px;position:relative;transition:.3s}.project:hover{border-color:#e21d25;transform:translateY(-5px)}.project>span{font-size:.7rem;color:#e21d25;font-weight:900}.project h3{margin:24px 0 8px}.project p{font-size:.87rem}.project>div{margin-top:25px;display:flex;justify-content:space-between;align-items:end}.project div b{font:800 1.35rem Manrope}.project small{color:#89919a}.project footer{position:absolute;left:25px;right:25px;bottom:22px;font-size:.72rem;font-weight:700;color:#56616b}.why{background:#202831;color:#fff;display:grid}.why .container{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.why-photo{height:720px;overflow:hidden}.why-photo img{width:100%;height:100%;object-fit:cover}.why-copy .eyebrow{color:#e21d25}.why-copy h2{margin:14px 0 35px}.reason{display:grid;grid-template-columns:40px 1fr;gap:18px;padding:18px 0;border-top:1px solid rgba(255,255,255,.13)}.reason>b{color:#e21d25}.reason h3{font-size:1rem}.reason p{font-size:.84rem;margin:5px 0;color:#aeb8c0}.gallery{background:#f5f6f7}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.gallery-item{border:0;padding:0;background:#fff;cursor:pointer;position:relative;overflow:hidden;min-height:330px}.gallery-item.large{grid-row:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;display:block;transition:.5s}.gallery-item:hover img{transform:scale(1.04)}.gallery-item span{position:absolute;bottom:14px;left:14px;background:#fff;padding:8px 12px;font-weight:800;font-size:.75rem}.cta{background:#e21d25;color:#fff}.cta-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.cta .eyebrow{color:#fff}.cta h2{margin:12px 0}.cta p{color:#fff;max-width:580px}.contact-box{background:#202831;padding:35px;display:grid;gap:25px}.contact-box small{display:block;color:#e21d25;font-size:.65rem;font-weight:900;letter-spacing:.14em}.contact-box a,.contact-box p{color:#fff;text-decoration:none;margin:3px 0;display:block}.footer{background:#151b20;color:#adb6bd;padding:28px 0}.footer .container{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer img{width:170px;height:55px;object-fit:contain;filter:grayscale(1) brightness(3)}.footer p{font-size:.75rem;margin:0}.footer a{color:#fff;text-decoration:none;font-size:.8rem}.modal{position:fixed;inset:0;background:rgba(10,14,18,.92);z-index:200;display:none;align-items:center;justify-content:center;padding:30px}.modal.open{display:flex}.modal img{max-width:92vw;max-height:90vh;object-fit:contain}.modal-close{position:absolute;right:25px;top:15px;border:0;background:none;color:#fff;font-size:42px;cursor:pointer}.reveal{opacity:0;transform:translateY(25px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}.delay{transition-delay:.2s}@media(max-width:900px){.links{display:none;position:absolute;top:82px;left:0;right:0;background:#fff;padding:20px;flex-direction:column;align-items:stretch}.links.open{display:flex}.menu{display:block}.hero-inner,.two-col,.why .container,.cta-inner{grid-template-columns:1fr}.hero{min-height:auto}.hero-inner{padding:70px 0 100px}.hero-card{max-width:600px;margin:auto}.service-grid{grid-template-columns:repeat(2,1fr)}.project-grid{grid-template-columns:1fr 1fr}.section-heading{align-items:start;flex-direction:column}.why-photo{height:480px}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-item.large{grid-row:span 1}.footer .container{flex-direction:column;align-items:flex-start}}@media(max-width:600px){.container{width:min(100% - 28px,1180px)}.nav{height:70px}.brand img{width:170px}.hero{padding-top:70px}.hero h1{font-size:3.3rem}.hero-facts{gap:18px;flex-wrap:wrap}.hero-card-image{height:380px}.section{padding:80px 0}.two-col{gap:45px}.vision-grid,.service-grid,.project-grid,.gallery-grid{grid-template-columns:1fr}.service{min-height:350px}.why .container{gap:45px}.why-photo{height:360px}.gallery-item{min-height:420px}.footer img{width:150px}}