/* Global project support overview, approved concepts 2026-10-29.
   Map: zoomed 1.6x onto the Middle East and East Africa; the market cards overlap its faded lower edge.
   Pins: the marker layer spans the section at the map's full-width ratio (2172x724), and each pin tip is
   placed where Riyadh / Nairobi land on the zoomed map, so it stays on target at every width.
   Then the four "how a project runs" sections. */
.gm-market-page--global .gm-market-focus-inner,.gm-market-page--global .gm-market-focus-intro{position:static}
.gm-market-page--global .gm-market-focus-intro .gm-market-section-heading,.gm-market-page--global .gm-market-card-grid{position:relative;z-index:1}
.gm-market-page--global .gm-market-focus-markers{position:absolute;top:0;left:0;width:100%;min-width:0;aspect-ratio:2172/724;z-index:2;pointer-events:none}
.gm-market-page--global .gm-market-focus-markers>.gm-market-map-marker{--pin:clamp(24px,2.2vw,36px);font-size:clamp(13px,1.25vw,18px);transform:translate(calc(var(--pin)/-2),calc(var(--pin)*-43/32))}
.gm-market-page--global .gm-market-focus-markers .gm-market-map-pin{width:var(--pin)}
.gm-market-page--global .gm-market-focus-markers>.gm-market-map-marker:first-child{top:39%;left:70%}
.gm-market-page--global .gm-market-focus-markers>.gm-market-map-marker:last-child{top:63.3%;left:67.85%}
@media(min-width:701px){
  .gm-market-page--global .gm-market-focus::before{height:30vw;background:linear-gradient(180deg,rgba(247,244,239,0) 70%,#f7f4ef 100%),linear-gradient(90deg,rgba(246,242,236,.92),rgba(246,242,236,.5) 45%,rgba(246,242,236,.08) 70%),url('/assets/web-v3/markets/global-map-v2.webp') 64.8% 40.6% / 160% auto no-repeat}
  .gm-market-page--global .gm-market-focus-intro{min-height:calc(24vw - 4vw)}
}
@media(min-width:1101px){
  .gm-market-page--global .gm-market-focus-intro{min-height:calc(24vw - 42px)}
}

.gm-market-page--global{--gx-ink:#171b1a;--gx-muted:#585d5a;--gx-gold:#bc8750;--gx-line:#e5e2dd;--gx-paper:#f7f4ef;--gx-card:#fff}
.gx-section{padding-block:clamp(48px,5.5vw,84px);background:#fff;color:var(--gx-ink)}
.gx-section--paper{background:var(--gx-paper)}
.gx-section :is(h2,h3,p,ul,ol){margin:0}
.gx-head{display:grid;gap:10px;max-width:46em;margin-bottom:clamp(28px,3vw,44px)}
html body .gx-section h2{font-size:clamp(28px,3vw,44px)!important;line-height:1.2!important}
.gx-head p,.gx-one-copy>p{color:var(--gx-muted);font-size:clamp(13px,1.15vw,16px);line-height:1.6}

/* 1. Flow */
.gx-flow{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px;padding:0;list-style:none}
.gx-flow::before{content:"";position:absolute;top:17px;left:17px;right:calc(100%/6 - 17px);height:1px;background:var(--gx-gold);opacity:.55}
.gx-flow li{position:relative;display:grid;grid-template-rows:auto auto 1fr auto;gap:8px}
.gx-num{display:grid;place-items:center;width:35px;height:35px;margin-bottom:8px;border:1px solid var(--gx-gold);border-radius:50%;background:var(--gx-paper);color:var(--gx-gold);font-size:15px}
html body .gx-flow h3{font-size:17px!important;line-height:1.4!important}
.gx-flow p{color:var(--gx-muted);font-size:13px;line-height:1.6}
.gx-flow em{margin-top:4px;padding-top:10px;border-top:1px solid var(--gx-line);color:var(--gx-gold);font-size:12.5px;font-style:normal;line-height:1.5}

/* 2. One list, many factories, one shipment */
.gx-one{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:clamp(32px,5vw,80px)}
.gx-one-copy{display:grid;gap:16px}
.gx-one-points{display:grid;gap:12px;margin-top:8px!important;padding:0;list-style:none}
.gx-one-points li{display:grid;gap:2px;padding-left:16px;border-left:2px solid var(--gx-gold);color:var(--gx-muted);font-size:13.5px}
.gx-one-points b{color:var(--gx-ink);font-size:15px;font-weight:500}
.gx-one-diagram{display:grid;grid-template-columns:minmax(0,1fr) 56px minmax(0,1.05fr) 44px minmax(0,.9fr);align-items:center;padding:clamp(20px,2.4vw,34px);border:1px solid var(--gx-line);border-radius:10px;background:var(--gx-paper)}
.gx-factories{display:grid;gap:10px}
.gx-factories span{padding:9px 12px;border:1px solid var(--gx-line);border-radius:6px;background:var(--gx-card);font-size:13px;text-align:center;white-space:nowrap}
.gx-lines{width:100%;height:calc(100% - 38px);align-self:center}
.gx-lines path,.gx-arrow path{fill:none;stroke:var(--gx-gold);stroke-width:1.2;vector-effect:non-scaling-stroke}
.gx-hub,.gx-dest{display:grid;gap:4px;padding:18px 14px;border-radius:8px;text-align:center}
.gx-hub{border:1px solid var(--gx-gold);background:var(--gx-card)}
.gx-dest{background:var(--gx-ink);color:#f3efe6}
.gx-hub strong,.gx-dest strong{font-size:15px;font-weight:500}
.gx-hub small{color:var(--gx-muted);font-size:12px}
.gx-dest small{color:#cfc6b8;font-size:12px}
.gx-arrow{width:100%;height:20px}

/* 3. Split of duties */
.gx-split{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:20px}
.gx-split-col{display:grid;align-content:start;gap:16px;padding:clamp(22px,2.4vw,34px);border:1px solid var(--gx-line);border-radius:10px;background:var(--gx-card)}
.gx-split-col--us{border-color:var(--gx-gold)}
html body .gx-split h3{display:grid;gap:4px;font-size:20px!important;line-height:1.35!important}
.gx-split h3 span{color:var(--gx-gold);font-size:12.5px;letter-spacing:.12em}
.gx-split ul{display:grid;gap:10px;padding:0;list-style:none}
.gx-split li{position:relative;padding-left:20px;font-size:14px;line-height:1.55}
.gx-split li::before{content:"";position:absolute;top:.6em;left:2px;width:7px;height:7px;border-radius:50%;background:var(--gx-gold)}
.gx-split-col:not(.gx-split-col--us) li::before{background:none;border:1px solid var(--gx-muted)}
.gx-split-note{padding-top:14px;border-top:1px solid var(--gx-line);color:var(--gx-muted);font-size:13px}

/* 4. FAQ */
.gx-faq-wrap{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:clamp(28px,4vw,64px);align-items:start}
.gx-faq-wrap .gx-head{margin-bottom:0}
.gx-faq{border-top:1px solid var(--gx-ink)}
.gx-faq details{border-bottom:1px solid var(--gx-line)}
.gx-faq summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 2px;font-size:16px;cursor:pointer;list-style:none}
.gx-faq summary::-webkit-details-marker{display:none}
.gx-faq summary::after{content:"+";flex:none;color:var(--gx-gold);font-size:22px;line-height:1;transition:transform .25s}
.gx-faq details[open] summary::after{transform:rotate(45deg)}
.gx-faq summary:focus-visible{outline:2px solid var(--gx-gold);outline-offset:2px}
.gx-faq details p{max-width:42em;padding:0 2px 18px;color:var(--gx-muted);font-size:14px;line-height:1.7}
.gx-faq .gx-todo{color:#b4532a}

@media(max-width:1100px){
  .gx-flow{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:34px}
  .gx-flow::before{display:none}
  .gx-one,.gx-faq-wrap{grid-template-columns:1fr}
}
@media(max-width:700px){
  .gx-flow{grid-template-columns:1fr;gap:22px}
  .gx-flow li{grid-template-columns:35px 1fr;grid-template-rows:none;column-gap:14px}
  .gx-flow li>:not(.gx-num){grid-column:2}
  .gx-flow .gx-num{grid-row:1 / span 3;margin:0}
  .gx-one-diagram{grid-template-columns:1fr;gap:10px;justify-items:stretch}
  .gx-factories{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gx-factories span:last-child{grid-column:1 / -1}
  .gx-lines{display:none}
  .gx-arrow{width:20px;height:28px;justify-self:center;transform:rotate(90deg)}
  .gx-hub{position:relative;margin-top:26px}
  .gx-hub::before{content:"↓";position:absolute;top:-30px;left:50%;transform:translateX(-50%);color:var(--gx-gold)}
  .gx-split{grid-template-columns:1fr}
  .gx-faq summary{font-size:15px}
}
@media(prefers-reduced-motion:reduce){.gx-faq summary::after{transition:none}}
