/* A quiet network chapter between the photographic signature and the footer. */
.global-presence {
  background:#f5f8fa;
  border-top:1px solid #e8eef2;
  border-bottom:1px solid #e5edf3;
  padding:70px 0 64px;
  scroll-margin-top:80px;
}
.global-presence .global-presence-inner {
  width:89.2%; max-width:1440px;
  display:grid; grid-template-columns:1.1fr 1fr;
  align-items:center; gap:clamp(36px,5vw,84px);
}
.global-globe { min-width:0; margin:0; }
.global-globe-stage { position:relative; width:100%; aspect-ratio:1; }
.global-globe-stage img,.global-globe-stage canvas {
  position:absolute; inset:0; display:block; width:100%; height:100%;
}
.global-globe-canvas { opacity:0; transition:opacity .4s ease; }
.global-globe-stage.is-ready .global-globe-canvas { opacity:1; }
.global-globe-stage.is-ready .global-globe-fallback { visibility:hidden; }
.global-presence-copy { padding:16px 0 24px; min-width:0; }
.global-presence-copy .kicker { font-size:10px; letter-spacing:2px; color:#547a9b; margin-bottom:27px; }
.global-presence-copy h2 {
  font-size:clamp(34px,3.2vw,49px); line-height:1.35;
  font-weight:550; letter-spacing:-.7px; color:#102f49;
}
.global-presence-copy h2>span { display:block; }
.global-presence-copy h2>span:last-child { color:#0753a2; }
.global-presence-intro {
  max-width:490px; margin:24px 0 27px;
  font-size:15px; line-height:1.95; color:#62788a;
}
.global-city-selector { display:flex; gap:0; border-bottom:1px solid #d8e3eb; }
.global-city-selector button {
  position:relative; border:0; background:transparent; color:#6e8597;
  padding:12px 16px 14px; min-height:46px; flex:1;
  font-size:14px; white-space:nowrap; transition:color .2s,background .2s;
}
.global-city-selector button:first-child { padding-left:4px; }
.global-city-selector button:last-child { padding-right:4px; }
.global-city-selector button::after {
  content:""; position:absolute; height:2px; bottom:-1px;
  left:0; right:0; background:#0753a2; transform:scaleX(0);
  transform-origin:center; transition:transform .3s ease;
}
.global-city-selector button[aria-pressed="true"] { color:#0753a2; font-weight:600; }
.global-city-selector button[aria-pressed="true"]::after { transform:scaleX(1); }
.global-city-selector button:hover { color:#0753a2; background:#eaf1f6; }
.global-city-selector button:focus-visible,.global-presence-link:focus-visible { outline:2px solid #0753a2; outline-offset:4px; }
.global-office-detail { margin:20px 0 27px; min-height:57px; }
.global-office-title { color:#163a57; font-size:15px; font-weight:550; line-height:1.6; }
.global-office-description { margin-top:5px; color:#6c8090; font-size:13px; line-height:1.75; }
.global-presence-link {
  display:inline-flex; align-items:center; justify-content:space-between; gap:36px;
  background:#0753a2; color:white; min-height:56px;
  padding:0 21px 0 24px; border-radius:3px; font-size:14px;
  text-decoration:none; transition:background .25s;
}
.global-presence-link>span:last-child { font-size:26px; font-weight:300; transition:transform .25s; }
.global-presence-link:hover { background:#083e78; }
.global-presence-link:hover>span:last-child { transform:translate(3px,-3px); }
html[lang="en"] .global-presence-copy h2 { font-size:clamp(32px,3vw,46px); }
html[lang="en"] .global-city-selector button { font-size:12px; padding-inline:8px; }
@media(max-width:1000px) {
  .global-presence { padding:50px 0; }
  .global-presence .global-presence-inner { gap:28px; grid-template-columns:1fr 1fr; }
  .global-presence-copy .kicker { font-size:9px; letter-spacing:1.5px; margin-bottom:20px; }
  .global-presence-copy h2 { font-size:35px; }
  .global-presence-intro { font-size:14px; }
}
@media(max-width:720px) {
  .global-presence { padding:34px 0 46px; }
  .global-presence .global-presence-inner { width:calc(100% - 40px); grid-template-columns:1fr; gap:28px; }
  .global-globe { max-width:480px; width:100%; margin:auto; }
  .global-globe-stage { margin:-12px 0 -4px; }
  .global-presence-copy { padding:0; }
  .global-presence-copy .kicker { font-size:9px; margin-bottom:17px; }
  .global-presence-copy h2,html[lang="en"] .global-presence-copy h2 { font-size:34px; line-height:1.4; }
  .global-presence-intro { margin:18px 0 18px; font-size:14px; line-height:1.9; }
  .global-presence-intro br { display:none; }
  .global-city-selector button { padding:12px 10px; font-size:14px; }
  .global-office-detail { min-height:64px; margin:18px 0 22px; }
  .global-presence-link { min-height:54px; font-size:13px; }
}
@media(prefers-reduced-motion:reduce) {
  .global-presence *, .global-presence *::after { transition:none!important; }
}
