/* ============================================
   NAVBAR DROPDOWNS — FINAL FIX
   ============================================ */

.si-yelp { background:#d32323 !important; color:#fff !important; }

.nav-arrow {
  font-size:.55rem; margin-left:5px;
  transition:transform .25s ease;
  display:inline-block; vertical-align:middle;
  pointer-events:none;
}

/* ══════════════════════
   DESKTOP ≥ 992px
   ══════════════════════ */
@media(min-width:992px){

  .nav-links li.has-dropdown { position:relative; }

  /* Invisible hover bridge */
  .nav-links li.has-dropdown::after {
    content:''; position:absolute;
    top:100%; left:-20px; right:-20px;
    height:16px; z-index:9998;
  }

  .nav-dropdown {
    position:absolute;
    top:calc(100% + 16px);
    left:50%;
    transform:translateX(-50%) translateY(6px);
    background:#fff;
    border-radius:16px;
    box-shadow:0 8px 40px rgba(0,0,0,.14), 0 0 0 1px rgba(0,0,0,.06);
    opacity:0; visibility:hidden; pointer-events:none;
    transition:opacity .22s, transform .22s, visibility .22s;
    z-index:9999;
    min-width:320px;
    overflow:hidden;
  }

  .nav-dropdown--sm { min-width:280px; }

  /* Show */
  .nav-links li.has-dropdown:hover .nav-dropdown {
    opacity:1; visibility:visible; pointer-events:all;
    transform:translateX(-50%) translateY(0);
  }
  .nav-links li.has-dropdown:hover .nav-arrow { transform:rotate(180deg); }
}

/* Dropdown header */
.dropdown-header {
  padding:14px 16px 10px;
  border-bottom:1px solid #f0f0f4;
}
.dropdown-title {
  font-family:var(--fd); font-weight:800;
  font-size:.85rem; color:var(--dark); display:block;
}
.dropdown-sub { font-size:.72rem; color:var(--g500); display:block; margin-top:2px; }

/* Items wrapper */
.dropdown-inner { padding:10px 10px 12px; }
.nav-dropdown--sm .dropdown-inner { padding:10px 10px 12px; }

/* Grid: services 3-col */
.dropdown-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:4px;
}
.nav-dropdown--sm .dropdown-grid { display:flex; flex-direction:column; gap:2px; }

/* Each item */
.dropdown-item {
  display:flex;
  align-items:center;
  gap:9px;
  padding:10px 9px;
  border-radius:10px;
  text-decoration:none;
  transition:background .15s;
  cursor:pointer;
}
.dropdown-item:hover { background:var(--red-pale); }

.di-icon {
  font-size:1.3rem; flex-shrink:0;
  width:36px; height:36px; min-width:36px;
  background:var(--red-pale); border-radius:9px;
  display:flex; align-items:center; justify-content:center;
  transition:background .15s;
}
.dropdown-item:hover .di-icon { background:var(--red); }

.di-text { display:flex; flex-direction:column; min-width:0; }

.di-name {
  font-family:var(--fd); font-weight:700;
  font-size:.8rem; color:var(--dark);
  display:block; line-height:1.3;
  white-space:nowrap;
}
.di-desc {
  font-size:.68rem; color:var(--g500);
  display:block; margin-top:2px;
  white-space:nowrap; overflow:hidden;
  text-overflow:ellipsis;
}
.dropdown-item:hover .di-name { color:var(--red); }

/* Footer */
.dropdown-footer {
  padding:10px 16px 14px;
  border-top:1px solid #f0f0f4;
}
.dropdown-all {
  font-family:var(--fd); font-weight:700;
  font-size:.8rem; color:var(--red);
  text-decoration:none;
  display:inline-flex; align-items:center; gap:6px;
  transition:gap .18s;
}
.dropdown-all:hover { gap:10px; }

.nav-right {
  display:flex; align-items:center;
  gap:10px; flex-shrink:0;
  position:relative; z-index:11;
}

/* ══════════════════════
   MOBILE < 992px
   ══════════════════════ */
@media(max-width:991px){

  .nav-dropdown {
    position:static !important;
    transform:none !important;
    box-shadow:none !important;
    border-radius:0 !important;
    opacity:1 !important;
    visibility:visible !important;
    width:100% !important;
    max-height:0;
    overflow:hidden;
    background:#f5f5f8;
    border-top:1px solid #eee;
    pointer-events:none;
    transition:max-height .3s ease;
    z-index:auto;
    min-width:unset;
  }

  .has-dropdown.open .nav-dropdown {
    max-height:500px;
    pointer-events:all;
  }

  .has-dropdown.open .nav-arrow { transform:rotate(180deg); }

  .dropdown-header { display:none; }
  .dropdown-footer { padding:8px 16px 12px; border-top:none; }

  .dropdown-inner { padding:6px 0; }

  .dropdown-grid,
  .nav-dropdown--sm .dropdown-grid {
    display:flex !important;
    flex-direction:column !important;
    gap:0 !important;
  }

  .dropdown-item {
    padding:12px 20px !important;
    border-radius:0 !important;
    border-bottom:1px solid #e8e8ec;
    gap:12px;
  }
  .dropdown-item:last-child { border-bottom:none; }
  .dropdown-item:hover { transform:none; }

  .di-icon { width:30px; height:30px; min-width:30px; font-size:1rem; }
  .di-name { font-size:.85rem; white-space:normal; }
  .di-desc { display:none !important; }

  .has-dropdown > a {
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    width:100% !important;
  }
}
