:root{--blue:#087cf2;--navy:#062d6b;--text:#12294a;--muted:#65758f;--line:#dfe8f3;--bg:#f7faff;--green:#16a967}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif}a{text-decoration:none;color:inherit}
.header{height:78px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 5.5%;position:sticky;top:0;z-index:50}.logo{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--navy);font-size:14px}.logo-mark{font-size:28px;font-style:italic;font-weight:900;color:var(--blue);transform:skew(-18deg);display:inline-block}.nav{display:flex;gap:23px;font-size:12px;font-weight:600;color:#435674}.nav a:hover{color:var(--blue)}.head-tools{display:flex;gap:13px}.head-tools button{border:0;background:transparent;color:var(--navy);font-size:25px;cursor:pointer}.mobile-nav{display:none}
.hero{height:620px;position:relative;overflow:hidden;background:linear-gradient(110deg,#fff 10%,#eaf6ff 100%)}.map-bg{position:absolute;inset:0;background:url("../assets/world-map.svg") center/cover no-repeat;opacity:.9}.hero-copy{position:relative;z-index:2;padding:92px 0 0 9%;width:55%}.eyebrow{font-size:10px;font-weight:800;color:#173762}.hero h1{font-size:67px;line-height:.92;letter-spacing:-3px;color:var(--navy);margin:15px 0}.hero h1 span{color:var(--blue)}.hero h2{font-size:21px;line-height:1.2;margin:0;color:#0e356c}.hero h2 b{color:var(--blue)}.hero-copy>p{font-size:14px;color:#344b6b;line-height:1.35}.hero-actions{display:flex;gap:11px;margin-top:20px}.primary,.secondary,.outline{display:inline-flex;justify-content:center;align-items:center;border-radius:28px;padding:12px 20px;font-size:12px;font-weight:700}.primary{background:var(--blue);color:#fff;box-shadow:0 9px 24px #087cf236}.secondary{background:#fff;border:1px solid #7da9d8;color:#123e75}.hero-person{position:absolute;right:7%;bottom:0;width:41%;height:94%;z-index:3;display:flex;justify-content:center;align-items:flex-end}.hero-person img{width:100%;height:100%;object-fit:cover;object-position:48% 25%;mask-image:linear-gradient(to bottom,black 0 93%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,black 0 93%,transparent 100%);mix-blend-mode:multiply}
.quick{width:min(1000px,92%);margin:-28px auto 0;position:relative;z-index:6;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 32px #1b4f8d15;display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden}.quick a{display:flex;align-items:center;gap:13px;min-height:82px;padding:13px 18px;border:1px solid #edf2f8}.quick i{font-style:normal;color:var(--blue);font-size:27px}.quick b{display:block;font-size:13px}.quick small{font-size:10px;color:var(--muted)}
.section{width:min(1040px,90%);margin:70px auto}.section-title{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:22px;gap:20px}.section-title>div{padding-left:43px;position:relative}.section-title>div>span{position:absolute;left:0;top:-2px;font-size:27px;color:var(--blue)}.section-title h2{font-size:27px;line-height:1.05;color:var(--navy);margin:0 0 4px}.section-title p{font-size:12px;color:var(--muted);margin:0}.section-title>a{font-size:11px;color:var(--blue);font-weight:700;white-space:nowrap;padding-top:6px}
.timeline{border-left:2px solid #afd2fa;margin-left:14px;padding:2px 0}.timeline article{display:grid;grid-template-columns:78px 1fr;gap:18px;align-items:center;position:relative;margin-bottom:14px}.timeline article:before{content:"";width:10px;height:10px;border:3px solid var(--blue);background:#fff;border-radius:50%;position:absolute;left:-8px}.timeline time{font-size:13px;font-weight:800;color:#0d3f7c;padding-left:15px}.timeline article>div{background:#fff;border:1px solid var(--line);border-radius:13px;padding:12px 15px;box-shadow:0 5px 15px #174d8910;display:grid;grid-template-columns:1fr auto;gap:2px 10px}.timeline b{font-size:13px}.timeline em{font-style:normal;color:#6d7c92;font-weight:500}.timeline small{font-size:10px;color:#12945b;background:#e9fff3;border-radius:15px;padding:3px 8px;justify-self:start}.timeline small.pending{color:#2674c8;background:#eef6ff}.outline{border:1px solid #74a5dd;color:#0a5cc6;background:#fff;margin-top:14px}
.content-card,.project,.global,.about{background:#fff;border:1px solid var(--line);border-radius:17px;overflow:hidden;box-shadow:0 8px 25px #174d8910}.insight-scroller{display:flex;gap:14px;overflow:auto;scrollbar-width:none}.insight-scroller::-webkit-scrollbar{display:none}.content-card{min-width:47%}.visual{height:205px;display:flex;align-items:flex-end;padding:18px 22px;color:#fff;font-size:27px;font-weight:800;line-height:.95;letter-spacing:-1px}.city{background:linear-gradient(135deg,#63a7e7,#244b76 55%,#f1b36b)}.city.alt{background:linear-gradient(135deg,#0e467a,#8db8dc 55%,#edf5fb)}.bus{background:linear-gradient(135deg,#193651,#da9656 68%,#f4d7b5)}.flags{background:linear-gradient(135deg,#dbeafa,#3975ad 50%,#f6fafc)}.card-content{padding:15px 19px}.card-content label{font-size:9px;background:#eef5ff;color:#245b99;border:1px solid #d1e0f1;border-radius:15px;padding:4px 8px;margin-right:4px}.card-content label.green{color:#11945a;background:#eafff2;border-color:#bcead0}.card-content h3{font-size:17px;line-height:1.2;color:var(--navy);margin:8px 0 5px}.card-content p,.card-content small{font-size:11px;color:var(--muted);margin:0}.card-content a{display:block;font-size:11px;font-weight:700;color:var(--blue);margin-top:8px}.dots{text-align:center;margin-top:10px}.dots>*{display:inline-block;width:8px;height:8px;border-radius:50%;background:#b6c6db;margin:0 4px}.dots b{background:var(--blue)}.project .visual{height:235px}.project{max-width:760px}.project .card-content p{font-size:12px}.solutions{display:grid;gap:9px}.solutions article{display:grid;grid-template-columns:45px 1fr 20px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px 16px}.solutions i{font-style:normal;color:var(--blue);font-size:27px}.solutions b{font-size:13px}.solutions p{font-size:10px;color:var(--muted);margin:1px 0 0}.solutions strong{font-size:23px;color:#5d7391}.global .visual{height:230px}.tags{display:flex;gap:7px;flex-wrap:wrap;padding:14px 18px}.tags span{font-size:9px;color:#2d5d91;background:#f1f6fc;border:1px solid #d8e4f2;border-radius:15px;padding:5px 8px}
.about{display:grid;grid-template-columns:280px 1fr}.about-photo{min-height:300px;background:#d9edff}.about-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 25%}.about-text{padding:23px}.about-text p{font-size:12px;color:#52647e}.quote{width:min(1040px,90%);margin:70px auto;padding:45px;text-align:center;border:1px solid #cfe2f8;border-radius:17px;background:linear-gradient(135deg,#e8f5ff,#fff)}.quote>b{font-size:44px;color:var(--blue)}.quote p{font-size:24px;font-style:italic;line-height:1.25;color:#173c70;margin:5px}.quote small{font-size:10px;font-weight:800;color:#45617f}
.contact{width:min(1040px,90%);margin:70px auto;display:grid;grid-template-columns:1fr 1.2fr;gap:18px;align-items:center}.contact-title{position:relative;padding-left:45px}.contact-title>span{position:absolute;left:0;font-size:27px;color:var(--blue)}.contact-title h2{font-size:26px;color:var(--navy);margin:0}.contact-title p{font-size:12px;color:var(--muted)}.email{display:grid;grid-template-columns:42px 1fr 20px;align-items:center;background:var(--blue);color:#fff;border-radius:16px;padding:16px 19px;box-shadow:0 12px 30px #087cf23a}.email i{font-size:23px;font-style:normal}.email small{display:block;font-size:9px;opacity:.8}.email b{font-size:12px}.social{grid-column:2;display:flex;gap:10px}.social a{width:32px;height:32px;border:1px solid #bed1e7;background:#fff;border-radius:8px;display:grid;place-items:center;color:#0b4e96;font-weight:800;font-size:12px}
footer{background:#fff;border-top:1px solid var(--line);padding:32px 5%;display:grid;grid-template-columns:1fr 2fr;gap:20px}.foot-brand{display:flex;gap:10px}.foot-brand b{color:var(--navy);font-size:12px}.foot-brand small{display:block;color:var(--muted);font-size:9px;margin-top:4px}.foot-brand .logo-mark{font-size:23px}footer nav{display:flex;justify-content:flex-end;gap:17px;flex-wrap:wrap;font-size:10px;color:#405776}footer>p{grid-column:1/-1;text-align:center;border-top:1px solid #edf1f6;padding-top:14px;color:#8997aa;font-size:9px;margin:0}
.top{position:fixed;right:18px;bottom:18px;border:0;border-radius:50%;width:42px;height:42px;background:#e9f4ff;color:#13599d;box-shadow:0 8px 20px #173e6b20;opacity:0;pointer-events:none}.top.show{opacity:1;pointer-events:auto}
.search{display:none;position:fixed;inset:0;background:#08244788;z-index:100;justify-content:center;padding-top:14vh}.search.open{display:flex}.search>div{width:min(620px,90%);height:max-content;background:#fff;border-radius:18px;padding:25px;position:relative}.search button{position:absolute;right:12px;top:8px;border:0;background:none;font-size:25px}.search input{width:100%;padding:14px;border:1px solid #ccd9e8;border-radius:11px;font-size:15px}.search small{display:block;color:var(--muted);margin-top:8px}
@media(max-width:850px){.nav{display:none}.head-tools button:last-child{display:block}.hero{height:690px}.hero-copy{padding:52px 7% 0;width:70%}.hero h1{font-size:52px}.hero-person{right:0;width:62%;height:61%}.quick{grid-template-columns:repeat(2,1fr);margin-top:-8px}.section{margin:55px auto}.about{grid-template-columns:1fr}.about-photo{height:285px}.contact{grid-template-columns:1fr}.social{grid-column:1}.mobile-nav{position:fixed;top:78px;left:0;right:0;background:#fff;z-index:49;padding:14px 7%;box-shadow:0 10px 25px #174d8920}.mobile-nav a{display:block;padding:11px 0;border-bottom:1px solid var(--line);font-weight:700}.mobile-nav.open{display:block}}
@media(min-width:851px){.head-tools button:last-child{display:none}}
@media(max-width:520px){.header{height:65px;padding:0 5%}.logo{font-size:11px}.hero{height:625px}.hero-copy{padding:42px 6% 0;width:80%}.hero h1{font-size:44px;letter-spacing:-2px}.hero h2{font-size:17px}.hero-copy>p{font-size:12px}.hero-person{width:66%;height:51%}.quick{width:94%}.quick a{min-height:72px;padding:10px 12px}.quick i{font-size:23px}.quick b{font-size:11px}.quick small{font-size:9px}.section-title{display:block}.section-title>a{display:inline-block;margin-top:9px}.section-title h2{font-size:24px}.content-card{min-width:92%}.visual{height:180px}.project .visual,.global .visual{height:195px}.timeline article{grid-template-columns:57px 1fr;gap:9px}.timeline article>div{grid-template-columns:1fr}.quote{padding:35px 20px}.quote p{font-size:21px}footer{grid-template-columns:1fr}footer nav{justify-content:flex-start}footer>p{grid-column:1}}
