.hm-svg{display:block;width:100%;height:auto;overflow:hidden}
.hm-fr{fill:var(--hline,rgba(29,29,27,.14));opacity:.55}
.hm-d path{fill:var(--surface,#fff);stroke:var(--ink,#1d1d1b);stroke-width:1.6;stroke-linejoin:round;
  transition:fill .45s cubic-bezier(.16,1,.3,1),stroke .45s cubic-bezier(.16,1,.3,1),fill-opacity .45s ease}
a.hm-d{cursor:pointer;outline:none}
a.hm-d:hover path,.hm-d.is-on path,.hm-d.is-active path{fill:var(--gold,#B8965A);fill-opacity:.24;stroke:var(--gold,#B8965A)}
.hm-d.is-active path{fill-opacity:.34}
.hm-lbl{font-family:var(--sans,'Neue Montreal',sans-serif);font-size:30px;font-weight:500;letter-spacing:.06em;text-anchor:middle;dominant-baseline:middle;
  fill:var(--ink,#1d1d1b);paint-order:stroke;stroke:var(--surface,#fff);stroke-width:8px;stroke-linejoin:round;
  opacity:0;transform:translateY(8px);transform-box:fill-box;transition:opacity .35s ease,transform .5s cubic-bezier(.16,1,.3,1);pointer-events:none}
.hm-lbl.is-on,.hm-lbl.is-active{opacity:1;transform:none}
.hm-sea{font-family:var(--serif,Georgia,serif);font-style:italic;font-weight:300;font-size:34px;letter-spacing:.14em;fill:var(--ink-300,#9a9a96);text-anchor:middle}
.hm-land{font-family:var(--sans,'Neue Montreal',sans-serif);font-size:22px;font-weight:500;letter-spacing:.34em;text-transform:uppercase;fill:var(--ink-300,#9a9a96);text-anchor:middle}
.hm-n path{fill:var(--gold,#B8965A)}
.hm-n text,.hm-scale text{font-family:var(--sans,'Neue Montreal',sans-serif);font-size:22px;font-weight:500;letter-spacing:.14em;fill:var(--ink-400,#6b6b68);text-anchor:middle}
.hm-scale path{fill:none;stroke:var(--ink-400,#6b6b68);stroke-width:1.6}
/* Pin — a gold point with a slow ring, and its label */
.hm-pin circle.core{fill:var(--gold,#B8965A);stroke:var(--surface,#fff);stroke-width:5}
.hm-pin circle.ring{fill:none;stroke:var(--gold,#B8965A);stroke-width:2;transform-box:fill-box;transform-origin:center;animation:hmPing 2.6s cubic-bezier(.16,1,.3,1) infinite}
.hm-pin text{font-family:var(--sans,'Neue Montreal',sans-serif);font-size:28px;font-weight:500;letter-spacing:.08em;fill:var(--ink,#1d1d1b);paint-order:stroke;stroke:var(--surface,#fff);stroke-width:8px;stroke-linejoin:round}
@keyframes hmPing{0%{transform:scale(.6);opacity:.9}100%{transform:scale(2.6);opacity:0}}
/* Mini map (property, project, office): bigger type, no scale bar */
.hm-mini .hm-lbl{font-size:50px;stroke-width:12px}
.hm-mini .hm-sea{font-size:44px}
.hm-mini .hm-scale,.hm-mini .hm-land{display:none}
.hm-mini .hm-d path{stroke-width:2.4}
.hm-mini .hm-pin text{font-size:40px;stroke-width:11px}
.hm-mini .hm-pin circle.core{r:15px}
/* Outlines draw themselves in when a .hm-draw wrapper scrolls into view
   (.hm-in is added by the observer below — no page script needed) */
.hm-draw .hm-d path{stroke-dasharray:1;stroke-dashoffset:1;fill-opacity:0}
.hm-draw.hm-in .hm-d path{stroke-dashoffset:0;fill-opacity:1;
  transition:stroke-dashoffset 1.8s cubic-bezier(.65,0,.35,1),fill-opacity .8s ease 1.2s,fill .45s ease,stroke .45s ease}
.hm-draw.hm-in a.hm-d:hover path,.hm-draw.hm-in .hm-d.is-on path{fill-opacity:.24}
.hm-draw.hm-in .hm-d.is-active path{fill-opacity:.34}
.hm-draw .hm-pin,.hm-draw .hm-lbl.is-active{opacity:0;transition:opacity .6s ease 1.4s}
.hm-draw.hm-in .hm-pin,.hm-draw.hm-in .hm-lbl.is-active{opacity:1}
@media (prefers-reduced-motion: reduce){
  .hm-draw .hm-d path{stroke-dasharray:none;stroke-dashoffset:0;fill-opacity:1}
  .hm-draw .hm-pin,.hm-draw .hm-lbl.is-active{opacity:1;transition:none}
  .hm-lbl{transition:none;transform:none}
  .hm-pin circle.ring{animation:none;opacity:0}
}
/* Captioned mini map */
.brg-minimap{margin:0;display:grid;gap:14px;max-width:360px}
.brg-minimap-cap{display:flex;flex-direction:column;gap:6px}
.brg-minimap-eye{font-family:var(--sans,'Neue Montreal',sans-serif);font-size:.62rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--gold,#B8965A)}
.brg-minimap-name{font-family:var(--serif,Georgia,serif);font-weight:300;font-size:1.35rem;line-height:1.2;color:var(--ink,#1d1d1b)}
.brg-minimap-sub{font-family:var(--sans,'Neue Montreal',sans-serif);font-size:.78rem;line-height:1.5;color:var(--ink-400,#6b6b68);font-variant-numeric:tabular-nums}
.brg-minimap-link{font-family:var(--sans,'Neue Montreal',sans-serif);font-size:.66rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--ink,#1d1d1b);text-decoration:none;display:inline-flex;gap:8px;align-items:center}
.brg-minimap-link:hover{color:var(--gold,#B8965A)}
