/* =============================================
   NAV — matches Next.js Header component exactly
   ============================================= */

body { background: #fff; }

/* Desktop nav — hidden until ≥1024px */
.kw-desktop-nav { display: none; }
@media (min-width: 1024px) {
  .kw-desktop-nav {
    display: flex !important;
    align-items: center;
  }
  .kw-login-btn, .kw-signup-btn { display: inline-block !important; }
  #kw-burger { display: none !important; }
}

/* Nav links */
.kw-nav-link {
  display: flex;
  align-items: center;
  gap: .25rem;
  padding: .5rem .75rem;
  font-size: .875rem;
  font-weight: 600;
  color: #374151;
  text-decoration: none;
  white-space: nowrap;
  border-radius: 4px;
  transition: color .15s;
}
.kw-nav-link:hover { color: #f97316; }
.kw-nav-link.kw-has-sub { cursor: pointer; }

.kw-chevron {
  width: 12px;
  height: 12px;
  flex-shrink: 0;
}

/* Dropdown container */
.kw-dd { position: relative; }

.kw-dd-menu {
  display: none;
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  width: 13rem;
  background: #fff;
  border: 1px solid #f3f4f6;
  border-radius: 6px;
  box-shadow: 0 10px 25px rgba(0,0,0,.12);
  padding: .25rem 0;
  list-style: none;
  margin: 0;
  z-index: 200;
}
.kw-dd:hover .kw-dd-menu,
.kw-dd:focus-within .kw-dd-menu { display: block; }
.kw-dd-menu li { margin: 0; padding: 0; }
.kw-dd-menu a {
  display: block;
  padding: .625rem 1rem;
  font-size: .875rem;
  color: #374151;
  text-decoration: none;
  transition: background .15s, color .15s;
}
.kw-dd-menu a:hover { background: #fff7ed; color: #f97316; }

/* Login / Sign Up buttons */
.kw-login-btn {
  display: none;
  padding: .5rem 1rem;
  font-size: .875rem;
  font-weight: 700;
  color: #374151;
  border: 1px solid #e5e7eb;
  border-radius: 4px;
  text-decoration: none;
  transition: border-color .15s;
}
.kw-login-btn:hover { border-color: #9ca3af; color: #374151; }

.kw-signup-btn {
  display: none;
  padding: .5rem 1rem;
  font-size: .875rem;
  font-weight: 700;
  color: #fff;
  background: #f97316;
  border-radius: 4px;
  text-decoration: none;
  transition: opacity .15s;
}
.kw-signup-btn:hover { opacity: .9; color: #fff; }

/* Mobile nav links */
.kw-mob-link {
  display: block;
  padding: .625rem .75rem;
  font-size: .875rem;
  font-weight: 600;
  color: #374151;
  text-decoration: none;
  border-radius: 6px;
  transition: background .15s, color .15s;
  margin: .1rem 0;
}
.kw-mob-link:hover { background: #fff7ed; color: #f97316; }
.kw-mob-sub { padding-left: 1.5rem; font-size: .8rem; color: #6b7280; }
.kw-mob-sub:hover { color: #f97316; }

/* Search overlay flex fix */
#kw-search-overlay { display: none; }
#kw-search-overlay.is-open {
  display: flex !important;
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.7);
  z-index: 9999;
  align-items: flex-start;
  justify-content: center;
  padding-top: 6rem;
}
