/* About: geographic locations and a concise, balanced closing statement. */
.ab-locations{padding:72px var(--side) 66px;border-top:1px solid #8cb8c92b;background:linear-gradient(145deg,#102f40,#0d2738)}
.ab-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:28px}
.ab-section-heading h2{margin:0;font-size:clamp(35px,4.1vw,62px);line-height:1.05;letter-spacing:-.045em;color:#dcecf3}
.ab-section-heading>div>p{margin:14px 0 0;font-size:16px;line-height:1.5;color:#96b8ca}
.ab-map-selection{display:flex;align-items:center;gap:9px;flex:none;margin:0;padding:10px 15px;border:1px solid #b4d6e22b;border-radius:30px;color:#d5e8f0;background:#9dc5d30a;font-size:12px;line-height:1.4}
.ab-selection-dot{width:6px;height:6px;border-radius:50%;background:#a8d9e7;box-shadow:0 0 0 4px #a8d9e713}
.ab-map-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,.43fr);gap:0;border:1px solid #a9d0df26;border-radius:22px;overflow:hidden;background:radial-gradient(ellipse at 28% 40%,#244b603d,transparent 65%),#0b2637}
.ab-map-region{min-width:0;margin:0;padding:22px 25px 14px}
.ab-map-region+.ab-map-region{padding-inline:18px;border-left:1px solid #a9d0df26;background:#a4c6d304}
.ab-map-region figcaption{font-size:11px;letter-spacing:.015em;color:#a6c6d6;line-height:1.5;margin-bottom:12px}
.ab-map-region svg{display:block;width:100%;height:auto;overflow:visible}
.ab-land path{stroke:#87b3c259;stroke-width:.75;stroke-linejoin:round;vector-effect:non-scaling-stroke;transition:fill .25s,stroke .25s}
.ab-land path.is-active{fill:#3d7188;stroke:#b2d4df95}
.ab-map-pin{cursor:pointer}
.ab-pin-halo{fill:#badfe716;opacity:0;transition:opacity .2s}
.ab-pin-ring{fill:#0d2c3e;stroke:#abcfd3;stroke-width:2;opacity:.8;transition:fill .2s,stroke .2s,opacity .2s}
.ab-pin-core{fill:#a6cbd8;transition:fill .2s}
.ab-map-pin.is-active .ab-pin-halo{opacity:1}.ab-map-pin.is-active .ab-pin-ring{fill:#cce9ef;stroke:#dfedf0;opacity:1}.ab-map-pin.is-active .ab-pin-core{fill:#19475c}
.ab-map-pin text{font-family:var(--ui);font-size:25px;font-weight:500;fill:#e1edf2;paint-order:stroke;stroke:#102e40;stroke-width:4px;stroke-linejoin:round;opacity:0;pointer-events:none;transition:opacity .2s}
.ab-map-pin.is-active text{opacity:1}
.ab-location-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:20px;border:1px solid #a9d0df24;border-radius:15px;overflow:hidden}
.ab-location-list button{display:flex;align-items:center;gap:12px;min-width:0;min-height:67px;padding:14px 18px;text-align:left;border:0;border-right:1px solid #a9d0df1c;border-bottom:1px solid #a9d0df1c;color:#c8e0eb;background:transparent;font-family:var(--ui);cursor:pointer;transition:background .22s,color .22s}
.ab-location-list button:nth-child(4n){border-right:0}.ab-location-list button:nth-last-child(-n+4){border-bottom:0}
.ab-location-list strong{display:block;font-size:14px;line-height:1.35;font-weight:500}.ab-location-list small{display:block;margin-top:4px;font-size:10px;line-height:1.3;color:#94b6c7}
.ab-location-dot{width:5px;height:5px;flex:none;border:1px solid #91b9ca;border-radius:50%;background:transparent;transition:background .2s,box-shadow .2s}
.ab-location-list button:hover,.ab-location-list button[aria-pressed=true]{background:#9bc8d512;color:#eef9ff}.ab-location-list button[aria-pressed=true] .ab-location-dot{background:#b9e4ef;box-shadow:0 0 0 4px #9fd1e015}
.ab-location-list button:focus-visible{position:relative;outline:2px solid #c2e5f1;outline-offset:-4px}
.ab-mission{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.88fr);align-items:center;gap:clamp(45px,8vw,130px);padding:65px var(--side) 75px;border-top:1px solid #b8d2dc3b;background:#dce9ed;color:#1a455b}
.ab-eyebrow{font-size:11px;line-height:1.4;margin:0 0 20px;color:#4d7488}
.ab-mission h2{font-size:clamp(29px,3.4vw,48px);line-height:1.1;letter-spacing:-.04em;margin:0;max-width:20ch;text-wrap:balance}
.ab-mission-copy .c-block p,.ab-mission-copy .c-block-rich{font-size:16px;line-height:1.85;color:#4c6b7b}
.ab-mission-copy .c-action{color:#1b4b65;border-color:#4c7c9659}.ab-mission-copy .c-action:hover:before{background:#b7d6e5}
@media(max-width:1000px){.ab-locations{padding-top:55px;padding-bottom:50px}.ab-map-grid{grid-template-columns:minmax(0,1fr) minmax(180px,.43fr)}.ab-map-region{padding:18px 16px 12px}.ab-map-region+.ab-map-region{padding-inline:13px}.ab-location-list button{padding:13px}.ab-mission{gap:40px}.ab-mission-copy .c-block p{font-size:15px}}
@media(max-width:700px){
 .ab-locations{padding:43px 22px}.ab-section-heading{display:block;margin-bottom:23px}.ab-section-heading h2{font-size:38px}.ab-section-heading>div>p{font-size:14px;margin-top:10px}.ab-map-selection{width:fit-content;margin-top:18px;padding:8px 12px;font-size:11px}
 .ab-map-grid{display:block;border-radius:14px}.ab-map-region{padding:17px 12px 12px}.ab-map-region+.ab-map-region{padding:17px 12px 12px;border-left:0}
 [data-active-region=us] .ab-region-europe,[data-active-region=europe] .ab-region-us{display:none}
 .ab-map-region svg{height:210px;min-height:0;overflow:hidden}.ab-map-pin text{font-size:30px}
 .ab-location-list{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px;border-radius:12px}.ab-location-list button{min-height:63px;padding:12px 13px;gap:10px}.ab-location-list button:nth-child(4n){border-right:1px solid #a9d0df1c}.ab-location-list button:nth-child(2n){border-right:0}.ab-location-list button:nth-last-child(-n+4){border-bottom:1px solid #a9d0df1c}.ab-location-list button:nth-last-child(-n+2){border-bottom:0}.ab-location-list strong{font-size:13px}.ab-location-list small{font-size:10px}
 .ab-mission{grid-template-columns:1fr;padding:43px 25px 45px;gap:25px}.ab-eyebrow{margin-bottom:13px}.ab-mission h2{font-size:32px;max-width:23ch}.ab-mission-copy .c-block p{font-size:15px;line-height:1.8}.ab-mission-copy .c-block{margin-bottom:22px}
}
@media(prefers-reduced-motion:reduce){.ab-land path,.ab-pin-halo,.ab-pin-ring,.ab-pin-core,.ab-map-pin text,.ab-location-list button,.ab-location-dot{transition:none}}
