/* Serviced Stays Smart Search v1.5.4 — search/filter controls only. */
.sss-search{position:relative;width:100%;max-width:980px;margin:0 auto;font-family:inherit;z-index:50}
.sss-search-form{position:relative;margin:0}
.sss-search-input-wrap{display:flex;align-items:center;width:100%;min-height:60px;padding:6px 6px 6px 18px;background:#fff;border:1px solid rgba(18,45,58,.10);border-radius:14px;box-shadow:0 12px 30px rgba(20,42,54,.10);transition:border-color .2s,box-shadow .2s}
.sss-search-input-wrap:focus-within{border-color:rgba(18,59,69,.28);box-shadow:0 14px 34px rgba(20,42,54,.14),0 0 0 3px rgba(18,59,69,.06)}
.sss-search-icon{display:flex;align-items:center;justify-content:center;flex:0 0 32px;width:32px;color:#e7a61a}
.sss-search-input{min-width:0;flex:1;height:46px;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;padding:0 12px!important;color:#24333a!important;font-family:inherit!important;font-size:15px!important;font-weight:500!important;line-height:46px!important}
.sss-search-input::placeholder{color:#89959a;opacity:1}
.sss-search-submit{display:inline-flex;align-items:center;justify-content:center;gap:9px;height:48px;padding:0 23px;border:0!important;border-radius:9px;background:#102f3b!important;color:#fff!important;font-family:inherit!important;font-size:13px!important;font-weight:700!important;line-height:1!important;cursor:pointer;box-shadow:none!important;white-space:nowrap;transition:background .2s,transform .2s}
.sss-search-submit:hover{background:#174858!important;color:#fff!important;transform:translateY(-1px)}
.sss-search-submit svg{flex:0 0 auto}
.sss-suggestions{position:absolute;left:0;right:0;top:calc(100% + 9px);max-height:440px;overflow:auto;background:#fff;border:1px solid #e5ebec;border-radius:14px;box-shadow:0 18px 42px rgba(18,43,55,.16);padding:8px;z-index:1000}
.sss-suggestion-group{padding:10px 11px 6px;color:#89969b;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.sss-suggestion{display:flex;align-items:center;gap:11px;min-height:56px;padding:9px 10px;border-radius:10px;text-decoration:none!important;color:#243840!important;transition:background .15s}
.sss-suggestion:hover,.sss-suggestion.sss-keyboard-active{background:#f4f8f7}
.sss-suggestion-icon{display:flex;align-items:center;justify-content:center;flex:0 0 38px;width:38px;height:38px;border-radius:10px;background:#fff5df;color:#e5a019}
.sss-suggestion-icon svg{width:19px;height:19px}
.sss-suggestion-copy{display:flex;min-width:0;flex:1;flex-direction:column;gap:3px}
.sss-suggestion-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;color:#263a42}
.sss-suggestion-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:#7b8b91}
.sss-suggestion-arrow{color:#a2afb3;font-size:17px}
.sss-no-results{padding:22px 14px;text-align:center;color:#596e75;font-size:13px}.sss-no-results small{display:block;margin-top:5px;color:#9aa6aa;font-size:11px}

/* Filter controls only. Property cards are rendered by Elementor Loop Grid. */
.sss-filter-wrap{width:100%;font-family:inherit;color:#27363d}
.sss-filters{display:grid;grid-template-columns:1.1fr 1.1fr .85fr 1fr auto;gap:15px;align-items:end;margin:0 0 16px;padding:12px;background:#fff;border:1px solid #e9eded;border-radius:14px;box-shadow:0 7px 24px rgba(18,43,55,.055)}
.sss-filter-field label{display:block;margin:0 0 6px 2px;color:#697c82;font-size:10px;font-weight:700;letter-spacing:.03em}
.sss-filter-field select{width:100%;height:45px;padding:0 33px 0 12px;border:1px solid #dfe7e8;border-radius:9px;background:#fff;color:#344950;font-family:inherit;font-size:12px;outline:0}
.sss-filter-field select:focus{border-color:#9bbabe;box-shadow:0 0 0 3px rgba(45,124,131,.07)}
.sss-filter-actions{display:flex;align-items:center;gap:7px}
.sss-filter-apply{height:45px;padding:0 15px;border:0;border-radius:9px;background:#102f3b;color:#fff;font-family:inherit;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}
.sss-filter-clear{display:inline-flex;align-items:center;height:45px;padding:0 6px;color:#61757b!important;font-size:11px;text-decoration:none!important;white-space:nowrap}
.sss-active-filters{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0 0 16px;color:#87959a;font-size:11px}
.sss-chip{padding:5px 9px;border-radius:999px;background:#f8f0dd;color:#936914;font-weight:700}

@media(max-width:1050px){.sss-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.sss-filter-actions{grid-column:1/-1}}
@media(max-width:650px){
  .sss-search-input-wrap{min-height:56px;padding-left:12px;border-radius:12px}
  .sss-search-icon{flex-basis:28px;width:28px}
  .sss-search-input{height:44px;padding:0 8px!important;font-size:14px!important}
  .sss-search-submit{height:44px;padding:0 15px;border-radius:8px}
  .sss-search-submit span{display:inline}
  .sss-suggestions{top:calc(100% + 7px);border-radius:12px}
  .sss-filters{grid-template-columns:1fr;padding:11px;border-radius:12px}
}

/* Facilities filter — integrated with the v1.3 filter card design. */
.sss-filter-facilities{grid-column:1/-1;margin-top:2px;padding-top:14px;border-top:1px solid #edf1f1}
.sss-facilities-title{margin:0 0 9px 2px;color:#344950;font-size:14px;font-weight:700}
.sss-facility-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.sss-facility-group{min-width:0;padding:11px 12px;background:#fff;border:1px solid #e9eded;border-radius:11px}
.sss-facility-group h4{margin:0 0 8px;color:#3c5259;font-size:11px;font-weight:800;letter-spacing:.01em}
.sss-facility-options{display:flex;flex-wrap:wrap;gap:7px 12px}
.sss-facility-option{display:inline-flex;align-items:center;gap:6px;margin:0;color:#40545b;font-size:12px;line-height:1.35;cursor:pointer}
.sss-facility-option input{width:14px;height:14px;margin:0;accent-color:#102f3b}
.sss-facility-option[hidden],.sss-facility-group[hidden]{display:none!important}
@media(max-width:1050px){.sss-facility-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.sss-facility-grid{grid-template-columns:1fr}.sss-facility-group{padding:10px}.sss-facility-options{gap:7px 10px}}


/* v1.5.3 — compact filters and HomiCube theme-matched controls. */
.sss-search-submit{
  gap:8px;
  min-width:112px;
  padding:0 19px;
  background:#102f3b!important;
  border:1px solid #102f3b!important;
  border-radius:8px;
  box-shadow:0 3px 8px rgba(16,47,59,.16)!important;
  transform:none!important;
  vertical-align:middle;
}
.sss-search-submit:hover,
.sss-search-submit:focus-visible{
  background:#e9a51a!important;
  border-color:#e9a51a!important;
  color:#102f3b!important;
  box-shadow:0 5px 13px rgba(233,165,26,.24)!important;
  transform:none!important;
}
.sss-search-submit:focus-visible,
.sss-filter-toggle:focus-visible,
.sss-filter-apply:focus-visible,
.sss-filter-clear:focus-visible{
  outline:3px solid rgba(233,165,26,.35);
  outline-offset:2px;
}
.sss-search-submit-icon{display:block;flex:0 0 17px;width:17px;height:17px}
.sss-search-submit span{display:inline-block;line-height:1.2}

/* Filters are collapsed by default so the property results stay prominent. */
.sss-filter-wrap{margin:0 0 16px}
.sss-filter-toolbar{display:flex;align-items:center;justify-content:flex-start;gap:10px;margin:0 0 12px}
.sss-filter-toggle{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  min-height:43px;padding:0 15px;
  border:1px solid #e4a51b!important;border-radius:9px;
  background:#fff!important;color:#173744!important;
  font-family:inherit;font-size:13px;font-weight:700;line-height:1;
  cursor:pointer;box-shadow:0 3px 10px rgba(18,43,55,.05)!important;
  transition:background .18s,border-color .18s,color .18s,box-shadow .18s;
}
.sss-filter-toggle:hover{background:#fff6e2!important;border-color:#e9a51a!important;color:#102f3b!important}
.sss-filter-toggle[aria-expanded="true"]{background:#fff6e2!important;border-color:#e9a51a!important}
.sss-filter-toggle svg{display:block;flex:0 0 auto}
.sss-filter-chevron{transition:transform .18s}
.sss-filter-toggle[aria-expanded="true"] .sss-filter-chevron{transform:rotate(180deg)}
.sss-filter-panel[hidden]{display:none!important}
.sss-filter-panel{margin:0 0 16px;padding:0}
.sss-filters{
  margin:0;
  padding:15px;
  border:1px solid #e7ecec;
  border-radius:13px;
  box-shadow:0 7px 22px rgba(18,43,55,.055);
}
.sss-filter-field select{height:44px;border-radius:8px}
.sss-filter-field select:focus{border-color:#e4a51b;box-shadow:0 0 0 3px rgba(233,165,26,.12)}
.sss-filter-actions{gap:9px}
.sss-filter-apply{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  min-height:44px;padding:0 17px;
  border:1px solid #102f3b!important;border-radius:8px;
  background:#102f3b!important;color:#fff!important;
  font-family:inherit;font-size:12px;font-weight:700;line-height:1;
  box-shadow:0 3px 8px rgba(16,47,59,.13);
  transition:background .18s,border-color .18s,box-shadow .18s;
}
.sss-filter-apply:hover{background:#e9a51a!important;border-color:#e9a51a!important;color:#102f3b!important;box-shadow:0 4px 10px rgba(233,165,26,.2)}
.sss-filter-clear{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 12px;border:1px solid #dce5e6;border-radius:8px;background:#fff;color:#526970!important;font-size:12px;font-weight:600;text-decoration:none!important;transition:background .18s,border-color .18s,color .18s}
.sss-filter-clear:hover{background:#fff6e2;border-color:#e9a51a;color:#102f3b!important}
.sss-filter-clear-toolbar{margin-left:auto;min-height:39px;padding:0 13px;color:#526970!important}
.sss-filter-facilities{margin-top:1px;padding-top:12px;border-top:1px solid #edf1f1}
.sss-facilities-disclosure{border:1px solid #e6ecec;border-radius:10px;background:#fbfcfc;overflow:hidden}
.sss-facilities-summary{display:flex;align-items:center;gap:9px;min-height:45px;padding:0 13px;cursor:pointer;list-style:none;color:#344950}
.sss-facilities-summary::-webkit-details-marker{display:none}
.sss-facilities-summary::marker{content:""}
.sss-facilities-summary .sss-facilities-title{margin:0;flex:1;font-size:13px;font-weight:700;color:#344950}
.sss-facilities-selected-count{padding:4px 8px;border-radius:999px;background:#fff0cc;color:#91630a;font-size:10px;font-weight:700}
.sss-facilities-summary>svg{color:#6b7e84;transition:transform .18s}
.sss-facilities-disclosure[open] .sss-facilities-summary>svg{transform:rotate(180deg)}
.sss-facility-grid{padding:0 10px 10px;grid-template-columns:repeat(4,minmax(0,1fr))}
.sss-facility-group{background:#fff;border-color:#e7ecec}
.sss-facility-option input{accent-color:#e9a51a}
.sss-active-filters{margin-top:0}
.sss-chip{background:#fff2d4;color:#865c08;border:1px solid #f4e1b0}
@media(max-width:1050px){
  .sss-filters{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sss-filter-actions{grid-column:1/-1}
  .sss-facility-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:650px){
  .sss-search-submit{min-width:0;gap:6px;height:44px;padding:0 12px;font-size:12px!important}
  .sss-filter-toolbar{margin-bottom:10px}
  .sss-filter-toggle{min-height:41px;padding:0 13px}
  .sss-filters{grid-template-columns:1fr;padding:11px}
  .sss-filter-actions{grid-column:auto;display:flex;align-items:center;flex-wrap:wrap}
  .sss-filter-apply{flex:1}
  .sss-facility-grid{grid-template-columns:1fr}
}


/* v1.5.4 — Search button alignment and integrated filter panel. */
.sss-search-input-wrap{gap:10px}
.sss-search-submit{
  display:inline-flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;
  gap:8px!important;min-width:112px;height:46px;padding:0 18px!important;line-height:1!important;white-space:nowrap!important;
  transform:none!important;
}
.sss-search-submit svg,.sss-search-submit .sss-search-submit-icon{
  display:block!important;position:static!important;flex:0 0 18px!important;width:18px!important;height:18px!important;margin:0!important;
}
.sss-search-submit span{display:inline-block!important;position:static!important;margin:0!important;line-height:1!important;white-space:nowrap!important}
.sss-search-submit:hover,.sss-search-submit:focus{transform:none!important}
.sss-filter-toolbar{display:inline-flex;align-items:center;flex:0 0 auto;margin:0!important}
.sss-search-input-wrap>.sss-filter-toolbar .sss-filter-toggle{
  min-height:46px;padding:0 13px;gap:7px;border-color:#dce5e6!important;background:#fff!important;box-shadow:none!important;white-space:nowrap
}
.sss-search-input-wrap>.sss-filter-toolbar .sss-filter-toggle:hover,
.sss-search-input-wrap>.sss-filter-toolbar .sss-filter-toggle[aria-expanded="true"]{background:#fff6e2!important;border-color:#e9a51a!important}
.sss-filter-panel[hidden]{display:none!important}
.sss-filter-panel{margin:12px 0 16px}
.sss-filters{display:grid;grid-template-columns:1.1fr 1.1fr .85fr 1fr;gap:14px;align-items:end;margin:0;padding:16px}
.sss-filter-facilities{grid-column:1/-1;margin-top:0;padding-top:14px;border-top:1px solid #edf1f1}
.sss-facilities-heading{display:flex;align-items:center;gap:9px;margin:0 0 10px 2px}
.sss-facilities-heading .sss-facilities-title{margin:0;color:#344950;font-size:14px;font-weight:700}
.sss-facility-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:0}
.sss-filter-actions{grid-column:1/-1;display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:2px;padding-top:14px;border-top:1px solid #edf1f1}
.sss-filter-apply{display:inline-flex!important;flex-direction:row!important;align-items:center;justify-content:center;min-height:44px;height:44px;padding:0 20px!important;line-height:1!important;transform:none!important}
.sss-filter-apply:hover,.sss-filter-apply:focus{transform:none!important}
.sss-filter-clear{display:inline-flex;align-items:center;justify-content:center;min-height:44px;height:44px;padding:0 16px;border:1px solid #dce5e6;border-radius:8px;background:#fff;color:#526970!important;font-size:12px;font-weight:600;text-decoration:none!important}
.sss-filter-clear:hover{background:#fff6e2;border-color:#e9a51a;color:#102f3b!important}
.sss-filter-clear-toolbar{display:none!important}
@media(max-width:1050px){.sss-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.sss-facility-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){
  .sss-search-input-wrap{gap:6px;padding-right:6px}
  .sss-search-submit{min-width:0!important;width:auto!important;gap:6px!important;padding:0 10px!important;font-size:12px!important}
  .sss-search-submit svg,.sss-search-submit .sss-search-submit-icon{width:16px!important;height:16px!important;flex-basis:16px!important}
  .sss-search-input-wrap>.sss-filter-toolbar .sss-filter-toggle{min-height:42px;padding:0 9px;gap:5px;font-size:12px}
  .sss-search-input-wrap>.sss-filter-toolbar .sss-filter-toggle .sss-filter-toggle-icon{display:none}
  .sss-filter-panel{margin-top:10px}
  .sss-filters{grid-template-columns:1fr;padding:12px}
  .sss-facility-grid{grid-template-columns:1fr}
  .sss-filter-actions{grid-column:1;display:flex;flex-wrap:wrap}
  .sss-filter-clear,.sss-filter-apply{flex:1}
}
@media(max-width:420px){
  .sss-search-icon{display:none}
  .sss-search-input{padding:0 5px!important;font-size:12px!important}
  .sss-search-submit{padding:0 8px!important}
  .sss-search-input-wrap>.sss-filter-toolbar .sss-filter-toggle{padding:0 7px}
}


/* v1.5.7 — Filters panel overlays page content instead of expanding the hero/banner. */
.sss-search{position:relative;z-index:100}
.sss-search .sss-search-input-wrap{position:relative;z-index:102}
.sss-search .sss-search-input-wrap .sss-filter-toolbar{position:relative;z-index:103;flex:0 0 auto}
.sss-search .sss-filter-panel.sss-filter-panel-overlay{
  position:absolute!important;top:calc(100% + 12px)!important;left:0!important;right:0!important;
  width:100%!important;max-width:100%!important;margin:0!important;z-index:9999!important;
  max-height:min(72vh,680px);overflow-y:auto;overscroll-behavior:contain;background:#fff;
  border:1px solid #dce5e6;border-radius:14px;box-shadow:0 18px 48px rgba(16,47,59,.20)
}
.sss-search .sss-filter-panel.sss-filter-panel-overlay[hidden]{display:none!important}
.sss-search .sss-filter-panel.sss-filter-panel-overlay .sss-filters{background:#fff;border-radius:14px}
.sss-search .sss-filter-panel.sss-filter-panel-overlay .sss-filter-actions{position:sticky;bottom:0;background:#fff;z-index:2}
@media(max-width:650px){
  .sss-search{z-index:1000}
  .sss-search .sss-filter-panel.sss-filter-panel-overlay{top:calc(100% + 8px)!important;max-height:70vh;border-radius:12px}
  .sss-search .sss-filter-panel.sss-filter-panel-overlay .sss-filters{padding:12px}
  .sss-search .sss-filter-panel.sss-filter-panel-overlay .sss-filter-actions{position:sticky;bottom:0;padding-bottom:12px}
}
