/* Global Offices: premium page-specific skin layered on the shared Mega Fortris system. */
.page-global-offices{--office-bg:#f6f8fb;--office-ink:#11223b;--office-line:#e3e9f0;--office-subtle:#61738a;background:#fff}
.page-global-offices em{font-style:normal;color:var(--brand-red)}
.offices-hero{color:#fff;background:radial-gradient(ellipse at 95% 15%,#164b6f 0,transparent 32%),radial-gradient(ellipse at 40% 120%,#1b3851,transparent 44%),linear-gradient(116deg,#061322,#092840 95%);position:relative;overflow:hidden}
.offices-hero:before{content:"";position:absolute;width:560px;height:560px;right:-135px;top:-200px;border:1px solid rgba(103,180,226,.16);border-radius:50%;box-shadow:0 0 0 85px rgba(75,139,191,.035),0 0 0 175px rgba(75,139,191,.025);pointer-events:none}
.offices-hero__layout{display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(30px,5vw,95px);align-items:center;padding-block:clamp(70px,8vw,116px)}
.offices-eyebrow,.offices-kicker{color:#90a8bd;letter-spacing:.22em;font-size:11px;font-weight:820;text-transform:uppercase}
.offices-eyebrow span{display:inline-block;width:26px;height:1px;background:var(--brand-red);vertical-align:middle;margin:0 10px}
.offices-hero h1{font-size:clamp(54px,6.5vw,91px);line-height:1.02;font-weight:390;letter-spacing:-.065em;margin:20px 0 25px}
.offices-hero h1 em{color:#fff;opacity:.8}
.offices-hero__copy>p{font-size:clamp(16px,1.35vw,19px);line-height:1.7;color:#b8c9d8;max-width:610px;margin:0 0 27px}
.offices-hero__actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.offices-outline-link{font-weight:750;font-size:14px;color:#fff;display:inline-flex;gap:14px;align-items:center}
.offices-outline-link:hover{color:#ff7580}
.offices-hero__footnote{color:#8a9fb2;font-size:11px;line-height:1.7;max-width:550px;margin-top:34px}
.offices-hero__summary{background:rgba(6,24,43,.7);border:1px solid rgba(153,198,232,.2);border-radius:19px;padding:clamp(20px,2.6vw,34px);box-shadow:0 30px 60px rgba(0,0,0,.18);backdrop-filter:blur(15px);position:relative}
.offices-hero__numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;border-bottom:1px solid rgba(170,191,205,.18);padding-bottom:24px}
.offices-hero__numbers strong{font-size:clamp(30px,3.6vw,48px);font-weight:420;letter-spacing:-.055em;line-height:1.1;display:block}
.offices-hero__numbers span{font-size:11px;color:#a7bdcf;display:block;margin-top:8px}
.office-live-preview{padding-top:18px}
.office-live-preview__header{font-size:10px;letter-spacing:.18em;color:#adc6d9;display:flex;align-items:center;gap:9px;font-weight:790;margin-bottom:8px}
.office-live-preview__header small{letter-spacing:0;font-size:10px;font-weight:400;margin-left:auto;color:#7592ac}
.office-live-indicator{display:inline-block;height:7px;width:7px;border-radius:50%;background:#22c6a6;box-shadow:0 0 0 4px rgba(34,198,166,.12)}
.office-live-row{padding:12px 2px;display:grid;grid-template-columns:1fr auto 96px;gap:8px;align-items:center;border-bottom:1px solid rgba(170,191,205,.12)}
.office-live-row:last-child{border-bottom:0}.office-live-row span{font-size:14px;color:#e5eff8}.office-live-row strong{font-size:20px;letter-spacing:-.035em;font-weight:540}.office-live-row small{text-align:right;font-size:11px;color:#adc2d4}
.offices-map-section{padding:clamp(66px,7vw,106px) 0 88px;background:var(--office-bg)}
.offices-section-head{display:flex;justify-content:space-between;gap:32px;align-items:flex-end;margin-bottom:28px}
.offices-section-head h2{font-size:clamp(37px,4.2vw,61px);letter-spacing:-.055em;line-height:1.1;font-weight:480;margin:13px 0 13px;color:var(--office-ink)}
.offices-section-head p{font-size:15px;line-height:1.7;color:#6d7e92;max-width:600px;margin:0}
.offices-map-meta{display:flex;gap:14px;flex-wrap:wrap;align-items:center;justify-content:flex-end;color:#63768b;font-size:12px;white-space:nowrap}
.offices-map-meta #mapUtcClock{color:#143a56;font-weight:750;margin-right:6px}
.legend-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin:0 5px 0 10px;vertical-align:middle}
.legend-dot.is-day{background:#26d0b3}.legend-dot.is-twilight{background:#efb953}.legend-dot.is-night{background:#719dca}
.map-filterbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:15px}
.map-filterbar__label{font-size:10px;letter-spacing:.17em;font-weight:850;color:#63778c}
.map-region-filters{display:flex;flex-wrap:wrap;gap:4px}
.map-region-filters button{border:1px solid transparent;background:transparent;border-radius:100px;padding:8px 14px;color:#52677d;font-size:12px;font-weight:750;min-height:38px}
.map-region-filters button[aria-pressed="true"]{background:#0b2842;color:#fff;box-shadow:0 5px 14px #0b28421a}
.map-region-filters button:hover:not([aria-pressed="true"]){border-color:#cdd8e3;background:#fff}
.world-map{width:100%;aspect-ratio:2/1;position:relative;overflow:hidden;border-radius:20px;background:#092038;box-shadow:0 22px 40px rgba(11,31,59,.12);isolation:isolate;outline:1px solid #123954}
.world-map__land,.world-map__light,.world-map__markers{position:absolute;inset:0;width:100%;height:100%}
.world-map__land{object-fit:fill}.world-map__light{pointer-events:none;opacity:.65;z-index:1}.world-map__markers{pointer-events:none;z-index:2}
.map-marker{pointer-events:auto;position:absolute;width:16px;height:16px;transform:translate(-50%,-50%);border-radius:50%;border:2px solid #d8f7ff;background:#12cbae;box-shadow:0 0 0 5px #10c7ac35,0 0 18px #12cbae88;display:flex;align-items:center;justify-content:center;z-index:1;padding:0;color:#fff;cursor:pointer;transition:transform .15s,box-shadow .15s}
.map-marker[data-phase="night"]{background:#86addd;box-shadow:0 0 0 5px #86addd30,0 0 17px #86addd64}.map-marker[data-phase="twilight"]{background:#f2b94c;box-shadow:0 0 0 5px #f2b94c33}
.map-marker.is-group{width:24px;height:24px;font-size:10px;font-weight:850}.map-marker:hover,.map-marker:focus-visible,.map-marker.is-active{transform:translate(-50%,-50%) scale(1.3);z-index:3;box-shadow:0 0 0 7px #d7f3ff52,0 0 20px #98e8ff9c}
.map-marker.is-faded{opacity:.12;pointer-events:none}
.world-map__tooltip{position:absolute;z-index:5;background:#fff;color:#15283b;box-shadow:0 20px 50px rgba(0,0,0,.28);border:1px solid #dbe6ed;border-radius:13px;max-width:min(350px,75vw);width:300px;max-height:260px;overflow:auto;padding:16px 17px;pointer-events:auto}
.world-map__tooltip strong{font-size:14px;line-height:1.4;display:block}.world-map__tooltip small{color:#6b7c8d;display:block;font-size:11px;margin:4px 0 10px}.world-map__tooltip a{display:block;padding:9px 0;border-top:1px solid #e6ebf0;color:#142f4b;font-size:12px;font-weight:740}.world-map__tooltip a:hover{color:var(--brand-red)}.world-map__tooltip .tooltip-time{font-size:11px;color:#52717f}
.world-map__corner{position:absolute;top:20px;left:22px;z-index:2;color:#d7edf7;background:rgba(4,17,30,.65);border:1px solid #42647b9c;border-radius:100px;padding:9px 16px;display:flex;align-items:center;gap:9px;font-size:9px;letter-spacing:.12em;font-weight:700;pointer-events:none}
.world-map__corner-sep{opacity:.4}
.world-map__annotation{position:absolute;right:20px;bottom:17px;z-index:2;color:#afd0de;font-size:10px;letter-spacing:.02em;pointer-events:none}
.offices-map-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:17px;font-size:12px;color:#597088}
.offices-map-bottom strong{font-size:16px;color:#173d57}.offices-subtle{color:#93a1ad}
.offices-directory-section{padding:clamp(60px,7vw,100px) 0 85px;background:#fff}
.directory-tools{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:35px 0 18px}
.directory-search{display:flex;align-items:center;gap:10px;border:1px solid #dce5ec;border-radius:12px;min-height:54px;padding:0 16px;flex:1 1 360px;background:#f9fbfd}
.directory-search>span{font-size:27px;color:#8899aa}.directory-search input{border:0;background:transparent;outline:0;min-width:0;flex:1;font-size:14px;color:#123}.directory-search kbd{border:1px solid #d7e0e8;border-radius:4px;font-size:12px;padding:1px 6px;color:#8498a9}
.directory-actions{display:flex;gap:12px;flex-wrap:wrap}
.directory-actions label{font-size:11px;font-weight:800;color:#5e7185;display:flex;gap:9px;align-items:center}
.directory-actions select{min-height:51px;border:1px solid #dce5ec;border-radius:12px;background:#fff;padding:0 12px;color:#233c53;max-width:195px;font-size:12px;font-weight:650}
.directory-summary{display:flex;gap:15px;align-items:center;justify-content:space-between;margin-bottom:19px;font-size:12px;color:#79899b;letter-spacing:.02em;font-weight:700}
.directory-summary button{border:0;background:none;color:var(--brand-red);font-size:12px;font-weight:780}
.office-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.office-card{border:1px solid #e0e8ef;border-radius:15px;background:#fff;box-shadow:0 6px 21px rgba(11,31,59,.035);padding:23px;display:flex;flex-direction:column;gap:0;min-width:0;transition:border-color .15s,box-shadow .15s}
.office-card:target,.office-card.is-highlighted{border-color:var(--brand-red);box-shadow:0 0 0 3px rgba(230,0,18,.08),0 9px 30px rgba(11,31,59,.08)}
.office-card__top{display:flex;justify-content:space-between;align-items:flex-start;gap:9px}.office-card__country{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#677f94;font-weight:850}.office-card__flag{display:inline-flex;align-items:center;border-radius:40px;padding:5px 9px;background:#eff4f7;font-size:10px;font-weight:790;color:#4a6580}
.office-card h3{font-size:19px;line-height:1.3;letter-spacing:-.035em;color:#13283e;margin:12px 0 8px;font-weight:760;overflow-wrap:anywhere}.office-card__place{font-size:13px;color:#6b7c8d;margin-bottom:13px}
.office-card__address{font-size:13px;line-height:1.6;color:#5b6f84;margin:0 0 18px;flex:1}
.office-card__time{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#f5f9fc;padding:11px 13px;border-radius:9px;margin-bottom:10px}
.office-card__time strong{font-size:22px;font-weight:500;letter-spacing:-.035em;color:#183d56}.office-card__time span{font-size:11px;color:#5e7589;text-align:right;line-height:1.4}.office-card__tz{font-size:11px;color:#8291a2;margin-bottom:18px;display:flex;justify-content:space-between;gap:9px}
.office-card__tz strong{color:#546e84;font-weight:750}.office-card__links{display:flex;gap:14px;flex-wrap:wrap;border-top:1px solid #e8eef3;padding-top:15px;margin-top:auto}
.office-card__links a{font-size:12px;color:#17374f;font-weight:770}.office-card__links a:hover{color:var(--brand-red)}
.office-directory-empty{padding:30px;border-radius:10px;background:#f6f8fb;color:#64768a}
.office-facts{padding:40px 0;background:#edf4f8;border-top:1px solid #dae5ed}.office-facts__inner{display:grid;grid-template-columns:50px minmax(0,1fr) auto;gap:20px;align-items:center}.office-facts__icon{font-size:38px;color:#0d5a81}.office-facts h2{font-size:21px;letter-spacing:-.03em;margin:0 0 7px;color:#19364d}.office-facts p{color:#63798b;margin:0;font-size:12px;line-height:1.65;max-width:960px}.office-facts a{color:#174564;font-size:12px;font-weight:800;white-space:nowrap}
@media(max-width:1120px){.office-directory{grid-template-columns:repeat(2,minmax(0,1fr))}.offices-map-meta{justify-content:flex-start}.offices-section-head{align-items:flex-start;flex-direction:column}.offices-hero__layout{grid-template-columns:1fr .85fr;gap:35px}.office-facts__inner{grid-template-columns:50px 1fr}.office-facts a{grid-column:2}}
@media(max-width:850px){.offices-hero__layout{grid-template-columns:1fr}.offices-hero__summary{max-width:680px;width:100%}.directory-search{flex-basis:100%}.world-map{border-radius:13px}.map-region-filters{gap:2px}.map-region-filters button{font-size:11px;padding:6px 9px}}
@media(max-width:680px){.offices-hero__layout{padding-block:55px}.offices-hero h1{font-size:clamp(50px,13vw,66px)}.offices-hero__numbers span{font-size:10px}.offices-hero__numbers strong{font-size:33px}.offices-section-head h2{font-size:39px}.map-region-filters{overflow-x:auto;flex-wrap:nowrap;max-width:100%;width:100%;padding-bottom:3px}.map-region-filters button{white-space:nowrap}.world-map{aspect-ratio:1.35;min-height:290px}.world-map__land,.world-map__light,.world-map__markers{top:0;width:100%;height:100%}.world-map__corner{top:9px;left:9px;font-size:8px;padding:7px 10px;gap:5px}.world-map__annotation{right:9px;bottom:8px;font-size:8px;max-width:180px;text-align:right}.world-map__tooltip{width:220px;max-height:220px;padding:11px}.office-directory{grid-template-columns:1fr}.directory-actions{width:100%}.directory-actions label{flex:1 1 135px;align-items:flex-start;flex-direction:column}.directory-actions select{width:100%;max-width:none}.offices-map-bottom>div:last-child{display:none}.office-facts__inner{grid-template-columns:1fr}.office-facts a{grid-column:auto}}
@media(max-width:390px){.office-live-row{grid-template-columns:1fr 73px 83px}.office-live-row strong{font-size:17px}.offices-hero__numbers{gap:4px}.offices-hero__numbers strong{font-size:29px}}
/* Prevent search-field intrinsic width from overflowing narrow (320px) screens. */
.directory-search{min-width:0;max-width:100%}
.directory-search input{width:0;min-width:0}

/* DST is an independent marker attribute, separate from solar day/night color. */
.map-marker[data-dst="active"]{outline:1.5px dashed #ff8c92;outline-offset:6px}
