:root{--navy:#0b2d3f;--blue:#0e5874;--green:#6e9d3a;--soft:#f2f6f7;--text:#24323a;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);line-height:1.6}img{max-width:100%}.wrap{width:min(1160px,92%);margin:auto}header{position:sticky;top:0;z-index:10;background:#0b2432f2;border-bottom:1px solid #ffffff1f}.nav{height:76px;display:flex;align-items:center;gap:26px}.nav img,footer img{width:145px}.nav nav{display:flex;gap:24px;margin-left:auto}.nav a{color:#fff;text-decoration:none;font-size:14px}.btn{display:inline-block;border:0;border-radius:6px;padding:13px 20px;background:var(--green);color:#fff!important;text-decoration:none;font-weight:700;cursor:pointer}.btn.small{padding:9px 14px}.btn.ghost{background:transparent;border:1px solid #fff}.btn.light{background:#fff;color:var(--navy)!important}.menu{display:none}.hero{min-height:650px;display:flex;align-items:center;background:url('../img/hero.jpeg') center/cover;position:relative;color:#fff}.overlay{position:absolute;inset:0;background:linear-gradient(90deg,#071b27e8 20%,#071b2780 70%,#071b2733)}.hero-content{position:relative;max-width:800px}.hero h1{font-size:clamp(42px,6vw,72px);line-height:1.04;margin:14px 0}.hero p{font-size:21px;max-width:720px}.eyebrow{letter-spacing:2px;font-size:12px;font-weight:800;color:#b8df86}.eyebrow.dark{color:var(--green)}.actions{display:flex;gap:12px;margin-top:30px}.stats{background:var(--navy);color:#fff;padding:28px 0}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.grid4 div{text-align:center}.grid4 strong{display:block;font-size:34px}.grid4 span{font-size:13px;color:#c8d5db}.section{padding:90px 0}.soft{background:var(--soft)}h2{font-size:clamp(32px,4vw,48px);line-height:1.15;color:var(--navy);margin:10px 0 22px}h3{color:var(--navy)}.split{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}.panel{background:var(--navy);color:#fff;padding:34px;border-radius:12px}.panel h3{color:#fff}.panel li{margin:10px 0}.textlink{color:var(--blue);font-weight:700}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:38px}.cards article{background:#fff;padding:28px;border-radius:10px;box-shadow:0 8px 30px #14384a12}.cards b{color:var(--green);font-size:25px}.projects{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:38px}.projects article{border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 8px 30px #14384a16}.projects img{width:100%;height:230px;object-fit:cover}.projects article div{padding:22px}.projects span{color:var(--green);font-size:12px;text-transform:uppercase;font-weight:bold}.center{text-align:center;margin-top:35px}.cta{padding:65px 0;background:linear-gradient(120deg,var(--blue),var(--navy));color:#fff}.cta h2{color:#fff}.cta .split{grid-template-columns:1fr auto}form{display:grid;gap:13px;background:var(--soft);padding:30px;border-radius:12px}input,select,textarea{width:100%;padding:13px;border:1px solid #cbd7dc;border-radius:6px;font:inherit}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:13px}footer{background:#071b27;color:#d5e0e5;padding:35px 0}.footer{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:13px}.floating{position:fixed;right:22px;bottom:22px;background:#25d366;color:#fff;text-decoration:none;padding:13px 17px;border-radius:30px;font-weight:bold;z-index:20}@media(max-width:800px){.nav nav,.nav>.btn{display:none}.menu{display:block;margin-left:auto;background:none;border:0;color:#fff;font-size:28px}.nav.open nav{display:flex;position:absolute;top:76px;left:0;right:0;flex-direction:column;background:#0b2432;padding:20px}.grid4,.cards,.projects,.split{grid-template-columns:1fr}.grid4{grid-template-columns:1fr 1fr}.hero{min-height:580px}.hero h1{font-size:42px}.section{padding:65px 0}.twocol{grid-template-columns:1fr}.footer{flex-direction:column;text-align:center}.cta .split{grid-template-columns:1fr}}
.portfolio-hero{padding:105px 0 80px;background:linear-gradient(120deg,#071b27ee,#0e5874dd),url('../img/hero.jpeg') center/cover;color:#fff}.portfolio-hero h1{font-size:clamp(38px,5vw,62px);line-height:1.06;max-width:940px;margin:15px 0}.portfolio-hero p{max-width:760px;font-size:19px}.portfolio-intro{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:end}.portfolio-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:42px 0 28px}.filter-btn{border:1px solid #cbd7dc;background:#fff;color:var(--navy);padding:10px 15px;border-radius:24px;font-weight:700;cursor:pointer}.filter-btn.active,.filter-btn:hover{background:var(--navy);color:#fff;border-color:var(--navy)}.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.portfolio-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 8px 30px #14384a18;border:1px solid #e1e9ec;transition:.25s}.portfolio-card:hover{transform:translateY(-4px);box-shadow:0 15px 38px #14384a26}.portfolio-card>img,.project-visual{width:100%;height:225px;object-fit:cover}.project-visual{display:flex;align-items:center;justify-content:center;text-align:center;background:linear-gradient(135deg,var(--blue),var(--navy));color:#fff;font-size:27px;font-weight:800;letter-spacing:2px}.portfolio-body{padding:23px}.portfolio-body small{display:block;color:var(--green);font-weight:800;text-transform:uppercase;letter-spacing:.5px;margin:12px 0 5px}.portfolio-body h3{margin:4px 0 9px;font-size:21px}.portfolio-body p{font-size:14px;min-height:67px}.badges{display:flex;gap:7px;flex-wrap:wrap}.badges span{background:#e9f1e1;color:#4b7523;border-radius:4px;padding:5px 8px;font-size:10px;font-weight:800;text-transform:uppercase}.portfolio-body dl{border-top:1px solid #e3eaed;margin:17px 0 0;padding-top:13px}.portfolio-body dl div{display:grid;grid-template-columns:82px 1fr;gap:8px;margin:5px 0;font-size:12px}.portfolio-body dt{font-weight:800;color:var(--navy)}.portfolio-body dd{margin:0}.portfolio-card.is-hidden{display:none}.portfolio-note{margin-top:28px;padding:17px 20px;background:var(--soft);border-left:4px solid var(--green);font-size:13px}@media(max-width:900px){.portfolio-grid{grid-template-columns:repeat(2,1fr)}.portfolio-intro{grid-template-columns:1fr}}@media(max-width:620px){.portfolio-grid{grid-template-columns:1fr}.portfolio-hero{padding:75px 0 60px}.portfolio-card>img,.project-visual{height:220px}}

.project-portals{grid-template-columns:repeat(2,minmax(0,1fr));max-width:1050px;margin:32px auto}.project-portals article img{height:330px}.project-portals .textlink{display:inline-block;margin-top:12px}@media(max-width:760px){.project-portals{grid-template-columns:1fr}.project-portals article img{height:240px}}

.brand{display:flex;align-items:center}.service-list{display:grid;gap:18px;margin-top:35px}.service-list article{display:grid;grid-template-columns:72px 1fr;gap:22px;padding:27px;background:#fff;border:1px solid #e1e9ec;border-radius:12px;box-shadow:0 8px 28px #14384a0d}.service-list h3{margin:0 0 7px;font-size:23px}.service-list p{margin:0}.service-number{width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--navy);color:#fff;font-weight:800;font-size:19px}.contact-box{padding:25px 28px;background:var(--soft);border-radius:12px;border-left:4px solid var(--green)}.contact-box a{color:var(--blue);font-weight:700}.privacy-note{font-size:13px;color:#5b6970}.consent{display:flex;align-items:flex-start;gap:9px;font-size:13px}.consent input{width:auto;margin-top:4px}.hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}.portfolio-card img{cursor:zoom-in}.lightbox{position:fixed;inset:0;background:#071b27ee;display:none;align-items:center;justify-content:center;padding:30px;z-index:100}.lightbox.open{display:flex}.lightbox img{max-width:min(1200px,94vw);max-height:88vh;border-radius:8px;box-shadow:0 20px 60px #0008}.lightbox button{position:absolute;right:24px;top:18px;background:none;border:0;color:#fff;font-size:42px;cursor:pointer}.nav a[aria-current="page"]{color:#b8df86}.status-page{min-height:70vh;display:grid;place-items:center;text-align:center;padding:50px}.status-card{background:#fff;padding:42px;max-width:600px;border-radius:14px;box-shadow:0 10px 40px #14384a1a}@media(max-width:620px){.service-list article{grid-template-columns:1fr}.service-number{width:48px;height:48px}.contact-layout{gap:35px}}
