/* Directory map */
.ag-viewswitch { display: inline-flex; gap: 4px; padding: 4px; border-radius: 999px; background: rgba(127, 127, 127, .14); margin: 0 0 16px; }
.ag-viewswitch button { border: 0; background: none; padding: 8px 18px; border-radius: 999px; font: inherit; cursor: pointer; color: inherit; }
.ag-viewswitch button.is-on { background: var(--ag-accent, #b08d57); color: #17120a; font-weight: 600; }
.ag-map[hidden], .ag-grid[hidden], .ag-pager[hidden] { display: none !important; }
.ag-map__stage { position: relative; border-radius: 18px; overflow: hidden; background: radial-gradient(circle at 30% 20%, rgba(176, 141, 87, .14), rgba(127, 127, 127, .08)); border: 1px solid rgba(127, 127, 127, .25); }
.ag-map__svg { display: block; width: 100%; height: auto; }
.ag-map__grid line { stroke: rgba(127, 127, 127, .22); stroke-width: 1; }
.ag-map__pin { cursor: pointer; outline: none; }
.ag-map__pin:focus-visible circle, .ag-map__pin:hover circle { stroke: #b08d57; stroke-width: 4; }
.ag-map__count { fill: #fff; font: 700 14px/1 sans-serif; }
.ag-map__label { fill: currentColor; font: 12px/1 sans-serif; paint-order: stroke; stroke: rgba(255, 255, 255, .8); stroke-width: 3px; opacity: .85; }
.ag-map__scale line { stroke: currentColor; stroke-width: 2; }
.ag-map__scale text { fill: currentColor; font: 12px sans-serif; }
.ag-map__empty { fill: currentColor; font: 16px sans-serif; opacity: .7; }
.ag-map__card { position: absolute; left: 14px; bottom: 14px; max-width: min(360px, calc(100% - 28px)); display: grid; gap: 4px; padding: 14px 16px; border-radius: 14px; background: #fff; color: #231f1a; box-shadow: 0 14px 40px rgba(0, 0, 0, .25); }
.ag-map__card[hidden] { display: none; }
.ag-map__card em { font-style: normal; font-size: 13px; opacity: .75; }
.ag-map__card .ag-btn { justify-self: start; margin-top: 6px; }
.ag-map__list { margin: 14px 0 0; padding: 0; list-style: none; display: grid; gap: 6px; font-size: 14px; }
