.technology-partners .tp-global{padding:clamp(44px,6vw,84px) 0 0;background:#fff;box-shadow:0 0 0 100vmax #fff;clip-path:inset(0 -100vmax -96px)}
.technology-partners .tp-global-label{display:flex;gap:18px;align-items:center;font:600 11.5px var(--mono);letter-spacing:.11em;color:var(--acc-d)}
.technology-partners .tp-global h2{font-family:var(--dsp);font-weight:600;font-size:clamp(29px,3.6vw,46px);line-height:1.06;letter-spacing:-.035em;margin:16px 0 0}
.technology-partners .tp-global>p{font-size:16.5px;line-height:1.68;max-width:66ch;color:var(--mut);margin:18px 0 0}
.technology-partners global-experience{display:block;min-width:0;margin:clamp(30px,4vw,52px) 0 20px}
.technology-partners .tp-global-markets{display:flex;flex-wrap:wrap;gap:8px 0;list-style:none;padding:24px 0 0;margin:0;border-top:1px solid var(--line);color:var(--mut);font-size:13px;line-height:1.7}
.technology-partners .tp-global-markets li:not(:last-child)::after{content:'•';padding:0 12px;color:#babdc0}
:host .map{position:relative;opacity:0;transition:opacity 1.1s ease}
:host(.entered) .map{opacity:1}
:host svg{display:block;width:100%;height:auto;overflow:visible}
:host .route{fill:none;stroke:#c7c9cc;stroke-width:.8;vector-effect:non-scaling-stroke}
:host .signal{fill:none;stroke:#e21c2a;stroke-width:1.8;stroke-linecap:round;stroke-dasharray:14 114;stroke-dashoffset:16;opacity:0;vector-effect:non-scaling-stroke}
:host(.entered) .signal{animation:ge-flow 24s linear infinite;animation-delay:var(--delay);animation-play-state:paused}
:host .marker{opacity:0;outline:none;cursor:default}
:host(.entered) .marker{animation:ge-marker .7s ease both;animation-delay:var(--entry)}
:host .hit{fill:transparent}
:host .dot{fill:#df1424;stroke:#fff;stroke-width:.8;vector-effect:non-scaling-stroke}
:host .marker:focus .dot,:host .marker:hover .dot{stroke:#9c0813;stroke-width:2}
:host .pulse{fill:none;stroke:#df1424;stroke-width:1;opacity:0;transform-origin:center;transform-box:fill-box}
:host(.entered) .pulse{animation:ge-pulse 9s ease-out infinite;animation-delay:var(--pulse);animation-play-state:paused}
:host(.running) .signal,:host(.running) .pulse{animation-play-state:running}
:host .market-label{position:absolute;left:0;bottom:0;padding:9px 12px;background:#fff;border:1px solid #e0e2e4;border-radius:6px;font:600 11px var(--mono,monospace);letter-spacing:.07em;color:#171717;pointer-events:none}
@keyframes ge-flow{0%{opacity:0;stroke-dashoffset:16}3%{opacity:1}29%{opacity:1}33.333%{opacity:0;stroke-dashoffset:-100}100%{opacity:0;stroke-dashoffset:-100}}
@keyframes ge-marker{from{opacity:0}to{opacity:1}}
@keyframes ge-pulse{0%,40%,100%{opacity:0;transform:scale(1)}7%{opacity:.55}35%{opacity:0;transform:scale(3.2)}}
@media(max-width:640px){:host .dot{r:5;stroke-width:.5}:host .hit{r:12}:host .map{padding-bottom:30px}:host .market-label{font-size:10px;padding:6px 8px}.technology-partners .tp-global-markets{font-size:12px}}
@media(prefers-reduced-motion:reduce){:host .map{opacity:1;transition:none}:host .marker{opacity:1;animation:none!important}:host .signal,:host .pulse{animation:none!important;display:none}}
