/* A single world-map canvas with the team locations layered above it. */
/* Team experience is collective; implementation roles are a separate layer. */
.team-credentials{padding:35px 36px 23px;border:1px solid #fff;border-radius:24px;background:linear-gradient(135deg,#fcfdf9f5,#f4f7fff2);box-shadow:0 24px 48px -28px #34546c70}
.team-part-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:50px;margin-bottom:28px}
.team-part-label{display:block;font-size:9px;font-weight:600;letter-spacing:1.7px;color:#4865be;margin-bottom:13px}
.team-part-heading h3{font-size:25px;line-height:1.4;letter-spacing:-.5px;margin:0}
.team-part-heading>p{font-size:12px;line-height:1.9;color:#657180;max-width:430px;margin:0}
.team-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #d8e0e7}
.team-project{padding:25px 25px 26px 0;min-width:0}
.team-project:nth-child(3n+2),.team-project:nth-child(3n+3){padding-left:25px;border-left:1px solid #d8e0e7}
.team-project:nth-child(3n){padding-right:0}
.team-project:nth-child(n+4){border-top:1px solid #d8e0e7}
.team-project-domain{display:block;font-size:9px;line-height:1.6;color:#647896;letter-spacing:.3px;margin-bottom:10px}
.team-project h4{font-size:23px;line-height:1.3;letter-spacing:-.4px;margin:0 0 13px;font-weight:650}
.team-project p{font-size:12px;line-height:1.9;color:#637080;margin:0;max-width:340px}
.team-credentials .team-experience-note{border-top:1px solid #d8e0e7;padding-top:16px;margin:0;font-size:9px;color:#7a8593}
.team-capabilities{margin-top:60px}
.team-capabilities>.team-part-heading{padding:0 3px}
.team-capability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.team-capability{display:flex;flex-direction:column;padding:28px 26px 23px;min-width:0;border:1px solid #fff;border-radius:20px;background:#fafcf9ed;box-shadow:0 18px 34px -25px #34546c75}
.team-capability:nth-child(2),.team-capability:nth-child(6){background:#f2f6ffed}
.team-capability:nth-child(3),.team-capability:nth-child(4){background:#f1f8f5ed}
.team-capability-label{font-size:8px;letter-spacing:1.4px;line-height:1.5;color:#5570bd;margin-bottom:15px}
.team-capability h4{font-size:19px;line-height:1.5;letter-spacing:-.25px;margin:0 0 12px;font-weight:650}
.team-capability p{font-size:12px;line-height:1.9;color:#637080;margin:0 0 22px}
.team-capability-output{font-size:9px;line-height:1.8;color:#667d86;border-top:1px solid #d8e0e7;padding-top:15px;margin-top:auto}
@media(max-width:1120px){.team-credentials{padding:30px 28px 22px}.team-part-heading{gap:35px}.team-part-heading h3{font-size:23px}.team-project{padding-right:20px}.team-project:nth-child(3n+2),.team-project:nth-child(3n+3){padding-left:20px}.team-project h4{font-size:21px}.team-capability{padding:26px 21px 21px}.team-capability h4{font-size:17px}.team-capability-grid{gap:16px}}
@media(max-width:800px){.team-part-heading{grid-template-columns:1fr;gap:16px}.team-part-heading>p{max-width:540px}.team-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.team-project{padding:24px 20px 24px 0}.team-project:nth-child(3n+2),.team-project:nth-child(3n+3){padding-left:0;border-left:0}.team-project:nth-child(3n){padding-right:20px}.team-project:nth-child(2n){padding-left:22px;padding-right:0;border-left:1px solid #d8e0e7}.team-project:nth-child(n+3){border-top:1px solid #d8e0e7}.team-capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.team-capability h4{font-size:18px}.team-capabilities{margin-top:45px}}
@media(max-width:540px){.team-credentials{padding:27px 25px 20px;border-radius:22px}.team-part-heading{margin-bottom:23px;gap:15px}.team-part-label{font-size:8px;letter-spacing:1.3px;margin-bottom:12px}.team-part-heading h3{font-size:22px;letter-spacing:-.5px}.team-part-heading>p{font-size:12px;line-height:1.9}.team-project-grid{grid-template-columns:1fr}.team-project,.team-project:nth-child(n){padding:23px 0;border-left:0}.team-project:nth-child(n+2){border-top:1px solid #d8e0e7}.team-project-domain{font-size:9px;margin-bottom:8px}.team-project h4{font-size:24px;margin-bottom:10px}.team-project p{font-size:13px;max-width:none}.team-credentials .team-experience-note{font-size:9px;padding-top:16px}.team-capabilities{margin-top:39px}.team-capabilities>.team-part-heading{padding:0 5px}.team-capability-grid{grid-template-columns:1fr;gap:14px}.team-capability{padding:25px;border-radius:20px}.team-capability-label{margin-bottom:12px}.team-capability h4{font-size:21px;margin-bottom:10px}.team-capability p{font-size:13px;margin-bottom:18px}.team-capability-output{font-size:10px;padding-top:13px}}
.depth-page .about-section{grid-template-columns:1fr;gap:40px}
.depth-page .about-copy{display:grid;grid-template-columns:.85fr 1.15fr;column-gap:80px;align-items:start}
.depth-page .about-copy>.eyebrow{grid-column:1/-1;margin-bottom:24px}
.depth-page .about-copy h2{grid-column:1;grid-row:2/5;margin:0}
.depth-page .about-copy .about-lead{grid-column:2;margin:0 0 18px}
.depth-page .about-copy>p:last-of-type{grid-column:2;max-width:570px}
.depth-page .about-copy .team-skills{grid-column:2;margin-top:22px}
.depth-page .global-map-panel{min-height:530px;padding:34px 38px 27px;display:flex;flex-direction:column;isolation:isolate;background:radial-gradient(ellipse at 80% 25%,#557bee80,transparent 62%),linear-gradient(125deg,#2448b5,#3158de 55%,#4270de)}
.global-map-art{position:absolute;inset:0;z-index:-2;background:url("assets/world-map.svg") center center/100% auto no-repeat;opacity:.42;pointer-events:none}
.global-map-panel:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,#1b3e8a30,transparent 24%,transparent 52%,#1d43a26b 81%,#2347a6a8)}
.depth-page .global-map-panel .global-title{padding-bottom:0;position:relative}
.depth-page .global-map-panel .global-title>span:first-child{font-size:19px;line-height:1.45;letter-spacing:.2px}
.global-map-panel .map-caption{font-size:8px;letter-spacing:1.7px;line-height:1.8;text-align:right;color:#d6e4ff}
.global-map-panel .city-list{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:auto;padding-top:175px;position:relative}
.depth-page .global-map-panel .city-row{padding:23px 0 20px;gap:16px;border-top:1px solid #c7dcff80;text-shadow:0 2px 16px #15377b80}
.depth-page .global-map-panel .city-row strong{font-size:29px}
.depth-page .global-map-panel .city-row>div>span{font-size:9px;color:#e0eaff}
.depth-page .global-map-panel .city-row .city-dot{background:#c6dfa7;border-color:#c6dfa7;box-shadow:0 0 0 5px #c6dfa717}
.depth-page .global-map-panel>p{margin-top:10px;letter-spacing:1.5px;color:#dce7ff;font-size:9px}
.depth-page .person-title h3{font-size:24px;line-height:1.4;letter-spacing:0}
.depth-page .person-title{gap:15px}
.depth-page .person-monogram{color:#4765b1;background:#eaf0ff;border-color:#cbd8f1;letter-spacing:0}
.depth-page .team-leads h3{letter-spacing:0;font-size:21px}
.depth-page .team-leads p{line-height:1.8}
@media(max-width:540px){.depth-page .team-leads article{display:block}.depth-page .team-leads article h3{margin:11px 0 7px}.depth-page .team-leads article p{text-align:left}}
@media(max-width:1120px){.depth-page .about-copy{column-gap:45px}.depth-page .global-map-panel{min-height:490px}.depth-page .person-title h3{font-size:21px}.global-map-panel .city-list{gap:24px;padding-top:150px}.depth-page .team-leads h3{font-size:19px}}
@media(max-width:800px){.depth-page .about-section{gap:32px}.depth-page .about-copy{column-gap:32px}.depth-page .about-copy h2{font-size:38px}.depth-page .about-copy .about-lead{font-size:18px}.depth-page .global-map-panel{min-height:425px;padding:29px 27px 24px}.global-map-panel .city-list{gap:20px;padding-top:120px}.depth-page .global-map-panel .city-row{gap:10px;padding:20px 0 13px}.depth-page .global-map-panel .city-row strong{font-size:25px}.depth-page .global-map-panel .city-row>div>span{font-size:7px}.depth-page .global-map-panel .city-number{font-size:8px}.depth-page .person-title h3{font-size:19px}.depth-page .person-monogram{width:27px;height:27px}.depth-page .team-leads h3{font-size:17px}}
@media(max-width:540px){.depth-page .about-copy{display:block}.depth-page .about-copy>.eyebrow{margin-bottom:21px}.depth-page .about-copy h2{font-size:40px}.depth-page .about-copy .about-lead{font-size:20px;margin:22px 0 16px}.depth-page .about-copy .team-skills{margin-top:22px}.depth-page .global-map-panel{min-height:565px;padding:27px 25px 25px}.global-map-art{background-size:auto 65%;background-position:57% 26%;opacity:.38}.global-map-panel:after{background:linear-gradient(180deg,#1b3e8a30,transparent 25%,#1d43a245 55%,#2347a6b3)}.depth-page .global-map-panel .global-title>span:first-child{font-size:16px}.global-map-panel .map-caption{font-size:6px;letter-spacing:1px}.global-map-panel .city-list{grid-template-columns:1fr;gap:0;padding-top:60px}.depth-page .global-map-panel .city-row{padding:16px 0;gap:17px}.depth-page .global-map-panel .city-row strong{font-size:25px}.depth-page .global-map-panel .city-row>div>span{font-size:8px}.depth-page .global-map-panel .city-number{font-size:9px}.depth-page .global-map-panel>p{font-size:7px;margin-top:18px;letter-spacing:1px}.depth-page .person-title h3{font-size:22px}.depth-page .team-leads h3{font-size:18px}.depth-page .team-leads article{grid-template-columns:1.15fr 1fr;gap:10px}.depth-page .team-leads p{font-size:10px}}

/* The map asset and all pins use one fixed-ratio geographic coordinate system.
   No cover/crop scaling: Shanghai, UK and Singapore stay attached to the land. */
.depth-page .global-map-panel{min-height:0;padding:0;display:block;overflow:hidden;isolation:isolate}
.depth-page .global-map-panel:after{background:linear-gradient(115deg,#1b3e8a20,transparent 45%,#2347a614)}
.depth-page .global-map-panel .global-title{position:absolute;left:38px;right:38px;top:32px;z-index:2;display:flex;align-items:start;justify-content:space-between;gap:20px;padding:0;pointer-events:none}
.depth-page .global-map-panel .global-title>span:first-child{font-size:20px;line-height:1.65;letter-spacing:.3px}
.global-map-panel .map-caption{font-size:8px;line-height:1.8;letter-spacing:1.1px;text-align:right;color:#d6e4ff;padding-top:6px}
.global-map-stage{position:relative;width:100%;aspect-ratio:1200/650}
.global-map-canvas{display:block;width:100%;height:100%;overflow:visible}
.global-map-canvas image{opacity:.34}
.map-connection{fill:none;stroke:#d4e5ff;stroke-width:1.1;stroke-dasharray:4 8;opacity:.48}
.map-locations{position:absolute;inset:0;list-style:none;padding:0;margin:0}
.map-location{position:absolute;left:var(--map-x);top:var(--map-y);width:0;height:0;z-index:2}
.map-point{display:block;width:11px;height:11px;border:2px solid #e4f4c6;border-radius:50%;background:#d1e9a9;position:absolute;left:-5.5px;top:-5.5px;box-shadow:0 0 0 7px #daeeb82b,0 0 24px #e3f5bb40}
.map-location-label{position:absolute;display:block;white-space:nowrap;color:#fff;text-shadow:0 2px 16px #14346c;line-height:1.5}
.map-location-label strong{display:block;font-size:clamp(17px,2.05vw,27px);font-weight:550;letter-spacing:.1px}
.map-location-label>span{display:block;font-size:8px;line-height:1.8;letter-spacing:1.1px;color:#e0eaff;margin-top:5px}
.map-location-uk .map-location-label{right:19px;top:-32px;text-align:right}
.map-location-shanghai .map-location-label{left:19px;top:-16px}
.map-location-singapore .map-location-label{right:19px;top:6px;text-align:right}
.depth-page .global-map-panel>p.global-map-signoff{position:absolute;left:38px;bottom:29px;font-size:10px;letter-spacing:1.1px;margin:0;color:#dce7ff}
@media(max-width:800px){.depth-page .global-map-panel .global-title{left:27px;right:27px;top:23px}.depth-page .global-map-panel .global-title>span:first-child{font-size:16px}.global-map-panel .map-caption{font-size:7px;max-width:130px}.map-location-label strong{font-size:18px}.map-location-label>span{font-size:7px;letter-spacing:.5px}.map-location-shanghai .map-location-label{left:15px;top:-9px}.map-location-uk .map-location-label{right:16px;top:-25px}.map-location-singapore .map-location-label{right:16px}.depth-page .global-map-panel>p.global-map-signoff{left:27px;bottom:22px;font-size:8px}}
@media(max-width:700px){.depth-page .global-map-panel{min-height:0;padding:0}.global-map-stage{margin-top:78px;margin-bottom:47px}.depth-page .global-map-panel .global-title{left:24px;right:24px;top:23px;gap:13px}.depth-page .global-map-panel .global-title>span:first-child{font-size:15px;line-height:1.55}.global-map-panel .map-caption{max-width:100px;font-size:6px;letter-spacing:.7px;line-height:1.9}.map-point{width:7px;height:7px;left:-3.5px;top:-3.5px;border-width:1px;box-shadow:0 0 0 4px #daeeb82b,0 0 18px #e3f5bb40}.map-location-label strong{font-size:13px;letter-spacing:0}.map-location-label>span{font-size:6px;letter-spacing:.2px;margin-top:3px}.map-location-uk .map-location-label{right:13px;top:-18px}.map-location-shanghai .map-location-label{left:auto;right:13px;top:-36px;text-align:right}.map-location-singapore .map-location-label{right:13px;top:17px;text-align:right}.depth-page .global-map-panel>p.global-map-signoff{left:24px;bottom:21px;font-size:7px;letter-spacing:.6px}.map-connection{stroke-width:1.6;stroke-dasharray:5 10}}
