/* HomeLynx V7.0.14 — map-first mobile search with a draggable listing drawer.
   The map remains the visual canvas while homes progressively take over as the
   user pulls the sheet upward. */
body.vis2 #view{padding-left:0;padding-right:0;max-width:1180px}
body.hlx-search-active{overflow:hidden;overscroll-behavior:none}
body.hlx-search-active #view{height:100dvh;overflow:hidden;padding-bottom:0!important}
.hlx-search-home{max-width:none!important;padding:0!important;height:100%;display:flex;flex-direction:column;overflow:hidden;background:#DDEBE7}
.hlx-search-head{padding:14px 20px 10px;background:rgba(251,253,252,.97);position:relative;z-index:30;flex:0 0 auto}
.hlx-search-brand{display:flex;align-items:center;gap:9px;font-size:15px;font-weight:850;color:var(--v2-ink);letter-spacing:-.01em;margin:0 0 10px}
.hlx-brand-mark{width:31px;height:31px;display:block;flex:0 0 auto;filter:drop-shadow(0 4px 9px rgba(8,169,143,.14))}
.hlx-intent-tabs{display:flex;align-items:center;gap:4px;margin:0 0 10px;padding:4px;border:1px solid var(--v2-line);background:var(--v2-soft);border-radius:18px;width:100%}
.hlx-intent-tabs button{flex:1;min-width:0;padding:10px 6px;border-radius:14px;font-size:13px;font-weight:780;color:var(--v2-faint);white-space:nowrap}
.hlx-intent-tabs button.active{background:#fff;color:var(--v2-ink);box-shadow:0 3px 12px rgba(7,29,41,.09)}
.hlx-search-row{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #DCE8E4;border-radius:19px;box-shadow:0 9px 24px rgba(7,29,41,.09);padding:0 8px 0 14px;min-height:56px}
.hlx-search-ico{font-size:26px;line-height:1;color:var(--v2-ink);transform:rotate(-18deg);opacity:.72}
.hlx-search-input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--v2-ink);font-size:16px;font-weight:600;padding:15px 0}
.hlx-search-input::placeholder{color:#7B8E92;font-weight:520}
.hlx-filter-btn{width:42px;height:42px;border-radius:14px;background:var(--v2-soft);color:var(--v2-ink);font-size:22px;font-weight:700}
.hlx-search-status{min-height:16px;margin:7px 4px 0;font-size:11.5px;color:var(--v2-faint);font-weight:650}
.hlx-search-proof{font-size:11.5px;color:var(--v2-faint);font-weight:650;padding:0 2px 14px}.hlx-search-proof span{padding:0 4px}

/* Broad map: it owns every pixel below the compact search controls. */
.hlx-map-stage{position:relative;flex:1 1 auto;min-height:0;background:#DDEBE7;z-index:1;overflow:hidden}
.hlx-search-map,.hlx-search-map .hlx-map-shell,.hlx-search-map .hlx-map-canvas{height:100%;min-height:100%;max-height:none;border:0;border-radius:0;box-shadow:none}
.hlx-search-map .hlx-map-detail{display:none!important}
.hlx-search-map .hlx-map-controls{top:18px;right:14px}
.hlx-search-map .hlx-map-pin{font-size:11px;padding:7px 9px;background:#0D2933}
.hlx-map-focus{position:absolute;z-index:4;left:50%;bottom:22px;transform:translateX(-50%);padding:10px 18px;border-radius:999px;background:rgba(255,255,255,.94);border:1px solid rgba(214,227,223,.95);box-shadow:0 8px 24px rgba(7,29,41,.16);font-size:13px;font-weight:820;color:var(--v2-ink);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.hlx-map-empty{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;color:var(--v2-mute);background:linear-gradient(145deg,#DFF3EE,#F8FCFB)}.hlx-map-empty strong{color:var(--v2-ink)}.hlx-map-empty span{font-size:13px}

/* Draggable sheet. Top/bottom are calculated against the current iOS viewport
   so Safari's dynamic chrome does not leave the drawer stranded. */
.hlx-results-sheet{--sheet-y:0px;position:fixed;z-index:45;left:0;right:0;top:34vh;bottom:92px;background:#FBFDFC;border-radius:28px 28px 0 0;box-shadow:0 -12px 36px rgba(7,29,41,.14);transform:translate3d(0,var(--sheet-y),0);transition:transform .34s cubic-bezier(.22,.8,.22,1);overflow:hidden;will-change:transform}
.hlx-results-sheet.hlx-sheet-noanim,.hlx-results-sheet.hlx-sheet-dragging{transition:none}
.hlx-sheet-grab{position:relative;z-index:2;background:#FBFDFC;padding:9px 20px 10px;touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab;border-radius:28px 28px 0 0}
.hlx-sheet-grab:active{cursor:grabbing}
.hlx-sheet-handle{width:42px;height:5px;border-radius:99px;background:#BCCBC8;margin:0 auto 8px}
.hlx-sheet-peek-row{display:flex;align-items:center;justify-content:center;gap:8px;min-height:34px;color:var(--v2-ink);font-size:15px;letter-spacing:-.015em}
.hlx-sheet-peek-row strong{font-weight:850}
.hlx-sheet-chev{font-size:17px;color:#7C8E91;transition:transform .25s ease}
.hlx-results-sheet[data-sheet-state="full"] .hlx-sheet-chev{transform:rotate(180deg)}
.hlx-sheet-scroll{height:calc(100% - 66px);overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:4px 20px calc(32px + env(safe-area-inset-bottom))}
.hlx-results-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin:4px 0 4px}
.hlx-results-title{font-size:30px;line-height:1.04;letter-spacing:-.045em;color:var(--v2-ink);font-weight:880;margin-top:4px}
.hlx-results-count{font-size:13px;color:var(--v2-faint);font-weight:650;margin-top:7px}
.hlx-all-results{font-size:13px;color:var(--v2-green);font-weight:830;text-decoration:underline;text-underline-offset:4px;margin-top:22px;white-space:nowrap}
.hlx-card-stream .v2-result{margin-top:18px;border-radius:22px}
.hlx-card-stream .v2-result:first-child{margin-top:10px}
.hlx-card-stream .v3-photo-frame,.hlx-card-stream .v3-no-photo{aspect-ratio:16/9;min-height:0}
.hlx-card-stream .v2-result .price{font-size:28px}
.hlx-empty-list{padding:28px 2px 38px;display:flex;flex-direction:column;gap:5px;color:var(--v2-faint);font-size:13px}.hlx-empty-list strong{color:var(--v2-ink);font-size:15px}

/* Search is the product home; the nav floats over the drawer just as it did in
   the previous build, so the interaction change is contained to map/list split. */
body.vis2 #tabbar{left:14px;right:14px;bottom:10px;border:1px solid rgba(219,231,228,.94);border-radius:24px;overflow:hidden;background:rgba(255,255,255,.94);box-shadow:0 14px 38px rgba(7,29,41,.13);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);padding-bottom:env(safe-area-inset-bottom)}
body.vis2 #tabbar .tab{font-size:12px;font-weight:760;padding:12px 6px}
body.vis2 #tabbar .tab.active{background:var(--v2-soft);color:var(--v2-green);border-radius:18px}

@media(min-width:700px) and (max-width:1023px){
  .hlx-search-head{padding:18px 34px 12px}.hlx-intent-tabs{max-width:560px}.hlx-search-row{max-width:820px}.hlx-results-sheet{left:4%;right:4%;border-radius:30px 30px 0 0}.hlx-sheet-scroll{padding-left:30px;padding-right:30px}.hlx-card-stream{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.hlx-card-stream .v2-result{margin-top:0!important}
}
@media(min-width:1024px){
  body.hlx-search-active{overflow:auto;overscroll-behavior:auto}body.hlx-search-active #view{height:auto;overflow:visible;padding:0 40px 64px!important}
  .hlx-search-home{height:auto;display:block;background:#FBFDFC}.hlx-search-head{padding:24px 8px 14px}.hlx-intent-tabs{max-width:520px}.hlx-search-row{max-width:760px}.hlx-map-stage{height:55vh;max-height:620px;border-radius:26px;overflow:hidden}
  .hlx-results-sheet{position:relative;left:auto;right:auto;top:auto!important;bottom:auto!important;transform:none!important;margin-top:-34px;border-radius:30px 30px 0 0;box-shadow:0 -13px 34px rgba(7,29,41,.10);overflow:visible}
  .hlx-sheet-grab{display:none}.hlx-sheet-scroll{height:auto;overflow:visible!important;padding:28px 8px 40px}.hlx-card-stream{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.hlx-card-stream .v2-result{margin-top:0!important}
}

/* V7.0.20 Google Maps spatial inventory layer */
.hlx-google-map{position:absolute;inset:0;width:100%;height:100%;background:#DDEBE7}
.hlx-gm-layer{position:absolute;inset:0;pointer-events:none}
.hlx-gm-layer button{pointer-events:auto;position:absolute;transform:translate(-50%,-50%);border:0;cursor:pointer;-webkit-tap-highlight-color:transparent}
.hlx-gm-dot{width:15px;height:15px;border-radius:50%;background:#087F70;border:2.5px solid #fff;box-shadow:0 2px 7px rgba(7,29,41,.35);padding:0}
.hlx-gm-dot:after{content:"";position:absolute;inset:3px;border-radius:50%;background:#0D2933;opacity:.2}
.hlx-gm-cluster{min-width:30px;height:30px;border-radius:999px;padding:0 8px;background:#0D2933;color:#fff;border:2px solid #fff!important;box-shadow:0 4px 12px rgba(7,29,41,.30);font-size:11px;font-weight:900;line-height:1}
.hlx-gm-price{padding:7px 10px;border-radius:999px;background:#0D2933;color:#fff;border:2px solid #fff!important;box-shadow:0 6px 15px rgba(7,29,41,.29);font-size:11.5px;font-weight:900;white-space:nowrap}
.hlx-gm-price:after{content:"";position:absolute;left:50%;bottom:-5px;width:8px;height:8px;transform:translateX(-50%) rotate(45deg);background:#0D2933;border-right:2px solid #fff;border-bottom:2px solid #fff}
.hlx-gm-price.selected,.hlx-gm-price:active{background:#087F70;z-index:3;transform:translate(-50%,-50%) scale(1.06)}
.hlx-gm-price.selected:after,.hlx-gm-price:active:after{background:#087F70}
.hlx-map-focus[hidden]{display:none!important}
.hlx-map-focus{bottom:108px;background:rgba(255,255,255,.97);color:#0D2933;border-color:#D6E4E0;font-weight:860;box-shadow:0 10px 24px rgba(7,29,41,.18)}
.hlx-search-map[data-map-provider="google"] .hlx-map-detail{position:absolute!important;left:14px;right:14px;bottom:82px;z-index:8;border:1px solid rgba(214,228,224,.95);border-radius:16px;box-shadow:0 10px 26px rgba(7,29,41,.16);background:rgba(255,255,255,.96)}
.hlx-osm-dot{pointer-events:auto;position:absolute;transform:translate(-50%,-50%);width:14px;height:14px;border-radius:50%;border:2px solid #fff;background:#087F70;box-shadow:0 2px 7px rgba(7,29,41,.32);padding:0}

/* V7.0.20: never silently disguise a configured Google Maps failure as OSM. */
.hlx-google-error{height:100%;min-height:430px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:28px;text-align:center;background:#eef6f3;color:#0b1f2a}
.hlx-google-error strong{font-size:20px}.hlx-google-error span{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;background:#fff;border:1px solid #d7e4df;border-radius:10px;padding:8px 10px}.hlx-google-error small{max-width:420px;color:#62747b;line-height:1.45}


/* V7.0.20 map/list synchronization: a selected single-home marker reveals
   its exact listing card; tapping the same marker again opens the HomeLynx
   property/live-listing detail route. */
.hlx-card-stream .v2-result.hlx-map-selected{
  outline:2px solid rgba(8,127,112,.45);
  outline-offset:2px;
  box-shadow:0 14px 34px rgba(7,29,41,.15);
}
.hlx-gm-price.selected{cursor:pointer}

/* V7.0.21 HomeLynx map skin + fractal marker system */
.hlx-search-map[data-map-provider="google"]{background:#E7EEE5}
.hlx-search-map[data-map-provider="google"] .gm-style{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.hlx-search-map[data-map-provider="google"] .gm-style > div:first-child{filter:saturate(.93) contrast(1.025)}
.hlx-gm-layer button{transition:transform .16s ease,box-shadow .16s ease,background .16s ease;touch-action:manipulation}
.hlx-gm-dot{width:16px;height:16px;background:#0B2633;border:2.5px solid rgba(255,255,255,.98);box-shadow:0 3px 9px rgba(6,27,38,.34),0 0 0 1px rgba(8,169,143,.10)}
.hlx-gm-dot:after{inset:4px;background:#11A88F;opacity:1}
.hlx-gm-dot-rent:after{background:#11A88F}
.hlx-gm-dot:active{transform:translate(-50%,-50%) scale(1.16)}
.hlx-gm-cluster{display:flex;align-items:center;justify-content:center;padding:0;border:2.5px solid #fff!important;background:linear-gradient(145deg,#102F3B,#071E29);color:#fff;box-shadow:0 8px 20px rgba(5,28,39,.28),0 0 0 3px rgba(8,169,143,.12);font-weight:900;letter-spacing:-.025em;overflow:visible}
.hlx-gm-cluster span{position:relative;z-index:2}
.hlx-gm-cluster:before{content:"";position:absolute;inset:-7px;border-radius:999px;background:rgba(8,169,143,.11);z-index:-1}
.hlx-gm-cluster-metro{width:40px;height:40px;font-size:12px}
.hlx-gm-cluster-neighborhood{width:35px;height:35px;font-size:11.5px}
.hlx-gm-cluster:hover,.hlx-gm-cluster:active{background:#0D3C45;transform:translate(-50%,-50%) scale(1.07);box-shadow:0 10px 24px rgba(5,28,39,.32),0 0 0 5px rgba(8,169,143,.14)}
.hlx-gm-price{min-height:34px;padding:7px 11px;border-radius:999px;background:linear-gradient(180deg,#102F3B 0%,#081F2A 100%);color:#fff;border:2.5px solid rgba(255,255,255,.98)!important;box-shadow:0 8px 18px rgba(5,28,39,.30),0 1px 0 rgba(255,255,255,.16) inset;font-size:11.5px;font-weight:900;letter-spacing:-.015em}
.hlx-gm-price:after{bottom:-5px;width:9px;height:9px;background:#091F2A;border-right:2.5px solid #fff;border-bottom:2.5px solid #fff}
.hlx-gm-price-rent{padding-left:10px;padding-right:10px}
.hlx-gm-price:hover{transform:translate(-50%,-50%) scale(1.045);z-index:4}
.hlx-gm-price.selected,.hlx-gm-price:active{background:linear-gradient(180deg,#119780,#087F70);box-shadow:0 10px 24px rgba(8,127,112,.34),0 0 0 4px rgba(8,169,143,.14);z-index:6}
.hlx-gm-price.selected:after,.hlx-gm-price:active:after{background:#087F70}
.hlx-map-focus{border:1px solid rgba(207,224,219,.96);box-shadow:0 12px 26px rgba(7,29,41,.19);font-size:12.5px;letter-spacing:-.01em}
@media(max-width:520px){
  .hlx-gm-cluster-metro{width:38px;height:38px}.hlx-gm-cluster-neighborhood{width:34px;height:34px}
  .hlx-gm-price{font-size:11px;min-height:32px;padding:6px 9px}
}

/* V7.0.25 contextual property-financing ribbon.
   Appears only after an exact Buy listing is selected on the map. */
.hlx-property-ribbon[hidden]{display:none!important}
.hlx-property-ribbon{
  position:relative;
  z-index:3;
  min-height:58px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:11px 20px 12px;
  background:linear-gradient(112deg,#073440 0%,#08715F 58%,#0B806C 100%);
  color:#fff;
  box-shadow:0 10px 28px rgba(5,48,55,.22);
}
.hlx-property-ribbon-copy{min-width:0;display:flex;flex-direction:column;gap:2px}
.hlx-property-ribbon-copy span{
  color:rgba(255,255,255,.72);
  font-size:10px;
  line-height:1.1;
  font-weight:800;
  letter-spacing:.095em;
  text-transform:uppercase;
}
.hlx-property-ribbon-copy strong{
  color:#fff;
  font-size:21px;
  line-height:1.04;
  font-weight:900;
  letter-spacing:-.035em;
  white-space:nowrap;
}
.hlx-property-ribbon-cta{
  flex:0 0 auto;
  color:#fff;
  font-size:13px;
  font-weight:850;
  line-height:1.15;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:4px;
  padding:10px 0 10px 10px;
  white-space:nowrap;
}
.hlx-property-ribbon-cta:active{opacity:.72}
.hlx-results-sheet.hlx-has-property-ribbon .hlx-sheet-grab{
  border-radius:0;
  padding-top:8px;
}
.hlx-results-sheet.hlx-has-property-ribbon .hlx-sheet-scroll{
  height:calc(100% - 124px);
}
.hlx-results-sheet.hlx-has-property-ribbon .hlx-sheet-handle{margin-top:0}
@keyframes hlxFinanceGlow{0%,100%{box-shadow:0 18px 34px rgba(4,55,66,.18),0 0 0 1px rgba(255,255,255,.06) inset}50%{box-shadow:0 22px 42px rgba(4,82,83,.24),0 0 0 1px rgba(255,255,255,.12) inset}}
@keyframes hlxFinanceSheen{0%{transform:translateX(-120%) skewX(-22deg);opacity:0}16%{opacity:.22}40%{transform:translateX(210%) skewX(-22deg);opacity:0}100%{transform:translateX(210%) skewX(-22deg);opacity:0}}
@keyframes hlxCtaPulse{0%,100%{box-shadow:0 12px 24px rgba(11,83,61,.20),0 0 0 0 rgba(20,149,104,.16)}50%{box-shadow:0 16px 32px rgba(11,83,61,.28),0 0 0 8px rgba(20,149,104,0)}}
.hlx-finance-sheet-hero{
  position:relative;
  overflow:hidden;
  margin-top:16px;
  padding:18px 18px 16px;
  border-radius:20px;
  color:#fff;
  background:linear-gradient(132deg,#083645 0%,#0A655D 56%,#0E8A69 100%);
  animation:hlxFinanceGlow 5.2s ease-in-out infinite;
}
.hlx-finance-sheet-hero:before{
  content:"";
  position:absolute;
  inset:-35% auto -35% -18%;
  width:44%;
  background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.16),rgba(255,255,255,0));
  filter:blur(2px);
  animation:hlxFinanceSheen 6s ease-in-out infinite;
  pointer-events:none;
}
.hlx-finance-sheet-hero:after{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 88% 16%,rgba(98,247,193,.16),transparent 28%),linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,0));
  pointer-events:none;
}
.hlx-finance-sheet-hero>*{position:relative;z-index:1}
.hlx-finance-sheet-hero span{
  display:block;
  color:rgba(255,255,255,.72);
  font-size:11px;
  font-weight:820;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.hlx-finance-sheet-hero strong{
  display:block;
  margin-top:6px;
  font-size:36px;
  line-height:1;
  letter-spacing:-.05em;
}
.hlx-finance-sheet-hero small{font-size:15px;font-weight:760;margin-left:2px}
.hlx-finance-hero-meta{margin-top:10px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.hlx-finance-hero-meta small{margin:0;font-size:11px;line-height:1.3;font-weight:700;color:rgba(255,255,255,.84)}
.hlx-finance-hero-signal{display:inline-flex;align-items:center;gap:7px;padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.1);backdrop-filter:blur(8px)}
.hlx-finance-hero-signal i{width:8px;height:8px;border-radius:50%;background:#73F0C0;box-shadow:0 0 0 6px rgba(115,240,192,.14)}
.hlx-finance-planner{
  margin-top:12px;
  padding:12px;
  border:1px solid #D9E7E3;
  border-radius:20px;
  background:linear-gradient(180deg,#FCFEFE 0%,#F5FBF9 100%);
  box-shadow:0 10px 26px rgba(6,31,41,.06);
}
.hlx-finance-sheet-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  border:1px solid #D8E4E1;
  border-radius:16px;
  overflow:hidden;
  background:#fff;
}
.hlx-finance-sheet-grid>div{padding:13px 14px;border-bottom:1px solid #E2ECE9}
.hlx-finance-sheet-grid>div:nth-child(odd){border-right:1px solid #E2ECE9}
.hlx-finance-sheet-grid>div:nth-last-child(-n+2){border-bottom:0}
.hlx-finance-sheet-grid span{display:block;font-size:10.5px;color:var(--v2-faint);font-weight:780;letter-spacing:.06em;text-transform:uppercase}
.hlx-finance-sheet-grid strong{display:block;margin-top:4px;font-size:16px;color:var(--v2-ink);line-height:1.05}
.hlx-finance-sheet-grid small{display:block;margin-top:4px;font-size:11px;line-height:1.35;color:#6E8582}
.hlx-finance-controls{margin-top:12px;display:grid;gap:10px}
.hlx-finance-controls-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:2px 2px 0}
.hlx-finance-controls-head span{font-size:12px;font-weight:840;letter-spacing:.08em;text-transform:uppercase;color:#52736F}
.hlx-assumption-reset{border:0;background:transparent;color:#0A7060;font-size:12px;font-weight:780;padding:0;text-decoration:underline;text-underline-offset:3px}
.hlx-assumption-card{padding:14px;border-radius:18px;background:#fff;border:1px solid #D8E7E2;box-shadow:0 6px 18px rgba(7,29,41,.04)}
.hlx-assumption-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-wrap:wrap}
.hlx-assumption-top span{display:block;font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#587572}
.hlx-assumption-top strong{display:block;font-size:21px;line-height:1.05;letter-spacing:-.03em;color:var(--v2-ink)}
.hlx-assumption-top small{display:block;width:100%;margin-top:2px;font-size:11.5px;line-height:1.35;color:#718784}
.hlx-range{width:100%;margin-top:10px;accent-color:#0B8168}
.hlx-range-scale{display:flex;justify-content:space-between;gap:8px;margin-top:4px;font-size:11px;color:#708683}
.hlx-score-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}
.hlx-score-chip{appearance:none;border:1px solid #D3E5DF;background:#F8FCFB;border-radius:14px;padding:9px 10px;text-align:left;display:grid;gap:2px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}
.hlx-score-chip strong{font-size:13px;line-height:1.15;color:#163635}
.hlx-score-chip small{font-size:11px;line-height:1.25;color:#6F8582}
.hlx-score-chip.is-active{background:linear-gradient(180deg,#EAF8F4,#F8FFFD);border-color:#6BC3A8;box-shadow:0 8px 20px rgba(12,114,95,.14);transform:translateY(-1px)}
.hlx-finance-disclaimer{margin-top:14px;line-height:1.52}
.hlx-finance-sheet .hlx-prequal-cta{
  position:relative;
  overflow:hidden;
  min-height:64px;
  border:0;
  border-radius:18px;
  color:#fff;
  background:linear-gradient(135deg,#0B5A49 0%,#0F7B60 52%,#158766 100%);
  box-shadow:0 12px 24px rgba(11,83,61,.20);
  animation:hlxCtaPulse 5.5s ease-in-out infinite;
}
.hlx-finance-sheet .hlx-prequal-cta:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(100deg,transparent 15%,rgba(255,255,255,.10) 50%,transparent 85%);
  transform:translateX(-120%);
  animation:hlxFinanceSheen 6.8s ease-in-out infinite;
  pointer-events:none;
}
.hlx-finance-sheet .hlx-prequal-cta>*{position:relative;z-index:1}
.hlx-finance-sheet .hlx-prequal-cta>span{font-size:17px;font-weight:860;letter-spacing:-.02em}
.hlx-finance-sheet .hlx-prequal-cta>small{font-size:11.5px;font-weight:720;opacity:.92}
.hlx-finance-sheet .hlx-prequal-cta:after{content:"→";position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:19px;font-weight:700;color:rgba(255,255,255,.82)}
@media(max-width:390px){
  .hlx-property-ribbon{padding-left:16px;padding-right:16px;gap:8px}
  .hlx-property-ribbon-copy strong{font-size:19px}
  .hlx-property-ribbon-cta{font-size:12px}
}
@media(min-width:1024px){
  .hlx-property-ribbon{border-radius:30px 30px 0 0}
  .hlx-results-sheet.hlx-has-property-ribbon .hlx-sheet-scroll{height:auto}
}

@media(max-width:390px){.hlx-finance-sheet-hero strong{font-size:32px}.hlx-score-chips{grid-template-columns:1fr}.hlx-finance-sheet .hlx-prequal-cta:after{right:14px}}


/* V7.0.27 premium filters + finance refinements */
.hlx-filter-btn{position:relative;display:grid;place-items:center;box-shadow:0 10px 22px rgba(8,39,45,.08);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease}
.hlx-filter-btn.is-active{background:linear-gradient(180deg,#EDF9F5,#E2F4EE);border-color:#98D2C0;box-shadow:0 12px 26px rgba(13,87,76,.14)}
.hlx-filter-btn .hlx-filter-glyph{line-height:1;transform:translateY(-1px)}
.hlx-filter-badge{position:absolute;top:-5px;right:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#0B7D65;color:#fff;font-size:10px;font-weight:800;display:grid;place-items:center;box-shadow:0 6px 14px rgba(11,125,101,.28)}
.hlx-filter-sheet{padding-bottom:6px}
.hlx-filter-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.hlx-filter-sub{margin-top:8px;color:#657A78;line-height:1.48}
.hlx-sheet-reset{border:1px solid #D5E6E1;background:#F8FCFB;color:#0A6E5F;border-radius:999px;padding:10px 14px;font-size:12px;font-weight:800;white-space:nowrap;box-shadow:0 6px 18px rgba(7,29,41,.05)}
.hlx-filter-summary{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.hlx-summary-chip,.hlx-summary-quiet{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;font-size:11.5px;font-weight:760;line-height:1;color:#16413D;background:#F1F8F6;border:1px solid #D9ECE7}
.hlx-summary-quiet{color:#6D8582;background:#FAFDFC}
.hlx-filter-card{margin-top:14px;border:1px solid #D9E7E3;border-radius:22px;background:linear-gradient(180deg,#FCFEFE 0%,#F4FBF9 100%);box-shadow:0 14px 28px rgba(7,29,41,.06);overflow:hidden}
.hlx-filter-section{padding:16px 16px 18px;border-bottom:1px solid #E4EFEC}
.hlx-filter-section:last-child{border-bottom:0}
.hlx-filter-label-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.hlx-filter-label{display:block;font-size:11px;letter-spacing:.09em;text-transform:uppercase;font-weight:820;color:#547471;margin-bottom:10px}
.hlx-seg{display:inline-grid;grid-auto-flow:column;gap:4px;padding:4px;border-radius:999px;background:#EAF3F0;border:1px solid #D5E4E0}
.hlx-seg button{border:0;background:transparent;border-radius:999px;padding:8px 12px;font-size:12.5px;font-weight:760;color:#496864}
.hlx-seg button.is-active{background:#fff;color:#103836;box-shadow:0 8px 18px rgba(7,29,41,.10)}
.hlx-input-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.hlx-field{display:grid;gap:6px}
.hlx-field span{font-size:11px;font-weight:760;color:#68807D}
.hlx-field input{width:100%;border:1px solid #CDDCD8;border-radius:16px;padding:13px 14px;background:#fff;font-size:16px;font-weight:730;color:#163635;outline:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.hlx-field input:focus{border-color:#78C1AC;box-shadow:0 0 0 4px rgba(65,173,141,.12)}
.hlx-filter-hint{margin-top:8px;font-size:11.5px;color:#6A817F}
.hlx-pill-row{display:flex;gap:8px;flex-wrap:wrap}
.hlx-pill-btn{border:1px solid #D2E3DE;background:#fff;border-radius:999px;padding:9px 14px;font-size:13px;font-weight:760;color:#173A37;box-shadow:0 4px 12px rgba(7,29,41,.04);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease}
.hlx-pill-btn.is-active{background:linear-gradient(180deg,#0D725D,#0B5E4E);border-color:#0D725D;color:#fff;box-shadow:0 10px 22px rgba(11,94,78,.22);transform:translateY(-1px)}
.hlx-type-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.hlx-type-option{border:1px solid #D3E5DF;background:#fff;border-radius:18px;padding:14px 12px;font-size:14px;font-weight:770;color:#183A37;min-height:58px;box-shadow:0 5px 14px rgba(7,29,41,.04);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease}
.hlx-type-option.is-active{background:linear-gradient(180deg,#EAF7F3,#F8FFFD);border-color:#6BC3A8;box-shadow:0 10px 22px rgba(12,114,95,.13);transform:translateY(-1px)}
.hlx-toggle-list{display:grid;gap:10px}
.hlx-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border:1px solid #DAE7E3;border-radius:18px;background:#fff}
.hlx-toggle-row span{display:grid;gap:2px}
.hlx-toggle-row strong{font-size:14px;line-height:1.2;color:#163635}
.hlx-toggle-row small{font-size:11.5px;line-height:1.35;color:#6E8582}
.hlx-toggle-row input{width:18px;height:18px;accent-color:#0B7D65}
.hlx-filter-footer{position:sticky;bottom:-20px;display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;margin:14px -20px -20px;padding:14px 20px calc(14px + env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.94) 24%,#fff 100%)}
.hlx-filter-clear{white-space:nowrap;border-radius:16px;padding:0 16px}
.hlx-filter-apply{min-height:54px;border-radius:18px;box-shadow:0 14px 30px rgba(11,94,78,.20)}
.hlx-term-toggle{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:10px;padding:4px;border-radius:999px;background:#EAF3F0;border:1px solid #D5E4E0}
.hlx-term-toggle button{border:0;background:transparent;border-radius:999px;padding:10px 12px;font-size:13px;font-weight:800;color:#476763;transition:background .16s ease,box-shadow .16s ease,color .16s ease}
.hlx-term-toggle button.is-active{background:#fff;color:#123937;box-shadow:0 8px 18px rgba(7,29,41,.10)}
.hlx-score-chip{appearance:none;border:1px solid #D3E5DF;background:#F8FCFB;border-radius:16px;padding:10px 12px;text-align:left;display:grid;gap:5px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}
.hlx-score-chip-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.hlx-score-chip strong{font-size:13px;line-height:1.1;color:#163635}
.hlx-score-chip em{font-style:normal;font-size:11px;line-height:1;color:#0A6E5F;padding:4px 7px;border-radius:999px;background:#E7F5F0;border:1px solid #D4EBE4}
.hlx-score-chip small{font-size:11px;line-height:1.25;color:#6F8582}
.hlx-score-chip.is-active{background:linear-gradient(180deg,#EAF8F4,#F8FFFD);border-color:#6BC3A8;box-shadow:0 8px 20px rgba(12,114,95,.14);transform:translateY(-1px)}
@media(max-width:430px){.hlx-input-grid,.hlx-filter-footer,.hlx-type-grid{grid-template-columns:1fr}.hlx-filter-footer{gap:8px}.hlx-sheet-reset{padding:9px 12px}}
