.dc-atlas{--paper:#f6f6f3;--ink:#101114;--blue:#3155ff;--muted:#585b66;padding:clamp(48px,7vw,100px) 0;background:#eef1f8;color:var(--ink)}
.dc-atlas [hidden]{display:none!important}.dc-atlas *{box-sizing:border-box}.dc-atlas button,.dc-atlas input,.dc-atlas select{font:inherit}.dc-atlas button{cursor:pointer}.dc-atlas :focus-visible{outline:3px solid #6d85ff;outline-offset:4px}.dc-atlas .intro{display:grid;grid-template-columns:1.2fr 1fr;gap:8vw;align-items:end;margin-bottom:36px}.dc-atlas h2{font:800 clamp(34px,4vw,62px)/1.07 var(--font-display,Archivo),sans-serif;letter-spacing:-.045em;margin:0}.dc-atlas h2 span{color:var(--blue)}.dc-atlas .intro>p{font-size:16px;max-width:45ch;color:var(--muted)}
.dc-atlas .toolbar{display:flex;gap:20px;justify-content:space-between;align-items:end;margin-bottom:20px}.dc-atlas .views{display:flex;gap:4px;padding:4px;background:#e0e5f2}.dc-atlas .views button{border:0;background:transparent;padding:12px 18px;color:#282b32}.dc-atlas .views button[aria-pressed=true]{background:var(--blue);color:white}.dc-atlas .filters{display:flex;gap:18px}.dc-atlas .filters label{display:grid;gap:6px;font-size:12px;color:var(--muted)}.dc-atlas input,.dc-atlas select{background:transparent;border:0;border-bottom:1px solid #777e90;padding:10px 4px;color:var(--ink);width:230px;max-width:100%;border-radius:0}
.dc-atlas .explorer{display:grid;grid-template-columns:minmax(0,1fr) 300px;min-height:590px;border:1px solid #c9cfdf;background:var(--paper)}.dc-atlas .map{position:relative;min-height:590px;background:#101a31;overflow:hidden;isolation:isolate}.dc-atlas .map svg{position:absolute;inset:0;width:100%;height:100%}.dc-atlas .land{fill:#263454;stroke:#677798;stroke-width:.9;vector-effect:non-scaling-stroke}.dc-atlas .grid-line{stroke:#7184b2;stroke-width:.6;opacity:.13}.dc-atlas .map-label{fill:#a1afc9;font:11px Poppins,sans-serif;letter-spacing:2px;pointer-events:none}.dc-atlas .map-label.major{fill:#d4dced;letter-spacing:0}
.dc-atlas .pin{position:absolute;transform:translate(-50%,-50%);min-width:36px;height:36px;border:2px solid #d7e0ff;border-radius:50%;background:#4265ff;color:#fff;box-shadow:0 0 0 6px #3155ff1a;padding:0 6px;font:600 12px Poppins,sans-serif;z-index:2}.dc-atlas .pin.single{width:32px;min-width:32px;height:32px}.dc-atlas .pin.single:after{content:'';display:block;width:7px;height:7px;background:white;border-radius:50%;margin:auto}.dc-atlas .pin:hover,.dc-atlas .pin.active{background:white;color:var(--blue);box-shadow:0 0 0 8px #3155ff55;z-index:3}.dc-atlas .pin.single:hover:after,.dc-atlas .pin.single.active:after{background:var(--blue)}.dc-atlas .map-title{position:absolute;top:24px;left:24px;color:#e5ebff;font-size:11px;letter-spacing:2px;text-transform:uppercase;pointer-events:none}.dc-atlas .map-help{position:absolute;bottom:48px;left:24px;color:#bbc8e2;font-size:11px;right:60px;pointer-events:none}.dc-atlas .credits{position:absolute;bottom:14px;left:24px;font-size:9px;color:#a3b0c9}.dc-atlas .zoom{position:absolute;right:16px;bottom:16px;display:grid;gap:4px;z-index:4}.dc-atlas .zoom button{border:1px solid #67799f;background:#17233e;color:#fff;width:40px;height:40px;font-size:20px}
.dc-atlas .sidebar{padding:24px;display:flex;flex-direction:column;gap:18px;min-width:0}.dc-atlas .selection{min-height:220px;border-bottom:1px solid #c9cfdf;padding-bottom:18px}.dc-atlas .selection img{display:block;max-width:200px;max-height:65px;width:auto;height:auto;object-fit:contain;margin:5px 0 20px}.dc-atlas .selection h3{font:750 24px/1.2 var(--font-display,Archivo),sans-serif;letter-spacing:-.02em;margin:0 0 8px}.dc-atlas .selection p{margin:5px 0;font-size:12px;color:var(--muted)}.dc-atlas .source{display:inline-block;margin-top:12px;font-size:12px;text-underline-offset:4px}.dc-atlas .list-head{display:flex;justify-content:space-between;gap:10px;font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}.dc-atlas .client-list{max-height:270px;overflow-y:auto;margin:0;padding:0;list-style:none}.dc-atlas .client-list button{display:block;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid #d4d8e0;padding:12px 4px;color:var(--ink);font-size:12px}.dc-atlas .client-list button[aria-pressed=true]{color:#203fce;font-weight:600}.dc-atlas .client-list small{display:block;color:var(--muted);font-size:11px}.dc-atlas .caption{display:flex;justify-content:space-between;gap:25px;padding:15px 0;font-size:11px;color:var(--muted)}.dc-atlas .caption p{margin:0}.dc-atlas details{font-size:11px;color:var(--muted)}.dc-atlas summary{cursor:pointer}.dc-atlas-fallback{columns:3;column-gap:32px;padding:0;list-style:none}.dc-atlas-fallback li{break-inside:avoid;padding:12px 0;border-top:1px solid #c9cfdf;font-size:14px}.dc-atlas-fallback small{display:block;color:var(--muted)}

@media(max-width:1000px){.dc-atlas .toolbar{flex-wrap:wrap}.dc-atlas .explorer{grid-template-columns:minmax(0,1fr) 260px}.dc-atlas .sidebar{padding:20px}}
@media(max-width:700px){.dc-atlas .intro{display:block}.dc-atlas .intro>p{margin-top:22px}.dc-atlas .toolbar{display:block}.dc-atlas .views{width:max-content;margin-bottom:18px}.dc-atlas .views button{padding:10px 12px}.dc-atlas .filters{gap:14px}.dc-atlas .filters label{width:50%;min-width:0}.dc-atlas input,.dc-atlas select{font-size:12px;width:100%}.dc-atlas .explorer{display:flex;flex-direction:column}.dc-atlas .map{min-height:420px}.dc-atlas .selection{min-height:0}.dc-atlas .client-list{max-height:210px}.dc-atlas .caption{display:block}.dc-atlas .caption p+p{margin-top:6px}.dc-atlas .map-title{left:15px;top:18px}.dc-atlas .map-help,.dc-atlas .credits{left:15px}.dc-atlas-fallback{columns:1}}
/* Release 0.9.2 (review item D2): the toolbar, map frame, selected client and list are drawn from first paint, so nothing moves when the script adds the map.
   The plain list of names is for visitors without JavaScript and for a failed data load only. */
html.dc-js .dc-atlas:not(.is-failed) .dc-atlas-fallback{display:none}
html:not(.dc-js) .dc-atlas .toolbar,html:not(.dc-js) .dc-atlas .explorer,html:not(.dc-js) .dc-atlas .caption,.dc-atlas.is-failed .toolbar,.dc-atlas.is-failed .explorer,.dc-atlas.is-failed .caption{display:none}
/* The research note is printed at its longest (every location in view) and hidden until the script has the real count, so the caption keeps its height. */
.dc-atlas #dc-atlas-research-note[data-pending]{visibility:hidden}
