.grc-search-root{
  font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  color:#111;
  background:#fff;
}

/* =========================
   TOP BAR (BASE + PHOTO 1 STYLE)
   ========================= */
.grc-topbar{
  display:grid;
  grid-template-columns: 2fr 1fr 1fr 1fr 1fr .8fr;
  gap:0;                       /* NO gaps -> single strip */
  background:#fff;
  border:2px solid #f2cd00;    /* ONLY outer border */
  border-radius:10px;
  padding:6px;
  align-items:center;
  margin:15px 0 20px;
  box-shadow:0 8px 18px rgba(0,0,0,.12);
}

/* field: remove yellow box per field */
.grc-topbar__field{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:3px;
  padding:10px 12px;
  border:0 !important;         /* kill inner borders */
  border-radius:0;
  background:transparent;
  min-height:54px;
}

/* inner separators like photo 1 */
.grc-topbar__field:not(:last-child){
  border-right:2px solid #f2cd00;
}

.grc-topbar__field label{
  font-size:11px;
  font-weight:600;
  color:#444;
  line-height:1;
}

.grc-topbar__field input,
.grc-topbar__field select{
  border:0;
  outline:0;
  font-size:14px;
  font-weight:700;
  color:#111;
  background:transparent;
  height:24px;
  padding:0;
}

/* SEARCH BUTTON */
.grc-topbar__search{
  height:54px;
  border:0;
  background:#0a8a2a;
  color:#fff;
  font-weight:800;
  border-radius:8px;
  cursor:pointer;
  font-size:15px;
  padding:0 18px;
  margin-left:6px; /* little space before button */
}

/* =========================
   HOME TOPBAR tweaks
   ========================= */
.grc-topbar--home{
  max-width:1100px;
  margin-left:auto;
  margin-right:auto;
  grid-template-columns: 2.4fr 1fr .9fr 1fr .9fr .8fr; /* first field wider */
}

/* =========================
   RESPONSIVE FIXES
   ========================= */
@media(max-width:768px){

  .grc-topbar{
    grid-template-columns:1fr;
    gap:8px;
    padding:10px;
  }

  /* on mobile each field becomes a box */
  .grc-topbar__field{
    border:2px solid #f2cd00 !important;
    border-radius:8px;
    padding:12px;
    min-height:60px;
  }

  .grc-topbar__field:not(:last-child){
    border-right:0;
  }

  .grc-topbar__search{
    width:100%;
    height:52px;
    font-size:18px;
    margin-left:0;
  }
}
@media (max-width: 768px){

  /* 2-column grid with custom rows */
  body .elementor .grc-search-root form.grc-topbar,
  body .grc-search-root form.grc-topbar,
  body .grc-topbar{
    display:grid !important;
    grid-template-columns: 1fr 1fr !important;
    grid-template-areas:
      "pickup pickup"
      "pudate putime"
      "dodate dotime"
      "search search" !important;
    gap:8px !important;
    padding:10px !important;
  }

  /* Assign areas by field order */
  body .elementor .grc-topbar .grc-topbar__field:nth-child(1),
  body .grc-topbar .grc-topbar__field:nth-child(1){
    grid-area: pickup !important;
  }

  body .elementor .grc-topbar .grc-topbar__field:nth-child(2),
  body .grc-topbar .grc-topbar__field:nth-child(2){
    grid-area: pudate !important;
  }

  body .elementor .grc-topbar .grc-topbar__field:nth-child(3),
  body .grc-topbar .grc-topbar__field:nth-child(3){
    grid-area: putime !important;
  }

  body .elementor .grc-topbar .grc-topbar__field:nth-child(4),
  body .grc-topbar .grc-topbar__field:nth-child(4){
    grid-area: dodate !important;
  }

  body .elementor .grc-topbar .grc-topbar__field:nth-child(5),
  body .grc-topbar .grc-topbar__field:nth-child(5){
    grid-area: dotime !important;
  }

  body .elementor .grc-topbar .grc-topbar__search,
  body .grc-topbar .grc-topbar__search{
    grid-area: search !important;
    width:100% !important;
    height:52px !important;
    margin:0 !important;
    font-size:18px !important;
  }

  /* Make each field look clean on mobile */
  body .elementor .grc-topbar .grc-topbar__field,
  body .grc-topbar .grc-topbar__field{
    border:2px solid #f2cd00 !important;
    border-radius:8px !important;
    padding:12px !important;
    min-height:60px !important;
  }

  /* remove vertical separators on mobile */
  body .elementor .grc-topbar .grc-topbar__field:not(:last-child),
  body .grc-topbar .grc-topbar__field:not(:last-child){
    border-right:0 !important;
  }
}

/* === AppTirana: Sidebar on LEFT + sticky on desktop === */
@media (min-width: 992px){
  .grc-layout{
    display:grid !important;
    grid-template-columns:260px minmax(0,1fr) !important; /* sidebar left */
    gap:24px !important;
    align-items:flex-start;
  }
  .grc-sidebar{
    order:0 !important;
    position:sticky !important;
    top:120px !important; /* distance from top bar */
    height:auto !important;
  }
  .grc-results{
    order:1 !important;
  }
}

/* === Mobile filter toggle button === */
.grc-filter-toggle{
  display:none;
  border:1px solid #ff4b7d;
  background:#ffe6ee;
  color:#b3003c;
  border-radius:999px;
  padding:6px 14px;
  font-size:13px;
  font-weight:600;
  margin-right:10px;
  cursor:pointer;
}

/* Right-align sort + count on desktop as before */
.grc-results__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

/* Mobile popup sidebar */
@media (max-width: 991px){
  .grc-layout{
    display:block !important;
  }

  .grc-filter-toggle{
    display:inline-flex;
    align-items:center;
    justify-content:center;
  }

  .grc-sidebar{
    position:fixed !important;
    top:0;
    right:0;
    bottom:0;
    width:85%;
    max-width:360px;
    background:#fff;
    z-index:99999;
    box-shadow:-4px 0 20px rgba(0,0,0,.25);
    padding:18px 16px;
    overflow-y:auto;
    transform:translateX(100%);
    transition:transform .3s ease;
  }

  .grc-sidebar.is-open{
    transform:translateX(0);
  }

  .grc-sidebar__close{
    display:block;
    border:none;
    background:none;
    font-size:24px;
    line-height:1;
    margin-left:auto;
    margin-bottom:6px;
    cursor:pointer;
  }
}

/* Hide close button on desktop */
@media (min-width: 992px){
  .grc-sidebar__close{
    display:none;
  }
}

/* Ensure slider nav buttons are visible above image */
.grc-card__nav{
  z-index:5;
}
