/* HomeLynx V7.0.110 — property-detail glass dock + Neo property mode */
body.hlx-property-detail-route{background:#FBFDFC}
.hlx-property-detail-page{position:relative;padding-bottom:132px}
.hlx-pd-stage{position:relative;z-index:1}
/* Back stays where navigation belongs. */
.hlx-pd-back-wrap{position:fixed;top:max(10px,calc(env(safe-area-inset-top,0px) + 8px));left:max(14px,calc(env(safe-area-inset-left,0px) + 14px));z-index:2147481400;pointer-events:none}
.hlx-pd-glass{pointer-events:auto;border:1px solid rgba(255,255,255,.54);background:rgba(250,253,252,.48);backdrop-filter:blur(22px) saturate(150%);-webkit-backdrop-filter:blur(22px) saturate(150%);box-shadow:0 8px 26px rgba(7,29,41,.10),inset 0 1px 0 rgba(255,255,255,.78)}
.hlx-pd-back{width:50px;height:50px;border-radius:999px;display:grid;place-items:center;color:#102A31}
.hlx-pd-back svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.hlx-pd-back:active{transform:scale(.96);background:rgba(255,255,255,.76)}
/* Bottom property utility dock: translucent, compact, always subordinate to the home. */
.hlx-pd-dock{position:fixed;left:50%;bottom:max(12px,calc(env(safe-area-inset-bottom,0px) + 10px));transform:translateX(-50%);z-index:2147481400;width:min(560px,calc(100vw - 24px));min-height:66px;padding:7px 8px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;gap:2px;border:1px solid rgba(255,255,255,.58);border-radius:25px;background:rgba(245,252,250,.38);backdrop-filter:blur(28px) saturate(160%);-webkit-backdrop-filter:blur(28px) saturate(160%);box-shadow:0 16px 42px rgba(7,29,41,.14),inset 0 1px 0 rgba(255,255,255,.82)}
.hlx-pd-dock.is-four{grid-template-columns:repeat(4,minmax(0,1fr))}
.hlx-pd-dock-item{position:relative;min-width:0;min-height:52px;border:0;background:transparent;border-radius:18px;color:#17363b;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font:700 10.5px/1.05 ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"SF Pro Text",sans-serif;letter-spacing:.01em;cursor:pointer;transition:background .16s ease,transform .16s ease,color .16s ease}
.hlx-pd-dock-item:active{transform:scale(.96);background:rgba(255,255,255,.54)}
.hlx-pd-dock-item.is-active{background:rgba(8,169,143,.10);color:#087565}
.hlx-pd-dock-item svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}
.hlx-pd-label{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.hlx-pd-count{position:absolute;top:3px;right:calc(50% - 22px);min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#087f6d;color:#fff;font:800 9px/16px ui-sans-serif,system-ui,sans-serif;text-align:center;box-shadow:0 3px 9px rgba(8,127,109,.22)}
.hlx-pd-count[hidden]{display:none!important}
.hlx-pd-track-slot{width:28px;height:27px;display:grid;place-items:center}
.hlx-pd-track-item{cursor:default}
.hlx-pd-dock .hlx-track-home-detail{width:28px!important;height:28px!important;min-width:28px!important;max-width:28px!important;padding:0!important;border:0!important;border-radius:999px!important;background:transparent!important;box-shadow:none!important;display:grid!important;place-items:center!important;overflow:visible!important}
.hlx-pd-dock .hlx-track-home-detail .hlx-home-track-copy{display:none!important}
.hlx-pd-dock .hlx-track-home-detail .hlx-home-radar{width:26px!important;height:26px!important;flex:0 0 26px!important}
.hlx-pd-dock .hlx-track-home-detail.is-tracked{background:rgba(8,169,143,.12)!important}
.hlx-pd-neo{color:#0b7567}
/* Sheet remains the visual transition between media and intelligence. */
.hlx-pd-sheet{position:relative;z-index:5;margin:-26px -20px 0;padding:0 20px 34px;background:#FBFDFC;border-radius:30px 30px 0 0;box-shadow:0 -11px 32px rgba(7,29,41,.08)}
.hlx-pd-grabber{display:block;width:100%;height:34px;padding:10px 0 8px;cursor:pointer;touch-action:manipulation}
.hlx-pd-grabber span{display:block;width:46px;height:5px;margin:0 auto;border-radius:999px;background:#B9C8C5;box-shadow:inset 0 1px 0 rgba(255,255,255,.76)}
.hlx-pd-provenance{margin:2px 0 18px;padding:10px 0 11px;border-bottom:1px solid rgba(183,204,199,.50);font-size:10.5px;line-height:1.35;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#728589}
.hlx-property-detail-page>.fixture-banner{display:none!important}
.hlx-property-detail-page .v2-hero{margin-top:0}
.hlx-property-detail-page .v3-photo-attr.detail{position:relative;z-index:2;margin-bottom:0}
.hlx-pd-more-sheet{padding:4px 0 10px}.hlx-pd-more-sheet h3{font-size:21px;letter-spacing:-.02em}.hlx-pd-more-menu{display:grid;gap:8px;margin:18px 0}.hlx-pd-more-row{appearance:none;border:1px solid rgba(18,91,84,.12);background:#fff;color:#173136;text-align:left;padding:14px 15px;border-radius:14px;font:700 14px/1.2 ui-sans-serif,system-ui,sans-serif}.hlx-pd-more-note{margin:14px 0 18px;color:#718286}
/* Property mode: Neo no longer roams over the home's media or intelligence. The dock owns discovery. */
body.hlx-property-detail-route .hlx-neo-float{top:auto!important;right:max(8px,calc(env(safe-area-inset-right,0px) + 8px))!important;bottom:max(86px,calc(env(safe-area-inset-bottom,0px) + 84px))!important;gap:0!important}
body.hlx-property-detail-route .hlx-neo-float__dock,body.hlx-property-detail-route .hlx-neo-summon,body.hlx-property-detail-route .hlx-neo-quick{display:none!important}
body.hlx-property-detail-route .hlx-neo-pop{transform-origin:92% 100%}
@media(max-width:1023px){
  body.hlx-property-detail-route #tabbar{display:none!important}
  body.hlx-property-detail-route #view{padding-bottom:112px!important}
  .hlx-pd-dock{width:calc(100vw - 20px);bottom:max(10px,calc(env(safe-area-inset-bottom,0px) + 8px));border-radius:24px}
}
@media(min-width:1024px){
  .hlx-pd-back-wrap{left:calc(232px + 34px);top:24px}
  .hlx-pd-dock{left:calc(50% + 116px);bottom:24px}
  .hlx-pd-sheet{margin-left:-40px;margin-right:-40px;padding-left:40px;padding-right:40px}
}
@media(prefers-reduced-motion:reduce){.hlx-pd-dock-item,.hlx-pd-back{transition:none!important}}
/* Hero is part of the immersive listing shell, not a card floating inside it. */
.hlx-pd-stage>.v2-hero{margin-top:0;margin-left:-20px;margin-right:-20px;border-radius:0 0 28px 28px}
@media(min-width:1024px){.hlx-pd-stage>.v2-hero{margin-left:-40px;margin-right:-40px}}

/* ============ V7.0.110 — optical glass + Neo comes to the plate ============
   Property pages keep the home visually dominant. The dock is now real optical
   glass instead of a frosted white slab; Neo stays docked until explicitly
   summoned, then the actual orb rises into the conversation and returns. */
.hlx-pd-dock{
  isolation:isolate;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.52);
  background:linear-gradient(145deg,rgba(255,255,255,.20),rgba(231,248,244,.095) 56%,rgba(255,255,255,.13));
  -webkit-backdrop-filter:blur(34px) saturate(190%) contrast(104%);
  backdrop-filter:blur(34px) saturate(190%) contrast(104%);
  box-shadow:0 20px 46px rgba(7,29,41,.13),0 4px 14px rgba(7,29,41,.055),inset 0 1px 0 rgba(255,255,255,.86),inset 0 -1px 0 rgba(17,83,77,.075);
}
.hlx-pd-dock::before{
  content:"";
  position:absolute;
  z-index:-1;
  pointer-events:none;
  inset:0;
  border-radius:inherit;
  background:linear-gradient(108deg,rgba(255,255,255,.44) 0%,rgba(255,255,255,.08) 25%,rgba(113,224,205,.055) 58%,rgba(255,255,255,.20) 100%);
  opacity:.72;
}
.hlx-pd-dock::after{
  content:"";
  position:absolute;
  pointer-events:none;
  left:9%;right:9%;top:1px;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),transparent);
  opacity:.72;
}
.hlx-pd-dock-item{color:rgba(16,48,53,.92);text-shadow:0 1px 0 rgba(255,255,255,.56)}
.hlx-pd-dock-item:active{background:rgba(255,255,255,.24)}
.hlx-pd-dock-item.is-active{background:rgba(8,169,143,.085);color:#087565}
.hlx-pd-glass{
  border-color:rgba(255,255,255,.55);
  background:linear-gradient(145deg,rgba(255,255,255,.22),rgba(232,249,245,.10));
  -webkit-backdrop-filter:blur(30px) saturate(185%);
  backdrop-filter:blur(30px) saturate(185%);
  box-shadow:0 12px 30px rgba(7,29,41,.11),inset 0 1px 0 rgba(255,255,255,.84),inset 0 -1px 0 rgba(17,83,77,.07);
}

/* Property-mode Neo: the dock icon is the parked state. The actual Neo orb is
   visually absent until the conversation opens, then rises from the dock line
   into the space above the composer. Its own ring/core motion remains native. */
body.hlx-property-detail-route .hlx-neo-float{
  top:auto!important;
  right:max(9px,calc(env(safe-area-inset-right,0px) + 9px))!important;
  bottom:max(88px,calc(env(safe-area-inset-bottom,0px) + 86px))!important;
  gap:7px!important;
}
body.hlx-property-detail-route .hlx-neo-summon,
body.hlx-property-detail-route .hlx-neo-quick{display:none!important}
body.hlx-property-detail-route .hlx-neo-float__dock{
  display:grid!important;
  opacity:0;
  visibility:hidden;
  pointer-events:none!important;
  transform:translate3d(2px,122px,0) scale(.24);
  transform-origin:75% 100%;
  filter:drop-shadow(0 18px 30px rgba(8,86,76,.05));
  animation:none!important;
  transition:opacity .18s ease,transform .62s cubic-bezier(.16,.88,.20,1.04),filter .42s ease,visibility 0s linear .62s;
}
body.hlx-property-detail-route .hlx-neo-float__orb,
body.hlx-property-detail-route .hlx-neo-float__core{width:72px;height:72px}
body.hlx-property-detail-route .hlx-neo-float__core hlx-neo,
body.hlx-property-detail-route .hlx-neo-float__core .hlx-neo{--neo-size:70px}
body.hlx-property-detail-route .hlx-neo-float[data-neo-open="1"] .hlx-neo-float__dock{
  opacity:1;
  visibility:visible;
  pointer-events:auto!important;
  transform:translate3d(-7px,0,0) scale(1);
  filter:drop-shadow(0 18px 32px rgba(7,76,68,.18));
  transition:opacity .18s ease,transform .62s cubic-bezier(.16,.88,.20,1.04),filter .42s ease,visibility 0s;
}
body.hlx-property-detail-route .hlx-neo-float[data-neo-property-summon="1"] .hlx-neo-float__dock{
  filter:drop-shadow(0 22px 38px rgba(7,103,89,.22));
}
body.hlx-property-detail-route .hlx-neo-pop{
  transform-origin:94% 100%;
  background:rgba(251,255,254,.82);
  border-color:rgba(255,255,255,.64);
  -webkit-backdrop-filter:blur(28px) saturate(165%);
  backdrop-filter:blur(28px) saturate(165%);
  box-shadow:0 24px 64px rgba(7,29,41,.16),inset 0 1px 0 rgba(255,255,255,.86);
}
body.hlx-property-detail-route:has(.hlx-neo-float[data-neo-open="1"]) .hlx-pd-neo{
  color:#087565;
  background:rgba(8,169,143,.09);
}
@media(max-width:560px){
  body.hlx-property-detail-route .hlx-neo-float__orb,
  body.hlx-property-detail-route .hlx-neo-float__core{width:68px;height:68px}
  body.hlx-property-detail-route .hlx-neo-float__core hlx-neo,
  body.hlx-property-detail-route .hlx-neo-float__core .hlx-neo{--neo-size:66px}
}
@media(prefers-reduced-motion:reduce){
  body.hlx-property-detail-route .hlx-neo-float__dock{transition:opacity .01s linear!important;transform:none!important}
  body.hlx-property-detail-route .hlx-neo-float[data-neo-open="1"] .hlx-neo-float__dock{transform:none!important}
}
