/* XAN Office v1.3.10.91.32 — XAN 360 Final Stabilization / Visual Consistency 37.0 */
body.xan-network-final-stability-v1311032{
  --x32-petrol:#03475D;
  --x32-orange:#F94301;
  --x32-ink:#0B2E3D;
  --x32-text:#31515D;
  --x32-muted:#607983;
  --x32-line:#D8E4E9;
  --x32-soft:#F5F8F9;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

/* Final typography guard: no optical weight jump on interactive network surfaces. */
body.xan-network-final-stability-v1311032 :where(
  .xan-network-directory-v1311013,.xan-profile-center-v1311022,.xan-office-center-v1311023,
  .xan-map-page-v186,.xan-account-page-v1311017,.xan-account-page-v1311029
) :where(a,button,input,select,textarea,summary){
  font-synthesis:none!important;
}
body.xan-network-final-stability-v1311032 :where(
  .xan-network-subnav-v1311011 a,.xan-office-city-nav-v1311014 a,.xan-btn,
  .xan-network-person-actions-v1311013 a,.xan-network-office-actions-v1311013 a,
  .xan-map-toolbar-v151 a,.xan-map-toolbar-v151 button
):is(:hover,:focus,:active){
  font-weight:500!important;
}

/* Hero/KPI: child-count aware. Three metrics no longer leave a fourth empty visual column. */
body.xan-network-final-stability-v1311032 .xan-network-hero-metrics-v177{
  grid-auto-flow:initial!important;
  grid-template-columns:repeat(auto-fit,minmax(96px,1fr))!important;
  width:min(100%,520px)!important;
}
body.xan-network-final-stability-v1311032 .xan-network-hero-grid-v177{
  min-height:0!important;
}
body.xan-network-final-stability-v1311032 .xan-network-hero-v177 h1,
body.xan-network-final-stability-v1311032 .xan-office-city-hero-v1311014 h1{
  text-wrap:balance;
}

/* City/sub navigation: stable contrast in hover/focus/active and compact horizontal flow. */
body.xan-network-final-stability-v1311032 .xan-office-city-nav-v1311014{
  scrollbar-width:thin!important;
  overscroll-behavior-inline:contain!important;
}
body.xan-network-final-stability-v1311032 .xan-office-city-nav-v1311014 a:is(:hover,:focus-visible,:active,.is-active,[aria-current="page"]),
body.xan-network-final-stability-v1311032 .xan-network-subnav-v1311011 a:is(:hover,:focus-visible,:active,.is-active,[aria-current="page"]){
  background:var(--x32-petrol)!important;
  border-color:var(--x32-petrol)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  outline:none!important;
}
body.xan-network-final-stability-v1311032 .xan-office-city-nav-v1311014 a:is(:hover,:focus-visible,:active,.is-active,[aria-current="page"]) :where(span,small,strong,svg),
body.xan-network-final-stability-v1311032 .xan-network-subnav-v1311011 a:is(:hover,:focus-visible,:active,.is-active,[aria-current="page"]) :where(span,small,strong,svg){
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  fill:currentColor!important;
}
body.xan-network-final-stability-v1311032 .xan-office-city-nav-v1311014 a:is(:hover,:focus-visible,:active,.is-active,[aria-current="page"]) small{
  background:var(--x32-orange)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

/* Consultant/Broker cards: same grid rhythm, same media canvas, same footer baseline. */
body.xan-network-final-stability-v1311032 .xan-network-person-grid-v1311013{
  align-items:stretch!important;
  grid-auto-rows:1fr!important;
}
body.xan-network-final-stability-v1311032 .xan-network-person-card-v1311013{
  height:100%!important;
  min-width:0!important;
}
body.xan-network-final-stability-v1311032 .xan-network-person-media-v1311013{
  flex:0 0 auto!important;
  overflow:hidden!important;
}
body.xan-network-final-stability-v1311032 .xan-network-person-media-v1311013 img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
  transition:none!important;
}
body.xan-network-final-stability-v1311032 .xan-network-person-body-v1311013{
  min-height:0!important;
}
body.xan-network-final-stability-v1311032 .xan-network-person-actions-v1311013{
  margin-top:auto!important;
}
body.xan-network-final-stability-v1311032 .xan-network-person-contact-v1311013>a[href^="mailto:"]{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

/* Office Center: compact empty states and stable side column. */
body.xan-network-final-stability-v1311032 .xan-office-center-empty-v1311023{
  margin:0!important;
  min-height:0!important;
  padding:10px 12px!important;
  color:#4E6872!important;
  background:#F5F8F9!important;
  border:1px solid #E4ECEF!important;
}
body.xan-network-final-stability-v1311032 .xan-office-center-side-v1311023{
  align-self:start!important;
}
body.xan-network-final-stability-v1311032 .xan-office-center-side-card-v1311023 h2{
  overflow-wrap:anywhere!important;
}
body.xan-network-final-stability-v1311032 .xan-office-center-team-grid-v1311023>a{
  min-width:0!important;
}
body.xan-network-final-stability-v1311032 .xan-office-center-team-image-v1311023{
  overflow:hidden!important;
  background:#F1F6F7!important;
}
body.xan-network-final-stability-v1311032 .xan-office-center-team-image-v1311023 img,
body.xan-network-final-stability-v1311032 .xan-office-center-manager-image-v1311023 img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
}

/* Map: final first-screen density and detail consistency; no data/DOM contract changes here. */
body.xan-network-final-stability-v1311032 .xan-map-page-v186 .xan-map-hero-inner-v151{
  min-height:0!important;
}
body.xan-network-final-stability-v1311032 .xan-map-page-v186 .xan-map-detail-v152{
  overflow-x:hidden!important;
}
body.xan-network-final-stability-v1311032 .xan-map-page-v186 .xan-map-detail-image-v152 img{
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
}
body.xan-network-final-stability-v1311032 .xan-map-page-v186 .xan-map-result-thumb-v151 img{
  object-fit:contain!important;
  object-position:center!important;
}
body.xan-network-final-stability-v1311032 .xan-map-page-v186 .xan-map-result-v151,
body.xan-network-final-stability-v1311032 .xan-map-page-v186 .xan-map-result-v180,
body.xan-network-final-stability-v1311032 .xan-map-page-v186 .xan-map-result-v1310995{
  transform:none!important;
}
body.xan-network-final-stability-v1311032 .xan-map-page-v186 .xan-map-ecosystem-tabs-v131036 :where(a,span):is(:hover,:focus-visible,.is-active){
  border-color:var(--x32-petrol)!important;
}
body.xan-network-final-stability-v1311032 .xan-map-page-v186 .xan-map-ecosystem-tabs-v131036 .is-active,
body.xan-network-final-stability-v1311032 .xan-map-page-v186 .xan-map-ecosystem-tabs-v131036 .is-active *{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  fill:currentColor!important;
}

/* Account final layout guard. */
body.xan-network-final-stability-v1311032 :where(.xan-account-page-v1311017,.xan-account-page-v1311029) :where(h1,h2,h3){
  text-wrap:balance;
}
body.xan-network-final-stability-v1311032 :where(.xan-account-page-v1311017,.xan-account-page-v1311029) a:focus-visible,
body.xan-network-final-stability-v1311032 :where(.xan-network-directory-v1311013,.xan-profile-center-v1311022,.xan-office-center-v1311023,.xan-map-page-v186) a:focus-visible{
  outline:2px solid rgba(249,67,1,.72)!important;
  outline-offset:2px!important;
}

@media(min-width:1181px){
  body.xan-network-final-stability-v1311032 .xan-network-person-grid-v1311013{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
  }
  body.xan-network-final-stability-v1311032 .xan-network-person-media-v1311013{
    height:214px!important;
    aspect-ratio:auto!important;
  }
  body.xan-network-final-stability-v1311032 .xan-map-page-v186.is-xan-density-desktop-v1311031 .xan-map-results-v151{
    min-height:0!important;
  }
}
@media(min-width:821px) and (max-width:1180px){
  body.xan-network-final-stability-v1311032 .xan-network-person-grid-v1311013{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:10px!important;
  }
  body.xan-network-final-stability-v1311032 .xan-network-person-media-v1311013{
    aspect-ratio:1 / 1!important;
    height:auto!important;
  }
}
@media(min-width:561px) and (max-width:820px){
  body.xan-network-final-stability-v1311032 .xan-network-person-grid-v1311013{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
  }
  body.xan-network-final-stability-v1311032 .xan-network-person-media-v1311013{
    aspect-ratio:1 / 1!important;
    height:auto!important;
  }
}
@media(max-width:820px){
  body.xan-network-final-stability-v1311032 .xan-network-hero-metrics-v177{
    width:100%!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.xan-network-final-stability-v1311032 .xan-map-page-v186 .xan-map-detail-v152{
    max-width:none!important;
  }
}
@media(max-width:560px){
  body.xan-network-final-stability-v1311032 .xan-network-person-grid-v1311013{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  body.xan-network-final-stability-v1311032 .xan-network-person-media-v1311013{
    width:calc(100% - 14px)!important;
    margin:7px 7px 0!important;
    aspect-ratio:1 / 1!important;
    height:auto!important;
  }
  body.xan-network-final-stability-v1311032 .xan-network-hero-metrics-v177>div{
    min-width:0!important;
  }
}
@media(hover:none),(pointer:coarse){
  body.xan-network-final-stability-v1311032 :where(
    .xan-network-person-card-v1311013,.xan-network-office-card-v1311013,.xan-network-office-card-v1311014,
    .xan-map-result-v151,.xan-map-result-v180,.xan-map-result-v1310995
  ):hover{
    transform:none!important;
  }
}
@media(prefers-reduced-motion:reduce){
  body.xan-network-final-stability-v1311032 *,
  body.xan-network-final-stability-v1311032 *::before,
  body.xan-network-final-stability-v1311032 *::after{
    scroll-behavior:auto!important;
    transition-duration:.01ms!important;
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
  }
}
