@font-face{font-family:Montserrat;src:url(/assets/montserrat.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Montserrat;src:url(/assets/montserrat-light.otf)format("opentype");font-weight:300;font-style:normal;font-display:swap}:root{--navy:#0b2948;--blue:#27aae1;--ink:#333}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:#fff;margin:0;font-family:Montserrat,Arial,sans-serif}img{max-width:100%}.intro-logo{isolation:isolate;background:url(/assets/hero-city.jpg) 50%/cover no-repeat;place-items:center;height:100dvh;min-height:540px;display:grid;position:relative}.intro-logo:before{content:"";z-index:-1;background:#ffffffc7;position:absolute;inset:0}.intro-logo img{width:800px;max-width:90vw;height:auto}.hero{color:#fff;background:url(/assets/pont2.jpg) 50%/cover no-repeat;height:66vh;min-height:620px;position:relative;overflow:hidden}.hero-shade,.overlay{background:#0b1d359e;position:absolute;inset:0}.hero-copy{z-index:1;text-align:center;max-width:1130px;margin:auto;padding:19vh 30px 0;position:relative}.hero h1{letter-spacing:-.05em;margin:0 0 35px;font-size:clamp(3rem,7vw,6.3rem);font-weight:800;line-height:.98}.hero p{max-width:880px;margin:auto;font-size:1.25rem;font-weight:400;line-height:1.35}.site-header{background:var(--navy);z-index:50;border-bottom:2px solid #45543f;align-items:center;height:104px;padding:0 4%;display:flex;position:sticky;top:0}.brand img{width:155px;display:block}.site-header nav{align-items:center;margin-left:auto;display:flex}.site-header nav a{color:#fff;letter-spacing:.08em;border-left:1px solid #ffffffb3;padding:0 20px;font-size:.78rem;text-decoration:none}.site-header nav a:first-child{border-left:0}.site-header nav a:hover{color:var(--blue)}.menu-toggle{color:#fff;background:0 0;border:0;margin-left:auto;font-size:2rem;display:none}.white-section{background:#fff;position:relative}.content-section{min-height:650px;padding:1px 20px 100px}.section-title{text-align:center;letter-spacing:.5em;color:#333;border-bottom:2px solid #222;width:min(1025px,70%);margin:110px auto 55px;padding-bottom:44px;font-size:1.35rem;font-weight:400}.section-title.light{color:#fff;border-color:#fff}.vision{text-align:center;min-height:calc(100dvh - 200px);padding-top:1px}.vision .section-title{margin-top:185px}.vision h2:not(.section-title){max-width:1270px;margin:155px auto 0;padding:0 28px;font-size:clamp(2.5rem,3.35vw,4.3rem);font-weight:800;line-height:1.12}.parallax{color:#fff;background:url(/assets/hero-poster.jpg) 50%/cover no-repeat fixed;min-height:690px;position:relative}.section-content{z-index:2;padding:1px 20px 90px;position:relative}.tabs{text-align:center;max-width:900px;margin:0 auto}.tab-list{flex-wrap:wrap;justify-content:center;align-items:center;display:flex}.tab-list button{appearance:none;color:#666;cursor:pointer;background:0 0;border:0;padding:5px 20px;font:800 clamp(2rem,5vw,4rem)/1 Montserrat;position:relative}.tab-list button:not(:last-child):after{content:"";background:var(--blue);border-radius:50%;width:11px;height:11px;position:absolute;top:48%;right:-5px}.tab-list button.active{color:#666}.tabs-dark .tab-list button,.tabs-dark .tab-list button.active{color:#fff}.tabs p{max-width:900px;margin:35px auto 0;font:300 1.15rem/1.45 Montserrat}.services-grid{background:#fff;align-items:stretch;min-height:420px;display:flex;overflow:hidden}.services-grid button{text-align:left;color:#fff;background:var(--navy);cursor:pointer;border:0;flex:1;padding:24px 18px;font-family:Montserrat;transition:flex .55s,background .3s;overflow:hidden}.services-grid button:nth-child(2n){background:var(--blue)}.services-grid button.expanded{flex:2.7}.services-grid strong{font-size:1rem;display:block}.services-grid span{opacity:0;min-width:330px;max-height:0;margin-top:22px;line-height:1.5;transition:opacity .3s,max-height .5s;display:block;overflow:hidden}.services-grid .expanded span{opacity:1;max-height:330px}.impact{background:url(/assets/impact-bg.jpg) 50%/cover no-repeat fixed;place-items:center;min-height:510px;padding:40px;display:grid}.impact h2{color:#fff;text-align:center;text-shadow:0 2px 4px #000;margin:0;font-size:clamp(2rem,4vw,4rem);line-height:1.02}.clients-intro{text-align:center;min-height:650px;padding-top:1px}.clients-intro h2:not(.section-title){margin:75px 0 25px;font-size:clamp(2.3rem,4.5vw,4rem);line-height:1.08}.clients-intro p{font-size:1.25rem;font-weight:300;line-height:1.25}.client-wall{background:url(/assets/hero-poster.jpg) 50%/cover no-repeat fixed;min-height:1050px;padding:90px 30px;position:relative}.client-wall .overlay{background:#000000b8}.client-grid{z-index:2;grid-template-columns:repeat(5,1fr);align-items:center;gap:52px 30px;max-width:850px;margin:auto;display:grid;position:relative}.client-grid img{object-fit:contain;filter:grayscale()brightness(0)invert();opacity:.95;width:100%;max-height:90px}.contact{text-align:center;min-height:700px;padding-top:1px}.contact>a{color:#111;margin:22px;font-size:1.15rem;font-weight:800;text-decoration:none;display:block}.contact .email,.contact .map{color:#0019bc;text-decoration:underline}.contact p{margin:35px 20px;font-size:1.1rem;font-weight:800}.socials{justify-content:center;gap:22px;margin-top:40px;display:flex}.socials img{object-fit:contain;width:28px;height:28px}footer{color:#fff;text-align:center;background:#05080a;padding:45px 20px;font-size:.72rem}@media (max-width:800px){.intro-logo{height:100dvh;min-height:480px}.hero{min-height:580px}.hero-copy{padding-top:13vh}.hero p{font-size:1rem}.site-header{height:78px}.menu-toggle{color:#fff;background:0 0;border:0;margin-left:auto;font-size:2rem;display:block}.site-header nav{background:var(--navy);flex-direction:column;align-items:stretch;display:none;position:absolute;top:78px;left:0;right:0}.site-header nav.open{display:flex}.site-header nav a{border:0;border-top:1px solid #ffffff2e;padding:18px 25px}.brand img{width:120px}.section-title{letter-spacing:.35em;width:85%;margin-top:75px;padding-bottom:38px}.vision{min-height:100dvh}.vision .section-title{margin-top:90px}.vision h2:not(.section-title){margin-top:80px;padding:0 22px;font-size:clamp(2rem,9vw,3rem)}.parallax{background-attachment:scroll}.tab-list button{padding:7px 14px;font-size:2rem}.tab-list button:not(:last-child):after{width:7px;height:7px;right:-3px}.tabs p{font-size:.95rem}.services-grid{display:block}.services-grid button{width:100%;min-height:90px;display:block}.services-grid button.expanded{min-height:300px}.client-grid{grid-template-columns:repeat(3,1fr);gap:36px 22px}.client-wall{background-attachment:scroll;min-height:900px}.impact{background-attachment:scroll}.clients-intro{min-height:540px}.clients-intro br{display:none}}
