<div x-data="{ searchOpen: false, mobileOpen: false, dropdownOpen: false }">
<header class="fixed top-0 left-0 w-full z-40 bg-white/80 dark:bg-gray-950/80 backdrop-blur-md border-b border-gray-200 dark:border-gray-800 font-sans rtl:text-right">
<div class="container mx-auto px-6 h-20 flex items-center justify-between">
<!-- Logo -->
<a href="#" class="text-2xl font-black tracking-tighter flex items-center gap-2 text-gray-900 dark:text-white z-50">
<div class="w-6 h-6 bg-black dark:bg-white rounded-full"></div>
ONYX.
</a>
<!-- Desktop Nav -->
<nav class="hidden md:flex relative items-center bg-gray-100/50 dark:bg-gray-900/50 p-1.5 rounded-full border border-gray-200 dark:border-gray-800"
x-data="{ hovered: null, rect: { left: 0, width: 0 } }">
<a href="#" class="relative z-10 px-5 py-2 text-sm font-bold text-white bg-black dark:bg-white dark:text-black rounded-full shadow-md transition-all">Home</a>
<a href="#" class="relative z-10 px-5 py-2 text-sm font-bold text-gray-600 dark:text-gray-400 hover:text-black dark:hover:text-white transition-colors">Work</a>
<!-- Desktop Dropdown -->
<div class="relative" @mouseenter="dropdownOpen = true" @mouseleave="dropdownOpen = false">
<button class="relative z-10 px-5 py-2 text-sm font-bold text-gray-600 dark:text-gray-400 hover:text-black dark:hover:text-white transition-colors flex items-center gap-1">
Services
<svg class="w-3 h-3 transition-transform duration-300" :class="dropdownOpen ? 'rotate-180' : ''" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7"></path></svg>
</button>
<div x-show="dropdownOpen"
x-transition:enter="transition ease-out duration-200"
x-transition:enter-start="opacity-0 translate-y-2"
x-transition:enter-end="opacity-100 translate-y-0"
x-transition:leave="transition ease-in duration-150"
x-transition:leave-start="opacity-100 translate-y-0"
x-transition:leave-end="opacity-0 translate-y-2"
class="absolute top-full left-1/2 -translate-x-1/2 pt-4 w-56">
<div class="bg-white dark:bg-gray-900 border border-gray-200 dark:border-gray-800 rounded-2xl shadow-xl p-2 overflow-hidden">
<a href="#" class="block px-4 py-2 rounded-lg hover:bg-gray-100 dark:hover:bg-gray-800 text-sm font-bold text-gray-700 dark:text-gray-200">Web Development</a>
<a href="#" class="block px-4 py-2 rounded-lg hover:bg-gray-100 dark:hover:bg-gray-800 text-sm font-bold text-gray-700 dark:text-gray-200">App Design</a>
<a href="#" class="block px-4 py-2 rounded-lg hover:bg-gray-100 dark:hover:bg-gray-800 text-sm font-bold text-gray-700 dark:text-gray-200">SEO Strategy</a>
</div>
</div>
</div>
<a href="#" class="relative z-10 px-5 py-2 text-sm font-bold text-gray-600 dark:text-gray-400 hover:text-black dark:hover:text-white transition-colors">Agency</a>
</nav>
<!-- Desktop Actions -->
<div class="hidden md:flex items-center gap-4">
<button @click="searchOpen = true" class="flex items-center gap-2 px-3 py-2 text-sm text-gray-500 hover:text-black dark:hover:text-white border border-transparent hover:border-gray-200 dark:hover:border-gray-800 rounded-lg transition-all group">
<svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"></path></svg>
<span class="hidden lg:inline">Search...</span>
<kbd class="hidden lg:inline-block bg-gray-100 dark:bg-gray-800 px-2 py-0.5 rounded text-xs font-mono group-hover:bg-gray-200">⌘K</kbd>
</button>
<a href="#" class="bg-black dark:bg-white text-white dark:text-black px-5 py-2.5 rounded-lg text-sm font-bold hover:opacity-80 transition-opacity">Start Project</a>
</div>
<!-- Mobile Burger (FIXED) -->
<button @click="mobileOpen = !mobileOpen"
class="md:hidden relative z-50 w-12 h-12 flex items-center justify-center text-gray-900 dark:text-white hover:bg-gray-100 dark:hover:bg-gray-800 rounded-full focus:outline-none transition-colors duration-200">
<div class="relative w-6 h-5">
<!-- Top line -->
<span class="absolute left-0 w-full h-0.5 bg-current rounded-full transition-all duration-300 ease-in-out origin-center"
:class="mobileOpen ? 'top-2.5 rotate-45' : 'top-0 rotate-0'">
</span>
<!-- Middle line -->
<span class="absolute left-0 w-full h-0.5 bg-current rounded-full transition-all duration-300 ease-in-out top-2.5"
:class="mobileOpen ? 'opacity-0 scale-x-0' : 'opacity-100 scale-x-100'">
</span>
<!-- Bottom line -->
<span class="absolute left-0 w-full h-0.5 bg-current rounded-full transition-all duration-300 ease-in-out origin-center"
:class="mobileOpen ? 'top-2.5 -rotate-45' : 'top-5 rotate-0'">
</span>
</div>
</button>
</div>
<!-- Mobile Menu -->
<div x-show="mobileOpen"
x-collapse
class="md:hidden border-t border-gray-200 dark:border-gray-800 bg-white dark:bg-gray-950 absolute w-full left-0 top-20 h-[calc(100vh-80px)] overflow-y-auto">
<div class="p-6 space-y-6">
<!-- Mobile Search -->
<div class="relative">
<svg class="absolute left-4 top-3.5 h-5 w-5 text-gray-400" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"></path></svg>
<input type="text" placeholder="Search..." class="w-full bg-gray-100 dark:bg-gray-900 border-none rounded-xl py-3 pl-12 text-gray-900 dark:text-white focus:ring-2 focus:ring-black dark:focus:ring-white">
</div>
<div class="space-y-2">
<a href="#" class="block px-4 py-3 rounded-lg bg-gray-100 dark:bg-gray-900 text-black dark:text-white font-bold text-lg">Home</a>
<a href="#" class="block px-4 py-3 rounded-lg hover:bg-gray-50 dark:hover:bg-gray-900 text-gray-600 dark:text-gray-400 font-bold text-lg">Work</a>
<!-- Mobile Accordion -->
<div x-data="{ expanded: false }">
<button @click="expanded = !expanded" class="w-full flex items-center justify-between px-4 py-3 rounded-lg hover:bg-gray-50 dark:hover:bg-gray-900 text-gray-600 dark:text-gray-400 font-bold text-lg">
Services
<svg class="w-5 h-5 transition-transform duration-300" :class="expanded ? 'rotate-180' : ''" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7"></path></svg>
</button>
<div x-show="expanded" x-collapse class="pl-4">
<a href="#" class="block px-4 py-3 text-gray-500 dark:text-gray-500 font-medium">Web Development</a>
<a href="#" class="block px-4 py-3 text-gray-500 dark:text-gray-500 font-medium">App Design</a>
<a href="#" class="block px-4 py-3 text-gray-500 dark:text-gray-500 font-medium">SEO Strategy</a>
</div>
</div>
<a href="#" class="block px-4 py-3 rounded-lg hover:bg-gray-50 dark:hover:bg-gray-900 text-gray-600 dark:text-gray-400 font-bold text-lg">Agency</a>
</div>
<a href="#" class="block w-full text-center bg-black dark:bg-white text-white dark:text-black px-5 py-4 rounded-xl text-lg font-bold">
Start Project
</a>
</div>
</div>
</header>
<!-- Search Modal -->
<div x-show="searchOpen"
@keydown.escape.window="searchOpen = false"
class="fixed inset-0 z-[60] overflow-y-auto px-4 py-4 md:py-20 sm:px-6 md:px-0"
role="dialog" aria-modal="true" style="display: none;">
<div class="fixed inset-0 bg-gray-500/40 dark:bg-black/60 backdrop-blur-sm transition-opacity" @click="searchOpen = false"></div>
<div class="relative mx-auto max-w-2xl transform rounded-2xl bg-white dark:bg-gray-900 p-2 shadow-2xl ring-1 ring-black ring-opacity-5 transition-all">
<div class="relative">
<svg class="pointer-events-none absolute left-4 top-3.5 h-5 w-5 text-gray-400" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true"><path fill-rule="evenodd" d="M9 3.5a5.5 5.5 0 100 11 5.5 5.5 0 000-11zM2 9a7 7 0 1112.452 4.391l3.328 3.329a1 1 0 11-1.414 1.414l-3.329-3.328A7 7 0 012 9z" clip-rule="evenodd" /></svg>
<input type="text" class="h-12 w-full border-0 bg-transparent pl-11 pr-4 text-gray-900 dark:text-white placeholder:text-gray-400 focus:ring-0 sm:text-sm" placeholder="Search..." autofocus>
</div>
</div>
</div>
</div>