/* Homepage-only geographic visualization. All selectors remain inside its namespace. */
.global-presence-map { background:#000; color:#fff; padding:96px 0; border-bottom:1px solid #ffffff24; }
.global-presence-map .container { width:100%; max-width:1240px; padding-inline:24px; margin-inline:auto; }
.global-presence-map .gpm-grid { display:grid; grid-template-columns:minmax(0, .85fr) minmax(0, 1.15fr); gap:48px; align-items:center; }
.global-presence-map .gpm-copy,.global-presence-map .gpm-visual { min-width:0; }
.global-presence-map .gpm-heading { text-align:left; margin-bottom:28px; }
.global-presence-map .gpm-eyebrow { color:#c6cdd0; font-size:13px; font-weight:700; letter-spacing:1.7px; text-transform:uppercase; margin:0 0 18px; }
.global-presence-map h2 { color:#fff; font-size:clamp(30px,3vw,42px); line-height:1.15; margin:0 0 22px; }
.global-presence-map h2 span { color:inherit; }
.global-presence-map .gpm-heading > p:last-child { font-size:16px; line-height:1.7; color:#d1d6d9; max-width:68ch; margin:0 auto; }
.global-presence-map .gpm-map { display:none; position:relative; width:100%; aspect-ratio:1000/550; margin:0 auto 24px; }
.global-presence-map.gpm-canvas-ready .gpm-map { display:block; }
.global-presence-map .gpm-canvas { width:100%; height:100%; display:block; }
.global-presence-map .gpm-marker { position:absolute; width:44px; height:44px; padding:0; transform:translate(-50%,-50%); border:0; background:transparent; color:#fff; border-radius:50%; }
.global-presence-map .gpm-marker-label { position:absolute; top:47px; left:50%; transform:translateX(-50%); text-align:left; padding:8px 12px; background:#080d10ee; border:1px solid #ffffff2e; border-radius:6px; white-space:nowrap; pointer-events:none; }
.global-presence-map .gpm-marker-label strong { display:block; font-size:15px; line-height:1.3; }
.global-presence-map .gpm-marker-label small { display:block; color:#c6cdd0; font-size:11px; margin-top:3px; }
.global-presence-map .gpm-marker-uae .gpm-marker-label { top:auto; bottom:47px; }
.global-presence-map .gpm-marker-india .gpm-marker-label { left:30px; transform:none; top:40px; }
.global-presence-map .gpm-marker[aria-pressed=true] .gpm-marker-label { border-color:#10adee; }
.global-presence-map .gpm-tooltip { position:absolute; z-index:3; bottom:50px; left:50%; transform:translateX(-50%); width:210px; padding:12px 14px; border:1px solid #10adee66; border-radius:6px; background:#000; color:white; font-size:13px; line-height:1.5; box-shadow:0 8px 20px #0008; visibility:hidden; opacity:0; pointer-events:none; }
.global-presence-map .gpm-marker-uae .gpm-tooltip { bottom:112px; }
.global-presence-map .gpm-marker:is(:hover,:focus-visible) .gpm-tooltip { visibility:visible; opacity:1; }
.global-presence-map .gpm-tagline { text-align:center; color:#c6cdd0; font-size:14px; margin:0 0 28px; }
.global-presence-map .gpm-locations { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.global-presence-map .gpm-location { text-align:left; padding:16px 14px; border:1px solid #ffffff30; border-radius:8px; background:#ffffff06; color:white; min-width:0; min-height:80px; }
.global-presence-map .gpm-location strong { font-size:19px; display:block; margin-bottom:6px; }
.global-presence-map .gpm-location span { display:block; font-size:13px; color:#c6cdd0; }
.global-presence-map .gpm-location small { display:block; font-size:13px; margin-top:12px; }
.global-presence-map.gpm-enhanced .gpm-location small { display:none; }
.global-presence-map .gpm-location[aria-pressed=true] { border-color:#10adee; background:#10adee0d; }
.global-presence-map .gpm-location:is(:hover,:focus-visible) { border-color:#10adee; }
.global-presence-map .gpm-info { padding:20px 0 0; display:flex; flex-wrap:wrap; align-items:center; gap:8px 20px; }
.global-presence-map .gpm-info > div { display:flex; align-items:center; gap:14px; }
.global-presence-map .gpm-info-country { font-size:18px; }
.global-presence-map .gpm-info-region { color:#c6cdd0; font-size:13px; }
.global-presence-map .gpm-info-description { margin:0; font-size:15px; color:#e2e5e7; }
.global-presence-map.gpm-motion .gpm-map { opacity:0; transform:translateY(18px); transition:opacity .9s ease,transform .9s ease; }
.global-presence-map.gpm-motion.is-visible .gpm-map { opacity:1; transform:none; }
.global-presence-map.gpm-motion:not(.is-visible) .gpm-markers { opacity:0; }
@media(max-width:991px) {
 .global-presence-map .gpm-grid { grid-template-columns:1fr; gap:28px; }
 .global-presence-map .gpm-copy { display:contents; }
 .global-presence-map .gpm-heading { grid-row:1; text-align:center; margin:0; }
 .global-presence-map .gpm-visual { grid-row:2; }
 .global-presence-map .gpm-info { padding:0; justify-content:center; }
 .global-presence-map .gpm-tagline { margin-bottom:0; }
}
@media(max-width:767px) {
 .global-presence-map { padding:64px 0; }
 .global-presence-map .container { padding-inline:20px; }
 .global-presence-map .gpm-heading { text-align:center; }
 .global-presence-map .gpm-heading > p:last-child { font-size:15px; }
 .global-presence-map .gpm-map { margin:0 auto 24px; }
 .global-presence-map .gpm-markers { display:none; }
 .global-presence-map .gpm-locations { gap:8px; }
 .global-presence-map .gpm-location { padding:16px 8px; text-align:center; }
 .global-presence-map .gpm-location strong { font-size:16px; }
 .global-presence-map .gpm-location span { font-size:11px; }
 .global-presence-map .gpm-info { flex-direction:column; text-align:center; gap:10px; }
 .global-presence-map .gpm-info-description { font-size:14px; }
 .global-presence-map .gpm-tagline { font-size:13px; max-width:30ch; margin-inline:auto; margin-bottom:22px; }
}
@media(prefers-reduced-motion:reduce) {
 .global-presence-map .gpm-map,.global-presence-map .gpm-markers { opacity:1!important; transform:none!important; animation:none!important; transition:none!important; }
}
