@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700;800;900&display=swap');
:root{--blue:#00295f;--blue2:#001d46;--navy:#001b41;--orange:#ff6500;--text:#071b3b;--muted:#667085;--soft:#f5f8fc;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,Arial,sans-serif;margin:0;color:var(--text);background:#fff;overflow-x:hidden}a{text-decoration:none}img{max-width:100%}
.topbar{background:linear-gradient(90deg,#001b41,#00295f);color:#fff;font-size:13px;padding:8px 0}.top-left,.top-social{display:flex;gap:24px;align-items:center}.topbar i{color:#fff}.navbar{min-height:82px}.navbar-brand img{height:64px}.nav-link{text-transform:uppercase;font-size:13px;font-weight:900;color:#061b3f!important;margin:0 12px;position:relative}.nav-link.active:after,.nav-link:hover:after{content:"";position:absolute;left:8px;bottom:0;width:32px;height:3px;background:var(--orange)}
.btn-orange{background:var(--orange);color:#fff;border:0;border-radius:0;font-weight:900;text-transform:uppercase;padding:14px 24px;font-size:13px}.btn-orange:hover{background:#e85d00;color:#fff}.btn-blue{background:var(--blue);color:#fff;border-radius:0;text-transform:uppercase;font-weight:900;padding:13px 32px;font-size:13px}.btn-blue:hover{background:var(--blue2);color:#fff}.btn-outline-light{border:1px solid #fff;color:#fff;border-radius:0;text-transform:uppercase;font-weight:900;padding:13px 32px;font-size:13px}.btn-outline-light:hover{background:#fff;color:var(--blue)}
.hero-grid{height:520px;display:grid;grid-template-columns:1.05fr .85fr 1.1fr;position:relative;background:var(--navy);overflow:hidden}.hero-copy{position:absolute;z-index:4;left:5.5vw;top:50%;transform:translateY(-50%);width:min(480px,90vw);color:#fff}.hero-copy h1{font-size:clamp(44px,6vw,78px);line-height:.95;font-weight:900;text-transform:uppercase;letter-spacing:-2px;margin:12px 0}.hero-copy h1 span{color:var(--orange)}.hero-copy p{font-size:18px;line-height:1.55;max-width:430px}.hero-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:25px}.eyebrow{text-transform:uppercase;color:var(--orange);font-weight:900;letter-spacing:1px;font-size:14px}.hero-img{background-size:cover;background-position:center;height:100%;position:relative}.hero-img:after{content:"";position:absolute;inset:0;background:rgba(0,21,49,.18)}.hero-img-1{background-image:linear-gradient(90deg,rgba(0,21,49,.75),rgba(0,21,49,.25)),url('../img/hero/hero-left.jpg')}.hero-img-2{background-image:url('../img/hero/hero-center.jpg')}.hero-img-3{background-image:url('../img/hero/hero-right.jpg')}
.stats-band{background:linear-gradient(90deg,#00224f,#00316e);color:#fff}.stat{min-height:112px;padding:24px 28px;display:flex;align-items:center;gap:18px;border-right:1px solid rgba(255,255,255,.25)}.stat i{font-size:42px}.stat strong{display:block;color:var(--orange);font-size:31px;font-weight:900;line-height:1}.stat span{font-size:13px;color:#fff;line-height:1.4}
.section{padding:70px 0}.bg-soft{background:var(--soft)}.section-title{text-align:center;margin-bottom:36px}.section-title p{text-transform:uppercase;color:var(--orange);font-weight:900;margin:0 0 6px;font-size:13px}.section-title h2{font-weight:900;color:var(--blue);font-size:clamp(28px,3.2vw,38px)}.section-title div{width:46px;height:3px;background:var(--orange);margin:13px auto 0}
.service-col{flex:1 0 14.285%}.service-card{height:100%;background:#fff;border:1px solid #e3e8f0;text-align:center;box-shadow:0 8px 26px rgba(0,25,70,.06);transition:.25s}.service-card:hover{transform:translateY(-6px);box-shadow:0 14px 36px rgba(0,25,70,.12)}.service-card img{width:100%;height:155px;object-fit:cover}.service-card span{width:70px;height:70px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;margin:-35px auto 18px;position:relative;border:4px solid #fff}.service-card i{font-size:30px}.service-card h3{font-size:16px;font-weight:900;color:var(--blue);padding:0 12px}.service-card p{font-size:13px;color:#3f4c62;line-height:1.65;padding:0 17px 28px;margin:0}
.about-strip{display:grid;grid-template-columns:1fr 1.35fr;min-height:360px}.about-text{background:linear-gradient(120deg,#001b41 0%,#002d67 70%,transparent 70%);color:#fff;padding:60px 8vw 55px 6vw;display:flex;flex-direction:column;justify-content:center}.about-text h2{font-size:36px;line-height:1.1;font-weight:900}.about-text p:not(.eyebrow){max-width:440px;line-height:1.7}.about-photo{background:url('../img/corporate/about-building.jpg') center/cover no-repeat}
.project-slider{display:flex;align-items:center;gap:20px}.project-track{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;flex:1}.project-track img{height:170px;width:100%;object-fit:cover}.slide-btn{width:38px;height:38px;border:1px solid #d8e0ec;background:#fff;border-radius:50%;color:var(--blue)}
.cta-band{background:linear-gradient(90deg,#00224f,#00316e);color:#fff;padding:28px 0}.cta-band h3{margin:0;font-weight:900}.cta-band p{margin:4px 0 0;color:#dfeaff}
.gallery-filters{display:flex;justify-content:center;gap:10px;margin-bottom:25px;flex-wrap:wrap}.filter-btn{border:0;background:#fff;color:var(--blue);font-weight:900;padding:11px 20px;border-radius:999px;box-shadow:0 8px 20px rgba(0,25,70,.08)}.filter-btn.active{background:var(--orange);color:#fff}.gallery-item{background:#fff;border:1px solid #e5eaf2;box-shadow:0 8px 24px rgba(0,25,70,.06);padding-bottom:15px;cursor:pointer}.gallery-item.hide{display:none}.gallery-item img{height:245px;width:100%;object-fit:cover}.gallery-item h4{font-size:16px;font-weight:900;color:var(--blue);padding:16px 16px 0;margin:0}
.contact h2{font-weight:900;color:var(--blue);font-size:40px}.info{font-weight:800;color:var(--blue);margin:16px 0}.info i{color:var(--orange);margin-right:10px}.form-box{background:#fff;border:1px solid #e5eaf2;box-shadow:0 14px 36px rgba(0,25,70,.09);padding:32px}.form-control,.form-select{min-height:52px;border-radius:0;border:1px solid #dbe3ef}.form-control:focus,.form-select:focus{border-color:var(--orange);box-shadow:0 0 0 .16rem rgba(255,101,0,.16)}
.footer{background:#fff;border-top:1px solid #e5eaf2;padding:38px 0 18px}.footer-logo{width:170px;margin-bottom:16px}.footer h5{font-size:14px;text-transform:uppercase;color:var(--blue);font-weight:900}.footer a,.footer p{display:block;color:#34445c;margin:6px 0;font-size:13px}.footer .social{display:flex;gap:14px;color:var(--blue);font-size:20px}.copy{border-top:1px solid #e5eaf2;margin-top:25px;padding-top:15px;font-size:12px;color:#34445c}.copy span{color:var(--blue)}
.reveal{opacity:0;transform:translateY(24px);transition:.7s}.reveal.visible{opacity:1;transform:none}.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.88);z-index:99999;display:none;align-items:center;justify-content:center;padding:30px}.lightbox.show{display:flex}.lightbox img{max-width:min(1100px,94vw);max-height:88vh;border-radius:8px}#closeLightbox{position:absolute;top:20px;right:30px;background:#fff;border:0;width:44px;height:44px;border-radius:50%;font-size:30px;color:var(--blue)}
@media(max-width:1200px){.service-col{flex:0 0 33.333%;max-width:33.333%}.navbar-brand img{height:58px}.nav-link{margin:4px 0}.hero-grid{grid-template-columns:1fr 1fr}.hero-img-3{display:none}}
@media(max-width:768px){.topbar{display:none}.hero-grid{height:640px;grid-template-columns:1fr}.hero-img-2,.hero-img-3{display:none}.hero-copy{left:24px;right:24px;width:auto}.hero-copy h1{font-size:48px}.stat{border-bottom:1px solid rgba(255,255,255,.25)}.service-col{flex:0 0 100%;max-width:100%}.about-strip{grid-template-columns:1fr}.about-text{background:linear-gradient(135deg,#001b41,#002d67);padding:45px 28px}.about-photo{min-height:260px}.project-track{grid-template-columns:1fr}.project-track img{height:220px}.slide-btn{display:none}.section{padding:55px 0}.navbar{min-height:auto}.navbar-brand img{height:52px}}


.service-card-icon-only{
  padding:38px 18px 34px;
  min-height:265px;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  align-items:center;
}
.service-card-icon-only span{
  margin:0 auto 22px;
  width:82px;
  height:82px;
}
.service-card-icon-only h3{margin-bottom:12px}
.service-card-icon-only p{padding:0 12px}
.copy a{color:var(--blue);font-weight:800}
.copy a:hover{color:var(--orange)}
.cookie-banner{
  position:fixed;
  left:24px;
  right:24px;
  bottom:24px;
  z-index:99998;
  background:#fff;
  border:1px solid #dfe5ee;
  box-shadow:0 18px 55px rgba(0,25,70,.22);
  border-radius:18px;
  padding:18px;
  display:none;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
.cookie-banner.show{display:flex}
.cookie-banner strong{color:var(--blue);font-size:18px}
.cookie-banner p{margin:4px 0 0;color:#42526b;font-size:14px}
.cookie-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.btn-cookie{
  border:0;
  padding:11px 16px;
  border-radius:999px;
  font-weight:900;
  font-size:13px;
  text-transform:uppercase;
}
.btn-cookie.accept{background:var(--orange);color:#fff}
.btn-cookie.reject{background:#eef2f7;color:var(--blue)}
.btn-cookie.config{background:var(--blue);color:#fff;text-decoration:none}
.legal-page{padding:60px 0 80px;background:#f5f8fc}
.legal-page .container{
  max-width:980px;
  background:#fff;
  border:1px solid #e5eaf2;
  box-shadow:0 14px 36px rgba(0,25,70,.08);
  padding:42px;
}
.legal-page h1{color:var(--blue);font-weight:900;margin-bottom:26px}
.legal-page h2{color:var(--blue);font-size:24px;font-weight:900;margin-top:28px}
.legal-page h3{color:var(--orange);font-size:18px;font-weight:900;margin-top:20px}
.legal-page p,.legal-page li{color:#34445c;line-height:1.75}
.legal-back{display:inline-block;color:var(--orange);font-weight:900;margin-bottom:18px}
@media(max-width:768px){
  .cookie-banner{left:12px;right:12px;bottom:12px;flex-direction:column;align-items:flex-start}
  .cookie-actions{width:100%;justify-content:flex-start}
}
