:root{
      --gv-orange:#DB7321;
      --gv-orange-dark:#C96518;
      --gv-dark:#071B2D;
      --gv-dark-2:#0A273E;
      --gv-bg:#F8FAFC;
      --gv-bg-soft:#F1F5F9;
      --gv-soft:#F5F7FA;
      --gv-white:#ffffff;
      --gv-glass-light:rgba(255,255,255,.72);
      --gv-glass-strong:rgba(255,255,255,.88);
      --gv-text:#071B2D;
      --gv-muted:#6B7280;
      --gv-border:rgba(219,115,33,.18);
      --gv-shadow:0 18px 45px rgba(7,27,45,.10);
      --gv-shadow-strong:0 28px 80px rgba(7,27,45,.16);
    }
*{
      box-sizing:border-box;
    }
html{
      width:100%;
      max-width:100%;
      scroll-behavior:smooth;
      overflow-x:hidden;
    }
body{
      width:100%;
      max-width:100%;
      margin:0;
      font-family:"Tajawal", Arial, sans-serif;
      background:var(--gv-bg);
      color:var(--gv-text);
      overflow-x:hidden;
    }
button,input,select,textarea,a,span,p,h1,h2,h3,h4,h5,h6,label,div{
      font-family:"Tajawal", Arial, sans-serif;
    }
i,.fa{
      font-family:"Font Awesome 6 Free","Font Awesome 6 Brands" !important;
    }
a{
      text-decoration:none;
    }
.properties-category-tabs{
  position:relative;
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
  justify-content:center;
  padding:16px;
  border-radius:28px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(219,115,33,.16);
  box-shadow:
    0 18px 45px rgba(7,27,45,.08),
    inset 0 1px 0 rgba(255,255,255,.85);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  overflow:hidden;
}
.properties-category-tabs::before{
  content:"";
  position:absolute;
  top:0;
  right:28px;
  left:28px;
  height:1px;
  background:linear-gradient(to left, transparent, rgba(219,115,33,.65), transparent);
}
.property-tab{
  position:relative;
  overflow:hidden;
  height:46px;
  padding:0 22px;
  border-radius:999px;
  border:1px solid rgba(7,27,45,.10);
  background:rgba(255,255,255,.88);
  color:var(--gv-dark);
  font-size:14px;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(7,27,45,.055);
  transition:
    transform .28s ease,
    box-shadow .28s ease,
    background .28s ease,
    color .28s ease,
    border-color .28s ease;
}
.property-tab::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg, transparent 25%, rgba(255,255,255,.55), transparent 70%);
  transform:translateX(110%);
  transition:.55s ease;
}
.property-tab:hover::before,.property-tab.active::before{
  transform:translateX(-110%);
}
.property-tab:hover{
  transform:translateY(-3px);
  border-color:rgba(219,115,33,.38);
  box-shadow:0 16px 34px rgba(7,27,45,.10);
}
.property-tab.active{
  background:linear-gradient(135deg, var(--gv-orange), #c96518);
  color:#fff;
  border-color:var(--gv-orange);
  box-shadow:
    0 16px 34px rgba(219,115,33,.28),
    inset 0 1px 0 rgba(255,255,255,.22);
  transform:translateY(-2px);
}
.property-tab.active::after{
  content:"";
  position:absolute;
  right:50%;
  bottom:6px;
  width:22px;
  height:3px;
  border-radius:20px;
  background:rgba(255,255,255,.75);
  transform:translateX(50%);
}
.gv-dynamic-filter-tab{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
}
.gv-dynamic-filter-check{
  width:18px;
  height:18px;
  min-width:18px;
  border-radius:6px;
  border:1.5px solid rgba(7,27,45,.24);
  background:rgba(255,255,255,.92);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  transition:
    background .25s ease,
    border-color .25s ease,
    box-shadow .25s ease,
    transform .25s ease;
}
.gv-dynamic-filter-check i{
  font-size:10px;
  line-height:1;
  color:transparent;
  transform:scale(.7);
  transition:
    color .22s ease,
    transform .22s ease;
}
.gv-dynamic-filter-tab:hover .gv-dynamic-filter-check{
  border-color:rgba(219,115,33,.55);
  box-shadow:0 0 0 3px rgba(219,115,33,.08);
}
.gv-dynamic-filter-tab.active .gv-dynamic-filter-check{
  background:#fff;
  border-color:#fff;
  box-shadow:
    0 4px 12px rgba(7,27,45,.14),
    inset 0 1px 0 rgba(255,255,255,.8);
}
.gv-dynamic-filter-tab.active .gv-dynamic-filter-check i{
  color:var(--gv-orange);
  transform:scale(1);
}
.gv-dynamic-filter-tab.active::after{
  display:none;
}
.properties-toolbar-section{
  margin-bottom:28px;
  animation:gvToolbarFadeUp .9s cubic-bezier(.22,1,.36,1) both;
  animation-delay:.08s;
}
.properties-toolbar{
  position:relative;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:18px 20px;
  border-radius:26px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.88), rgba(255,255,255,.68));
  border:1px solid rgba(219,115,33,.14);
  box-shadow:
    0 18px 45px rgba(7,27,45,.08),
    inset 0 1px 0 rgba(255,255,255,.9);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
}
.properties-toolbar::before{
  content:"";
  position:absolute;
  top:0;
  right:28px;
  left:28px;
  height:1px;
  background:linear-gradient(to left, transparent, rgba(219,115,33,.65), transparent);
}
.properties-toolbar::after{
  content:"";
  position:absolute;
  inset:-40%;
  background:linear-gradient(120deg, transparent 35%, rgba(219,115,33,.08), transparent 65%);
  transform:translateX(45%);
  pointer-events:none;
}
.results-info{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  gap:12px;
  color:var(--gv-dark);
  font-weight:900;
}
.results-info i{
  width:46px;
  height:46px;
  border-radius:16px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-size:18px;
  background:linear-gradient(135deg, var(--gv-orange), #c96518);
  box-shadow:0 12px 28px rgba(219,115,33,.28);
}
.results-info strong{
  display:block;
  font-size:16px;
  margin-bottom:4px;
  color:var(--gv-dark);
}
.results-info span{
  display:block;
  color:var(--gv-muted);
  font-size:14px;
  font-weight:800;
}
.properties-sort{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  gap:10px;
}
.properties-sort label{
  color:var(--gv-dark);
  font-size:14px;
  font-weight:900;
}
.properties-sort select{
  height:46px;
  min-width:200px;
  border-radius:16px;
  border:1px solid rgba(219,115,33,.18);
  background:#fff;
  color:var(--gv-dark);
  padding:0 14px;
  font-size:14px;
  font-weight:900;
  outline:none;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(7,27,45,.055);
  transition:.28s ease;
}
.properties-sort select:hover,.properties-sort select:focus{
  border-color:rgba(219,115,33,.55);
  box-shadow:
    0 14px 30px rgba(7,27,45,.09),
    0 0 0 4px rgba(219,115,33,.10);
}
@media (max-width:1200px), (max-width:1366px) and (pointer:coarse){.properties-category-tabs{
        gap:10px;
      }
.property-tab{
        height:44px;
        padding:0 18px;
      }
}
@media (max-width:1200px), (max-width:1366px) and (pointer:coarse){.properties-toolbar-section{
        margin-bottom:24px;
      }
.properties-category-tabs{
        padding:14px;
        border-radius:24px;
      }
.property-tab{
        height:42px;
        padding:0 16px;
        font-size:13px;
      }
.properties-toolbar{
        padding:16px 18px;
        border-radius:24px;
      }
}
@media (max-width:1200px), (max-width:1366px) and (pointer:coarse){.properties-toolbar-section{
        margin-bottom:20px;
      }
.properties-category-tabs{
        gap:9px;
        padding:12px;
        border-radius:22px;
        justify-content:center;
      }
.property-tab{
        height:38px;
        padding:0 13px;
        font-size:11px;
        flex:0 0 auto;
      }
.gv-dynamic-filter-tab{
        gap:7px;
      }
.gv-dynamic-filter-check{
        width:16px;
        height:16px;
        min-width:16px;
        border-radius:5px;
      }
.gv-dynamic-filter-check i{
        font-size:9px;
      }
.properties-toolbar{
        flex-direction:column;
        align-items:stretch;
        gap:14px;
        padding:14px;
        border-radius:22px;
      }
.results-info{
        gap:10px;
      }
.results-info i{
        width:40px;
        height:40px;
        border-radius:14px;
        font-size:15px;
      }
.results-info strong{
        font-size:14px;
      }
.results-info span{
        font-size:12px;
      }
.properties-sort{
        flex-direction:column;
        align-items:stretch;
        gap:7px;
      }
.properties-sort label{
        font-size:12px;
      }
.properties-sort select{
        width:100%;
        min-width:0;
        height:42px;
        border-radius:14px;
        font-size:12px;
      }
}
@media (max-width:1200px), (max-width:1366px) and (pointer:coarse){.properties-category-tabs{
        overflow-x:auto;
        flex-wrap:nowrap;
        scrollbar-width:none;
      }
.properties-category-tabs::-webkit-scrollbar{
        display:none;
      }
}

.gv-listing-page{padding:40px 0 72px;direction:rtl;background:#f8fafc;font-family:Tajawal,Arial,sans-serif}
.gv-listing-container{width:100%;max-width:var(--gv-r-content-max,1680px);margin-inline:auto;padding-inline:var(--gv-r-page-gutter,clamp(16px,2.5vw,40px));box-sizing:border-box}
.gv-listing-page .properties-category-tabs{display:flex;flex-direction:column;gap:10px;align-items:stretch;margin-bottom:28px}
.gv-listing-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.gv-listing-page .properties-toolbar{margin-bottom:28px;gap:16px}
.gv-listing-page .property-tab{white-space:normal;overflow-wrap:anywhere;min-height:38px;height:auto;padding:8px 18px}
.gv-listing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch;scroll-margin-top:100px}
.gv-listing-grid>*{min-width:0;max-width:100%}.gv-listing-page [hidden]{display:none!important}
.gv-listing-page :focus-visible{outline:3px solid #db7321;outline-offset:3px}
#gvListingStatus{padding:24px;border:1px solid #f1d7c3;border-radius:20px;background:#fff;text-align:center;margin-bottom:24px;color:#0a273e}
#gvListingRetry{margin-inline:14px;padding:10px 18px;border-radius:12px;background:#0a273e;color:#fff;cursor:pointer}
#gvListingPagination{flex-wrap:wrap;margin-top:28px;gap:8px;display:flex;justify-content:center}
#gvListingPagination button{min-width:42px;min-height:42px;padding:8px 14px;border-radius:12px;background:#fff;color:#0a273e;border:1px solid #efddcf;cursor:pointer}
#gvListingPagination button.active{background:#db7321;color:white}#gvListingPagination button:disabled{opacity:.45;cursor:default}
@media(max-width:1200px),(max-width:1400px) and (pointer:coarse){.gv-listing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}
@media(max-width:600px){.gv-listing-page{padding-top:24px}.gv-listing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gv-listing-page .properties-toolbar{flex-direction:column;align-items:stretch}.gv-listing-page .properties-sort{justify-content:space-between}.gv-listing-page .property-tab{padding:8px 12px;font-size:12px}.gv-listing-tabs{gap:8px}}

.gv-listing-controls{display:flex;align-items:center;gap:16px;flex-wrap:wrap;min-width:0}
.gv-municipality-filter{display:flex;align-items:center;min-width:0;margin:0}
.gv-municipality-filter[hidden]{display:none}
.gv-listing-page .gv-municipality-filter select{font:inherit;font-size:13px;color:#0b273b;background:#fff;border:1px solid #efddcf;border-radius:14px;padding:9px 14px;min-width:190px;max-width:100%;height:42px;box-sizing:border-box}
@media(max-width:600px){.gv-listing-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:10px}.gv-listing-page .gv-municipality-filter select{width:100%;min-width:0;font-size:12px}.gv-listing-controls .properties-sort{min-width:0}.gv-listing-controls:has(.gv-municipality-filter[hidden]){grid-template-columns:1fr}}
@media(max-width:360px){.gv-listing-controls{grid-template-columns:1fr}}

/* Match both result-toolbar controls, including their Arabic typography. */
.gv-listing-page .gv-listing-controls select{font-family:inherit;font-size:14px;font-weight:800;color:#0b273b;background:#fff;height:46px;min-width:200px;max-width:100%;padding:0 16px;border:1px solid rgba(219,115,33,.25);border-radius:16px;box-shadow:0 6px 18px rgba(7,27,45,.045);box-sizing:border-box;cursor:pointer}
.gv-listing-page .gv-listing-controls .properties-sort{flex-direction:row;align-items:center;gap:10px}
.gv-listing-page .gv-listing-controls .properties-sort label{font-size:14px;font-weight:800;white-space:nowrap;color:#0b273b}
.gv-listing-page .gv-listing-controls select:hover,.gv-listing-page .gv-listing-controls select:focus{border-color:rgba(219,115,33,.55)}
@media(max-width:600px){.gv-listing-page .gv-listing-controls select{width:100%;min-width:0;height:44px;font-size:13px;border-radius:14px}.gv-listing-page .gv-listing-controls .properties-sort{flex-direction:column;align-items:stretch;gap:7px}.gv-listing-page .gv-listing-controls .properties-sort label{font-size:12px}}

.gv-municipality-label{display:none}
@media(max-width:1200px),(max-width:1600px) and (any-pointer:coarse){
 .gv-listing-page .properties-category-tabs{padding:16px;gap:14px;border-radius:22px;overflow:visible;flex-wrap:nowrap;margin-bottom:18px}
 .gv-listing-page #gvListingFilters,.gv-listing-page #gvListingSections{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 .gv-listing-page #gvListingSections{border-top:1px solid #efddcf;padding-top:14px}
 .gv-listing-page .property-tab{width:100%;min-width:0;min-height:42px;padding:8px 10px;font-size:13px;line-height:1.4;margin:0;box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:7px;border-radius:14px;box-shadow:0 3px 10px rgba(7,27,45,.04)}
 .gv-listing-page .gv-dynamic-filter-check{flex-shrink:0}
 .gv-listing-page .properties-toolbar{padding:16px;border-radius:22px;display:flex;flex-direction:column;align-items:stretch;gap:16px;margin-bottom:18px}
 .gv-listing-page .results-info{gap:10px;min-width:0}
 .gv-listing-page .results-info>i{width:40px;height:40px;min-width:40px;border-radius:12px;font-size:18px;display:flex;align-items:center;justify-content:center}
 .gv-listing-page .results-info strong{font-size:16px;line-height:1.4;margin-bottom:3px}
 .gv-listing-page .results-info span{font-size:12px;line-height:1.6}
 .gv-listing-page .gv-listing-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:end;padding-top:12px;border-top:1px solid #f0e5dc}
 .gv-listing-page .gv-listing-controls .gv-municipality-filter,.gv-listing-page .gv-listing-controls .properties-sort{display:flex;flex-direction:column;align-items:stretch;gap:7px;min-width:0}
 .gv-listing-page .gv-listing-controls .gv-municipality-filter[hidden]{display:none}
 .gv-listing-page .gv-municipality-label{display:block}
 .gv-listing-page .gv-listing-controls label{font-size:12px;font-weight:800;color:#0b273b;line-height:1.5;text-align:right}
 .gv-listing-page .gv-listing-controls select{width:100%;min-width:0;height:44px;font-size:13px;border-radius:13px;padding-inline:12px;box-shadow:none}
 .gv-listing-page .gv-listing-controls:has(.gv-municipality-filter[hidden]){grid-template-columns:1fr}
}
@media(max-width:600px){
 .gv-listing-page #gvListingFilters,.gv-listing-page #gvListingSections{grid-template-columns:repeat(2,minmax(0,1fr))}
 .gv-listing-page .properties-category-tabs,.gv-listing-page .properties-toolbar{padding:12px;border-radius:18px}
 .gv-listing-page .property-tab{font-size:12px;min-height:40px;padding:7px 8px}
 .gv-listing-page .results-info strong{font-size:15px}
 .gv-listing-page .results-info span{font-size:11px}
}
